diff options
| author | Reid Kleckner <reid@kleckner.net> | 2014-11-14 00:35:50 +0000 |
|---|---|---|
| committer | Reid Kleckner <reid@kleckner.net> | 2014-11-14 00:35:50 +0000 |
| commit | 283bc2ed28f423c29ab57a2b491d2ebdb53a4b12 (patch) | |
| tree | b3a1978d772d25c68d2a8b3a9829c74f4abb6f24 /llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp | |
| parent | d318df403a123ac3afe8eecf3bd53cd0c588c8dc (diff) | |
| download | bcm5719-llvm-283bc2ed28f423c29ab57a2b491d2ebdb53a4b12.tar.gz bcm5719-llvm-283bc2ed28f423c29ab57a2b491d2ebdb53a4b12.zip | |
Allow the use of functions as typeinfo in landingpad clauses
This is one step towards supporting SEH filter functions in LLVM.
llvm-svn: 221954
Diffstat (limited to 'llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp')
| -rw-r--r-- | llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp b/llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp index ff1cfe2d32b..86b9542f2f2 100644 --- a/llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp +++ b/llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp @@ -483,7 +483,7 @@ void llvm::AddCatchInfo(const CallInst &I, MachineModuleInfo *MMI, // Gather all the type infos for this landing pad and pass them along to // MachineModuleInfo. - std::vector<const GlobalVariable *> TyInfo; + std::vector<const GlobalValue *> TyInfo; unsigned N = I.getNumArgOperands(); for (unsigned i = N - 1; i > 1; --i) { @@ -541,14 +541,14 @@ void llvm::AddLandingPadInfo(const LandingPadInst &I, MachineModuleInfo &MMI, Value *Val = I.getClause(i - 1); if (I.isCatch(i - 1)) { MMI.addCatchTypeInfo(MBB, - dyn_cast<GlobalVariable>(Val->stripPointerCasts())); + dyn_cast<GlobalValue>(Val->stripPointerCasts())); } else { // Add filters in a list. Constant *CVal = cast<Constant>(Val); - SmallVector<const GlobalVariable*, 4> FilterList; + SmallVector<const GlobalValue*, 4> FilterList; for (User::op_iterator II = CVal->op_begin(), IE = CVal->op_end(); II != IE; ++II) - FilterList.push_back(cast<GlobalVariable>((*II)->stripPointerCasts())); + FilterList.push_back(cast<GlobalValue>((*II)->stripPointerCasts())); MMI.addFilterTypeInfo(MBB, FilterList); } |

