[PR rtl-optimization/41619] [4.4/4.5/4.6 regression] ICE in insert_save (caller-save.c) for SPEC CPU2000's 252.eon

Jeff Law law@redhat.com
Thu Jan 20 22:41:00 GMT 2011


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

At the heart of this problem is an inconsistency between the method
save_call_clobbered_regs uses to determine what registers need to be
saved at call sites and the method setup_save_areas used when
- -fno-ira-share-save-slots is used.

This patch eliminates one of the 3 hunks of code which determines what
regs are live across calls.  In doing so it eliminates the inconsistency
which is triggering the ICE.

Oh how I long for the day when caller-save can just go away...

Bootstrapped and regression tested, including a second bootstrap &
regression test where -fno-ira-share-save-slots was on by default.

I've included two versions of the diff.  The first ignores whitespace
differences caused by code reindention and makes the patch easier to
read.  The second is the actual patch.

Apparently I'm the listed maintainer for caller-save.c; however, I'd
appreciate a sanity check.



-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org/

iQEcBAEBAgAGBQJNOKyYAAoJEBRtltQi2kC7N60IAIqY7Sgq+9OPAIa4wYFU+c3A
4n7dmVlP2giS4qLJMhkzniAttosdHxpEXICEcjkmUPEWWDjCxtoCMkUyXaqZ4dC9
RmUjvaD5nXLJkWuFAM319ghvanFEHDb6YnZA1HYdMLLXCeMYXDDe3ahPGWw2P6h0
iL6qsins2FYlLqaEg0zaBK1Wx91R5C+zBXlYJfWD0VvaQQlZymyIFkHtLVvYGvNR
pCFl+SnIzYFzFw/82xEYW93l6SzOJwWRlswJwnZTINHrtDcL1G/tHc0FmNeP6Hw5
H5lk+KzcS+1Uu4M/5POzdIPDefb+17lnD2IeCOrniuawEOiqhc2DqlG9Ew3Enw0=
=3Byq
-----END PGP SIGNATURE-----
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: P1
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20110120/7f788843/attachment.ksh>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: P2
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20110120/7f788843/attachment-0001.ksh>


More information about the Gcc-patches mailing list