]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
backport: re PR target/85755 (PowerPC Gcc's -mupdate produces inefficient code on...
authorEric Botcazou <ebotcazou@adacore.com>
Fri, 8 Feb 2019 10:37:15 +0000 (10:37 +0000)
committerEric Botcazou <ebotcazou@gcc.gnu.org>
Fri, 8 Feb 2019 10:37:15 +0000 (10:37 +0000)
Backport from mainline
2018-06-11  Segher Boessenkool  <segher@kernel.crashing.org>

PR target/85755
* config/rs6000/rs6000.md (*movdi_internal32): Put constraint modifiers
on the correct operand.
(*movdi_internal64): Ditto.

From-SVN: r268670

gcc/ChangeLog
gcc/config/rs6000/rs6000.md

index 7c5ddb5fcc6fe3cd3c154e8e2c6c2cb88a65c35f..91dbf9962adf1dccca8301755a8e0d03a5e8b277 100644 (file)
@@ -1,3 +1,13 @@
+2019-02-08  Eric Botcazou  <ebotcazou@adacore.com>
+
+       Backport from mainline
+       2018-06-11  Segher Boessenkool  <segher@kernel.crashing.org>
+
+       PR target/85755
+       * config/rs6000/rs6000.md (*movdi_internal32): Put constraint modifiers
+       on the correct operand.
+       (*movdi_internal64): Ditto.
+
 2019-02-06  Kelvin Nilsen  <kelvin@gcc.gnu.org>
 
        Backport from mainline.
index cfa96a4b4714c0f379a457ab656799d724f75b38..1e94214d0e6edd16016ee0153ad4a41634ba9795 100644 (file)
 
 (define_insn "*movdi_internal32"
   [(set (match_operand:DI 0 "rs6000_nonimmediate_operand"
-         "=Y,        r,         r,         ^m,        ^d,         ^d,
-          r,         ^wY,       $Z,        ^wb,       $wv,        ^wi,
+         "=Y,        r,         r,         m,         ^d,         ^d,
+          r,         wY,        Z,         ^wb,       $wv,        ^wi,
           *wo,       *wo,       *wv,       *wi,       *wi,        *wv,
           *wv")
 
        (match_operand:DI 1 "input_operand"
-          "r,        Y,         r,         d,         m,          d,
-           IJKnGHF,  wb,        wv,        wY,        Z,          wi,
-           Oj,       wM,        OjwM,      Oj,        wM,         wS,
-           wB"))]
+         "r,         Y,         r,         ^d,        m,          ^d,
+          IJKnGHF,   ^wb,       $wv,       wY,        Z,          ^wi,
+          Oj,        wM,        OjwM,      Oj,        wM,         wS,
+          wB"))]
 
   "! TARGET_POWERPC64
    && (gpc_reg_operand (operands[0], DImode)
 (define_insn "*movdi_internal64"
   [(set (match_operand:DI 0 "nonimmediate_operand"
                "=YZ,       r,         r,         r,         r,          r,
-                ^m,        ^d,        ^d,        ^wY,       $Z,         $wb,
+                m,         ^d,        ^d,        wY,        Z,          $wb,
                 $wv,       ^wi,       *wo,       *wo,       *wv,        *wi,
                 *wi,       *wv,       *wv,       r,         *h,         *h,
                 ?*r,       ?*wg,      ?*r,       ?*wj")
 
        (match_operand:DI 1 "input_operand"
-                "r,        YZ,        r,         I,         L,          nF,
-                 d,        m,         d,         wb,        wv,         wY,
-                 Z,        wi,        Oj,        wM,        OjwM,       Oj,
-                 wM,       wS,        wB,        *h,        r,          0,
-                 wg,       r,         wj,        r"))]
+               "r,         YZ,        r,         I,         L,          nF,
+                ^d,        m,         ^d,        ^wb,       $wv,        wY,
+                Z,         ^wi,       Oj,        wM,        OjwM,       Oj,
+                wM,        wS,        wB,        *h,        r,          0,
+                wg,        r,         wj,        r"))]
 
   "TARGET_POWERPC64
    && (gpc_reg_operand (operands[0], DImode)