diff options
author | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-08-02 20:39:24 +0000 |
---|---|---|
committer | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-08-02 20:39:24 +0000 |
commit | 90363d185752e6f509ea441173d2052d3f59f263 (patch) | |
tree | 41b57caed5f1d067c82e0bc45f8f59c9a998e888 /gcc/explow.c | |
parent | 309ac9786c514cb175eb20fa9a0f8e7a04a87aa5 (diff) | |
download | gcc-90363d185752e6f509ea441173d2052d3f59f263.tar.gz |
PR 23196
* explow.c (memory_address): Remove special-case for
virtual_stack_vars_rtx and virtual_incoming_args_rtx.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@102668 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/explow.c')
-rw-r--r-- | gcc/explow.c | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/gcc/explow.c b/gcc/explow.c index 23b124fbbb5..eea0e562289 100644 --- a/gcc/explow.c +++ b/gcc/explow.c @@ -477,16 +477,10 @@ memory_address (enum machine_mode mode, rtx x) win2: x = oldx; win: - if (flag_force_addr && ! cse_not_expected && !REG_P (x) - /* Don't copy an addr via a reg if it is one of our stack slots. */ - && ! (GET_CODE (x) == PLUS - && (XEXP (x, 0) == virtual_stack_vars_rtx - || XEXP (x, 0) == virtual_incoming_args_rtx))) + if (flag_force_addr && ! cse_not_expected && !REG_P (x)) { - if (general_operand (x, Pmode)) - x = force_reg (Pmode, x); - else - x = force_operand (x, NULL_RTX); + x = force_operand (x, NULL_RTX); + x = force_reg (Pmode, x); } } |