Introduce and use convenience methods for getting pointer types

where the element is of a basic builtin type.  For example, to get
an i8* use getInt8PtrTy.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83379 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Duncan Sands
2009-10-06 15:40:36 +00:00
parent 6e214805b1
commit ac53a0b272
25 changed files with 121 additions and 66 deletions

View File

@@ -9947,7 +9947,7 @@ Instruction *InstCombiner::visitCallSite(CallSite CS) {
// If the call and callee calling conventions don't match, this call must
// be unreachable, as the call is undefined.
new StoreInst(ConstantInt::getTrue(*Context),
UndefValue::get(PointerType::getUnqual(Type::getInt1Ty(*Context))),
UndefValue::get(Type::getInt1PtrTy(*Context)),
OldCall);
if (!OldCall->use_empty())
OldCall->replaceAllUsesWith(UndefValue::get(OldCall->getType()));
@@ -9961,7 +9961,7 @@ Instruction *InstCombiner::visitCallSite(CallSite CS) {
// undef so that we know that this code is not reachable, despite the fact
// that we can't modify the CFG here.
new StoreInst(ConstantInt::getTrue(*Context),
UndefValue::get(PointerType::getUnqual(Type::getInt1Ty(*Context))),
UndefValue::get(Type::getInt1PtrTy(*Context)),
CS.getInstruction());
if (!CS.getInstruction()->use_empty())
@@ -11235,7 +11235,7 @@ Instruction *InstCombiner::visitFreeInst(FreeInst &FI) {
if (isa<UndefValue>(Op)) {
// Insert a new store to null because we cannot modify the CFG here.
new StoreInst(ConstantInt::getTrue(*Context),
UndefValue::get(PointerType::getUnqual(Type::getInt1Ty(*Context))), &FI);
UndefValue::get(Type::getInt1PtrTy(*Context)), &FI);
return EraseInstFromFunction(FI);
}