SNL_NEST_INFO Module Reference

#include <snl_nest.h>

Collaboration diagram for SNL_NEST_INFO:

Collaboration graph
[legend]

Public Member Functions

 SNL_NEST_INFO (WN *outer, INT nloops, MEM_POOL *pool, BOOL inner_only)
 ~SNL_NEST_INFO ()
DOLOOP_STACKDostack ()
const DOLOOP_STACKDostack () const
INT Nloops () const
INT Nloops_General () const
INT Nloops_Invariant () const
INTNloops_Invariant ()
INT Depth_Inner () const
INT Num_Bad () const
SNL_BOUNDS_INFOBi ()
const SNL_BOUNDS_INFOBi () const
BOOL Above_Is_Distributable () const
BOOL Below_Is_Distributable () const
MEM_POOLPool () const
BOOL Innermost () const
void Print (FILE *) const
void Exclude_Outer_Loops (INT how_many)
SX_INFOPrivatizability_Info ()
const SX_INFOPrivatizability_Info () const
SNL_LOOP_PROBLEM_INFO Problem (INT depth) const

Private Member Functions

void Make_Privatizability_Info_Handle_Def (WN *, INT)
void Make_Privatizability_Info_Handle_Use (WN *, INT, HASH_TABLE< WN *, BOOL > *)
void Make_Privatizability_Info_Walk (WN *, INT, HASH_TABLE< WN *, BOOL > *)
void Make_Privatizability_Info ()
 SNL_NEST_INFO (const SNL_NEST_INFO &i)

Private Attributes

INT _nloops
INT _num_bad
INT _depth_inner
MEM_POOL_pool
DOLOOP_STACK _dostack
SX_INFO _privatizability_info
BOOL _innermost
INT _nloops_invariant
SNL_BOUNDS_INFO_bi
INT _nloops_general
BOOL _above_is_distributable
BOOL _below_is_distributable
SNL_LOOP_PROBLEM_INFO_problem

Detailed Description

Definition at line 100 of file snl_nest.h.


Constructor & Destructor Documentation

SNL_NEST_INFO::SNL_NEST_INFO ( WN outer,
INT  nloops,
MEM_POOL pool,
BOOL  inner_only 
)

Definition at line 215 of file snl_nest.cxx.

References _above_is_distributable, _below_is_distributable, _bi, _depth_inner, _dostack, _innermost, _nloops, _nloops_general, _nloops_invariant, _num_bad, _privatizability_info, _problem, SNL_BOUNDS_INFO::Add_Access(), SYSTEM_OF_EQUATIONS::Add_Vars(), BOOL, STACK< T >::Bottom_nth(), SNL_BOUNDS_INFO::Bounds(), Build_Doloop_Stack(), SNL_BOUNDS_INFO::Canonicize(), SNL_BOUNDS_INFO::Collect_Do_Info(), SNL_BOUNDS_INFO::Collect_Outer_Info(), SNL_BOUNDS_INFO::Conditionals(), ACCESS_VECTOR::Const_Offset, CXX_NEW, CXX_NEW_ARRAY, d, DIFFERENCE_EXEC_ALWAYS, DIFFERENCE_EXEC_NEVER, Difference_Inequality(), ACCESS_ARRAY::Dim(), Do_Loop_Depth(), Dostack(), STACK< T >::Elements(), FALSE, SX_INFO::First_Transformable_Depth(), FmtAssert, fprintf(), Get_Do_Loop_Info(), Good_Do_Depth(), i, ii, INT, SYSTEM_OF_EQUATIONS::Is_Consistent(), DO_LOOP_INFO::Is_Inner, last_iter, DO_LOOP_INFO::LB, LNO_MAX_DO_LOOP_DEPTH, ACCESS_VECTOR::Loop_Coeff(), SX_INFO::Make_Sx_Info(), MEM_POOL_Pop, MEM_POOL_Push, Name, ACCESS_VECTOR::Negate_Me(), NULL, SYSTEM_OF_EQUATIONS::Num_Vars(), ACCESS_ARRAY::Num_Vec(), SNL_BOUNDS_INFO::Outermost_Depth(), Pool(), SNL_BOUNDS_INFO::Print(), Print(), Privatizability_Info(), SYSTEM_OF_EQUATIONS::Remove_Last_Le(), snl_debug, SNL_DEBUG0, SNL_DEBUG1, SNL_Get_Inner_Snl_Loop(), SNL_Is_Distributable(), SNL_Is_Invariant(), SNL_Is_Transformable(), SNL_local_pool, SNL_LOOP_PROBLEM_DISTRIBUTION, SNL_LOOP_PROBLEM_INNER_DOES_NOT_GO, SNL_LOOP_PROBLEM_INNER_MIGHT_NOT_GO, SNL_LOOP_PROBLEM_NONE, SNL_LOOP_PROBLEM_SCALAR, SNL_MAX_LOOPS, SNL_Peel_Iteration(), TFile, TRUE, DO_LOOP_INFO::UB, wn, WN_index, WN_next_executable(), and WN_prev_executable().

SNL_NEST_INFO::~SNL_NEST_INFO (  ) 

Definition at line 96 of file snl_nest.cxx.

References _bi, _pool, and CXX_DELETE.

SNL_NEST_INFO::SNL_NEST_INFO ( const SNL_NEST_INFO i  )  [private]


Member Function/Subroutine Documentation

