-
Notifications
You must be signed in to change notification settings - Fork 15.2k
[BOLT][DWARF] Remove option to write to DWP #100771
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
@llvm/pr-subscribers-bolt Author: Sayhaan Siddiqui (sayhaan) ChangesRemove the --write-dwp option as well as related code and tests. Patch is 29.71 KiB, truncated to 20.00 KiB below, full version: https://github.com/llvm/llvm-project/pull/100771.diff 10 Files Affected:
diff --git a/bolt/include/bolt/Rewrite/DWARFRewriter.h b/bolt/include/bolt/Rewrite/DWARFRewriter.h
index b798c5b76fc28..d6c2a22ab28ad 100644
--- a/bolt/include/bolt/Rewrite/DWARFRewriter.h
+++ b/bolt/include/bolt/Rewrite/DWARFRewriter.h
@@ -15,7 +15,6 @@
#include "bolt/Core/GDBIndex.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/CodeGen/DIE.h"
-#include "llvm/DWP/DWP.h"
#include "llvm/MC/MCContext.h"
#include "llvm/Support/ToolOutputFile.h"
#include <cstdint>
@@ -194,35 +193,6 @@ class DWARFRewriter {
const std::string &, DebugLocWriter &,
DebugStrOffsetsWriter &, DebugStrWriter &);
using KnownSectionsEntry = std::pair<MCSection *, DWARFSectionKind>;
- struct DWPState {
- std::unique_ptr<ToolOutputFile> Out;
- std::unique_ptr<BinaryContext> TmpBC;
- std::unique_ptr<MCStreamer> Streamer;
- std::unique_ptr<DWPStringPool> Strings;
- /// Used to store String sections for .dwo files if they are being modified.
- std::vector<std::unique_ptr<DebugBufferVector>> StrSections;
- const MCObjectFileInfo *MCOFI = nullptr;
- const DWARFUnitIndex *CUIndex = nullptr;
- std::deque<SmallString<32>> UncompressedSections;
- MapVector<uint64_t, UnitIndexEntry> IndexEntries;
- MapVector<uint64_t, UnitIndexEntry> TypeIndexEntries;
- StringMap<KnownSectionsEntry> KnownSections;
- uint32_t ContributionOffsets[8] = {};
- uint32_t IndexVersion = 2;
- uint64_t DebugInfoSize = 0;
- uint16_t Version = 0;
- bool IsDWP = false;
- };
- /// Init .dwp file
- void initDWPState(DWPState &);
-
- /// Write out .dwp File
- void finalizeDWP(DWPState &);
-
- /// add content of dwo to .dwp file.
- void updateDWP(DWARFUnit &, const OverriddenSectionsMap &, const UnitMeta &,
- UnitMetaVectorType &, DWPState &, DebugLocWriter &,
- DebugStrOffsetsWriter &, DebugStrWriter &);
};
} // namespace bolt
diff --git a/bolt/lib/Rewrite/CMakeLists.txt b/bolt/lib/Rewrite/CMakeLists.txt
index 34993af2623bf..5d114925f59b0 100644
--- a/bolt/lib/Rewrite/CMakeLists.txt
+++ b/bolt/lib/Rewrite/CMakeLists.txt
@@ -1,7 +1,6 @@
set(LLVM_LINK_COMPONENTS
Core
DebugInfoDWARF
- DWP
JITLink
MC
Object
diff --git a/bolt/lib/Rewrite/DWARFRewriter.cpp b/bolt/lib/Rewrite/DWARFRewriter.cpp
index 674b5f17adb3f..1f6048897f4cf 100644
--- a/bolt/lib/Rewrite/DWARFRewriter.cpp
+++ b/bolt/lib/Rewrite/DWARFRewriter.cpp
@@ -32,6 +32,7 @@
#include "llvm/MC/MCAssembler.h"
#include "llvm/MC/MCObjectWriter.h"
#include "llvm/MC/MCStreamer.h"
+#include "llvm/MC/MCTargetOptionsCommandFlags.h"
#include "llvm/Object/ObjectFile.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/CommandLine.h"
@@ -56,6 +57,8 @@
#undef DEBUG_TYPE
#define DEBUG_TYPE "bolt"
+static mc::RegisterMCTargetOptionsFlags MOF;
+
static void printDie(const DWARFDie &DIE) {
DIDumpOptions DumpOpts;
DumpOpts.ShowForm = true;
@@ -328,14 +331,8 @@ static cl::opt<bool> KeepARanges(
static cl::opt<std::string> DwarfOutputPath(
"dwarf-output-path",
- cl::desc("Path to where .dwo files or dwp file will be written out to."),
- cl::init(""), cl::cat(BoltCategory));
-
-static cl::opt<bool>
- WriteDWP("write-dwp",
- cl::desc("output a single dwarf package file (dwp) instead of "
- "multiple non-relocatable dwarf object files (dwo)."),
- cl::init(false), cl::cat(BoltCategory));
+ cl::desc("Path to where .dwo files will be written out to."), cl::init(""),
+ cl::cat(BoltCategory));
static cl::opt<bool> CreateDebugNames(
"create-debug-names-section",
@@ -478,12 +475,13 @@ emitUnit(DIEBuilder &DIEBldr, DIEStreamer &Streamer, DWARFUnit &Unit) {
return {U.UnitOffset, U.UnitLength, TypeHash};
}
-static void
-emitDWOBuilder(const std::string &DWOName, DIEBuilder &DWODIEBuilder,
- DWARFRewriter &Rewriter, DWARFUnit &SplitCU, DWARFUnit &CU,
- DWARFRewriter::DWPState &State, DebugLocWriter &LocWriter,
- DebugStrOffsetsWriter &StrOffstsWriter,
- DebugStrWriter &StrWriter, GDBIndex &GDBIndexSection) {
+static void emitDWOBuilder(const std::string &DWOName,
+ DIEBuilder &DWODIEBuilder, DWARFRewriter &Rewriter,
+ DWARFUnit &SplitCU, DWARFUnit &CU,
+ DebugLocWriter &LocWriter,
+ DebugStrOffsetsWriter &StrOffstsWriter,
+ DebugStrWriter &StrWriter,
+ GDBIndex &GDBIndexSection) {
// Populate debug_info and debug_abbrev for current dwo into StringRef.
DWODIEBuilder.generateAbbrevs();
DWODIEBuilder.finish();
@@ -544,12 +542,8 @@ emitDWOBuilder(const std::string &DWOName, DIEBuilder &DWODIEBuilder,
continue;
OverriddenSections[Kind] = Contents;
}
- if (opts::WriteDWP)
- Rewriter.updateDWP(CU, OverriddenSections, CUMI, TUMetaVector, State,
- LocWriter, StrOffstsWriter, StrWriter);
- else
- Rewriter.writeDWOFiles(CU, OverriddenSections, DWOName, LocWriter,
- StrOffstsWriter, StrWriter);
+ Rewriter.writeDWOFiles(CU, OverriddenSections, DWOName, LocWriter,
+ StrOffstsWriter, StrWriter);
}
using DWARFUnitVec = std::vector<DWARFUnit *>;
@@ -662,9 +656,6 @@ void DWARFRewriter::updateDebugInfo() {
DWARF5AcceleratorTable DebugNamesTable(opts::CreateDebugNames, BC,
*StrWriter);
GDBIndex GDBIndexSection(BC);
- DWPState State;
- if (opts::WriteDWP)
- initDWPState(State);
auto processSplitCU = [&](DWARFUnit &Unit, DWARFUnit &SplitCU,
DIEBuilder &DIEBlder,
DebugRangesSectionWriter &TempRangesSectionWriter,
@@ -688,7 +679,7 @@ void DWARFRewriter::updateDebugInfo() {
if (Unit.getVersion() >= 5)
TempRangesSectionWriter.finalizeSection();
- emitDWOBuilder(DWOName, DWODIEBuilder, *this, SplitCU, Unit, State,
+ emitDWOBuilder(DWOName, DWODIEBuilder, *this, SplitCU, Unit,
DebugLocDWoWriter, DWOStrOffstsWriter, DWOStrWriter,
GDBIndexSection);
};
@@ -768,9 +759,6 @@ void DWARFRewriter::updateDebugInfo() {
DebugNamesTable.emitAccelTable();
- if (opts::WriteDWP)
- finalizeDWP(State);
-
finalizeDebugSections(DIEBlder, DebugNamesTable, *Streamer, *ObjOS, OffsetMap,
*FinalAddrWriter);
GDBIndexSection.updateGdbIndexSection(OffsetMap, CUIndex,
@@ -1816,220 +1804,6 @@ std::optional<StringRef> updateDebugData(
} // namespace
-void DWARFRewriter::initDWPState(DWPState &State) {
- SmallString<0> OutputNameStr;
- StringRef OutputName;
- if (opts::DwarfOutputPath.empty()) {
- OutputName =
- Twine(opts::OutputFilename).concat(".dwp").toStringRef(OutputNameStr);
- } else {
- StringRef ExeFileName = llvm::sys::path::filename(opts::OutputFilename);
- OutputName = Twine(opts::DwarfOutputPath)
- .concat("/")
- .concat(ExeFileName)
- .concat(".dwp")
- .toStringRef(OutputNameStr);
- errs() << "BOLT-WARNING: dwarf-output-path is in effect and .dwp file will "
- "possibly be written to another location that is not the same as "
- "the executable\n";
- }
- std::error_code EC;
- State.Out =
- std::make_unique<ToolOutputFile>(OutputName, EC, sys::fs::OF_None);
- const object::ObjectFile *File = BC.DwCtx->getDWARFObj().getFile();
- State.TmpBC = createDwarfOnlyBC(*File);
- State.Streamer = State.TmpBC->createStreamer(State.Out->os());
- State.MCOFI = State.Streamer->getContext().getObjectFileInfo();
- State.KnownSections = createKnownSectionsMap(*State.MCOFI);
- MCSection *const StrSection = State.MCOFI->getDwarfStrDWOSection();
-
- // Data Structures for DWP book keeping
- // Size of array corresponds to the number of sections supported by DWO format
- // in DWARF4/5.
-
- State.Strings = std::make_unique<DWPStringPool>(*State.Streamer, StrSection);
-
- // Setup DWP code once.
- DWARFContext *DWOCtx = BC.getDWOContext();
-
- if (DWOCtx) {
- State.CUIndex = &DWOCtx->getCUIndex();
- State.IsDWP = !State.CUIndex->getRows().empty();
- }
-}
-
-void DWARFRewriter::finalizeDWP(DWPState &State) {
- if (State.Version < 5) {
- // Lie about there being no info contributions so the TU index only includes
- // the type unit contribution for DWARF < 5. In DWARFv5 the TU index has a
- // contribution to the info section, so we do not want to lie about it.
- State.ContributionOffsets[0] = 0;
- }
- writeIndex(*State.Streamer.get(), State.MCOFI->getDwarfTUIndexSection(),
- State.ContributionOffsets, State.TypeIndexEntries,
- State.IndexVersion);
-
- if (State.Version < 5) {
- // Lie about the type contribution for DWARF < 5. In DWARFv5 the type
- // section does not exist, so no need to do anything about this.
- State.ContributionOffsets[getContributionIndex(DW_SECT_EXT_TYPES, 2)] = 0;
- // Unlie about the info contribution
- State.ContributionOffsets[0] = 1;
- }
- writeIndex(*State.Streamer.get(), State.MCOFI->getDwarfCUIndexSection(),
- State.ContributionOffsets, State.IndexEntries, State.IndexVersion);
-
- State.Streamer->finish();
- State.Out->keep();
-}
-
-void DWARFRewriter::updateDWP(DWARFUnit &CU,
- const OverriddenSectionsMap &OverridenSections,
- const DWARFRewriter::UnitMeta &CUMI,
- DWARFRewriter::UnitMetaVectorType &TUMetaVector,
- DWPState &State, DebugLocWriter &LocWriter,
- DebugStrOffsetsWriter &StrOffstsWriter,
- DebugStrWriter &StrWriter) {
- const uint64_t DWOId = *CU.getDWOId();
- MCSection *const StrOffsetSection = State.MCOFI->getDwarfStrOffDWOSection();
- assert(StrOffsetSection && "StrOffsetSection does not exist.");
- // Skipping CUs that we failed to load.
- std::optional<DWARFUnit *> DWOCU = BC.getDWOCU(DWOId);
- if (!DWOCU)
- return;
-
- if (State.Version == 0) {
- State.Version = CU.getVersion();
- State.IndexVersion = State.Version < 5 ? 2 : 5;
- } else if (State.Version != CU.getVersion()) {
- errs() << "BOLT-ERROR: incompatible DWARF compile unit versions\n";
- exit(1);
- }
-
- UnitIndexEntry CurEntry = {};
- CurEntry.DWOName = dwarf::toString(
- CU.getUnitDIE().find({dwarf::DW_AT_dwo_name, dwarf::DW_AT_GNU_dwo_name}),
- "");
- const char *Name = CU.getUnitDIE().getShortName();
- if (Name)
- CurEntry.Name = Name;
- StringRef CurStrSection;
- StringRef CurStrOffsetSection;
-
- // This maps each section contained in this file to its length.
- // This information is later on used to calculate the contributions,
- // i.e. offset and length, of each compile/type unit to a section.
- std::vector<std::pair<DWARFSectionKind, uint32_t>> SectionLength;
-
- const DWARFUnitIndex::Entry *CUDWOEntry = nullptr;
- if (State.IsDWP)
- CUDWOEntry = State.CUIndex->getFromHash(DWOId);
-
- bool StrSectionWrittenOut = false;
- const object::ObjectFile *DWOFile =
- (*DWOCU)->getContext().getDWARFObj().getFile();
-
- DebugRangeListsSectionWriter *RangeListssWriter = nullptr;
- if (CU.getVersion() == 5) {
- assert(RangeListsWritersByCU.count(DWOId) != 0 &&
- "No RangeListsWriter for DWO ID.");
- RangeListssWriter = RangeListsWritersByCU[DWOId].get();
- }
- auto AddType = [&](unsigned int Index, uint32_t IndexVersion, uint64_t Offset,
- uint64_t Length, uint64_t Hash) -> void {
- UnitIndexEntry TUEntry = CurEntry;
- if (IndexVersion < 5)
- TUEntry.Contributions[0] = {};
- TUEntry.Contributions[Index].setOffset(Offset);
- TUEntry.Contributions[Index].setLength(Length);
- State.ContributionOffsets[Index] +=
- TUEntry.Contributions[Index].getLength32();
- State.TypeIndexEntries.insert(std::make_pair(Hash, TUEntry));
- };
- std::unique_ptr<DebugBufferVector> StrOffsetsOutputData;
- std::unique_ptr<DebugBufferVector> StrOutputData;
- for (const SectionRef &Section : DWOFile->sections()) {
- std::unique_ptr<DebugBufferVector> OutputData = nullptr;
- StringRef SectionName = getSectionName(Section);
- Expected<StringRef> ContentsExp = Section.getContents();
- assert(ContentsExp && "Invalid contents.");
- std::optional<StringRef> TOutData =
- updateDebugData((*DWOCU)->getContext(), SectionName, *ContentsExp,
- State.KnownSections, *State.Streamer, *this, CUDWOEntry,
- DWOId, OutputData, RangeListssWriter, LocWriter,
- StrOffstsWriter, StrWriter, OverridenSections);
- if (!TOutData)
- continue;
-
- StringRef OutData = *TOutData;
- if (SectionName == "debug_types.dwo") {
- State.Streamer->emitBytes(OutData);
- continue;
- }
-
- if (SectionName == "debug_str.dwo") {
- CurStrSection = OutData;
- StrOutputData = std::move(OutputData);
- } else {
- // Since handleDebugDataPatching returned true, we already know this is
- // a known section.
- auto SectionIter = State.KnownSections.find(SectionName);
- if (SectionIter->second.second == DWARFSectionKind::DW_SECT_STR_OFFSETS) {
- CurStrOffsetSection = OutData;
- StrOffsetsOutputData = std::move(OutputData);
- } else {
- State.Streamer->emitBytes(OutData);
- }
- unsigned int Index =
- getContributionIndex(SectionIter->second.second, State.IndexVersion);
- uint64_t Offset = State.ContributionOffsets[Index];
- uint64_t Length = OutData.size();
- if (CU.getVersion() >= 5 &&
- SectionIter->second.second == DWARFSectionKind::DW_SECT_INFO) {
- for (UnitMeta &MI : TUMetaVector)
- MI.Offset += State.DebugInfoSize;
-
- Offset = State.DebugInfoSize + CUMI.Offset;
- Length = CUMI.Length;
- State.DebugInfoSize += OutData.size();
- }
- CurEntry.Contributions[Index].setOffset(Offset);
- CurEntry.Contributions[Index].setLength(Length);
- State.ContributionOffsets[Index] +=
- CurEntry.Contributions[Index].getLength32();
- }
-
- // Strings are combined in to a new string section, and de-duplicated
- // based on hash.
- if (!StrSectionWrittenOut && !CurStrOffsetSection.empty() &&
- !CurStrSection.empty()) {
- // If debug_str.dwo section was modified storing it until dwp is written
- // out. DWPStringPool stores raw pointers to strings.
- if (StrOutputData)
- State.StrSections.push_back(std::move(StrOutputData));
- writeStringsAndOffsets(*State.Streamer.get(), *State.Strings.get(),
- StrOffsetSection, CurStrSection,
- CurStrOffsetSection, CU.getVersion());
- StrSectionWrittenOut = true;
- }
- }
- CompileUnitIdentifiers CUI{DWOId, CurEntry.Name.c_str(),
- CurEntry.DWOName.c_str()};
- auto P = State.IndexEntries.insert(std::make_pair(CUI.Signature, CurEntry));
- if (!P.second) {
- Error Err = buildDuplicateError(*P.first, CUI, "");
- errs() << "BOLT-ERROR: " << toString(std::move(Err)) << "\n";
- return;
- }
-
- // Handling TU
- const unsigned Index = getContributionIndex(
- State.IndexVersion < 5 ? DW_SECT_EXT_TYPES : DW_SECT_INFO,
- State.IndexVersion);
- for (UnitMeta &MI : TUMetaVector)
- AddType(Index, State.IndexVersion, MI.Offset, MI.Length, MI.TUHash);
-}
-
void DWARFRewriter::writeDWOFiles(
DWARFUnit &CU, const OverriddenSectionsMap &OverridenSections,
const std::string &DWOName, DebugLocWriter &LocWriter,
diff --git a/bolt/test/X86/debug-fission-single-convert.s b/bolt/test/X86/debug-fission-single-convert.s
index 5ea6eb8e353af..02c9290211fc0 100644
--- a/bolt/test/X86/debug-fission-single-convert.s
+++ b/bolt/test/X86/debug-fission-single-convert.s
@@ -41,19 +41,6 @@
# CHECK-ADDR-SEC: 0x00000000: Addrs: [
# CHECK-ADDR-SEC: 0x0000000000601000
-# RUN: llvm-bolt %t.exe --reorder-blocks=reverse --update-debug-sections --dwarf-output-path=%T -o %t.bolt.2.exe --write-dwp=true \
-# RUN: --always-convert-to-ranges=true
-# RUN: not llvm-dwarfdump --show-form --verbose --debug-info %t.bolt.2.exe.dwp &> %tAddrIndexTestDwp
-# RUN: cat %tAddrIndexTestDwp | FileCheck %s --check-prefix=CHECK-DWP-DEBUG
-
-# CHECK-DWP-DEBUG: DW_TAG_compile_unit [1] *
-# CHECK-DWP-DEBUG: DW_AT_producer [DW_FORM_GNU_str_index] (indexed (0000000a) string = "clang version 13.0.0")
-# CHECK-DWP-DEBUG: DW_AT_language [DW_FORM_data2] (DW_LANG_C_plus_plus)
-# CHECK-DWP-DEBUG: DW_AT_name [DW_FORM_GNU_str_index] (indexed (0000000b) string = "foo")
-# CHECK-DWP-DEBUG: DW_AT_GNU_dwo_name [DW_FORM_GNU_str_index] (indexed (0000000c) string = "foo")
-# CHECK-DWP-DEBUG: DW_AT_GNU_dwo_id [DW_FORM_data8] (0x06105e732fad3796)
-
-
//clang++ -ffunction-sections -fno-exceptions -g -gsplit-dwarf=split -S debug-fission-simple.cpp -o debug-fission-simple.s
static int foo = 2;
int doStuff(int val) {
diff --git a/bolt/test/X86/debug-fission-single.s b/bolt/test/X86/debug-fission-single.s
index 4350bd9ec1815..1aa502fc9a840 100644
--- a/bolt/test/X86/debug-fission-single.s
+++ b/bolt/test/X86/debug-fission-single.s
@@ -42,18 +42,6 @@
# CHECK-ADDR-SEC: 0x00000000: Addrs: [
# CHECK-ADDR-SEC: 0x0000000000601000
-# RUN: llvm-bolt %t.exe --reorder-blocks=reverse --update-debug-sections --dwarf-output-path=%T -o %t.bolt.2.exe --write-dwp=true
-# RUN: llvm-dwarfdump --show-form --verbose --debug-info %t.bolt.2.exe.dwp &> %tAddrIndexTestDwp
-# RUN: cat %tAddrIndexTestDwp | FileCheck %s --check-prefix=CHECK-DWP-DEBUG
-
-# CHECK-DWP-DEBUG: DW_TAG_compile_unit [1] *
-# CHECK-DWP-DEBUG: DW_AT_producer [DW_FORM_GNU_str_index] (indexed (0000000a) string = "clang version 13.0.0")
-# CHECK-DWP-DEBUG: DW_AT_language [DW_FORM_data2] (DW_LANG_C_plus_plus)
-# CHECK-DWP-DEBUG: DW_AT_name [DW_FORM_GNU_str_index] (indexed (0000000b) string = "foo")
-# CHECK-DWP-DEBUG: DW_AT_GNU_dwo_name [DW_FORM_GNU_str_index] (indexed (0000000c) string = "foo")
-# CHECK-DWP-DEBUG: DW_AT_GNU_dwo_id [DW_FORM_data8] (0x06105e732fad3796)
-
-
//clang++ -ffunction-sections -fno-exceptions -g -gsplit-dwarf=split -S debug-fission-simple.cpp -o debug-fission-simple.s
static int foo = 2;
int doStuff(int val) {
diff --git a/bolt/test/X86/dwarf4-ftypes-dwo-input-dwp-output.test b/bolt/test/X86/dwarf4-ftypes-dwo-input-dwp-output.test
deleted file mode 100644
index d08b596ec8dd1..0000000000000
--- a/bolt/test/X86/dwarf4-ftypes-dwo-input-dwp-output.test
+++ /dev/null
@@ -1,30 +0,0 @@
-# REQUIRES: system-linux
-; RUN: rm -rf %t
-; RUN: mkdir %t
-; RUN: cd %t
-; RUN: llvm-mc --split-dwarf-file=main.dwo --triple=x86_64-unknown-linux-gnu \
-; RUN: --filetype=obj %p/Inputs/dwarf4-ftypes-split-dwarf.s -o=main.o
-; RUN: %clang %cflags -gdwarf-4 -gsplit-dwarf=split main.o -o main.exe
-; RUN: llvm-dwarfdump --show-form --verbose --debug-types main.dwo | FileCheck -check-prefix=PRE-BOLT %s
-; RUN: llvm-bolt main.exe -o main.exe.bolt --update-debug-sections --write-dwp
-; RUN: llvm-dwarfdump --show-form --verbose --debug-types main.exe.bolt.dwp | FileCheck -check-prefix=BOLT %s
-; RUN: llvm-dwarfdump --show-form --verbose --debug-tu-index main.exe.bolt.dwp | FileCheck -check-prefix=BOLT-DWP-TU-INDEX %s
-
-;; Test input into bolt a .dwo file with TU Index.
-;; Make sure the output .dwp file has a type information.
-
-; PRE-BOLT: DW_TAG_type_unit
-; PRE-BOLT: DW_TAG_type_unit
-
-; PRE-BOLT-DWP-TU-INDEX: version = 2, units = 2, slots = 4
-; PRE-BOLT-DWP-TU-INDEX: Index Signature
-; PRE-BOLT-DWP-TU-INDEX: 0x675d23e4f33235f2
-; PRE-BOLT-DWP-TU-INDEX-NEXT: 0x49dc260088be7e56
-
-; BOLT: DW_TAG_type_unit
-; BOLT: DW_TAG_type_unit
-
-; BOLT-DWP-TU-INDEX: version = 2, units = 2, slots = 4
-; BOLT-DWP-TU-INDEX: Index Signature
-; BOLT-DWP-TU-INDEX: 0x675d23e4f33235f2
-; BOLT-DWP-TU-INDEX-NEXT: 0x49dc260088be7e56
diff --git a/bolt/test/X86/dwarf4-ftypes-dwo-mono-input-dwp-output.test b/bolt/test/X86/dwarf4-ftypes-dwo-mono-input-dwp-output.test
deleted file mode 100644
index 54382142afc8f..0000000000000
--- a/bolt/test/X86/dwarf4-ftypes-dwo-mono-input-dwp-output.test
+++ /dev/null
@@ -1,45 +0,0 @@
-# ...
[truncated]
|
Summary: Test Plan: Reviewers: Subscribers: Tasks: Tags: Differential Revision: https://phabricator.intern.facebook.com/D60292935
|
In emitDWOBuilder Needs to be cleaned up |
ayermolo
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What about declaration of those data structures?
About to push those changes, was fixing a rebase issue |
Why was rebase necessary? |
Was running git fetch upstream and git rebase upstream/main |
Were you getting rebase conflicts on this PR? |
Yes, initially got the "error: failed to push some refs" message so I did fetch upstream/rebase. I was getting an error when I rebased too, so I aborted and reset from reflog and pushed again. |
|
✅ With the latest revision this PR passed the C/C++ code formatter. |
Since the "--write-dwp" option has been removed in [PR](#100771), this patch also cleans up the corresponding document and test to avoid misleading issues.
…c (#166150) Since the "--write-dwp" option has been removed in [PR](llvm/llvm-project#100771), this patch also cleans up the corresponding document and test to avoid misleading issues.
Remove the --write-dwp option as well as related code and tests.