Open64 (mfef90, whirl2f, and IR tools)  TAG: version-openad; SVN changeset: 916
upc_wn_util.cxx File Reference
#include "defs.h"
#include "glob.h"
#include "config.h"
#include "wn.h"
#include "wn_util.h"
#include "const.h"
#include <cmplrs/rcodes.h>
#include <upc_wn_util.h>
#include <upc_symtab_utils.h>
#include <stack>
Include dependency graph for upc_wn_util.cxx:

Go to the source code of this file.

Functions

void fdump_tree (FILE *f, WN *wn)
static TYPE_ID Widen_Mtype (TYPE_ID t)
INTRINSIC WN_Type_To_SyncIntrinsic (TYPE_ID mtype)
INTRINSIC WN_Type_To_Intrinsic (OPERATOR opr, int mtype, int strict=1, BOOL phaseless=TRUE)
INTRINSIC WN_Operator_To_Intrinsic (OPERATOR opr, INT bsize=0, INT idx1=0)
static WNSpill_And_Take_Address (WN *wn)
static TYPE_ID Shared_Load_Extend_Mtyp (TYPE_ID typ)
static CONSISTENCY_class Get_Access_Consistency (TY_IDX idx)
WNWN_Create_Shared_Store (WN *st, BOOL src_is_shared, WN_OFFSET xtra_offst, BOOL has_offt, WN *offt)
WNWN_Create_Shared_Load (WN *ld, WN *dest, BOOL is_struct, WN_OFFSET xtra_offst, TY_IDX access_ty, BOOL has_off, WN *off_wn)
WNWN_Create_Shared_Ptr_Arithmetic (WN *base, WN *disp, OPERATOR opr, int esize, int bsize, int phaseless)
WNWN_Convert_Shared_To_Local (WN *ptr, TY_IDX ty, ST *st)
WNWN_Create_PtrEq_Test (OPERATOR op, WN *awn0, WN *awn1, TY_IDX idx0, TY_IDX idx1)
WNWN_Create_StoP_Cvt (WN *init_wn, INTRINSIC iop)
WNSpill_Shared_Load (WN *ld)
void LowerUPC_Init_Consistency ()
WNWN_Create_Shared_Ptr_Diff (WN *op0, WN *op1, TY_IDX t1, TY_IDX t2)
WNWN_SetNull_Sptr (WN *st)
WNStrip_TAS (WN *wn)
WNCombine_Offset_Terms (SPTR_OFFSET_TERM_STACK &stack)
TY_IDX Get_Type_From_ArrayOp (WN *array_wn)

Variables

BOOL Fold_Keep_Shared_Tas = TRUE
SPTR_OFFSET_ACCUMULATION_STACK sptr_off_accumulation_stack
SPTR_ACCUMULATION_STATE sptr_accumulation_state = NO_ACCUMULATION
std::stack< CONSISTENCY_classconsistency_stack
MEM_POOL consistency_pool
WN_MAP consistency_map

Function Documentation

Definition at line 1306 of file upc_wn_util.cxx.

References MTYPE_I4, OPR_ADD, and WN_Binary().

Here is the call graph for this function:

TY_IDX Get_Type_From_ArrayOp ( WN array_wn)

Definition at line 1330 of file upc_wn_util.cxx.

References OPR_ARRAY, OPR_LDA, result, TY_pointed(), WN_array_base, WN_operator(), and WN_ty().

Here is the call graph for this function:

static TYPE_ID Shared_Load_Extend_Mtyp ( TYPE_ID  typ) [static]

Definition at line 223 of file upc_wn_util.cxx.

References Is_True, MTYPE_B, MTYPE_I1, MTYPE_I2, MTYPE_I4, MTYPE_I8, MTYPE_To_TY, MTYPE_U1, MTYPE_U2, MTYPE_U4, MTYPE_U8, Pointer_type, and TY_size().

Referenced by WN_Create_Shared_Load(), and WN_Create_Shared_Ptr_Arithmetic().

Here is the call graph for this function:

WN* Strip_TAS ( WN wn)

Definition at line 1299 of file upc_wn_util.cxx.

References OPR_TAS, wn, WN_kid0(), and WN_operator().

Referenced by Spill_And_Take_Address(), WN_Create_Shared_Load(), and WN_Create_Shared_Store().

Here is the call graph for this function:

static TYPE_ID Widen_Mtype ( TYPE_ID  t) [inline, static]

Definition at line 27 of file upc_wn_util.cxx.

References Fail_FmtAssertion(), MTYPE_BS, MTYPE_byte_size, MTYPE_I4, MTYPE_is_m, MTYPE_is_void, and Mtype_TransferSize().

Referenced by Spill_Shared_Load(), and WN_Create_Shared_Load().

Here is the call graph for this function:

WN* WN_Create_Shared_Load ( WN ld,
WN dest,
BOOL  is_struct,
WN_OFFSET  xtra_offst,
TY_IDX  access_ty,
BOOL  has_off,
WN off_wn 
)
INTRINSIC WN_Operator_To_Intrinsic ( OPERATOR  opr,
INT  bsize = 0,
INT  idx1 = 0 
)

Variable Documentation

Definition at line 22 of file upc_wn_util.cxx.

Referenced by LowerUPC_Init_Consistency().

Definition at line 21 of file upc_wn_util.cxx.

Definition at line 15 of file upc_wn_util.cxx.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines