diff options
author | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-08-29 23:21:13 +0000 |
---|---|---|
committer | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-08-29 23:21:13 +0000 |
commit | 90e3d9ba7f0ad61229fc0bc88fa8683064a55bb3 (patch) | |
tree | d3ecf1a361ca516453ed6172c096bc2f280d5875 /gcc/langhooks-def.h | |
parent | 0eb004033027f53a641f56c869669cee5656d892 (diff) | |
download | gcc-90e3d9ba7f0ad61229fc0bc88fa8683064a55bb3.tar.gz |
gcc/
* tree-optimize.c: New file.
* Makefile.in (OBJS-archive): Add tree-optimize.o.
(tree-optimize.o): New.
* c-decl.c (store_parm_decls): Use allocate_struct_function.
(finish_function): Don't free_after_parsing or free_after_compilation.
(set_save_expr_context): Move to tree-optimize.c.
(c_expand_body_1): Use tree_rest_of_compilation.
* c-lang.c (LANG_HOOKS_RTL_EXPAND_STMT): New.
* objc/objc-lang.c (LANG_HOOKS_RTL_EXPAND_STMT): New.
* c-objc-common.c (expand_deferred_fns): Don't emit unused inlines;
iterate until closure.
* langhooks-def.h (LANG_HOOKS_RTL_EXPAND_START,
LANG_HOOKS_RTL_EXPAND_STMT, LANG_HOOKS_RTL_EXPAND_END): New.
(LANG_HOOKS_RTL_EXPAND_INITIALIZER): New.
* langhooks.h (struct lang_hooks_for_rtl_expansion): New.
* toplev.h (tree_rest_of_compilation): Declare it.
gcc/cp/
* cp-lang.c (LANG_HOOKS_RTL_EXPAND_START): New.
(LANG_HOOKS_RTL_EXPAND_STMT): New.
* cp-tree.h (cxx_expand_function_start): Declare.
* decl.c (start_function): Use allocate_struct_function.
Move stmts_are_full_exprs_p assertion from expand_body.
Do not free_after_parsing or free_after_compilation.
(cxx_push_function_context): Move code to set struct function
data from genrtl_start_function.
* optimize.c (optimize_function): Don't inc/dec function_depth.
* semantics.c (expand_body): Use tree_rest_of_compilation.
(cxx_expand_function_start): Rename from genrtl_start_function,
omit bits done by tree_rest_of_compilation.
(genrtl_finish_function): Remove.
(clear_decl_rtl): Move to ../tree-optimize.c.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@70933 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/langhooks-def.h')
-rw-r--r-- | gcc/langhooks-def.h | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/gcc/langhooks-def.h b/gcc/langhooks-def.h index 56c24c79739..ee30749f536 100644 --- a/gcc/langhooks-def.h +++ b/gcc/langhooks-def.h @@ -123,6 +123,10 @@ extern void lhd_initialize_diagnostics (struct diagnostic_context *); #define LANG_HOOKS_FUNCTION_ENTER_NESTED lhd_do_nothing_f #define LANG_HOOKS_FUNCTION_LEAVE_NESTED lhd_do_nothing_f +#define LANG_HOOKS_RTL_EXPAND_START lhd_do_nothing +#define LANG_HOOKS_RTL_EXPAND_STMT (void *) abort +#define LANG_HOOKS_RTL_EXPAND_END lhd_do_nothing + /* Attribute hooks. */ #define LANG_HOOKS_ATTRIBUTE_TABLE NULL #define LANG_HOOKS_COMMON_ATTRIBUTE_TABLE NULL @@ -186,6 +190,12 @@ extern void lhd_initialize_diagnostics (struct diagnostic_context *); LANG_HOOKS_FUNCTION_LEAVE_NESTED \ } +#define LANG_HOOKS_RTL_EXPAND_INITIALIZER { \ + LANG_HOOKS_RTL_EXPAND_START, \ + LANG_HOOKS_RTL_EXPAND_STMT, \ + LANG_HOOKS_RTL_EXPAND_END \ +} + /* Tree dump hooks. */ extern bool lhd_tree_dump_dump_tree (void *, tree); extern int lhd_tree_dump_type_quals (tree); @@ -289,7 +299,8 @@ extern int lhd_tree_dump_type_quals (tree); LANG_HOOKS_CALLGRAPH_INITIALIZER, \ LANG_HOOKS_TREE_DUMP_INITIALIZER, \ LANG_HOOKS_DECLS, \ - LANG_HOOKS_FOR_TYPES_INITIALIZER \ + LANG_HOOKS_FOR_TYPES_INITIALIZER, \ + LANG_HOOKS_RTL_EXPAND_INITIALIZER \ } #endif /* GCC_LANG_HOOKS_DEF_H */ |