Bug 44947 - Unable to find a register to spill in class `AREG'.
Unable to find a register to spill in class `AREG'.
Product: Red Hat Linux
Classification: Retired
Component: gcc (Show other bugs)
i386 Linux
medium Severity medium
: ---
: ---
Assigned To: Jakub Jelinek
David Lawrence
Depends On:
  Show dependency treegraph
Reported: 2001-06-18 21:03 EDT by Ronald Cole
Modified: 2007-04-18 12:33 EDT (History)
0 users

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2001-06-18 21:04:38 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
Small source that demonstrates the bug. (417 bytes, text/plain)
2001-06-18 21:04 EDT, Ronald Cole
no flags Details

  None (edit)
Description Ronald Cole 2001-06-18 21:03:08 EDT
From Bugzilla Helper:
User-Agent: Mozilla/4.77 [en] (X11; U; Linux 2.4.2-2smp i686)

Description of problem:
The "-fschedule-insns" option to gcc appears to be having problems with
modulo arithmetic.

How reproducible:

Steps to Reproduce:
$ gcc -march=i686 -O3 -fstrength-reduce -fthread-jumps -fcse-follow-jumps
-fcse-skip-blocks -frerun-cse-after-loop -fschedule-insns -fschedule-insns2
-fexpensive-optimizations -fforce-mem -fforce-addr -fomit-frame-pointer -c
bug.c -o bug.o

Actual Results:  
bug.c: In function `ev_postevent':
bug.c:22: Unable to find a register to spill in class `AREG'.
bug.c:22: confused by earlier errors, bailing out

Expected Results:  Source should have compiled.

Additional info:
Comment 1 Ronald Cole 2001-06-18 21:04:34 EDT
Created attachment 21285 [details]
Small source that demonstrates the bug.
Comment 2 Jakub Jelinek 2001-06-22 06:17:53 EDT
-fschedule-insns should never be used on register starved architectures,
it has never worked there and will not work even in future compiler
There is a reason why it is not enabled with -O2 on e.g. ia32.

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