GCC Middle and Back End API Reference
targhooks.h
Go to the documentation of this file.
1/* Default target hook functions.
2 Copyright (C) 2003-2025 Free Software Foundation, Inc.
3
4This file is part of GCC.
5
6GCC is free software; you can redistribute it and/or modify it under
7the terms of the GNU General Public License as published by the Free
8Software Foundation; either version 3, or (at your option) any later
9version.
10
11GCC is distributed in the hope that it will be useful, but WITHOUT ANY
12WARRANTY; without even the implied warranty of MERCHANTABILITY or
13FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14for more details.
15
16You should have received a copy of the GNU General Public License
17along with GCC; see the file COPYING3. If not see
18<http://www.gnu.org/licenses/>. */
19
20#ifndef GCC_TARGHOOKS_H
21#define GCC_TARGHOOKS_H
22
23extern bool default_legitimate_address_p (machine_mode, rtx, bool, code_helper);
24
25extern void default_external_libcall (rtx);
26extern rtx default_legitimize_address (rtx, rtx, machine_mode);
28 poly_int64, machine_mode);
30
31extern int default_unspec_may_trap_p (const_rtx, unsigned);
32extern machine_mode default_promote_function_mode (const_tree, machine_mode,
33 int *, const_tree, int);
35 (const_tree, machine_mode, int *, const_tree, int);
36
37extern machine_mode default_cc_modes_compatible (machine_mode,
38 machine_mode);
39
41
44 const function_arg_info &,
45 int *, int);
48
53extern unsigned HOST_WIDE_INT default_shift_truncation_mask
54 (machine_mode);
55extern unsigned int default_min_divisions_for_recip_mul (machine_mode);
57 (const_tree);
59
63
64extern machine_mode default_mode_for_suffix (char);
65
66extern tree default_cxx_guard_type (void);
69
74
75extern void default_print_operand (FILE *, rtx, int);
76extern void default_print_operand_address (FILE *, machine_mode, rtx);
77extern bool default_print_operand_punct_valid_p (unsigned char);
78extern tree default_mangle_assembler_name (const char *);
79
80extern machine_mode default_translate_mode_attribute (machine_mode);
84extern bool default_floatn_builtin_p (int);
85extern bool targhook_words_big_endian (void);
86extern bool targhook_float_words_big_endian (void);
88extern bool default_decimal_float_supported_p (void);
89extern bool default_fixed_point_supported_p (void);
90
91extern bool default_has_ifunc_p (void);
92
93extern bool default_predict_doloop_p (class loop *);
94extern machine_mode default_preferred_doloop_mode (machine_mode);
95extern const char * default_invalid_within_doloop (const rtx_insn *);
96
99
101
103
105
106extern HOST_WIDE_INT default_static_rtx_alignment (machine_mode);
107extern HOST_WIDE_INT default_constant_alignment (const_tree, HOST_WIDE_INT);
108extern HOST_WIDE_INT constant_alignment_word_strings (const_tree,
109 HOST_WIDE_INT);
110extern HOST_WIDE_INT default_vector_alignment (const_tree);
111
114extern bool
116 int, bool, bool);
117extern machine_mode default_preferred_simd_mode (scalar_mode mode);
118extern machine_mode default_split_reduction (machine_mode);
119extern unsigned int default_autovectorize_vector_modes (vector_modes *, bool);
123extern opt_machine_mode default_get_mask_mode (machine_mode);
124extern bool default_empty_mask_is_expensive (unsigned);
125extern bool default_conditional_operation_is_expensive (unsigned);
127
128/* OpenACC hooks. */
129extern bool default_goacc_validate_dims (tree, int [], int, unsigned);
130extern int default_goacc_dim_limit (int);
131extern bool default_goacc_fork_join (gcall *, const int [], bool);
132extern void default_goacc_reduction (gcall *);
133
134/* These are here, and not in hooks.[ch], because not all users of
135 hooks.h include tm.h, and thus we don't have CUMULATIVE_ARGS. */
136
139
153extern bool default_push_argument (unsigned int);
154extern HOST_WIDE_INT default_function_arg_offset (machine_mode, const_tree);
158 const function_arg_info &);
159extern unsigned int default_function_arg_boundary (machine_mode,
160 const_tree);
161extern unsigned int default_function_arg_round_boundary (machine_mode,
162 const_tree);
166extern rtx default_libcall_value (machine_mode, const_rtx);
167extern bool default_function_value_regno_p (const unsigned int);
176extern bool default_lra_p (void);
177extern int default_register_priority (int);
178extern bool default_register_usage_leveling_p (void);
181 machine_mode,
183extern machine_mode default_secondary_memory_needed_mode (machine_mode);
185extern void hook_void_bitmap (bitmap);
186extern int default_reloc_rw_mask (void);
187extern bool default_generate_pic_addr_diff_vec (void);
188extern void default_asm_out_constructor (rtx, int);
189extern void default_asm_out_destructor (rtx, int);
193extern unsigned int default_hard_regno_nregs (unsigned int, machine_mode);
194extern bool default_hard_regno_scratch_ok (unsigned int);
201extern bool default_update_ipa_fn_target_info (unsigned int &, const gimple *);
202extern bool default_need_ipa_fn_target_info (const_tree, unsigned int &);
204extern bool default_ref_may_alias_errno (class ao_ref *);
209extern bool default_addr_space_legitimate_address_p (machine_mode, rtx, bool,
211extern rtx default_addr_space_legitimize_address (rtx, rtx, machine_mode,
216extern void default_addr_space_diagnose_usage (addr_space_t, location_t);
220extern unsigned int default_case_values_threshold (void);
221extern bool default_have_conditional_execution (void);
222extern bool default_have_ccmp (void);
223
225extern bool default_libc_has_fast_function (int fcode);
227extern bool gnu_libc_has_function (enum function_class, tree);
228extern bool bsd_libc_has_function (enum function_class, tree);
229extern unsigned default_fortify_source_default_level (void);
230extern unsigned default_libm_function_max_error (unsigned, machine_mode, bool);
231extern unsigned glibc_linux_libm_function_max_error (unsigned, machine_mode,
232 bool);
233
235
236extern int default_memory_move_cost (machine_mode, reg_class_t, bool);
237extern int default_register_move_cost (machine_mode, reg_class_t,
239extern int default_callee_save_cost (spill_cost_type, unsigned int,
240 machine_mode, unsigned int, int,
241 const HARD_REG_SET &, bool);
243 const HARD_REG_SET &);
244extern bool default_slow_unaligned_access (machine_mode, unsigned int);
245extern HOST_WIDE_INT default_estimated_poly_value (poly_int64,
247
248extern bool default_use_by_pieces_infrastructure_p (unsigned HOST_WIDE_INT,
249 unsigned int,
251 bool);
252extern int default_compare_by_pieces_branch_ratio (machine_mode);
253
255 unsigned HOST_WIDE_INT,
256 bool);
257extern bool default_profile_before_prologue (void);
262extern unsigned char default_class_max_nregs (reg_class_t, machine_mode);
263
265 bool);
266
268
269extern void default_canonicalize_comparison (int *, rtx *, rtx *, bool);
270
272 bool startup, bool exit);
273extern unsigned int default_dwarf_poly_indeterminate_value (unsigned int,
274 unsigned int *,
275 int *);
276extern machine_mode default_dwarf_frame_reg_mode (int);
279
280extern void *default_get_pch_validity (size_t *);
281extern const char *default_pch_valid_p (const void *, size_t);
282
283extern void default_asm_output_ident_directive (const char*);
284
285extern scalar_int_mode default_cstore_mode (enum insn_code);
286extern bool default_member_type_forces_blk (const_tree, machine_mode);
287extern void default_atomic_assign_expand_fenv (tree *, tree *, tree *);
290extern bool can_use_doloop_if_innermost (const widest_int &,
291 const widest_int &,
292 unsigned int, bool);
293
294extern bool default_optab_supported_p (int, machine_mode, machine_mode,
296extern unsigned int default_max_noce_ifcvt_seq_cost (edge);
298 struct noce_if_info *);
299extern unsigned int default_min_arithmetic_precision (void);
300
301extern enum flt_eval_method
302default_excess_precision (enum excess_precision_type ATTRIBUTE_UNUSED);
303extern bool default_bitint_type_info (int, struct bitint_info *);
304extern machine_mode default_mode_for_floating_type (enum tree_index);
305extern HOST_WIDE_INT default_stack_clash_protection_alloca_probe_range (void);
307extern tree default_preferred_else_value (unsigned, tree, unsigned, tree *);
308
309extern bool default_have_speculation_safe_value (bool);
310extern bool speculation_safe_value_not_needed (bool);
311extern rtx default_speculation_safe_value (machine_mode, rtx, rtx, rtx);
312
314extern uint8_t default_memtag_tag_bitsize ();
315extern uint8_t default_memtag_granule_size ();
317extern rtx default_memtag_add_tag (rtx, poly_int64, uint8_t);
321
322#endif /* GCC_TARGHOOKS_H */
Definition tree-ssa-alias.h:77
Definition tree.h:82
Definition machmode.h:833
Definition calls.h:35
Definition cfgloop.h:120
Definition machmode.h:465
Definition machmode.h:437
Definition machmode.h:493
Definition tree-vectorizer.h:596
Definition tree-vectorizer.h:1723
struct rtx_def * rtx
Definition coretypes.h:57
opt_mode< scalar_float_mode > opt_scalar_float_mode
Definition coretypes.h:67
unwind_info_type
Definition coretypes.h:262
unsigned char addr_space_t
Definition coretypes.h:188
class edge_def * edge
Definition coretypes.h:369
gimple * gimple_seq
Definition coretypes.h:100
const struct rtx_def * const_rtx
Definition coretypes.h:58
function_class
Definition coretypes.h:435
artificial_rodata
Definition coretypes.h:351
excess_precision_type
Definition coretypes.h:467
struct simple_bitmap_def * sbitmap
Definition coretypes.h:54
node_frequency
Definition coretypes.h:271
pad_direction
Definition coretypes.h:298
flt_eval_method
Definition coretypes.h:458
int reg_class_t
Definition coretypes.h:393
const union tree_node * const_tree
Definition coretypes.h:98
class bitmap_head * bitmap
Definition coretypes.h:51
union tree_node * tree
Definition coretypes.h:97
optimization_type
Definition coretypes.h:286
HARD_REG_ELT_TYPE HARD_REG_SET
Definition hard-reg-set.h:47
opt_mode< machine_mode > opt_machine_mode
Definition machmode.h:23
poly_int< NUM_POLY_INT_COEFFS, unsigned HOST_WIDE_INT > poly_uint64
Definition poly-int-types.h:25
poly_int< NUM_POLY_INT_COEFFS, HOST_WIDE_INT > poly_int64
Definition poly-int-types.h:24
Definition target.h:87
Definition genautomata.cc:499
Definition gimple.h:352
Definition gimple.h:221
Definition ifcvt.h:66
Definition rtl.h:546
Definition target.h:132
Definition vec.h:450
vec< machine_mode > vector_modes
Definition target.h:220
spill_cost_type
Definition target.h:304
by_pieces_operation
Definition target.h:98
poly_value_estimate_kind
Definition target.h:297
void(* emit_support_tinfos_callback)(tree)
Definition target.h:315
vect_cost_for_stmt
Definition target.h:189
frame_cost_type
Definition target.h:310
void default_emit_call_builtin___clear_cache(rtx, rtx)
Definition builtins.cc:6028
rtx default_legitimize_address(rtx, rtx, machine_mode)
Definition targhooks.cc:181
unsigned HOST_WIDE_INT default_shift_truncation_mask(machine_mode)
Definition targhooks.cc:265
void hook_void_CUMULATIVE_ARGS_rtx_tree(cumulative_args_t, rtx, tree)
Definition targhooks.cc:816
bool default_scalar_mode_supported_p(scalar_mode)
Definition targhooks.cc:442
bool default_valid_pointer_mode(scalar_int_mode)
Definition targhooks.cc:1647
bool hook_bool_CUMULATIVE_ARGS_false(cumulative_args_t)
Definition targhooks.cc:226
bool default_goacc_fork_join(gcall *, const int[], bool)
bool default_target_option_valid_version_attribute_p(tree, tree, tree, int)
bool hook_bool_CUMULATIVE_ARGS_arg_info_false(cumulative_args_t, const function_arg_info &)
Definition targhooks.cc:784
rtx default_addr_space_convert(rtx, tree, tree)
Definition targhooks.cc:1787
rtx default_memtag_add_tag(rtx, poly_int64, uint8_t)
Definition targhooks.cc:2853
bool default_new_address_profitable_p(rtx, rtx_insn *, rtx)
Definition targhooks.cc:1835
HOST_WIDE_INT default_stack_clash_protection_alloca_probe_range(void)
Definition targhooks.cc:2747
const char * default_pch_valid_p(const void *, size_t)
Definition targhooks.cc:2487
pad_direction default_function_arg_padding(machine_mode, const_tree)
Definition targhooks.cc:850
bool default_have_conditional_execution(void)
Definition targhooks.cc:1924
void default_target_option_override(void)
machine_mode default_translate_mode_attribute(machine_mode)
Definition targhooks.cc:427
void * default_get_pch_validity(size_t *)
Definition targhooks.cc:2441
bool default_function_value_regno_p(const unsigned int)
Definition targhooks.cc:1050
machine_mode default_promote_function_mode(const_tree, machine_mode, int *, const_tree, int)
Definition targhooks.cc:144
reg_class_t default_ira_change_pseudo_allocno_class(int, reg_class_t, reg_class_t)
Definition targhooks.cc:1301
bool default_generate_pic_addr_diff_vec(void)
Definition targhooks.cc:1449
void hook_void_CUMULATIVE_ARGS_tree(cumulative_args_t, tree)
Definition targhooks.cc:810
poly_uint64 default_preferred_vector_alignment(const_tree)
Definition targhooks.cc:1527
void default_asm_out_destructor(rtx, int)
Definition targhooks.cc:1468
tree default_stack_protect_guard(void)
Definition targhooks.cc:919
void default_external_libcall(rtx)
Definition targhooks.cc:118
scalar_int_mode default_addr_space_pointer_mode(addr_space_t)
Definition targhooks.cc:1685
HOST_WIDE_INT default_constant_alignment(const_tree, HOST_WIDE_INT)
Definition targhooks.cc:1492
machine_mode default_mode_for_floating_type(enum tree_index)
Definition targhooks.cc:306
reg_class_t default_preferred_rename_class(reg_class_t rclass)
Definition targhooks.cc:2299
bool hook_bool_CUMULATIVE_ARGS_true(cumulative_args_t)
Definition targhooks.cc:289
void default_asm_output_ident_directive(const char *)
Definition varasm.cc:8995
HOST_WIDE_INT constant_alignment_word_strings(const_tree, HOST_WIDE_INT)
Definition targhooks.cc:1501
int default_frame_allocation_cost(frame_cost_type, const HARD_REG_SET &)
Definition targhooks.cc:2118
rtx default_libcall_value(machine_mode, const_rtx)
Definition targhooks.cc:1037
tree default_mangle_assembler_name(const char *)
Definition targhooks.cc:415
void hook_void_CUMULATIVE_ARGS(cumulative_args_t)
Definition targhooks.cc:805
vector_costs * default_vectorize_create_costs(vec_info *, bool)
Definition targhooks.cc:1639
tree default_hidden_stack_protect_fail(void)
Definition targhooks.cc:979
void default_emit_support_tinfos(emit_support_tinfos_callback)
Definition targhooks.cc:779
tree default_mangle_decl_assembler_name(tree, tree)
Definition targhooks.cc:1475
rtx default_function_value(const_tree, const_tree, bool)
Definition targhooks.cc:1020
rtx default_addr_space_legitimize_address(rtx, rtx, machine_mode, addr_space_t)
Definition targhooks.cc:1741
bool default_noce_conversion_profitable_p(rtx_insn *, struct noce_if_info *)
Definition ifcvt.cc:812
bool default_addr_space_legitimate_address_p(machine_mode, rtx, bool, addr_space_t, code_helper)
Definition targhooks.cc:1729
tree std_gimplify_va_arg_expr(tree, tree, gimple_seq *, gimple_seq *)
Definition targhooks.cc:2571
bool default_register_usage_leveling_p(void)
Definition targhooks.cc:1329
unsigned int default_dwarf_poly_indeterminate_value(unsigned int, unsigned int *, int *)
Definition targhooks.cc:2380
bool default_class_likely_spilled_p(reg_class_t)
Definition targhooks.cc:2307
scalar_int_mode default_libgcc_cmp_return_mode(void)
Definition targhooks.cc:245
opt_scalar_float_mode default_floatn_mode(int, bool)
Definition targhooks.cc:516
void default_asm_out_constructor(rtx, int)
Definition targhooks.cc:1459
machine_mode default_split_reduction(machine_mode)
Definition targhooks.cc:1578
bool default_return_in_memory(const_tree, const_tree)
Definition targhooks.cc:174
bool default_mode_dependent_address_p(const_rtx, addr_space_t)
Definition targhooks.cc:1823
bool default_keep_leaf_when_profiled()
Definition targhooks.cc:2414
bool default_preferred_div_as_shifts_over_mult(const_tree)
Definition targhooks.cc:1536
bool default_target_option_valid_attribute_p(tree, tree, tree, int)
machine_mode default_preferred_doloop_mode(machine_mode)
Definition targhooks.cc:690
void default_function_arg_advance(cumulative_args_t, const function_arg_info &)
Definition targhooks.cc:833
bool default_goacc_validate_dims(tree, int[], int, unsigned)
bool default_float_exceptions_rounding_supported_p(void)
Definition targhooks.cc:641
const char * default_invalid_within_doloop(const rtx_insn *)
Definition targhooks.cc:706
machine_mode default_preferred_simd_mode(scalar_mode mode)
Definition targhooks.cc:1570
tree default_builtin_vectorized_function(unsigned int, tree, tree)
Definition targhooks.cc:720
bool gnu_libc_has_function(enum function_class, tree)
Definition targhooks.cc:1958
unsigned char default_class_max_nregs(reg_class_t, machine_mode)
Definition targhooks.cc:2315
unsigned int default_max_noce_ifcvt_seq_cost(edge)
Definition targhooks.cc:2702
bool hook_bool_CUMULATIVE_ARGS_arg_info_true(cumulative_args_t, const function_arg_info &)
Definition targhooks.cc:791
void default_select_early_remat_modes(sbitmap)
Definition targhooks.cc:2755
poly_int64 default_return_pops_args(tree, tree, poly_int64)
Definition targhooks.cc:1295
bool default_optab_supported_p(int, machine_mode, machine_mode, optimization_type)
Definition targhooks.cc:2694
void default_goacc_reduction(gcall *)
Definition omp-offload.cc:1791
bool default_profile_before_prologue(void)
Definition targhooks.cc:2266
bool default_libgcc_floating_mode_supported_p(scalar_float_mode)
Definition targhooks.cc:489
enum flt_eval_method default_excess_precision(enum excess_precision_type)
Definition targhooks.cc:2731
bool default_push_argument(unsigned int)
Definition targhooks.cc:823
int default_compare_by_pieces_branch_ratio(machine_mode)
Definition targhooks.cc:2204
bool default_ref_may_alias_errno(class ao_ref *)
Definition targhooks.cc:1655
bool default_addr_space_subset_p(addr_space_t, addr_space_t)
Definition targhooks.cc:1752
machine_mode default_cc_modes_compatible(machine_mode, machine_mode)
Definition targhooks.cc:166
bool default_builtin_support_vector_misalignment(machine_mode mode, int, bool, bool)
Definition targhooks.cc:1553
bool default_has_ifunc_p(void)
Definition targhooks.cc:669
void default_addr_space_diagnose_usage(addr_space_t, location_t)
Definition targhooks.cc:1778
rtx default_memtag_insert_random_tag(rtx, rtx)
Definition targhooks.cc:2832
bool default_legitimate_address_p(machine_mode, rtx, bool, code_helper)
Definition targhooks.cc:101
unsigned int default_function_arg_round_boundary(machine_mode, const_tree)
Definition targhooks.cc:893
scalar_int_mode default_cstore_mode(enum insn_code)
Definition targhooks.cc:2527
void hook_void_bitmap(bitmap)
Definition targhooks.cc:900
bool default_slow_unaligned_access(machine_mode, unsigned int)
Definition targhooks.cc:2126
tree default_preferred_else_value(unsigned, tree, unsigned, tree *)
Definition targhooks.cc:2762
HOST_WIDE_INT default_static_rtx_alignment(machine_mode)
Definition targhooks.cc:1484
HOST_WIDE_INT default_estimated_poly_value(poly_int64, poly_value_estimate_kind)
Definition targhooks.cc:2134
HOST_WIDE_INT default_function_arg_offset(machine_mode, const_tree)
Definition targhooks.cc:841
rtx default_expand_builtin_saveregs(void)
Definition targhooks.cc:203
tree build_va_arg_indirect_ref(tree)
Definition targhooks.cc:2561
opt_machine_mode default_vectorize_related_mode(machine_mode, scalar_mode, poly_uint64)
Definition targhooks.cc:1594
void default_trampoline_init(rtx, tree, rtx)
bool hook_pass_by_reference_must_pass_in_stack(cumulative_args_t, const function_arg_info &)
Definition targhooks.cc:357
rtx default_builtin_setjmp_frame_value(void)
Definition targhooks.cc:218
tree default_cxx_get_cookie_size(tree)
Definition targhooks.cc:326
bool default_predict_doloop_p(class loop *)
Definition targhooks.cc:682
bool hook_callee_copies_named(cumulative_args_t ca, const function_arg_info &)
Definition targhooks.cc:367
bool default_pretend_outgoing_varargs_named(cumulative_args_t)
Definition targhooks.cc:232
unsigned int default_min_arithmetic_precision(void)
Definition targhooks.cc:2723
tree default_emutls_var_init(tree, tree, tree)
Definition tree-emutls.cc:156
bool default_target_can_inline_p(tree, tree)
Definition targhooks.cc:1881
tree default_external_stack_protect_fail(void)
Definition targhooks.cc:952
void default_setup_incoming_varargs(cumulative_args_t, const function_arg_info &, int *, int)
Definition targhooks.cc:210
rtx default_function_arg(cumulative_args_t, const function_arg_info &)
Definition targhooks.cc:874
void default_canonicalize_comparison(int *, rtx *, rtx *, bool)
Definition targhooks.cc:2543
uint8_t default_memtag_granule_size()
Definition targhooks.cc:2825
tree default_cxx_guard_type(void)
Definition targhooks.cc:316
rtx default_function_incoming_arg(cumulative_args_t, const function_arg_info &)
Definition targhooks.cc:880
bool default_memtag_can_tag_addresses()
Definition targhooks.cc:2813
tree default_builtin_reciprocal(tree)
Definition targhooks.cc:773
bool default_addr_space_zero_address_valid(addr_space_t)
Definition targhooks.cc:1761
bool default_need_ipa_fn_target_info(const_tree, unsigned int &)
Definition targhooks.cc:1902
bool default_floatn_builtin_p(int)
Definition targhooks.cc:610
rtx default_memtag_extract_tag(rtx, rtx)
Definition targhooks.cc:2894
bool default_builtin_vector_alignment_reachable(const_tree, bool)
Definition targhooks.cc:1544
bool default_have_ccmp(void)
Definition targhooks.cc:1930
fixed_size_mode default_get_reg_raw_mode(int)
Definition targhooks.cc:2403
int default_memory_move_cost(machine_mode, reg_class_t, bool)
Definition targhooks.cc:2069
machine_mode default_promote_function_mode_always_promote(const_tree, machine_mode, int *, const_tree, int)
Definition targhooks.cc:156
tree default_emutls_var_fields(tree, tree *)
Definition tree-emutls.cc:119
bool hook_bool_const_rtx_commutative_p(const_rtx, int)
Definition targhooks.cc:1013
int default_register_priority(int)
Definition targhooks.cc:1323
unsigned glibc_linux_libm_function_max_error(unsigned, machine_mode, bool)
Definition targhooks.cc:1999
scalar_int_mode default_libgcc_shift_count_mode(void)
Definition targhooks.cc:251
opt_machine_mode default_get_mask_mode(machine_mode)
Definition targhooks.cc:1613
bool default_bitint_type_info(int, struct bitint_info *)
Definition targhooks.cc:2739
bool default_decimal_float_supported_p(void)
Definition targhooks.cc:653
unsigned default_fortify_source_default_level(void)
Definition targhooks.cc:1987
bool default_legitimize_address_displacement(rtx *, rtx *, poly_int64, machine_mode)
Definition targhooks.cc:188
int default_register_move_cost(machine_mode, reg_class_t, reg_class_t)
Definition targhooks.cc:2084
HOST_WIDE_INT default_vector_alignment(const_tree)
Definition targhooks.cc:1512
void default_print_operand(FILE *, rtx, int)
Definition targhooks.cc:375
HARD_REG_SET default_zero_call_used_regs(HARD_REG_SET)
Definition targhooks.cc:1101
bool default_lra_p(void)
Definition targhooks.cc:1317
machine_mode default_mode_for_suffix(char)
Definition targhooks.cc:297
unsigned int default_autovectorize_vector_modes(vector_modes *, bool)
Definition targhooks.cc:1586
bool default_have_speculation_safe_value(bool)
Definition targhooks.cc:2769
bool can_use_doloop_if_innermost(const widest_int &, const widest_int &, unsigned int, bool)
Definition targhooks.cc:2685
tree default_builtin_tm_load_store(tree)
bool default_different_addr_displacement_p(void)
Definition targhooks.cc:1335
uint8_t default_memtag_tag_bitsize()
Definition targhooks.cc:2819
unsigned int default_case_values_threshold(void)
Definition targhooks.cc:1918
reg_class_t default_preferred_output_reload_class(rtx, reg_class_t)
Definition targhooks.cc:2291
int default_ira_callee_saved_register_cost_scale(int)
Definition targhooks.cc:1309
tree default_cxx_adjust_cdtor_callabi_fntype(tree)
Definition targhooks.cc:348
addr_space_t default_addr_space_for_artificial_rodata(tree, artificial_rodata)
Definition targhooks.cc:1798
int default_addr_space_debug(addr_space_t)
Definition targhooks.cc:1769
int default_unspec_may_trap_p(const_rtx, unsigned)
Definition targhooks.cc:126
enum unwind_info_type default_debug_unwind_info(void)
Definition targhooks.cc:2358
int default_goacc_dim_limit(int)
void default_print_patchable_function_entry(FILE *, unsigned HOST_WIDE_INT, bool)
Definition targhooks.cc:2217
bool default_libc_has_function(enum function_class, tree)
Definition targhooks.cc:1938
bool default_conditional_operation_is_expensive(unsigned)
Definition targhooks.cc:1621
bool default_use_by_pieces_infrastructure_p(unsigned HOST_WIDE_INT, unsigned int, enum by_pieces_operation, bool)
Definition targhooks.cc:2163
unsigned int default_hard_regno_nregs(unsigned int, machine_mode)
Definition targhooks.cc:1807
bool no_c99_libc_has_function(enum function_class, tree)
Definition targhooks.cc:1965
int default_builtin_vectorization_cost(enum vect_cost_for_stmt, tree, int)
Definition targhooks.cc:736
bool speculation_safe_value_not_needed(bool)
Definition targhooks.cc:2780
bool default_const_not_ok_for_debug_p(rtx)
Definition targhooks.cc:195
const char * hook_invalid_arg_for_unprototyped_fn(const_tree, const_tree, const_tree)
Definition targhooks.cc:905
int default_reloc_rw_mask(void)
Definition targhooks.cc:1440
bool default_addr_space_valid_pointer_mode(scalar_int_mode, addr_space_t)
Definition targhooks.cc:1703
bool targhook_float_words_big_endian(void)
Definition targhooks.cc:632
reg_class_t default_preferred_reload_class(rtx, reg_class_t)
Definition targhooks.cc:2278
bool bsd_libc_has_function(enum function_class, tree)
Definition targhooks.cc:1973
reg_class_t default_secondary_reload(bool, rtx, reg_class_t, machine_mode, secondary_reload_info *)
Definition targhooks.cc:1341
scalar_int_mode default_unwind_word_mode(void)
Definition targhooks.cc:257
void default_atomic_assign_expand_fenv(tree *, tree *, tree *)
Definition targhooks.cc:2550
scalar_int_mode default_addr_space_address_mode(addr_space_t)
Definition targhooks.cc:1694
scalar_int_mode default_eh_return_filter_mode(void)
Definition targhooks.cc:239
machine_mode default_dwarf_frame_reg_mode(int)
Definition targhooks.cc:2389
bool default_hard_regno_scratch_ok(unsigned int)
Definition targhooks.cc:1815
void default_print_operand_address(FILE *, machine_mode, rtx)
Definition targhooks.cc:389
bool default_update_ipa_fn_target_info(unsigned int &, const gimple *)
Definition targhooks.cc:1908
machine_mode default_secondary_memory_needed_mode(machine_mode)
Definition targhooks.cc:1427
rtx default_static_chain(const_tree, bool)
rtx default_memtag_set_tag(rtx, rtx, rtx)
Definition targhooks.cc:2881
unsigned int default_min_divisions_for_recip_mul(machine_mode)
Definition targhooks.cc:273
section * default_function_section(tree decl, enum node_frequency freq, bool startup, bool exit)
Definition varasm.cc:599
bool default_print_operand_punct_valid_p(unsigned char)
Definition targhooks.cc:404
bool default_avoid_store_forwarding_p(vec< store_fwd_info >, rtx, int, bool)
Definition targhooks.cc:2332
int default_mode_rep_extended(scalar_int_mode, scalar_int_mode)
Definition targhooks.cc:281
rtx default_speculation_safe_value(machine_mode, rtx, rtx, rtx)
Definition targhooks.cc:2789
bool default_member_type_forces_blk(const_tree, machine_mode)
Definition targhooks.cc:2535
unsigned int default_function_arg_boundary(machine_mode, const_tree)
Definition targhooks.cc:886
rtx default_internal_arg_pointer(void)
Definition targhooks.cc:1245
bool default_libc_has_fast_function(int fcode)
Definition targhooks.cc:1952
int hook_int_CUMULATIVE_ARGS_arg_info_0(cumulative_args_t, const function_arg_info &)
Definition targhooks.cc:798
int default_callee_save_cost(spill_cost_type, unsigned int, machine_mode, unsigned int, int, const HARD_REG_SET &, bool)
Definition targhooks.cc:2099
bool targhook_words_big_endian(void)
Definition targhooks.cc:626
rtx default_memtag_untagged_pointer(rtx, rtx)
Definition targhooks.cc:2907
bool default_empty_mask_is_expensive(unsigned)
Definition targhooks.cc:1629
unsigned default_libm_function_max_error(unsigned, machine_mode, bool)
Definition targhooks.cc:1993
tree default_builtin_md_vectorized_function(tree, tree, tree)
Definition targhooks.cc:728
bool default_fixed_point_supported_p(void)
Definition targhooks.cc:661
bool default_target_option_pragma_parse(tree, tree)
tree_index
Definition tree-core.h:692
Definition target.h:67
Definition output.h:517
generic_wide_int< widest_int_storage< WIDEST_INT_MAX_PRECISION > > widest_int
Definition wide-int.h:345