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 101101
Downloads 6363
Data volume 12.7 MB12.7 MB
Unique views 9191
Unique downloads 6060


Cite as