[AArch64, ARM] Use "multiple" for type, where more than one instruction is used for...
authorJames Greenhalgh <james.greenhalgh@arm.com>
Fri, 6 Sep 2013 13:56:01 +0000 (13:56 +0000)
committerJames Greenhalgh <jgreenhalgh@gcc.gnu.org>
Fri, 6 Sep 2013 13:56:01 +0000 (13:56 +0000)
gcc/
* config/aarch64/aarch64.md
(*movti_aarch64): Use "multiple" for type where v8type is "move2".
(*movtf_aarch64): Likewise.
* config/arm/arm.md
(thumb1_movdi_insn): Use "multiple" for type where more than one
instruction is used for a move.
(*arm32_movhf): Likewise.
(*thumb_movdf_insn): Likewise.

From-SVN: r202332

gcc/ChangeLog
gcc/config/aarch64/aarch64.md
gcc/config/arm/arm.md

index b27d384..6129ba2 100644 (file)
@@ -1,5 +1,16 @@
 2013-09-06  James Greenhalgh  <james.greenhalgh@arm.com>
 
+       * config/aarch64/aarch64.md
+       (*movti_aarch64): Use "multiple" for type where v8type is "move2".
+       (*movtf_aarch64): Likewise.
+       * config/arm/arm.md
+       (thumb1_movdi_insn): Use "multiple" for type where more than one
+       instruction is used for a move.
+       (*arm32_movhf): Likewise.
+       (*thumb_movdf_insn): Likewise.
+
+2013-09-06  James Greenhalgh  <james.greenhalgh@arm.com>
+
        * config/arm/types.md (type): Rename fcpys to fmov.
        * config/arm/vfp.md
        (*arm_movsi_vfp): Rename type fcpys as fmov.
index db6aa1d..9670586 100644 (file)
    str\\t%q1, %0"
   [(set_attr "v8type" "move2,fmovi2f,fmovf2i,*, \
                       load2,store2,store2,fpsimd_load,fpsimd_store")
-   (set_attr "type" "mov_reg,f_mcr,f_mrc,*, \
+   (set_attr "type" "multiple,f_mcr,f_mrc,*, \
                             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")
    ldp\\t%0, %H0, %1
    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,mov_reg,f_mcr,f_mrc,fconstd,fconstd,\
+   (set_attr "type" "logic_reg,multiple,f_mcr,f_mrc,fconstd,fconstd,\
                      f_loadd,f_stored,f_loadd,f_stored")
    (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")
index 6c0fbf4..fd0b1cb 100644 (file)
     }
   }"
   [(set_attr "length" "4,4,6,2,2,6,4,4")
-   (set_attr "type" "multiple,mov_reg,multiple,load2,store2,load2,store2,mov_reg")
+   (set_attr "type" "multiple,multiple,multiple,load2,store2,load2,store2,multiple")
    (set_attr "pool_range" "*,*,*,*,*,1018,*,*")]
 )
 
     }
   "
   [(set_attr "conds" "unconditional")
-   (set_attr "type" "load1,store1,mov_reg,mov_reg")
+   (set_attr "type" "load1,store1,mov_reg,multiple")
    (set_attr "length" "4,4,4,8")
    (set_attr "predicable" "yes")]
 )
     }
   "
   [(set_attr "length" "4,2,2,6,4,4")
-   (set_attr "type" "multiple,load2,store2,load2,store2,mov_reg")
+   (set_attr "type" "multiple,load2,store2,load2,store2,multiple")
    (set_attr "pool_range" "*,*,*,1018,*,*")]
 )
 \f