diff options
author | Michael Meissner <meissner@gcc.gnu.org> | 1992-07-12 02:00:57 +0000 |
---|---|---|
committer | Michael Meissner <meissner@gcc.gnu.org> | 1992-07-12 02:00:57 +0000 |
commit | e2f2127c322fb176748f82991290c474b315d0c6 (patch) | |
tree | e0f56498aea6111db691e986cff591f632ae638d /gcc | |
parent | d0ff7286ba9825c4d02c2bc8ba09be59201d2cbc (diff) | |
download | gcc-e2f2127c322fb176748f82991290c474b315d0c6.zip gcc-e2f2127c322fb176748f82991290c474b315d0c6.tar.gz gcc-e2f2127c322fb176748f82991290c474b315d0c6.tar.bz2 |
Make andsi/iorsi/xorsi match actual machine
From-SVN: r1564
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/config/mips/mips.md | 19 |
1 files changed, 6 insertions, 13 deletions
diff --git a/gcc/config/mips/mips.md b/gcc/config/mips/mips.md index 3e6b519..65c9764 100644 --- a/gcc/config/mips/mips.md +++ b/gcc/config/mips/mips.md @@ -1148,17 +1148,10 @@ move\\t%0,%z4\\n\\ ;; .................... ;; -;; Be more liberal in allowing logical operations than the machine -;; actually supports, until the reload phase forces the large integers -;; into registers. This causes better code to be generated for -;; bitfields, since the optimizer can fold things together, at the -;; expense of not CSE'ing or moving the constant out of loops, and -;; having reload load the constant into a scratch register. - (define_insn "andsi3" [(set (match_operand:SI 0 "register_operand" "=d,d") - (and:SI (match_operand:SI 1 "arith32_operand" "%d,d") - (match_operand:SI 2 "arith32_operand" "d,K")))] + (and:SI (match_operand:SI 1 "uns_arith_operand" "%d,d") + (match_operand:SI 2 "uns_arith_operand" "d,K")))] "" "@ and\\t%0,%1,%2 @@ -1192,8 +1185,8 @@ move\\t%0,%z4\\n\\ (define_insn "iorsi3" [(set (match_operand:SI 0 "register_operand" "=d,d") - (ior:SI (match_operand:SI 1 "arith32_operand" "%d,d") - (match_operand:SI 2 "arith32_operand" "d,K")))] + (ior:SI (match_operand:SI 1 "uns_arith_operand" "%d,d") + (match_operand:SI 2 "uns_arith_operand" "d,K")))] "" "@ or\\t%0,%1,%2 @@ -1227,8 +1220,8 @@ move\\t%0,%z4\\n\\ (define_insn "xorsi3" [(set (match_operand:SI 0 "register_operand" "=d,d") - (xor:SI (match_operand:SI 1 "arith32_operand" "%d,d") - (match_operand:SI 2 "arith32_operand" "d,K")))] + (xor:SI (match_operand:SI 1 "uns_arith_operand" "%d,d") + (match_operand:SI 2 "uns_arith_operand" "d,K")))] "" "@ xor\\t%0,%1,%2 |