Merge pull request #898 from Vsevolod-Livinskij/fix_for_trunk
Fix for trunk (rev. 221167 and rev. 221375)
This commit is contained in:
12
cbackend.cpp
12
cbackend.cpp
@@ -152,7 +152,11 @@ namespace {
|
||||
incorporateValue(Aliasee);
|
||||
}
|
||||
|
||||
#if defined(LLVM_3_2) || defined(LLVM_3_3) || defined(LLVM_3_4) || defined(LLVM_3_5)
|
||||
llvm::SmallVector<std::pair<unsigned, llvm::MDNode*>, 4> MDForInst;
|
||||
#else // LLVM 3.6+
|
||||
llvm::SmallVector<std::pair<unsigned, llvm::Value*>, 4> MDForInst;
|
||||
#endif
|
||||
|
||||
// Get types from functions.
|
||||
for (llvm::Module::const_iterator FI = M.begin(), E = M.end(); FI != E; ++FI) {
|
||||
@@ -178,7 +182,11 @@ namespace {
|
||||
// Incorporate types hiding in metadata.
|
||||
I.getAllMetadataOtherThanDebugLoc(MDForInst);
|
||||
for (unsigned i = 0, e = MDForInst.size(); i != e; ++i)
|
||||
#if defined(LLVM_3_2) || defined(LLVM_3_3) || defined(LLVM_3_4) || defined(LLVM_3_5)
|
||||
incorporateMDNode(MDForInst[i].second);
|
||||
#else // LLVM 3.6+
|
||||
incorporateMDNode(llvm::cast<llvm::MDNode>(MDForInst[i].second));
|
||||
#endif
|
||||
MDForInst.clear();
|
||||
}
|
||||
}
|
||||
@@ -187,7 +195,11 @@ namespace {
|
||||
E = M.named_metadata_end(); I != E; ++I) {
|
||||
const llvm::NamedMDNode *NMD = I;
|
||||
for (unsigned i = 0, e = NMD->getNumOperands(); i != e; ++i)
|
||||
#if defined(LLVM_3_2) || defined(LLVM_3_3) || defined(LLVM_3_4) || defined(LLVM_3_5)
|
||||
incorporateMDNode(NMD->getOperand(i));
|
||||
#else // LLVM 3.6+
|
||||
incorporateMDNode(llvm::cast<llvm::MDNode>(NMD->getOperand(i)));
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -168,7 +168,11 @@ lStripUnusedDebugInfo(llvm::Module *module) {
|
||||
// loop over the compile units that contributed to the final module
|
||||
if (llvm::NamedMDNode *cuNodes = module->getNamedMetadata("llvm.dbg.cu")) {
|
||||
for (unsigned i = 0, ie = cuNodes->getNumOperands(); i != ie; ++i) {
|
||||
#if defined(LLVM_3_2) || defined(LLVM_3_3) || defined(LLVM_3_4) || defined(LLVM_3_5)
|
||||
llvm::MDNode *cuNode = cuNodes->getOperand(i);
|
||||
#else // LLVM 3.6+
|
||||
llvm::MDNode *cuNode = llvm::cast<llvm::MDNode>(cuNodes->getOperand(i));
|
||||
#endif
|
||||
llvm::DICompileUnit cu(cuNode);
|
||||
llvm::DIArray subprograms = cu.getSubprograms();
|
||||
std::vector<llvm::Value *> usedSubprograms;
|
||||
|
||||
Reference in New Issue
Block a user