Skip to main content

alphaWorks  >  Forums  >  Post-Link Optimization for Linux on POWER  >  developerWorks

Release 5.4.0.20 is available    Point your RSS reader here for a feed of the latest messages in this thread


     

 
 

My developerWorks
 Welcome, Guest
Sign in or register
Permlink Replies: 0 - Pages: 1 Threads: [ Previous | Next ]
Yaakov

Posts: 23
Registered: Feb 16, 2005 02:32:17 AM
Release 5.4.0.20 is available
Posted: Dec 14, 2008 06:46:02 AM
Click to report abuse...   Click to reply to this thread Reply

Release 5.4.0.20 of FDPR-Pro:

Release 5.4.0.20 introduces a new optimization, --simplify-early-exit (-see), which optimizes prologue of function that commonly perform conditional early exit.

Simply-early-exit optimization
An early-exit condition occurs when a function checks a condition based on the input arguments and based on this condition it decides to exit the function prematurely. By convention the compiler performs various saves and restores that are needed in case the function's body is executed. Under -see a special epilogue is used when that condition is taken which avoids restoring unnecessary registers as well as restoring the return address. In the aggressive form, under -see 1, the prologue is also simplified by performing the branch to the conditional epilogue as early as possible instead of performing first the full frame setup.

Currently -see 0 is implied in -O2 and -see 1 is implied in -O3 and higher. To disable it in any of the -Ox, use -Ox -see -1.
Performance caution when using --killed-regs on Power6
It was found, in particular on Power6, that the --killed-regs (-kr) optimization that eliminates stores of registers that are killed after frequently called functions, may regress performance when combined with aggressive inlining (eg., with -O3 and -O4). To remove -kr from -Ox, add -nokr. Compare performance of -O4 and -O4 -nokr to see if the latter is better.

Point your RSS reader here for a feed of the latest messages in all forums