[Bug target/39226] [4.4 Regression] gcc_assert (verify_initial_elim_offsets ()); ICE

2009-03-03 Thread jakub at gcc dot gnu dot org


--- Comment #6 from jakub at gcc dot gnu dot org  2009-03-03 14:25 ---
http://gcc.gnu.org/ml/gcc-patches/2009-03/msg00148.html patch posted.


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

URL||http://gcc.gnu.org/ml/gcc-
   ||patches/2009-
   ||03/msg00148.html


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



[Bug target/39226] [4.4 Regression] gcc_assert (verify_initial_elim_offsets ()); ICE

2009-02-21 Thread rguenth at gcc dot gnu dot org


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P2


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



[Bug target/39226] [4.4 Regression] gcc_assert (verify_initial_elim_offsets ()); ICE

2009-02-18 Thread pinskia at gmail dot com


--- Comment #1 from pinskia at gmail dot com  2009-02-18 10:30 ---
Subject: Re:   New: [4.4 Regression] gcc_assert (verify_initial_elim_offsets
()); ICE

This is mostly likely due to my no micro code patch. I see what causes  
it tommorow.

Sent from my iPhone

On Feb 17, 2009, at 11:55 PM, jakub at gcc dot gnu dot org
gcc-bugzi...@gcc.gnu.org 
  wrote:

 /* { dg-do compile } */
 /* { dg-options -O2 } */
 /* { dg-options -O2 -mtune=cell -mminimal-toc { target { powerpc*- 
 *-*  lp64
 } } } */

 struct A
 {
  char *a;
  unsigned int b : 1;
  unsigned int c : 31;
 };

 struct B
 {
  struct A *d;
 };

 void
 foo (struct B *x, unsigned long y)
 {
  if (x-d[y].c)
return;
  if (x-d[y].b)
x-d[y].a = 0;
 }

 ICEs with -m64 -O2 -mtune=cell -mminimal-toc, as elimination offsets  
 change.


 -- 
   Summary: [4.4 Regression] gcc_assert  
 (verify_initial_elim_offsets
()); ICE
   Product: gcc
   Version: 4.4.0
Status: UNCONFIRMED
  Keywords: ice-on-valid-code
  Severity: normal
  Priority: P3
 Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: jakub at gcc dot gnu dot org
 GCC target triplet: powerpc64-linux


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



-- 


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



[Bug target/39226] [4.4 Regression] gcc_assert (verify_initial_elim_offsets ()); ICE

2009-02-18 Thread jakub at gcc dot gnu dot org


--- Comment #2 from jakub at gcc dot gnu dot org  2009-02-18 12:28 ---
Yeah.  Unlike anddi3_internal3_mc insn, anddi3_internal3_nomc only has an
alternative with t for the and64_2_operand that is not slightly disparaged
(?s), so for masks that match mask_operand or mask64_operand reload decides
to reload the DImode constant into register, which needs to be put into memory
and needs a TOC register etc.


-- 


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



[Bug target/39226] [4.4 Regression] gcc_assert (verify_initial_elim_offsets ()); ICE

2009-02-18 Thread pinskia at gcc dot gnu dot org


--- Comment #3 from pinskia at gcc dot gnu dot org  2009-02-18 19:34 ---
Hmm, for the PS3 toolchain, I think I just removed anddi3_internal3_mc.
Mine.


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |pinskia at gcc dot gnu dot
   |dot org |org
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2009-02-18 19:34:53
   date||


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



[Bug target/39226] [4.4 Regression] gcc_assert (verify_initial_elim_offsets ()); ICE

2009-02-18 Thread jakub at gcc dot gnu dot org


--- Comment #4 from jakub at gcc dot gnu dot org  2009-02-18 19:40 ---
You mean anddi3_internal3_nomc, right?  If so, I guess anddi3_internal2_nomc
should be removed too.


-- 


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



[Bug target/39226] [4.4 Regression] gcc_assert (verify_initial_elim_offsets ()); ICE

2009-02-18 Thread pinskia at gcc dot gnu dot org


--- Comment #5 from pinskia at gcc dot gnu dot org  2009-02-18 19:41 ---
(In reply to comment #4)
 You mean anddi3_internal3_nomc, right?  If so, I guess anddi3_internal2_nomc
 should be removed too.

I will have to look at what I did, I know I ran into a case where a constant
was being generated but really does not need to be generated ...


-- 


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



[Bug target/39226] [4.4 Regression] gcc_assert (verify_initial_elim_offsets ()); ICE

2009-02-17 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|--- |4.4.0


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