S/390: Fix ICE on s390x
Ulrich Weigand
weigand@immd1.informatik.uni-erlangen.de
Tue May 13 14:43:00 GMT 2003
Hello,
this fixes a ICE on s390x when building current binutils; the problem
is caused by the "*iorsi3_oi" insn being marked commutative, although
the insn predicate makes asymmetric checks on the operands.
Bootstrapped/regtested on s390x-ibm-linux, applied to CVS head.
Bye,
Ulrich
ChangeLog:
* config/s390/s390.md ("*iordi3_oi"): Do not mark commutative.
("*iorsi3_oi"): Likewise.
Index: gcc/config/s390/s390.md
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/s390/s390.md,v
retrieving revision 1.54
diff -c -p -r1.54 s390.md
*** gcc/config/s390/s390.md 17 Apr 2003 09:59:32 -0000 1.54
--- gcc/config/s390/s390.md 13 May 2003 11:59:02 -0000
***************
*** 4612,4618 ****
(define_insn "*iordi3_oi"
[(set (match_operand:DI 0 "register_operand" "=d")
! (ior:DI (match_operand:DI 1 "nonimmediate_operand" "%0")
(match_operand:DI 2 "immediate_operand" "n")))
(clobber (reg:CC 33))]
"TARGET_64BIT && s390_single_hi (operands[2], DImode, 0) >= 0"
--- 4612,4618 ----
(define_insn "*iordi3_oi"
[(set (match_operand:DI 0 "register_operand" "=d")
! (ior:DI (match_operand:DI 1 "nonimmediate_operand" "0")
(match_operand:DI 2 "immediate_operand" "n")))
(clobber (reg:CC 33))]
"TARGET_64BIT && s390_single_hi (operands[2], DImode, 0) >= 0"
***************
*** 4692,4698 ****
(define_insn "*iorsi3_oi"
[(set (match_operand:SI 0 "register_operand" "=d")
! (ior:SI (match_operand:SI 1 "nonimmediate_operand" "%0")
(match_operand:SI 2 "immediate_operand" "n")))
(clobber (reg:CC 33))]
"TARGET_64BIT && s390_single_hi (operands[2], SImode, 0) >= 0"
--- 4692,4698 ----
(define_insn "*iorsi3_oi"
[(set (match_operand:SI 0 "register_operand" "=d")
! (ior:SI (match_operand:SI 1 "nonimmediate_operand" "0")
(match_operand:SI 2 "immediate_operand" "n")))
(clobber (reg:CC 33))]
"TARGET_64BIT && s390_single_hi (operands[2], SImode, 0) >= 0"
--
Dr. Ulrich Weigand
weigand@informatik.uni-erlangen.de
More information about the Gcc-patches
mailing list