Title: Dealing with data dependent conditions to enable general global source code transformations

Authors: Martin Palkovic, Henk Corporaal, Francky Catthoor

Addresses: IMEC, Kapeldreef 75, 3001 Leuven, Belgium. ' TU Eindhoven, Den Dolech 2, 5612 AZ Eindhoven, The Netherlands. ' IMEC, Kapeldreef 75, 3001 Leuven, Belgium

Abstract: Global source code transformations, such as Global Loop Transformations (GLT), are usually performed on a Geometrical Model (GM) which is very effective in dealing with complex transformations. However, this model imposes strict limitations on the input code, and it is not capable to deal with data dependent conditions. The technique presented in this paper can deal with data dependent conditions at any loop level. At the outermost loop level hot code paths are grouped together into limited number of clusters called scenarios to maximise the GLT benefit for a given code size growth. On the middle and innermost loop level we manipulate the abstract syntax tree to move the data dependent conditions out of the GLT optimisation scope. Results show up to 45.8% improvement compared to state-of-the-art.

Keywords: source code preprocessing; high-level transformations; GLT; global loop transformations; data dependent conditions; hot code paths grouping; selective code duplication; condition moving; function encapsulation.

DOI: 10.1504/IJES.2009.027238

International Journal of Embedded Systems, 2009 Vol.4 No.1, pp.27 - 39

Published online: 18 Jul 2009 *

Full-text access for editors Full-text access for subscribers Purchase this article Comment on this article