I updated according to Jeff's latest comments (importantly, we cannot
move a *logue in front of a move in general), and added some testcases.
Bootstrapping is in progress on today's trunk, powerpc64-linux and
powerpc64le-linux.
Is this okay to commit now?
Segher
Segher Boessenkool (6):
separate shrink-wrap: New command-line flag, status flag, hooks, and
doc
dce: Don't dead-code delete separately wrapped restores
regrename: Don't rename restores
shrink-wrap: Shrink-wrapping for separate components
rs6000: Separate shrink-wrapping
shrink-wrap: Testcases for separate shrink-wrapping
gcc/common.opt | 4 +
gcc/config/rs6000/rs6000.c | 269 +++++++-
gcc/dce.c | 9 +
gcc/doc/invoke.texi | 11 +-
gcc/doc/tm.texi | 63 ++
gcc/doc/tm.texi.in | 38 ++
gcc/emit-rtl.h | 4 +
gcc/function.c | 15 +-
gcc/regrename.c | 7 +
gcc/shrink-wrap.c | 741 +++++++++++++++++++++
gcc/shrink-wrap.h | 1 +
gcc/target.def | 57 ++
.../gcc.target/powerpc/shrink-wrap-separate-0.c | 22 +
.../gcc.target/powerpc/shrink-wrap-separate-1.c | 18 +
.../gcc.target/powerpc/shrink-wrap-separate-2.c | 26 +
15 files changed, 1265 insertions(+), 20 deletions(-)
create mode 100644 gcc/testsuite/gcc.target/powerpc/shrink-wrap-separate-0.c
create mode 100644 gcc/testsuite/gcc.target/powerpc/shrink-wrap-separate-1.c
create mode 100644 gcc/testsuite/gcc.target/powerpc/shrink-wrap-separate-2.c
--
1.9.3