GCC Middle and Back End API Reference
tree_function_decl Struct Reference

#include <tree-core.h>

Collaboration diagram for tree_function_decl:

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

Detailed Description

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.   

Field Documentation

◆ arguments

tree tree_function_decl::arguments

◆ built_in_class

◆ common

struct tree_decl_non_common tree_function_decl::common

◆ decl_type

enum function_decl_type tree_function_decl::decl_type

◆ declared_inline_flag

unsigned tree_function_decl::declared_inline_flag

◆ disregard_inline_limits

unsigned tree_function_decl::disregard_inline_limits

◆ f

struct function* tree_function_decl::f

◆ function_code

◆ function_specific_optimization

tree tree_function_decl::function_specific_optimization

◆ function_specific_target

tree tree_function_decl::function_specific_target

◆ has_debug_args_flag

unsigned tree_function_decl::has_debug_args_flag

◆ looping_const_or_pure_flag

unsigned tree_function_decl::looping_const_or_pure_flag

◆ malloc_flag

unsigned tree_function_decl::malloc_flag

◆ no_inline_warning_flag

unsigned tree_function_decl::no_inline_warning_flag

◆ no_instrument_function_entry_exit

unsigned tree_function_decl::no_instrument_function_entry_exit

◆ no_limit_stack

unsigned tree_function_decl::no_limit_stack

◆ novops_flag

unsigned tree_function_decl::novops_flag

◆ personality

tree tree_function_decl::personality

◆ possibly_inlined

unsigned tree_function_decl::possibly_inlined

◆ pure_flag

unsigned tree_function_decl::pure_flag

◆ replaceable_operator

unsigned tree_function_decl::replaceable_operator

◆ returns_twice_flag

unsigned tree_function_decl::returns_twice_flag

◆ saved_tree

tree tree_function_decl::saved_tree

◆ static_ctor_flag

unsigned tree_function_decl::static_ctor_flag

◆ static_dtor_flag

unsigned tree_function_decl::static_dtor_flag

◆ uninlinable

unsigned tree_function_decl::uninlinable

◆ versioned_function

unsigned tree_function_decl::versioned_function

◆ vindex

tree tree_function_decl::vindex

The documentation for this struct was generated from the following file: