Go to the source code of this file.
◆ OP_WIDEN_MULT_SIGNED
◆ OP_WIDEN_MULT_UNSIGNED
◆ OP_WIDEN_PLUS_SIGNED
◆ OP_WIDEN_PLUS_UNSIGNED
◆ RANGE_OP_TABLE_SIZE
◆ range_op_dispatch_type
Header file for range operator class.
Copyright (C) 2017-2025 Free Software Foundation, Inc.
Contributed by Andrew MacLeod <amacleod@redhat.com>
and Aldy Hernandez <aldyh@redhat.com>.
This file is part of GCC.
GCC is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free
Software Foundation; either version 3, or (at your option) any later
version.
GCC is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.
You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>.
Enumerator |
---|
DISPATCH_FOLD_RANGE | |
DISPATCH_OP1_RANGE | |
DISPATCH_OP2_RANGE | |
DISPATCH_LHS_OP1_RELATION | |
DISPATCH_LHS_OP2_RELATION | |
DISPATCH_OP1_OP2_RELATION | |
◆ range_cast() [1/2]
◆ range_cast() [2/2]
References fold_range(), gcc_checking_assert, r, and value_range::set_varying().
Referenced by adjust_imagpart_expr(), gimple_outgoing_range::calc_switch_ranges(), assume_query::calculate_phi(), compute_distributive_range(), gori_compute::edge_range_p(), evaluate_conditions_for_known_args(), ranger_cache::fill_block_cache(), find_case_label_range(), cfn_ffs::fold_range(), operator_cast::fold_range(), operator_cast::fold_range(), fold_using_range::fold_stmt(), insert_into_preds_of_block(), ipa_compute_jump_functions_for_edge(), operator_cast::op1_range(), operator_lshift::op1_range(), fold_using_range::range_of_address(), fold_using_range::relation_fold_and_or(), and split_constant_offset_1().
◆ wi_set_zero_nonzero_bits()
References wi::bit_and_not(), wi::eq_p(), wi::floor_log2(), wi::ge_p(), wide_int_storage::get_precision(), wi::lt_p(), wi::mask(), wi::minus_one(), TYPE_SIGN, and wi::zero().
Referenced by vr_set_zero_nonzero_bits(), operator_bitwise_and::wi_fold(), operator_bitwise_or::wi_fold(), and operator_bitwise_xor::wi_fold().