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: ICE on valid code, cse related


"Pranav Bhandarkar" <pranav.bhandarkar@gmail.com> writes:

> > Who is calling CONST_DOUBLE_LOW on this value?
> plus_constant calls CONST_DOUBLE_LOW on this value.
> 
> simplify_binary_operation_1 calls plus_constant ( while trying to
> simplify PLUS on (const_double:SF 0 [0x0] 0.0 [0x0.0p+0]) & (const_int
> -2147483648 [0x80000000]) ), which in turn calls CONST_DOUBLE_LOW.

How can we have a PLUS on a CONST_DOUBLE and a CONST_INT?  That does
not make sense, as there is no MODE argument that could make this work
correctly.  From your description, MODE must be some integer mode, in
which case it is wrong to be using a CONST_DOUBLE in SFmode.

(I don't know where the bug is; I'm just trying to help pin it down.)

Ian


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