[AArch64] [Neon types 2/10] Update Current type attributes to new Neon Types.
authorJames Greenhalgh <james.greenhalgh@arm.com>
Tue, 15 Oct 2013 15:26:15 +0000 (15:26 +0000)
committerJames Greenhalgh <jgreenhalgh@gcc.gnu.org>
Tue, 15 Oct 2013 15:26:15 +0000 (15:26 +0000)
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

gcc/ChangeLog
gcc/config/aarch64/aarch64.md
gcc/config/aarch64/iterators.md

index fd5c90e..46b82bc 100644 (file)
@@ -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>
index f3e004b..0166466 100644 (file)
    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,*,*")
                               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>")]
 )
 
                               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>")]
 )
 
index ec8d813..13c6d95 100644 (file)
                     (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
 ;; -------------------------------------------------------------------