mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-12 13:38:21 +00:00
For PR950:
This patch replaces signed integer types with signless ones: 1. [US]Byte -> Int8 2. [U]Short -> Int16 3. [U]Int -> Int32 4. [U]Long -> Int64. 5. Removal of isSigned, isUnsigned, getSignedVersion, getUnsignedVersion and other methods related to signedness. In a few places this warranted identifying the signedness information from other sources. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32785 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -173,7 +173,7 @@ void IndVarSimplify::EliminatePointerRecurrence(PHINode *PN,
|
||||
Constant *NCE = ConstantExpr::getGetElementPtr(CE->getOperand(0),
|
||||
CEIdxs);
|
||||
GetElementPtrInst *NGEPI =
|
||||
new GetElementPtrInst(NCE, Constant::getNullValue(Type::IntTy),
|
||||
new GetElementPtrInst(NCE, Constant::getNullValue(Type::Int32Ty),
|
||||
NewAdd, GEPI->getName(), GEPI);
|
||||
GEPI->replaceAllUsesWith(NGEPI);
|
||||
GEPI->eraseFromParent();
|
||||
@ -499,7 +499,6 @@ void IndVarSimplify::runOnLoop(Loop *L) {
|
||||
|
||||
// Now that we know the largest of of the induction variables in this loop,
|
||||
// insert a canonical induction variable of the largest size.
|
||||
LargestType = LargestType->getUnsignedVersion();
|
||||
Value *IndVar = Rewriter.getOrInsertCanonicalInductionVariable(L,LargestType);
|
||||
++NumInserted;
|
||||
Changed = true;
|
||||
@ -525,7 +524,7 @@ void IndVarSimplify::runOnLoop(Loop *L) {
|
||||
PHINode *PN = IndVars[i].first;
|
||||
InsertedSizes[PN->getType()->getPrimitiveSize()] = true;
|
||||
Instruction *New = CastInst::create(Instruction::Trunc, IndVar,
|
||||
PN->getType()->getUnsignedVersion(), "indvar", InsertPt);
|
||||
PN->getType(), "indvar", InsertPt);
|
||||
Rewriter.addInsertedValue(New, SE->getSCEV(New));
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user