"Pranav Bhandarkar" <[EMAIL PROTECTED]> writes:

> Note the REG_EQUAL note of insn 17. cse tries to replace reg:SI 138
> with a constant and because of insn 13, the note becomes (float:SF
> (const_int 0)) which in turn cse converts into
> 
> REG_EQUAL (const_double:SF 0 [0x0] 0.0 [0x0.0p+0])

That seems OK at first glance.

> and when CONST_DOUBLE_LOW is done on the above, the compiler crashes -
> 
> " internal compiler error: RTL check: expected code 'const_double' and
> mode 'VOID', have code 'const_double' and mode 'SF' in plus_constant,
> at explow.c:103"
> 
> i.e the compiler is crashing after converting a const_int to an SFmode value.

Who is calling CONST_DOUBLE_LOW on this value?

Ian

Reply via email to