[Bug bootstrap/43994] [4.6 Regression] Revision 159063 failed to bootstrap on Linux/ia64

2010-05-10 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |jakub at gcc dot gnu dot org
   |dot org |
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-05-10 07:58:48
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43994



[Bug bootstrap/43994] [4.6 Regression] Revision 159063 failed to bootstrap on Linux/ia64

2010-05-10 Thread jakub at gcc dot gnu dot org


--- Comment #11 from jakub at gcc dot gnu dot org  2010-05-10 07:59 ---
Fixed.


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43994



[Bug bootstrap/43994] [4.6 Regression] Revision 159063 failed to bootstrap on Linux/ia64

2010-05-06 Thread dominiq at lps dot ens dot fr


--- Comment #7 from dominiq at lps dot ens dot fr  2010-05-06 08:23 ---
Same bootstrap failure on powerpc-apple-darwin9. It seems to be fixed by the
patch in comment #6, bootstrap in progress.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43994



[Bug bootstrap/43994] [4.6 Regression] Revision 159063 failed to bootstrap on Linux/ia64

2010-05-06 Thread jiez at gcc dot gnu dot org


--- Comment #8 from jiez at gcc dot gnu dot org  2010-05-06 16:35 ---
I see similar issue on ARM target. It seems to be fixed by the
patch in comment #6 .


-- 

jiez at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||jiez at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43994



[Bug bootstrap/43994] [4.6 Regression] Revision 159063 failed to bootstrap on Linux/ia64

2010-05-06 Thread jakub at gcc dot gnu dot org


--- Comment #9 from jakub at gcc dot gnu dot org  2010-05-06 16:59 ---
The reference is created at df-scan.c:2940 in df_ref_record.
reg (as well as *loc) passed to that function is SImode reg 112 (in0), i.e. a
hard register, but df_ref_create_structure is called with regno_reg_rtx[i],
which is DImode on ia64.
Generally, if *loc/reg passed to this function is a hard register,
df_ref_create_structure can be called either with smaller reg (for wide modes
where *loc occupies several hard registers) or larger reg (as in this case).


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||zadeck at gcc dot gnu dot
   ||org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43994



[Bug bootstrap/43994] [4.6 Regression] Revision 159063 failed to bootstrap on Linux/ia64

2010-05-06 Thread jakub at gcc dot gnu dot org


--- Comment #10 from jakub at gcc dot gnu dot org  2010-05-06 17:35 ---
Subject: Bug 43994

Author: jakub
Date: Thu May  6 17:34:47 2010
New Revision: 159117

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=159117
Log:
PR bootstrap/43994
* df-problems.c (dead_debug_insert_before): Use *DF_REF_REAL_LOC
instead of DF_REF_REAL_REG.

Modified:
trunk/gcc/ChangeLog
trunk/gcc/df-problems.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43994



[Bug bootstrap/43994] [4.6 Regression] Revision 159063 failed to bootstrap on Linux/ia64

2010-05-05 Thread hjl dot tools at gmail dot com


--- Comment #3 from hjl dot tools at gmail dot com  2010-05-05 16:26 ---
It is caused by revision 159063:

http://gcc.gnu.org/ml/gcc-cvs/2010-05/msg00112.html


-- 

hjl dot tools at gmail dot com changed:

   What|Removed |Added

Summary|[4.6 Regression] Failed to  |[4.6 Regression] Revision
   |bootstrap on Linux/ia64 |159063 failed to bootstrap
   ||on Linux/ia64


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43994



[Bug bootstrap/43994] [4.6 Regression] Revision 159063 failed to bootstrap on Linux/ia64

2010-05-05 Thread jakub at gcc dot gnu dot org


--- Comment #4 from jakub at gcc dot gnu dot org  2010-05-05 16:45 ---
Could you please attach preprocessed source?  Setting up a ia64 build box
always takes me a lot of time.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43994



[Bug bootstrap/43994] [4.6 Regression] Revision 159063 failed to bootstrap on Linux/ia64

2010-05-05 Thread hjl dot tools at gmail dot com


--- Comment #5 from hjl dot tools at gmail dot com  2010-05-05 16:51 ---
Created an attachment (id=20564)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20564action=view)
A testcase

-O2 -g will fail.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43994



[Bug bootstrap/43994] [4.6 Regression] Revision 159063 failed to bootstrap on Linux/ia64

2010-05-05 Thread jakub at gcc dot gnu dot org


--- Comment #6 from jakub at gcc dot gnu dot org  2010-05-05 18:00 ---
Created an attachment (id=20566)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20566action=view)
gcc46-pr43994.patch

I must say I don't understand why this happens, but in this case
DF_REF_REAL_REG is a (reg:DI 112 r32) while *DF_REF_REAL_LOC is
(reg/v:SI 112 r32 [orig:369 up ] [369])
(perhaps a subreg has been simplified or something).  Alex' code uses
DF_REF_REAL_REG to find the largest reg's mode (that's not wrong in this case
as DF_REAL_REG's mode is larger) but also that mode when deciding whether to
create a subreg or not.  So we end up with debug_insn containing var_location
for SImode D#2 set from DImode D#3.

The attached patch cures it, but is otherwise untested.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43994