Conference paper Open Access

Exploring the Semantic Gap in Compiling Embedded DSLs

Zangerl, Peter; Jordan, Herbert; Thoman, Peter; Gschwandtner, Philipp; Fahringer, Thomas

Optimizing compilers provide valuable contributions to the quality of processed code. The vast majority of application developers rely on those capabilities to obtain binary code efficiently utilizing processing resources. However, compiler proficiency is frequently misjudged by application developers. While for some constellations the effectiveness of those optimizations is grossly underestimated, for others, mostly involving higher-level semantic concepts of embedded DSLs, the compilers' influence on the code quality tends to disappoint.

In this paper, we provide examples for the effectiveness and ineffectiveness of state-of-the-art optimizing compilers in improving application code. Based on those observations we characterize the differences between positive and negative examples and provide an in-depth explanation for the short-comings of optimizing compilers. Furthermore, we present a semantic-aware compiler architecture rectifying those deficiencies and outline several example use cases demonstrating our architecture's ability to contribute to the efficiency and the capabilities of embedded DSLs.

Files (201.5 kB)
Name Size
201.5 kB Download
All versions This version
Views 8787
Downloads 5050
Data volume 10.1 MB10.1 MB
Unique views 8080
Unique downloads 4848


Cite as