diff options
author | Richard Kenner <kenner@gcc.gnu.org> | 1994-04-16 21:05:27 -0400 |
---|---|---|
committer | Richard Kenner <kenner@gcc.gnu.org> | 1994-04-16 21:05:27 -0400 |
commit | 8de2a1973adf2396b2c202044df8330bc271fa94 (patch) | |
tree | a0893f6ee93fc86dcf4cbb2f4158d715f2c815e5 | |
parent | 0081a354a809105cfdf65c7a7e170d5258323913 (diff) | |
download | gcc-8de2a1973adf2396b2c202044df8330bc271fa94.zip gcc-8de2a1973adf2396b2c202044df8330bc271fa94.tar.gz gcc-8de2a1973adf2396b2c202044df8330bc271fa94.tar.bz2 |
(one_cmplsi2): Always use nor instruction;
remove extraneous minus sign from condition register set constraint.
From-SVN: r7055
-rw-r--r-- | gcc/config/rs6000/rs6000.md | 16 |
1 files changed, 2 insertions, 14 deletions
diff --git a/gcc/config/rs6000/rs6000.md b/gcc/config/rs6000/rs6000.md index af7f9fd..58d1161 100644 --- a/gcc/config/rs6000/rs6000.md +++ b/gcc/config/rs6000/rs6000.md @@ -385,22 +385,10 @@ operands[4] = gen_rtx (CONST_INT, VOIDmode, low); }") -(define_expand "one_cmplsi2" +(define_insn "one_cmplsi2" [(set (match_operand:SI 0 "gpc_reg_operand" "=r") (not:SI (match_operand:SI 1 "gpc_reg_operand" "r")))] "" - "") - -(define_insn "" - [(set (match_operand:SI 0 "gpc_reg_operand" "=r") - (not:SI (match_operand:SI 1 "gpc_reg_operand" "r")))] - "TARGET_POWER" - "{sfi|subfic} %0,%1,-1") - -(define_insn "" - [(set (match_operand:SI 0 "gpc_reg_operand" "=r") - (not:SI (match_operand:SI 1 "gpc_reg_operand" "r")))] - "! TARGET_POWER" "nor %0,%1,%1") (define_insn "" @@ -413,7 +401,7 @@ [(set_attr "type" "compare")]) (define_insn "" - [(set (match_operand:CC 2 "cc_reg_operand" "=-x") + [(set (match_operand:CC 2 "cc_reg_operand" "=x") (compare:CC (not:SI (match_operand:SI 1 "gpc_reg_operand" "r")) (const_int 0))) (set (match_operand:SI 0 "gpc_reg_operand" "=r") |