remove wrong code in immed_double_const
Mike Stump
mikestump@comcast.net
Thu Mar 22 18:55:00 GMT 2012
On Mar 22, 2012, at 7:12 AM, Michael Matz wrote:
> I see that you didn't remove the assert as part of this patch.
I'll include that in my next patch.
> I'd like to see what you like to do to this routine once the rest goes in. In
> particular I don't think just removing the assert will be enough, at the
> very least the block comment should be saying something about what the
> routine exactly does (or doesn't do) for modes where the two HWI arguments
> can't specify all bits.
I think the best approach is to refine the spec:
/* Return a CONST_DOUBLE or CONST_INT for a value specified as a pair
of ints: I0 is the low-order word and I1 is the high-order word.
The value is a signed value, with the high bit of i1 being the sign
bit. Do not use this routine for non-integer modes; convert to
REAL_VALUE_TYPE and use CONST_DOUBLE_FROM_REAL_VALUE. */
I think this then exactly matches CONST_DOUBLE semantics.
More information about the Gcc-patches
mailing list