osprey/be/lno/access_main.cxx File Reference

#include <stdint.h>
#include <sys/types.h>
#include <alloca.h>
#include "call_info.h"
#include "defs.h"
#include "config_cache.h"
#include "access_main.h"
#include "access_vector.h"
#include "lnopt_main.h"
#include "stab.h"
#include "lwn_util.h"
#include "opt_du.h"
#include "lnoutils.h"
#include "soe.h"
#include "cond.h"
#include "fb_whirl.h"
#include "move.h"

Include dependency graph for access_main.cxx:

Go to the source code of this file.

Defines

#define __STDC_LIMIT_MACROS
#define MAX_NAME_SIZE   66

Functions/Subroutines

BOOL Promote_Messy_Bound (WN *wn_loop, WN *wn_bound, char name[], DU_MANAGER *du)
BOOL Hoist_Lower_Bound (WN *wn_loop, DOLOOP_STACK *stack, MEM_POOL *pool)
BOOL Hoist_Upper_Bound (WN *wn_loop, DOLOOP_STACK *stack, MEM_POOL *pool)
static BOOL Expr_Has_Vertex (WN *wn_tree)
void Hoist_Bounds_One_Level (WN *wn_tree)
void Hoist_Iload_Ldid_Upper_Bound_One_Level (WN *loop, BOOL negative_stride)
void LNO_Build_Access (WN *func_nd, MEM_POOL *pool, BOOL Hoist_Bounds)
void LNO_Build_Access (WN *wn, DOLOOP_STACK *stack, MEM_POOL *pool, INDX_RANGE_STACK *irs, BOOL Hoist_Bounds)
static void LNO_Update_Indx_Range (INDX_RANGE_STACK *irs, ACCESS_ARRAY *array, WN *wn)
void LNO_Build_Access_Array (WN *wn, DOLOOP_STACK *stack, MEM_POOL *pool, INDX_RANGE_STACK *irs)
void LNO_Build_Do_Access (WN *wn, DOLOOP_STACK *stack, BOOL Hoist_Bounds)
void LNO_Build_If_Access (WN *wn, DOLOOP_STACK *stack)
void LNO_Print_One_Access (FILE *fp, WN *wn)
void LNO_Print_Access (FILE *fp, WN *wn)
static BOOL Exp_Node_Varies_In_Loop (WN *wn_node, WN *wn_loop)
static BOOL Exp_Varies_In_Loop (WN *wn_exp, WN *wn_loop)
static void Hoist_Varying_Lower_Bounds_Traverse (WN *wn_tree)
void Hoist_Varying_Lower_Bounds (WN *func_nd)

Variables

static INT preg_counter = 0


Define Documentation

#define __STDC_LIMIT_MACROS

Definition at line 71 of file access_main.cxx.

#define MAX_NAME_SIZE   66


Function Documentation

static BOOL Exp_Node_Varies_In_Loop ( WN wn_node,
WN wn_loop 
) [static]

static BOOL Exp_Varies_In_Loop ( WN wn_exp,
WN wn_loop 
) [static]

static BOOL Expr_Has_Vertex ( WN wn_tree  )  [static]

void Hoist_Bounds_One_Level ( WN wn_tree  ) 

void Hoist_Iload_Ldid_Upper_Bound_One_Level ( WN loop,
BOOL  negative_stride 
)

BOOL Hoist_Lower_Bound ( WN wn_loop,
DOLOOP_STACK stack,
MEM_POOL pool 
)

BOOL Hoist_Upper_Bound ( WN wn_loop,
DOLOOP_STACK stack,
MEM_POOL pool 
)

void Hoist_Varying_Lower_Bounds ( WN func_nd  ) 

Definition at line 804 of file access_main.cxx.

References Hoist_Varying_Lower_Bounds_Traverse().

Referenced by Lnoptimizer().

static void Hoist_Varying_Lower_Bounds_Traverse ( WN wn_tree  )  [static]

void LNO_Build_Access ( WN wn,
DOLOOP_STACK stack,
MEM_POOL pool,
INDX_RANGE_STACK irs,
BOOL  Hoist_Bounds 
)

void LNO_Build_Access ( WN func_nd,
MEM_POOL pool,
BOOL  Hoist_Bounds 
)

void LNO_Build_Access_Array ( WN wn,
DOLOOP_STACK stack,
MEM_POOL pool,
INDX_RANGE_STACK irs 
)

void LNO_Build_Do_Access ( WN wn,
DOLOOP_STACK stack,
BOOL  Hoist_Bounds 
)

void LNO_Build_If_Access ( WN wn,
DOLOOP_STACK stack 
)

void LNO_Print_Access ( FILE fp,
WN wn 
)

void LNO_Print_One_Access ( FILE fp,
WN wn 
)

static void LNO_Update_Indx_Range ( INDX_RANGE_STACK irs,
ACCESS_ARRAY array,
WN wn 
) [static]

BOOL Promote_Messy_Bound ( WN wn_loop,
WN wn_bound,
char  name[],
DU_MANAGER du 
)


Variable Documentation

INT preg_counter = 0 [static]


Generated on Wed Apr 8 14:32:26 2009 for Open64 by  doxygen 1.5.6