GCC Middle and Back End API Reference
gimple-range-gori.cc File Reference
#include "config.h"
#include "system.h"
#include "coretypes.h"
#include "backend.h"
#include "tree.h"
#include "gimple.h"
#include "ssa.h"
#include "gimple-pretty-print.h"
#include "gimple-range.h"
Include dependency graph for gimple-range-gori.cc:

Data Structures

class  gori_stmt_info

Functions

static bool is_gimple_logical_p (const gimple *gs)
DEBUG_FUNCTION void debug (gori_map &g)
static bool range_is_either_true_or_false (const irange &r)
static void gori_calc_operands (vrange &lhs, gimple *stmt, ssa_cache &r, range_query *q)
bool gori_on_edge (ssa_cache &r, edge e, range_query *q)
bool gori_name_helper (vrange &r, tree name, vrange &lhs, gimple *stmt, range_query *q)
bool gori_name_on_edge (vrange &r, tree name, edge e, range_query *q)

Function Documentation

◆ debug()

DEBUG_FUNCTION void debug ( gori_map & g)

References g.

◆ gori_calc_operands()

void gori_calc_operands ( vrange & lhs,
gimple * stmt,
ssa_cache & r,
range_query * q )
static

◆ gori_name_helper()

bool gori_name_helper ( vrange & r,
tree name,
vrange & lhs,
gimple * stmt,
range_query * q )

◆ gori_name_on_edge()

◆ gori_on_edge()

◆ is_gimple_logical_p()

bool is_gimple_logical_p ( const gimple * gs)
inlinestatic
Gimple range GORI functions. 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/>.

References boolean_type_node, gimple_assign_rhs1(), gimple_expr_code(), is_gimple_assign(), TREE_TYPE, and types_compatible_p().

Referenced by gori_compute::compute_operand_range(), and gori_stmt_info::gori_stmt_info().

◆ range_is_either_true_or_false()

bool range_is_either_true_or_false ( const irange & r)
static