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

daisytuner / sdfglib / 18556398052

16 Oct 2025 09:15AM UTC coverage: 61.233% (-0.3%) from 61.523%
18556398052

Pull #279

github

web-flow
Merge 803508fe1 into 39c12e6fd
Pull Request #279: Separate Dominance Analysis and Codegen for Linker with Prefixes

62 of 95 new or added lines in 26 files covered. (65.26%)

13 existing lines in 7 files now uncovered.

8981 of 14667 relevant lines covered (61.23%)

98.73 hits per line

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

80.0
/include/sdfg/codegen/language_extension.h
1
#pragma once
2

3
#include <string>
4

5
#include "sdfg/data_flow/library_node.h"
6
#include "sdfg/data_flow/memlet.h"
7
#include "sdfg/data_flow/tasklet.h"
8
#include "sdfg/function.h"
9
#include "sdfg/symbolic/symbolic.h"
10
#include "sdfg/types/array.h"
11
#include "sdfg/types/pointer.h"
12
#include "sdfg/types/scalar.h"
13
#include "sdfg/types/structure.h"
14
#include "sdfg/types/type.h"
15

16
namespace sdfg {
17
namespace codegen {
18

19
class LanguageExtension {
20
protected:
21
    std::unordered_set<std::string> external_variables_;
22
    std::string external_prefix_;
23

24
public:
25
    LanguageExtension() : external_variables_(), external_prefix_() {}
26

27
    LanguageExtension(const std::vector<std::string>& external_variables, const std::string& external_prefix)
20✔
28
        : external_variables_(external_variables.begin(), external_variables.end()), external_prefix_(external_prefix) {}
20✔
29

30
    virtual ~LanguageExtension() = default;
1,193✔
31

1,173✔
NEW
32
    const std::string& external_prefix() const { return this->external_prefix_; }
×
33

34
    virtual const std::string language() const = 0;
35

36
    virtual std::string primitive_type(const types::PrimitiveType prim_type) = 0;
37

38
    virtual std::string declaration(
39
        const std::string& name, const types::IType& type, bool use_initializer = false, bool use_alignment = false
40
    ) = 0;
41

42
    virtual std::string type_cast(const std::string& name, const types::IType& type) = 0;
43

44
    virtual std::string subset(const Function& function, const types::IType& type, const data_flow::Subset& subset) = 0;
45

46
    virtual std::string expression(const symbolic::Expression expr) = 0;
47

48
    virtual std::string access_node(const data_flow::AccessNode& node) = 0;
49

50
    virtual std::string tasklet(const data_flow::Tasklet& tasklet) = 0;
51

52
    virtual std::string zero(const types::PrimitiveType prim_type) = 0;
53
};
54

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