GCC Middle and Back End API Reference
|
#include <machmode.h>
Public Types | |
enum | from_int { dummy = MAX_MACHINE_MODE } |
Public Member Functions | |
ALWAYS_INLINE CONSTEXPR | opt_mode () |
ALWAYS_INLINE CONSTEXPR | opt_mode (const T &m) |
template<typename U > | |
ALWAYS_INLINE CONSTEXPR | opt_mode (const U &m) |
template<typename U > | |
ALWAYS_INLINE CONSTEXPR | opt_mode (const opt_mode< U > &) |
ALWAYS_INLINE CONSTEXPR | opt_mode (from_int m) |
machine_mode | else_void () const |
machine_mode | else_blk () const |
machine_mode | else_mode (machine_mode) const |
T | require () const |
bool | exists () const |
template<typename U > | |
bool | exists (U *) const |
bool | operator== (const T &m) const |
bool | operator!= (const T &m) const |
Private Attributes | |
machine_mode | m_mode |
An optional T (i.e. a T or nothing), where T is some form of mode class.
enum opt_mode::from_int |
|
inline |
|
inline |
|
inline |
ALWAYS_INLINE CONSTEXPR opt_mode< T >::opt_mode | ( | const opt_mode< U > & | m | ) |
|
inline |
References opt_mode< T >::else_mode().
Referenced by alter_reg(), assign_parm_setup_block(), compute_argument_addresses(), compute_record_mode(), emit_library_call_value_1(), expand_expr_real_1(), extract_bit_field_1(), layout_type(), lto_read_tree_1(), mode_for_array(), store_bit_field_1(), and store_one_arg().
If the T exists, return its enum value, otherwise return FALLBACK.
Referenced by opt_mode< T >::else_blk().
ALWAYS_INLINE machine_mode opt_mode< T >::else_void | ( | ) | const |
If the object contains a T, return its enum value, otherwise return E_VOIDmode.
Referenced by as_a(), dyn_cast(), and is_a().
ALWAYS_INLINE bool opt_mode< T >::exists | ( | ) | const |
Return true if the object contains a T rather than nothing.
Referenced by can_vec_mask_load_store_p(), copy_blkmode_from_reg(), default_floatn_mode(), emit_block_cmp_via_loop(), emit_block_move_via_loop(), expand_expr_real_1(), expand_float(), extract_bit_field_1(), finish_bitfield_representative(), init_derived_machine_modes(), mode_iterator::iterate_p(), bit_field_mode_iterator::next_mode(), store_bit_field_1(), store_fixed_bit_field(), store_split_bit_field(), vect_verify_loop_lens(), and widen_bswap().
Return true if the object contains a T, storing it in *MODE if so.
References T.
References opt_mode< T >::m_mode.
References opt_mode< T >::m_mode.
Assert that the object contains a T and return it.
References gcc_checking_assert.
Referenced by alignment_for_piecewise_move(), assemble_integer(), canonicalize_loop_ivs(), combine_instructions(), convert_extracted_bit_field(), convert_float_to_wider_int(), convert_mode_scalar(), convert_wider_int_to_float(), copy_blkmode_from_reg(), copy_blkmode_to_reg(), cse_insn(), cselib_record_sets(), default_secondary_memory_needed_mode(), emit_block_cmp_via_loop(), emit_block_move_via_loop(), emit_block_move_via_oriented_loop(), emit_block_move_via_pattern(), expand_arith_overflow(), expand_builtin_atomic_clear(), expand_builtin_atomic_test_and_set(), expand_builtin_issignaling(), expand_builtin_powi(), expand_builtin_signbit(), expand_debug_expr(), expand_fix(), expand_float(), expand_ifn_atomic_compare_exchange(), expand_parity(), expand_vector_parallel(), extract_bit_field_using_extv(), extract_fixed_bit_field(), extract_fixed_bit_field_1(), extract_integral_bit_field(), extract_split_bit_field(), find_shift_sequence(), finish_bitfield_representative(), gen_int_shift_amount(), gen_lowpart_common(), gen_lowpart_for_combine(), mode_iterator::get_2xwider(), get_best_extraction_insn(), get_builtin_sync_mode(), get_gcov_type(), get_gcov_unsigned_t(), mode_iterator::get_next(), mode_iterator::get_wider(), hard_function_value(), init_derived_machine_modes(), init_emit_once(), init_expr_target(), init_num_sign_bit_copies_in_rep(), init_optabs(), initialize_sizetypes(), layout_type(), make_extraction(), omp_clause_aligned_alignment(), output_constant_pool_2(), prepare_call_arguments(), prepare_cmp_insn(), replace_reg_with_saved_mem(), resolve_simple_move(), set_builtin_user_assembler_name(), set_storage_via_setmem(), simplify_comparison(), simplify_subreg_concatn(), op_by_pieces_d::smallest_fixed_size_mode_for_size(), store_bit_field_1(), store_bit_field_using_insv(), store_field(), store_fixed_bit_field(), store_integral_bit_field(), store_split_bit_field(), supportable_indirect_convert_operation(), vect_verify_full_masking(), vect_verify_full_masking_avx512(), vect_verify_loop_lens(), vectorizable_conversion(), vectorizable_load(), vectorizable_store(), widen_bswap(), widen_leading(), and widest_fixed_size_mode_for_size().
Referenced by opt_mode< T >::operator!=(), and opt_mode< T >::operator==().