diff options
author | Jan Hubicka <jh@suse.cz> | 2005-07-29 22:22:41 +0000 |
---|---|---|
committer | Jan Hubicka <jh@suse.cz> | 2005-07-29 22:22:41 +0000 |
commit | 7ad2b38c6b5c9eebea7b6ec103bda5111aba54da (patch) | |
tree | 7422c6f520abc7c3130ef5743f9e08959e3f3236 /gcc/expr.c | |
parent | 242ab3094a7b8666881ac049a1faf555aa32c5d7 (diff) |
* expr.c (expand_expr_real_1): Do not load mem targets into register.
* i386.c (ix86_fixup_binary_operands): Likewise.
(ix86_expand_unary_operator): Likewise.
(ix86_expand_fp_absneg_operator): Likewise.
* optabs.c (expand_vec_cond_expr): Validate dest.
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@102570 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/expr.c')
-rw-r--r-- | gcc/expr.c | 12 |
1 files changed, 0 insertions, 12 deletions
diff --git a/gcc/expr.c b/gcc/expr.c index c263ebf95e8..472e10a1579 100644 --- a/gcc/expr.c +++ b/gcc/expr.c @@ -6578,18 +6578,6 @@ expand_expr_real_1 (tree exp, rtx target, enum machine_mode tmode, target = 0; } - /* If will do cse, generate all results into pseudo registers - since 1) that allows cse to find more things - and 2) otherwise cse could produce an insn the machine - cannot support. An exception is a CONSTRUCTOR into a multi-word - MEM: that's much more likely to be most efficient into the MEM. - Another is a CALL_EXPR which must return in memory. */ - - if (! cse_not_expected && mode != BLKmode && target - && (!REG_P (target) || REGNO (target) < FIRST_PSEUDO_REGISTER) - && ! (code == CONSTRUCTOR && GET_MODE_SIZE (mode) > UNITS_PER_WORD) - && ! (code == CALL_EXPR && aggregate_value_p (exp, exp))) - target = 0; switch (code) { |