This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[tree-ssa]: I've got LICM done, but it requires Zdenek's changes


In order to be able to move variables to the correct scopes, I needed
Zdenek's changes so that we know what scope a variable is in.
Zdenek, i would suggest, rather than keep get_common_scope and
move_var_to_scope static to tree-ssa-copyprop, that they be external
functions in the next iteration of your patch.
LICM uses them unmodified.

I ran a full SPEC on the forward substitution changes, and I get 1% better
on some tests, no regressions on any tests.  Not bad for something that
does absolutely nothing in the way of removal or movement.

I'm SPEC'ing fwdsubst + LICM right now.
Then i'll SPEC Zdenek's changes vs an unpatched branch to make sure we
haven't regressed.

LICM hoists over 10000 statements during a bootstrap of gcc, so it's
promising.
It currently doesn't hoist loads or stores.



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]