diff options
author | Wilco Dijkstra <wdijkstr@arm.com> | 2014-12-02 11:55:08 +0000 |
---|---|---|
committer | Jiong Wang <jiwang@gcc.gnu.org> | 2014-12-02 11:55:08 +0000 |
commit | 048f927a758755c84193759081d4283575280ed1 (patch) | |
tree | b081f702ae7eab1beff5c64079da264f47300566 /gcc | |
parent | 47f4756ed1a23d93e586ad82e50e759fa4c24b6b (diff) | |
download | gcc-048f927a758755c84193759081d4283575280ed1.zip gcc-048f927a758755c84193759081d4283575280ed1.tar.gz gcc-048f927a758755c84193759081d4283575280ed1.tar.bz2 |
[PATCH] Improve spillcost of literal pool loads
2014-12-02 Wilco Dijkstra <wdijkstr@arm.com>
gcc/
ira-costs.c (scan_one_insn): Improve spill cost adjustment.
gcc/testsuite
gcc.target/aarch64/remat1.c: New testcase.
From-SVN: r218266
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/ira-costs.c | 5 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 4 |
3 files changed, 10 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 91bde4f..09a5416 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2014-12-02 Wilco Dijkstra <wilco.dijkstra@arm.com> + + * ira-costs.c (scan_one_insn): Improve spill cost adjustment. + 2014-12-02 Martin Jambor <mjambor@suse.cz> PR ipa/63814 diff --git a/gcc/ira-costs.c b/gcc/ira-costs.c index 2dabead..72c00cc 100644 --- a/gcc/ira-costs.c +++ b/gcc/ira-costs.c @@ -1462,12 +1462,11 @@ scan_one_insn (rtx_insn *insn) && ((MEM_P (XEXP (note, 0)) && !side_effects_p (SET_SRC (set))) || (CONSTANT_P (XEXP (note, 0)) - && targetm.legitimate_constant_p (GET_MODE (SET_DEST (set)), - XEXP (note, 0)) + && (! flag_pic || LEGITIMATE_PIC_OPERAND_P (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 = GENERAL_REGS; + enum reg_class cl = ALL_REGS; rtx reg = SET_DEST (set); int num = COST_INDEX (REGNO (reg)); diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index dff9d02..a17cc6c 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2014-12-02 Wilco Dijkstra <wilco.dijkstra@arm.com> + + * gcc.target/aarch64/remat1.c: New testcase. + 2014-12-01 Oleg Endo <olegendo@gcc.gnu.org> PR rtl-optimization/59278 |