Fix rtti generation for throws. WIP.

llvm-svn: 89420
This commit is contained in:
Mike Stump
2009-11-20 00:43:57 +00:00
parent 01956f5a6b
commit 18fc44dfd3

View File

@@ -84,15 +84,7 @@ void CodeGenFunction::EmitCXXThrowExpr(const CXXThrowExpr *E) {
// Now throw the exception.
const llvm::Type *Int8PtrTy = llvm::Type::getInt8PtrTy(getLLVMContext());
llvm::SmallString<256> OutName;
llvm::raw_svector_ostream Out(OutName);
mangleCXXRtti(CGM.getMangleContext(), ThrowType, Out);
// FIXME: Is it OK to use CreateRuntimeVariable for this?
llvm::Constant *TypeInfo =
CGM.CreateRuntimeVariable(llvm::Type::getInt8Ty(getLLVMContext()),
OutName.c_str());
llvm::Constant *TypeInfo = CGM.GenerateRtti(ThrowType);
llvm::Constant *Dtor = llvm::Constant::getNullValue(Int8PtrTy);
llvm::CallInst *ThrowCall =