diff options
author | mshawcroft <mshawcroft@138bc75d-0d04-0410-961f-82ee72b054a4> | 2015-10-30 09:54:38 +0000 |
---|---|---|
committer | mshawcroft <mshawcroft@138bc75d-0d04-0410-961f-82ee72b054a4> | 2015-10-30 09:54:38 +0000 |
commit | 790d50bd7ee950ce4d4cb6a6b9ea7a7062aaeee6 (patch) | |
tree | b77ebfb0549abc62e236adb2c7c3bbe7e9b4a5a2 | |
parent | 0334b31204f696717d29149d8f32c488ad6cfd6c (diff) | |
download | gcc-790d50bd7ee950ce4d4cb6a6b9ea7a7062aaeee6.tar.gz |
[AArch64] Fix insn types.
2015-10-30 Evandro Menezes <e.menezes@samsung.com>
* config/aarch64/aarch64.md (*movhf_aarch64): Change the type of
"mov %0.h[0], %1.h[0] to "neon_move".
(*movtf_aarch64): Change the type of "fmov %s0, wzr" to "f_mcr".
(*cmov<mode>_insn): Change the types of "mov %<w>0, {-1,1}" to
"mov_imm".
(*cmovsi_insn_uxtw): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@229572 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ChangeLog | 9 | ||||
-rw-r--r-- | gcc/config/aarch64/aarch64.md | 8 |
2 files changed, 13 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e9379ddc490..f1aea782221 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,12 @@ +2015-10-30 Evandro Menezes <e.menezes@samsung.com> + + * config/aarch64/aarch64.md (*movhf_aarch64): Change the type of + "mov %0.h[0], %1.h[0] to "neon_move". + (*movtf_aarch64): Change the type of "fmov %s0, wzr" to "f_mcr". + (*cmov<mode>_insn): Change the types of "mov %<w>0, {-1,1}" to + "mov_imm". + (*cmovsi_insn_uxtw): Likewise. + 2015-10-30 Tom de Vries <tom@codesourcery.com> * tree-ssa-structalias.c (ipa_pta_execute): Declare variable from as diff --git a/gcc/config/aarch64/aarch64.md b/gcc/config/aarch64/aarch64.md index 82438f23c14..42c9b5e72e5 100644 --- a/gcc/config/aarch64/aarch64.md +++ b/gcc/config/aarch64/aarch64.md @@ -1134,7 +1134,7 @@ ldrh\\t%w0, %1 strh\\t%w1, %0 mov\\t%w0, %w1" - [(set_attr "type" "neon_from_gp,neon_to_gp,fmov,\ + [(set_attr "type" "neon_from_gp,neon_to_gp,neon_move,\ f_loads,f_stores,load1,store1,mov_reg") (set_attr "simd" "yes,yes,yes,*,*,*,*,*") (set_attr "fp" "*,*,*,yes,yes,*,*,*")] @@ -1197,7 +1197,7 @@ ldp\\t%0, %H0, %1 stp\\t%1, %H1, %0 stp\\txzr, xzr, %0" - [(set_attr "type" "logic_reg,multiple,f_mcr,f_mrc,neon_move_q,fconstd,\ + [(set_attr "type" "logic_reg,multiple,f_mcr,f_mrc,neon_move_q,f_mcr,\ f_loadd,f_stored,load2,store2,store2") (set_attr "length" "4,8,8,8,4,4,4,4,4,4,4") (set_attr "fp" "*,*,yes,yes,*,yes,yes,yes,*,*,*") @@ -2988,7 +2988,7 @@ csinc\\t%<w>0, %<w>4, <w>zr, %M1 mov\\t%<w>0, -1 mov\\t%<w>0, 1" - [(set_attr "type" "csel")] + [(set_attr "type" "csel, csel, csel, csel, csel, mov_imm, mov_imm")] ) ;; zero_extend version of above @@ -3011,7 +3011,7 @@ csinc\\t%w0, %w4, wzr, %M1 mov\\t%w0, -1 mov\\t%w0, 1" - [(set_attr "type" "csel")] + [(set_attr "type" "csel, csel, csel, csel, csel, mov_imm, mov_imm")] ) (define_insn "*cmovdi_insn_uxtw" |