[ARM] Fix new constraints and attributes of SI/HI data movement patterns
authorMatthew Wahab <matthew.wahab@arm.com>
Thu, 29 Sep 2016 13:50:55 +0000 (13:50 +0000)
committerMatthew Wahab <mwahab@gcc.gnu.org>
Thu, 29 Sep 2016 13:50:55 +0000 (13:50 +0000)
* config/arm/arm.md (*arm_movsi_insn): Replace "t2" arch attribute
with "v6t2".  Move "arch" attribute above "pool_range".
* config/arm/vfp.md (*arm_movhi_vfp): Replace "t2" arch attribute
with "v6t2".
(*thumb2_movhi_vfp): Likewise.
(*arm_movhi_fp16): Likewise.
(*thumb2_movhi_fp16): Likewise.
(*arm_movsi_vfp): Remove "arch" attribute.
(*thumb2_movsi_vfp): Likewise.

From-SVN: r240622

gcc/ChangeLog
gcc/config/arm/arm.md
gcc/config/arm/vfp.md

index 432b79047ed299e988eec801f9712613f2dc5c31..f7f753b91b3bfecaf219a556c5cbed6fae40e535 100644 (file)
@@ -1,3 +1,15 @@
+2016-09-29  Matthew Wahab  <matthew.wahab@arm.com>
+
+       * config/arm/arm.md (*arm_movsi_insn): Replace "t2" arch attribute
+       with "v6t2".  Move "arch" attribute above "pool_range".
+       * config/arm/vfp.md (*arm_movhi_vfp): Replace "t2" arch attribute
+       with "v6t2".
+       (*thumb2_movhi_vfp): Likewise.
+       (*arm_movhi_fp16): Likewise.
+       (*thumb2_movhi_fp16): Likewise.
+       (*arm_movsi_vfp): Remove "arch" attribute.
+       (*thumb2_movsi_vfp): Likewise.
+
 2016-09-29  Martin Liska  <mliska@suse.cz>
 
        * doc/extend.texi: Remove limitation of Objective C for
index 999292baeab1ee0d07569a63a7eb1b63a2cff7f2..396aab733658fd657ad47d13c1b3a1cdc8c591db 100644 (file)
    str%?\\t%1, %0"
   [(set_attr "type" "mov_reg,mov_imm,mvn_imm,mov_imm,load1,store1")
    (set_attr "predicable" "yes")
+   (set_attr "arch" "*,*,*,v6t2,*,*")
    (set_attr "pool_range" "*,*,*,*,4096,*")
-   (set_attr "arch" "*,*,*,t2,*,*")
    (set_attr "neg_pool_range" "*,*,*,*,4084,*")]
 )
 
index 21eaf486ddb13ee28773a41e2c40812a1842b712..f39e590a5aebfa1ea27402df02fa63fb64f362a0 100644 (file)
@@ -65,7 +65,7 @@
     (const_string "f_mcr")
     (const_string "f_mrc")
     (const_string "fmov")])
-  (set_attr "arch" "*, *, t2, *, *, *, *, *")
+  (set_attr "arch" "*, *, v6t2, *, *, *, *, *")
   (set_attr "pool_range" "*, *, *, *, 256, *, *, *")
   (set_attr "neg_pool_range" "*, *, *, *, 244, *, *, *")
   (set_attr "length" "4")]
   (set_attr "type"
    "mov_reg, mov_imm, mov_imm, mov_imm, store1, load1,\
     f_mcr, f_mrc, fmov")
-  (set_attr "arch" "*, *, *, t2, *, *, *, *, *")
+  (set_attr "arch" "*, *, *, v6t2, *, *, *, *, *")
   (set_attr "pool_range" "*, *, *, *, *, 4094, *, *, *")
   (set_attr "neg_pool_range" "*, *, *, *, *, 250, *, *, *")
   (set_attr "length" "2, 4, 2, 4, 4, 4, 4, 4, 4")]
     (const_string "f_mcr")
     (const_string "f_mrc")
     (const_string "fmov")])
-  (set_attr "arch" "*, *, t2, *, *, *, *, *")
+  (set_attr "arch" "*, *, v6t2, *, *, *, *, *")
   (set_attr "pool_range" "*, *, *, *, 256, *, *, *")
   (set_attr "neg_pool_range" "*, *, *, *, 244, *, *, *")
   (set_attr "length" "4")]
   (set_attr "type"
    "mov_reg, mov_imm, mov_imm, mov_imm, store1, load1,\
     f_mcr, f_mrc, fmov")
-  (set_attr "arch" "*, *, *, t2, *, *, *, *, *")
+  (set_attr "arch" "*, *, *, v6t2, *, *, *, *, *")
   (set_attr "pool_range" "*, *, *, *, *, 4094, *, *, *")
   (set_attr "neg_pool_range" "*, *, *, *, *, 250, *, *, *")
   (set_attr "length" "2, 4, 2, 4, 4, 4, 4, 4, 4")]
   [(set_attr "predicable" "yes")
    (set_attr "type" "mov_reg,mov_reg,mvn_imm,mov_imm,load1,store1,
                     f_mcr,f_mrc,fmov,f_loads,f_stores")
-   (set_attr "arch" "*,*,*,t2,*,*,*,*,*,*,*")
    (set_attr "pool_range"     "*,*,*,*,4096,*,*,*,*,1020,*")
    (set_attr "neg_pool_range" "*,*,*,*,4084,*,*,*,*,1008,*")]
 )
    (set_attr "predicable_short_it" "yes,no,yes,no,no,no,no,no,no,no,no,no,no,no")
    (set_attr "type" "mov_reg,mov_reg,mov_reg,mvn_reg,mov_imm,load1,load1,store1,store1,f_mcr,f_mrc,fmov,f_loads,f_stores")
    (set_attr "length" "2,4,2,4,4,4,4,4,4,4,4,4,4,4")
-   (set_attr "arch" "*,*,*,*,t2,*,*,*,*,*,*,*,*,*")
    (set_attr "pool_range"     "*,*,*,*,*,1018,4094,*,*,*,*,*,1018,*")
    (set_attr "neg_pool_range" "*,*,*,*,*,   0,   0,*,*,*,*,*,1008,*")]
 )