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

Go to the source code of this file.

Data Structures

class  nested_function_info
 

Functions

tree build_addr (tree)
 
void insert_field_into_struct (tree, tree)
 
void lower_nested_functions (tree)
 
void maybe_record_nested_function (cgraph_node *node)
 
void unnest_function (cgraph_node *node)
 
cgraph_nodefirst_nested_function (cgraph_node *node)
 
cgraph_nodenext_nested_function (cgraph_node *node)
 
cgraph_nodenested_function_origin (cgraph_node *node)
 

Function Documentation

◆ build_addr()

tree build_addr ( tree exp)
extern
Header file for Nested function decomposition for GIMPLE.
   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/>.   
Take the address of EXP to be used within function CONTEXT.
Mark it for addressability as necessary.   

References build_fold_addr_expr, exp(), and mark_addressable().

Referenced by build_init_call_stmt(), convert_nl_goto_reference(), convert_tramp_reference_op(), create_call_for_reduction_1(), finalize_nesting_tree_1(), get_static_chain(), gimple_gen_ic_func_profiler(), gimple_gen_interval_profiler(), gimple_ic(), instrument_decisions(), lower_builtin_setjmp(), and take_address_of().

◆ first_nested_function()

◆ insert_field_into_struct()

◆ lower_nested_functions()

◆ maybe_record_nested_function()

◆ nested_function_origin()

cgraph_node * nested_function_origin ( cgraph_node * node)
inline
Return origin of nested function (and NULL otherwise).   

References nested_function_info::get(), NULL, and nested_function_info::origin.

Referenced by cgraph_node::dump(), and unnest_function().

◆ next_nested_function()

◆ unnest_function()