osprey/be/lno/fiz_fuse.h File Reference

#include "defs.h"
#include "cxx_template.h"
#include "wn.h"
#include "lnopt_main.h"
#include "lnoutils.h"
#include "ff_utils.h"

Include dependency graph for fiz_fuse.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Types

module  SNL_INFO
module  FIZ_FUSE_INFO

Enumerations

enum  SNL_TYPE { Invalid = 0, Non_SNL = 1, Not_Inner = 2, Inner = 3 }

Functions/Subroutines

FISSION_FUSION_STATUS Fuse_Level_By_Level (WN *loop1, WN *loop2, UINT *fusion_level, UINT peeling_limit, BOOL allow_partial_fusion=FALSE, BOOL allow_outer_peeling=FALSE, FIZ_FUSE_INFO *ffi=NULL)
FIZ_FUSE_INFOFiz_Fuse (WN *loop, FIZ_FUSE_INFO *snls, MEM_POOL *mpool)
FIZ_FUSE_INFOIf_While_Region_Fiz_Fuse (WN *wn, FIZ_FUSE_INFO *snls, MEM_POOL *mpool)


Enumeration Type Documentation

enum SNL_TYPE

Enumerator:
Invalid 
Non_SNL 
Not_Inner 
Inner 

Definition at line 54 of file fiz_fuse.h.


Function Documentation

FIZ_FUSE_INFO* Fiz_Fuse ( WN loop,
FIZ_FUSE_INFO snls,
MEM_POOL mpool 
)

Definition at line 808 of file fiz_fuse.cxx.

References Array_Dependence_Graph, BOOL, Cannot_Concurrentize(), FIZ_FUSE_INFO::Copy_Snl(), CXX_NEW, d1, d2, FIZ_FUSE_INFO::Delete_Last_Snl(), DevWarn, Do_Loop_Has_Calls(), Do_Loop_Has_Gotos(), Do_Loop_Is_Good(), Do_Loop_Is_Inner(), Do_Loop_Is_Mp(), Enclosing_Do_Loop(), FAIL, Failed, FALSE, Find_SCF_Inside(), Fission(), Fiz_Fuse(), fiz_fuse_analysis_info(), FIZ_FUSE_INFO::FIZ_FUSE_INFO(), fiz_fuse_tlog_info(), FmtAssert, DYN_ARRAY< T >::Free_array(), Fuse(), Fuse_Level_By_Level(), FIZ_FUSE_INFO::Get_Depth(), Get_Do_Loop_Info(), Get_Only_Loop_Inside(), FIZ_FUSE_INFO::Get_Type(), FIZ_FUSE_INFO::Get_Wn(), i, If_While_Region_Fiz_Fuse(), info, INFO, Inner, inside_parallelizable_loop(), INT, Invalid, DYN_ARRAY< T >::Lastidx(), LNO_Analysis, LNO_default_pool, LNO_Fission, LNO_Fusion, LNO_Fusion_Peeling_Limit, LNO_local_pool, LNO_Tlog, LWN_Get_Parent, MEM_POOL_Pop, MEM_POOL_Push, MIN, Move_Adjacent(), FIZ_FUSE_INFO::New_Snl(), DYN_ARRAY< T >::Newidx(), DO_LOOP_INFO::No_Fission, DO_LOOP_INFO::No_Fusion, Non_SNL, Not_Inner, NULL, FIZ_FUSE_INFO::Num_Snl(), opc, OPC_DO_LOOP, OPC_DO_WHILE, OPC_IF, OPC_REGION, OPC_WHILE_DO, DO_LOOP_INFO::Parallelizable, FIZ_FUSE_INFO::Set_Depth(), FIZ_FUSE_INFO::Set_Type(), FIZ_FUSE_INFO::Set_Wn(), SUCCEED, Succeeded, Succeeded_and_Inner_Loop_Removed, tmp, toplogical_reordering(), TRUE, Try_Level_By_Level, UINT, wn, WN_do_body, WN_first(), WN_Get_Linenum(), WN_next(), and WN_opcode().

Referenced by Fiz_Fuse(), Fiz_Fuse_Phase(), and If_While_Region_Fiz_Fuse().

FISSION_FUSION_STATUS Fuse_Level_By_Level ( WN loop1,
WN loop2,
UINT fusion_level,
UINT  peeling_limit,
BOOL  allow_partial_fusion = FALSE,
BOOL  allow_outer_peeling = FALSE,
FIZ_FUSE_INFO ffi = NULL 
)

FIZ_FUSE_INFO* If_While_Region_Fiz_Fuse ( WN wn,
FIZ_FUSE_INFO snls,
MEM_POOL mpool 
)


Generated on Wed Apr 8 14:33:07 2009 for Open64 by  doxygen 1.5.6