diff options
author | Steve Ellcey <sje@cup.hp.com> | 2007-06-07 16:46:26 +0000 |
---|---|---|
committer | Steve Ellcey <sje@gcc.gnu.org> | 2007-06-07 16:46:26 +0000 |
commit | bb27eeda7dc859c9d1c9a69baea30f9cf273ec4a (patch) | |
tree | 1cb00a95176daf42e5091f63e76b07ed28ef06df /gcc/emit-rtl.c | |
parent | 1b0cfaa6a890d6cea3ce6a98a707219cac2aedd6 (diff) | |
download | gcc-bb27eeda7dc859c9d1c9a69baea30f9cf273ec4a.zip gcc-bb27eeda7dc859c9d1c9a69baea30f9cf273ec4a.tar.gz gcc-bb27eeda7dc859c9d1c9a69baea30f9cf273ec4a.tar.bz2 |
re PR target/31850 (gcc.c-torture/compile/limits-fnargs.c is slow at compiling for spu-elf)
PR target/31850
* rtl.h (push_to_sequence2): New.
* emit-rtl.c (push_to_sequence2): New.
* function.c (assign_parm_data_all): Add new fields.
(assign_parm_setup_block): Call push_to_sequence2 instead of
push_to_sequence.
(assign_parm_setup_reg): Ditto.
(assign_parm_setup_stack): Ditto.
(assign_parms_unsplit_complex): Ditto.
(assign_parms): Change field name.
From-SVN: r125532
Diffstat (limited to 'gcc/emit-rtl.c')
-rw-r--r-- | gcc/emit-rtl.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c index 17f8c2d..f5cea9a 100644 --- a/gcc/emit-rtl.c +++ b/gcc/emit-rtl.c @@ -4632,6 +4632,18 @@ push_to_sequence (rtx first) last_insn = last; } +/* Like push_to_sequence, but take the last insn as an argument to avoid + looping through the list. */ + +void +push_to_sequence2 (rtx first, rtx last) +{ + start_sequence (); + + first_insn = first; + last_insn = last; +} + /* Set up the outer-level insn chain as the current sequence, saving the previously current one. */ |