aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKelvin Nilsen <kelvin@gcc.gnu.org>2016-03-16 20:21:15 +0000
committerKelvin Nilsen <kelvin@gcc.gnu.org>2016-03-16 20:21:15 +0000
commitea68d78483ab8c395e42ca33221133449cb154d8 (patch)
tree0c4e38cc85b04aaf3af88186fb7cc2829e164bd1
parent9c478bc85a57108923ec7e2a6a01ca6311f8b91b (diff)
back out fusion code patternibm/kelvin-rfc2496
git-svn-id: https://gcc.gnu.org/svn/gcc/branches/ibm/kelvin-rfc2496@234268 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/config/rs6000/altivec.md13
1 files changed, 6 insertions, 7 deletions
diff --git a/gcc/config/rs6000/altivec.md b/gcc/config/rs6000/altivec.md
index 83a79cca08d..b8f4909f3f5 100644
--- a/gcc/config/rs6000/altivec.md
+++ b/gcc/config/rs6000/altivec.md
@@ -1964,18 +1964,17 @@
(set_attr "length" "4,4,8")])
(define_insn "*altivec_vpermr_<mode>_internal"
- [(set (match_operand:VM 0 "register_operand" "=v,?wo,?&wo")
- (unspec:VM [(match_operand:VM 1 "register_operand" "v,0,wo")
- (match_operand:VM 2 "register_operand" "v,wo,wo")
- (match_operand:V16QI 3 "register_operand" "v,wo,wo")]
+ [(set (match_operand:VM 0 "register_operand" "=v,?wo")
+ (unspec:VM [(match_operand:VM 1 "register_operand" "v,0")
+ (match_operand:VM 2 "register_operand" "v,wo")
+ (match_operand:V16QI 3 "register_operand" "v,wo")]
UNSPEC_VPERMR))]
"TARGET_P9_VECTOR"
"@
vpermr %0,%1,%2,%3
- xxpermr %x0,%x2,%x3
- xxlor %x0,%x1,%x1\t\t# xxpermr fusion\;xxpermr %x0,%x2,%x3"
+ xxpermr %x0,%x2,%x3"
[(set_attr "type" "vecperm")
- (set_attr "length" "4,4,8")])
+ (set_attr "length" "4,4")])
(define_insn "altivec_vperm_v8hiv16qi"
[(set (match_operand:V16QI 0 "register_operand" "=v,?wo,?&wo")