Bug 57954 - Internal compiler error in print_operand_address, at config/i386/i386.c:3426
Summary: Internal compiler error in print_operand_address, at config/i386/i386.c:3426
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Red Hat Linux
Classification: Retired
Component: gcc
Version: 7.2
Hardware: i686
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Jakub Jelinek
QA Contact: Brian Brock
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2002-01-03 08:46 UTC by Mark Diekhans
Modified: 2007-04-18 16:38 UTC (History)
0 users

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2002-01-03 08:47:53 UTC
Embargoed:


Attachments (Terms of Use)
c++ source file (100.62 KB, text/plain)
2002-01-03 08:47 UTC, Mark Diekhans
no flags Details

Description Mark Diekhans 2002-01-03 08:46:50 UTC
From Bugzilla Helper:
User-Agent: Mozilla/4.79 [en] (X11; U; Linux 2.2.12 i386; Nav)

Description of problem:
Internal compiler error in print_operand_address
, at config/i386/i386.c:3426


Version-Release number of selected component (if applicable):


How reproducible:
Always

Steps to Reproduce:
1. Compile enclosed file
2. Use  -O3 -ffast-math -funroll-all-loops -fstrict-aliasing
-fomit-frame-pointer
  (unroll seems to be what breaks it)
	

Actual Results:  crash and burn...

Expected Results:  Give me working code, Scotty..

Additional info:

Comment 1 Mark Diekhans 2002-01-03 08:47:48 UTC
Created attachment 41671 [details]
c++ source file

Comment 2 Jakub Jelinek 2002-01-15 15:07:44 UTC
You get what you ask for. X asm constraint means any operand is allowed, which
really is not a good choice for asm statements, because compiler may build
operands which the machine does not have. X should be used in machine descriptions
only (accompanied by some predicate, asm statements don't have any).
The code should be changed to use "g" instead of "X".


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