DOLOOP_STACK& SNL_NEST_INFO::Dostack (  )  [inline]

const DOLOOP_STACK& SNL_NEST_INFO::Dostack (  )  const [inline]

Definition at line 108 of file snl_nest.h.

References _dostack.

INT SNL_NEST_INFO::Nloops (  )  const [inline]

Definition at line 109 of file snl_nest.h.

References _nloops.

Referenced by Do_Automatic_Transformation(), and SNL_Transform().

INT SNL_NEST_INFO::Nloops_General (  )  const [inline]

INT SNL_NEST_INFO::Nloops_Invariant (  )  const [inline]

INT& SNL_NEST_INFO::Nloops_Invariant (  )  [inline]

Definition at line 112 of file snl_nest.h.

References _nloops_invariant.

INT SNL_NEST_INFO::Depth_Inner (  )  const [inline]

INT SNL_NEST_INFO::Num_Bad (  )  const [inline]

Definition at line 114 of file snl_nest.h.

References _num_bad.

SNL_BOUNDS_INFO* SNL_NEST_INFO::Bi (  )  [inline]

Definition at line 115 of file snl_nest.h.

References _bi.

Referenced by Do_Automatic_Transformation(), and SNL_GEN_Protect_Nest_With_Conditionals().

const SNL_BOUNDS_INFO* SNL_NEST_INFO::Bi (  )  const [inline]

Definition at line 116 of file snl_nest.h.

References _bi.

BOOL SNL_NEST_INFO::Above_Is_Distributable (  )  const [inline]

Definition at line 117 of file snl_nest.h.

References _above_is_distributable.

Referenced by Do_Automatic_Transformation().

BOOL SNL_NEST_INFO::Below_Is_Distributable (  )  const [inline]

Definition at line 119 of file snl_nest.h.

References _below_is_distributable.

Referenced by Do_Automatic_Transformation().

MEM_POOL* SNL_NEST_INFO::Pool (  )  const [inline]

Definition at line 121 of file snl_nest.h.

References _pool.

Referenced by SNL_NEST_INFO().

BOOL SNL_NEST_INFO::Innermost (  )  const [inline]

Definition at line 122 of file snl_nest.h.

References _innermost.

Referenced by SNL_Transform().

void SNL_NEST_INFO::Print ( FILE f  )  const

void SNL_NEST_INFO::Exclude_Outer_Loops ( INT  how_many  ) 

SX_INFO& SNL_NEST_INFO::Privatizability_Info (  )  [inline]

const SX_INFO& SNL_NEST_INFO::Privatizability_Info (  )  const [inline]

Definition at line 128 of file snl_nest.h.

References _privatizability_info.

SNL_LOOP_PROBLEM_INFO SNL_NEST_INFO::Problem ( INT  depth  )  const [inline]

Definition at line 131 of file snl_nest.h.

References _problem, NULL, and SNL_LOOP_PROBLEM_NONE.

Referenced by SNL_Transform().

void SNL_NEST_INFO::Make_Privatizability_Info_Handle_Def ( WN ,
INT   
) [private]

void SNL_NEST_INFO::Make_Privatizability_Info_Handle_Use ( WN ,
INT  ,
HASH_TABLE< WN *, BOOL > *   
) [private]

void SNL_NEST_INFO::Make_Privatizability_Info_Walk ( WN ,
INT  ,
HASH_TABLE< WN *, BOOL > *   
) [private]

void SNL_NEST_INFO::Make_Privatizability_Info (  )  [private]


Field Documentation

Definition at line 148 of file snl_nest.h.

Referenced by Exclude_Outer_Loops(), Nloops(), Print(), and SNL_NEST_INFO().

Definition at line 149 of file snl_nest.h.

Referenced by Num_Bad(), and SNL_NEST_INFO().

Definition at line 150 of file snl_nest.h.

Referenced by Depth_Inner(), Print(), and SNL_NEST_INFO().

Definition at line 151 of file snl_nest.h.

Referenced by Pool(), and ~SNL_NEST_INFO().

Definition at line 152 of file snl_nest.h.

Referenced by Dostack(), and SNL_NEST_INFO().

Definition at line 153 of file snl_nest.h.

Referenced by Print(), Privatizability_Info(), and SNL_NEST_INFO().

Definition at line 157 of file snl_nest.h.

Referenced by Innermost(), and SNL_NEST_INFO().

Definition at line 160 of file snl_nest.h.

Referenced by Exclude_Outer_Loops(), Nloops_Invariant(), Print(), and SNL_NEST_INFO().

Definition at line 163 of file snl_nest.h.

Referenced by Bi(), Exclude_Outer_Loops(), Print(), SNL_NEST_INFO(), and ~SNL_NEST_INFO().

Definition at line 164 of file snl_nest.h.

Referenced by Exclude_Outer_Loops(), Nloops_General(), Print(), and SNL_NEST_INFO().

Definition at line 165 of file snl_nest.h.

Referenced by Above_Is_Distributable(), Exclude_Outer_Loops(), Print(), and SNL_NEST_INFO().

Definition at line 166 of file snl_nest.h.

Referenced by Below_Is_Distributable(), Exclude_Outer_Loops(), Print(), and SNL_NEST_INFO().

Definition at line 167 of file snl_nest.h.

Referenced by Problem(), and SNL_NEST_INFO().


The documentation for this module was generated from the following files:

Generated on Wed Apr 8 17:07:10 2009 for Open64 by  doxygen 1.5.6