Temporarily revert previous
From-SVN: r191306
This commit is contained in:
parent
57132d23fa
commit
cde43acdba
2 changed files with 2 additions and 13 deletions
|
@ -1,8 +1,3 @@
|
|||
2012-09-14 Richard Earnshaw <rearnsha@arm.com>
|
||||
|
||||
* reload.c (find_dummy_reload): Don't use OUT as a reload reg
|
||||
for IN if it overlaps a fixed register.
|
||||
|
||||
2012-09-14 Eric Botcazou <ebotcazou@adacore.com>
|
||||
|
||||
PR rtl-optimization/44194
|
||||
|
|
10
gcc/reload.c
10
gcc/reload.c
|
@ -2036,12 +2036,7 @@ find_dummy_reload (rtx real_in, rtx real_out, rtx *inloc, rtx *outloc,
|
|||
However, we only ignore IN in its role as this reload.
|
||||
If the insn uses IN elsewhere and it contains OUT,
|
||||
that counts. We can't be sure it's the "same" operand
|
||||
so it might not go through this reload.
|
||||
|
||||
We also need to avoid using OUT if it, or part of it, is a
|
||||
fixed register. Modifying such registers, even transiently,
|
||||
may have undefined effects on the machine, such as modifying
|
||||
the stack pointer. */
|
||||
so it might not go through this reload. */
|
||||
saved_rtx = *inloc;
|
||||
*inloc = const0_rtx;
|
||||
|
||||
|
@ -2054,8 +2049,7 @@ find_dummy_reload (rtx real_in, rtx real_out, rtx *inloc, rtx *outloc,
|
|||
|
||||
for (i = 0; i < nwords; i++)
|
||||
if (! TEST_HARD_REG_BIT (reg_class_contents[(int) rclass],
|
||||
regno + i)
|
||||
|| fixed_regs[regno + i])
|
||||
regno + i))
|
||||
break;
|
||||
|
||||
if (i == nwords)
|
||||
|
|
Loading…
Add table
Reference in a new issue