)
(define_insn "movv8qi_internal"
- [(set (match_operand:V8QI 0 "nonimmediate_operand" "=y,m,y,?r,?y,?r")
- (match_operand:V8QI 1 "general_operand" "y,y,mi,y,r,mi"))]
+ [(set (match_operand:V8QI 0 "nonimmediate_operand" "=y,m,y,?r,?y,?r,?r")
+ (match_operand:V8QI 1 "general_operand" "y,y,mi,y,r,r,mi"))]
"TARGET_REALLY_IWMMXT"
"*
switch (which_alternative)
case 2: return \"wldrd%?\\t%0, %1\";
case 3: return \"tmrrc%?\\t%Q0, %R0, %1\";
case 4: return \"tmcrr%?\\t%0, %Q1, %R1\";
+ case 5: return \"#\";
default: return output_move_double (operands);
}"
[(set_attr "predicable" "yes")
- (set_attr "length" "4, 4, 4,4,4, 8")
- (set_attr "type" "*,store1,load1,*,*,load1")
- (set_attr "pool_range" "*, *, 256,*,*, 256")
- (set_attr "neg_pool_range" "*, *, 244,*,*, 244")])
+ (set_attr "length" "4, 4, 4,4,4,8, 8")
+ (set_attr "type" "*,store1,load1,*,*,*,load1")
+ (set_attr "pool_range" "*, *, 256,*,*,*, 256")
+ (set_attr "neg_pool_range" "*, *, 244,*,*,*, 244")])
(define_insn "movv4hi_internal"
- [(set (match_operand:V4HI 0 "nonimmediate_operand" "=y,m,y,?r,?y,?r")
- (match_operand:V4HI 1 "general_operand" "y,y,mi,y,r,mi"))]
+ [(set (match_operand:V4HI 0 "nonimmediate_operand" "=y,m,y,?r,?y,?r,?r")
+ (match_operand:V4HI 1 "general_operand" "y,y,mi,y,r,r,mi"))]
"TARGET_REALLY_IWMMXT"
"*
switch (which_alternative)
case 2: return \"wldrd%?\\t%0, %1\";
case 3: return \"tmrrc%?\\t%Q0, %R0, %1\";
case 4: return \"tmcrr%?\\t%0, %Q1, %R1\";
+ case 5: return \"#\";
default: return output_move_double (operands);
}"
[(set_attr "predicable" "yes")
- (set_attr "length" "4, 4, 4,4,4, 8")
- (set_attr "type" "*,store1,load1,*,*,load1")
- (set_attr "pool_range" "*, *, 256,*,*, 256")
- (set_attr "neg_pool_range" "*, *, 244,*,*, 244")])
+ (set_attr "length" "4, 4, 4,4,4,8, 8")
+ (set_attr "type" "*,store1,load1,*,*,*,load1")
+ (set_attr "pool_range" "*, *, 256,*,*,*, 256")
+ (set_attr "neg_pool_range" "*, *, 244,*,*,*, 244")])
(define_insn "movv2si_internal"
- [(set (match_operand:V2SI 0 "nonimmediate_operand" "=y,m,y,?r,?y,?r")
- (match_operand:V2SI 1 "general_operand" "y,y,mi,y,r,mi"))]
+ [(set (match_operand:V2SI 0 "nonimmediate_operand" "=y,m,y,?r,?y,?r,?r")
+ (match_operand:V2SI 1 "general_operand" "y,y,mi,y,r,r,mi"))]
"TARGET_REALLY_IWMMXT"
"*
switch (which_alternative)
case 2: return \"wldrd%?\\t%0, %1\";
case 3: return \"tmrrc%?\\t%Q0, %R0, %1\";
case 4: return \"tmcrr%?\\t%0, %Q1, %R1\";
+ case 5: return \"#\";
default: return output_move_double (operands);
}"
[(set_attr "predicable" "yes")
- (set_attr "length" "4, 4, 4,4,4, 24")
- (set_attr "type" "*,store1,load1,*,*,load1")
- (set_attr "pool_range" "*, *, 256,*,*, 256")
- (set_attr "neg_pool_range" "*, *, 244,*,*, 244")])
+ (set_attr "length" "4, 4, 4,4,4,8, 24")
+ (set_attr "type" "*,store1,load1,*,*,*,load1")
+ (set_attr "pool_range" "*, *, 256,*,*,*, 256")
+ (set_attr "neg_pool_range" "*, *, 244,*,*,*, 244")])
;; This pattern should not be needed. It is to match a
;; wierd case generated by GCC when no optimizations are