mirror of
git://gcc.gnu.org/git/gcc.git
synced 2024-12-30 16:15:35 +08:00
* function.c (purge_addressof_1): Postpone insn in fewer cases.
From-SVN: r66286
This commit is contained in:
parent
ad03daf005
commit
b2a7fa89ee
@ -1,3 +1,7 @@
|
||||
2003-04-30 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
|
||||
|
||||
* function.c (purge_addressof_1): Postpone insn in fewer cases.
|
||||
|
||||
2003-04-29 Geoffrey Keating <geoffk@apple.com>
|
||||
|
||||
* config/rs6000/host-darwin.c (segv_handler): When -dH is used,
|
||||
|
@ -3075,13 +3075,6 @@ purge_addressof_1 (loc, insn, force, store, may_postpone, ht)
|
||||
{
|
||||
rtx sub = XEXP (XEXP (x, 0), 0);
|
||||
|
||||
if (may_postpone)
|
||||
{
|
||||
if (!postponed_insns || XEXP (postponed_insns, 0) != insn)
|
||||
postponed_insns = alloc_INSN_LIST (insn, postponed_insns);
|
||||
return true;
|
||||
}
|
||||
|
||||
if (GET_CODE (sub) == MEM)
|
||||
sub = adjust_address_nv (sub, GET_MODE (x), 0);
|
||||
else if (GET_CODE (sub) == REG
|
||||
@ -3091,6 +3084,15 @@ purge_addressof_1 (loc, insn, force, store, may_postpone, ht)
|
||||
{
|
||||
int size_x, size_sub;
|
||||
|
||||
if (may_postpone)
|
||||
{
|
||||
/* Postpone for now, so that we do not emit bitfield arithmetics
|
||||
unless there is some benefit from it. */
|
||||
if (!postponed_insns || XEXP (postponed_insns, 0) != insn)
|
||||
postponed_insns = alloc_INSN_LIST (insn, postponed_insns);
|
||||
return true;
|
||||
}
|
||||
|
||||
if (!insn)
|
||||
{
|
||||
/* When processing REG_NOTES look at the list of
|
||||
|
Loading…
Reference in New Issue
Block a user