Bug 139099 (IT_45622) - LTC10367-Internal compiler error in reload_cse_simplify_operands [PATCH]
Summary: LTC10367-Internal compiler error in reload_cse_simplify_operands [PATCH]
Keywords:
Status: CLOSED ERRATA
Alias: IT_45622
Product: Red Hat Enterprise Linux 3
Classification: Red Hat
Component: gcc
Version: 3.0
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Jakub Jelinek
QA Contact:
URL:
Whiteboard:
: 144030 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2004-11-12 21:50 UTC by Elena Zannoni
Modified: 2007-11-30 22:07 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2005-05-18 13:42:33 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
patch from IBM (980 bytes, patch)
2004-11-12 22:16 UTC, Elena Zannoni
no flags Details | Diff
testcase (5.73 KB, text/plain)
2004-11-12 22:18 UTC, Elena Zannoni
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2005:258 0 normal SHIPPED_LIVE gcc bug fix update 2005-05-18 04:00:00 UTC

Description Elena Zannoni 2004-11-12 21:50:34 UTC
kernel-2.4.21-4.EL
gcc-3.2.3-20

gcc -O crashes with the below error:

(insn 2883 2881 1074 (set (reg/v/f:DI 62 f30 [127])
        (plus:DI (reg/v/f:DI 62 f30 [127])
            (const_int 192 [0xc0]))) 225 {*adddi3_internal1} (nil)
    (expr_list:REG_EQUIV (plus:DI (reg/f:DI 1 r1)
            (const_int 192 [0xc0]))
        (nil)))
grouper/subodh.c:7800: Internal compiler error in
reload_cse_simplify_operands, 
at reload1.c:8352
Please submit a full bug report,
with preprocessed source if appropriate.


Wondering if there already is a patch available. Can send preprocessed
file if 
necessary.

Ameet, Please investigate this issue.

Glen/Stacy, Please mirror to RedHat, They may have more insights on
this. Thanks. 
----------
Action by: Glen Johnson
----- Additional Comments From ameet.com  2004-08-05 16:19 -------
Your system is running old versions of the kernel and gcc, so try
updating to 
RHEL 3 U2 and gcc-3.2.3-24. 


----------
Action by: Glen Johnson
----- Additional Comments From umuta.com  2004-08-12 17:31 -------
We have upgraded the system to U2. kernel = 2.4.21-11 gcc =3.2.3-39
and the 
problem still exists. 


----------
Action by: Glen Johnson
----- Additional Comments From ameet.com  2004-08-16 12:25 -------
Umut, please try updating to RHEL3 Update 3. 


----------
Action by: Glen Johnson
----- Additional Comments From jgrimm.com  2004-09-09 16:43 -------
Attached preprocessed testcase. 
Attached patch against rh3.2 cvs for fix that is already in 3.4

Here are the links again for GCC bugzilla, describing bug/fix:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16239
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16239#c8


Glen, please mirror the above + patch + new testcase + comments to RH.
 Thanks, jon 

Status set to: Waiting on Tech

----------
Action by: Glen Johnson
------ Additional Comments From jgrimm.com  2004-09-09 16:36
-------
 
Patch against rh3.2 cvs tree to disparage FPR use under the bug
condition. 

The problem is that GCC's reload phase is choosing an FPR to hold a DImode
address and then tries to add a constant to the value in the FPR.  The
DImode
addition pattern only handles GPRs, so the constraint does not match the
predicate.  Restricting the predicate does not work because reload
already has
chosen the reload register before it checks the predicate and fails
another
way.
 It looks like the fix will require convincing reload not to use an
FPR for a
DImode address.  This fix is already in 3.4. 

File uploaded: disparage.diff

----------
Action by: Glen Johnson
------ Additional Comments From jgrimm.com  2004-09-09 16:39
-------
 
preprocessed testcase

gcc -c -O -m64 -mminimal-toc problem2.c -o dontcare

Currently this will cause an internal check to fail in the compiler per
reported bug. 

File uploaded: problem2.c

----------
Action by: gavin
Mike, 
This looks like a ppc only bug, I couldn't reproduce it on x86.  Could
you try reproducing it on a ppc machine, or give me access to one so I
can do so?

                          -gavin...


----------
Action by: gavin
repro'd again on RHEL3U3, gcc-3.2.3-42, pseries.



Issue escalated to Sustaining Engineering by: gavin.

----------
Action by: mgahagan
Thanks Gavin!


SE:

if/when you need hardware for this, please contact myself of Jim
Laska. We repro'ed this on a Power5 LPAR, I think any ppc system is
sufficient however.



----------
Action by: mgahagan
disparage.diff is they patch they are refering to, should be from
upstream gcc 3.4. I need to know what update we will get this one in,
looks like its too late for U4.

Comment 2 Elena Zannoni 2004-11-12 22:16:59 UTC
Created attachment 106612 [details]
patch from IBM

Comment 3 Elena Zannoni 2004-11-12 22:18:09 UTC
Created attachment 106614 [details]
testcase

Comment 7 Jakub Jelinek 2005-01-03 22:17:25 UTC
*** Bug 144030 has been marked as a duplicate of this bug. ***

Comment 8 Jakub Jelinek 2005-01-04 17:56:32 UTC
Fix for this has been added to gcc-3.2.3-50, for the time being available from:
ftp://people.redhat.com/jakub/gcc/3.2.3-50/


Comment 9 Tim Powers 2005-05-18 13:42:33 UTC
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on the solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHBA-2005-258.html



Note You need to log in before you can comment on or make changes to this bug.