Commit 9f111209 by Stuart Henderson

re PR target/39768 (internal compiler error: RTL check: expected code…

re PR target/39768 (internal compiler error: RTL check: expected code 'const_int', have 'reg' in gen_rotlsi3, at config/bfin/bfin.md:1616)

2011-05-03  Stuart Henderson  <shenders@gcc.gnu.org>

        From Bernd Schmidt
        * config/bfin/bfin.md (rotrsi, rotlsi): Don't take INTVAL of anything
        that's not CONST_INT.  Seemingly redundant check is due to PR39768.

From-SVN: r173310
parent 0ecca7a6
2011-05-03 Stuart Henderson <shenders@gcc.gnu.org>
From Bernd Schmidt
* config/bfin/bfin.md (rotrsi, rotlsi): Don't take INTVAL of anything
that's not CONST_INT. Seemingly redundant check is due to PR39768.
2011-05-03 Stuart Henderson <shenders@gcc.gnu.org>
From Jie Zhang:
* config/bfin/uclinux.h (LINK_GCC_C_SEQUENCE_SPEC): Make sure
libbffastfp overrides libgcc when -mfast-fp.
......
......@@ -1688,20 +1688,20 @@
(define_expand "rotlsi3"
[(set (match_operand:SI 0 "register_operand" "")
(rotate:SI (match_operand:SI 1 "register_operand" "")
(match_operand:SI 2 "immediate_operand" "")))]
(match_operand:SI 2 "const_int_operand" "")))]
""
{
if (INTVAL (operands[2]) != 16)
if (GET_CODE (operands[2]) != CONST_INT || INTVAL (operands[2]) != 16)
FAIL;
})
(define_expand "rotrsi3"
[(set (match_operand:SI 0 "register_operand" "")
(rotatert:SI (match_operand:SI 1 "register_operand" "")
(match_operand:SI 2 "immediate_operand" "")))]
(match_operand:SI 2 "const_int_operand" "")))]
""
{
if (INTVAL (operands[2]) != 16)
if (GET_CODE (operands[2]) != CONST_INT || INTVAL (operands[2]) != 16)
FAIL;
emit_insn (gen_rotl16 (operands[0], operands[1]));
DONE;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment