|
GCC Middle and Back End API Reference
|
#include <tree-core.h>

Data Fields | |
| struct tree_decl_non_common | common |
| struct function * | f |
| tree | arguments |
| tree | personality |
| tree | function_specific_target |
| tree | function_specific_optimization |
| tree | saved_tree |
| tree | vindex |
| unsigned int | function_code |
| enum built_in_class | built_in_class: 2 |
| unsigned | static_ctor_flag: 1 |
| unsigned | static_dtor_flag: 1 |
| unsigned | uninlinable: 1 |
| unsigned | possibly_inlined: 1 |
| unsigned | novops_flag: 1 |
| unsigned | returns_twice_flag: 1 |
| unsigned | malloc_flag: 1 |
| unsigned | declared_inline_flag: 1 |
| unsigned | no_inline_warning_flag: 1 |
| unsigned | no_instrument_function_entry_exit: 1 |
| unsigned | no_limit_stack: 1 |
| unsigned | disregard_inline_limits: 1 |
| unsigned | pure_flag: 1 |
| unsigned | looping_const_or_pure_flag: 1 |
| enum function_decl_type | decl_type: 2 |
| unsigned | has_debug_args_flag: 1 |
| unsigned | versioned_function: 1 |
| unsigned | replaceable_operator: 1 |
FUNCTION_DECL inherits from DECL_NON_COMMON because of the use of the arguments/result/saved_tree fields by front ends. It was either inherit FUNCTION_DECL from non_common, or inherit non_common from FUNCTION_DECL, which seemed a bit strange.
| tree tree_function_decl::arguments |
| enum built_in_class tree_function_decl::built_in_class |
| struct tree_decl_non_common tree_function_decl::common |
| enum function_decl_type tree_function_decl::decl_type |
| unsigned tree_function_decl::declared_inline_flag |
| unsigned tree_function_decl::disregard_inline_limits |
| struct function* tree_function_decl::f |
| unsigned int tree_function_decl::function_code |
| tree tree_function_decl::function_specific_optimization |
| tree tree_function_decl::function_specific_target |
| unsigned tree_function_decl::has_debug_args_flag |
| unsigned tree_function_decl::looping_const_or_pure_flag |
| unsigned tree_function_decl::malloc_flag |
| unsigned tree_function_decl::no_inline_warning_flag |
| unsigned tree_function_decl::no_instrument_function_entry_exit |
| unsigned tree_function_decl::no_limit_stack |
| unsigned tree_function_decl::novops_flag |
| tree tree_function_decl::personality |
| unsigned tree_function_decl::possibly_inlined |
| unsigned tree_function_decl::pure_flag |
| unsigned tree_function_decl::replaceable_operator |
| unsigned tree_function_decl::returns_twice_flag |
| tree tree_function_decl::saved_tree |
| unsigned tree_function_decl::static_ctor_flag |
| unsigned tree_function_decl::static_dtor_flag |
| unsigned tree_function_decl::uninlinable |
| unsigned tree_function_decl::versioned_function |
| tree tree_function_decl::vindex |