• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

daisytuner / sdfglib / 15656007340

14 Jun 2025 08:51PM UTC coverage: 13.234% (-49.9%) from 63.144%
15656007340

Pull #76

github

web-flow
Merge 9586c8161 into 413c53212
Pull Request #76: New Loop Dependency Analysis

361 of 465 new or added lines in 7 files covered. (77.63%)

6215 existing lines in 110 files now uncovered.

1612 of 12181 relevant lines covered (13.23%)

13.64 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/src/structured_control_flow/map.cpp
1
#include "sdfg/structured_control_flow/map.h"
2

3
#include "sdfg/symbolic/symbolic.h"
4

5
namespace sdfg {
6
namespace structured_control_flow {
7

UNCOV
8
Map::Map(const DebugInfo& debug_info, symbolic::Symbol indvar, symbolic::Expression num_iterations,
×
9
         ScheduleType schedule_type)
UNCOV
10
    : StructuredLoop(debug_info),
×
UNCOV
11
      indvar_(indvar),
×
UNCOV
12
      num_iterations_(num_iterations),
×
UNCOV
13
      schedule_type_(schedule_type) {
×
UNCOV
14
    this->root_ = std::unique_ptr<Sequence>(new Sequence(debug_info));
×
UNCOV
15
    this->init_ = symbolic::zero();
×
UNCOV
16
    this->update_ = symbolic::add(indvar_, symbolic::one());
×
UNCOV
17
    this->condition_ = symbolic::Lt(indvar_, num_iterations_);
×
UNCOV
18
};
×
19

UNCOV
20
const symbolic::Symbol& Map::indvar() const { return this->indvar_; };
×
21

UNCOV
22
symbolic::Symbol& Map::indvar() { return this->indvar_; };
×
23

24
const symbolic::Expression& Map::init() const { return this->init_; };
×
25

26
const symbolic::Expression& Map::update() const { return this->update_; };
×
27

28
const symbolic::Condition& Map::condition() const { return this->condition_; };
×
29

UNCOV
30
const symbolic::Expression& Map::num_iterations() const { return this->num_iterations_; };
×
31

UNCOV
32
symbolic::Expression& Map::num_iterations() { return this->num_iterations_; };
×
33

UNCOV
34
ScheduleType Map::schedule_type() const { return this->schedule_type_; };
×
35

UNCOV
36
Sequence& Map::root() const { return *this->root_; };
×
37

38
void Map::replace(const symbolic::Expression& old_expression,
×
39
                  const symbolic::Expression& new_expression) {
40
    if (symbolic::eq(this->indvar_, old_expression)) {
×
41
        assert(SymEngine::is_a<SymEngine::Symbol>(*new_expression) &&
×
42
               "New Indvar must be a symbol");
43
        this->indvar_ = SymEngine::rcp_static_cast<const SymEngine::Symbol>(new_expression);
×
44
    }
×
45
    this->num_iterations_ = symbolic::subs(this->num_iterations_, old_expression, new_expression);
×
46

47
    this->root_->replace(old_expression, new_expression);
×
48
};
×
49

50
}  // namespace structured_control_flow
51
}  // namespace sdfg
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc