aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp/semantics.c
diff options
context:
space:
mode:
authorNathan Sidwell <nathan@codesourcery.com>2001-07-02 12:16:58 +0000
committerNathan Sidwell <nathan@gcc.gnu.org>2001-07-02 12:16:58 +0000
commit6be777481ea7fa281c38dc84a76674e80013603b (patch)
tree23c0745f9141013fbdd206b748a7c2c6fad106d4 /gcc/cp/semantics.c
parent3aa12a583f98074d6eaca377d9f3842df7c387ed (diff)
downloadgcc-6be777481ea7fa281c38dc84a76674e80013603b.zip
gcc-6be777481ea7fa281c38dc84a76674e80013603b.tar.gz
gcc-6be777481ea7fa281c38dc84a76674e80013603b.tar.bz2
c-common.h (TDI_inlined): New ast dump phase.
* c-common.h (TDI_inlined): New ast dump phase. (dump_flag_name): New function. * c-dump.c (dump_files): Add inlined phase. (dump_flag_name): Define. * doc/invoke.texi (-fdump-ast-inlined): Document. cp: * optimize.c (optimize_inline_calls): New function, broken out of ... (optimize_function): ... here. Call it. Don't inline if it is a thunk. (dump_function): Print name of dump flag causing this dump. * semantics.c (expand_body): Move thunk inline check to optimize_function. From-SVN: r43687
Diffstat (limited to 'gcc/cp/semantics.c')
-rw-r--r--gcc/cp/semantics.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/gcc/cp/semantics.c b/gcc/cp/semantics.c
index 0dc392a..050e1be 100644
--- a/gcc/cp/semantics.c
+++ b/gcc/cp/semantics.c
@@ -2408,13 +2408,8 @@ expand_body (fn)
timevar_push (TV_INTEGRATION);
- /* Optimize the body of the function before expanding it. We do not
- optimize thunks, as (1) the backend tries to optimize the call to
- the thunkee, (b) the tree based inliner breaks that optimization,
- (c) virtual functions are rarely inlineable, and (d)
- ASM_OUTPUT_MI_THUNK is there to DTRT anyway. */
- if (!DECL_THUNK_P (fn))
- optimize_function (fn);
+ /* Optimize the body of the function before expanding it. */
+ optimize_function (fn);
timevar_pop (TV_INTEGRATION);
timevar_push (TV_EXPAND);