summaryrefslogtreecommitdiff
path: root/src/jit/lower.h
diff options
context:
space:
mode:
authorJiyoung Yun <jy910.yun@samsung.com>2017-02-10 20:35:12 +0900
committerJiyoung Yun <jy910.yun@samsung.com>2017-02-10 20:35:12 +0900
commit4b11dc566a5bbfa1378d6266525c281b028abcc8 (patch)
treeb48831a898906734f8884d08b6e18f1144ee2b82 /src/jit/lower.h
parentdb20f3f1bb8595633a7e16c8900fd401a453a6b5 (diff)
downloadcoreclr-4b11dc566a5bbfa1378d6266525c281b028abcc8.tar.gz
coreclr-4b11dc566a5bbfa1378d6266525c281b028abcc8.tar.bz2
coreclr-4b11dc566a5bbfa1378d6266525c281b028abcc8.zip
Imported Upstream version 1.0.0.9910upstream/1.0.0.9910
Diffstat (limited to 'src/jit/lower.h')
-rw-r--r--src/jit/lower.h23
1 files changed, 16 insertions, 7 deletions
diff --git a/src/jit/lower.h b/src/jit/lower.h
index c1cafb4ee8..57b4127f26 100644
--- a/src/jit/lower.h
+++ b/src/jit/lower.h
@@ -45,9 +45,7 @@ public:
bool signCheckOnly; // For converting between unsigned/signed int
};
-#ifdef _TARGET_64BIT_
static void getCastDescription(GenTreePtr treeNode, CastInfo* castInfo);
-#endif // _TARGET_64BIT_
private:
#ifdef DEBUG
@@ -168,7 +166,7 @@ private:
// operands.
//
// Arguments:
- // tree - Gentree of a bininary operation.
+ // tree - Gentree of a binary operation.
//
// Returns
// None.
@@ -194,6 +192,7 @@ private:
}
}
#endif // defined(_TARGET_XARCH_)
+ void TreeNodeInfoInitStoreLoc(GenTree* tree);
void TreeNodeInfoInitReturn(GenTree* tree);
void TreeNodeInfoInitShiftRotate(GenTree* tree);
void TreeNodeInfoInitCall(GenTreeCall* call);
@@ -203,14 +202,26 @@ private:
void TreeNodeInfoInitLogicalOp(GenTree* tree);
void TreeNodeInfoInitModDiv(GenTree* tree);
void TreeNodeInfoInitIntrinsic(GenTree* tree);
+ void TreeNodeInfoInitStoreLoc(GenTreeLclVarCommon* tree);
+ void TreeNodeInfoInitIndir(GenTree* indirTree);
+ void TreeNodeInfoInitGCWriteBarrier(GenTree* tree);
+#if !CPU_LOAD_STORE_ARCH
+ bool TreeNodeInfoInitIfRMWMemOp(GenTreePtr storeInd);
+#endif
#ifdef FEATURE_SIMD
void TreeNodeInfoInitSIMD(GenTree* tree);
#endif // FEATURE_SIMD
void TreeNodeInfoInitCast(GenTree* tree);
#ifdef _TARGET_ARM64_
+ void LowerPutArgStk(GenTreePutArgStk* argNode, fgArgTabEntryPtr info);
+ void TreeNodeInfoInitPutArgStk(GenTreePutArgStk* argNode, fgArgTabEntryPtr info);
+#endif // _TARGET_ARM64_
+#ifdef _TARGET_ARM_
+ void LowerPutArgStk(GenTreePutArgStk* argNode, fgArgTabEntryPtr info);
void TreeNodeInfoInitPutArgStk(GenTreePutArgStk* argNode, fgArgTabEntryPtr info);
#endif // _TARGET_ARM64_
#ifdef FEATURE_PUT_STRUCT_ARG_STK
+ void LowerPutArgStk(GenTreePutArgStk* tree);
void TreeNodeInfoInitPutArgStk(GenTreePutArgStk* tree);
#endif // FEATURE_PUT_STRUCT_ARG_STK
void TreeNodeInfoInitLclHeap(GenTree* tree);
@@ -231,18 +242,16 @@ private:
void LowerCast(GenTree* node);
#if defined(_TARGET_XARCH_)
- void SetMulOpCounts(GenTreePtr tree);
+ void TreeNodeInfoInitMul(GenTreePtr tree);
+ void SetContainsAVXFlags(bool isFloatingPointType = true, unsigned sizeOfSIMDVector = 0);
#endif // defined(_TARGET_XARCH_)
#if !CPU_LOAD_STORE_ARCH
bool IsRMWIndirCandidate(GenTree* operand, GenTree* storeInd);
bool IsBinOpInRMWStoreInd(GenTreePtr tree);
bool IsRMWMemOpRootedAtStoreInd(GenTreePtr storeIndTree, GenTreePtr* indirCandidate, GenTreePtr* indirOpSource);
- bool SetStoreIndOpCountsIfRMWMemOp(GenTreePtr storeInd);
#endif
void LowerStoreLoc(GenTreeLclVarCommon* tree);
- void SetIndirAddrOpCounts(GenTree* indirTree);
- void LowerGCWriteBarrier(GenTree* tree);
GenTree* LowerArrElem(GenTree* node);
void LowerRotate(GenTree* tree);