[Bug middle-end/39254] [4.4 Regression] gcc.c-torture/execute/va-arg-trap-1.c ICEs on powerpc-apple-darwin9

2009-03-19 Thread janis at gcc dot gnu dot org


--- Comment #12 from janis at gcc dot gnu dot org  2009-03-19 17:00 ---
I tested this patch, which I assume is what was described in comment #11:

Index: gcc/config/rs6000/rs6000.c
===
--- gcc/config/rs6000/rs6000.c  (revision 144923)
+++ gcc/config/rs6000/rs6000.c  (working copy)
@@ -5206,15 +5206,6 @@ rs6000_emit_move (rtx dest, rtx source, 
! legitimate_constant_pool_address_p (operands[1])
! toc_relative_expr_p (operands[1]))
{
- /* Emit a USE operation so that the constant isn't deleted if
-expensive optimizations are turned on because nobody
-references it.  This should only be done for operands that
-contain SYMBOL_REFs with CONSTANT_POOL_ADDRESS_P set.
-This should not be done for operands that contain LABEL_REFs.
-For now, we just handle the obvious case.  */
- if (GET_CODE (operands[1]) != LABEL_REF)
-   emit_use (operands[1]);
-
 #if TARGET_MACHO
  /* Darwin uses a special PIC legitimizer.  */
  if (DEFAULT_ABI == ABI_DARWIN  MACHOPIC_INDIRECT)

I bootstrapped all languages except Ada on powerpc64-unknown-linux-gnu and ran
the testsuite with -m32/-m64, and the only change was that test va-arg-trap-1
now passes.


-- 

janis at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||dje at gcc dot gnu dot org,
   ||janis at gcc dot gnu dot org


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



[Bug middle-end/39254] [4.4 Regression] gcc.c-torture/execute/va-arg-trap-1.c ICEs on powerpc-apple-darwin9

2009-03-04 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=39254



[Bug middle-end/39254] [4.4 Regression] gcc.c-torture/execute/va-arg-trap-1.c ICEs on powerpc-apple-darwin9

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


--- Comment #11 from amylaar at gcc dot gnu dot org  2009-03-03 09:40 
---
(In reply to comment #10)
 Mike, as far as I can tell, you originally (in 1997) added the code to
 rs6000.md which is now in rs6000.c:rs6000_emit_move and emits a USE
 for SYMBOL_REFS that are the source of a move.  (Search for
 Emit a USE operation).

I have tried to #ifdef 0 this code in rs6000_emit_move, and a regression
test on gcc40 (powerpc64-unknown-linux-gnu) shows only two differences,
i.e.
FAIL: gcc.c-torture/execute/va-arg-trap-1.c compilation,  -O2  (internal
compile
r error)
FAIL: gcc.c-torture/execute/va-arg-trap-1.c compilation,  -Os  (internal
compile
r error)
from the baseline went away.

I've used revision 144485 for my baseline, and after determining that
a standard bootstrap did not work (probably a 32/64 bit ABI problem,
I didn't think it was worth the trouble to hand-bootstrap to 64 bit
considering this is probably not the OS we really need testing)
I built / tested with:
( make all-gcc all-target-libgcc all-target-libobjc all-target-libstdc++-v3
all-target-libgfortran;make check)  make.out 21 
baseline summaries:
=== gcc Summary ===

# of expected passes52951
# of unexpected failures23
# of expected failures  204
# of unresolved testcases   2
# of unsupported tests  615
=== g++ Summary ===

# of expected passes19046
# of expected failures  140
# of unsupported tests  133
=== gfortran Summary ===

# of expected passes29054
# of expected failures  11
# of unsupported tests  183
=== libstdc++ Summary ===

# of expected passes5828
# of unexpected failures1
# of unexpected successes   4
# of expected failures  80
# of unsupported tests  333

Patched summary:
=== gcc Summary ===

# of expected passes52955
# of unexpected failures21
# of expected failures  204
# of unsupported tests  615
; identical as baseline above for the other testsuites.

I think this should be tested on a power or powerpc AIX target.


-- 


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



[Bug middle-end/39254] [4.4 Regression] gcc.c-torture/execute/va-arg-trap-1.c ICEs on powerpc-apple-darwin9

2009-02-28 Thread amylaar at gcc dot gnu dot org


--- Comment #10 from amylaar at gcc dot gnu dot org  2009-02-28 16:30 
---
I appears the haifa scheduler doesn't know what to do with the lone use
of (symbol_ref ap) so it ends up clogging the end of a basic block.

Mike, as far as I can tell, you originally (in 1997) added the code to
rs6000.md which is now in rs6000.c:rs6000_emit_move and emits a USE
for SYMBOL_REFS that are the source of a move.  (Search for
Emit a USE operation).
What is wrong with deleting constants that are not used?


-- 

amylaar at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||meissner at gcc dot gnu dot
   ||org


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



[Bug middle-end/39254] [4.4 Regression] gcc.c-torture/execute/va-arg-trap-1.c ICEs on powerpc-apple-darwin9

2009-02-26 Thread bonzini at gnu dot org


--- Comment #9 from bonzini at gnu dot org  2009-02-26 09:09 ---
comment #6 suggests that it is at least a regression *from 4.2 to 4.3*?


-- 

bonzini at gnu dot org changed:

   What|Removed |Added

 CC||bonzini at gnu dot org


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



[Bug middle-end/39254] [4.4 Regression] gcc.c-torture/execute/va-arg-trap-1.c ICEs on powerpc-apple-darwin9

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


--- Comment #8 from rguenth at gcc dot gnu dot org  2009-02-24 13:16 ---
This also ICEs on powerpc64-linux.  The testsuite fail from this is a
regression.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
 GCC target triplet|powerpc-apple-darwin9   |powerpc-apple-darwin9,
   ||powerpc64-linux
   Keywords||ice-on-valid-code
   Last reconfirmed|-00-00 00:00:00 |2009-02-24 13:16:34
   date||
Summary|gcc.c-torture/execute/va-   |[4.4 Regression] gcc.c-
   |arg-trap-1.c ICEs on|torture/execute/va-arg-trap-
   |powerpc-apple-darwin9   |1.c ICEs on powerpc-apple-
   ||darwin9
   Target Milestone|--- |4.4.0


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