[PATCH, commited]: Fix reg-stack.c UNSPEC_TRUNC_NOOP handling
Uros Bizjak
ubizjak@gmail.com
Sat Nov 25 21:47:00 GMT 2006
Roger Sayle wrote:
>>internal compiler error: RTL check: expected elt 0 type 'e' or 'u',
>>have 'E' (rtx unspec) in get_true_reg, at reg-stack.c:452
>>
>>
>
>Grr, it looks like Uros meant to write:
>
>+ case UNSPEC:
>+ if (XINT (*pat, 1) == UNSPEC_TRUNC_NOOP)
>+ pat = & XVECEXP (*pat, 0, 0);
>+ break;
>
>Or else we fall through to the FLOAT_TRUNCATE case for UNSPECs other
>than UNSPEC_TRUNC_NOOP.
>
>I'll pre-approve that correction (as obvious?), if it bootstraps and
>regression tests without problems. My apologies for missing this
>during review.
>
>
Attached patch fixes these failures. Patch was regression tested on
x86_64-pc-linux-gnu for c, c++ and fortran.
2006-11-25 Uros Bizjak <ubizjak@gmail.com>
* reg-stack.c (get_true_reg): Fix UNSPEC_TRUNC_NOOP handling.
Uros.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: reg-stack.diff
Type: text/x-patch
Size: 416 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20061125/cd684a09/attachment.bin>
More information about the Gcc-patches
mailing list