diff options
| author | Duncan P. N. Exon Smith <dexonsmith@apple.com> | 2014-12-09 18:39:32 +0000 |
|---|---|---|
| committer | Duncan P. N. Exon Smith <dexonsmith@apple.com> | 2014-12-09 18:39:32 +0000 |
| commit | fb494914779d4e2b86b038a1491138d305e46789 (patch) | |
| tree | a2d3d2e3ced8ad76719bb8128792c26d767d85a7 /clang/lib/CodeGen/SanitizerMetadata.cpp | |
| parent | 5bf8fef58013e2c97180236fa6973faa40435d5f (diff) | |
| download | bcm5719-llvm-fb494914779d4e2b86b038a1491138d305e46789.tar.gz bcm5719-llvm-fb494914779d4e2b86b038a1491138d305e46789.zip | |
IR: Update clang for Metadata/Value split in r223802
Match LLVM API changes from r223802.
llvm-svn: 223803
Diffstat (limited to 'clang/lib/CodeGen/SanitizerMetadata.cpp')
| -rw-r--r-- | clang/lib/CodeGen/SanitizerMetadata.cpp | 28 |
1 files changed, 15 insertions, 13 deletions
diff --git a/clang/lib/CodeGen/SanitizerMetadata.cpp b/clang/lib/CodeGen/SanitizerMetadata.cpp index 70bc0581a5b..7c38b2807e9 100644 --- a/clang/lib/CodeGen/SanitizerMetadata.cpp +++ b/clang/lib/CodeGen/SanitizerMetadata.cpp @@ -30,8 +30,8 @@ void SanitizerMetadata::reportGlobalToASan(llvm::GlobalVariable *GV, IsDynInit &= !CGM.isInSanitizerBlacklist(GV, Loc, Ty, "init"); IsBlacklisted |= CGM.isInSanitizerBlacklist(GV, Loc, Ty); - llvm::Value *LocDescr = nullptr; - llvm::Value *GlobalName = nullptr; + llvm::Metadata *LocDescr = nullptr; + llvm::Metadata *GlobalName = nullptr; llvm::LLVMContext &VMContext = CGM.getLLVMContext(); if (!IsBlacklisted) { // Don't generate source location and global name if it is blacklisted - @@ -41,10 +41,12 @@ void SanitizerMetadata::reportGlobalToASan(llvm::GlobalVariable *GV, GlobalName = llvm::MDString::get(VMContext, Name); } - llvm::Value *GlobalMetadata[] = { - GV, LocDescr, GlobalName, - llvm::ConstantInt::get(llvm::Type::getInt1Ty(VMContext), IsDynInit), - llvm::ConstantInt::get(llvm::Type::getInt1Ty(VMContext), IsBlacklisted)}; + llvm::Metadata *GlobalMetadata[] = { + llvm::ConstantAsMetadata::get(GV), LocDescr, GlobalName, + llvm::ConstantAsMetadata::get( + llvm::ConstantInt::get(llvm::Type::getInt1Ty(VMContext), IsDynInit)), + llvm::ConstantAsMetadata::get(llvm::ConstantInt::get( + llvm::Type::getInt1Ty(VMContext), IsBlacklisted))}; llvm::MDNode *ThisGlobal = llvm::MDNode::get(VMContext, GlobalMetadata); llvm::NamedMDNode *AsanGlobals = @@ -70,9 +72,8 @@ void SanitizerMetadata::disableSanitizerForGlobal(llvm::GlobalVariable *GV) { } void SanitizerMetadata::disableSanitizerForInstruction(llvm::Instruction *I) { - I->setMetadata( - CGM.getModule().getMDKindID("nosanitize"), - llvm::MDNode::get(CGM.getLLVMContext(), ArrayRef<llvm::Value *>())); + I->setMetadata(CGM.getModule().getMDKindID("nosanitize"), + llvm::MDNode::get(CGM.getLLVMContext(), None)); } llvm::MDNode *SanitizerMetadata::getLocationMetadata(SourceLocation Loc) { @@ -80,11 +81,12 @@ llvm::MDNode *SanitizerMetadata::getLocationMetadata(SourceLocation Loc) { if (!PLoc.isValid()) return nullptr; llvm::LLVMContext &VMContext = CGM.getLLVMContext(); - llvm::Value *LocMetadata[] = { + llvm::Metadata *LocMetadata[] = { llvm::MDString::get(VMContext, PLoc.getFilename()), - llvm::ConstantInt::get(llvm::Type::getInt32Ty(VMContext), PLoc.getLine()), - llvm::ConstantInt::get(llvm::Type::getInt32Ty(VMContext), - PLoc.getColumn()), + llvm::ConstantAsMetadata::get(llvm::ConstantInt::get( + llvm::Type::getInt32Ty(VMContext), PLoc.getLine())), + llvm::ConstantAsMetadata::get(llvm::ConstantInt::get( + llvm::Type::getInt32Ty(VMContext), PLoc.getColumn())), }; return llvm::MDNode::get(VMContext, LocMetadata); } |

