... architectures1.1
counting only those present in the official tree, number of other ports were obsoleted and dropped or never integrated making the overall count even higher.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... CVS1.2
Concurrent Version System, the package to maintain multiple development trees of same project in a single repository.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... (SSA)1.3
The modern intermediate representation where each variable has exactly one definition in the program making many analyses easier.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... impossible1.4
RTL requires same register to be both used and defined in the single instruction in some constructs.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... reg-stack1.5
Pass converting RTL into form expected by i387 stack-like registers.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... compiler1.6
Bootstrapping the compiler is a process, where the compiler is used to compile itself.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... homepage2.1
http://www.gnu.org
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... well3.1
This is caused by the conflict in shared GCC runtime library, libgcc, and will go away once GCC is released and version updated.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... code3.2
Older versions of GCC read data back in mangled form and attempted to use them for code reordering which resulted in poor produced code or crashed during the progress.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... basis4.1
This very bad design decision came from attempt to make impossible adding commercial front-ends to the free software GCC back-end and is source for number of problems. An ongoing effort is made to update all front-ends to avoid this scheme.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... global4.2
Passes operating only on instructions executed in sequence, basic blocks, will be refered as local. Passes operating on whole function body are global.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... -O29.1
The level of optimization. Higher number means more optimization.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... (LT_SET_DEST9.2
Reg/Mem is a destination of an assignment.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... LT_PARAM9.3
Reg/Mem is a parameter of the instruction, it is used but not changed.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... LT_CLOBBERED9.4
Storing an unpredictable value to reg/mem.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...#tex2html_wrap_inline3444#10.1
Numerical programs generally have more predictable control flow.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... heuristics10.2
Ball and Larus tested their work on different set of programs resulting in about $ 80\%$ static hitrate. Later tests on SPECint92 has shown $ 73\%$ dynamic hitrate, result more comparable to ours
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... cfg-branch11.1
We present results from both trees, as the mainline changes will be released in next version of GCC, scheduled at April 15th, so users will benefit from them soon. We hope to integrate majority of changes on cfg-branch to the official tree once next release will be out, but we can't guarantee it.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... ``profile'.11.2
SPECint rules dictates that different data set is used for train run than later for benchmark run, so results should be realistic.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... SPECints11.3
SPECints are computed as geometric average of speedups all benchmarks relative to original SPEC test machine in percents. The higher, the better.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...#tex2html_wrap_inline3535#11.4
See http://www.suse.de/~aj/SPEC/
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... level.11.5
-O1 enables just minimum of optimizations to keep compilation time short--jump optimizations, common subexpression elimination, dead code removal, jump threading and cross jumping, invariant code hoisting and improved register allocation.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... compiler12.1
An experimental compiler where many algorithms are very time consuming to keep source base simple.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... Bedn\'arek13.1
bednarek@ulita.ms.mff.cuni.cz
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... Dvorák]13.2
rakdver@atrey.karlin.mff.cuni.cz
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... Hubicka]13.3
hubicka@ucw.cz
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... Nejedlý]13.4
bim@atrey.karlin.mff.cuni.cz
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... Zlomek]13.5
zlomek@matfyz.cz
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...bb-reorder.c13.6
the contents of original bb-reorder was either replaced, or moved into cfglayout.c
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.