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

daisytuner / sdfglib / 19525173698

19 Nov 2025 09:22AM UTC coverage: 62.105% (-0.08%) from 62.184%
19525173698

push

github

web-flow
Merge pull request #354 from daisytuner/tenstorrent-transform

Tenstorrent transform

52 of 95 new or added lines in 15 files covered. (54.74%)

28 existing lines in 8 files now uncovered.

11141 of 17939 relevant lines covered (62.1%)

112.03 hits per line

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

53.33
/src/codegen/dispatchers/node_dispatcher.cpp
1
#include "sdfg/codegen/dispatchers/node_dispatcher.h"
2
#include "sdfg/codegen/instrumentation/instrumentation_info.h"
3

4
namespace sdfg {
5
namespace codegen {
6

7
NodeDispatcher::NodeDispatcher(
55✔
8
    LanguageExtension& language_extension,
9
    StructuredSDFG& sdfg,
10
    analysis::AnalysisManager& analysis_manager,
11
    structured_control_flow::ControlFlowNode& node,
12
    InstrumentationPlan& instrumentation_plan,
13
    ArgCapturePlan& arg_capture_plan
14
)
15
    : node_(node), language_extension_(language_extension), sdfg_(sdfg), analysis_manager_(analysis_manager),
110✔
16
      instrumentation_plan_(instrumentation_plan), arg_capture_plan_(arg_capture_plan) {};
165✔
17

18
bool NodeDispatcher::begin_node(PrettyPrinter& stream) { return false; };
30✔
19

20
void NodeDispatcher::end_node(PrettyPrinter& stream, bool applied) {};
30✔
21

22
InstrumentationInfo NodeDispatcher::instrumentation_info() const {
×
23
    return InstrumentationInfo(ElementType_Unknown, TargetType_SEQUENTIAL, -1, node_.element_id(), {});
×
24
};
×
25

26
void NodeDispatcher::
27
    dispatch(PrettyPrinter& main_stream, PrettyPrinter& globals_stream, CodeSnippetFactory& library_snippet_factory) {
30✔
28
    bool applied = begin_node(main_stream);
30✔
29

30
    if (this->arg_capture_plan_.should_instrument(node_)) {
30✔
31
        this->arg_capture_plan_.begin_instrumentation(node_, main_stream, language_extension_);
×
32
    }
×
33

34
    bool should_instrument = this->instrumentation_plan_.should_instrument(node_);
30✔
35
    std::optional<InstrumentationInfo> instrumentation_info;
30✔
36
    if (should_instrument) {
30✔
NEW
37
        instrumentation_info = this->instrumentation_info();
×
NEW
38
        this->instrumentation_plan_
×
NEW
39
            .begin_instrumentation(node_, main_stream, language_extension_, instrumentation_info.value());
×
UNCOV
40
    }
×
41

42
    dispatch_node(main_stream, globals_stream, library_snippet_factory);
30✔
43

44
    if (should_instrument) {
30✔
NEW
45
        this->instrumentation_plan_
×
NEW
46
            .end_instrumentation(node_, main_stream, language_extension_, instrumentation_info.value());
×
UNCOV
47
    }
×
48

49
    if (this->arg_capture_plan_.should_instrument(node_)) {
30✔
50
        this->arg_capture_plan_.end_instrumentation(node_, main_stream, language_extension_);
×
51
    }
×
52

53
    end_node(main_stream, applied);
30✔
54
};
30✔
55

56
} // namespace codegen
57
} // 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