summaryrefslogtreecommitdiff
path: root/src/jit/codegenarmarch.cpp
diff options
context:
space:
mode:
authorSergey Andreenko <seandree@microsoft.com>2018-01-31 17:52:39 -0800
committerGitHub <noreply@github.com>2018-01-31 17:52:39 -0800
commit8dde886767682feac4b5414366dfae7be3c08412 (patch)
treec9ffc898bcd1a1f863833d9ce92755739cfed251 /src/jit/codegenarmarch.cpp
parent45c2c01cb146d2173f0a2f204859e549ad536a34 (diff)
downloadcoreclr-8dde886767682feac4b5414366dfae7be3c08412.tar.gz
coreclr-8dde886767682feac4b5414366dfae7be3c08412.tar.bz2
coreclr-8dde886767682feac4b5414366dfae7be3c08412.zip
Delete GenTreePtr. (#16027)
* jit sources: Each local pointer variable must be declared on its own line. Implement https://github.com/dotnet/coreclr/blob/master/Documentation/coding-guidelines/clr-jit-coding-conventions.md#101-pointer-declarations Each local pointer variable must be declared on its own line. * add constGenTreePtr * delete GenTreePtr * delete constGenTreePtr * fix arm
Diffstat (limited to 'src/jit/codegenarmarch.cpp')
-rw-r--r--src/jit/codegenarmarch.cpp114
1 files changed, 57 insertions, 57 deletions
diff --git a/src/jit/codegenarmarch.cpp b/src/jit/codegenarmarch.cpp
index 680ff6db4f..22eb70e40a 100644
--- a/src/jit/codegenarmarch.cpp
+++ b/src/jit/codegenarmarch.cpp
@@ -30,7 +30,7 @@ XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
// Preconditions:
// All operands have been evaluated.
//
-void CodeGen::genCodeForTreeNode(GenTreePtr treeNode)
+void CodeGen::genCodeForTreeNode(GenTree* treeNode)
{
regNumber targetReg = treeNode->gtRegNum;
var_types targetType = treeNode->TypeGet();
@@ -486,12 +486,12 @@ void CodeGen::genSetRegToIcon(regNumber reg, ssize_t val, var_types type, insFla
// Return value:
// None
//
-void CodeGen::genIntrinsic(GenTreePtr treeNode)
+void CodeGen::genIntrinsic(GenTree* treeNode)
{
assert(treeNode->OperIs(GT_INTRINSIC));
// Both operand and its result must be of the same floating point type.
- GenTreePtr srcNode = treeNode->gtOp.gtOp1;
+ GenTree* srcNode = treeNode->gtOp.gtOp1;
assert(varTypeIsFloating(srcNode));
assert(srcNode->TypeGet() == treeNode->TypeGet());
@@ -546,9 +546,9 @@ void CodeGen::genIntrinsic(GenTreePtr treeNode)
void CodeGen::genPutArgStk(GenTreePutArgStk* treeNode)
{
assert(treeNode->OperIs(GT_PUTARG_STK));
- GenTreePtr source = treeNode->gtOp1;
- var_types targetType = genActualType(source->TypeGet());
- emitter* emit = getEmitter();
+ GenTree* source = treeNode->gtOp1;
+ var_types targetType = genActualType(source->TypeGet());
+ emitter* emit = getEmitter();
// This is the varNum for our store operations,
// typically this is the varNum for the Outgoing arg space
@@ -660,7 +660,7 @@ void CodeGen::genPutArgStk(GenTreePutArgStk* treeNode)
// and store their register into the outgoing argument area
for (; fieldListPtr != nullptr; fieldListPtr = fieldListPtr->Rest())
{
- GenTreePtr nextArgNode = fieldListPtr->gtOp.gtOp1;
+ GenTree* nextArgNode = fieldListPtr->gtOp.gtOp1;
genConsumeReg(nextArgNode);
regNumber reg = nextArgNode->gtRegNum;
@@ -692,7 +692,7 @@ void CodeGen::genPutArgStk(GenTreePutArgStk* treeNode)
regNumber addrReg = REG_NA;
GenTreeLclVarCommon* varNode = nullptr;
- GenTreePtr addrNode = nullptr;
+ GenTree* addrNode = nullptr;
if (source->OperGet() == GT_LCL_VAR)
{
@@ -998,11 +998,11 @@ void CodeGen::genPutArgSplit(GenTreePutArgSplit* treeNode)
{
assert(treeNode->OperIs(GT_PUTARG_SPLIT));
- GenTreePtr source = treeNode->gtOp1;
- emitter* emit = getEmitter();
- unsigned varNumOut = compiler->lvaOutgoingArgSpaceVar;
- unsigned argOffsetMax = compiler->lvaOutgoingArgSpaceSize;
- unsigned argOffsetOut = treeNode->gtSlotNum * TARGET_POINTER_SIZE;
+ GenTree* source = treeNode->gtOp1;
+ emitter* emit = getEmitter();
+ unsigned varNumOut = compiler->lvaOutgoingArgSpaceVar;
+ unsigned argOffsetMax = compiler->lvaOutgoingArgSpaceSize;
+ unsigned argOffsetOut = treeNode->gtSlotNum * TARGET_POINTER_SIZE;
if (source->OperGet() == GT_FIELD_LIST)
{
@@ -1012,8 +1012,8 @@ void CodeGen::genPutArgSplit(GenTreePutArgSplit* treeNode)
for (GenTreeFieldList* fieldListPtr = source->AsFieldList(); fieldListPtr != nullptr;
fieldListPtr = fieldListPtr->Rest())
{
- GenTreePtr nextArgNode = fieldListPtr->gtGetOp1();
- regNumber fieldReg = nextArgNode->gtRegNum;
+ GenTree* nextArgNode = fieldListPtr->gtGetOp1();
+ regNumber fieldReg = nextArgNode->gtRegNum;
genConsumeReg(nextArgNode);
if (regIndex >= treeNode->gtNumRegs)
@@ -1068,7 +1068,7 @@ void CodeGen::genPutArgSplit(GenTreePutArgSplit* treeNode)
regNumber addrReg = REG_NA;
GenTreeLclVarCommon* varNode = nullptr;
- GenTreePtr addrNode = nullptr;
+ GenTree* addrNode = nullptr;
addrNode = source->gtOp.gtOp1;
@@ -1213,7 +1213,7 @@ void CodeGen::genPutArgSplit(GenTreePutArgSplit* treeNode)
// The child of store is a multi-reg call node.
// genProduceReg() on treeNode is made by caller of this routine.
//
-void CodeGen::genMultiRegCallStoreToLocal(GenTreePtr treeNode)
+void CodeGen::genMultiRegCallStoreToLocal(GenTree* treeNode)
{
assert(treeNode->OperGet() == GT_STORE_LCL_VAR);
@@ -1324,7 +1324,7 @@ void CodeGen::genMultiRegCallStoreToLocal(GenTreePtr treeNode)
//------------------------------------------------------------------------
// genRangeCheck: generate code for GT_ARR_BOUNDS_CHECK node.
//
-void CodeGen::genRangeCheck(GenTreePtr oper)
+void CodeGen::genRangeCheck(GenTree* oper)
{
#ifdef FEATURE_SIMD
noway_assert(oper->OperGet() == GT_ARR_BOUNDS_CHECK || oper->OperGet() == GT_SIMD_CHK);
@@ -1334,10 +1334,10 @@ void CodeGen::genRangeCheck(GenTreePtr oper)
GenTreeBoundsChk* bndsChk = oper->AsBoundsChk();
- GenTreePtr arrLen = bndsChk->gtArrLen;
- GenTreePtr arrIndex = bndsChk->gtIndex;
- GenTreePtr arrRef = NULL;
- int lenOffset = 0;
+ GenTree* arrLen = bndsChk->gtArrLen;
+ GenTree* arrIndex = bndsChk->gtIndex;
+ GenTree* arrRef = NULL;
+ int lenOffset = 0;
GenTree* src1;
GenTree* src2;
@@ -1475,12 +1475,12 @@ unsigned CodeGen::genOffsetOfMDArrayDimensionSize(var_types elemType, unsigned r
//
void CodeGen::genCodeForArrIndex(GenTreeArrIndex* arrIndex)
{
- emitter* emit = getEmitter();
- GenTreePtr arrObj = arrIndex->ArrObj();
- GenTreePtr indexNode = arrIndex->IndexExpr();
- regNumber arrReg = genConsumeReg(arrObj);
- regNumber indexReg = genConsumeReg(indexNode);
- regNumber tgtReg = arrIndex->gtRegNum;
+ emitter* emit = getEmitter();
+ GenTree* arrObj = arrIndex->ArrObj();
+ GenTree* indexNode = arrIndex->IndexExpr();
+ regNumber arrReg = genConsumeReg(arrObj);
+ regNumber indexReg = genConsumeReg(indexNode);
+ regNumber tgtReg = arrIndex->gtRegNum;
noway_assert(tgtReg != REG_NA);
// We will use a temp register to load the lower bound and dimension size values.
@@ -1525,9 +1525,9 @@ void CodeGen::genCodeForArrIndex(GenTreeArrIndex* arrIndex)
void CodeGen::genCodeForArrOffset(GenTreeArrOffs* arrOffset)
{
- GenTreePtr offsetNode = arrOffset->gtOffset;
- GenTreePtr indexNode = arrOffset->gtIndex;
- regNumber tgtReg = arrOffset->gtRegNum;
+ GenTree* offsetNode = arrOffset->gtOffset;
+ GenTree* indexNode = arrOffset->gtIndex;
+ regNumber tgtReg = arrOffset->gtRegNum;
noway_assert(tgtReg != REG_NA);
@@ -1574,7 +1574,7 @@ void CodeGen::genCodeForArrOffset(GenTreeArrOffs* arrOffset)
// Assumptions:
// a) All GenTrees are register allocated.
//
-void CodeGen::genCodeForShift(GenTreePtr tree)
+void CodeGen::genCodeForShift(GenTree* tree)
{
var_types targetType = tree->TypeGet();
genTreeOps oper = tree->OperGet();
@@ -1585,8 +1585,8 @@ void CodeGen::genCodeForShift(GenTreePtr tree)
genConsumeOperands(tree->AsOp());
- GenTreePtr operand = tree->gtGetOp1();
- GenTreePtr shiftBy = tree->gtGetOp2();
+ GenTree* operand = tree->gtGetOp1();
+ GenTree* shiftBy = tree->gtGetOp2();
if (!shiftBy->IsCnsIntOrI())
{
getEmitter()->emitIns_R_R_R(ins, size, tree->gtRegNum, operand->gtRegNum, shiftBy->gtRegNum);
@@ -1840,8 +1840,8 @@ void CodeGen::genCodeForIndir(GenTreeIndir* tree)
void CodeGen::genCodeForCpBlk(GenTreeBlk* cpBlkNode)
{
// Make sure we got the arguments of the cpblk operation in the right registers
- unsigned blockSize = cpBlkNode->Size();
- GenTreePtr dstAddr = cpBlkNode->Addr();
+ unsigned blockSize = cpBlkNode->Size();
+ GenTree* dstAddr = cpBlkNode->Addr();
assert(!dstAddr->isContained());
genConsumeBlockOp(cpBlkNode, REG_ARG_0, REG_ARG_1, REG_ARG_2);
@@ -1888,10 +1888,10 @@ void CodeGen::genCodeForCpBlk(GenTreeBlk* cpBlkNode)
void CodeGen::genCodeForCpBlkUnroll(GenTreeBlk* cpBlkNode)
{
// Make sure we got the arguments of the cpblk operation in the right registers
- unsigned size = cpBlkNode->Size();
- GenTreePtr dstAddr = cpBlkNode->Addr();
- GenTreePtr source = cpBlkNode->Data();
- GenTreePtr srcAddr = nullptr;
+ unsigned size = cpBlkNode->Size();
+ GenTree* dstAddr = cpBlkNode->Addr();
+ GenTree* source = cpBlkNode->Data();
+ GenTree* srcAddr = nullptr;
assert((size != 0) && (size <= CPBLK_UNROLL_LIMIT));
@@ -2026,9 +2026,9 @@ void CodeGen::genCodeForCpBlkUnroll(GenTreeBlk* cpBlkNode)
// b) The size argument of the InitBlk is >= INITBLK_STOS_LIMIT bytes.
void CodeGen::genCodeForInitBlk(GenTreeBlk* initBlkNode)
{
- unsigned size = initBlkNode->Size();
- GenTreePtr dstAddr = initBlkNode->Addr();
- GenTreePtr initVal = initBlkNode->Data();
+ unsigned size = initBlkNode->Size();
+ GenTree* dstAddr = initBlkNode->Addr();
+ GenTree* initVal = initBlkNode->Data();
if (initVal->OperIsInitVal())
{
initVal = initVal->gtGetOp1();
@@ -2194,11 +2194,11 @@ void CodeGen::genCallInstruction(GenTreeCall* call)
assert(!call->IsVirtual() || call->gtControlExpr || call->gtCallAddr);
// Consume all the arg regs
- for (GenTreePtr list = call->gtCallLateArgs; list; list = list->MoveNext())
+ for (GenTree* list = call->gtCallLateArgs; list; list = list->MoveNext())
{
assert(list->OperIsList());
- GenTreePtr argNode = list->Current();
+ GenTree* argNode = list->Current();
fgArgTabEntry* curArgTabEntry = compiler->gtArgEntryByNode(call, argNode);
assert(curArgTabEntry);
@@ -2217,7 +2217,7 @@ void CodeGen::genCallInstruction(GenTreeCall* call)
regNumber argReg = curArgTabEntry->regNum;
for (; argListPtr != nullptr; argListPtr = argListPtr->Rest(), iterationNum++)
{
- GenTreePtr putArgRegNode = argListPtr->gtOp.gtOp1;
+ GenTree* putArgRegNode = argListPtr->gtOp.gtOp1;
assert(putArgRegNode->gtOper == GT_PUTARG_REG);
genConsumeReg(putArgRegNode);
@@ -2543,7 +2543,7 @@ void CodeGen::genCallInstruction(GenTreeCall* call)
// The arguments of the caller needs to be transferred to the callee before exiting caller.
// The actual jump to callee is generated as part of caller epilog sequence.
// Therefore the codegen of GT_JMP is to ensure that the callee arguments are correctly setup.
-void CodeGen::genJmpMethod(GenTreePtr jmp)
+void CodeGen::genJmpMethod(GenTree* jmp)
{
assert(jmp->OperGet() == GT_JMP);
assert(compiler->compJmpOpUsed);
@@ -2884,12 +2884,12 @@ void CodeGen::genJmpMethod(GenTreePtr jmp)
//
// TODO-ARM64-CQ: Allow castOp to be a contained node without an assigned register.
//
-void CodeGen::genIntToIntCast(GenTreePtr treeNode)
+void CodeGen::genIntToIntCast(GenTree* treeNode)
{
assert(treeNode->OperGet() == GT_CAST);
- GenTreePtr castOp = treeNode->gtCast.CastOp();
- emitter* emit = getEmitter();
+ GenTree* castOp = treeNode->gtCast.CastOp();
+ emitter* emit = getEmitter();
var_types dstType = treeNode->CastToType();
var_types srcType = genActualType(castOp->TypeGet());
@@ -3092,7 +3092,7 @@ void CodeGen::genIntToIntCast(GenTreePtr treeNode)
// The treeNode must have an assigned register.
// The cast is between float and double.
//
-void CodeGen::genFloatToFloatCast(GenTreePtr treeNode)
+void CodeGen::genFloatToFloatCast(GenTree* treeNode)
{
// float <--> double conversions are always non-overflow ones
assert(treeNode->OperGet() == GT_CAST);
@@ -3101,7 +3101,7 @@ void CodeGen::genFloatToFloatCast(GenTreePtr treeNode)
regNumber targetReg = treeNode->gtRegNum;
assert(genIsValidFloatReg(targetReg));
- GenTreePtr op1 = treeNode->gtOp.gtOp1;
+ GenTree* op1 = treeNode->gtOp.gtOp1;
assert(!op1->isContained()); // Cannot be contained
assert(genIsValidFloatReg(op1->gtRegNum)); // Must be a valid float reg.
@@ -3229,7 +3229,7 @@ void CodeGen::genCreateAndStoreGCInfo(unsigned codeSize,
// Typically only one conditional branch is needed
// and the second jmpKind[] value is set to EJ_NONE
//
-void CodeGen::genJumpKindsForTree(GenTreePtr cmpTree, emitJumpKind jmpKind[2], bool jmpToTrueLabel[2])
+void CodeGen::genJumpKindsForTree(GenTree* cmpTree, emitJumpKind jmpKind[2], bool jmpToTrueLabel[2])
{
// On ARM both branches will always branch to the true label
jmpToTrueLabel[0] = true;
@@ -3343,7 +3343,7 @@ void CodeGen::genJumpKindsForTree(GenTreePtr cmpTree, emitJumpKind jmpKind[2], b
// Return Value:
// None
//
-void CodeGen::genCodeForJumpTrue(GenTreePtr tree)
+void CodeGen::genCodeForJumpTrue(GenTree* tree)
{
GenTree* cmp = tree->gtOp.gtOp1;
assert(cmp->OperIsCompare());
@@ -3647,7 +3647,7 @@ void CodeGen::genLeaInstruction(GenTreeAddrMode* lea)
// Returns true if the 'treeNode" is a GT_RETURN node of type struct.
// Otherwise returns false.
//
-bool CodeGen::isStructReturn(GenTreePtr treeNode)
+bool CodeGen::isStructReturn(GenTree* treeNode)
{
// This method could be called for 'treeNode' of GT_RET_FILT or GT_RETURN.
// For the GT_RET_FILT, the return is always
@@ -3668,11 +3668,11 @@ bool CodeGen::isStructReturn(GenTreePtr treeNode)
//
// Assumption:
// op1 of GT_RETURN node is either GT_LCL_VAR or multi-reg GT_CALL
-void CodeGen::genStructReturn(GenTreePtr treeNode)
+void CodeGen::genStructReturn(GenTree* treeNode)
{
assert(treeNode->OperGet() == GT_RETURN);
assert(isStructReturn(treeNode));
- GenTreePtr op1 = treeNode->gtGetOp1();
+ GenTree* op1 = treeNode->gtGetOp1();
if (op1->OperGet() == GT_LCL_VAR)
{