GCC Middle and Back End API Reference
|
#include <tree-core.h>
Data Fields | |
struct tree_base | base |
tree | type |
@verbatim
The following table lists the uses of each of the above flags and for which types of nodes they are defined.
addressable_flag:
TREE_ADDRESSABLE in VAR_DECL, PARM_DECL, RESULT_DECL, FUNCTION_DECL, LABEL_DECL SSA_NAME all types CONSTRUCTOR, IDENTIFIER_NODE STMT_EXPR CALL_EXPR_TAILCALL in CALL_EXPR CASE_LOW_SEEN in CASE_LABEL_EXPR PREDICT_EXPR_OUTCOME in PREDICT_EXPR
static_flag:
TREE_STATIC in VAR_DECL, FUNCTION_DECL CONSTRUCTOR TREE_NO_TRAMPOLINE in ADDR_EXPR BINFO_VIRTUAL_P in TREE_BINFO TREE_SYMBOL_REFERENCED in IDENTIFIER_NODE CLEANUP_EH_ONLY in TARGET_EXPR, WITH_CLEANUP_EXPR TRY_CATCH_IS_CLEANUP in TRY_CATCH_EXPR ASM_INPUT_P in ASM_EXPR TYPE_REF_CAN_ALIAS_ALL in POINTER_TYPE, REFERENCE_TYPE CASE_HIGH_SEEN in CASE_LABEL_EXPR ENUM_IS_SCOPED in ENUMERAL_TYPE TRANSACTION_EXPR_OUTER in TRANSACTION_EXPR
public_flag:
TREE_OVERFLOW in INTEGER_CST, REAL_CST, COMPLEX_CST, VECTOR_CST TREE_PUBLIC in VAR_DECL, FUNCTION_DECL IDENTIFIER_NODE ASM_VOLATILE_P in ASM_EXPR CALL_EXPR_VA_ARG_PACK in CALL_EXPR TYPE_CACHED_VALUES_P in all types SAVE_EXPR_RESOLVED_P in SAVE_EXPR OMP_CLAUSE_LASTPRIVATE_FIRSTPRIVATE in OMP_CLAUSE_LASTPRIVATE OMP_CLAUSE_PRIVATE_DEBUG in OMP_CLAUSE_PRIVATE OMP_CLAUSE_LINEAR_NO_COPYIN in OMP_CLAUSE_LINEAR OMP_CLAUSE_MAP_ZERO_BIAS_ARRAY_SECTION in OMP_CLAUSE_MAP OMP_CLAUSE_REDUCTION_OMP_ORIG_REF in OMP_CLAUSE_REDUCTION TRANSACTION_EXPR_RELAXED in TRANSACTION_EXPR
private_flag:
TREE_PRIVATE in all decls CALL_EXPR_RETURN_SLOT_OPT in CALL_EXPR OMP_SECTION_LAST in OMP_SECTION OMP_PARALLEL_COMBINED in OMP_PARALLEL OMP_ATOMIC_SEQ_CST in OMP_ATOMIC* OMP_CLAUSE_PRIVATE_OUTER_REF in OMP_CLAUSE_PRIVATE OMP_CLAUSE_LINEAR_NO_COPYOUT in OMP_CLAUSE_LINEAR TYPE_REF_IS_RVALUE in REFERENCE_TYPE ENUM_IS_OPAQUE in ENUMERAL_TYPE
protected_flag:
TREE_PROTECTED in BLOCK all decls CALL_FROM_THUNK_P and CALL_ALLOCA_FOR_VAR_P in CALL_EXPR
side_effects_flag:
TREE_SIDE_EFFECTS in all expressions all decls all constants FORCED_LABEL in LABEL_DECL
volatile_flag:
TREE_THIS_VOLATILE in all expressions all decls TYPE_VOLATILE in all types
readonly_flag:
TREE_READONLY in all expressions all decls TYPE_READONLY in all types
constant_flag:
TREE_CONSTANT in all expressions all decls all constants TYPE_SIZES_GIMPLIFIED in all types
unsigned_flag:
TYPE_UNSIGNED in all types DECL_UNSIGNED in all decls
asm_written_flag:
TREE_ASM_WRITTEN in VAR_DECL, FUNCTION_DECL, TYPE_DECL RECORD_TYPE, UNION_TYPE, QUAL_UNION_TYPE BLOCK, STRING_CST SSA_NAME_OCCURS_IN_ABNORMAL_PHI in SSA_NAME
used_flag:
TREE_USED in all expressions all decls IDENTIFIER_NODE
nothrow_flag:
TREE_NOTHROW in CALL_EXPR FUNCTION_DECL TYPE_ALIGN_OK in all types TREE_THIS_NOTRAP in INDIRECT_REF, MEM_REF, TARGET_MEM_REF, ARRAY_REF, ARRAY_RANGE_REF SSA_NAME_IN_FREELIST in SSA_NAME
deprecated_flag:
TREE_DEPRECATED in all decls all types IDENTIFIER_TRANSPARENT_ALIAS in IDENTIFIER_NODE
visited:
TREE_VISITED in all trees (used liberally by many passes)
saturating_flag:
TYPE_SATURATING in all types VAR_DECL_IS_VIRTUAL_OPERAND in VAR_DECL
nowarning_flag:
TREE_NO_WARNING in all expressions all decls TYPE_ARTIFICIAL in all types
default_def_flag:
TYPE_VECTOR_OPAQUE in VECTOR_TYPE SSA_NAME_IS_DEFAULT_DEF in SSA_NAME DECL_NONLOCAL_FRAME in VAR_DECL TYPE_FINAL_P in RECORD_TYPE, UNION_TYPE and QUAL_UNION_TYPE
struct tree_base tree_typed::base |
tree tree_typed::type |