Revert r218266
authorH.J. Lu <hongjiu.lu@intel.com>
Wed, 3 Dec 2014 13:16:25 +0000 (13:16 +0000)
committerH.J. Lu <hjl@gcc.gnu.org>
Wed, 3 Dec 2014 13:16:25 +0000 (05:16 -0800)
gcc/

PR rtl-optimization/64151
PR rtl-optimization/64156
* ira-costs.c (scan_one_insn): Revert r218266.

gcc/testsuite/

PR rtl-optimization/64151
PR rtl-optimization/64156
* gcc.target/aarch64/remat1.c: Removed.  Revert r218267.

From-SVN: r218312

gcc/ChangeLog
gcc/ira-costs.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/aarch64/remat1.c [deleted file]

index 5e3920e0d9a33a5437c8ccc5be544509c8c48ae1..2e9d9c6c99a1403f6b6eea9a06827dc7e09d4258 100644 (file)
@@ -1,3 +1,9 @@
+2014-12-03  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR rtl-optimization/64151
+       PR rtl-optimization/64156
+       * ira-costs.c (scan_one_insn): Revert r218266.
+
 2014-12-03  Richard Biener  <rguenther@suse.de>
 
        * builtins.c (fold_builtin_fpclassify): Change to take
index 72c00cccdd2ff8cec4066f96044bde5ca32c641f..2dabead6269c2821c2b4fdcb93a4b26e9f64be93 100644 (file)
@@ -1462,11 +1462,12 @@ scan_one_insn (rtx_insn *insn)
       && ((MEM_P (XEXP (note, 0))
           && !side_effects_p (SET_SRC (set)))
          || (CONSTANT_P (XEXP (note, 0))
-             && (! flag_pic || LEGITIMATE_PIC_OPERAND_P (XEXP (note, 0)))
+             && targetm.legitimate_constant_p (GET_MODE (SET_DEST (set)),
+                                               XEXP (note, 0))
              && REG_N_SETS (REGNO (SET_DEST (set))) == 1))
       && general_operand (SET_SRC (set), GET_MODE (SET_SRC (set))))
     {
-      enum reg_class cl = ALL_REGS;
+      enum reg_class cl = GENERAL_REGS;
       rtx reg = SET_DEST (set);
       int num = COST_INDEX (REGNO (reg));
 
index 61427fc8ef870f09db15ce1a1fb80a6dc83eb51f..a4ec974c26a757dc19fbe83cd2f2ef34df36dd8b 100644 (file)
@@ -1,3 +1,9 @@
+2014-12-03  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR rtl-optimization/64151
+       PR rtl-optimization/64156
+       * gcc.target/aarch64/remat1.c: Removed.  Revert r218267.
+
 2014-12-03  Tom de Vries  <tom@codesourcery.com>
 
        PR rtl-optimization/63957
diff --git a/gcc/testsuite/gcc.target/aarch64/remat1.c b/gcc/testsuite/gcc.target/aarch64/remat1.c
deleted file mode 100644 (file)
index 999577e..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-/* { dg-do compile } */
-/* { dg-options "-O2 -fomit-frame-pointer -fcaller-saves -ffixed-d8 -ffixed-d9 -ffixed-d10 -ffixed-d11 -ffixed-d12 -ffixed-d13 -ffixed-d14 -ffixed-d15" } */
-
-/* Under high register pressure FP immediates should be rematerialized
-   as literal loads rather than being caller-saved to the stack.  */
-
-void
-g (void);
-
-float
-f (float x)
-{
-  x += 3.1f;
-  g ();
-  x *= 3.1f;
-  return x;
-}
-
-/* { dg-final { scan-assembler-times "ldr\ts\[0-9]+, .LC0" 2 } } */
-