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 "ssa.h"
#include "gimple-streamer.h"
#include "tree-eh.h"
#include "gimple-iterator.h"
#include "cgraph.h"
#include "value-prof.h"
Functions | |
static gphi * | input_phi (class lto_input_block *ib, basic_block bb, class data_in *data_in, struct function *fn) |
static gimple * | input_gimple_stmt (class lto_input_block *ib, class data_in *data_in, enum LTO_tags tag) |
void | input_bb (class lto_input_block *ib, enum LTO_tags tag, class data_in *data_in, struct function *fn, int count_materialization_scale) |
void input_bb | ( | class lto_input_block * | ib, |
enum LTO_tags | tag, | ||
class data_in * | data_in, | ||
struct function * | fn, | ||
int | count_materialization_scale ) |
Read a basic block with tag TAG from DATA_IN using input block IB. FN is the function being processed.
References add_stmt_to_eh_lp(), profile_count::apply_scale(), BASIC_BLOCK_FOR_FN, cfun, basic_block_def::count, basic_block_def::flags, gcc_assert, gsi_insert_after(), GSI_NEW_STMT, gsi_start_bb(), input_gimple_stmt(), input_phi(), profile_count::ipa(), LTO_bb0, LTO_eh_region, LTO_null, lto_tag_check_set(), profile_count::nonzero_p(), REG_BR_PROB_BASE, profile_count::stream_in(), streamer_read_hwi(), streamer_read_record_start(), and streamer_read_uhwi().
Referenced by input_function().
|
static |
Read a statement with tag TAG in function FN from block IB using descriptors in DATA_IN.
References as_a(), bp_unpack_value(), bp_unpack_var_len_unsigned(), dyn_cast(), gimple_alloc(), gimple_asm_noutputs(), gimple_asm_output_op(), gimple_call_internal_p(), gimple_call_reset_alias_info(), gimple_call_set_fntype(), gimple_call_set_internal_fn(), gimple_eh_dispatch_set_region(), gimple_eh_must_not_throw_set_fndecl(), gimple_get_lhs(), gimple_location_ptr(), gimple_op_ptr(), gimple_resx_set_region(), gimple_set_modified(), gimple_set_op(), gimple_transaction_set_label_norm(), gimple_transaction_set_label_over(), gimple_transaction_set_label_uninst(), handled_component_p(), gimple::has_volatile_ops, i, lto_location_cache::input_location_and_block(), integer_zerop(), internal_error(), is_gimple_assign(), data_in::location_cache, lto_tag_name(), lto_tag_to_gimple_code(), gasm::nc, gasm::ni, gasm::nl, gasm::no, gimple::no_warning, gimple::nontemporal_move, SSA_NAME_DEF_STMT, stream_in_histogram_value(), stream_read_tree, streamer_read_bitpack(), streamer_read_enum, streamer_read_hwi(), streamer_read_string_cst(), streamer_read_uhwi(), gasm::string, gimple::subcode, TREE_CODE, TREE_OPERAND, TREE_STRING_POINTER, TREE_THIS_VOLATILE, TREE_TYPE, TREE_VALUE, and TYPE_REF_CAN_ALIAS_ALL.
Referenced by input_bb().
|
static |
Routines for reading GIMPLE from 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/>.
Read a PHI function for basic block BB in function FN. DATA_IN is the file being read. IB is the input block to use for reading.
References add_phi_arg(), BASIC_BLOCK_FOR_FN, create_phi_node(), EDGE_COUNT, EDGE_PRED, gimple_phi_arg_location_ptr(), i, lto_location_cache::input_location_and_block(), data_in::location_cache, NULL, basic_block_def::preds, SSANAMES, stream_read_tree, streamer_read_bitpack(), streamer_read_uhwi(), and UNKNOWN_LOCATION.
Referenced by input_bb().