diff options
author | Alexandre Oliva <aoliva@redhat.com> | 2015-08-19 17:00:32 +0000 |
---|---|---|
committer | Alexandre Oliva <aoliva@gcc.gnu.org> | 2015-08-19 17:00:32 +0000 |
commit | c24f5688adae2f885279e8fdce74a030e6944b7b (patch) | |
tree | 31f9d298632e1c8a23bdf19a980e7ed54c790474 /gcc/expr.c | |
parent | 8dc89e4d7ed340095fa0d27de5de584156b38c0b (diff) | |
download | gcc-c24f5688adae2f885279e8fdce74a030e6944b7b.zip gcc-c24f5688adae2f885279e8fdce74a030e6944b7b.tar.gz gcc-c24f5688adae2f885279e8fdce74a030e6944b7b.tar.bz2 |
[PR64164] fix regressions reported on m68k and armeb
Defer stack slot address assignment for all parms that can't live in
pseudos, and accept pseudos assignments in assign_param_setup_block.
for gcc/ChangeLog
PR rtl-optimization/64164
* cfgexpand.c (parm_maybe_byref_p): Renamed to...
(parm_in_stack_slot_p): ... this. Disregard mode, what
matters is whether the parm will live in a pseudo or a stack
slot.
(expand_one_ssa_partition): Deal with params without a default
def. Disregard mode.
* cfgexpand.h: Renamed function declaration.
* tree-ssa-coalesce.c: Adjust.
* function.c (split_complex_args): Allocate stack slot for
unassigned parms before splitting.
(parm_in_unassigned_mem_p): New. Use it instead of
parm_maybe_byref_p throughout this file.
(assign_parm_setup_block): Use it. Accept pseudos in the
expand-assigned rtl.
(assign_parm_setup_reg): Drop BLKmode requirement.
(assign_parm_setup_stack): Allocate and fill in the address of
unassigned MEM parms.
From-SVN: r227015
Diffstat (limited to 'gcc/expr.c')
0 files changed, 0 insertions, 0 deletions