This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: ppc: weird movdi_internal32 interaction with FLOAT_REGS



On 09/08/2004, at 4:59 AM, Aldy Hernandez wrote:


Hi Geoff.

Could you or anyone else give me a hint as to why powerpc-eabispe is
not building after your patch of (See below for ICE while building
libstdc++):

http://gcc.gnu.org/ml/gcc-patches/2004-08/msg00022.html

I don't understand why this patch would cause an interaction with
FLOAT_REGS, though I do see more 'f's before 'm's now :-).

Perhaps I need a separate movdi_internal32 for SPE without the 'f'
constraints?

It looks like reload decided to reload this insn by using the 'f -> m' alternative, not the 'r -> o<>' alternative. I think that's probably bad, since if reload is being involved at all then r->o<> is going to be cheaper (if an FPR could have been used all the time, global-alloc should have picked it, and reloading the memory address will be cheaper than a GPR->FPR move). Could you see why reload is doing this? Maybe it's confused, or maybe something (like PREFERRED_RELOAD_CLASS) confused it.


Thanks.
Aldy

a.ii: In function oid __static_initialization_and_destruction_0(int, int)':
a.ii:5631: error: unable to find a register to spill in class `FLOAT_REGS'
a.ii:5631: error: this is the insn:
(insn 30 27 31 1 (set (mem/i:DI (lo_sum:SI (reg/f:SI 9 9 [139])
(symbol_ref/i:SI ("_ZGVN9__gnu_cxx10__mt_allocIcE10_S_optionsE") [flags 0x4] <var_decl 0xf6c38174 _ZGVN9__gnu_cxx10__mt_allocIcE10_S_optionsE>)) [0 _ZGVN9__gnu_cxx10__mt_allocIcE10_S_optionsE+0 S8 A64])
(reg:DI 11 11 [orig:121 T.319 ] [121])) 328 {*movdi_internal32} (insn_list 27 (nil))
(expr_list:REG_DEAD (reg/f:SI 9 9 [139])
(nil)))
a.ii:5631: internal compiler error: in spill_failure, at reload1.c:1884

Attachment: smime.p7s
Description: S/MIME cryptographic signature


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]