aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2010-03-15 19:09:43 +0000
committerChris Lattner <sabre@nondot.org>2010-03-15 19:09:43 +0000
commit0220ba7995236accae6ac009a2700871fc17007d (patch)
tree6df3815b77df85e7c42d309f10b9ac445892fcd2 /include
parentca704957972df96a86f4ef90ce992bce5a9b60e9 (diff)
downloadexternal_llvm-0220ba7995236accae6ac009a2700871fc17007d.zip
external_llvm-0220ba7995236accae6ac009a2700871fc17007d.tar.gz
external_llvm-0220ba7995236accae6ac009a2700871fc17007d.tar.bz2
Fix the case when a reference to an address taken BB is emitted in one
function, then the BB is RAUW'd before the definition is emitted. There are still two cases not being handled, but this should improve us back to the situation before I touched anything. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98566 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r--include/llvm/CodeGen/MachineModuleInfo.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/include/llvm/CodeGen/MachineModuleInfo.h b/include/llvm/CodeGen/MachineModuleInfo.h
index 2b813cc..accc62e 100644
--- a/include/llvm/CodeGen/MachineModuleInfo.h
+++ b/include/llvm/CodeGen/MachineModuleInfo.h
@@ -88,6 +88,8 @@ struct LandingPadInfo {
: LandingPadBlock(MBB), LandingPadLabel(0), Personality(0) {}
};
+class MMIAddrLabelMap;
+
//===----------------------------------------------------------------------===//
/// MachineModuleInfo - This class contains meta information specific to a
/// module. Queries can be made by different debugging and exception handling
@@ -142,7 +144,7 @@ class MachineModuleInfo : public ImmutablePass {
/// AddrLabelSymbols - This map keeps track of which symbol is being used for
/// the specified basic block's address of label.
- DenseMap<AssertingVH<BasicBlock>, MCSymbol*> AddrLabelSymbols;
+ MMIAddrLabelMap *AddrLabelSymbols;
bool CallsEHReturn;
bool CallsUnwindInit;