2014-05-23 Yvan Roux <yvan.roux@linaro.org>
authoryroux <yroux@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 12 Jun 2014 11:57:21 +0000 (11:57 +0000)
committeryroux <yroux@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 12 Jun 2014 11:57:21 +0000 (11:57 +0000)
       Backport from trunk r209706.
       2014-04-23  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

       * config/aarch64/aarch64.c (aarch64_rtx_costs): Handle BSWAP.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/linaro/gcc-4_9-branch@211521 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog.linaro
gcc/config/aarch64/aarch64.c

index 451153a..18087c4 100644 (file)
@@ -1,5 +1,12 @@
 2014-05-23  Yvan Roux  <yvan.roux@linaro.org>
 
+       Backport from trunk r209706.
+       2014-04-23  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
+
+       * config/aarch64/aarch64.c (aarch64_rtx_costs): Handle BSWAP.
+
+2014-05-23  Yvan Roux  <yvan.roux@linaro.org>
+
        Backport from trunk r209701, 209702, 209703, 209704, 209705.
        2014-04-23  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
 
index 68c29aa..277c087 100644 (file)
@@ -4694,6 +4694,14 @@ aarch64_rtx_costs (rtx x, int code, int outer ATTRIBUTE_UNUSED,
 
       return false;
 
+    case BSWAP:
+      *cost = COSTS_N_INSNS (1);
+
+      if (speed)
+        *cost += extra_cost->alu.rev;
+
+      return false;
+
     case IOR:
       if (aarch_rev16_p (x))
         {