aboutsummaryrefslogtreecommitdiff
path: root/gcc/config
diff options
context:
space:
mode:
authorUros Bizjak <uros@gcc.gnu.org>2011-06-09 18:22:47 +0200
committerUros Bizjak <uros@gcc.gnu.org>2011-06-09 18:22:47 +0200
commitb8bc3a43e91049619b8cf842704f80f3042c0624 (patch)
tree331bb9b60e164531549cb4888dc8c3e9e8c6c3bd /gcc/config
parent4745da6ed70907824215abbe37286f55985f5a53 (diff)
downloadgcc-b8bc3a43e91049619b8cf842704f80f3042c0624.zip
gcc-b8bc3a43e91049619b8cf842704f80f3042c0624.tar.gz
gcc-b8bc3a43e91049619b8cf842704f80f3042c0624.tar.bz2
i386.md (*movdi_internal_rex64): Merge alternatives 6 and 8.
* config/i386/i386.md (*movdi_internal_rex64): Merge alternatives 6 and 8. From-SVN: r174850
Diffstat (limited to 'gcc/config')
-rw-r--r--gcc/config/i386/i386.md26
1 files changed, 13 insertions, 13 deletions
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index 3e18e7a..b01435c 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -1975,9 +1975,9 @@
(define_insn "*movdi_internal_rex64"
[(set (match_operand:DI 0 "nonimmediate_operand"
- "=r,r ,r,m ,!m,*y,*y,?r ,m ,?*Ym,?*y,*x,*x,?r ,m,?*Yi,*x,?*x,?*Ym")
+ "=r,r ,r,m ,!m,*y,m*y,?*y,?r ,?*Ym,*x,m ,*x,*x,?r ,?*Yi,?*x,?*Ym")
(match_operand:DI 1 "general_operand"
- "Z ,rem,i,re,n ,C ,*y,*Ym,*y,r ,m ,C ,*x,*Yi,*x,r ,m ,*Ym,*x"))]
+ "Z ,rem,i,re,n ,C ,*y ,m ,*Ym,r ,C ,*x,*x,m ,*Yi,r ,*Ym,*x"))]
"TARGET_64BIT && !(MEM_P (operands[0]) && MEM_P (operands[1]))"
{
switch (get_attr_type (insn))
@@ -2027,18 +2027,18 @@
}
}
[(set (attr "type")
- (cond [(eq_attr "alternative" "5")
+ (cond [(eq_attr "alternative" "4")
+ (const_string "multi")
+ (eq_attr "alternative" "5")
(const_string "mmx")
- (eq_attr "alternative" "6,7,8,9,10")
+ (eq_attr "alternative" "6,7,8,9")
(const_string "mmxmov")
- (eq_attr "alternative" "11")
+ (eq_attr "alternative" "10")
(const_string "sselog1")
- (eq_attr "alternative" "12,13,14,15,16")
+ (eq_attr "alternative" "11,12,13,14,15")
(const_string "ssemov")
- (eq_attr "alternative" "17,18")
+ (eq_attr "alternative" "16,17")
(const_string "ssecvt")
- (eq_attr "alternative" "4")
- (const_string "multi")
(match_operand:DI 1 "pic_32bit_operand" "")
(const_string "lea")
]
@@ -2054,18 +2054,18 @@
(const_string "8")
(const_string "*")))
(set (attr "prefix_rex")
- (if_then_else (eq_attr "alternative" "7,9")
+ (if_then_else (eq_attr "alternative" "8,9")
(const_string "1")
(const_string "*")))
(set (attr "prefix_data16")
- (if_then_else (eq_attr "alternative" "15")
+ (if_then_else (eq_attr "alternative" "11")
(const_string "1")
(const_string "*")))
(set (attr "prefix")
- (if_then_else (eq_attr "alternative" "11,12,13,14,15,16")
+ (if_then_else (eq_attr "alternative" "10,11,12,13,14,15")
(const_string "maybe_vex")
(const_string "orig")))
- (set_attr "mode" "SI,DI,DI,DI,SI,DI,DI,DI,DI,DI,DI,TI,TI,DI,DI,DI,DI,DI,DI")])
+ (set_attr "mode" "SI,DI,DI,DI,SI,DI,DI,DI,DI,DI,TI,DI,TI,DI,DI,DI,DI,DI")])
;; Convert impossible stores of immediate to existing instructions.
;; First try to get scratch register and go through it. In case this