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()

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

◆ gori_name_helper()

◆ gori_name_on_edge()

◆ gori_on_edge()

◆ is_gimple_logical_p()

static bool is_gimple_logical_p ( const gimple * gs)
inlinestatic
Gimple range GORI functions.
   Copyright (C) 2017-2024 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()

static bool range_is_either_true_or_false ( const irange & r)
static