GCC Middle and Back End API Reference
lang_hooks_for_types Struct Reference

#include <langhooks.h>

Data Fields

tree(*) make_type (enum tree_code)
tree(*) simulate_enum_decl (location_t, const char *, vec< string_int_pair > *)
tree(*) simulate_record_decl (location_t loc, const char *name, array_slice< const tree > fields)
enum classify_record(*) classify_record (tree)
tree(*) type_for_mode (machine_mode, int)
tree(*) type_for_size (unsigned, int)
bool(*) generic_p (const_tree)
tree(*) get_argument_pack_elems (const_tree)
tree(*) type_promotes_to (tree)
void(*) register_builtin_type (tree, const char *)
void(*) incomplete_type_error (location_t loc, const_tree value, const_tree type)
tree(*) max_size (const_tree)
void(*) omp_firstprivatize_type_sizes (struct gimplify_omp_ctx *, tree)
bool(*) type_hash_eq (const_tree, const_tree)
tree(*) copy_lang_qualifiers (const_tree, const_tree)
bool(*) get_array_descr_info (const_tree, struct array_descr_info *)
void(*) get_subrange_bounds (const_tree, tree *, tree *)
tree(*) get_type_bias (const_tree)
tree(*) descriptive_type (const_tree)
tree(*) reconstruct_complex_type (tree, tree)
tree(*) enum_underlying_base_type (const_tree)
tree(*) get_debug_type (const_tree)
bool(*) get_fixed_point_type_info (const_tree, struct fixed_point_type_info *)
int(*) type_dwarf_attribute (const_tree, int)
tree(*) unit_size_without_reusable_padding (tree)
tree(*) classtype_as_base (const_tree)

Detailed Description

Hooks related to types.   

Field Documentation

◆ classify_record

enum classify_record(*) lang_hooks_for_types::classify_record(tree)

◆ classtype_as_base

tree(*) lang_hooks_for_types::classtype_as_base(const_tree)

Referenced by clear_padding_type().

◆ copy_lang_qualifiers

tree(*) lang_hooks_for_types::copy_lang_qualifiers(const_tree, const_tree)

◆ descriptive_type

tree(*) lang_hooks_for_types::descriptive_type(const_tree)

◆ enum_underlying_base_type

tree(*) lang_hooks_for_types::enum_underlying_base_type(const_tree)

◆ generic_p

bool(*) lang_hooks_for_types::generic_p(const_tree)

◆ get_argument_pack_elems

tree(*) lang_hooks_for_types::get_argument_pack_elems(const_tree)

Referenced by gen_generic_params_dies().

◆ get_array_descr_info

bool(*) lang_hooks_for_types::get_array_descr_info(const_tree, struct array_descr_info *)

Referenced by modified_type_die().

◆ get_debug_type

tree(*) lang_hooks_for_types::get_debug_type(const_tree)

Referenced by modified_type_die().

◆ get_fixed_point_type_info

bool(*) lang_hooks_for_types::get_fixed_point_type_info(const_tree, struct fixed_point_type_info *)

Referenced by base_type_die().

◆ get_subrange_bounds

void(*) lang_hooks_for_types::get_subrange_bounds(const_tree, tree *, tree *)

◆ get_type_bias

tree(*) lang_hooks_for_types::get_type_bias(const_tree)

Referenced by base_type_die(), and modified_type_die().

◆ incomplete_type_error

void(*) lang_hooks_for_types::incomplete_type_error(location_t loc, const_tree value, const_tree type)

Referenced by size_in_bytes_loc().

◆ make_type

◆ max_size

tree(*) lang_hooks_for_types::max_size(const_tree)

Referenced by max_int_size_in_bytes().

◆ omp_firstprivatize_type_sizes

void(*) lang_hooks_for_types::omp_firstprivatize_type_sizes(struct gimplify_omp_ctx *, tree)

◆ reconstruct_complex_type

tree(*) lang_hooks_for_types::reconstruct_complex_type(tree, tree)

◆ register_builtin_type

void(*) lang_hooks_for_types::register_builtin_type(tree, const char *)

◆ simulate_enum_decl

tree(*) lang_hooks_for_types::simulate_enum_decl(location_t, const char *, vec< string_int_pair > *)

◆ simulate_record_decl

tree(*) lang_hooks_for_types::simulate_record_decl(location_t loc, const char *name, array_slice< const tree > fields)

◆ type_dwarf_attribute

int(*) lang_hooks_for_types::type_dwarf_attribute(const_tree, int)

◆ type_for_mode

tree(*) lang_hooks_for_types::type_for_mode(machine_mode, int)

Referenced by add_iv_candidate_for_doloop(), add_iv_candidate_for_use(), tree_switch_conversion::switch_conversion::array_value_type(), asan_expand_poison_ifn(), base_type_for_mode(), tree_switch_conversion::switch_conversion::build_arrays(), build_common_builtin_nodes(), build_split_load(), build_word_mode_vector_type(), compute_doloop_base_on_mode(), convert_to_integer_1(), default_emutls_var_fields(), do_jump(), do_store_flag(), tree_switch_conversion::bit_test_cluster::emit(), emit_library_call_value_1(), emit_push_insn(), emutls_common_1(), expand_doubleword_mod(), expand_expr_real_1(), expand_single_bit_test(), expand_vector_parallel(), find_bitfield_repr_type(), finish_bitfield_representative(), get_gcov_type(), get_gcov_unsigned_t(), get_nl_goto_field(), get_related_vectype_for_scalar_type(), get_stack_local_alignment(), gimple_fold_builtin_memset(), gimplify_scalar_mode_aggregate_compare(), init_eh(), initialize_sanitizer_builtins(), make_debug_expr_from_rtl(), make_range_step(), make_tree(), match_spaceship(), omp_clause_aligned_alignment(), optimize_bit_field_compare(), optimize_range_tests_to_bit_test(), rt_bb_visited::rt_bb_visited(), set_stack_check_libfunc(), simd_clone_adjust_argument_types(), store_constructor(), store_expr(), supportable_narrowing_operation(), supportable_widening_operation(), try_casesi(), vect_build_one_gather_load_call(), vect_build_one_scatter_store_call(), vect_get_loop_mask(), vect_set_loop_condition_partial_vectors_avx512(), and vectorizable_simd_clone_call().

◆ type_for_size

◆ type_hash_eq

bool(*) lang_hooks_for_types::type_hash_eq(const_tree, const_tree)

◆ type_promotes_to

tree(*) lang_hooks_for_types::type_promotes_to(tree)

Referenced by gimplify_va_arg_expr().

◆ unit_size_without_reusable_padding

tree(*) lang_hooks_for_types::unit_size_without_reusable_padding(tree)

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