[Bug middle-end/32321] [4.3 Regression] ICE in df_refs_verify with -fgcse-sm

2007-06-18 Thread spark at gcc dot gnu dot org


--- Comment #3 from spark at gcc dot gnu dot org  2007-06-18 20:49 ---
Subject: Bug 32321

Author: spark
Date: Mon Jun 18 20:49:23 2007
New Revision: 125827

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=125827
Log:
2007-06-18  Seongbae Park  [EMAIL PROTECTED]

PR rtl-optimization/32321
* gcse.c (replace_store_insn): Update the note before
calling emit_insn_after.


Modified:
trunk/gcc/ChangeLog
trunk/gcc/gcse.c


-- 


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



[Bug middle-end/32321] [4.3 Regression] ICE in df_refs_verify with -fgcse-sm

2007-06-18 Thread spark at gcc dot gnu dot org


--- Comment #4 from spark at gcc dot gnu dot org  2007-06-19 04:38 ---
Fixed.


-- 

spark at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


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



[Bug middle-end/32321] [4.3 Regression] ICE in df_refs_verify with -fgcse-sm

2007-06-14 Thread spark at gcc dot gnu dot org


--- Comment #2 from spark at gcc dot gnu dot org  2007-06-14 19:49 ---
The problem is reproducible also on x86-64.
The following patch seems to fix the ICE.
I'll start a bootstrap/testing.

*** /tmp/gcse.c 2007-06-14 19:46:27.0 +
--- gcc/gcse.c  2007-06-14 19:44:19.0 +
*** replace_store_insn (rtx reg, rtx del, ba
*** 6341,6357 

mem = smexpr-pattern;
insn = gen_move_insn (reg, SET_SRC (single_set (del)));
-   insn = emit_insn_after (insn, del);
-
-   if (dump_file)
- {
-   fprintf (dump_file,
-  STORE_MOTION  delete insn in BB %d:\n  , bb-index);
-   print_inline_rtx (dump_file, del, 6);
-   fprintf (dump_file, \nSTORE MOTION  replaced with insn:\n  );
-   print_inline_rtx (dump_file, insn, 6);
-   fprintf (dump_file, \n);
- }

for (ptr = ANTIC_STORE_LIST (smexpr); ptr; ptr = XEXP (ptr, 1))
  if (XEXP (ptr, 0) == del)
--- 6341,6346 
*** replace_store_insn (rtx reg, rtx del, ba
*** 6379,6384 
--- 6368,6385 
XEXP (note, 0) = insn;
  }

+   insn = emit_insn_after (insn, del);
+
+   if (dump_file)
+ {
+   fprintf (dump_file,
+  STORE_MOTION  delete insn in BB %d:\n  , bb-index);
+   print_inline_rtx (dump_file, del, 6);
+   fprintf (dump_file, \nSTORE MOTION  replaced with insn:\n  );
+   print_inline_rtx (dump_file, insn, 6);
+   fprintf (dump_file, \n);
+ }
+
delete_insn (del);

/* Now we must handle REG_EQUAL notes whose contents is equal to the mem;


-- 

spark at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |spark at gcc dot gnu dot org
   |dot org |
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2007-06-14 19:49:10
   date||


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



[Bug middle-end/32321] [4.3 Regression] ICE in df_refs_verify with -fgcse-sm

2007-06-13 Thread pinskia at gcc dot gnu dot org


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||spark at gcc dot gnu dot org
   Keywords||ice-on-valid-code
Summary|ICE in df_refs_verify   |[4.3 Regression] ICE in
   ||df_refs_verify with -fgcse-
   ||sm
   Target Milestone|--- |4.3.0


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