LOOPINFO Class Reference

#include <ipa_section.h>

Collaboration diagram for LOOPINFO:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 LOOPINFO (MEM_POOL *m)
 LOOPINFO (MEM_POOL *m, INT32 cd_idx)
MEM_POOLMem_Pool () const
void Set_Mem_Pool (MEM_POOL *m)
mINT8 Get_nest_level () const
void Set_nest_level (mINT8 level)
mINT8 Get_flags () const
void Set_flags (mINT8 f)
mINT16 Get_cd_idx () const
void Set_cd_idx (mINT16 cd_idx)
LINEXGet_upper_linex () const
LINEXGet_lower_linex () const
LINEXGet_step_linex () const
mINT32 Get_ub_term_index () const
mINT32 Get_lb_term_index () const
mINT32 Get_step_term_index () const
mUINT8 Get_ub_term_count () const
mUINT8 Get_lb_term_count () const
mUINT8 Get_step_term_count () const
void Set_ub_term_index (mINT16 i)
void Set_lb_term_index (mINT16 i)
void Set_step_term_index (mINT16 i)
void Set_ub_term_count (mUINT8 i)
void Set_lb_term_count (mUINT8 i)
void Set_step_term_count (mUINT8 i)
BOOL Is_messy_ub () const
BOOL Is_messy_lb () const
BOOL Is_messy_step () const
BOOL Is_messy_bounds () const
BOOL Is_messy_any_bounds () const
void Set_messy_ub ()
void Set_messy_lb ()
void Set_messy_step ()
void Set_messy_bounds ()
void Create_linex (TERM *term)
LINEXBuild_linex (ACCESS_VECTOR *av)
PROJECTED_KERNEL_ARRAYGet_kernels () const
void Add_bound (LINEX *l, SYSTEM_OF_EQUATIONS *soe, mUINT8 depth, INT num_dim, INT num_syms, LOOP_SYMBOL_ARRAY *sym)
void Print (FILE *fp=stderr)
void Print_file (FILE *fp=stderr)
void WB_Print (FILE *fp, INT loop_info_index)
LOOP_SYMBOL_ARRAYGet_symbol_array () const
LINEXMin_value ()
LINEXMax_value ()

Private Attributes

