#include "wn.h"#include "wn_util.h"#include "fb_whirl.h"

Go to the source code of this file.
Definition at line 456 of file lwn_util.h.
| #define LWN_Get_Parent | ( | wn | ) | ((WN*)WN_MAP_Get(Parent_Map, (WN*)wn)) |
Definition at line 330 of file lwn_util.h.
Referenced by ANL_VARLIST::_Get_Io_Item_Lda_Access_Status(), ANL_VARLIST::_Get_Lda_Access_Status(), _xdependence_is_preserved(), Access_Vector_Condition_Provable(), Add_Doacross_Comments(), Add_Parallel_Region_Comments(), Add_Parent_If_Constraints(), Add_Parent_Loop_Constraints(), Add_Pragma_To_MP_Region(), PF_LOOPNODE::Add_Ref(), PF_BASE_ARRAY::Add_Ref(), Add_Stmt_Dependence(), Add_To_Symbol(), All_Uses_Outside_Of_Loop(), All_Uses_Within(), Analyse_Dependencies(), ANL_LOOP_CONSTRUCT::ANL_LOOP_CONSTRUCT(), Another_Expression_Comes_From_Loop(), ARA_Initialize_Loops(), Assign_Doacross_Mpnums(), Block_Loop_Depth(), BS_Find_Region(), BS_Find_Sibling(), BS_Has_If_In_Region(), BS_Is_Index_Variable(), BS_Range_Check(), BS_Substitute(), TRANSPOSE_DIRECTED_GRAPH16::Build(), ARRAY_REF::Build_Array(), Build_DLI_Stack(), Build_Doloop_Stack(), Build_Doloop_Stack_Rec(), Build_Parent_Stack(), Build_Regions(), TRANSPOSE_DIRECTED_GRAPH16::Build_Snl(), ARRAY_REF_LIST::Calc_Regs_And_Refs(), SNL_BOUNDS_INFO::Canonicize(), Check_Arrays(), Check_Depth(), Check_Loop_Statement(), Check_Reduction(), Check_Vertices_Traverse(), cl(), Code_Expansion_Limit_Loop(), COND_BOUNDS_INFO::Collect_Outer_Info(), SNL_BOUNDS_INFO::Collect_Outer_Info(), Conditionally_Assigned(), ARA_LOOP_INFO::Const_Work_Estimate(), Constant_Dimension(), Constant_Propogate(), Contained_In_Loop(), Contains_Index_Variable(), TRANSPOSE_DIRECTED_GRAPH16::Contains_Parallelizable(), Convert_Alloca_To_Intrinsic(), Convert_Dealloca_To_Intrinsic(), Convert_Do_Loops_Conditionals(), Convert_Intrinsic_To_Alloca_Dealloca(), Copy_Array(), Copy_Array_Section(), Copy_Loads_In_Bound(), copy_propagation(), Coupled_Loops_Traverse(), Create_Initialize_Loop(), LEGO_INFO::Create_Local_Index(), ARA_LOOP_INFO::Create_New_IF_Clause(), Create_Simple_Shackle_Loops(), Create_Single_Region(), Create_Stride1_Condition_If_Required(), Create_Unroll_Copy(), Crosses_Regions(), ARA_LOOP_INFO::Default_For_Bad_Loop(), Delete_MP_Region(), ARA_LOOP_INFO::Determine_Peel(), Dismantle_Do(), Dismantle_Nested_Doacross(), Dismantle_Nested_Region(), PF_LG::Distance_LR(), ARRAY_DESCRIPTOR::Distribute_Array(), Do_Automatic_Transformation(), Do_Depth(), Do_Loop_Is_Mp(), Dominates(), Dominates_and_Reverse_Postdominates(), DU_Closure_Collect_Defs(), Du_Sanity_Check_r(), Dump_WN(), Dump_Wn_Queue(), EC_Array_Portion_Calls(), Eliminate_Dead_Do(), Eliminate_Dead_If(), Enclosing_Do_Loop(), Enclosing_If_Or_Store(), Enclosing_Ith_Do_Loop(), Enclosing_Loop(), Enclosing_Loop_At_Depth(), Enclosing_Loop_Body(), Enclosing_Proper_Do_Loop(), Enclosing_Store(), DEPV_COMPUTE::Equiv_Dim(), Error_Check_MP_Pragmas(), Expr_Should_Always_Be_Hoisted(), Extract_Branch(), Finalize_Index_Variable(), Finalize_Index_Variable_For_Remove_Unity_Trip_Loop(), Find_Av_Loop_Index(), DEPV_COMPUTE::Find_Def(), Find_Do_Body(), Find_Do_Loop_With_Min(), Find_Enclosing_Unseen_If(), Find_Inner(), Find_Kernel_Stack_Nest_Traverse(), find_loop_var_in_simple_ub(), Find_Ls(), Find_MP(), Find_Proc_Tile_Loop(), Find_Sibling_Containing(), Find_Simd_Kind(), Find_Split_Point(), Find_Statement(), Find_Step(), Find_Stmt_Under(), Find_Topmost_Unseen_If_Containing_Node(), Find_Unseen_If_Outside_Do(), Fiss_Gather_Inner_Loop(), Fission(), Fission_DU_Update(), Fission_Inner_Loop(), Fission_Statement(), Fission_Test(), Fix_Do_Du_Info_X(), Fix_Return_Pregs(), Fix_Up_Loop_Info(), Fiz_Fuse(), Form_Loops(), Forward_Substitute_For_Access_Arrays(), Forward_Substitute_Ldids(), Forward_Substitute_SNL_Bounds(), Freeze_Cur_Numthreads_Func(), Freeze_Numthreads_Ldid(), FS_Array_Substitute(), FS_Condition(), FS_Is_In_Do_Loop_Expression(), FS_Is_Inside_If(), FS_Substitute(), FS_Worthwhile(), Fully_Unroll_Short_Loops(), Fuse(), Fusion_Du_Update(), TRANSPOSE_DIRECTED_GRAPH16::Gather_Arrays(), Gather_Scatter_Scalar_Expand(), Gather_Vectorizable_Ops(), Gen_Lookup_DART(), PF_LG::Gen_Pref_Node(), General_Kernel(), Generate_Blkcyc_Bounds(), Generate_Block_Bounds(), Generate_Block_Bounds_Negative(), ARA_LOOP_INFO::Generate_Copyout_Loop(), Generate_Cyclic_Bounds(), Generate_Interleaved_Bounds(), ARA_LOOP_INFO::Generate_Parallel_Pragma(), Generate_Runtime_Cyclic_Bounds(), Generate_Simple_Bounds(), Generate_Sink_Out_Code(), Get_Call_Parent(), Get_Do_And_Above(), Get_Enclosing_Region_ID(), Get_Expansion_Space(), Get_Frozen_Numthreads_Ldid(), Get_IO_Parent(), Get_IOL_Reshaped_Array_Ref(), Get_Memop_Parent(), Get_MP_Region(), Get_Parent_Loop(), Get_Runtime_Cur_Numthreads_Func(), Get_Statement(), Get_Stmt_For_Stmt_Dep_Graph(), Get_surrounding_loop_count(), Good_Do_Depth(), Guard_A_Do(), Guard_Test_Redundant(), AEQUIV::Handle_Call(), SX_INFO::Handle_Def(), AEQUIV::Handle_Rhs(), Has_Cutset(), Has_Sibling_In_Block(), Highest_Condition_Point(), HMB_Compound_Guard_Test(), HMB_Hoist_Easy_Messy_Bounds(), HMB_Hoist_Expressions(), HMB_Hoist_Messy_Bounds(), HMB_Hoist_Messy_Subscripts(), HMB_Maximum_Point(), HMB_Replace_Messy_Bounds(), HMB_Replace_Messy_Bounds_Loop(), HMB_Simple_Guard_Test(), Hoist_Conditionals(), Hoist_Expression(), Hoist_Iload_Ldid_Upper_Bound_One_Level(), Hoist_Inner_Invar(), Hoist_Necessary_Code_Up(), Hoist_Reshaped_Reference(), Hoist_Statement(), Hoistable_Place(), Hoistable_Statement(), HoistIf(), HoistIf_Replace_Symbol(), HoistIf_Walk(), Identical_Array_Refbase(), IF_Branch(), IF_Complement(), IFMM_Convert(), IFMM_Sink(), In_Same_SNL_Section(), Increase_By(), Index_Variable(), Index_Variable_Is_Last_Local(), Index_Variable_Ldid(), Index_Variable_Outside_Loop(), Initial_Hoist_Place(), Initialize_Doacross_Last_Local_Index(), SYMBOL_TREE::Initialize_Innermost_Loop_Var_Symbol(), Initialize_Pdo_Last_Local_Index(), Initialize_Symbols(), Innermost_Doacross_Nest_Loop(), Insert_Sink_Code(), Inside_Lego_Tiled_Loop(), Instrument_Address(), SYMBOL_TREE::Integer_Ref_Needs_Reg(), Inter_Iteration_Cses_Loop(), Interleaved_Pragma_Chunksize(), Invariant_Red_Depth(), TRANSPOSE_DIRECTED_GRAPH16::IO_element_read(), IO_element_read(), IPA_LNO_Evaluate_Array_Formals(), IPL_get_stmt_scf(), Is_Above(), Is_Allowed_Invalid_Access(), Is_Array_Base(), Is_Array_Param(), Is_Descendent(), REDUCTION_MANAGER::Is_Descendent_Of_Store_Address(), is_eventually_a_parent(), Is_In_Range(), Is_Inside_Store(), Is_Invariant(), Is_Lex_Before(), Is_Loop_Lower_Bound(), Is_Loop_Upper_Bound(), Is_nested_within(), Is_Non_Dependent_Load(), Is_Nonloop_Scalar(), Is_Orphaned_Pdo(), Is_Parent_Of(), Is_Proper_Descendant(), Is_Reduction_In_Prallel_Region(), Is_Unconditional(), Is_Under_Array(), Is_Vectorizable_Loop(), Is_Versioned_Mp_Loop(), Is_Versioned_Mp_Region(), Is_Well_Formed_Simd(), IV_Loop_Stmt_Check(), COND_BOUNDS_INFO::Kill_Written_Symbols(), LABEL_LIST::Label_Is_Targeted_Outside_Scope(), Ldid_Comes_From_Loop(), Lego_Block_Peel_Traverse(), Lego_Fix_Local_Rec(), Lego_Index_From_Access_Vector(), Lego_Parent_Array(), Lego_Skew_Loop(), LNO_Common_Loop(), LNO_Erase_Vertices_In_Loop(), LNO_Insert_Pragmas(), Load_SNL_And_Permutation(), Loop_Before_MP_Region(), Loop_Bounds_Constant(), Loop_Depth(), Loop_Dominates_Uses(), Loop_Invariant_Access(), Loop_Statement(), loop_var_is_live_on_exit(), ARRAY_LOWER_REF::Lower_Array_Expr(), ARRAY_LOWER_REF::Lower_Array_Param(), LWN_Check_Parentize(), LWN_Create_Block_From_Stmts_Above(), LWN_Create_Block_From_Stmts_Below(), LWN_Delete_From_Block(), LWN_Delete_Tree(), LWN_Extract_From_Block(), LWN_Get_Linenum(), LWN_Get_Next_SCF_Node(), LWN_Get_Next_Stmt_Node(), LWN_Get_Next_Tree_Node(), LWN_Get_Statement(), LWN_Insert_Block_After(), LWN_Insert_Block_Before(), LWN_Process_FF_Pragmas_Walk_r(), LWN_Simplify_Tree(), Mark_Calls(), Mark_Code(), Mark_Dos(), Mark_Threadprivate_Loops_Traverse(), Max_Dep_Distance(), Messy_Subscript(), Minimal_Kernel(), MIR_Build_Loop_List_Array(), MIR_Build_Loop_List_Walk(), MIR_Hoist_Messy_Subscripts(), MIR_Hoistable_Ref(), MIR_Maybe_Add_To_List(), MIR_Ok_Hoist_Wn_Dependence(), MIR_Patch_Loop_Stmt(), MIR_Replace(), MIR_Update_Dependences(), LOOP_MODEL::Model(), Move_Adjacent(), Mp_Collapse_Cleanup(), Mp_Collapse_Coordinates(), Mp_Collapse_Loop_Heads(), Mp_Collapse_Loop_Statements(), Mp_Compress_Nested_Loop(), Mp_Convert_To_Single_Loop(), Mp_Extract_Bogus_Do_Across(), Mp_Extract_Parallel_Directives(), Mp_Fix_Ref_Array_Aliases(), MP_INFO::MP_INFO(), Mp_Insert_Bounds_Code(), Mp_Layout_Copy_In_Onto(), Mp_Layout_Lego_Layout(), Mp_Localize_Onto_and_Layout(), Mp_Lower_Number(), Mp_Nested_Last_Thread(), MP_Problem(), Mp_Remove_Nested_Region(), Mp_Remove_Onto_Pragmas(), Mp_Tile_Traverse(), Mp_Version_Loop(), Mp_Version_Parallel_Region(), Mp_Want_Freeze_Cur_Threads(), Mp_Want_Version_Loop(), Mp_Want_Version_Parallel_Region(), Multiply_Will_Be_Strength_Reduced(), nest_depth(), Non_Const_Loops(), Normal_Outer_Tile(), ARA_LOOP_INFO::Not_Enough_Parallel_Work(), ARRAY_REF_LIST::Num_Fp_Refs(), Num_Good(), Num_Inner_Loops(), ARRAY_REF_LIST::Num_Int_Refs(), Num_Invariant_Refs(), Outer_Mp_Region(), Outer_Tile(), Outermore_Parallel_Construct(), Outermore_Parallel_Construct_Or_Lego_Loop(), TRANSPOSE_DIRECTED_GRAPH16::Outermore_Parallelizable(), Outermost_Enclosing_Good_Loop(), Outermost_Enclosing_Loop(), Parallelization_Process_Deps(), Parallelize_Doacross_Loop(), Perfect_Nested_Outer_Loop(), Perfectly_Nested(), Perform_Gather_Scatter(), PF_Get_Next_Do_Loop(), PF_UGS::PF_UGS(), LEGO_INFO::Pid0(), LEGO_INFO::Pid1(), Possible_Contiguous_Dope(), Post_loop_peeling(), Post_Peel_RR_Map_Update(), Pre_loop_peeling(), Pre_Peel_RR_Map_Update(), MIR_REFLIST::Print(), FIZ_FUSE_INFO::Print(), Print_Def_Use(), Print_Goto_Lines(), Print_Prompf_Nest_Log(), IPO_INLINE::Process_Alloca_Postamble(), IPO_INLINE::Process_Alloca_Preamble(), process_array_node(), SUMMARIZE< program >::Process_callsite(), SUMMARIZE< program >::Process_control_dependence(), Process_If(), PF_LOOPNODE::Process_Loop(), process_node(), Process_Pair(), SUMMARIZE< program >::Process_procedure(), Process_Store(), Processor_2D_Tile_Loop(), Processor_3D_Tile_Loop(), Processor_Update_Inner_Tile(), Processor_Update_Outer_Tile(), Promote_Pointer(), Prompf_Mp_Version(), Prompf_Nest_Depth(), Prompf_Nested_Tile(), Prompf_Tile(), Prune_Redundant_Trues(), SD_INFO::Push_Memory_Nodes(), Read_Pragma_Affinity(), Read_Pragma_Thread_Affinity(), Rebuild_Access_Arrays(), SUMMARIZE< program >::Record_ref(), SUMMARIZE< program >::Record_ref_all_formal(), SUMMARIZE< program >::Record_ref_formal(), Recursively_Add_Bound_Lin_Symbols(), Recursively_Add_Parent_If_Lin_Symbols(), Redundant_Condition(), Region_Depth(), Remove_Floor_From_One_Sided_Cond(), ANL_LOOP_CONSTRUCT::Remove_Stmt_In_Block(), Remove_Unity_Trip_Loop(), Remove_Unity_Trip_Loop_Loop_Stmt_Update(), Remove_Unity_Trip_Loop_Update_If_Accesses(), Remove_Unity_Trip_Loop_Update_Is_Inner(), Remove_Zero_Trip_Loop(), Rename_Update_MP(), Rename_Update_MP_Region(), Renumber_Loops(), Replace_Equality_Check(), Replace_Scalar_Store_With_Array_Store(), Replace_Symbol(), Replace_Symbols(), Replace_WN(), Replace_Wnexp_With_Exp_Copy(), Return_Node(), Rewrite_Bounds(), RV_Index_Sign(), RV_Reverse_Index_Ldid(), RV_Reverse_Loop(), RV_Scalar_Node_Legal(), SA_Set_SimdOps_Info1(), SA_Set_SimdOps_Info2(), SA_Version_F90_Loops_For_Contiguous(), MIR_REFLIST::Same(), DEPV_COMPUTE::Same_Monotonic(), Sandwiched_Code_Sinkable_In(), Scalar_Def_Covered_In_Loop(), Scalar_Equivalence_Class(), Scalar_Expand(), Scalar_Expandable(), scalar_rename(), Scalar_Store_Hoist_Place(), Scl_Dep_Info(), SE_Findxs(), SE_Guard_Tests(), SE_Iload(), SE_Istore(), SE_New_Outer_Loop(), Separate(), Separate_And_Update(), separate_loop_and_scalar_expand(), separate_loop_by_scc(), ACCESS_ARRAY::Set_Array(), Set_Constant_Dimensions(), Set_Enclosing_If_Has_Region(), SUMMARIZE< program >::Set_IO(), Set_Up_Equivalence_Class(), Shackleable_Ifs_Surrounding_Stmt(), Sibling(), Simd(), Simd_Add_Shuffle_For_Negative_Coefficient(), Simd_Align_Analysis(), Simd_Align_Array_References(), Simd_Align_Best_Peel(), Simd_Align_Generate_Peel_Loop(), Simd_Analysis(), Simd_Finalize_Loops(), simd_fis_separate_loop_and_scalar_expand(), Simd_Get_Vector_Type(), Simd_Handle_Negative_Coefficient(), Simd_Mark_Code(), Simd_Pre_Analysis(), Simd_Replace_With_Constant(), Simd_Unroll_Statement(), Simd_Vectorize_Constants(), Simd_Vectorize_Induction_Variables(), Simd_Vectorize_Scalar_Reduction(), Simd_Vectorize_SimdOp_And_Kids(), Simplify_Sink_Out_Code(), Single_Definition_Temp(), Sink_Out_Sandwiched_Statement(), Sink_Sandwiched_Code_In(), Sinkable_Into_Loop(), SNL_All_Parallelizable(), SNL_Auto_Parallelization(), SNL_Distribute(), SNL_Expand_Reduction_Deps(), SNL_Fix_Array_Deps_On_Index_Variable(), SNL_GEN_2D_Regtile(), SNL_GEN_Protect_Nest_With_Conditionals(), SNL_GEN_U_Ctiling(), SNL_Good_Perm_Loops(), SNL_Has_Sandwiched_Code(), SNL_Hoist_Messy_Bounds(), SNL_Inner_Exit_Count(), SNL_Inner_Machine_Cost(), SNL_INV_Cache_Block(), SNL_INV_Get_Next_Outermost_Loop(), SNL_INV_Local_Permute_Loops(), SNL_INV_Scalar_Expand_Tile(), SNL_INV_SE_Distribute(), SNL_INV_Transforms(), SNL_Is_Scalar_Expandable(), SNL_Legal_Perm_Scalar(), SNL_Legal_Tile_Scalars(), SNL_Lift_Lego_Tile_Loops_Once(), SNL_Lift_Lego_Tile_Loops_Shifts(), SNL_Peel_Iteration(), SNL_Rebuild_Access_Arrays(), SNL_Regtile_Loop(), SNL_SPL_Loop_Is_Inner_Tile(), SNL_SPL_Split_Tile_Sets(), SNL_Transform(), Sort_Equivalence_Class(), Split_Array(), Split_Region(), Statement_Sinkable_Out_Of_Loop(), Steady_Base(), Stid_Comes_From_Loop(), Substitute_Array(), SX_INFO::SX_INFO(), Tile_Loop(), Transform_Code(), Transform_Expression(), TRANSPOSE_DIRECTED_GRAPH16::Transpose(), Try_Hoist_Expression(), Twod_Setbound(), UBvar(), Unify_Loop(), Unrolled_DU_Update(), SUMMARIZE< program >::Update_Addr_Passed_Count(), Update_Caller_MP_Pragmas(), AEQUIV::Update_Code(), Update_MP_Local_Var(), Update_Nest_Depth_Traverse(), ACCESS_VECTOR::Update_Non_Const_Loops(), ACCESS_ARRAY::Update_Non_Const_Loops(), Upper_Bound_Standardize(), UT_Generate_Imperfect_If_Code(), Version_and_Splice_Loop(), Version_Loop_Pair(), vintr_fis_separate_loop_and_scalar_expand(), Vintrinsic_Fission(), ARA_LOOP_INFO::Walk_Loop(), Walk_Loop_Dependence(), ARA_LOOP_INFO::Walk_Rhs(), WB_ancestors(), WB_parent(), While_Before_Do(), Wind_Down(), Wind_Down_Parent(), wn_dumpexpr(), Wn_Is_Above(), WN_is_in_pragma(), Wn_Is_Inside(), WN_is_istore_or_mstore(), and WN_Whirl_Linenum().
| #define LWN_ITER WN_ITER |
Definition at line 388 of file lwn_util.h.
Referenced by Array_Defs(), BS_Has_Use_In_Subscript(), cl(), Contains_Vertex(), ARA_LOOP_INFO::Default_For_Bad_Loop(), Do_Loop_Explicit_Affinity(), Do_Loop_Implicit_Affinity(), Enter_Scalar_Expandable_Refs(), Estimate_Cycles(), Exp_Node_Varies_In_Loop(), FB_Sanity_Check(), Find_Lego_Base_Exp(), Find_Loop_N_Inside(), Freeze_Numthreads_Ldid(), Generate_If_Accesses(), Good_for_gath(), Has_Calls(), Has_Lego_Mp_Loops(), HMB_Find_Messy_Subscripts(), HMB_Hoist_Easy_Messy_Subscripts(), HMB_Invariant_In_Loop(), Hoist_Iload_Ldid_Upper_Bound_One_Level(), Hoist_Point(), Innermore_Parallel_Loop(), Innermore_Parallel_Or_Lego_Loop(), Inv_Dep_Info(), Invariant_Loops(), IPA_LNO_Find_Formal_Value(), IPA_LNO_Reassign_Unsummarized_Calls(), COND_BOUNDS_INFO::Kill_Written_Symbols(), Lego_Contains_Non_Index_Ldid(), Lego_Loop_Want_Skew(), Lego_Simplify_Loop(), Lego_Skew_Loop(), Loop_Has_Asm(), LWN_Copy_Tree_With_High_Defs(), Machine_Cost_Calls(), SD_INFO::Make_Sd_Info(), Maybe_Assigned(), Maybe_Assigned_Exp_Traverse(), movable_if_test(), Mp_Collapse_Dependences(), Mp_Collapse_Loop_Heads(), Mp_Collapse_Loop_Statements(), Mp_Extract_Bogus_Do_Acrosses(), Mp_Fix_Ref_Array_Aliases(), Mp_Version_Loop(), Mp_Version_Parallel_Region(), Num_Inner_Loops(), PAR_STAT::Num_Refs(), Patch_Uses_In_Loop(), Print_Goto_Lines(), Print_Prompf_Nest_Log(), Prompf_Mp_Version(), SD_INFO::Push_Memory_Nodes(), Red_Dep_Info(), ARA_LOOP_INFO::Reduction_List(), PAR_STAT::Reduction_List(), Remove_Dead_Single_Defs(), Remove_Privatizable_DU_Copy_Arcs(), Remove_Unity_Trip_Loop_Dep_Update(), Remove_Unity_Trip_Loop_Loop_Stmt_Update(), Remove_Unity_Trip_Loop_Update_If_Accesses(), Remove_Unity_Trip_Loop_Update_Is_Inner(), Repair_Bad_Dependences(), Save_Corresponding_Loops(), Scalar_Defs(), Scalar_Equivalence_Class(), Scalar_Expand(), Scalar_Store_Hoist_Place(), Scl_Dep_Info(), SE_Assign_Lexcounts(), SE_Find_Def(), Set_Loop_Statements(), SNL_ANAL_INFO::SNL_ANAL_INFO(), SNL_Bad_Array_Footprints(), SNL_Change_Reduction_Loop_Stmts(), SNL_Distribute(), SNL_Inner_Machine_Cost(), SNL_Is_Distributable_Tree(), SNL_Legal_Tile_Arrays(), SNL_Legal_Tile_Scalars(), Update_Def_List_Loop_Stmt(), ARA_LOOP_INFO::Walk_Block(), Walk_Loop_Dependence(), ARA_LOOP_INFO::Walk_Rhs(), WB_defs_loop(), WB_Prompf_Map(), WB_Set_Map_Id(), WB_TXT_deps_loop(), WB_uses_loop(), and WN_Single_Iteration_Cost().
Definition at line 331 of file lwn_util.h.
Referenced by Add_To_Symbol(), Constant_Propogate(), Convert_Alloca_To_Intrinsic(), Convert_Dealloca_To_Intrinsic(), DISTR_ARRAY::Convert_Expr_To_Symbol(), Convert_Intrinsic_To_Alloca_Dealloca(), Copy_Array(), Copy_Array_Section(), Copy_Loads_In_Bound(), copy_propagation(), Create_Unroll_Copy(), Fold_Base(), Fold_Offset(), Forward_Substitute_Ldids(), Fuse(), Gather_Scatter_Scalar_Expand(), Gen_Alloc_DART(), Gen_Alloc_Reshape(), Gen_Call_Array(), Gen_Call_Array_Arg(), Gen_Call_Array_Cart(), Gen_Call_Array_Dart_Args(), Gen_Compare_DARTS(), Gen_Dealloc_DART(), Gen_Init_DART(), Gen_Lookup_DART(), Gen_Malloc_Cart(), PF_LG::Gen_Pref_Node(), Generate_Assignment_Stmt(), Generate_Dynamic_Bounds(), ARA_LOOP_INFO::Generate_Parallel_Pragma(), Generate_Runtime_Cyclic_Bounds(), Generate_Simple_Bounds(), Get_Expansion_Space(), HMB_Add_Guard_Condition(), HMB_Hoist_Expressions(), HMB_Replace_Messy_Bounds(), Hoist_Expression(), Hoist_Iload_Ldid_Upper_Bound_One_Level(), HoistIf(), HoistIf_Replace_Symbol(), IFMM_Convert(), Increase_By(), Instrument_Address(), Lego_Fix_Local_Rec(), Lego_Skew_Loop(), ARRAY_LOWER_REF::Lower_Array_Expr(), Lower_Distr_Pragmas(), LWN_CreateCompgoto(), LWN_CreateCondbr(), LWN_CreateDO(), LWN_CreateDoWhile(), LWN_CreateEval(), LWN_CreateIf(), LWN_CreateIstore(), LWN_CreateLoopInfo(), LWN_CreateMstore(), LWN_CreateStid(), LWN_CreateWhileDo(), LWN_Extract_From_Block(), LWN_Insert_Block_After(), LWN_Insert_Block_Before(), LWN_Int_Type_Conversion(), LWN_Parentize(), LWN_Parentize_One_Level(), LWN_Simplify_Tree(), Mark_Code(), Mark_Dos(), MIR_Replace(), Mp_Coordinate_Call(), Mp_Layout_Call(), Numprocs(), Perform_Gather_Scatter(), Pre_loop_peeling(), IPO_INLINE::Process_Alloca_Postamble(), Process_Store(), Processor_Update_Outer_Tile(), Promote_Pointer(), Prune_Redundant_Trues(), Read_Pragma_Page_Place(), Read_Pragma_Thread_Affinity(), Redundant_Condition(), Remove_Unity_Trip_Loop(), Replace_Equality_Check(), Replace_Scalar_Store_With_Array_Store(), Replace_WN(), Replace_Wnexp_With_Exp_Copy(), Reset_param_list(), Rewrite_Bounds(), RV_Reverse_Index_Ldid(), scalar_rename(), SE_Array(), SE_Iload(), SE_Istore(), SE_Wrap_Array(), Separate(), Set_Array_Dim(), Simd(), Simd_Align_Generate_Peel_Loop(), Simd_Finalize_Loops(), Simd_Replace_With_Constant(), Simd_Unroll_Statement(), Simd_Vectorize_Scalar_Reduction(), SNL_GEN_2D_Regtile(), SNL_INV_Cache_Block(), SNL_INV_Local_Permute_Loops(), SNL_Optimize_Bounds(), SNL_Regtile_Loop(), SNL_SPL_Fix_First_Outer_Loop_Limits(), SNL_SPL_Fix_Inner_Loop_Limits(), SNL_SPL_Fix_Second_Outer_Loop_Limits(), SNL_SPL_Propagate_Tiled_Lower_Bound(), Sort_Equivalence_Class(), Split_Array(), PF_LOOPNODE::Split_Loops(), STD_Canonicalize_Upper_Bound(), Step_Size(), Substitute_Array(), Transform_Code(), Twod_Setbound(), Upper_Bound_Standardize(), UT_Generate_Imperfect_If_Code(), and Wind_Down().
| #define LWN_WALK_Abort WN_WALK_Abort |
Definition at line 395 of file lwn_util.h.
Referenced by Find_Loop_N_Inside(), Good_for_gath(), and movable_if_test().
| #define LWN_WALK_SCFIter WN_WALK_SCFIter |
| #define LWN_WALK_SCFNext WN_WALK_SCFNext |
| #define LWN_WALK_StmtIter WN_WALK_StmtIter |
Definition at line 393 of file lwn_util.h.
Referenced by ARA_LOOP_INFO::Default_For_Bad_Loop(), and ARA_LOOP_INFO::Walk_Block().
| #define LWN_WALK_StmtNext WN_WALK_StmtNext |
Definition at line 394 of file lwn_util.h.
Referenced by ARA_LOOP_INFO::Default_For_Bad_Loop(), and ARA_LOOP_INFO::Walk_Block().
| #define LWN_WALK_TreeIter WN_WALK_TreeIter |
Definition at line 389 of file lwn_util.h.
Referenced by Array_Defs(), BS_Has_Use_In_Subscript(), cl(), Contains_Vertex(), ARA_LOOP_INFO::Default_For_Bad_Loop(), Do_Loop_Explicit_Affinity(), Do_Loop_Implicit_Affinity(), Enter_Scalar_Expandable_Refs(), Estimate_Cycles(), Exp_Node_Varies_In_Loop(), FB_Sanity_Check(), Find_Lego_Base_Exp(), Freeze_Numthreads_Ldid(), Generate_If_Accesses(), Good_for_gath(), Has_Calls(), Has_Lego_Mp_Loops(), HMB_Find_Messy_Subscripts(), HMB_Hoist_Easy_Messy_Subscripts(), HMB_Invariant_In_Loop(), Hoist_Iload_Ldid_Upper_Bound_One_Level(), Hoist_Point(), Innermore_Parallel_Loop(), Innermore_Parallel_Or_Lego_Loop(), Inv_Dep_Info(), Invariant_Loops(), IPA_LNO_Find_Formal_Value(), IPA_LNO_Reassign_Unsummarized_Calls(), COND_BOUNDS_INFO::Kill_Written_Symbols(), Lego_Contains_Non_Index_Ldid(), Lego_Loop_Want_Skew(), Lego_Simplify_Loop(), Lego_Skew_Loop(), Loop_Has_Asm(), LWN_Copy_Tree_With_High_Defs(), Machine_Cost_Calls(), SD_INFO::Make_Sd_Info(), Maybe_Assigned(), Maybe_Assigned_Exp_Traverse(), movable_if_test(), Mp_Collapse_Dependences(), Mp_Collapse_Loop_Heads(), Mp_Collapse_Loop_Statements(), Mp_Extract_Bogus_Do_Acrosses(), Mp_Fix_Ref_Array_Aliases(), Mp_Version_Loop(), Mp_Version_Parallel_Region(), Num_Inner_Loops(), PAR_STAT::Num_Refs(), Patch_Uses_In_Loop(), Print_Goto_Lines(), Print_Prompf_Nest_Log(), Prompf_Mp_Version(), SD_INFO::Push_Memory_Nodes(), Red_Dep_Info(), ARA_LOOP_INFO::Reduction_List(), PAR_STAT::Reduction_List(), Remove_Dead_Single_Defs(), Remove_Privatizable_DU_Copy_Arcs(), Remove_Unity_Trip_Loop_Dep_Update(), Remove_Unity_Trip_Loop_Loop_Stmt_Update(), Remove_Unity_Trip_Loop_Update_If_Accesses(), Remove_Unity_Trip_Loop_Update_Is_Inner(), Repair_Bad_Dependences(), Save_Corresponding_Loops(), Scalar_Defs(), Scalar_Equivalence_Class(), Scalar_Expand(), Scalar_Store_Hoist_Place(), Scl_Dep_Info(), SE_Assign_Lexcounts(), SE_Find_Def(), Set_Loop_Statements(), SNL_ANAL_INFO::SNL_ANAL_INFO(), SNL_Bad_Array_Footprints(), SNL_Change_Reduction_Loop_Stmts(), SNL_Distribute(), SNL_Inner_Machine_Cost(), SNL_Is_Distributable_Tree(), SNL_Legal_Tile_Arrays(), SNL_Legal_Tile_Scalars(), Update_Def_List_Loop_Stmt(), Walk_Loop_Dependence(), ARA_LOOP_INFO::Walk_Rhs(), WB_defs_loop(), WB_Prompf_Map(), WB_Set_Map_Id(), WB_TXT_deps_loop(), WB_uses_loop(), and WN_Single_Iteration_Cost().
| #define LWN_WALK_TreeNext WN_WALK_TreeNext |
Definition at line 390 of file lwn_util.h.
Referenced by Array_Defs(), BS_Has_Use_In_Subscript(), cl(), Contains_Vertex(), ARA_LOOP_INFO::Default_For_Bad_Loop(), Do_Loop_Explicit_Affinity(), Do_Loop_Implicit_Affinity(), Enter_Scalar_Expandable_Refs(), Estimate_Cycles(), Exp_Node_Varies_In_Loop(), FB_Sanity_Check(), Find_Lego_Base_Exp(), Freeze_Numthreads_Ldid(), Generate_If_Accesses(), Good_for_gath(), Has_Calls(), Has_Lego_Mp_Loops(), HMB_Find_Messy_Subscripts(), HMB_Hoist_Easy_Messy_Subscripts(), HMB_Invariant_In_Loop(), Hoist_Iload_Ldid_Upper_Bound_One_Level(), Hoist_Point(), Innermore_Parallel_Loop(), Innermore_Parallel_Or_Lego_Loop(), Inv_Dep_Info(), Invariant_Loops(), IPA_LNO_Reassign_Unsummarized_Calls(), COND_BOUNDS_INFO::Kill_Written_Symbols(), Lego_Contains_Non_Index_Ldid(), Lego_Loop_Want_Skew(), Lego_Simplify_Loop(), Lego_Skew_Loop(), Loop_Has_Asm(), LWN_Copy_Tree_With_High_Defs(), Machine_Cost_Calls(), SD_INFO::Make_Sd_Info(), Maybe_Assigned(), Maybe_Assigned_Exp_Traverse(), movable_if_test(), Mp_Collapse_Dependences(), Mp_Collapse_Loop_Heads(), Mp_Collapse_Loop_Statements(), Mp_Extract_Bogus_Do_Acrosses(), Mp_Fix_Ref_Array_Aliases(), Mp_Version_Loop(), Mp_Version_Parallel_Region(), Num_Inner_Loops(), PAR_STAT::Num_Refs(), Patch_Uses_In_Loop(), Print_Goto_Lines(), Print_Prompf_Nest_Log(), Prompf_Mp_Version(), SD_INFO::Push_Memory_Nodes(), Red_Dep_Info(), ARA_LOOP_INFO::Reduction_List(), PAR_STAT::Reduction_List(), Remove_Dead_Single_Defs(), Remove_Privatizable_DU_Copy_Arcs(), Remove_Unity_Trip_Loop_Dep_Update(), Remove_Unity_Trip_Loop_Loop_Stmt_Update(), Remove_Unity_Trip_Loop_Update_If_Accesses(), Remove_Unity_Trip_Loop_Update_Is_Inner(), Repair_Bad_Dependences(), Save_Corresponding_Loops(), Scalar_Defs(), Scalar_Equivalence_Class(), Scalar_Expand(), Scalar_Store_Hoist_Place(), Scl_Dep_Info(), SE_Assign_Lexcounts(), SE_Find_Def(), Set_Loop_Statements(), SNL_ANAL_INFO::SNL_ANAL_INFO(), SNL_Bad_Array_Footprints(), SNL_Change_Reduction_Loop_Stmts(), SNL_Distribute(), SNL_Inner_Machine_Cost(), SNL_Is_Distributable_Tree(), SNL_Legal_Tile_Arrays(), SNL_Legal_Tile_Scalars(), Update_Def_List_Loop_Stmt(), Walk_Loop_Dependence(), ARA_LOOP_INFO::Walk_Rhs(), WB_defs_loop(), WB_Prompf_Map(), WB_Set_Map_Id(), WB_TXT_deps_loop(), WB_uses_loop(), and WN_Single_Iteration_Cost().
Referenced by Fiz_Fuse().
Definition at line 958 of file lwn_util.cxx.
References FALSE, LWN_Get_Parent, and TRUE.
Referenced by Find_Param_Num(), Guard_A_Do(), DEPV_COMPUTE::Same_Monotonic(), Variant_Array(), and PF_LOOPNODE::Volume_Within_While().
Definition at line 1667 of file lwn_util.cxx.
Referenced by Post_loop_peeling(), Pre_loop_peeling(), and SNL_Peel_Iteration().
Definition at line 895 of file lwn_util.cxx.
References BOOL, INT, Is_True, LWN_Check_Parentize(), LWN_Get_Parent, OPC_BLOCK, OPC_REGION, OPCODE_is_leaf(), OPCODE_name(), TRUE, WN_first(), WN_kid(), WN_kid_count(), WN_next(), WN_opcode(), and WN_region_body.
Referenced by Gen_Symbols_In_DINFO(), Lego_Lower_Pragmas(), Lego_Read_Pragmas(), LWN_Check_Parentize(), Minvariant_Removal(), MIR_Try_Hoist(), Phase_123(), Prefetch_Auto(), SNL_INV_Cache_Block(), SNL_INV_Local_Permute_Loops(), SNL_INV_Register_Tile(), SNL_INV_Transforms(), and PF_LOOPNODE::Split_Loops().
Definition at line 375 of file lwn_util.h.
Referenced by Fuse(), Hoist_Conditionals(), Instrument_Address(), Perform_Gather_Scatter(), Process_Store(), separate_loop_by_scc(), SNL_GEN_Protect_Nest_With_Conditionals(), SNL_INV_Cache_Block(), SNL_Regtile_Loop(), SNL_SPL_Fix_Second_Outer_Loop_Limits(), SNL_SPL_Propagate_Tiled_Lower_Bound(), PF_LOOPNODE::Split_Loops(), and Transform_Code().
Definition at line 1666 of file lwn_util.cxx.
Referenced by PF_LOOPNODE::Add_Ref(), Convert_Alloca_To_Intrinsic(), Convert_Dealloca_To_Intrinsic(), copy_propagation(), Fuse(), Gather_Scatter_Scalar_Expand(), PF_LG::Gen_Pref_Node(), Get_Expansion_Space(), Hoist_Conditionals(), Increase_By(), MIR_Replace(), Perform_Gather_Scatter(), Post_loop_peeling(), Pre_loop_peeling(), Process_Store(), Replace_Scalar_Store_With_Array_Store(), Replace_Wnexp_With_Exp_Copy(), SE_Iload(), SE_Istore(), Simd(), SNL_GEN_2D_Regtile(), SNL_INV_Cache_Block(), SNL_SPL_Fix_Inner_Loop_Limits(), PF_LOOPNODE::Split_Loops(), STD_Canonicalize_Upper_Bound(), Transform_Code(), Twod_Setbound(), Upper_Bound_Standardize(), UT_Generate_Imperfect_If_Code(), and Vintrinsic_Fission().
Definition at line 333 of file lwn_util.h.
References OPCODE_has_next_prev(), WN_linenum(), and WN_opcode().
Referenced by Convert_Alloca_To_Intrinsic(), Convert_Dealloca_To_Intrinsic(), Copy_Array(), Copy_Array_Section(), Copy_Loads_In_Bound(), EC_Array_Portion_Calls(), Find_Compare_Value(), Fuse(), Gather_Scatter_Scalar_Expand(), Gen_Call_Array(), Gen_CheckNo_DART(), Gen_Init_DART(), Gen_Malloc_Cart(), Get_Expansion_Space(), HoistIf_Optimize(), HoistIf_Replace_Symbol(), MIR_Replace(), Mp_Layout_Lego_Layout(), Perform_Gather_Scatter(), Post_loop_peeling(), Pre_loop_peeling(), Processor_Update_Outer_Tile(), Replace_Equality_Check(), Rewrite_Bounds(), SE_Istore(), Separate(), SNL_Distribute(), SNL_GEN_2D_Regtile(), SNL_GEN_Protect_Nest_With_Conditionals(), SNL_GEN_U_Ctiling(), SNL_INV_Cache_Block(), Split_Array(), Thread_Affinity_Lower(), Transform_Code(), Twod_Setbound(), and UT_Generate_Imperfect_If_Code().
| WN* LWN_Copy_Tree | ( | WN * | wn, | |
| BOOL | copy_access = FALSE, |
|||
| WN_MAP | access_map = 0, |
|||
| BOOL | copy_version = FALSE, |
|||
| WN_MAP | version_map = 0, |
|||
| BOOL | copy_all_nodes = FALSE | |||
| ) |
Definition at line 612 of file lwn_util.cxx.
References BOOL, CXX_DELETE, CXX_NEW, FALSE, LWN_Copy_Tree_R(), Malloc_Mem_Pool, NULL, result, and WN_Simplifier_Enable().
Referenced by PF_LOOPNODE::Add_Ref(), DISTR_ARRAY::Array_Size_WN(), BND_Max_Expr(), BND_Min_Expr(), canonicalize_if_condition(), Convert_Do_Loops_Conditionals(), DISTR_ARRAY::Convert_Expr_To_Symbol(), Copy_Array(), Copy_Array_Section(), Create_ILoad_From_IStore(), Create_Initialize_Loop(), ARRAY_LOWER_REF::Create_Local_Block_Dim(), LEGO_INFO::Create_Local_Index(), ARA_LOOP_INFO::Create_Old_IF_Clause(), Create_Positive_Divceil(), ARRAY_LOWER_REF::Create_Remote_Blkcyc_Dim(), ARRAY_LOWER_REF::Create_Remote_Block_Dim(), ARRAY_LOWER_REF::Create_Remote_Cyclic_Dim(), Create_Shackle_If_Per_Stmt(), Create_Simple_Shackle_Loops(), ARRAY_LOWER_REF::Create_Star_Dim(), Create_Stride1_Condition_If_Required(), Create_Tmp_Array(), DISTR_INFO::DART_Ldid(), DISTR_INFO::Dimsize_Ldid(), EC_Array_Portion_Calls(), Eliminate_Dead_Do(), SHACKLE_INFO::Expr_Lower(), SHACKLE_INFO::Expr_Upper(), Extended_Lower_Bound(), Extended_Upper_Bound(), Fast_32_Rem(), Finalize_Index_Variable(), Finalize_Index_Variable_For_Remove_Unity_Trip_Loop(), DISTR_INFO::Find_Alloca(), Find_Compare_Value(), Forward_Substitute_Ldids(), Fuse(), Gather_Scatter_Scalar_Expand(), Gen_Alloc_Reshape(), Gen_Init_DART(), PF_LG::Gen_Pref_Node(), Generate_Blkcyc_Bounds(), Generate_Block_Bounds(), Generate_Block_Bounds_Negative(), ARA_LOOP_INFO::Generate_Copyout_Loop(), Generate_Cyclic_Bounds(), Generate_Dynamic_Bounds(), Generate_Guard_Test(), Generate_Interleaved_Bounds(), ARA_LOOP_INFO::Generate_Parallel_Pragma(), Generate_Runtime_Cyclic_Bounds(), Generate_Simple_Bounds(), Get_Array_Dimension_LB(), Get_Array_Dimension_Size(), Guard_A_Do(), Guard_Test_Redundant(), Handle_Sink_General_Case(), Handle_Sink_Promotion_Case(), HMB_Add_Guard_Condition(), HMB_Hoist_Messy_Bounds(), HMB_Replace_Messy_Bounds(), Hoist_Expression(), HoistIf_Optimize(), HoistIf_Replace_Symbol(), Initialize_Doacross_Last_Local_Index(), Instrument_Address(), Interleaved_Pragma_Chunksize(), Is_Vectorizable_Loop(), Lego_Skew_Index(), Lego_Skew_Loop(), Lego_Skew_Offset(), DISTR_INFO::Load_Distr_Array(), ARRAY_LOWER_REF::Lower_Array_Expr(), Lower_Distr_Pragmas(), Lower_Single_Array_Dim(), LWN_Copy_Tree_With_High_Defs(), LWN_CreateDO(), Mark_Dos(), Maybe_Handle_Sink_Promotion_Case(), MIR_Replace(), Move_To_PU_Pragma_List(), Mp_Collapse_Loop_Heads(), Mp_Version_Loop(), Mp_Version_Parallel_Region(), New_DACT(), DISTR_INFO::Numprocs_Ldid(), Outer_Loop_Fusion_Walk(), Parallelize_Doacross_Loop(), Perform_Gather_Scatter(), Post_loop_peeling(), Pre_loop_peeling(), Propagate_Loop_Index(), Prune_Redundant_Trues(), Read_Pragma_Page_Place(), Read_Pragma_Thread_Affinity(), ARA_LOOP_INFO::Reduction_List(), Remove_Unity_Trip_Loop(), Replace_Equality_Check(), Replace_Scalar_Store_With_Array_Store(), Replace_Wnexp_With_Exp_Copy(), return_upper_boundplus1(), RR_Map_Setup_Traverse(), RV_Reverse_Index_Ldid(), SA_Loop_Has_Dependence_Cycles(), SE_Array(), SE_Guard_Tests(), SE_Indxs_and_Bounds(), SE_Lower_Bound(), SE_Upper_Bound(), SE_Wrap_Array(), Separate(), Simd(), Simd_Align_Analysis(), Simd_Align_Generate_Peel_Loop(), Simd_Create_Remainder_Loop(), Simd_Finalize_Loops(), Simd_Unroll_Statement(), Simd_Vectorize_Induction_Variables(), Simd_Vectorize_Scalar_Reduction(), SNL_Access_Index_Section(), SNL_Access_Linear_Section(), SNL_Access_Nonlinear_Section(), SNL_Copy_Exp(), SNL_Distribute(), SNL_GEN_2D_Regtile(), SNL_GEN_Protect_Nest_With_Conditionals(), SNL_INV_Cache_Block(), SNL_Optimize_UB_With_Access_Vectors(), SNL_Peel_Iteration(), SNL_Regtile_Loop(), SNL_SPL_Fix_Inner_Loop_Limits(), SNL_SPL_Loop_Is_Inner_Tile(), SNL_SPL_Propagate_Tiled_Lower_Bound(), SNL_SPL_Split_Tile_Sets(), SNL_TRANS_INDEX_DATA::SNL_TRANS_INDEX_DATA(), Split_Array(), PF_LOOPNODE::Split_Loops(), Substitute_Array(), Transform_Code(), Trip_Count(), Trip_Reduce_Loop(), True_Bound(), Unroll_Loop_By_Trip_Count(), UT_Generate_Imperfect_If_Code(), Version_Loop(), Version_Region(), Vintrinsic_Fission(), and Wind_Down().
Definition at line 1447 of file lwn_util.cxx.
References LWN_Parentize_One_Level(), and WN_CreateCvtl.
Definition at line 1318 of file lwn_util.cxx.
References Be_Type_Tbl, FALSE, FmtAssert, i, INT, INTRN_I4DIVCEIL, INTRN_I8DIVCEIL, INTRN_U4DIVCEIL, INTRN_U8DIVCEIL, LWN_CreateParm(), LWN_Parentize_One_Level(), MTYPE_I4, MTYPE_I8, MTYPE_U4, MTYPE_U8, MTYPE_V, OPCODE_make_op(), OPR_INTRINSIC_OP, OPR_PARM, TYPE_ID, WN_Create_Intrinsic, WN_operator(), WN_PARM_BY_VALUE, and WN_rtype().
Referenced by Freeze_Numthreads_Ldid(), Generate_Blkcyc_Bounds(), Generate_Block_Bounds(), Generate_Block_Bounds_Negative(), Rewrite_Bounds(), Sh_LWN_CreateDivceil(), and Solve_For().
Definition at line 1361 of file lwn_util.cxx.
References Be_Type_Tbl, FALSE, FmtAssert, i, INT, INTRN_I4DIVFLOOR, INTRN_I8DIVFLOOR, INTRN_U4DIVFLOOR, INTRN_U8DIVFLOOR, LWN_CreateParm(), LWN_Parentize_One_Level(), MTYPE_I4, MTYPE_I8, MTYPE_U4, MTYPE_U8, MTYPE_V, OPCODE_make_op(), OPR_INTRINSIC_OP, OPR_PARM, TYPE_ID, WN_Create_Intrinsic, WN_operator(), WN_PARM_BY_VALUE, and WN_rtype().
Referenced by Generate_Blkcyc_Bounds(), Generate_Block_Bounds(), Generate_Block_Bounds_Negative(), Rewrite_Bounds(), Sh_LWN_CreateDivfloor(), SNL_Optimize_LB_With_Access_Vectors(), SNL_Optimize_UB_With_Access_Vectors(), and Solve_For().
Definition at line 1173 of file lwn_util.cxx.
References LWN_Copy_Tree(), LWN_CreateLoopInfo(), LWN_Set_Parent, NULL, and WN_CreateDO.
Referenced by Copy_Array(), Copy_Array_Section(), Create_Initialize_Loop(), Create_Simple_Shackle_Loops(), Separate(), SNL_Distribute(), SNL_GEN_U_Ctiling(), SNL_INV_Cache_Block(), and Thread_Affinity_Lower().
Definition at line 1197 of file lwn_util.cxx.
References LWN_Set_Parent, and WN_CreateDoWhile.
Referenced by Parallelize_Doacross_Loop().
Definition at line 1410 of file lwn_util.cxx.
References LWN_Parentize_One_Level(), and WN_CreateExp1.
Referenced by Cast_Float_Operands(), ARA_LOOP_INFO::Create_New_IF_Clause(), Execution_Cost_Value(), Fast_32_Div(), Fast_32_Rem(), Finalize_Index_Variable(), LWN_Integer_Cast(), MIR_Replace(), Mp_Version_Loop(), Mp_Version_Parallel_Region(), Post_loop_peeling(), Promote_Pointer(), scalar_rename(), Simd_Handle_Negative_Coefficient(), Simd_Mark_Code(), Simd_Vectorize_Induction_Variables(), Simd_Vectorize_Invariants(), Simd_Vectorize_Scalar_Reduction(), Transform_Code(), and WN_Single_Iteration_Cost().
Definition at line 1417 of file lwn_util.cxx.
References LWN_Parentize_One_Level(), and WN_CreateExp2.
Referenced by Add_Condition(), Add_To_Symbol(), AWN_Binary(), BND_Max_Expr(), BND_Min_Expr(), Copy_Array(), Copy_Array_Section(), Create_array(), Create_Initialize_Loop(), ARA_LOOP_INFO::Create_New_IF_Clause(), ARA_LOOP_INFO::Create_Old_IF_Clause(), Create_Shackle_If_Per_Stmt(), Create_Simple_Shackle_Loops(), Create_Tmp_Array(), Create_Unroll_Copy(), Execution_Cost_Expr(), Extended_Lower_Bound(), Extended_Upper_Bound(), Fast_32_Div(), Fast_32_Rem(), Finalize_Index_Variable(), Finalize_Index_Variable_For_Remove_Unity_Trip_Loop(), Find_Compare_Value(), Fold_Base(), Fold_Offset(), Fuse(), Gather_Scatter_Scalar_Expand(), PF_LG::Gen_Pref_Node(), Generate_Blkcyc_Bounds(), Generate_Block_Bounds(), Generate_Block_Bounds_Negative(), ARA_LOOP_INFO::Generate_Copyout_Loop(), Generate_Cyclic_Bounds(), Generate_Guard_Test(), Generate_Interleaved_Bounds(), ARA_LOOP_INFO::Generate_Parallel_Pragma(), Generate_Simple_Bounds(), generate_tree_add(), generate_tree_from_bounds_info_row(), HMB_Add_Guard_Condition(), IFMM_Convert(), Increase_By(), Initialize_Pdo_Last_Local_Index(), Lego_Index_From_Access_Vector(), Lego_Skew_Index(), Lego_Skew_Loop(), Lego_Skew_Offset(), Mp_Nested_Last_Thread(), Mp_Version_Loop(), Mp_Version_Parallel_Region(), Parallelize_Doacross_Loop(), Perform_Gather_Scatter(), Post_loop_peeling(), Pre_loop_peeling(), Processor_Update_Outer_Tile(), Promote_Pointer(), Read_Pragma_Thread_Affinity(), Replace_Equality_Check(), Rewrite_Bounds(), RV_Reverse_Index_Ldid(), SE_Array(), SE_Findxs(), SE_Indxs_and_Bounds(), SE_Wrap_Array(), Simd_Align_Analysis(), Simd_Align_Generate_Peel_Loop(), Simd_Finalize_Loops(), Simd_Handle_Negative_Coefficient(), Simd_Update_Copy_Array_Index(), Simd_Vectorize_Scalar_Reduction(), SNL_GEN_2D_Regtile(), SNL_GEN_Protect_Nest_With_Conditionals(), SNL_INV_Cache_Block(), SNL_Opr(), SNL_Optimize_Bounds(), SNL_Optimize_UB_With_Access_Vectors(), SNL_SPL_Fix_First_Outer_Loop_Limits(), SNL_TRANS_INDEX_DATA::SNL_TRANS_INDEX_DATA(), PF_LOOPNODE::Split_Loops(), STD_Canonicalize_Upper_Bound(), Thread_Affinity_Lower(), Transform_Code(), Trip_Reduce_Loop(), Twod_Setbound(), Upper_Bound_Standardize(), UT_Generate_Imperfect_If_Code(), Vintrinsic_Fission(), and WN_Single_Iteration_Cost().
Definition at line 1213 of file lwn_util.cxx.
References LWN_Set_Parent, and WN_CreateIf.
Referenced by Convert_Do_Loops_Conditionals(), Create_Shackle_If_Per_Stmt(), Create_Simple_Shackle_Loops(), Extended_Lower_Bound(), Extended_Upper_Bound(), Generate_Guard_Test(), Guard_A_Do(), Guard_Test_Redundant(), Handle_Sink_Promotion_Case(), HMB_Compound_Guard_Test(), HMB_Simple_Guard_Test(), Initialize_Pdo_Last_Local_Index(), Maybe_Handle_Sink_Promotion_Case(), Mp_Version_Loop(), Mp_Version_Parallel_Region(), Parallelize_Doacross_Loop(), Post_loop_peeling(), Pre_loop_peeling(), Read_Pragma_Thread_Affinity(), Rewrite_Bounds(), SE_Guard_Tests(), SNL_GEN_2D_Regtile(), SNL_GEN_Protect_Nest_With_Conditionals(), SNL_Peel_Iteration(), PF_LOOPNODE::Split_Loops(), UT_Generate_Imperfect_If_Code(), Version_Loop(), and Version_Region().
Definition at line 1425 of file lwn_util.cxx.
References LWN_CreateIload(), LWN_Parentize_One_Level(), UINT, and WN_CreateIload.
Referenced by DISTR_ARRAY::Convert_Expr_To_Symbol(), Copy_Array(), Copy_Array_Section(), Create_Array_Load(), Create_ILoad_From_IStore(), Gather_Scatter_Scalar_Expand(), Gen_Symbols_In_DINFO(), ARRAY_LOWER_REF::Lower_Array_Expr(), LWN_CreateIload(), Numprocs(), Parallelize_Doacross_Loop(), SE_Iload(), and Split_Array().
Definition at line 1246 of file lwn_util.cxx.
References LWN_CreateIstore(), LWN_Set_Parent, UINT, and WN_CreateIstore.
Referenced by Copy_Array(), Copy_Array_Section(), Create_Array_Store(), Create_Initialize_Loop(), EC_Array_Portion_Calls(), Gather_Scatter_Scalar_Expand(), Gen_Init_DART(), LWN_CreateIstore(), MIR_Replace(), SE_Istore(), and Split_Array().
Definition at line 1300 of file lwn_util.cxx.
References Alias_Mgr, Copy_alias_info(), Is_True, OPR_LDID, OPR_STID, WN_CreateLdid, WN_field_id(), WN_offset(), WN_operator(), WN_st(), and WN_ty().
Referenced by Copy_Array(), Copy_Array_Section(), Create_Initialize_Loop(), Create_Shackle_If_Per_Stmt(), Create_Simple_Shackle_Loops(), Fuse(), Gather_Scatter_Scalar_Expand(), generate_tree_add(), Get_Expansion_Space(), Handle_Sink_General_Case(), HMB_Hoist_Expressions(), HMB_Replace_Messy_Bounds(), Hoist_Iload_Ldid_Upper_Bound_One_Level(), Lego_Index_From_Access_Vector(), Parallelize_Doacross_Loop(), Perform_Gather_Scatter(), Processor_Update_Inner_Tile(), Rewrite_Bounds(), SE_Findxs(), SE_Identity(), SE_Indxs_and_Bounds(), SNL_GEN_2D_Regtile(), SNL_INV_Cache_Block(), SNL_SPL_Fix_Second_Outer_Loop_Limits(), SNL_TRANS_INDEX_DATA::SNL_TRANS_INDEX_DATA(), PF_LOOPNODE::Split_Loops(), Substitute_Array(), and Wind_Down().
Definition at line 1187 of file lwn_util.cxx.
References LWN_Set_Parent, and WN_CreateLoopInfo.
Referenced by LWN_CreateDO(), and Mark_Dos().
Definition at line 1439 of file lwn_util.cxx.
References LWN_Parentize_One_Level(), and WN_CreateMload.
Definition at line 1454 of file lwn_util.cxx.
References LWN_Parentize_One_Level(), and WN_CreateParm.
Referenced by Instrument_Address(), LWN_CreateDivceil(), and LWN_CreateDivfloor().
Referenced by PF_LOOPNODE::Add_Ref(), and PF_LG::Gen_Pref_Node().
| WN* LWN_CreateReturn | ( | ) |
Definition at line 1229 of file lwn_util.cxx.
References WN_CreateReturn.
Referenced by Return_Node().
Definition at line 1271 of file lwn_util.cxx.
References LWN_Set_Parent, and WN_CreateStid.
Referenced by AWN_StidIntoSym(), DISTR_ARRAY::Convert_Expr_To_Symbol(), Copy_Array(), Copy_Array_Section(), Copy_Loads_In_Bound(), Create_Initialize_Loop(), Create_Simple_Shackle_Loops(), Finalize_Index_Variable(), Finalize_Index_Variable_For_Remove_Unity_Trip_Loop(), Fuse(), Gather_Scatter_Scalar_Expand(), Gen_Alloc_DART(), Gen_Alloc_Reshape(), Gen_Lookup_DART(), Gen_Symbols_In_DINFO(), Get_Expansion_Space(), HMB_Hoist_Expressions(), HMB_Replace_Messy_Bounds(), Hoist_Iload_Ldid_Upper_Bound_One_Level(), MIR_Replace(), Parallelize_Doacross_Loop(), Perform_Gather_Scatter(), IPO_INLINE::Process_Alloca_Preamble(), Process_Store(), Read_Pragma_Thread_Affinity(), Rewrite_Bounds(), SE_Identity(), Transform_Code(), and Twod_Setbound().
Definition at line 1279 of file lwn_util.cxx.
References Alias_Mgr, Copy_alias_info(), Is_True, LWN_Set_Parent, OPR_LDID, OPR_STID, WN_CreateStid, WN_field_id(), WN_offset(), WN_operator(), WN_st(), and WN_ty().
Definition at line 1205 of file lwn_util.cxx.
References LWN_Set_Parent, and WN_CreateWhileDo.
Referenced by Dismantle_Do().
Definition at line 533 of file lwn_util.cxx.
References PROMPF_INFO::Elimination(), FmtAssert, INT, PROMPF_INFO::Is_Enabled(), Is_True, LWN_Get_Parent, node, NULL, OPC_BLOCK, OPC_DO_LOOP, OPCODE_is_scf(), OPCODE_is_stmt(), Prompf_Id_Map, Prompf_Info, WN_Delete, WN_first(), WN_last(), WN_MAP32_Get, WN_MAP32_Set, WN_next(), WN_opcode(), and WN_prev().
Referenced by copy_propagation(), Dismantle_Do(), Fuse(), LWN_Delete_Tree(), LWN_Process_FF_Pragmas_Walk_r(), Mark_Code(), Move_To_PU_Pragma_List(), and Parallelize_Doacross_Loop().
Definition at line 973 of file lwn_util.cxx.
References Current_Map_Tab, PROMPF_INFO::Elimination(), i, INT, PROMPF_INFO::Is_Enabled(), Is_True, LWN_Delete_From_Block(), LWN_Delete_Tree(), LWN_Get_Parent, NULL, opc, OPC_BLOCK, OPC_DO_LOOP, OPC_REGION, OPR_BLOCK, prev, Prompf_Id_Map, Prompf_Info, RID_Delete(), WN_Delete, WN_first(), WN_kid(), WN_kid_count(), WN_MAP32_Get, WN_MAP32_Set, WN_next(), WN_opcode(), and WN_operator().
Referenced by BS_Substitute(), ARA_LOOP_INFO::Const_Work_Estimate(), Constant_Propogate(), Convert_Alloca_To_Intrinsic(), Convert_Dealloca_To_Intrinsic(), Convert_Intrinsic_To_Alloca_Dealloca(), Create_Simple_Shackle_Loops(), DISTR_ARRAY::DACT_Equiv(), DISTR_INFO::DART_Stid(), Delete_Unused_Labels(), DISTR_INFO::Dimsize_Stid(), Dismantle_Nested_Region(), Execution_Cost(), Extract_Branch(), Forward_Substitute_Ldids(), Freeze_Numthreads_Ldid(), FS_Substitute(), Fuse(), Gather_Scatter_Scalar_Expand(), PF_LG::Gen_Pref_Node(), Generate_Blkcyc_Bounds(), ARA_LOOP_INFO::Generate_Copyout_Loop(), Generate_Interleaved_Bounds(), ARA_LOOP_INFO::Generate_Parallel_Pragma(), Guard_Test_Redundant(), HMB_Hoist_Expressions(), HMB_Hoist_Messy_Bounds(), HMB_Replace_Messy_Bounds(), HoistIf_Optimize(), HoistIf_Walk(), IFMM_Convert(), Insert_Sink_Code(), Inter_Iteration_Cses_Loop(), Lego_Fix_Local_Rec(), Lego_Mp_Tile(), Lego_OZero_Driver(), Lego_Simplify(), Lego_Skew_Loop(), Lego_Tile(), Lnoptimizer(), ARRAY_LOWER_REF::Lower_Array_Expr(), ARRAY_LOWER_REF::Lower_Array_Param(), Lower_Bound_In_Affinity_Range(), Lower_Single_Array_Dim(), LWN_Delete_Tree(), LWN_Delete_Tree_From_Block(), Mark_Code(), Mark_Dos(), MIR_Replace(), Mp_Collapse_Loop_Heads(), Mp_Compress_Nested_Loop(), Mp_Convert_To_Single_Loop(), Mp_Extract_Bogus_Do_Across(), Mp_Extract_Nested_Pragmas(), Mp_Extract_Parallel_Directives(), Mp_Insert_Bounds_Code(), Mp_Layout_Lego_Layout(), Mp_Nested_Last_Thread(), Mp_Remove_Onto_Pragmas(), Mp_Tile(), Mp_Trip_Count(), Mp_Version_Loop(), Mp_Version_Parallel_Region(), DISTR_INFO::Numprocs_Stid(), Parallelize_Doacross_Loop(), Perform_ARA_and_Parallelization(), Perform_Gather_Scatter(), Post_loop_peeling(), Pre_loop_peeling(), Process_If(), Process_Store(), Processor_Update_Inner_Tile(), Processor_Update_Outer_Tile(), Propagate_Loop_Index(), Prune_Redundant_Trues(), ARA_LOOP_INFO::Reduction_List(), Remove_Dead_Single_Defs(), Remove_Redundant_Stids(), Remove_Unity_Trip_Loop(), Remove_Zero_Trip_Loop(), Replace_Scalar_Store_With_Array_Store(), Replace_Wnexp_With_Exp_Copy(), Rewrite_Bounds(), RV_Reverse_Index_Ldid(), Scalar_Expand(), SE_Guard_Tests(), SE_Iload(), Shackle_LWN_Delete_Tree(), Simd_Vectorize_Scalar_Reduction(), Simplify_Sink_Out_Code(), SNL_GEN_2D_Regtile(), SNL_GEN_Protect_Nest_With_Conditionals(), SNL_INV_Cache_Block(), SNL_Optimize_LB_With_Access_Vectors(), SNL_Optimize_UB_With_Access_Vectors(), SNL_Peel_Iteration(), SNL_Regtile_Loop(), SNL_SPL_Fix_Inner_Loop_Limits(), SNL_SPL_Fix_Second_Outer_Loop_Limits(), SNL_SPL_Propagate_Tiled_Lower_Bound(), SNL_SPL_Split_Tile_Sets(), Step_Size(), Substitute_Array(), Trip_Reduce_Loop(), AEQUIV::Update_Code(), Upper_Bound_In_Affinity_Range(), Version_Loop_Pair(), Vintrinsic_Fission(), Wind_Down(), DISTR_INFO::~DISTR_INFO(), and SNL_TRANS_INDEX_DATA::~SNL_TRANS_INDEX_DATA().
Definition at line 603 of file lwn_util.cxx.
References LWN_Delete_Tree(), and LWN_Extract_From_Block().
Referenced by Delete_Distr_Pragmas(), Error_Check_MP_Pragmas(), Gen_CheckNo_DART(), Lego_Fix_Local_Rec(), Outer_Loop_Fusion_Walk(), Read_Distr_Pragmas(), Read_Pragma_Affinity(), Read_Pragma_Distribute(), Read_Pragma_Distribute_Reshape(), Read_Pragma_Page_Place(), and Read_Pragma_Redistribute().
Definition at line 521 of file lwn_util.cxx.
References FmtAssert, LWN_Get_Parent, LWN_Set_Parent, NULL, and WN_EXTRACT_FromBlock().
Definition at line 514 of file lwn_util.cxx.
References LWN_Get_Parent, LWN_Set_Parent, NULL, and WN_EXTRACT_FromBlock().
Referenced by analyze_stmts_in_func_for_if(), BS_Substitute(), Create_Simple_Shackle_Loops(), Create_Single_Region(), Delete_MP_Region(), Dismantle_Nested_Region(), Eliminate_Dead_If(), Extract_Branch(), Fission_Statement(), Forward_Substitute_Ldids(), Freeze_Numthreads_Ldid(), FS_Substitute(), ARA_LOOP_INFO::Generate_Copyout_Loop(), Generate_Interleaved_Bounds(), ARA_LOOP_INFO::Generate_Parallel_Pragma(), Generate_Sink_Out_Code(), Guard_A_Do(), Guard_Test_Redundant(), Handle_Sink_General_Case(), Handle_Sink_Inconsistent_Case(), Handle_Sink_Redundant_Case(), Handle_Sink_Symbolic_Non_Promotion_Case(), HMB_Compound_Guard_And_Hoist(), HMB_Compound_Guard_Test(), HMB_Hoist_Messy_Bounds(), HMB_Simple_Guard_Test(), Hoist_Conditionals(), Hoist_Necessary_Code_Up(), Hoist_Statement(), IFMM_Convert(), Initialize_Pdo_Last_Local_Index(), Insert_Sink_Code(), Largest_Empty_Subtree(), LWN_Create_Block_From_Stmts_Above(), LWN_Create_Block_From_Stmts_Below(), LWN_Delete_Tree_From_Block(), LWN_Process_FF_Pragmas_Walk_r(), MIR_Replace(), Move_Adjacent(), Move_Alloca(), Mp_Collapse_Loop_Heads(), Mp_Convert_To_Single_Loop(), Mp_Extract_Bogus_Do_Across(), Mp_Extract_Nested_Pragmas(), Mp_Extract_Parallel_Directives(), Mp_Insert_Bounds_Code(), Mp_Layout_Lego_Layout(), Mp_Nested_Last_Thread(), Mp_Remove_Nested_Region(), Mp_Remove_Onto_Pragmas(), Mp_Version_Loop(), Mp_Version_Parallel_Region(), Post_loop_peeling(), Pre_loop_peeling(), Process_If(), Process_Store(), Processor_Update_Inner_Tile(), Processor_Update_Outer_Tile(), Remove_Redundant_Stids(), Remove_Unity_Trip_Loop(), Remove_Zero_Trip_Loop(), Replace_Scalar_Store_With_Array_Store(), Reset_param_list(), SE_Istore(), Separate(), Separate_And_Update(), separate_loop_and_scalar_expand(), separate_loop_by_scc(), simd_fis_separate_loop_and_scalar_expand(), Simd_Vectorize_Scalar_Reduction(), Simplify_Sink_Out_Code(), Sink_If2do(), Sink_Out_Sandwiched_Statement(), Sink_Sandwiched_Code_In(), SNL_Distribute(), SNL_GEN_2D_Regtile(), SNL_GEN_Protect_Nest_With_Conditionals(), SNL_GEN_U_Ctiling(), SNL_INV_Cache_Block(), SNL_INV_Local_Permute_Loops(), SNL_Peel_Iteration(), Thread_Affinity_Lower(), toplogical_reordering(), Version_Loop(), Version_Loop_Pair(), Version_Region(), and vintr_fis_separate_loop_and_scalar_expand().
Definition at line 293 of file lwn_util.cxx.
References INT, Is_True, LWN_Get_Parent, NULL, OPC_BLOCK, OPCODE_is_scf(), WN_first(), WN_kid(), WN_kid_count(), WN_next(), and WN_opcode().
Referenced by Find_SCF_Inside().
Definition at line 182 of file lwn_util.cxx.
References exit(), INT, Is_True, LWN_Get_Parent, NULL, OPC_BLOCK, OPCODE_is_expression(), OPCODE_is_scf(), OPCODE_is_stmt(), printf(), WN_first(), WN_kid(), WN_kid_count(), WN_next(), and WN_opcode().
Referenced by Call_Info_Walk(), Doacross_Init(), Lower_Distr_Pragmas(), New_DACT(), Read_Distr_Pragmas(), Read_Pragma_Distribute(), Read_Pragma_Distribute_Reshape(), Read_Pragma_Page_Place(), and Read_Pragma_Redistribute().
Definition at line 105 of file lwn_util.cxx.
References INT, Is_True, LWN_Get_Parent, NULL, OPC_BLOCK, OPCODE_is_leaf(), WN_first(), WN_kid(), WN_kid_count(), WN_next(), and WN_opcode().
Referenced by LWN_Get_Next_Expr_Node().
Definition at line 1165 of file lwn_util.cxx.
References LWN_Get_Parent, OPCODE_is_scf(), OPCODE_is_stmt(), and WN_opcode().
Referenced by Hoist_Inner_Invar(), Is_Consistent_Condition(), MIR_Replace(), Transform_Code(), and Transform_Expression().
Definition at line 447 of file lwn_util.cxx.
References first, Is_True, last, LWN_Get_Parent, LWN_Set_Parent, NULL, OPC_BLOCK, OPCODE_is_scf(), OPCODE_is_stmt(), OPR_BLOCK, WN_Delete, WN_first(), WN_last(), WN_next(), WN_opcode(), WN_operator(), and WN_prev().
Referenced by Convert_Do_Loops_Conditionals(), DISTR_ARRAY::Convert_Expr_To_Symbol(), Create_Initialize_Loop(), Create_Shackle_If_Per_Stmt(), Create_Simple_Shackle_Loops(), Create_Single_Region(), Dismantle_Nested_Region(), EC_Array_Portion_Calls(), Eliminate_Dead_Do(), Eliminate_Dead_If(), Extended_Lower_Bound(), Extended_Upper_Bound(), Finalize_Index_Variable(), Finalize_Index_Variable_For_Remove_Unity_Trip_Loop(), Fission_Statement(), Freeze_Cur_Numthreads_Func(), Gather_Scatter_Scalar_Expand(), Gen_Alloc_DART(), Gen_Alloc_Reshape(), Gen_Call_Array(), Gen_Call_Array_Cart(), Gen_CheckNo_DART(), Gen_Compare_DARTS(), Gen_Dealloc_DART(), Gen_HT_DART(), Gen_Init_DART(), Gen_Lookup_DART(), Gen_Migrate_Array(), Gen_Symbols_In_DINFO(), Generate_Blkcyc_Bounds(), Generate_Block_Bounds(), Generate_Block_Bounds_Negative(), ARA_LOOP_INFO::Generate_Copyout_Loop(), Generate_Cyclic_Bounds(), Generate_Guard_Test(), Generate_Interleaved_Bounds(), ARA_LOOP_INFO::Generate_Parallel_Pragma(), Generate_Sink_Out_Code(), Get_Expansion_Space(), Guard_A_Do(), Guard_Test_Redundant(), Handle_Sink_General_Case(), Handle_Sink_Promotion_Case(), HMB_Compound_Guard_And_Hoist(), HMB_Compound_Guard_Test(), HMB_Hoist_Messy_Bounds(), HMB_Simple_Guard_Test(), Hoist_Conditionals(), Hoist_Expression(), Hoist_Iload_Ldid_Upper_Bound_One_Level(), Initialize_Pdo_Last_Local_Index(), Insert_Sink_Code(), Lower_Distr_Pragmas(), LWN_Create_Block_From_Stmts_Above(), Maybe_Handle_Sink_Promotion_Case(), MIR_Replace(), Move_Adjacent(), Mp_Extract_Nested_Pragmas(), Mp_Remove_Nested_Region(), Mp_Version_Loop(), Mp_Version_Parallel_Region(), New_DACT(), Numprocs(), Parallelize_Doacross_Loop(), Post_loop_peeling(), IPO_INLINE::Process_Alloca_Postamble(), IPO_INLINE::Process_Copy_In_Copy_Out(), Process_Store(), Read_Pragma_Page_Place(), Read_Pragma_Thread_Affinity(), Remove_Unity_Trip_Loop(), Rename_Update_MP_Region(), Return_Node(), Rewrite_Bounds(), SA_Version_F90_Loops_For_Contiguous(), Scalar_Expand(), SE_Final_Value(), SE_Guard_Tests(), Separate(), separate_loop_by_scc(), Simd_Finalize_Loops(), Simd_Unroll_Statement(), Simd_Vectorize_Induction_Variables(), Simd_Vectorize_Scalar_Reduction(), Sink_If2do(), Sink_Out_Sandwiched_Statement(), Sink_Sandwiched_Code_In(), SNL_Distribute(), SNL_GEN_2D_Regtile(), SNL_GEN_Protect_Nest_With_Conditionals(), SNL_GEN_U_Ctiling(), SNL_INV_Cache_Block(), SNL_INV_Local_Permute_Loops(), SNL_Peel_Iteration(), SNL_Regtile_Loop(), SNL_SPL_Split_Tile_Sets(), Transform_Code(), Unroll_Loop_By_Trip_Count(), UT_Generate_Imperfect_If_Code(), Version_and_Splice_Loop(), Version_Loop(), Version_Loop_Pair(), Version_Region(), and Wind_Down().
Definition at line 380 of file lwn_util.cxx.
References first, Is_True, last, LWN_Get_Parent, LWN_Set_Parent, NULL, OPC_BLOCK, OPCODE_is_scf(), OPCODE_is_stmt(), WN_Delete, WN_first(), WN_last(), WN_next(), WN_opcode(), and WN_prev().
Referenced by Add_Doacross_Comments(), Add_Parallel_Region_Comments(), Add_Pragma_To_MP_Region(), PF_LOOPNODE::Add_Ref(), Assign_Doacross_Mpnums(), Assign_Parallel_Region_Mpnums(), Convert_Alloca_To_Intrinsic(), Convert_Dealloca_To_Intrinsic(), DISTR_ARRAY::Convert_Expr_To_Symbol(), Convert_Intrinsic_To_Alloca_Dealloca(), Copy_Array(), Copy_Array_Section(), Copy_Loads_In_Bound(), Copy_Non_Constant_Parm(), Create_Initialize_Loop(), LEGO_INFO::Create_Local_Index(), Create_Simple_Shackle_Loops(), Create_Single_Region(), Create_Unroll_Copy(), Delete_MP_Region(), Dismantle_Do(), ARRAY_DESCRIPTOR::Distribute_Array(), Extract_Branch(), Finalize_Index_Variable(), Finalize_Index_Variable_For_Remove_Unity_Trip_Loop(), Freeze_Cur_Numthreads_Func(), Freeze_Numthreads_Ldid(), Fuse(), Gather_Scatter_Scalar_Expand(), Gen_HT_DART(), Gen_Malloc_Cart(), Gen_Migrate_Array(), PF_LG::Gen_Pref_Node(), Generate_Blkcyc_Bounds(), Generate_Block_Bounds(), Generate_Block_Bounds_Negative(), ARA_LOOP_INFO::Generate_Copyout_Loop(), Generate_Cyclic_Bounds(), Generate_Dynamic_Bounds(), ARA_LOOP_INFO::Generate_Parallel_Pragma(), Generate_Runtime_Cyclic_Bounds(), Generate_Simple_Bounds(), Get_Expansion_Space(), Get_Runtime_Numthreads_Ldid_From_Func(), Guard_A_Do(), Guard_Test_Redundant(), Handle_Sink_General_Case(), Handle_Sink_Redundant_Case(), Handle_Sink_Symbolic_Non_Promotion_Case(), HMB_Hoist_Expressions(), HMB_Replace_Messy_Bounds(), Hoist_Conditionals(), Hoist_Expression(), Hoist_Necessary_Code_Up(), Hoist_Statement(), HoistIf(), IFMM_Convert(), Initialize_Doacross_Last_Local_Index(), Initialize_Pdo_Last_Local_Index(), Instrument_Address(), IPO_propagate_globals(), LNO_Insert_Pragmas(), Lower_Distr_Pragmas(), LWN_Create_Block_From_Stmts_Below(), LWN_Process_FF_Pragmas_Walk_r(), MIR_Replace(), Move_Adjacent(), Move_Alloca(), Move_To_PU_Pragma_List(), Mp_Collapse_Loop_Heads(), Mp_Coordinate_Call(), Mp_Coordinate_Copy_Out_Coordinates(), Mp_Extract_Bogus_Do_Across(), Mp_Extract_Parallel_Directives(), Mp_Insert_Bounds_Code(), Mp_Layout_Call(), Mp_Layout_Copy_In_Onto(), Mp_Layout_Copy_Out_Layout(), Mp_Layout_Lego_Layout(), Mp_Nested_Last_Thread(), Numprocs(), Parallelize_Doacross_Loop(), Perform_Gather_Scatter(), Post_loop_peeling(), Pre_loop_peeling(), Process_Actual(), IPO_INLINE::Process_Alloca_Preamble(), IPO_INLINE::Process_Barriers(), IPO_INLINE::Process_Copy_In(), IPO_INLINE::Process_Copy_In_Copy_Out(), Process_If(), Process_Store(), Processor_Update_Inner_Tile(), Processor_Update_Outer_Tile(), Propagate_Constants(), Read_Pragma_Data_Affinity(), Read_Pragma_Thread_Affinity(), Remove_Unity_Trip_Loop(), Remove_Zero_Trip_Loop(), Replace_Scalar_Store_With_Array_Store(), Reset_param_list(), Rewrite_Bounds(), RR_Map_Setup_Traverse(), Scalar_Expand(), SE_Istore(), Separate_And_Update(), separate_loop_and_scalar_expand(), separate_loop_by_scc(), Simd_Align_Generate_Peel_Loop(), simd_fis_separate_loop_and_scalar_expand(), Simd_Vectorize_Induction_Variables(), Simd_Vectorize_Scalar_Reduction(), Sink_If2do(), SNL_Distribute(), SNL_GEN_2D_Regtile(), SNL_INV_Cache_Block(), SNL_Peel_Iteration(), SNL_Regtile_Loop(), Split_Array(), PF_LOOPNODE::Split_Loops(), Thread_Affinity_Lower(), toplogical_reordering(), Transform_Code(), Twod_Setbound(), UT_Generate_Imperfect_If_Code(), vintr_fis_separate_loop_and_scalar_expand(), and Vintrinsic_Fission().
Definition at line 1473 of file lwn_util.cxx.
References FmtAssert, LWN_Set_Parent, OPCODE_name(), OPR_CVT, OPR_CVTL, WN_Int_Type_Conversion(), WN_kid0(), WN_opcode(), and WN_operator().
Referenced by Gather_Scatter_Scalar_Expand(), generate_tree_add(), Process_Store(), Replace_Wnexp_With_Exp_Copy(), and SE_Indxs_and_Bounds().
Definition at line 868 of file lwn_util.cxx.
References INT, LWN_Parentize(), LWN_Set_Parent, OPC_BLOCK, OPCODE_is_leaf(), WN_first(), WN_kid(), WN_kid_count(), WN_next(), and WN_opcode().
Referenced by Add_Condition(), Add_To_Symbol(), analyze_stmts_in_func_for_if(), Anl_Static_Analysis(), BND_Max_Expr(), DISTR_ARRAY::Convert_Expr_To_Symbol(), Convert_Intrinsic_To_Alloca_Dealloca(), Convert_Le_With_Floor_2Lt(), Create_array(), Create_Array_Load(), Create_Array_Store(), Create_Initialize_Loop(), Create_Shackle_If_All_Stmts(), Create_Simple_Shackle_Loops(), Create_Single_Region(), Create_Unroll_Copy(), ARRAY_DESCRIPTOR::Distribute_Array(), Fuse(), Gen_CheckNo_DART(), ARA_LOOP_INFO::Generate_Copyout_Loop(), ARA_LOOP_INFO::Generate_Parallel_Pragma(), Generate_Simple_Bounds(), Get_Expansion_Space(), HoistIf(), HoistIf_Optimize(), IPA_Propagate_Constants(), IPO_propagate_globals(), Lnoptimizer(), Lower_Single_Array_Dim(), LWN_Parentize(), LWN_Simplify_Tree(), Mark_Dos(), Mp_Collapse_Loop_Heads(), Mp_Version_Loop(), Mp_Version_Parallel_Region(), New_DACT(), Numprocs(), Parallelize_Doacross_Loop(), Phase_123(), Post_loop_peeling(), Pre_loop_peeling(), SUMMARIZE< program >::Process_procedure(), Propagate_Constants(), Remove_Floor_From_One_Sided_Cond(), Replace_Equality_Check(), return_upper_bound(), SA_Version_F90_Loops_For_Contiguous(), separate_loop_and_scalar_expand(), separate_loop_by_scc(), SHACKLE_Phase(), Simd(), Simd_Align_Generate_Peel_Loop(), Simd_Finalize_Loops(), simd_fis_separate_loop_and_scalar_expand(), Simd_Handle_Negative_Coefficient(), Simd_Mark_Code(), Simd_Unroll_Statement(), Simd_Vectorize_Induction_Variables(), Simd_Vectorize_Scalar_Reduction(), Simplify_Cond_With_Div_Floor(), Simplify_Cond_With_Floor(), Solve_For(), Split_Region(), SUMMARIZE< program >::Summarize(), vintr_fis_separate_loop_and_scalar_expand(), and Vintrinsic_Fission().
Definition at line 376 of file lwn_util.h.
Referenced by SNL_GEN_2D_Regtile(), SNL_INV_Cache_Block(), SNL_INV_Local_Permute_Loops(), SNL_Regtile_Loop(), SNL_SPL_Split_Tile_Sets(), Unroll_Loop_By_Trip_Count(), and Wind_Down().
Definition at line 1668 of file lwn_util.cxx.
Referenced by SNL_Regtile_Loop(), SNL_SPL_Split_Tile_Sets(), PF_LOOPNODE::Split_Loops(), Unroll_Loop_By_Trip_Count(), and Wind_Down().
Definition at line 374 of file lwn_util.h.
Referenced by SNL_GEN_U_Ctiling(), SNL_INV_Cache_Block(), and Tile_Loop().
Definition at line 1665 of file lwn_util.cxx.
Referenced by BS_Replace_Load(), BS_Replace_Store(), FS_Array_Substitute(), FS_Substitute(), and SNL_Peel_Iteration().
Definition at line 1691 of file lwn_util.cxx.
References i, INT, LWN_Get_Parent, LWN_Parentize(), LWN_Set_Parent, WN_kid(), WN_kid_count(), and WN_Simplify_Tree().
Referenced by HMB_Simple_Guard_And_Hoist(), IFMM_Convertible(), Lego_Skew_Loop(), and RV_Simplify_Indicies().
Definition at line 1507 of file lwn_util.cxx.
References FALSE, i, INT, NULL, OPC_BLOCK, Tree_Equiv(), TRUE, WN_Equiv(), WN_first(), WN_kid(), WN_kid_count(), WN_next(), and WN_opcode().
Definition at line 161 of file lnopt_main.cxx.
1.5.6