From 568b388feb480ec060e28e27217a4330e8d34f8b Mon Sep 17 00:00:00 2001 From: Richard Stallman Date: Sun, 31 Oct 1993 23:26:07 +0000 Subject: [PATCH] (extzv, and its recognizer): If width is 32, don't set CC_NOT_NEGATIVE. If width is variable, clear the CC status. From-SVN: r5958 --- gcc/config/m68k/m68k.md | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/gcc/config/m68k/m68k.md b/gcc/config/m68k/m68k.md index 4464427b7ef..1de4c570e9a 100644 --- a/gcc/config/m68k/m68k.md +++ b/gcc/config/m68k/m68k.md @@ -3961,7 +3961,15 @@ "TARGET_68020 && TARGET_BITFIELD" "* { - cc_status.flags |= CC_NOT_NEGATIVE; + if (GET_CODE (operands[2]) == CONST_INT) + { + if (INTVAL (operands[2]) != 32) + cc_status.flags |= CC_NOT_NEGATIVE; + } + else + { + CC_STATUS_INIT; + } return \"bfextu %1{%b3:%b2},%0\"; }") @@ -4033,7 +4041,15 @@ "TARGET_68020 && TARGET_BITFIELD" "* { - cc_status.flags |= CC_NOT_NEGATIVE; + if (GET_CODE (operands[2]) == CONST_INT) + { + if (INTVAL (operands[2]) != 32) + cc_status.flags |= CC_NOT_NEGATIVE; + } + else + { + CC_STATUS_INIT; + } return \"bfextu %1{%b3:%b2},%0\"; }") -- 2.30.2