This revision was automatically updated to reflect the committed changes. Closed by commit rL326805: Rewrite TestTargetSymbolsBuildidCase to be more focused (authored by labath, committed by ). Herald added a subscriber: llvm-commits.
Changed prior to commit: https://reviews.llvm.org/D42914?vs=132851&id=137197#toc Repository: rL LLVM https://reviews.llvm.org/D42914 Files: lldb/trunk/lit/Modules/build-id-case.yaml lldb/trunk/packages/Python/lldbsuite/test/linux/buildidcase/Makefile lldb/trunk/packages/Python/lldbsuite/test/linux/buildidcase/TestTargetSymbolsBuildidCase.py lldb/trunk/packages/Python/lldbsuite/test/linux/buildidcase/main.c lldb/trunk/tools/lldb-test/lldb-test.cpp
Index: lldb/trunk/tools/lldb-test/lldb-test.cpp =================================================================== --- lldb/trunk/tools/lldb-test/lldb-test.cpp +++ lldb/trunk/tools/lldb-test/lldb-test.cpp @@ -191,9 +191,11 @@ for (const auto &File : opts::module::InputFilenames) { ModuleSpec Spec{FileSpec(File, false)}; - Spec.GetSymbolFileSpec().SetFile(File, false); auto ModulePtr = std::make_shared<lldb_private::Module>(Spec); + // Fetch symbol vendor before we get the section list to give the symbol + // vendor a chance to populate it. + ModulePtr->GetSymbolVendor(); SectionList *Sections = ModulePtr->GetSectionList(); if (!Sections) { llvm::errs() << "Could not load sections for module " << File << "\n"; Index: lldb/trunk/lit/Modules/build-id-case.yaml =================================================================== --- lldb/trunk/lit/Modules/build-id-case.yaml +++ lldb/trunk/lit/Modules/build-id-case.yaml @@ -0,0 +1,42 @@ +# RUN: mkdir -p %t/.build-id/1b +# RUN: yaml2obj %s > %t/.build-id/1b/8a73ac238390e32a7ff4ac8ebe4d6a41ecf5c9.debug +# RUN: cd %t +# RUN: llvm-objcopy --strip-all --add-gnu-debuglink=.build-id/1b/8a73ac238390e32a7ff4ac8ebe4d6a41ecf5c9.debug %t/.build-id/1b/8a73ac238390e32a7ff4ac8ebe4d6a41ecf5c9.debug %t/stripped.out +# RUN: lldb-test module-sections %t/stripped.out | FileCheck %s + +# CHECK: Name: .debug_frame +# CHECK-NEXT: VM size: 0 +# CHECK-NEXT: File size: 8 + +--- !ELF +FileHeader: + Class: ELFCLASS64 + Data: ELFDATA2LSB + Type: ET_EXEC + Machine: EM_X86_64 + Entry: 0x00000000004003D0 +Sections: + - Name: .note.gnu.build-id + Type: SHT_NOTE + Flags: [ SHF_ALLOC ] + Address: 0x0000000000400274 + AddressAlign: 0x0000000000000004 + Content: 040000001400000003000000474E55001B8A73AC238390E32A7FF4AC8EBE4D6A41ECF5C9 + - Name: .text + Type: SHT_PROGBITS + Flags: [ SHF_ALLOC, SHF_EXECINSTR ] + Address: 0x00000000004003D0 + AddressAlign: 0x0000000000000010 + Content: DEADBEEFBAADF00D + - Name: .debug_frame + Type: SHT_PROGBITS + AddressAlign: 0x0000000000000008 + Content: DEADBEEFBAADF00D +Symbols: + Local: + - Name: main + Type: STT_FUNC + Section: .text + Value: 0x00000000004003D0 + Size: 0x0000000000000008 +... Index: lldb/trunk/packages/Python/lldbsuite/test/linux/buildidcase/main.c =================================================================== --- lldb/trunk/packages/Python/lldbsuite/test/linux/buildidcase/main.c +++ lldb/trunk/packages/Python/lldbsuite/test/linux/buildidcase/main.c @@ -1,3 +0,0 @@ -int main() { - return 0; -} Index: lldb/trunk/packages/Python/lldbsuite/test/linux/buildidcase/TestTargetSymbolsBuildidCase.py =================================================================== --- lldb/trunk/packages/Python/lldbsuite/test/linux/buildidcase/TestTargetSymbolsBuildidCase.py +++ lldb/trunk/packages/Python/lldbsuite/test/linux/buildidcase/TestTargetSymbolsBuildidCase.py @@ -1,22 +0,0 @@ -""" Testing separate debug info loading by its .build-id. """ -import os -import time -import lldb -import sys -from lldbsuite.test.decorators import * -from lldbsuite.test.lldbtest import * -from lldbsuite.test import lldbutil - - -class TestTargetSymbolsBuildidCase(TestBase): - - mydir = TestBase.compute_mydir(__file__) - - @no_debug_info_test # Prevent the genaration of the dwarf version of this test - @skipUnlessPlatform(['linux']) - @skipIf(hostoslist=['windows']) - def test_target_symbols_buildid_case(self): - self.build(clean=True) - exe = self.getBuildArtifact("stripped.out") - - lldbutil.run_to_name_breakpoint(self, "main", exe_name = exe) Index: lldb/trunk/packages/Python/lldbsuite/test/linux/buildidcase/Makefile =================================================================== --- lldb/trunk/packages/Python/lldbsuite/test/linux/buildidcase/Makefile +++ lldb/trunk/packages/Python/lldbsuite/test/linux/buildidcase/Makefile @@ -1,20 +0,0 @@ -LEVEL = ../../make -C_SOURCES := main.c -LD_EXTRAS += -Wl,--build-id=sha1 - -all: stripped.out - -.PHONY: .build-id -stripped.out .build-id: a.out - $(OBJCOPY) -j .note.gnu.build-id -O binary $< tmp - rm -rf .build-id - fn=`od -An -tx1 <tmp|tr -d ' \n'|sed -e 's/^.\{32\}//' -e 's#^..#.build-id/&/#' -e 's#$$#.debug#'` && \ - mkdir -p `dirname $$fn` && \ - $(OBJCOPY) --only-keep-debug $< $$fn && \ - $(OBJCOPY) --strip-all --add-gnu-debuglink=$$fn $< stripped.out - $(RM) tmp - -clean:: - $(RM) -r stripped.out .build-id - -include $(LEVEL)/Makefile.rules
_______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits