diff options
author | Jason Merrill <jason@gcc.gnu.org> | 1998-02-05 20:18:06 -0500 |
---|---|---|
committer | Jason Merrill <jason@gcc.gnu.org> | 1998-02-05 20:18:06 -0500 |
commit | b57d92255a579b6404209f0025905cb712731473 (patch) | |
tree | 5d24951e6f65a794707a6a64e1c7b521375dd809 /gcc/final.c | |
parent | 259620a822f977a298dfa1a1e24f1d082b949038 (diff) | |
download | gcc-b57d92255a579b6404209f0025905cb712731473.zip gcc-b57d92255a579b6404209f0025905cb712731473.tar.gz gcc-b57d92255a579b6404209f0025905cb712731473.tar.bz2 |
dwarf2out.c: Add old_args_size.
* dwarf2out.c: Add old_args_size.
(dwarf2out_args_size): Use it.
(dwarf2out_begin_prologue): Initialize it.
(dwarf2out_stack_adjust): If !asynchronous_exceptions, save up
pushed args until we see a call.
* final.c (final_scan_insn): Hand CALL_INSNs off to the dwarf2 code
before outputting them.
* cplus-dem.c (demangle_template_template_parm): New function.
(demangle_template): Handle template template parameters.
From-SVN: r17685
Diffstat (limited to 'gcc/final.c')
-rw-r--r-- | gcc/final.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/gcc/final.c b/gcc/final.c index 24b6911..cf131c5 100644 --- a/gcc/final.c +++ b/gcc/final.c @@ -2174,6 +2174,12 @@ final_scan_insn (insn, file, optimize, prescan, nopeepholes) debug_insn = insn; +#if defined (DWARF2_UNWIND_INFO) && !defined (ACCUMULATE_OUTGOING_ARGS) + /* If we push arguments, we want to know where the calls are. */ + if (GET_CODE (insn) == CALL_INSN && dwarf2out_do_frame ()) + dwarf2out_frame_debug (insn); +#endif + /* If the proper template needs to be chosen by some C code, run that code and get the real template. */ @@ -2226,7 +2232,7 @@ final_scan_insn (insn, file, optimize, prescan, nopeepholes) #if !defined (ACCUMULATE_OUTGOING_ARGS) /* If we push arguments, we need to check all insns for stack adjustments. */ - if (dwarf2out_do_frame ()) + if (GET_CODE (insn) == INSN && dwarf2out_do_frame ()) dwarf2out_frame_debug (insn); #else #if defined (HAVE_prologue) |