GCC Middle and Back End API Reference
gimple-builder.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

gassignbuild_assign (enum tree_code, tree, int, tree lhs=NULL_TREE)
 
gassignbuild_assign (enum tree_code, gimple *, int, tree lhs=NULL_TREE)
 
gassignbuild_assign (enum tree_code, tree, tree, tree lhs=NULL_TREE)
 
gassignbuild_assign (enum tree_code, gimple *, tree, tree lhs=NULL_TREE)
 
gassignbuild_assign (enum tree_code, tree, gimple *, tree lhs=NULL_TREE)
 
gassignbuild_assign (enum tree_code, gimple *, gimple *, tree lhs=NULL_TREE)
 
gassignbuild_type_cast (tree, tree, tree lhs=NULL_TREE)
 
gassignbuild_type_cast (tree, gimple *, tree lhs=NULL_TREE)
 

Function Documentation

◆ build_assign() [1/6]

gassign * build_assign ( enum tree_code,
gimple * op1,
gimple * op2,
tree lhs = NULL_TREE )

◆ build_assign() [2/6]

gassign * build_assign ( enum tree_code,
gimple * g,
int val,
tree lhs = NULL_TREE )

◆ build_assign() [3/6]

gassign * build_assign ( enum tree_code,
gimple * op1,
tree op2,
tree lhs = NULL_TREE )

◆ build_assign() [4/6]

gassign * build_assign ( enum tree_code,
tree op1,
gimple * op2,
tree lhs = NULL_TREE )

◆ build_assign() [5/6]

gassign * build_assign ( enum tree_code code,
tree op1,
int val,
tree lhs )
Header file for high level statement building routines.
   Copyright (C) 2013-2024 Free Software Foundation, Inc.

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/>.   
???  This API is legacy and should not be used in new code.   
Build a new gimple assignment.  The LHS of the assignment is a new
temporary whose type matches the given expression.  MODE indicates
whether the LHS should be an SSA or a normal temporary.  CODE is
the expression code for the RHS.  OP1 is the first operand and VAL
is an integer value to be used as the second operand.   

References build_int_cst(), get_expr_type(), gimple_build_assign(), make_ssa_name(), NULL_TREE, and TREE_TYPE.

Referenced by asan_expand_check_ifn(), build_assign(), build_assign(), build_assign(), and build_assign().

◆ build_assign() [6/6]

gassign * build_assign ( enum tree_code code,
tree op1,
tree op2,
tree lhs )
Build and return a new GIMPLE assignment.  The new assignment will
have the opcode CODE and operands OP1 and OP2.  The type of the
expression on the RHS is inferred to be the type of OP1.

The LHS of the statement will be an SSA name or a GIMPLE temporary
in normal form depending on the type of builder invoking this
function.   

References get_expr_type(), gimple_build_assign(), make_ssa_name(), and NULL_TREE.

◆ build_type_cast() [1/2]

gassign * build_type_cast ( tree to_type,
gimple * op,
tree lhs = NULL_TREE )

◆ build_type_cast() [2/2]

gassign * build_type_cast ( tree to_type,
tree op,
tree lhs )
Create and return a type cast assignment. This creates a NOP_EXPR
that converts OP to TO_TYPE.   

References ggc_alloc(), gimple_build_assign(), make_ssa_name(), and NULL_TREE.

Referenced by asan_expand_check_ifn(), and build_type_cast().