aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Edelsohn <edelsohn@gnu.org>1997-05-09 18:47:12 +0000
committerDavid Edelsohn <edelsohn@gnu.org>1997-05-09 18:47:12 +0000
commitf0dc3f49258249dcec798021e1d7dabbf02a6ed0 (patch)
treeca3605c8577bf0538e62b0dc0f83a3bc213010cd
parentb27cd47c65b2f40f641b00ab148f31bbb285d976 (diff)
downloadgcc-f0dc3f49258249dcec798021e1d7dabbf02a6ed0.zip
gcc-f0dc3f49258249dcec798021e1d7dabbf02a6ed0.tar.gz
gcc-f0dc3f49258249dcec798021e1d7dabbf02a6ed0.tar.bz2
extend restrictions on combining lshiftrt with insv to all shifts
From-SVN: r14057
-rw-r--r--gcc/config/rs6000/rs6000.md4
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/config/rs6000/rs6000.md b/gcc/config/rs6000/rs6000.md
index 8c4f0b3..fc1323a 100644
--- a/gcc/config/rs6000/rs6000.md
+++ b/gcc/config/rs6000/rs6000.md
@@ -2102,7 +2102,7 @@
(match_operand:SI 2 "const_int_operand" "i"))
(ashift:SI (match_operand:SI 3 "gpc_reg_operand" "r")
(match_operand:SI 4 "const_int_operand" "i")))]
- ""
+ "(32 - (INTVAL (operands[4]) & 31)) >= INTVAL (operands[1])"
"*
{
int shift = INTVAL (operands[4]) & 31;
@@ -2120,7 +2120,7 @@
(match_operand:SI 2 "const_int_operand" "i"))
(ashiftrt:SI (match_operand:SI 3 "gpc_reg_operand" "r")
(match_operand:SI 4 "const_int_operand" "i")))]
- ""
+ "(32 - (INTVAL (operands[4]) & 31)) >= INTVAL (operands[1])"
"*
{
int shift = INTVAL (operands[4]) & 31;