This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug middle-end/41812] [4.5 Regression] test 20071030-1.c fails execution on powerpc64
- From: "bonzini at gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 28 Oct 2009 12:21:38 -0000
- Subject: [Bug middle-end/41812] [4.5 Regression] test 20071030-1.c fails execution on powerpc64
- References: <bug-41812-4503@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #3 from bonzini at gnu dot org 2009-10-28 12:21 -------
The patch is wrong because the result of MD is used also to process notes,
while the live registers problem does not consider a register live if it is
only used in notes. We have:
;; lr in 1 [1] 2 [2] 31 [31] 67 [ap] 113 [sfp] 154 180
88 {r179:SF=float(r180:DI);clobber scratch;}
REG_EQUAL: float(r155:DI)
Then because r155 is not live, it is not included in MD and a random definition
(0.0) is replaced in the REG_EQUAL note.
I'll revert the patch.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41812