aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJames Greenhalgh <james.greenhalgh@arm.com>2013-10-15 15:26:15 +0000
committerJames Greenhalgh <jgreenhalgh@gcc.gnu.org>2013-10-15 15:26:15 +0000
commita9e66678ca96517de9a5b4780e8ed160c01c18b2 (patch)
tree43de7209e278c88ea73cbf7f8216941c0dc9c1d2 /gcc
parent20445ed6ad4d8de40319a3e69983879229b07c0e (diff)
downloadgcc-a9e66678ca96517de9a5b4780e8ed160c01c18b2.zip
gcc-a9e66678ca96517de9a5b4780e8ed160c01c18b2.tar.gz
gcc-a9e66678ca96517de9a5b4780e8ed160c01c18b2.tar.bz2
[AArch64] [Neon types 2/10] Update Current type attributes to new Neon Types.
gcc/ * config/aarch64/aarch64.md (movtf_aarch64): Update type attribute. (load_pair): Update type attribute. (store_pair): Update type attribute. * config/aarch64/iterators.md (q): New. From-SVN: r203612
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/config/aarch64/aarch64.md6
-rw-r--r--gcc/config/aarch64/iterators.md9
3 files changed, 19 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index fd5c90e..46b82bc 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,12 @@
2013-10-15 James Greenhalgh <james.greenhalgh@arm.com>
+ * config/aarch64/aarch64.md (movtf_aarch64): Update type attribute.
+ (load_pair): Update type attribute.
+ (store_pair): Update type attribute.
+ * config/aarch64/iterators.md (q): New.
+
+2013-10-15 James Greenhalgh <james.greenhalgh@arm.com>
+
* config/arm/types.md: Add new types for Neon insns.
2013-10-15 Alexander Ivchenko <alexander.ivchenko@intel.com>
diff --git a/gcc/config/aarch64/aarch64.md b/gcc/config/aarch64/aarch64.md
index f3e004b..0166466 100644
--- a/gcc/config/aarch64/aarch64.md
+++ b/gcc/config/aarch64/aarch64.md
@@ -1033,7 +1033,7 @@
stp\\t%1, %H1, %0"
[(set_attr "v8type" "logic,move2,fmovi2f,fmovf2i,fconst,fconst,fpsimd_load,fpsimd_store,fpsimd_load2,fpsimd_store2")
(set_attr "type" "logic_reg,multiple,f_mcr,f_mrc,fconstd,fconstd,\
- f_loadd,f_stored,neon_ldm_2,neon_stm_2")
+ f_loadd,f_stored,neon_load1_2reg,neon_store1_2reg")
(set_attr "mode" "DF,DF,DF,DF,DF,DF,TF,TF,DF,DF")
(set_attr "length" "4,8,8,8,4,4,4,4,4,4")
(set_attr "fp" "*,*,yes,yes,*,yes,yes,yes,*,*")
@@ -1098,7 +1098,7 @@
GET_MODE_SIZE (<MODE>mode)))"
"ldp\\t%<w>0, %<w>2, %1"
[(set_attr "v8type" "fpsimd_load2")
- (set_attr "type" "neon_ldm_2")
+ (set_attr "type" "neon_load1_2reg<q>")
(set_attr "mode" "<MODE>")]
)
@@ -1115,7 +1115,7 @@
GET_MODE_SIZE (<MODE>mode)))"
"stp\\t%<w>1, %<w>3, %0"
[(set_attr "v8type" "fpsimd_store2")
- (set_attr "type" "neon_stm_2")
+ (set_attr "type" "neon_store1_2reg<q>")
(set_attr "mode" "<MODE>")]
)
diff --git a/gcc/config/aarch64/iterators.md b/gcc/config/aarch64/iterators.md
index ec8d813..13c6d958 100644
--- a/gcc/config/aarch64/iterators.md
+++ b/gcc/config/aarch64/iterators.md
@@ -566,6 +566,15 @@
(V2SF "f") (V4SF "f")
(V2DF "f") (DF "f")])
+;; Defined to '_q' for 128-bit types.
+(define_mode_attr q [(V8QI "") (V16QI "_q")
+ (V4HI "") (V8HI "_q")
+ (V2SI "") (V4SI "_q")
+ (DI "") (V2DI "_q")
+ (V2SF "") (V4SF "_q")
+ (V2DF "_q")
+ (QI "") (HI "") (SI "") (DI "") (SF "") (DF "")])
+
;; -------------------------------------------------------------------
;; Code Iterators
;; -------------------------------------------------------------------