GCC Middle and Back End API Reference
gphi_iterator Struct Reference

#include <gimple-iterator.h>

Inheritance diagram for gphi_iterator:
Collaboration diagram for gphi_iterator:

Public Member Functions

gphioperator* () const
 
gphiphi () const
 

Data Fields

gimple_seq_node ptr
 
gimple_seqseq
 
basic_block bb
 

Detailed Description

Iterator over GIMPLE_PHI statements.   

Member Function Documentation

◆ operator*()

gphi * gphi_iterator::operator* ( ) const
inline

◆ phi()

gphi * gphi_iterator::phi ( ) const
inline

References ggc_alloc(), and gimple_stmt_iterator::ptr.

Referenced by add_phi_args_after_copy_edge(), add_successor_phi_arg(), loop_cand::analyze_carried_vars(), loop_cand::analyze_lcssa_phis(), tree_switch_conversion::switch_conversion::build_constructors(), calculate_live_on_exit(), loop_cand::can_interchange_p(), canonicalize_loop_ivs(), tree_switch_conversion::switch_conversion::check_final_bb(), clean_up_loop_closed_phi(), coalesce_partitions(), compute_optimized_partition_bases(), consider_split(), copy_phi_args(), cprop_into_successor_phis(), determine_set_costs(), determine_value_range(), do_rpo_vn_1(), easy_exit_values(), eliminate_build(), eliminate_temp_copies(), eliminate_useless_phis(), expand_omp_for_generic(), expand_omp_for_static_chunk(), final_value_replacement_loop(), find_bivs(), find_interesting_uses_outside(), find_subloop_latch_edge_by_ivs(), tree_switch_conversion::switch_conversion::fix_phi_nodes(), tree_switch_conversion::switch_decision_tree::fix_phi_operands_for_edges(), flush_pending_stmts(), tree_switch_conversion::switch_conversion::gather_default_values(), gather_scalar_reductions(), hoist_adjacent_loads(), insert_backedge_copies(), loop_closed_phi_def(), loop_has_phi_with_address_arg(), loop_has_vector_phi_nodes(), make_forwarders_with_degenerate_phis(), mark_bivs(), num_phis(), phi_alternatives_equal(), phi_args_equal_on_edges(), fvrp_folder::pre_fold_bb(), propagate_through_phis(), record_edge_info(), record_equivalences_from_phis(), tree_switch_conversion::switch_decision_tree::record_phi_operand_mapping(), jump_threader::record_temporary_equivalences_from_phis(), remove_dead_phis(), remove_forwarder_block_with_phi(), remove_phi_args(), reserve_phi_args_for_new_edge(), rewrite_add_phi_arguments(), rewrite_phi_with_iv(), rewrite_trees(), same_phi_alternatives_1(), same_phi_args_p(), split_function(), split_loop_exit_edge(), ssa_redirect_edge(), suitable_cond_bb(), transform_to_exit_first_loop_alt(), try_create_reduction_list(), unroll_jam_possible_p(), update_phi_components(), vect_analyze_scalar_cycles_1(), vect_can_advance_ivs_p(), vect_loop_versioning(), vect_update_ivs_after_vectorizer(), verify_live_on_entry(), and vop_phi().

Field Documentation

◆ bb

◆ ptr

◆ seq

gimple_seq* gimple_stmt_iterator::seq
inherited

The documentation for this struct was generated from the following file: