aboutsummaryrefslogtreecommitdiff
path: root/gcc/config
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2016-07-14 23:55:47 +0930
committerAlan Modra <amodra@gcc.gnu.org>2016-07-14 23:55:47 +0930
commit0c15a902d1eb8d9b2be4eeced2a500c4a8a25152 (patch)
treeb649f334b72673289748a6fad5514849464e09c3 /gcc/config
parentec573d17b874fe0528f47b7522905fffe9803d48 (diff)
downloadgcc-0c15a902d1eb8d9b2be4eeced2a500c4a8a25152.zip
gcc-0c15a902d1eb8d9b2be4eeced2a500c4a8a25152.tar.gz
gcc-0c15a902d1eb8d9b2be4eeced2a500c4a8a25152.tar.bz2
[RS6000] Disparage altivec_mov gpr alternatives
and fix constraint '*' placement. * gcc/config/rs6000/altivec.md (altivec_mov<mode>): Disparage gpr alternatives. Correct '*' placement on Y,r alternative. Add '*' on operand 1 of r,r alternative. From-SVN: r238339
Diffstat (limited to 'gcc/config')
-rw-r--r--gcc/config/rs6000/altivec.md4
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/config/rs6000/altivec.md b/gcc/config/rs6000/altivec.md
index aa01ac9..9193f07 100644
--- a/gcc/config/rs6000/altivec.md
+++ b/gcc/config/rs6000/altivec.md
@@ -222,8 +222,8 @@
;; Vector move instructions.
(define_insn "*altivec_mov<mode>"
- [(set (match_operand:VM2 0 "nonimmediate_operand" "=Z,v,v,*Y,*r,*r,v,v,*r")
- (match_operand:VM2 1 "input_operand" "v,Z,v,r,Y,r,j,W,W"))]
+ [(set (match_operand:VM2 0 "nonimmediate_operand" "=Z,v,v,?Y,?*r,?*r,v,v,?*r")
+ (match_operand:VM2 1 "input_operand" "v,Z,v,*r,Y,*r,j,W,W"))]
"VECTOR_MEM_ALTIVEC_P (<MODE>mode)
&& (register_operand (operands[0], <MODE>mode)
|| register_operand (operands[1], <MODE>mode))"