DocumentCode
1865054
Title
Alias property propagation and reuse after variable scope change
Author
Burlacu-Zane, Anca ; Nicolescu, Andreea ; Tapus, Nicolae
Author_Institution
Freescale Semicond., Bucharest, Romania
fYear
2011
fDate
25-27 Aug. 2011
Firstpage
437
Lastpage
440
Abstract
It is becoming increasingly evident in the embedded world that the tools gain more and more weight in system evaluation and success, even in the context of hardware parallelism. Moreover, alias analysis - from the multitude of compiler optimizing techniques - stays at the base of most vectorization and parallelization transformations. While interprocedural alias analysis is still being studied and in some cases rejected by developers for resource consumption or compile time considerations, other techniques can be used to enhance performance. This paper proposes a practical and simple way of alias-property (restrict keyword) propagation after variable scope change. The method helps compilers exploit data and instruction-level parallelism. Parallelizing and optimizing techniques - inline, loop restructuring - can take advantage of the original alias attributes. The localized treatment of the alias properties does not impose barriers for code mobility. First, the concept of property inline information (with the immediate application of restrict inline) is introduced. Then, special-purpose data structures are defined. They help to simplify and enhance data dependence analysis with the help of related usage rules and propagation algorithms. In the end an extension is defined for additional cases of scope-changes. The work related to this paper has been implemented in a production compiler for the StarCore® SC3850 processor. A survey on common DSP applications has been made considering the usage of inline alias attributes versus simple interprocedural alias analysis.
Keywords
data analysis; data structures; digital signal processing chips; embedded systems; multiprocessing systems; optimising compilers; parallel processing; DSP applications; StarCore® SC3850 processor; alias analysis; alias property propagation; code mobility; compiler optimizing techniques; data dependence analysis; instruction level parallelism; loop restructuring; parallelization transformation; propagation algorithms; property inline information; resource consumption; special purpose data structures; usage rules; variable scope change; vectorization transformation; Algorithm design and analysis; Assembly; Computer languages; Context; Data structures; Optimization; Parallel processing; alias; compiler; embedded; performance;
fLanguage
English
Publisher
ieee
Conference_Titel
Intelligent Computer Communication and Processing (ICCP), 2011 IEEE International Conference on
Conference_Location
Cluj-Napoca
Print_ISBN
978-1-4577-1479-5
Electronic_ISBN
978-1-4577-1481-8
Type
conf
DOI
10.1109/ICCP.2011.6047911
Filename
6047911
Link To Document