[AArch64] Remove simd_type
gcc/ * config/aarch64/aarch64-simd.md: Remove simd_type from all patterns. * config/aarch64/aarch64.md: Likewise, correct "type" attribute where it is incorrect or missing. From-SVN: r204852
This commit is contained in:
parent
3aaaa651a9
commit
78ec303685
3 changed files with 226 additions and 790 deletions
|
@ -1,3 +1,10 @@
|
|||
2013-11-15 James Greenhalgh <james.greenhalgh@arm.com>
|
||||
|
||||
* config/aarch64/aarch64-simd.md: Remove simd_type from all
|
||||
patterns.
|
||||
* config/aarch64/aarch64.md: Likewise, correct "type" attribute
|
||||
where it is incorrect or missing.
|
||||
|
||||
2013-11-15 Richard Sandiford <rdsandiford@googlemail.com>
|
||||
|
||||
* dwarf2out.c (gen_enumeration_type_die): Remove unnecessary
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -793,11 +793,10 @@
|
|||
}
|
||||
}
|
||||
[(set_attr "v8type" "move,alu,alu,load1,load1,store1,store1,*,*,*")
|
||||
(set_attr "type" "mov_reg,mov_imm,mov_imm,load1,load1,store1,store1,*,*,*")
|
||||
(set_attr "simd_type" "*,*,simd_move_imm,*,*,*,*,simd_movgp,simd_dupgp,simd_dup")
|
||||
(set_attr "type" "mov_reg,mov_imm,mov_imm,load1,load1,store1,store1,\
|
||||
neon_from_gp<q>,neon_from_gp<q>, neon_dup")
|
||||
(set_attr "simd" "*,*,yes,*,*,*,*,yes,yes,yes")
|
||||
(set_attr "mode" "<MODE>")
|
||||
(set_attr "simd_mode" "<MODE>")]
|
||||
(set_attr "mode" "<MODE>")]
|
||||
)
|
||||
|
||||
(define_expand "mov<mode>"
|
||||
|
@ -912,13 +911,13 @@
|
|||
str\\t%q1, %0"
|
||||
[(set_attr "v8type" "move2,fmovi2f,fmovf2i,*, \
|
||||
load2,store2,store2,fpsimd_load,fpsimd_store")
|
||||
(set_attr "type" "multiple,f_mcr,f_mrc,*, \
|
||||
(set_attr "type" "multiple,f_mcr,f_mrc,neon_logic_q, \
|
||||
load2,store2,store2,f_loadd,f_stored")
|
||||
(set_attr "simd_type" "*,*,*,simd_move,*,*,*,*,*")
|
||||
(set_attr "mode" "DI,DI,DI,TI,DI,DI,DI,TI,TI")
|
||||
(set_attr "length" "8,8,8,4,4,4,4,4,4")
|
||||
(set_attr "fp" "*,*,*,*,*,*,*,yes,yes")
|
||||
(set_attr "simd" "*,*,*,yes,*,*,*,*,*")])
|
||||
(set_attr "simd" "*,*,*,yes,*,*,*,*,*")
|
||||
(set_attr "fp" "*,*,*,*,*,*,*,yes,yes")]
|
||||
)
|
||||
|
||||
;; Split a TImode register-register or register-immediate move into
|
||||
;; its component DImode pieces, taking care to handle overlapping
|
||||
|
@ -2119,11 +2118,9 @@
|
|||
neg\\t%<w>0, %<w>1
|
||||
neg\\t%<rtn>0<vas>, %<rtn>1<vas>"
|
||||
[(set_attr "v8type" "alu")
|
||||
(set_attr "type" "alu_reg")
|
||||
(set_attr "simd_type" "*,simd_negabs")
|
||||
(set_attr "type" "alu_reg, neon_neg<q>")
|
||||
(set_attr "simd" "*,yes")
|
||||
(set_attr "mode" "<MODE>")
|
||||
(set_attr "simd_mode" "<MODE>")]
|
||||
(set_attr "mode" "<MODE>")]
|
||||
)
|
||||
|
||||
;; zero_extend version of above
|
||||
|
@ -3203,10 +3200,8 @@
|
|||
ushl\t%<rtn>0<vas>, %<rtn>1<vas>, %<rtn>2<vas>
|
||||
lsl\t%<w>0, %<w>1, %<w>2"
|
||||
[(set_attr "simd" "yes,yes,no")
|
||||
(set_attr "simd_type" "simd_shift_imm,simd_shift,*")
|
||||
(set_attr "simd_mode" "<MODE>,<MODE>,*")
|
||||
(set_attr "v8type" "*,*,shift")
|
||||
(set_attr "type" "*,*,shift_reg")
|
||||
(set_attr "type" "neon_shift_imm<q>, neon_shift_reg<q>,shift_reg")
|
||||
(set_attr "mode" "*,*,<MODE>")]
|
||||
)
|
||||
|
||||
|
@ -3222,10 +3217,8 @@
|
|||
#
|
||||
lsr\t%<w>0, %<w>1, %<w>2"
|
||||
[(set_attr "simd" "yes,yes,no")
|
||||
(set_attr "simd_type" "simd_shift_imm,simd_shift,*")
|
||||
(set_attr "simd_mode" "<MODE>,<MODE>,*")
|
||||
(set_attr "v8type" "*,*,shift")
|
||||
(set_attr "type" "*,*,shift_reg")
|
||||
(set_attr "type" "neon_shift_imm<q>,neon_shift_reg<q>,shift_reg")
|
||||
(set_attr "mode" "*,*,<MODE>")]
|
||||
)
|
||||
|
||||
|
@ -3267,10 +3260,8 @@
|
|||
#
|
||||
asr\t%<w>0, %<w>1, %<w>2"
|
||||
[(set_attr "simd" "yes,yes,no")
|
||||
(set_attr "simd_type" "simd_shift_imm,simd_shift,*")
|
||||
(set_attr "simd_mode" "<MODE>,<MODE>,*")
|
||||
(set_attr "v8type" "*,*,shift")
|
||||
(set_attr "type" "*,*,shift_reg")
|
||||
(set_attr "type" "neon_shift_imm<q>,neon_shift_reg<q>,shift_reg")
|
||||
(set_attr "mode" "*,*,<MODE>")]
|
||||
)
|
||||
|
||||
|
@ -3308,8 +3299,7 @@
|
|||
"TARGET_SIMD"
|
||||
"ushl\t%d0, %d1, %d2"
|
||||
[(set_attr "simd" "yes")
|
||||
(set_attr "simd_type" "simd_shift")
|
||||
(set_attr "simd_mode" "DI")]
|
||||
(set_attr "type" "neon_shift_reg")]
|
||||
)
|
||||
|
||||
(define_insn "*aarch64_ushl_2s"
|
||||
|
@ -3320,8 +3310,7 @@
|
|||
"TARGET_SIMD"
|
||||
"ushl\t%0.2s, %1.2s, %2.2s"
|
||||
[(set_attr "simd" "yes")
|
||||
(set_attr "simd_type" "simd_shift")
|
||||
(set_attr "simd_mode" "DI")]
|
||||
(set_attr "type" "neon_shift_reg")]
|
||||
)
|
||||
|
||||
(define_insn "*aarch64_sisd_sshl"
|
||||
|
@ -3332,8 +3321,7 @@
|
|||
"TARGET_SIMD"
|
||||
"sshl\t%d0, %d1, %d2"
|
||||
[(set_attr "simd" "yes")
|
||||
(set_attr "simd_type" "simd_shift")
|
||||
(set_attr "simd_mode" "DI")]
|
||||
(set_attr "type" "neon_shift_reg")]
|
||||
)
|
||||
|
||||
(define_insn "*aarch64_sshl_2s"
|
||||
|
@ -3344,8 +3332,7 @@
|
|||
"TARGET_SIMD"
|
||||
"sshl\t%0.2s, %1.2s, %2.2s"
|
||||
[(set_attr "simd" "yes")
|
||||
(set_attr "simd_type" "simd_shift")
|
||||
(set_attr "simd_mode" "DI")]
|
||||
(set_attr "type" "neon_shift_reg")]
|
||||
)
|
||||
|
||||
(define_insn "*aarch64_sisd_neg_qi"
|
||||
|
@ -3355,8 +3342,7 @@
|
|||
"TARGET_SIMD"
|
||||
"neg\t%d0, %d1"
|
||||
[(set_attr "simd" "yes")
|
||||
(set_attr "simd_type" "simd_negabs")
|
||||
(set_attr "simd_mode" "QI")]
|
||||
(set_attr "type" "neon_neg")]
|
||||
)
|
||||
|
||||
;; Rotate right
|
||||
|
|
Loading…
Add table
Reference in a new issue