This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/39457] [power7-meissner] unable to find a register to spill in class 'LINK_OR_CTR_REGS'
- From: "jakub at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 13 Mar 2009 17:54:43 -0000
- Subject: [Bug target/39457] [power7-meissner] unable to find a register to spill in class 'LINK_OR_CTR_REGS'
- References: <bug-39457-87@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #3 from jakub at gcc dot gnu dot org 2009-03-13 17:54 -------
I can reproduce even with r144843.
Comparing -da -fdump-unnumbered -fdump-noaddr dumps between
redhat/gcc-4_4-branch and power7 patched redhat/gcc-4_4-branch doesn't show any
significant differences still in sched1 (just different line numbers in *.md
files and different D.NNNN numbers of artificial variables), but in the *.ira
dump I see very high costs of link and control register classes:
- a0(r308,l0) costs: BASE_REGS:0,0 GENERAL_REGS:0,0 FLOAT_REGS:0,0
LINK_REGS:3030,3030 CTR_REGS:3030,3030 SPECIAL_REGS:3030,3030 MEM:202
0
+ a0(r308,l0) costs: BASE_REGS:0,0 GENERAL_REGS:0,0 FLOAT_REGS:0,0
LINK_REGS:1002424,1002424 CTR_REGS:1002424,1002424 SPECIAL_REGS:10024
24,1002424 MEM:2020
...
- a36(r209,l0) costs: BASE_REGS:1010,1010 GENERAL_REGS:1010,1010
FLOAT_REGS:202,202 LINK_REGS:3232,3232 CTR_REGS:3232,3232 SPECIAL_REGS:
3232,3232 MEM:2222
+ a36(r209,l0) costs: BASE_REGS:1010,1010 GENERAL_REGS:1010,1010
FLOAT_REGS:202,202 MEM:2222
etc. This is the default arch compilation, so ideally power7 patches should
make no difference on the generated code.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39457