mINT8 _nest_level
mINT8 _flags
MEM_POOL_mem_pool
PROJECTED_KERNEL_ARRAY_kernel
union {
   struct {
      LINEX *   _upper_linex
      LINEX *   _lower_linex
      LINEX *   _step_linex
      LOOP_SYMBOL_ARRAY *   _symbols
      mINT16   _cd_idx
   }   u3
   struct {
      mINT16   _upper_index
      mINT16   _lower_index
      mINT16   _step_index
      mUINT8   _upper_count
      mUINT8   _lower_count
      mUINT8   _step_count
   }   u2
u1

Detailed Description

Definition at line 428 of file ipa_section.h.


Constructor & Destructor Documentation

LOOPINFO::LOOPINFO ( MEM_POOL m  )  [inline]

Definition at line 465 of file ipa_section.h.

References _mem_pool.

LOOPINFO::LOOPINFO ( MEM_POOL m,
INT32  cd_idx 
)

Definition at line 172 of file ipa_section.cxx.

References CXX_NEW, and u1.


Member Function Documentation

void LOOPINFO::Add_bound ( LINEX l,
SYSTEM_OF_EQUATIONS *  soe,
mUINT8  depth,
INT  num_dim,
INT  num_syms,
LOOP_SYMBOL_ARRAY sym 
)
LINEX * LOOPINFO::Build_linex ( ACCESS_VECTOR *  av  ) 

Definition at line 189 of file ipa_section.cxx.

References Access_vector_is_too_messy(), CXX_NEW, FALSE, LINEX::Map_access_vector(), Mem_Pool(), and NULL.

Here is the call graph for this function:

void LOOPINFO::Create_linex ( TERM term  ) 
mINT16 LOOPINFO::Get_cd_idx (  )  const [inline]

Definition at line 478 of file ipa_section.h.

References u1.

Referenced by Get_parent(), and Get_surrounding_loop_count().

mINT8 LOOPINFO::Get_flags (  )  const [inline]

Definition at line 475 of file ipa_section.h.

References _flags.

PROJECTED_KERNEL_ARRAY* LOOPINFO::Get_kernels (  )  const [inline]

Definition at line 518 of file ipa_section.h.

References _kernel.

Referenced by Print(), and PROJECTED_REGION::PROJECTED_REGION().

mUINT8 LOOPINFO::Get_lb_term_count (  )  const [inline]

Definition at line 489 of file ipa_section.h.

References u1.

Referenced by Create_linex(), Print_file(), and WB_Print().

mINT32 LOOPINFO::Get_lb_term_index (  )  const [inline]

Definition at line 486 of file ipa_section.h.

References u1.

Referenced by Create_linex(), Print_file(), and WB_Print().

LINEX* LOOPINFO::Get_lower_linex (  )  const [inline]

Definition at line 482 of file ipa_section.h.

References u1.

Referenced by Min_value(), Print(), and PROJECTED_KERNEL::Project().

mINT8 LOOPINFO::Get_nest_level (  )  const [inline]
LINEX* LOOPINFO::Get_step_linex (  )  const [inline]

Definition at line 483 of file ipa_section.h.

References u1.

Referenced by Print(), and PROJECTED_KERNEL::Project().

mUINT8 LOOPINFO::Get_step_term_count (  )  const [inline]

Definition at line 490 of file ipa_section.h.

References u1.

Referenced by Create_linex(), Print_file(), and WB_Print().

mINT32 LOOPINFO::Get_step_term_index (  )  const [inline]

Definition at line 487 of file ipa_section.h.

References u1.

Referenced by Create_linex(), Print_file(), and WB_Print().

LOOP_SYMBOL_ARRAY* LOOPINFO::Get_symbol_array (  )  const [inline]

Definition at line 533 of file ipa_section.h.

References u1.

mUINT8 LOOPINFO::Get_ub_term_count (  )  const [inline]

Definition at line 488 of file ipa_section.h.

References u1.

Referenced by Create_linex(), Print_file(), and WB_Print().

mINT32 LOOPINFO::Get_ub_term_index (  )  const [inline]

Definition at line 485 of file ipa_section.h.

References u1.

Referenced by Create_linex(), Print_file(), and WB_Print().

LINEX* LOOPINFO::Get_upper_linex (  )  const [inline]

Definition at line 481 of file ipa_section.h.

References u1.

Referenced by Max_value(), Print(), and PROJECTED_KERNEL::Project().

BOOL LOOPINFO::Is_messy_any_bounds (  )  const [inline]

Definition at line 503 of file ipa_section.h.

References _flags, and MESSY_ANY_BOUNDS.

Referenced by PROJECTED_KERNEL::Project().

BOOL LOOPINFO::Is_messy_bounds (  )  const [inline]

Definition at line 502 of file ipa_section.h.

References _flags, and MESSY_BOUNDS.

Referenced by Print(), and Print_file().

BOOL LOOPINFO::Is_messy_lb (  )  const [inline]

Definition at line 500 of file ipa_section.h.

References _flags, and MESSY_LOWER_BOUND.

Referenced by Create_linex(), Min_value(), Print(), Print_file(), PROJECTED_KERNEL::Project(), and WB_Print().

BOOL LOOPINFO::Is_messy_step (  )  const [inline]

Definition at line 501 of file ipa_section.h.

References _flags, and MESSY_STRIDE.

Referenced by Create_linex(), Print(), Print_file(), PROJECTED_KERNEL::Project(), and WB_Print().

BOOL LOOPINFO::Is_messy_ub (  )  const [inline]

Definition at line 499 of file ipa_section.h.

References _flags, and MESSY_UPPER_BOUND.

Referenced by Create_linex(), Max_value(), Print(), Print_file(), PROJECTED_KERNEL::Project(), and WB_Print().

LINEX * LOOPINFO::Max_value (  ) 
MEM_POOL* LOOPINFO::Mem_Pool (  )  const [inline]

Definition at line 469 of file ipa_section.h.

References _mem_pool.

Referenced by Build_linex(), Create_linex(), Max_value(), and Min_value().

LINEX * LOOPINFO::Min_value (  ) 
void LOOPINFO::Print ( FILE *  fp = stderr  ) 
void LOOPINFO::Print_file ( FILE *  fp = stderr  ) 
void LOOPINFO::Set_cd_idx ( mINT16  cd_idx  )  [inline]

Definition at line 479 of file ipa_section.h.

References u1.

void LOOPINFO::Set_flags ( mINT8  f  )  [inline]

Definition at line 476 of file ipa_section.h.

References _flags.

void LOOPINFO::Set_lb_term_count ( mUINT8  i  )  [inline]

Definition at line 496 of file ipa_section.h.

References u1.

void LOOPINFO::Set_lb_term_index ( mINT16  i  )  [inline]

Definition at line 493 of file ipa_section.h.

References u1.

void LOOPINFO::Set_Mem_Pool ( MEM_POOL m  )  [inline]

Definition at line 470 of file ipa_section.h.

References _mem_pool.

void LOOPINFO::Set_messy_bounds (  )  [inline]

Definition at line 508 of file ipa_section.h.

References _flags, and MESSY_ANY_BOUNDS.

void LOOPINFO::Set_messy_lb (  )  [inline]

Definition at line 506 of file ipa_section.h.

References _flags, and MESSY_LOWER_BOUND.

void LOOPINFO::Set_messy_step (  )  [inline]

Definition at line 507 of file ipa_section.h.

References _flags, and MESSY_STRIDE.

void LOOPINFO::Set_messy_ub (  )  [inline]

Definition at line 505 of file ipa_section.h.

References _flags, and MESSY_UPPER_BOUND.

void LOOPINFO::Set_nest_level ( mINT8  level  )  [inline]

Definition at line 473 of file ipa_section.h.

References _nest_level.

void LOOPINFO::Set_step_term_count ( mUINT8  i  )  [inline]

Definition at line 497 of file ipa_section.h.

References u1.

void LOOPINFO::Set_step_term_index ( mINT16  i  )  [inline]

Definition at line 494 of file ipa_section.h.

References u1.

void LOOPINFO::Set_ub_term_count ( mUINT8  i  )  [inline]

Definition at line 495 of file ipa_section.h.

References u1.

void LOOPINFO::Set_ub_term_index ( mINT16  i  )  [inline]

Definition at line 492 of file ipa_section.h.

References u1.

void LOOPINFO::WB_Print ( FILE *  fp,
INT  loop_info_index 
)

Member Data Documentation

Definition at line 451 of file ipa_section.h.

Definition at line 443 of file ipa_section.h.

Referenced by Get_kernels().

Definition at line 458 of file ipa_section.h.

Definition at line 455 of file ipa_section.h.

Definition at line 448 of file ipa_section.h.

Definition at line 440 of file ipa_section.h.

Referenced by LOOPINFO(), Mem_Pool(), and Set_Mem_Pool().

Definition at line 437 of file ipa_section.h.

Referenced by Get_nest_level(), and Set_nest_level().

Definition at line 459 of file ipa_section.h.

Definition at line 456 of file ipa_section.h.

Definition at line 449 of file ipa_section.h.

Definition at line 450 of file ipa_section.h.

Definition at line 457 of file ipa_section.h.

Definition at line 454 of file ipa_section.h.

Definition at line 447 of file ipa_section.h.

union { ... } LOOPINFO::u1 [private]
struct { ... } LOOPINFO::u2
struct { ... } LOOPINFO::u3

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

Generated on Tue Nov 17 06:40:04 2009 for Open64 (mfef90, whirl2f, and IR tools) by  doxygen 1.6.1