From: NAKAMURA Takumi Date: Thu, 6 Dec 2012 02:00:13 +0000 (+0000) Subject: Revert r169456, "change MCContext to work on the doInitialization/doFinalization... X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=c7078924f044584d9e9b277862d34d5b43ff2b1e;p=oota-llvm.git Revert r169456, "change MCContext to work on the doInitialization/doFinalization model" It broke many builders. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169462 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/llvm/MC/MCContext.h b/include/llvm/MC/MCContext.h index 766b90a1b1c..78870d9633e 100644 --- a/include/llvm/MC/MCContext.h +++ b/include/llvm/MC/MCContext.h @@ -154,17 +154,6 @@ namespace llvm { void setAllowTemporaryLabels(bool Value) { AllowTemporaryLabels = Value; } - /// @name Module Lifetime Management - /// @{ - - /// doInitialization - prepare to process a new module - void doInitialization(); - - /// doFinalization - clean up state from the current module - void doFinalization(); - - /// @} - /// @name Symbol Management /// @{ diff --git a/lib/CodeGen/MachineModuleInfo.cpp b/lib/CodeGen/MachineModuleInfo.cpp index c5fd4a17c27..4fbbb05ee6b 100644 --- a/lib/CodeGen/MachineModuleInfo.cpp +++ b/lib/CodeGen/MachineModuleInfo.cpp @@ -270,9 +270,6 @@ MachineModuleInfo::~MachineModuleInfo() { } bool MachineModuleInfo::doInitialization(Module &M) { - - Context.doInitialization(); - ObjFileMMI = 0; CompactUnwindEncoding = 0; CurCallSite = 0; @@ -294,8 +291,6 @@ bool MachineModuleInfo::doFinalization(Module &M) { delete AddrLabelSymbols; AddrLabelSymbols = 0; - Context.doFinalization(); - return false; } diff --git a/lib/MC/MCContext.cpp b/lib/MC/MCContext.cpp index cd95b1161a8..dd9d956088a 100644 --- a/lib/MC/MCContext.cpp +++ b/lib/MC/MCContext.cpp @@ -44,48 +44,23 @@ MCContext::MCContext(const MCAsmInfo &mai, const MCRegisterInfo &mri, SecureLogFile = getenv("AS_SECURE_LOG_FILE"); SecureLog = 0; SecureLogUsed = false; -} - -MCContext::~MCContext() { - // NOTE: The symbols are all allocated out of a bump pointer allocator, - // we don't need to free them here. - - // If the stream for the .secure_log_unique directive was created free it. - delete (raw_ostream*)SecureLog; -} - -//===----------------------------------------------------------------------===// -// Module Lifetime Management -//===----------------------------------------------------------------------===// -void MCContext::doInitialization() { - NextUniqueID = 0; - AllowTemporaryLabels = true; DwarfLocSeen = false; GenDwarfForAssembly = false; GenDwarfFileNumber = 0; } -void MCContext::doFinalization() { - UsedNames.clear(); - Symbols.clear(); - Allocator.Reset(); - Instances.clear(); - MCDwarfFiles.clear(); - MCDwarfDirs.clear(); - MCGenDwarfLabelEntries.clear(); - DwarfDebugFlags = StringRef(); - MCLineSections.clear(); - MCLineSectionOrder.clear(); - CurrentDwarfLoc = MCDwarfLoc(0,0,0,DWARF2_FLAG_IS_STMT,0,0); +MCContext::~MCContext() { + // NOTE: The symbols are all allocated out of a bump pointer allocator, + // we don't need to free them here. // If we have the MachO uniquing map, free it. delete (MachOUniqueMapTy*)MachOUniquingMap; delete (ELFUniqueMapTy*)ELFUniquingMap; delete (COFFUniqueMapTy*)COFFUniquingMap; - MachOUniquingMap = 0; - ELFUniquingMap = 0; - COFFUniquingMap = 0; + + // If the stream for the .secure_log_unique directive was created free it. + delete (raw_ostream*)SecureLog; } //===----------------------------------------------------------------------===//