diff options
author | hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-12-03 13:16:25 +0000 |
---|---|---|
committer | hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-12-03 13:16:25 +0000 |
commit | 4468904c4f4b9b30dfabe7b0af7affdd4becd1d2 (patch) | |
tree | 088498f1a4c071110d59c0036a46b309301a8be7 /gcc | |
parent | 9d8847676688093d6513263dfba3d51994bfe404 (diff) | |
download | gcc-4468904c4f4b9b30dfabe7b0af7affdd4becd1d2.tar.gz |
Revert r218266
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218312 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/ira-costs.c | 5 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/aarch64/remat1.c | 20 |
4 files changed, 15 insertions, 22 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5e3920e0d9a..2e9d9c6c99a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -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 diff --git a/gcc/ira-costs.c b/gcc/ira-costs.c index 72c00cccdd2..2dabead6269 100644 --- a/gcc/ira-costs.c +++ b/gcc/ira-costs.c @@ -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)); diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 61427fc8ef8..a4ec974c26a 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -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 index 999577e48be..00000000000 --- a/gcc/testsuite/gcc.target/aarch64/remat1.c +++ /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 } } */ - |