@@ -125,7 +125,7 @@
}
}
[(set_attr "type" "neon_load1_1reg<q>, store_8, neon_store1_1reg<q>,\
- neon_logic<q>, neon_to_gp<q>, f_mcr,\
+ neon_move<q>, neon_to_gp<q>, f_mcr,\
mov_reg, neon_move<q>")]
)
@@ -159,7 +159,7 @@
}
}
[(set_attr "type" "neon_load1_1reg<q>, store_16, neon_store1_1reg<q>,\
- neon_logic<q>, multiple, multiple,\
+ neon_move<q>, multiple, multiple,\
multiple, neon_move<q>")
(set_attr "length" "4,4,4,4,8,8,8,4")]
)
@@ -1195,7 +1195,7 @@
stp\\txzr, xzr, %0
ldr\\t%q0, %1
str\\t%q1, %0"
- [(set_attr "type" "multiple,f_mcr,f_mrc,neon_logic_q, \
+ [(set_attr "type" "multiple,f_mcr,f_mrc,neon_move_q, \
load_16,store_16,store_16,\
load_16,store_16")
(set_attr "length" "8,8,8,4,4,4,4,4,4")
From: Andrew Pinski <apinski@marvell.com> Hi, In some places in the aarch64 backend, neon_logic is used for mov v0.16b, v1.16b mov v0.<Vbtype>, v1.<Vbtype> This patch moves them over to use neon_move<q> instead. For most cores, this does not matter but for OcteonTX2 core it does matter. OK? Bootstrapped and tested on aarch64-linux-gnu with no regressions. Thanks, Andrew Pinski ChangeLog: * config/aarch64/aarch64.md (*movti_aarch64): Fix type attribute for neon move. * config/aarch64/aarch64-simd.md (*aarch64_simd_mov<VD:mode>): Likewise. (*aarch64_simd_mov<VQ:mode>): Likewise. --- gcc/config/aarch64/aarch64-simd.md | 4 ++-- gcc/config/aarch64/aarch64.md | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-)