Proceedings of the 2014 SIGPLAN/SIGBED Conference on Languages, Compilers and Tools for Embedded Systems 2014
DOI: 10.1145/2597809.2597811
|View full text |Cite
|
Sign up to set email alerts
|

Exploiting function similarity for code size reduction

Abstract: For cost-sensitive or memory constrained embedded systems, code size is at least as important as performance. Consequently, compact code generation has become a major focus of attention within the compiler community. In this paper we develop a pragmatic, yet effective code size reduction technique, which exploits structural similarity of functions. It avoids code duplication through merging of similar functions and targeted insertion of control flow to resolve small differences. We have implemented our purely … Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
15
0

Year Published

2017
2017
2021
2021

Publication Types

Select...
4
2

Relationship

0
6

Authors

Journals

citations
Cited by 14 publications
(15 citation statements)
references
References 23 publications
(1 reference statement)
0
15
0
Order By: Relevance
“…They can only handle identical functions, allowing only for type mismatches that can be removed by lossless bitcasting of the conflicting values. Similarly, the stateof-the-art [13], while more powerful, cannot merge the two functions either. It requires both functions to have the same list of parameters.…”
Section: Motivationmentioning
confidence: 99%
See 3 more Smart Citations
“…They can only handle identical functions, allowing only for type mismatches that can be removed by lossless bitcasting of the conflicting values. Similarly, the stateof-the-art [13], while more powerful, cannot merge the two functions either. It requires both functions to have the same list of parameters.…”
Section: Motivationmentioning
confidence: 99%
“…We compare our optimization against the state-of-theart [13] and LLVM's identical [12] function merging techniques. In our evaluation, we refer to the identical function merging as Identical, the state-of-the-art as SOA, and our approach as FMSA.…”
Section: A Experimental Setupmentioning
confidence: 99%
See 2 more Smart Citations
“…LLVM lacks a pass to identify identical functions or code fragments, but adding that is one of our goals for the near future. Several previous papers have presented sophisticated program analysis techniques to identify duplicate code fragments within programs at various granularities, ranging from functions down to a variety of small code regions De Sutter et al 2005, 2003Edler von Koch et al 2014;Johnson 2004]. They all focused on individual applications, and we hope to see bigger benefits when applying some subset of those techniques across multiplexed applications and their libraries.…”
Section: Opportunitiesmentioning
confidence: 99%