GCC Middle and Back End API Reference
|
#include "config.h"
#include "system.h"
#include "coretypes.h"
#include "backend.h"
#include "tree.h"
#include "gimple.h"
#include "gimple-ssa.h"
#include "gimple-streamer.h"
#include "tree-eh.h"
#include "gimple-iterator.h"
#include "cgraph.h"
#include "value-prof.h"
#include "gimple-pretty-print.h"
Functions | |
static void | output_phi (struct output_block *ob, gphi *phi) |
static void | output_gimple_stmt (struct output_block *ob, struct function *fn, gimple *stmt) |
void | output_bb (struct output_block *ob, basic_block bb, struct function *fn) |
void output_bb | ( | struct output_block * | ob, |
basic_block | bb, | ||
struct function * | fn ) |
Output a basic block BB to the main stream in OB for this FN.
References basic_block_def::count, basic_block_def::flags, gimple_phi_result(), gsi_end_p(), gsi_next(), gsi_start_bb(), gsi_start_phis(), gsi_stmt(), basic_block_def::index, lookup_stmt_eh_lp_fn(), LTO_bb0, LTO_bb1, LTO_eh_region, LTO_null, output_gimple_stmt(), output_phi(), phi_nodes(), print_gimple_stmt(), profile_count::stream_out(), streamer_dump_file, streamer_write_hwi(), streamer_write_record_start(), streamer_write_uhwi(), TDF_SLIM, and virtual_operand_p().
Referenced by output_function().
|
static |
Emit statement STMT on the main stream of output block OB.
References as_a(), auto_var_in_fn_p(), bitpack_create(), bp_pack_value(), bp_pack_var_len_unsigned(), build1(), build2(), build_int_cst(), build_pointer_type(), function::decl, DECL_REGISTER, gcc_assert, gcc_unreachable, gimple_asm_nclobbers(), gimple_asm_ninputs(), gimple_asm_nlabels(), gimple_asm_noutputs(), gimple_asm_string(), gimple_assign_nontemporal_move_p(), gimple_call_fntype(), gimple_call_internal_fn(), gimple_call_internal_p(), gimple_eh_dispatch_region(), gimple_eh_must_not_throw_fndecl(), gimple_has_volatile_ops(), gimple_histogram_value(), gimple_location(), gimple_no_warning_p(), gimple_num_ops(), gimple_op(), gimple_resx_region(), gimple_transaction_body(), gimple_transaction_label_norm(), gimple_transaction_label_over(), gimple_transaction_label_uninst(), handled_component_p(), i, is_gimple_assign(), is_gimple_call(), is_gimple_debug(), lto_gimple_code_to_tag(), output_block::main_stream, NULL, stream_out_histogram_value(), stream_output_location_and_block, stream_write_tree, streamer_write_enum, streamer_write_hwi(), streamer_write_record_start(), streamer_write_string(), streamer_write_uhwi(), gimple::subcode, TREE_CODE, TREE_OPERAND, TREE_THIS_VOLATILE, TREE_TYPE, and VAR_P.
Referenced by output_bb().
|
static |
Routines for emitting GIMPLE to a file stream. Copyright (C) 2011-2024 Free Software Foundation, Inc. Contributed by Diego Novillo <dnovillo@google.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/>.
Output PHI function PHI to the main stream in OB.
References bitpack_create(), gimple_phi_arg_def(), gimple_phi_arg_edge(), gimple_phi_arg_location(), gimple_phi_num_args(), i, lto_gimple_code_to_tag(), output_block::main_stream, PHI_RESULT, SSA_NAME_VERSION, stream_output_location_and_block, stream_write_tree, streamer_write_record_start(), and streamer_write_uhwi().
Referenced by output_bb().