aboutsummaryrefslogtreecommitdiff
path: root/gcc/config
diff options
context:
space:
mode:
authorH.J. Lu <hongjiu.lu@intel.com>2011-05-25 19:27:56 +0000
committerH.J. Lu <hjl@gcc.gnu.org>2011-05-25 12:27:56 -0700
commite470affed023863f9fe24ddfeb07d20ba646d0f8 (patch)
treeed6b4baacbddaaf59c9e196d6f966f635ac158fa /gcc/config
parentb5a3450ff739b14e31b4f3c16e5d27d4f540d42c (diff)
downloadgcc-e470affed023863f9fe24ddfeb07d20ba646d0f8.zip
gcc-e470affed023863f9fe24ddfeb07d20ba646d0f8.tar.gz
gcc-e470affed023863f9fe24ddfeb07d20ba646d0f8.tar.bz2
Put back "register_operand" check in 32bit QI ext patterns.
2011-05-25 H.J. Lu <hongjiu.lu@intel.com> * config/i386/i386.md (*movqi_extv_1)): Put back "register_operand" check in "type" calculation. (*movqi_extzv_2): Likewise. From-SVN: r174223
Diffstat (limited to 'gcc/config')
-rw-r--r--gcc/config/i386/i386.md14
1 files changed, 8 insertions, 6 deletions
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index 1cdbe7e..13a1cde 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -2514,9 +2514,10 @@
}
}
[(set (attr "type")
- (if_then_else (ior (not (match_operand:QI 0 "QIreg_operand" ""))
- (ne (symbol_ref "TARGET_MOVX")
- (const_int 0)))
+ (if_then_else (and (match_operand:QI 0 "register_operand" "")
+ (ior (not (match_operand:QI 0 "QIreg_operand" ""))
+ (ne (symbol_ref "TARGET_MOVX")
+ (const_int 0))))
(const_string "imovx")
(const_string "imov")))
(set (attr "mode")
@@ -2578,9 +2579,10 @@
}
}
[(set (attr "type")
- (if_then_else (ior (not (match_operand:QI 0 "QIreg_operand" ""))
- (ne (symbol_ref "TARGET_MOVX")
- (const_int 0)))
+ (if_then_else (and (match_operand:QI 0 "register_operand" "")
+ (ior (not (match_operand:QI 0 "QIreg_operand" ""))
+ (ne (symbol_ref "TARGET_MOVX")
+ (const_int 0))))
(const_string "imovx")
(const_string "imov")))
(set (attr "mode")