[vmkit-commits] [vmkit] r114734 - in /vmkit/trunk: lib/J3/Compiler/LowerConstantCalls.cpp lib/Mvm/Compiler/EscapeAnalysis.cpp lib/Mvm/Compiler/InlineMalloc.cpp lib/Mvm/Compiler/LoopSafePoints.cpp mmtk/magic/LowerMagic.cpp
Nicolas Geoffray
nicolas.geoffray at lip6.fr
Fri Sep 24 10:16:33 PDT 2010
Author: geoffray
Date: Fri Sep 24 12:16:33 2010
New Revision: 114734
URL: http://llvm.org/viewvc/llvm-project?rev=114734&view=rev
Log:
Move to new LLVM API.
Modified:
vmkit/trunk/lib/J3/Compiler/LowerConstantCalls.cpp
vmkit/trunk/lib/Mvm/Compiler/EscapeAnalysis.cpp
vmkit/trunk/lib/Mvm/Compiler/InlineMalloc.cpp
vmkit/trunk/lib/Mvm/Compiler/LoopSafePoints.cpp
vmkit/trunk/mmtk/magic/LowerMagic.cpp
Modified: vmkit/trunk/lib/J3/Compiler/LowerConstantCalls.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/Compiler/LowerConstantCalls.cpp?rev=114734&r1=114733&r2=114734&view=diff
==============================================================================
--- vmkit/trunk/lib/J3/Compiler/LowerConstantCalls.cpp (original)
+++ vmkit/trunk/lib/J3/Compiler/LowerConstantCalls.cpp Fri Sep 24 12:16:33 2010
@@ -143,14 +143,18 @@
Cmp->eraseFromParent();
break;
}
-
- CallSite Ca = CallSite::get(Arg);
- Instruction* CI = Ca.getInstruction();
- if (CI && Ca.getCalledValue() == intrinsics->AllocateFunction) {
- Changed = true;
- Cmp->replaceAllUsesWith(ConstantInt::getFalse(*Context));
- Cmp->eraseFromParent();
- break;
+
+ Instruction* InsArg = dyn_cast<Instruction>(Arg);
+ if (InsArg != NULL &&
+ (InsArg->getOpcode() == Instruction::Call ||
+ InsArg->getOpcode() == Instruction::Invoke)) {
+ CallSite Ca(Arg);
+ if (Ca.getCalledValue() == intrinsics->AllocateFunction) {
+ Changed = true;
+ Cmp->replaceAllUsesWith(ConstantInt::getFalse(*Context));
+ Cmp->eraseFromParent();
+ break;
+ }
}
}
}
@@ -164,10 +168,15 @@
if (dyn_cast<StoreInst>(*UI)) continue;
if (BitCastInst* BI = dyn_cast<BitCastInst>(*UI)) {
if (BI->hasOneUse()) {
- CallSite Call = CallSite::get(*(BI->use_begin()));
- Instruction* CI = Call.getInstruction();
- if (CI && Call.getCalledFunction() == intrinsics->llvm_gc_gcroot)
- continue;
+ Instruction* use = dyn_cast<Instruction>(*(BI->use_begin()));
+ if (use != NULL &&
+ (use->getOpcode() == Instruction::Call ||
+ use->getOpcode() == Instruction::Invoke)) {
+ CallSite Call(use);
+ if (Call.getCalledFunction() == intrinsics->llvm_gc_gcroot) {
+ continue;
+ }
+ }
}
}
@@ -185,7 +194,7 @@
if (dyn_cast<Instruction>(II) == SI) ++II;
SI->eraseFromParent();
} else if (BitCastInst* BI = dyn_cast<BitCastInst>(Temp)) {
- CallSite Call = CallSite::get(*(BI->use_begin()));
+ CallSite Call(*(BI->use_begin()));
Instruction* CI = Call.getInstruction();
if (dyn_cast<Instruction>(II) == CI) ++II;
CI->eraseFromParent();
@@ -205,9 +214,10 @@
}
}
- CallSite Call = CallSite::get(I);
- Instruction* CI = Call.getInstruction();
- if (CI) {
+ if ((I->getOpcode() == Instruction::Call ||
+ I->getOpcode() == Instruction::Invoke)) {
+ Instruction* CI = I;
+ CallSite Call(I);
Value* V = Call.getCalledValue();
if (V == intrinsics->ArrayLengthFunction) {
Changed = true;
Modified: vmkit/trunk/lib/Mvm/Compiler/EscapeAnalysis.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/Mvm/Compiler/EscapeAnalysis.cpp?rev=114734&r1=114733&r2=114734&view=diff
==============================================================================
--- vmkit/trunk/lib/Mvm/Compiler/EscapeAnalysis.cpp (original)
+++ vmkit/trunk/lib/Mvm/Compiler/EscapeAnalysis.cpp Fri Sep 24 12:16:33 2010
@@ -76,9 +76,12 @@
for (BasicBlock::iterator II = Cur->begin(), IE = Cur->end(); II != IE;) {
Instruction *I = II;
II++;
- CallSite Call = CallSite::get(I);
- if (Call.getInstruction() && Call.getCalledValue() == Allocator) {
-
+ if (I->getOpcode() != Instruction::Call &&
+ I->getOpcode() != Instruction::Invoke) {
+ continue;
+ }
+ CallSite Call(I);
+ if (Call.getCalledValue() == Allocator) {
if (CurLoop) {
bool escapesLoop = false;
for (Value::use_iterator U = I->use_begin(), E = I->use_end();
@@ -118,7 +121,7 @@
if (II->getOpcode() == Instruction::Call ||
II->getOpcode() == Instruction::Invoke) {
- CallSite CS = CallSite::get(II);
+ CallSite CS(II);
if (!CS.onlyReadsMemory()) return true;
CallSite::arg_iterator B = CS.arg_begin(), E = CS.arg_end();
Modified: vmkit/trunk/lib/Mvm/Compiler/InlineMalloc.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/Mvm/Compiler/InlineMalloc.cpp?rev=114734&r1=114733&r2=114734&view=diff
==============================================================================
--- vmkit/trunk/lib/Mvm/Compiler/InlineMalloc.cpp (original)
+++ vmkit/trunk/lib/Mvm/Compiler/InlineMalloc.cpp Fri Sep 24 12:16:33 2010
@@ -49,16 +49,17 @@
for (BasicBlock::iterator II = Cur->begin(), IE = Cur->end(); II != IE;) {
Instruction *I = II;
II++;
- CallSite Call = CallSite::get(I);
- Instruction* CI = Call.getInstruction();
- if (CI) {
- Function* Temp = Call.getCalledFunction();
- if (Temp == Malloc) {
- if (dyn_cast<Constant>(Call.getArgument(0))) {
- InlineFunctionInfo IFI(NULL, mvm::MvmModule::TheTargetData);
- Changed |= InlineFunction(Call, IFI);
- break;
- }
+ if (I->getOpcode() != Instruction::Call &&
+ I->getOpcode() != Instruction::Invoke) {
+ continue;
+ }
+ CallSite Call(I);
+ Function* Temp = Call.getCalledFunction();
+ if (Temp == Malloc) {
+ if (dyn_cast<Constant>(Call.getArgument(0))) {
+ InlineFunctionInfo IFI(NULL, mvm::MvmModule::TheTargetData);
+ Changed |= InlineFunction(Call, IFI);
+ break;
}
}
}
Modified: vmkit/trunk/lib/Mvm/Compiler/LoopSafePoints.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/Mvm/Compiler/LoopSafePoints.cpp?rev=114734&r1=114733&r2=114734&view=diff
==============================================================================
--- vmkit/trunk/lib/Mvm/Compiler/LoopSafePoints.cpp (original)
+++ vmkit/trunk/lib/Mvm/Compiler/LoopSafePoints.cpp Fri Sep 24 12:16:33 2010
@@ -82,8 +82,13 @@
for (BasicBlock::iterator II = Cur->begin(), IE = Cur->end(); II != IE;) {
Instruction *I = II;
II++;
- CallSite Call = CallSite::get(I);
- if (Call.getInstruction() && Call.getCalledValue() == SafeFunction) {
+ if (I->getOpcode() != Instruction::Call &&
+ I->getOpcode() != Instruction::Invoke) {
+ continue;
+ }
+
+ CallSite Call(I);
+ if (Call.getCalledValue() == SafeFunction) {
if (BasicBlock* Incoming = Cur->getSinglePredecessor()) {
if (BranchInst* T = dyn_cast<BranchInst>(Incoming->getTerminator())) {
if (LoadInst* LI = dyn_cast<LoadInst>(T->getCondition())) {
Modified: vmkit/trunk/mmtk/magic/LowerMagic.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/mmtk/magic/LowerMagic.cpp?rev=114734&r1=114733&r2=114734&view=diff
==============================================================================
--- vmkit/trunk/mmtk/magic/LowerMagic.cpp (original)
+++ vmkit/trunk/mmtk/magic/LowerMagic.cpp Fri Sep 24 12:16:33 2010
@@ -422,9 +422,13 @@
for (BasicBlock::iterator II = Cur->begin(), IE = Cur->end(); II != IE;) {
Instruction *I = II;
II++;
- CallSite Call = CallSite::get(I);
- Instruction* CI = Call.getInstruction();
- if (CI) {
+ if (I->getOpcode() != Instruction::Call &&
+ I->getOpcode() != Instruction::Invoke) {
+ continue;
+ }
+
+ CallSite Call(I);
+ Instruction* CI = I;
Value* V = Call.getCalledValue();
if (Function* FCur = dyn_cast<Function>(V)) {
const char* name = FCur->getName().data();
@@ -1250,7 +1254,6 @@
}
}
}
- }
}
}
return Changed;
More information about the vmkit-commits
mailing list