2015-06-12 Jim Wilson <jim.wilson@linaro.org>
* config/aarch64/aarch64.md (mov<mode>_aarch64): Change alternative 2
to use neon_move instead of mov_imm.
(movdi_aarch64): Change alternative 14 to use neon_move not fmov.
(movtf_aarch64): Change alternative 4 to use neon_move_q not fconstd.
===================================================================
@@ -827,7 +827,7 @@ (define_insn "*mov<mode>_aarch64"
gcc_unreachable ();
}
}
- [(set_attr "type" "mov_reg,mov_imm,mov_imm,load1,load1,store1,store1,\
+ [(set_attr "type" "mov_reg,mov_imm,neon_move,load1,load1,store1,store1,\
neon_to_gp<q>,neon_from_gp<q>,neon_dup")
(set_attr "simd" "*,*,yes,*,*,*,*,yes,yes,yes")]
)
@@ -912,7 +912,7 @@ (define_insn_and_split "*movdi_aarch64"
DONE;
}"
[(set_attr "type" "mov_reg,mov_reg,mov_reg,mov_imm,mov_imm,load1,load1,store1,store1,\
- adr,adr,f_mcr,f_mrc,fmov,fmov")
+ adr,adr,f_mcr,f_mrc,fmov,neon_move")
(set_attr "fp" "*,*,*,*,*,*,yes,*,yes,*,*,yes,yes,yes,*")
(set_attr "simd" "*,*,*,*,*,*,*,*,*,*,*,*,*,*,yes")]
)
@@ -1063,7 +1063,7 @@ (define_insn "*movtf_aarch64"
str\\t%q1, %0
ldp\\t%0, %H0, %1
stp\\t%1, %H1, %0"
- [(set_attr "type" "logic_reg,multiple,f_mcr,f_mrc,fconstd,fconstd,\
+ [(set_attr "type" "logic_reg,multiple,f_mcr,f_mrc,neon_move_q,fconstd,\
f_loadd,f_stored,neon_load1_2reg,neon_store1_2reg")
(set_attr "length" "4,8,8,8,4,4,4,4,4,4")
(set_attr "fp" "*,*,yes,yes,*,yes,yes,yes,*,*")