mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-01-31 12:41:49 +01:00
[dsymutil] Rename llvm-dsymutil -> dsymutil
Now that almost all functionality of Apple's dsymutil has been upstreamed, the open source variant can be used as a drop in replacement. Hence we feel it's no longer necessary to have the llvm prefix. Differential revision: https://reviews.llvm.org/D44527 llvm-svn: 327790
This commit is contained in:
parent
476b586d94
commit
a595d2986a
@ -12,8 +12,8 @@ Introduction
|
|||||||
does not build the project, it generates the files needed by your build tool
|
does not build the project, it generates the files needed by your build tool
|
||||||
(GNU make, Visual Studio, etc.) for building LLVM.
|
(GNU make, Visual Studio, etc.) for building LLVM.
|
||||||
|
|
||||||
If **you are a new contributor**, please start with the :doc:`GettingStarted`
|
If **you are a new contributor**, please start with the :doc:`GettingStarted`
|
||||||
page. This page is geared for existing contributors moving from the
|
page. This page is geared for existing contributors moving from the
|
||||||
legacy configure/make system.
|
legacy configure/make system.
|
||||||
|
|
||||||
If you are really anxious about getting a functional LLVM build, go to the
|
If you are really anxious about getting a functional LLVM build, go to the
|
||||||
@ -413,10 +413,10 @@ LLVM-specific variables
|
|||||||
**LLVM_BUILD_DOCS**:BOOL
|
**LLVM_BUILD_DOCS**:BOOL
|
||||||
Adds all *enabled* documentation targets (i.e. Doxgyen and Sphinx targets) as
|
Adds all *enabled* documentation targets (i.e. Doxgyen and Sphinx targets) as
|
||||||
dependencies of the default build targets. This results in all of the (enabled)
|
dependencies of the default build targets. This results in all of the (enabled)
|
||||||
documentation targets being as part of a normal build. If the ``install``
|
documentation targets being as part of a normal build. If the ``install``
|
||||||
target is run then this also enables all built documentation targets to be
|
target is run then this also enables all built documentation targets to be
|
||||||
installed. Defaults to OFF. To enable a particular documentation target, see
|
installed. Defaults to OFF. To enable a particular documentation target, see
|
||||||
see LLVM_ENABLE_SPHINX and LLVM_ENABLE_DOXYGEN.
|
see LLVM_ENABLE_SPHINX and LLVM_ENABLE_DOXYGEN.
|
||||||
|
|
||||||
**LLVM_ENABLE_DOXYGEN**:BOOL
|
**LLVM_ENABLE_DOXYGEN**:BOOL
|
||||||
Enables the generation of browsable HTML documentation using doxygen.
|
Enables the generation of browsable HTML documentation using doxygen.
|
||||||
@ -513,7 +513,7 @@ LLVM-specific variables
|
|||||||
OS X Only: If enabled CMake will generate a target named
|
OS X Only: If enabled CMake will generate a target named
|
||||||
'install-xcode-toolchain'. This target will create a directory at
|
'install-xcode-toolchain'. This target will create a directory at
|
||||||
$CMAKE_INSTALL_PREFIX/Toolchains containing an xctoolchain directory which can
|
$CMAKE_INSTALL_PREFIX/Toolchains containing an xctoolchain directory which can
|
||||||
be used to override the default system tools.
|
be used to override the default system tools.
|
||||||
|
|
||||||
**LLVM_BUILD_LLVM_DYLIB**:BOOL
|
**LLVM_BUILD_LLVM_DYLIB**:BOOL
|
||||||
If enabled, the target for building the libLLVM shared library is added.
|
If enabled, the target for building the libLLVM shared library is added.
|
||||||
@ -534,7 +534,7 @@ LLVM-specific variables
|
|||||||
library (ON) or as a static library (OFF). Its default value is OFF. On
|
library (ON) or as a static library (OFF). Its default value is OFF. On
|
||||||
Windows, shared libraries may be used when building with MinGW, including
|
Windows, shared libraries may be used when building with MinGW, including
|
||||||
mingw-w64, but not when building with the Microsoft toolchain.
|
mingw-w64, but not when building with the Microsoft toolchain.
|
||||||
|
|
||||||
.. note:: BUILD_SHARED_LIBS is only recommended for use by LLVM developers.
|
.. note:: BUILD_SHARED_LIBS is only recommended for use by LLVM developers.
|
||||||
If you want to build LLVM as a shared library, you should use the
|
If you want to build LLVM as a shared library, you should use the
|
||||||
``LLVM_BUILD_LLVM_DYLIB`` option.
|
``LLVM_BUILD_LLVM_DYLIB`` option.
|
||||||
|
@ -214,7 +214,7 @@ const DataLayout &AsmPrinter::getDataLayout() const {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Do not use the cached DataLayout because some client use it without a Module
|
// Do not use the cached DataLayout because some client use it without a Module
|
||||||
// (llvm-dsymutil, llvm-dwarfdump).
|
// (dsymutil, llvm-dwarfdump).
|
||||||
unsigned AsmPrinter::getPointerSize() const {
|
unsigned AsmPrinter::getPointerSize() const {
|
||||||
return TM.getPointerSize(0); // FIXME: Default address space
|
return TM.getPointerSize(0); // FIXME: Default address space
|
||||||
}
|
}
|
||||||
|
@ -56,7 +56,7 @@ set(LLVM_TEST_DEPENDS
|
|||||||
llvm-diff
|
llvm-diff
|
||||||
llvm-dis
|
llvm-dis
|
||||||
llvm-dlltool
|
llvm-dlltool
|
||||||
llvm-dsymutil
|
dsymutil
|
||||||
llvm-dwarfdump
|
llvm-dwarfdump
|
||||||
llvm-dwp
|
llvm-dwp
|
||||||
llvm-extract
|
llvm-extract
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
Reuse a test input from llvm-dsymutil, it's perfect for what we want to exercise
|
Reuse a test input from dsymutil, it's perfect for what we want to exercise
|
||||||
RUN: llvm-dwarfdump -v %S/Inputs/fat-test.o --debug-info | FileCheck %s
|
RUN: llvm-dwarfdump -v %S/Inputs/fat-test.o --debug-info | FileCheck %s
|
||||||
|
|
||||||
CHECK: fat-test.o(x86_64): file format Mach-O 64-bit x86-64
|
CHECK: fat-test.o(x86_64): file format Mach-O 64-bit x86-64
|
||||||
|
@ -138,8 +138,8 @@ tools = [
|
|||||||
|
|
||||||
# FIXME: Why do we have both `lli` and `%lli` that do slightly different things?
|
# FIXME: Why do we have both `lli` and `%lli` that do slightly different things?
|
||||||
tools.extend([
|
tools.extend([
|
||||||
'lli', 'lli-child-target', 'llvm-ar', 'llvm-as', 'llvm-bcanalyzer', 'llvm-config', 'llvm-cov',
|
'dsymutil', 'lli', 'lli-child-target', 'llvm-ar', 'llvm-as', 'llvm-bcanalyzer',
|
||||||
'llvm-cxxdump', 'llvm-cvtres', 'llvm-diff', 'llvm-dis', 'llvm-dsymutil',
|
'llvm-config', 'llvm-cov', 'llvm-cxxdump', 'llvm-cvtres', 'llvm-diff', 'llvm-dis',
|
||||||
'llvm-dwarfdump', 'llvm-extract', 'llvm-isel-fuzzer', 'llvm-opt-fuzzer', 'llvm-lib',
|
'llvm-dwarfdump', 'llvm-extract', 'llvm-isel-fuzzer', 'llvm-opt-fuzzer', 'llvm-lib',
|
||||||
'llvm-link', 'llvm-lto', 'llvm-lto2', 'llvm-mc', 'llvm-mca','llvm-mcmarkup',
|
'llvm-link', 'llvm-lto', 'llvm-lto2', 'llvm-mc', 'llvm-mca','llvm-mcmarkup',
|
||||||
'llvm-modextract', 'llvm-nm', 'llvm-objcopy', 'llvm-objdump',
|
'llvm-modextract', 'llvm-nm', 'llvm-objcopy', 'llvm-objdump',
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# REQUIRES: object-emission
|
# REQUIRES: object-emission
|
||||||
# RUN: llvm-dsymutil -f -oso-prepend-path=%p/../Inputs -y %s -o - 2>&1 | FileCheck %s
|
# RUN: dsymutil -f -oso-prepend-path=%p/../Inputs -y %s -o - 2>&1 | FileCheck %s
|
||||||
|
|
||||||
---
|
---
|
||||||
triple: 'thumbv7-apple-darwin'
|
triple: 'thumbv7-apple-darwin'
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# REQUIRES: object-emission
|
# REQUIRES: object-emission
|
||||||
# RUN: llvm-dsymutil -no-output %p/../Inputs/fat-test.arm.dylib -o %t.dSYM -verbose 2>&1 | FileCheck %s
|
# RUN: dsymutil -no-output %p/../Inputs/fat-test.arm.dylib -o %t.dSYM -verbose 2>&1 | FileCheck %s
|
||||||
|
|
||||||
# We detect thumb triples from the binaries, because those are the only ones
|
# We detect thumb triples from the binaries, because those are the only ones
|
||||||
# that are guaranteed to be able to generate a Target instance (for example
|
# that are guaranteed to be able to generate a Target instance (for example
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# REQUIRES: object-emission
|
# REQUIRES: object-emission
|
||||||
# RUN: llvm-dsymutil -f -oso-prepend-path=%p/../Inputs -y %s -o - 2>&1 | FileCheck %s
|
# RUN: dsymutil -f -oso-prepend-path=%p/../Inputs -y %s -o - 2>&1 | FileCheck %s
|
||||||
|
|
||||||
---
|
---
|
||||||
triple: 'armv7-apple-darwin'
|
triple: 'armv7-apple-darwin'
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
# REQUIRES: object-emission
|
# REQUIRES: object-emission
|
||||||
# By default, dsymutil spawns one thread per architecture and this test just
|
# By default, dsymutil spawns one thread per architecture and this test just
|
||||||
# ensures that things don't break when processing multiple archs.
|
# ensures that things don't break when processing multiple archs.
|
||||||
# RUN: llvm-dsymutil -no-output %p/../Inputs/fat-test.arm.dylib -o %t.brief.dSYM 2>&1
|
# RUN: dsymutil -no-output %p/../Inputs/fat-test.arm.dylib -o %t.brief.dSYM 2>&1
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
static int foo(int i) { return 42 + i; }
|
static int foo(int i) { return 42 + i; }
|
||||||
int bar(int a) { return foo(a); }
|
int bar(int a) { return foo(a); }
|
||||||
|
|
||||||
// RUN: llvm-dsymutil -f -y %p/dummy-debug-map-amr64.map -oso-prepend-path %p/../Inputs/inlined-low_pc -o - | llvm-dwarfdump - | FileCheck %s
|
// RUN: dsymutil -f -y %p/dummy-debug-map-amr64.map -oso-prepend-path %p/../Inputs/inlined-low_pc -o - | llvm-dwarfdump - | FileCheck %s
|
||||||
|
|
||||||
// CHECK: DW_TAG_subprogram
|
// CHECK: DW_TAG_subprogram
|
||||||
// CHECK: DW_AT_low_pc{{.*}}0x0000000000010000
|
// CHECK: DW_AT_low_pc{{.*}}0x0000000000010000
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
RUN: llvm-dsymutil -y %p/dummy-debug-map.map -oso-prepend-path %p/../Inputs/scattered-reloc/ -f -o - | llvm-dwarfdump -debug-info - | FileCheck %s
|
RUN: dsymutil -y %p/dummy-debug-map.map -oso-prepend-path %p/../Inputs/scattered-reloc/ -f -o - | llvm-dwarfdump -debug-info - | FileCheck %s
|
||||||
|
|
||||||
// See Inputs/scattered-reloc/scattered.s to see how this test
|
// See Inputs/scattered-reloc/scattered.s to see how this test
|
||||||
// actually works.
|
// actually works.
|
||||||
int bar = 42;
|
int bar = 42;
|
||||||
|
|
||||||
CHECK: DW_TAG_variable
|
CHECK: DW_TAG_variable
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
// RUN: llvm-dsymutil -f -oso-prepend-path=%p/.. %p/../Inputs/thumb.armv7m -o - | llvm-dwarfdump - | FileCheck %s
|
// RUN: dsymutil -f -oso-prepend-path=%p/.. %p/../Inputs/thumb.armv7m -o - | llvm-dwarfdump - | FileCheck %s
|
||||||
// RUN: llvm-dsymutil -arch armv7m -f -oso-prepend-path=%p/.. %p/../Inputs/thumb.armv7m -o - | llvm-dwarfdump - | FileCheck %s
|
// RUN: dsymutil -arch armv7m -f -oso-prepend-path=%p/.. %p/../Inputs/thumb.armv7m -o - | llvm-dwarfdump - | FileCheck %s
|
||||||
|
|
||||||
/* Compile with:
|
/* Compile with:
|
||||||
clang -c thumb.c -arch armv7m -g
|
clang -c thumb.c -arch armv7m -g
|
||||||
|
@ -14,7 +14,7 @@
|
|||||||
# Compiled with Apple-GCC 4.0.1 (build 5370):
|
# Compiled with Apple-GCC 4.0.1 (build 5370):
|
||||||
# g++ -g -c sibling.cpp -o sibling.o
|
# g++ -g -c sibling.cpp -o sibling.o
|
||||||
|
|
||||||
# RUN: llvm-dsymutil -arch ppc -f -oso-prepend-path=%p/../Inputs/ -y %s -o - | llvm-dwarfdump -debug-info - | FileCheck %s
|
# RUN: dsymutil -arch ppc -f -oso-prepend-path=%p/../Inputs/ -y %s -o - | llvm-dwarfdump -debug-info - | FileCheck %s
|
||||||
|
|
||||||
# CHECK: DW_TAG_structure_type
|
# CHECK: DW_TAG_structure_type
|
||||||
# CHECK-NEXT: DW_AT_name ("A")
|
# CHECK-NEXT: DW_AT_name ("A")
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
# RUN: llvm-dsymutil -f -oso-prepend-path=%p/../Inputs/alias \
|
# RUN: dsymutil -f -oso-prepend-path=%p/../Inputs/alias \
|
||||||
# RUN: %p/../Inputs/alias/foobar -o - | llvm-dwarfdump - 2>&1 | FileCheck %s
|
# RUN: %p/../Inputs/alias/foobar -o - | llvm-dwarfdump - 2>&1 | FileCheck %s
|
||||||
# CHECK-NOT: could not find object file symbol for symbol
|
# CHECK-NOT: could not find object file symbol for symbol
|
||||||
# CHECK: DW_AT_name ("foo.c")
|
# CHECK: DW_AT_name ("foo.c")
|
||||||
|
@ -2,7 +2,7 @@ RUN: rm -rf %t
|
|||||||
RUN: mkdir -p %t/dsymdest
|
RUN: mkdir -p %t/dsymdest
|
||||||
RUN: cat %p/../Inputs/basic.macho.x86_64 > %t/basic.macho.x86_64
|
RUN: cat %p/../Inputs/basic.macho.x86_64 > %t/basic.macho.x86_64
|
||||||
|
|
||||||
RUN: llvm-dsymutil -oso-prepend-path=%p/.. %t/basic.macho.x86_64
|
RUN: dsymutil -oso-prepend-path=%p/.. %t/basic.macho.x86_64
|
||||||
|
|
||||||
Check that the object file in the bundle exists and is sane:
|
Check that the object file in the bundle exists and is sane:
|
||||||
RUN: llvm-dwarfdump -a %t/basic.macho.x86_64.dSYM/Contents/Resources/DWARF/basic.macho.x86_64 | FileCheck %S/basic-linking-x86.test
|
RUN: llvm-dwarfdump -a %t/basic.macho.x86_64.dSYM/Contents/Resources/DWARF/basic.macho.x86_64 | FileCheck %S/basic-linking-x86.test
|
||||||
@ -12,7 +12,7 @@ RUN: llvm-dwarfdump -a %t/basic.macho.x86_64.dSYM | FileCheck %S/basic-linking-x
|
|||||||
|
|
||||||
RUN: FileCheck %s --input-file %t/basic.macho.x86_64.dSYM/Contents/Info.plist
|
RUN: FileCheck %s --input-file %t/basic.macho.x86_64.dSYM/Contents/Info.plist
|
||||||
|
|
||||||
RUN: llvm-dsymutil -oso-prepend-path=%p/.. %t/basic.macho.x86_64 -o %t/dsymdest/basic.macho.x86_64.dSYM
|
RUN: dsymutil -oso-prepend-path=%p/.. %t/basic.macho.x86_64 -o %t/dsymdest/basic.macho.x86_64.dSYM
|
||||||
RUN: llvm-dwarfdump -a %t/dsymdest/basic.macho.x86_64.dSYM/Contents/Resources/DWARF/basic.macho.x86_64 | FileCheck %S/basic-linking-x86.test
|
RUN: llvm-dwarfdump -a %t/dsymdest/basic.macho.x86_64.dSYM/Contents/Resources/DWARF/basic.macho.x86_64 | FileCheck %S/basic-linking-x86.test
|
||||||
RUN: FileCheck %s --input-file %t/dsymdest/basic.macho.x86_64.dSYM/Contents/Info.plist
|
RUN: FileCheck %s --input-file %t/dsymdest/basic.macho.x86_64.dSYM/Contents/Info.plist
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
RUN: cat %p/../Inputs/basic.macho.x86_64 > %t1
|
RUN: cat %p/../Inputs/basic.macho.x86_64 > %t1
|
||||||
RUN: llvm-dsymutil -f -oso-prepend-path=%p/.. %t1
|
RUN: dsymutil -f -oso-prepend-path=%p/.. %t1
|
||||||
RUN: llvm-dwarfdump -a %t1.dwarf | FileCheck %s
|
RUN: llvm-dwarfdump -a %t1.dwarf | FileCheck %s
|
||||||
RUN: llvm-dsymutil -f -o %t2 -oso-prepend-path=%p/.. %p/../Inputs/basic.macho.x86_64
|
RUN: dsymutil -f -o %t2 -oso-prepend-path=%p/.. %p/../Inputs/basic.macho.x86_64
|
||||||
RUN: llvm-dwarfdump -a %t2 | FileCheck %s
|
RUN: llvm-dwarfdump -a %t2 | FileCheck %s
|
||||||
RUN: llvm-dsymutil -f -o - -oso-prepend-path=%p/.. %p/../Inputs/basic.macho.x86_64 | llvm-dwarfdump -a - | FileCheck %s --check-prefix=CHECK --check-prefix=BASIC
|
RUN: dsymutil -f -o - -oso-prepend-path=%p/.. %p/../Inputs/basic.macho.x86_64 | llvm-dwarfdump -a - | FileCheck %s --check-prefix=CHECK --check-prefix=BASIC
|
||||||
RUN: llvm-dsymutil -f -o - -oso-prepend-path=%p/.. %p/../Inputs/basic-archive.macho.x86_64 | llvm-dwarfdump -a - | FileCheck %s --check-prefix=CHECK --check-prefix=ARCHIVE
|
RUN: dsymutil -f -o - -oso-prepend-path=%p/.. %p/../Inputs/basic-archive.macho.x86_64 | llvm-dwarfdump -a - | FileCheck %s --check-prefix=CHECK --check-prefix=ARCHIVE
|
||||||
RUN: llvm-dsymutil -dump-debug-map -oso-prepend-path=%p/.. %p/../Inputs/basic.macho.x86_64 | llvm-dsymutil -f -y -o - - | llvm-dwarfdump -a - | FileCheck %s --check-prefix=CHECK --check-prefix=BASIC
|
RUN: dsymutil -dump-debug-map -oso-prepend-path=%p/.. %p/../Inputs/basic.macho.x86_64 | dsymutil -f -y -o - - | llvm-dwarfdump -a - | FileCheck %s --check-prefix=CHECK --check-prefix=BASIC
|
||||||
RUN: llvm-dsymutil -dump-debug-map -oso-prepend-path=%p/.. %p/../Inputs/basic-archive.macho.x86_64 | llvm-dsymutil -f -o - -y - | llvm-dwarfdump -a - | FileCheck %s --check-prefix=CHECK --check-prefix=ARCHIVE
|
RUN: dsymutil -dump-debug-map -oso-prepend-path=%p/.. %p/../Inputs/basic-archive.macho.x86_64 | dsymutil -f -o - -y - | llvm-dwarfdump -a - | FileCheck %s --check-prefix=CHECK --check-prefix=ARCHIVE
|
||||||
|
|
||||||
CHECK: file format Mach-O 64-bit x86-64
|
CHECK: file format Mach-O 64-bit x86-64
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
RUN: llvm-dsymutil -f -o - -oso-prepend-path=%p/.. %p/../Inputs/basic-lto-dw4.macho.x86_64 | llvm-dwarfdump -a - | FileCheck %s
|
RUN: dsymutil -f -o - -oso-prepend-path=%p/.. %p/../Inputs/basic-lto-dw4.macho.x86_64 | llvm-dwarfdump -a - | FileCheck %s
|
||||||
|
|
||||||
CHECK: file format Mach-O 64-bit x86-64
|
CHECK: file format Mach-O 64-bit x86-64
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
RUN: llvm-dsymutil -f -o - -oso-prepend-path=%p/.. %p/../Inputs/basic-lto.macho.x86_64 | llvm-dwarfdump -a - | FileCheck %s
|
RUN: dsymutil -f -o - -oso-prepend-path=%p/.. %p/../Inputs/basic-lto.macho.x86_64 | llvm-dwarfdump -a - | FileCheck %s
|
||||||
RUN: llvm-dsymutil -oso-prepend-path=%p/.. -dump-debug-map %p/../Inputs/basic-lto.macho.x86_64 | llvm-dsymutil -f -o - -y - | llvm-dwarfdump -a - | FileCheck %s
|
RUN: dsymutil -oso-prepend-path=%p/.. -dump-debug-map %p/../Inputs/basic-lto.macho.x86_64 | dsymutil -f -o - -y - | llvm-dwarfdump -a - | FileCheck %s
|
||||||
|
|
||||||
CHECK: file format Mach-O 64-bit x86-64
|
CHECK: file format Mach-O 64-bit x86-64
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
RUN: llvm-dsymutil -f -o - -oso-prepend-path=%p/.. %p/../Inputs/basic-with-libfat-test.macho.x86_64 | llvm-dwarfdump - | FileCheck %s
|
RUN: dsymutil -f -o - -oso-prepend-path=%p/.. %p/../Inputs/basic-with-libfat-test.macho.x86_64 | llvm-dwarfdump - | FileCheck %s
|
||||||
|
|
||||||
The test binary was created by force-linking the libfat-test.a fat archive
|
The test binary was created by force-linking the libfat-test.a fat archive
|
||||||
with the basic linking test archive, like so:
|
with the basic linking test archive, like so:
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
RUN: llvm-dsymutil -oso-prepend-path %p/.. %p/../Inputs/common.macho.x86_64 -f -o - | llvm-dwarfdump -v -debug-info - | FileCheck %s
|
RUN: dsymutil -oso-prepend-path %p/.. %p/../Inputs/common.macho.x86_64 -f -o - | llvm-dwarfdump -v -debug-info - | FileCheck %s
|
||||||
|
|
||||||
The test was compiled from a single source:
|
The test was compiled from a single source:
|
||||||
$ cat common.c
|
$ cat common.c
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
# RUN: llvm-dsymutil -oso-prepend-path %p/../Inputs -y %s -f -o - | llvm-dwarfdump - --debug-line | FileCheck %s
|
# RUN: dsymutil -oso-prepend-path %p/../Inputs -y %s -f -o - | llvm-dwarfdump - --debug-line | FileCheck %s
|
||||||
|
|
||||||
# This test runs dsymutil on an object file with non-standard (as far
|
# This test runs dsymutil on an object file with non-standard (as far
|
||||||
# as llvm is concerned) line table settings.
|
# as llvm is concerned) line table settings.
|
||||||
|
@ -5,10 +5,10 @@ RUN: mkdir -p %t/dsymdest
|
|||||||
RUN: cat %p/../Inputs/basic.macho.x86_64 > %t/basic.macho.x86_64
|
RUN: cat %p/../Inputs/basic.macho.x86_64 > %t/basic.macho.x86_64
|
||||||
RUN: cat %p/../Inputs/Info.plist > %t/Info.plist
|
RUN: cat %p/../Inputs/Info.plist > %t/Info.plist
|
||||||
|
|
||||||
RUN: llvm-dsymutil -oso-prepend-path=%p/.. %t/basic.macho.x86_64 -o %t/dsymdest/basic.macho.x86_64.dSYM
|
RUN: dsymutil -oso-prepend-path=%p/.. %t/basic.macho.x86_64 -o %t/dsymdest/basic.macho.x86_64.dSYM
|
||||||
RUN: FileCheck %s --input-file %t/dsymdest/basic.macho.x86_64.dSYM/Contents/Info.plist
|
RUN: FileCheck %s --input-file %t/dsymdest/basic.macho.x86_64.dSYM/Contents/Info.plist
|
||||||
|
|
||||||
RUN: llvm-dsymutil -oso-prepend-path=%p/.. %t/basic.macho.x86_64 -toolchain "toolchain" -o %t/dsymdest/basic.macho.x86_64.dSYM
|
RUN: dsymutil -oso-prepend-path=%p/.. %t/basic.macho.x86_64 -toolchain "toolchain" -o %t/dsymdest/basic.macho.x86_64.dSYM
|
||||||
RUN: FileCheck %s --input-file %t/dsymdest/basic.macho.x86_64.dSYM/Contents/Info.plist --check-prefix=CHECK --check-prefix=TOOLCHAIN
|
RUN: FileCheck %s --input-file %t/dsymdest/basic.macho.x86_64.dSYM/Contents/Info.plist --check-prefix=CHECK --check-prefix=TOOLCHAIN
|
||||||
|
|
||||||
CHECK: <?xml version="1.0" encoding="UTF-8"?>
|
CHECK: <?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
// RUN: llvm-dsymutil -f -y %p/dummy-debug-map.map -oso-prepend-path %p/../Inputs/dead-stripped -o - | llvm-dwarfdump - --debug-info | FileCheck %s
|
// RUN: dsymutil -f -y %p/dummy-debug-map.map -oso-prepend-path %p/../Inputs/dead-stripped -o - | llvm-dwarfdump - --debug-info | FileCheck %s
|
||||||
|
|
||||||
// The test was compiled with:
|
// The test was compiled with:
|
||||||
// clang++ -O2 -g -c dead-strip.cpp -o 1.o
|
// clang++ -O2 -g -c dead-strip.cpp -o 1.o
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
RUN: llvm-dsymutil -o - %p/../Inputs/basic.macho.i386 -f | llvm-readobj -file-headers -program-headers -sections -symbols - | FileCheck %s -check-prefix=CHECK -check-prefix=CHECK32
|
RUN: dsymutil -o - %p/../Inputs/basic.macho.i386 -f | llvm-readobj -file-headers -program-headers -sections -symbols - | FileCheck %s -check-prefix=CHECK -check-prefix=CHECK32
|
||||||
RUN: llvm-dsymutil -o - -oso-prepend-path=%p/.. %p/../Inputs/basic.macho.x86_64 -f | llvm-readobj -file-headers -program-headers -sections -symbols - | FileCheck %s -check-prefix=CHECK -check-prefix=CHECK64
|
RUN: dsymutil -o - -oso-prepend-path=%p/.. %p/../Inputs/basic.macho.x86_64 -f | llvm-readobj -file-headers -program-headers -sections -symbols - | FileCheck %s -check-prefix=CHECK -check-prefix=CHECK64
|
||||||
|
|
||||||
This test checks that the dSYM companion binaries generated in 32 and 64 bits
|
This test checks that the dSYM companion binaries generated in 32 and 64 bits
|
||||||
are correct. The check are pretty strict (we check even the offsets and sizes
|
are correct. The check are pretty strict (we check even the offsets and sizes
|
||||||
of the sections) in order to test the VM address layout algorithm. As the
|
of the sections) in order to test the VM address layout algorithm. As the
|
||||||
debug sections are generated, this is a bit risky, but I don't expect
|
debug sections are generated, this is a bit risky, but I don't expect
|
||||||
llvm-dsymutil's output to change much for these tiny C programs so this should
|
dsymutil's output to change much for these tiny C programs so this should
|
||||||
be OK.
|
be OK.
|
||||||
The 32bits version doesn't have object files, thus it has basically no debug
|
The 32bits version doesn't have object files, thus it has basically no debug
|
||||||
sections.
|
sections.
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
# RUN: llvm-dsymutil -f -oso-prepend-path=%p/../Inputs/ -y %s -o - | llvm-dwarfdump -debug-line - | FileCheck %s
|
# RUN: dsymutil -f -oso-prepend-path=%p/../Inputs/ -y %s -o - | llvm-dwarfdump -debug-line - | FileCheck %s
|
||||||
|
|
||||||
# Source:
|
# Source:
|
||||||
# int main() {
|
# int main() {
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
# RUN: llvm-dsymutil -f -oso-prepend-path=%p/../Inputs/ -y %s -o - | llvm-dwarfdump -debug-line - | FileCheck %s
|
# RUN: dsymutil -f -oso-prepend-path=%p/../Inputs/ -y %s -o - | llvm-dwarfdump -debug-line - | FileCheck %s
|
||||||
|
|
||||||
# Source:
|
# Source:
|
||||||
# int main() {
|
# int main() {
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
# This test verifies that an empty range list in the .debug_ranges section
|
# This test verifies that an empty range list in the .debug_ranges section
|
||||||
# doesn't crash llvm-dsymutil. As clang does not produce this kind of debug
|
# doesn't crash dsymutil. As clang does not produce this kind of debug
|
||||||
# info anymore, we used this hand-crafted assembly file to produce a testcase
|
# info anymore, we used this hand-crafted assembly file to produce a testcase
|
||||||
# Compile with:
|
# Compile with:
|
||||||
# llvm-mc -triple x86_64-apple-darwin -filetype=obj -o 1.o empty_range.o
|
# llvm-mc -triple x86_64-apple-darwin -filetype=obj -o 1.o empty_range.o
|
||||||
|
|
||||||
# RUN: llvm-dsymutil -f -y %p/dummy-debug-map.map -oso-prepend-path %p/../Inputs/empty_range -o - | llvm-dwarfdump -debug-info - | FileCheck %s
|
# RUN: dsymutil -f -y %p/dummy-debug-map.map -oso-prepend-path %p/../Inputs/empty_range -o - | llvm-dwarfdump -debug-info - | FileCheck %s
|
||||||
|
|
||||||
.section __TEXT,__text,regular,pure_instructions
|
.section __TEXT,__text,regular,pure_instructions
|
||||||
.macosx_version_min 10, 11
|
.macosx_version_min 10, 11
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# REQUIRES: object-emission
|
# REQUIRES: object-emission
|
||||||
# RUN: llvm-dsymutil -f -oso-prepend-path=%p/../Inputs -y %s -o - | llvm-dwarfdump -debug-info - | FileCheck %s
|
# RUN: dsymutil -f -oso-prepend-path=%p/../Inputs -y %s -o - | llvm-dwarfdump -debug-info - | FileCheck %s
|
||||||
|
|
||||||
---
|
---
|
||||||
triple: 'i386-apple-darwin'
|
triple: 'i386-apple-darwin'
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# REQUIRES: object-emission
|
# REQUIRES: object-emission
|
||||||
# RUN: llvm-dsymutil -f -oso-prepend-path=%p/../Inputs -y %s -o - | llvm-dwarfdump -debug-info - | FileCheck %s
|
# RUN: dsymutil -f -oso-prepend-path=%p/../Inputs -y %s -o - | llvm-dwarfdump -debug-info - | FileCheck %s
|
||||||
|
|
||||||
---
|
---
|
||||||
triple: 'x86_64-apple-darwin'
|
triple: 'x86_64-apple-darwin'
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# REQUIRES: object-emission
|
# REQUIRES: object-emission
|
||||||
# RUN: llvm-dsymutil -f -oso-prepend-path=%p/../Inputs -y %s -o - | llvm-dwarfdump -debug-info - | FileCheck %s
|
# RUN: dsymutil -f -oso-prepend-path=%p/../Inputs -y %s -o - | llvm-dwarfdump -debug-info - | FileCheck %s
|
||||||
|
|
||||||
---
|
---
|
||||||
triple: 'x86_64h-apple-darwin'
|
triple: 'x86_64h-apple-darwin'
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
# RUN: rm -rf %t
|
# RUN: rm -rf %t
|
||||||
# RUN: mkdir -p %t
|
# RUN: mkdir -p %t
|
||||||
# RUN: llc -filetype=obj %p/../Inputs/frame-dw2.ll -o %t/frame-dw2.o
|
# RUN: llc -filetype=obj %p/../Inputs/frame-dw2.ll -o %t/frame-dw2.o
|
||||||
# RUN: llvm-dsymutil -f -oso-prepend-path=%t -y %s -o - | llvm-dwarfdump -debug-frame - | FileCheck %s
|
# RUN: dsymutil -f -oso-prepend-path=%t -y %s -o - | llvm-dwarfdump -debug-frame - | FileCheck %s
|
||||||
|
|
||||||
# This test is meant to verify that identical CIEs will get reused
|
# This test is meant to verify that identical CIEs will get reused
|
||||||
# in the same file but also inbetween files. For this to happen, we
|
# in the same file but also inbetween files. For this to happen, we
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
# RUN: mkdir -p %t
|
# RUN: mkdir -p %t
|
||||||
# RUN: llc -filetype=obj %p/../Inputs/frame-dw2.ll -o %t/frame-dw2.o
|
# RUN: llc -filetype=obj %p/../Inputs/frame-dw2.ll -o %t/frame-dw2.o
|
||||||
# RUN: llc -filetype=obj %p/../Inputs/frame-dw4.ll -o %t/frame-dw4.o
|
# RUN: llc -filetype=obj %p/../Inputs/frame-dw4.ll -o %t/frame-dw4.o
|
||||||
# RUN: llvm-dsymutil -f -oso-prepend-path=%t -y %s -o - | llvm-dwarfdump -debug-frame - | FileCheck %s
|
# RUN: dsymutil -f -oso-prepend-path=%t -y %s -o - | llvm-dwarfdump -debug-frame - | FileCheck %s
|
||||||
|
|
||||||
# Check the handling of multiple different CIEs. To have CIEs that
|
# Check the handling of multiple different CIEs. To have CIEs that
|
||||||
# appear to be different, use a dwarf2 version of the file along with
|
# appear to be different, use a dwarf2 version of the file along with
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
# RUN: llvm-dsymutil -f -o - -oso-prepend-path=%p/.. -y %s | llvm-dwarfdump -v - | FileCheck %s
|
# RUN: dsymutil -f -o - -oso-prepend-path=%p/.. -y %s | llvm-dwarfdump -v - | FileCheck %s
|
||||||
|
|
||||||
# This test on links the Dwarf for an LTO binary and on purpose doesn't retain
|
# This test on links the Dwarf for an LTO binary and on purpose doesn't retain
|
||||||
# any symbol in the second CU out of 3. This is the only case where dsymutil
|
# any symbol in the second CU out of 3. This is the only case where dsymutil
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
# RUN: llvm-dsymutil -oso-prepend-path %p/../Inputs -y %s -f -o - | llvm-dwarfdump - --debug-info | FileCheck %s
|
# RUN: dsymutil -oso-prepend-path %p/../Inputs -y %s -f -o - | llvm-dwarfdump - --debug-info | FileCheck %s
|
||||||
|
|
||||||
# Compile with:
|
# Compile with:
|
||||||
# echo -e ".global _foo;\nfoo:\nnop" | clang -x assembler -g - -c -o /tmp/label.o
|
# echo -e ".global _foo;\nfoo:\nnop" | clang -x assembler -g - -c -o /tmp/label.o
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
RUN: llvm-dsymutil -f -o - -oso-prepend-path=%p/.. %p/../Inputs/basic.macho.x86_64 | llvm-readobj -sections - | FileCheck %s --check-prefix=FULL
|
RUN: dsymutil -f -o - -oso-prepend-path=%p/.. %p/../Inputs/basic.macho.x86_64 | llvm-readobj -sections - | FileCheck %s --check-prefix=FULL
|
||||||
RUN: llvm-dsymutil --minimize -f -o - -oso-prepend-path=%p/.. %p/../Inputs/basic.macho.x86_64 | llvm-readobj -sections - | FileCheck %s
|
RUN: dsymutil --minimize -f -o - -oso-prepend-path=%p/.. %p/../Inputs/basic.macho.x86_64 | llvm-readobj -sections - | FileCheck %s
|
||||||
RUN: llvm-dsymutil -z -f -o - -oso-prepend-path=%p/.. %p/../Inputs/basic.macho.x86_64 | llvm-readobj -sections - | FileCheck %s
|
RUN: dsymutil -z -f -o - -oso-prepend-path=%p/.. %p/../Inputs/basic.macho.x86_64 | llvm-readobj -sections - | FileCheck %s
|
||||||
|
|
||||||
FULL: Name: __debug_pubnames
|
FULL: Name: __debug_pubnames
|
||||||
FULL: Name: __debug_pubtypes
|
FULL: Name: __debug_pubtypes
|
||||||
|
@ -17,7 +17,7 @@
|
|||||||
// RUN: rm -rf %t.dir && mkdir %t.dir
|
// RUN: rm -rf %t.dir && mkdir %t.dir
|
||||||
// RUN: cp %p/../Inputs/mismatch/1.o %p/../Inputs/mismatch/mismatch.pcm %t.dir
|
// RUN: cp %p/../Inputs/mismatch/1.o %p/../Inputs/mismatch/mismatch.pcm %t.dir
|
||||||
// RUN: cp %p/../Inputs/mismatch/1.o %t.dir/2.o
|
// RUN: cp %p/../Inputs/mismatch/1.o %t.dir/2.o
|
||||||
// RUN: llvm-dsymutil --verbose -f -oso-prepend-path=%t.dir \
|
// RUN: dsymutil --verbose -f -oso-prepend-path=%t.dir \
|
||||||
// RUN: -y %p/dummy-debug-map.map -o %t.bin 2>&1 | FileCheck %s
|
// RUN: -y %p/dummy-debug-map.map -o %t.bin 2>&1 | FileCheck %s
|
||||||
|
|
||||||
@import mismatch;
|
@import mismatch;
|
||||||
|
@ -23,7 +23,7 @@
|
|||||||
# RUN: cp %p/../Inputs/module-warnings/1.o %t.dir
|
# RUN: cp %p/../Inputs/module-warnings/1.o %t.dir
|
||||||
# RUN: cp %p/../Inputs/module-warnings/Foo.pcm %t.dir/ModuleCache
|
# RUN: cp %p/../Inputs/module-warnings/Foo.pcm %t.dir/ModuleCache
|
||||||
#
|
#
|
||||||
# RUN: llvm-dsymutil -f -oso-prepend-path=%t.dir -y \
|
# RUN: dsymutil -f -oso-prepend-path=%t.dir -y \
|
||||||
# RUN: %p/dummy-debug-map.map -o %t 2>&1 | FileCheck %s
|
# RUN: %p/dummy-debug-map.map -o %t 2>&1 | FileCheck %s
|
||||||
#
|
#
|
||||||
# Module-not-found should be reported only once.
|
# Module-not-found should be reported only once.
|
||||||
@ -32,12 +32,12 @@
|
|||||||
# CHECK-NOT: warning: {{.*}}Bar.pcm:
|
# CHECK-NOT: warning: {{.*}}Bar.pcm:
|
||||||
#
|
#
|
||||||
# RUN: cp %p/../Inputs/module-warnings/libstatic.a %t.dir
|
# RUN: cp %p/../Inputs/module-warnings/libstatic.a %t.dir
|
||||||
# RUN: llvm-dsymutil -f -oso-prepend-path=%t.dir -y %s -o %t 2>&1 | FileCheck %s
|
# RUN: dsymutil -f -oso-prepend-path=%t.dir -y %s -o %t 2>&1 | FileCheck %s
|
||||||
# CHECK: rebuild the module cache
|
# CHECK: rebuild the module cache
|
||||||
# CHECK-NOT: static libraries
|
# CHECK-NOT: static libraries
|
||||||
#
|
#
|
||||||
# RUN: rm -rf %t.dir/ModuleCache
|
# RUN: rm -rf %t.dir/ModuleCache
|
||||||
# RUN: llvm-dsymutil -f -oso-prepend-path=%t.dir -y %s -o %t 2>&1 \
|
# RUN: dsymutil -f -oso-prepend-path=%t.dir -y %s -o %t 2>&1 \
|
||||||
# RUN: | FileCheck %s --check-prefix=STATIC
|
# RUN: | FileCheck %s --check-prefix=STATIC
|
||||||
# STATIC: warning: {{.*}}Bar.pcm:
|
# STATIC: warning: {{.*}}Bar.pcm:
|
||||||
# STATIC: note: Linking a static library
|
# STATIC: note: Linking a static library
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
// RUN: mkdir %t.dir
|
// RUN: mkdir %t.dir
|
||||||
// RUN: cp %p/../Inputs/modules/Bar.pcm %t.dir
|
// RUN: cp %p/../Inputs/modules/Bar.pcm %t.dir
|
||||||
// RUN: cp %p/../Inputs/modules-dwarf-version/1.o %t.dir
|
// RUN: cp %p/../Inputs/modules-dwarf-version/1.o %t.dir
|
||||||
// RUN: llvm-dsymutil -f -oso-prepend-path=%t.dir \
|
// RUN: dsymutil -f -oso-prepend-path=%t.dir \
|
||||||
// RUN: -y %p/dummy-debug-map.map -o - \
|
// RUN: -y %p/dummy-debug-map.map -o - \
|
||||||
// RUN: | llvm-dwarfdump --debug-info - | FileCheck %s
|
// RUN: | llvm-dwarfdump --debug-info - | FileCheck %s
|
||||||
|
|
||||||
|
@ -13,7 +13,7 @@ EOF
|
|||||||
// RUN: rm -rf %t.dir
|
// RUN: rm -rf %t.dir
|
||||||
// RUN: mkdir %t.dir
|
// RUN: mkdir %t.dir
|
||||||
// RUN: cp %p/../Inputs/modules-empty/1.o %p/../Inputs/modules-empty/Empty.pcm %t.dir
|
// RUN: cp %p/../Inputs/modules-empty/1.o %p/../Inputs/modules-empty/Empty.pcm %t.dir
|
||||||
// RUN: llvm-dsymutil -f -oso-prepend-path=%t.dir \
|
// RUN: dsymutil -f -oso-prepend-path=%t.dir \
|
||||||
// RUN: -y %p/dummy-debug-map.map -o - \
|
// RUN: -y %p/dummy-debug-map.map -o - \
|
||||||
// RUN: | llvm-dwarfdump --debug-info - | FileCheck %s
|
// RUN: | llvm-dwarfdump --debug-info - | FileCheck %s
|
||||||
|
|
||||||
|
@ -18,11 +18,11 @@ EOF
|
|||||||
clang -c -g odr_violation.c -o 2.o
|
clang -c -g odr_violation.c -o 2.o
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// RUN: llvm-dsymutil -f -oso-prepend-path=%p/../Inputs/modules \
|
// RUN: dsymutil -f -oso-prepend-path=%p/../Inputs/modules \
|
||||||
// RUN: -y %p/dummy-debug-map.map -o - \
|
// RUN: -y %p/dummy-debug-map.map -o - \
|
||||||
// RUN: | llvm-dwarfdump -v --debug-info - | FileCheck %s
|
// RUN: | llvm-dwarfdump -v --debug-info - | FileCheck %s
|
||||||
|
|
||||||
// RUN: llvm-dsymutil -f -oso-prepend-path=%p/../Inputs/modules -y \
|
// RUN: dsymutil -f -oso-prepend-path=%p/../Inputs/modules -y \
|
||||||
// RUN: %p/dummy-debug-map.map -o %t 2>&1 | FileCheck --check-prefix=WARN %s
|
// RUN: %p/dummy-debug-map.map -o %t 2>&1 | FileCheck --check-prefix=WARN %s
|
||||||
|
|
||||||
// WARN-NOT: warning: hash mismatch
|
// WARN-NOT: warning: hash mismatch
|
||||||
|
@ -7,7 +7,7 @@ RUN: cat %p/../Inputs/basic-lto.macho.x86_64 > %t/basic-lto.macho.x86_64
|
|||||||
RUN: cat %p/../Inputs/basic-lto-dw4.macho.x86_64 > %t/basic-lto-dw4.macho.x86_64
|
RUN: cat %p/../Inputs/basic-lto-dw4.macho.x86_64 > %t/basic-lto-dw4.macho.x86_64
|
||||||
|
|
||||||
# Multiple inputs in flat mode
|
# Multiple inputs in flat mode
|
||||||
RUN: llvm-dsymutil -f -oso-prepend-path=%p/.. %t/basic.macho.x86_64 %t/basic-archive.macho.x86_64 %t/basic-lto.macho.x86_64 %t/basic-lto-dw4.macho.x86_64
|
RUN: dsymutil -f -oso-prepend-path=%p/.. %t/basic.macho.x86_64 %t/basic-archive.macho.x86_64 %t/basic-lto.macho.x86_64 %t/basic-lto-dw4.macho.x86_64
|
||||||
RUN: llvm-dwarfdump -a %t/basic.macho.x86_64.dwarf \
|
RUN: llvm-dwarfdump -a %t/basic.macho.x86_64.dwarf \
|
||||||
RUN: | FileCheck %S/basic-linking-x86.test --check-prefix=CHECK --check-prefix=BASIC
|
RUN: | FileCheck %S/basic-linking-x86.test --check-prefix=CHECK --check-prefix=BASIC
|
||||||
RUN: llvm-dwarfdump -a %t/basic-archive.macho.x86_64.dwarf \
|
RUN: llvm-dwarfdump -a %t/basic-archive.macho.x86_64.dwarf \
|
||||||
@ -16,7 +16,7 @@ RUN: llvm-dwarfdump -a %t/basic-lto.macho.x86_64.dwarf | FileCheck %S/basic-lto-
|
|||||||
RUN: llvm-dwarfdump -a %t/basic-lto-dw4.macho.x86_64.dwarf | FileCheck %S/basic-lto-dw4-linking-x86.test
|
RUN: llvm-dwarfdump -a %t/basic-lto-dw4.macho.x86_64.dwarf | FileCheck %S/basic-lto-dw4-linking-x86.test
|
||||||
|
|
||||||
# Multiple inputs that end up in the same named bundle
|
# Multiple inputs that end up in the same named bundle
|
||||||
RUN: llvm-dsymutil -oso-prepend-path=%p/.. %t/basic.macho.x86_64 %t/basic-archive.macho.x86_64 %t/basic-lto.macho.x86_64 %t/basic-lto-dw4.macho.x86_64 -o %t.dSYM
|
RUN: dsymutil -oso-prepend-path=%p/.. %t/basic.macho.x86_64 %t/basic-archive.macho.x86_64 %t/basic-lto.macho.x86_64 %t/basic-lto-dw4.macho.x86_64 -o %t.dSYM
|
||||||
RUN: llvm-dwarfdump -a %t.dSYM/Contents/Resources/DWARF/basic.macho.x86_64 \
|
RUN: llvm-dwarfdump -a %t.dSYM/Contents/Resources/DWARF/basic.macho.x86_64 \
|
||||||
RUN: | FileCheck %S/basic-linking-x86.test --check-prefix=CHECK --check-prefix=BASIC
|
RUN: | FileCheck %S/basic-linking-x86.test --check-prefix=CHECK --check-prefix=BASIC
|
||||||
RUN: llvm-dwarfdump -a %t.dSYM/Contents/Resources/DWARF/basic-archive.macho.x86_64 \
|
RUN: llvm-dwarfdump -a %t.dSYM/Contents/Resources/DWARF/basic-archive.macho.x86_64 \
|
||||||
@ -25,7 +25,7 @@ RUN: llvm-dwarfdump -a %t.dSYM/Contents/Resources/DWARF/basic-lto.macho.x86_64 |
|
|||||||
RUN: llvm-dwarfdump -a %t.dSYM/Contents/Resources/DWARF/basic-lto-dw4.macho.x86_64 | FileCheck %S/basic-lto-dw4-linking-x86.test
|
RUN: llvm-dwarfdump -a %t.dSYM/Contents/Resources/DWARF/basic-lto-dw4.macho.x86_64 | FileCheck %S/basic-lto-dw4-linking-x86.test
|
||||||
|
|
||||||
# Multiple inputs in a named bundle in flat mode... impossible.
|
# Multiple inputs in a named bundle in flat mode... impossible.
|
||||||
RUN: not llvm-dsymutil -f -oso-prepend-path=%p/.. %t/basic.macho.x86_64 %t/basic-archive.macho.x86_64 %t/basic-lto.macho.x86_64 %t/basic-lto-dw4.macho.x86_64 -o %t.dSYM 2>&1 | FileCheck %s
|
RUN: not dsymutil -f -oso-prepend-path=%p/.. %t/basic.macho.x86_64 %t/basic-archive.macho.x86_64 %t/basic-lto.macho.x86_64 %t/basic-lto-dw4.macho.x86_64 -o %t.dSYM 2>&1 | FileCheck %s
|
||||||
|
|
||||||
CHECK: error: cannot use -o with multiple inputs in flat mode
|
CHECK: error: cannot use -o with multiple inputs in flat mode
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
RUN: llvm-dsymutil -f -oso-prepend-path=%p/.. %p/../Inputs/objc.macho.x86_64 -o - \
|
RUN: dsymutil -f -oso-prepend-path=%p/.. %p/../Inputs/objc.macho.x86_64 -o - \
|
||||||
RUN: | llvm-dwarfdump -apple-types -apple-objc - | FileCheck %s
|
RUN: | llvm-dwarfdump -apple-types -apple-objc - | FileCheck %s
|
||||||
|
|
||||||
CHECK: .apple_types contents:
|
CHECK: .apple_types contents:
|
||||||
|
@ -4,10 +4,10 @@
|
|||||||
done
|
done
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// RUN: llvm-dsymutil -f -oso-prepend-path=%p/../Inputs/odr-anon-namespace -y %p/dummy-debug-map.map -o - | llvm-dwarfdump -debug-info - | FileCheck %s
|
// RUN: dsymutil -f -oso-prepend-path=%p/../Inputs/odr-anon-namespace -y %p/dummy-debug-map.map -o - | llvm-dwarfdump -debug-info - | FileCheck %s
|
||||||
|
|
||||||
#ifdef FILE1
|
#ifdef FILE1
|
||||||
// Currently llvm-dsymutil will unique the contents of anonymous
|
// Currently dsymutil will unique the contents of anonymous
|
||||||
// namespaces if they are from the same file/line. Force this
|
// namespaces if they are from the same file/line. Force this
|
||||||
// namespace to appear different eventhough it's the same (this
|
// namespace to appear different eventhough it's the same (this
|
||||||
// uniquing is actually a bug kept for backward compatibility, see the
|
// uniquing is actually a bug kept for backward compatibility, see the
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
done
|
done
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// RUN: llvm-dsymutil -f -oso-prepend-path=%p/../Inputs/odr-fwd-declaration -y %p/dummy-debug-map.map -o - | llvm-dwarfdump -v -debug-info - | FileCheck %s
|
// RUN: dsymutil -f -oso-prepend-path=%p/../Inputs/odr-fwd-declaration -y %p/dummy-debug-map.map -o - | llvm-dwarfdump -v -debug-info - | FileCheck %s
|
||||||
|
|
||||||
#ifdef FILE1
|
#ifdef FILE1
|
||||||
# 1 "Header.h" 1
|
# 1 "Header.h" 1
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
done
|
done
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// RUN: llvm-dsymutil -f -oso-prepend-path=%p/../Inputs/odr-fwd-declaration2 -y %p/dummy-debug-map.map -o - | llvm-dwarfdump -v -debug-info - | FileCheck %s
|
// RUN: dsymutil -f -oso-prepend-path=%p/../Inputs/odr-fwd-declaration2 -y %p/dummy-debug-map.map -o - | llvm-dwarfdump -v -debug-info - | FileCheck %s
|
||||||
|
|
||||||
#ifdef FILE1
|
#ifdef FILE1
|
||||||
# 1 "Header.h" 1
|
# 1 "Header.h" 1
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
done
|
done
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// RUN: llvm-dsymutil -f -oso-prepend-path=%p/../Inputs/odr-member-functions -y %p/dummy-debug-map.map -o - | llvm-dwarfdump -debug-info - | FileCheck %s
|
// RUN: dsymutil -f -oso-prepend-path=%p/../Inputs/odr-member-functions -y %p/dummy-debug-map.map -o - | llvm-dwarfdump -debug-info - | FileCheck %s
|
||||||
|
|
||||||
struct S {
|
struct S {
|
||||||
__attribute__((always_inline)) void foo() { bar(); }
|
__attribute__((always_inline)) void foo() { bar(); }
|
||||||
|
@ -11,8 +11,8 @@
|
|||||||
- without ODR uniquing: all types are re-emited in the second CU
|
- without ODR uniquing: all types are re-emited in the second CU
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// RUN: llvm-dsymutil -f -oso-prepend-path=%p/../Inputs/odr-uniquing -y %p/dummy-debug-map.map -o - | llvm-dwarfdump -v -debug-info - | FileCheck -check-prefix=ODR -check-prefix=CHECK %s
|
// RUN: dsymutil -f -oso-prepend-path=%p/../Inputs/odr-uniquing -y %p/dummy-debug-map.map -o - | llvm-dwarfdump -v -debug-info - | FileCheck -check-prefix=ODR -check-prefix=CHECK %s
|
||||||
// RUN: llvm-dsymutil -f -oso-prepend-path=%p/../Inputs/odr-uniquing -y %p/dummy-debug-map.map -no-odr -o - | llvm-dwarfdump -v -debug-info - | FileCheck -check-prefix=NOODR -check-prefix=CHECK %s
|
// RUN: dsymutil -f -oso-prepend-path=%p/../Inputs/odr-uniquing -y %p/dummy-debug-map.map -no-odr -o - | llvm-dwarfdump -v -debug-info - | FileCheck -check-prefix=NOODR -check-prefix=CHECK %s
|
||||||
|
|
||||||
// The first compile unit contains all the types:
|
// The first compile unit contains all the types:
|
||||||
// CHECK: TAG_compile_unit
|
// CHECK: TAG_compile_unit
|
||||||
|
@ -16,7 +16,7 @@ EOF
|
|||||||
-fdisable-module-hash submodules.m -o 1.o
|
-fdisable-module-hash submodules.m -o 1.o
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// RUN: llvm-dsymutil -f -oso-prepend-path=%p/../Inputs/submodules \
|
// RUN: dsymutil -f -oso-prepend-path=%p/../Inputs/submodules \
|
||||||
// RUN: -y %p/dummy-debug-map.map -o - \
|
// RUN: -y %p/dummy-debug-map.map -o - \
|
||||||
// RUN: | llvm-dwarfdump -v --debug-info - | FileCheck %s
|
// RUN: | llvm-dwarfdump -v --debug-info - | FileCheck %s
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
RUN: llvm-dsymutil -oso-prepend-path %p/.. %p/../Inputs/swift-ast.macho.x86_64 -o %T/swift-ast.dSYM -verbose -no-swiftmodule-timestamp | FileCheck %s --check-prefix=DSYMUTIL
|
RUN: dsymutil -oso-prepend-path %p/.. %p/../Inputs/swift-ast.macho.x86_64 -o %T/swift-ast.dSYM -verbose -no-swiftmodule-timestamp | FileCheck %s --check-prefix=DSYMUTIL
|
||||||
RUN: llvm-readobj -sections -section-data %T/swift-ast.dSYM/Contents/Resources/DWARF/swift-ast.macho.x86_64 | FileCheck %s --check-prefix=READOBJ
|
RUN: llvm-readobj -sections -section-data %T/swift-ast.dSYM/Contents/Resources/DWARF/swift-ast.macho.x86_64 | FileCheck %s --check-prefix=READOBJ
|
||||||
|
|
||||||
The tested object file has been created by the dummy Swift code:
|
The tested object file has been created by the dummy Swift code:
|
||||||
@ -15,5 +15,5 @@ READOBJ: Name:{{.*}}__swift_ast
|
|||||||
READOBJ: |SWIFTMODULE DATA|
|
READOBJ: |SWIFTMODULE DATA|
|
||||||
READOBJ-NEXT: |.|
|
READOBJ-NEXT: |.|
|
||||||
|
|
||||||
RUN: llvm-dsymutil -oso-prepend-path %p/.. %p/../Inputs/swift-ast.macho.x86_64 -no-output -verbose 2>&1 | FileCheck %s --check-prefix=TIMESTAMP
|
RUN: dsymutil -oso-prepend-path %p/.. %p/../Inputs/swift-ast.macho.x86_64 -no-output -verbose 2>&1 | FileCheck %s --check-prefix=TIMESTAMP
|
||||||
TIMESTAMP: warning: Timestamp mismatch
|
TIMESTAMP: warning: Timestamp mismatch
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
RUN: llvm-dsymutil -oso-prepend-path %p/../Inputs %p/../Inputs/swift-dwarf-loc.macho.x86_64 -no-output -verbose | FileCheck %s
|
RUN: dsymutil -oso-prepend-path %p/../Inputs %p/../Inputs/swift-dwarf-loc.macho.x86_64 -no-output -verbose | FileCheck %s
|
||||||
|
|
||||||
This test checks that dsymutil generates a valid dwarf location for a symbol with no flags set.
|
This test checks that dsymutil generates a valid dwarf location for a symbol with no flags set.
|
||||||
|
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
UNSUPPORTED: system-windows
|
UNSUPPORTED: system-windows
|
||||||
Remove UNSUPPORTED once we figure out why this fails on Windows.
|
Remove UNSUPPORTED once we figure out why this fails on Windows.
|
||||||
|
|
||||||
RUN: llvm-dsymutil -oso-prepend-path=%p/.. %p/../Inputs/objc.macho.x86_64 -o %t.dSYM
|
RUN: dsymutil -oso-prepend-path=%p/.. %p/../Inputs/objc.macho.x86_64 -o %t.dSYM
|
||||||
RUN: llvm-dsymutil -update %t.dSYM
|
RUN: dsymutil -update %t.dSYM
|
||||||
RUN: llvm-dwarfdump -apple-types -apple-objc %t.dSYM | FileCheck %s
|
RUN: llvm-dwarfdump -apple-types -apple-objc %t.dSYM | FileCheck %s
|
||||||
|
|
||||||
CHECK: .apple_types contents:
|
CHECK: .apple_types contents:
|
||||||
|
@ -4,15 +4,15 @@ Remove UNSUPPORTED once we figure out why this fails on Windows.
|
|||||||
RUN: rm -rf %t.dir
|
RUN: rm -rf %t.dir
|
||||||
RUN: mkdir -p %t.dir
|
RUN: mkdir -p %t.dir
|
||||||
RUN: cat %p/../Inputs/basic.macho.x86_64 > %t.dir/basic
|
RUN: cat %p/../Inputs/basic.macho.x86_64 > %t.dir/basic
|
||||||
RUN: llvm-dsymutil -oso-prepend-path=%p/.. %t.dir/basic
|
RUN: dsymutil -oso-prepend-path=%p/.. %t.dir/basic
|
||||||
RUN: llvm-dwarfdump -a %t.dir/basic.dSYM | FileCheck %S/basic-linking-x86.test
|
RUN: llvm-dwarfdump -a %t.dir/basic.dSYM | FileCheck %S/basic-linking-x86.test
|
||||||
RUN: llvm-dsymutil --update %t.dir/basic.dSYM
|
RUN: dsymutil --update %t.dir/basic.dSYM
|
||||||
RUN: llvm-dwarfdump -a %t.dir/basic.dSYM | FileCheck %S/basic-linking-x86.test
|
RUN: llvm-dwarfdump -a %t.dir/basic.dSYM | FileCheck %S/basic-linking-x86.test
|
||||||
RUN: llvm-dsymutil -u %t.dir/basic.dSYM
|
RUN: dsymutil -u %t.dir/basic.dSYM
|
||||||
RUN: llvm-dwarfdump -a %t.dir/basic.dSYM | FileCheck %S/basic-linking-x86.test
|
RUN: llvm-dwarfdump -a %t.dir/basic.dSYM | FileCheck %S/basic-linking-x86.test
|
||||||
RUN: llvm-dsymutil --update %t.dir/basic.dSYM -o %t.dir/updated.dSYM
|
RUN: dsymutil --update %t.dir/basic.dSYM -o %t.dir/updated.dSYM
|
||||||
RUN: llvm-dwarfdump -a %t.dir/updated.dSYM | FileCheck %S/basic-linking-x86.test
|
RUN: llvm-dwarfdump -a %t.dir/updated.dSYM | FileCheck %S/basic-linking-x86.test
|
||||||
|
|
||||||
RUN: llvm-dsymutil -f -o %t2 -oso-prepend-path=%p/.. %p/../Inputs/basic.macho.x86_64
|
RUN: dsymutil -f -o %t2 -oso-prepend-path=%p/.. %p/../Inputs/basic.macho.x86_64
|
||||||
RUN: llvm-dsymutil -f -u %t2 -o %t3
|
RUN: dsymutil -f -u %t2 -o %t3
|
||||||
RUN: llvm-dwarfdump -a %t3 | FileCheck %S/basic-linking-x86.test
|
RUN: llvm-dwarfdump -a %t3 | FileCheck %S/basic-linking-x86.test
|
||||||
|
@ -1,14 +1,14 @@
|
|||||||
# Positive tests in regular and verbose mode.
|
# Positive tests in regular and verbose mode.
|
||||||
# RUN: llvm-dsymutil -verify -oso-prepend-path=%p/.. %p/../Inputs/basic.macho.x86_64 %p/../Inputs/basic-archive.macho.x86_64 %p/../Inputs/basic-lto.macho.x86_64 %p/../Inputs/basic-lto-dw4.macho.x86_64 -o %t 2>&1 | FileCheck %s --allow-empty --check-prefix=QUIET-SUCCESS
|
# RUN: dsymutil -verify -oso-prepend-path=%p/.. %p/../Inputs/basic.macho.x86_64 %p/../Inputs/basic-archive.macho.x86_64 %p/../Inputs/basic-lto.macho.x86_64 %p/../Inputs/basic-lto-dw4.macho.x86_64 -o %t 2>&1 | FileCheck %s --allow-empty --check-prefix=QUIET-SUCCESS
|
||||||
# RUN: llvm-dsymutil -verify -verbose -oso-prepend-path=%p/.. %p/../Inputs/basic.macho.x86_64 %p/../Inputs/basic-archive.macho.x86_64 %p/../Inputs/basic-lto.macho.x86_64 %p/../Inputs/basic-lto-dw4.macho.x86_64 -o %t 2>&1 | FileCheck %s --check-prefix=QUIET-SUCCESS --check-prefix=VERBOSE
|
# RUN: dsymutil -verify -verbose -oso-prepend-path=%p/.. %p/../Inputs/basic.macho.x86_64 %p/../Inputs/basic-archive.macho.x86_64 %p/../Inputs/basic-lto.macho.x86_64 %p/../Inputs/basic-lto-dw4.macho.x86_64 -o %t 2>&1 | FileCheck %s --check-prefix=QUIET-SUCCESS --check-prefix=VERBOSE
|
||||||
|
|
||||||
# VERBOSE: Verifying DWARF for architecture: x86_64
|
# VERBOSE: Verifying DWARF for architecture: x86_64
|
||||||
# QUIET-SUCCESS-NOT: error: verification failed
|
# QUIET-SUCCESS-NOT: error: verification failed
|
||||||
|
|
||||||
# Negative tests in regular and verbose mode.
|
# Negative tests in regular and verbose mode.
|
||||||
# (Invalid object generated from ../Inputs/invalid.s by modified the low PC.)
|
# (Invalid object generated from ../Inputs/invalid.s by modified the low PC.)
|
||||||
# RUN: not llvm-dsymutil -verify -oso-prepend-path=%p/../Inputs -y %s -o %t 2>&1 | FileCheck %s --check-prefix=QUIET-FAIL
|
# RUN: not dsymutil -verify -oso-prepend-path=%p/../Inputs -y %s -o %t 2>&1 | FileCheck %s --check-prefix=QUIET-FAIL
|
||||||
# RUN: not llvm-dsymutil -verify -verbose -oso-prepend-path=%p/../Inputs -y %s -o %t 2>&1 | FileCheck %s --check-prefix=QUIET-FAIL --check-prefix=VERBOSE
|
# RUN: not dsymutil -verify -verbose -oso-prepend-path=%p/../Inputs -y %s -o %t 2>&1 | FileCheck %s --check-prefix=QUIET-FAIL --check-prefix=VERBOSE
|
||||||
|
|
||||||
# QUIET-FAIL: error: verification failed
|
# QUIET-FAIL: error: verification failed
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
RUN: llvm-dsymutil -dump-debug-map -oso-prepend-path %p %p/Inputs/absolute_sym.macho.i386 | FileCheck %s
|
RUN: dsymutil -dump-debug-map -oso-prepend-path %p %p/Inputs/absolute_sym.macho.i386 | FileCheck %s
|
||||||
|
|
||||||
The tested object file has been created by the dummy Objective-C code:
|
The tested object file has been created by the dummy Objective-C code:
|
||||||
@interface Foo
|
@interface Foo
|
||||||
|
@ -1,15 +1,15 @@
|
|||||||
Processing of the -arch option happens at debug map parsing time, thus just
|
Processing of the -arch option happens at debug map parsing time, thus just
|
||||||
looking at the dumped debug maps is enough to validate their effects.
|
looking at the dumped debug maps is enough to validate their effects.
|
||||||
|
|
||||||
RUN: llvm-dsymutil -oso-prepend-path %p -dump-debug-map %p/Inputs/fat-test.arm.dylib | FileCheck %s -check-prefix=ARM64 -check-prefix=ARMV7S -check-prefix=ARMV7 -check-prefix=CHECK
|
RUN: dsymutil -oso-prepend-path %p -dump-debug-map %p/Inputs/fat-test.arm.dylib | FileCheck %s -check-prefix=ARM64 -check-prefix=ARMV7S -check-prefix=ARMV7 -check-prefix=CHECK
|
||||||
RUN: llvm-dsymutil -oso-prepend-path %p -dump-debug-map %p/Inputs/fat-test.arm.dylib -arch all | FileCheck %s -check-prefix=ARM64 -check-prefix=ARMV7S -check-prefix=ARMV7 -check-prefix=CHECK
|
RUN: dsymutil -oso-prepend-path %p -dump-debug-map %p/Inputs/fat-test.arm.dylib -arch all | FileCheck %s -check-prefix=ARM64 -check-prefix=ARMV7S -check-prefix=ARMV7 -check-prefix=CHECK
|
||||||
RUN: llvm-dsymutil -oso-prepend-path %p -dump-debug-map %p/Inputs/fat-test.arm.dylib -arch='*' | FileCheck %s -check-prefix=ARM64 -check-prefix=ARMV7S -check-prefix=ARMV7 -check-prefix=CHECK
|
RUN: dsymutil -oso-prepend-path %p -dump-debug-map %p/Inputs/fat-test.arm.dylib -arch='*' | FileCheck %s -check-prefix=ARM64 -check-prefix=ARMV7S -check-prefix=ARMV7 -check-prefix=CHECK
|
||||||
RUN: llvm-dsymutil -oso-prepend-path %p -dump-debug-map %p/Inputs/fat-test.arm.dylib -arch arm64 | FileCheck %s -check-prefix=ARM64 -check-prefix=CHECK
|
RUN: dsymutil -oso-prepend-path %p -dump-debug-map %p/Inputs/fat-test.arm.dylib -arch arm64 | FileCheck %s -check-prefix=ARM64 -check-prefix=CHECK
|
||||||
RUN: llvm-dsymutil -oso-prepend-path %p -dump-debug-map %p/Inputs/fat-test.arm.dylib -arch arm | FileCheck %s -check-prefix=ARMV7S -check-prefix=ARMV7 -check-prefix=CHECK
|
RUN: dsymutil -oso-prepend-path %p -dump-debug-map %p/Inputs/fat-test.arm.dylib -arch arm | FileCheck %s -check-prefix=ARMV7S -check-prefix=ARMV7 -check-prefix=CHECK
|
||||||
RUN: llvm-dsymutil -oso-prepend-path %p -dump-debug-map %p/Inputs/fat-test.arm.dylib -arch armv7 | FileCheck %s -check-prefix=ARMV7 -check-prefix=CHECK
|
RUN: dsymutil -oso-prepend-path %p -dump-debug-map %p/Inputs/fat-test.arm.dylib -arch armv7 | FileCheck %s -check-prefix=ARMV7 -check-prefix=CHECK
|
||||||
RUN: llvm-dsymutil -oso-prepend-path %p -dump-debug-map %p/Inputs/fat-test.arm.dylib -arch arm64 -arch armv7s | FileCheck %s -check-prefix=ARM64 -check-prefix=ARMV7S -check-prefix=CHECK
|
RUN: dsymutil -oso-prepend-path %p -dump-debug-map %p/Inputs/fat-test.arm.dylib -arch arm64 -arch armv7s | FileCheck %s -check-prefix=ARM64 -check-prefix=ARMV7S -check-prefix=CHECK
|
||||||
RUN: not llvm-dsymutil -oso-prepend-path %p -dump-debug-map %p/Inputs/fat-test.arm.dylib -arch arm42 2>&1 | FileCheck %s -check-prefix=BADARCH
|
RUN: not dsymutil -oso-prepend-path %p -dump-debug-map %p/Inputs/fat-test.arm.dylib -arch arm42 2>&1 | FileCheck %s -check-prefix=BADARCH
|
||||||
RUN: not llvm-dsymutil -oso-prepend-path %p -dump-debug-map %p/Inputs/fat-test.arm.dylib -arch i386 2>&1 | FileCheck %s -check-prefix=EMPTY
|
RUN: not dsymutil -oso-prepend-path %p -dump-debug-map %p/Inputs/fat-test.arm.dylib -arch i386 2>&1 | FileCheck %s -check-prefix=EMPTY
|
||||||
|
|
||||||
|
|
||||||
ARMV7: ---
|
ARMV7: ---
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
# RUN: llvm-dsymutil -no-output -oso-prepend-path=%p -y %s 2>&1 | FileCheck %s
|
# RUN: dsymutil -no-output -oso-prepend-path=%p -y %s 2>&1 | FileCheck %s
|
||||||
|
|
||||||
# This is the archive member part of basic-archive.macho.x86_64 debug map with corrupted timestamps.
|
# This is the archive member part of basic-archive.macho.x86_64 debug map with corrupted timestamps.
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
RUN: llvm-dsymutil -no-output -verbose -oso-prepend-path=%p %p/Inputs/basic.macho.x86_64 | FileCheck %s
|
RUN: dsymutil -no-output -verbose -oso-prepend-path=%p %p/Inputs/basic.macho.x86_64 | FileCheck %s
|
||||||
RUN: llvm-dsymutil -no-output -verbose -oso-prepend-path=%p %p/Inputs/basic-lto.macho.x86_64 | FileCheck %s --check-prefix=CHECK-LTO
|
RUN: dsymutil -no-output -verbose -oso-prepend-path=%p %p/Inputs/basic-lto.macho.x86_64 | FileCheck %s --check-prefix=CHECK-LTO
|
||||||
RUN: llvm-dsymutil -no-output -verbose -oso-prepend-path=%p %p/Inputs/basic-archive.macho.x86_64 | FileCheck %s --check-prefix=CHECK-ARCHIVE
|
RUN: dsymutil -no-output -verbose -oso-prepend-path=%p %p/Inputs/basic-archive.macho.x86_64 | FileCheck %s --check-prefix=CHECK-ARCHIVE
|
||||||
RUN: llvm-dsymutil -no-output -verbose -oso-prepend-path=%p %p/Inputs/basic.macho.x86_64 %p/Inputs/basic-lto.macho.x86_64 %p/Inputs/basic-archive.macho.x86_64 | FileCheck %s --check-prefix=CHECK --check-prefix=CHECK-LTO --check-prefix=CHECK-ARCHIVE
|
RUN: dsymutil -no-output -verbose -oso-prepend-path=%p %p/Inputs/basic.macho.x86_64 %p/Inputs/basic-lto.macho.x86_64 %p/Inputs/basic-archive.macho.x86_64 | FileCheck %s --check-prefix=CHECK --check-prefix=CHECK-LTO --check-prefix=CHECK-ARCHIVE
|
||||||
|
|
||||||
This test check the basic Dwarf linking process through the debug dumps.
|
This test check the basic Dwarf linking process through the debug dumps.
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
RUN: llvm-dsymutil -help 2>&1 | FileCheck --check-prefix=HELP %s
|
RUN: dsymutil -help 2>&1 | FileCheck --check-prefix=HELP %s
|
||||||
HELP: OVERVIEW: manipulate archived DWARF debug symbol files.
|
HELP: OVERVIEW: manipulate archived DWARF debug symbol files.
|
||||||
HELP: USAGE: llvm-dsymutil{{[^ ]*}} [options] <input files>
|
HELP: USAGE: dsymutil{{[^ ]*}} [options] <input files>
|
||||||
HELP-NOT: -reverse-iterate
|
HELP-NOT: -reverse-iterate
|
||||||
HELP: Specific Options:
|
HELP: Specific Options:
|
||||||
HELP: -arch=<arch>
|
HELP: -arch=<arch>
|
||||||
@ -21,5 +21,5 @@ HELP: -verify
|
|||||||
HELP: -y
|
HELP: -y
|
||||||
HELP-NOT: -reverse-iterate
|
HELP-NOT: -reverse-iterate
|
||||||
|
|
||||||
RUN: llvm-dsymutil --version 2>&1 | FileCheck --check-prefix=VERSION %s
|
RUN: dsymutil --version 2>&1 | FileCheck --check-prefix=VERSION %s
|
||||||
VERSION: {{ version }}
|
VERSION: {{ version }}
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
RUN: llvm-dsymutil -dump-debug-map -oso-prepend-path=%p %p/Inputs/basic.macho.x86_64 | FileCheck %s
|
RUN: dsymutil -dump-debug-map -oso-prepend-path=%p %p/Inputs/basic.macho.x86_64 | FileCheck %s
|
||||||
RUN: llvm-dsymutil -dump-debug-map -oso-prepend-path=%p %p/Inputs/basic-lto.macho.x86_64 | FileCheck %s --check-prefix=CHECK-LTO
|
RUN: dsymutil -dump-debug-map -oso-prepend-path=%p %p/Inputs/basic-lto.macho.x86_64 | FileCheck %s --check-prefix=CHECK-LTO
|
||||||
RUN: llvm-dsymutil -verbose -dump-debug-map -oso-prepend-path=%p %p/Inputs/basic-archive.macho.x86_64 | FileCheck %s --check-prefix=CHECK-ARCHIVE
|
RUN: dsymutil -verbose -dump-debug-map -oso-prepend-path=%p %p/Inputs/basic-archive.macho.x86_64 | FileCheck %s --check-prefix=CHECK-ARCHIVE
|
||||||
RUN: llvm-dsymutil -dump-debug-map %p/Inputs/basic.macho.x86_64 2>&1 | FileCheck %s --check-prefix=NOT-FOUND
|
RUN: dsymutil -dump-debug-map %p/Inputs/basic.macho.x86_64 2>&1 | FileCheck %s --check-prefix=NOT-FOUND
|
||||||
RUN: not llvm-dsymutil -dump-debug-map %p/Inputs/inexistant 2>&1 | FileCheck %s --check-prefix=NO-EXECUTABLE
|
RUN: not dsymutil -dump-debug-map %p/Inputs/inexistant 2>&1 | FileCheck %s --check-prefix=NO-EXECUTABLE
|
||||||
|
|
||||||
|
|
||||||
Check that We can parse the debug map of the basic executable.
|
Check that We can parse the debug map of the basic executable.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
RUN: llvm-dsymutil -s %p/Inputs/fat-test.dylib | FileCheck -check-prefix=ALL -check-prefix=I386 %s
|
RUN: dsymutil -s %p/Inputs/fat-test.dylib | FileCheck -check-prefix=ALL -check-prefix=I386 %s
|
||||||
RUN: llvm-dsymutil -arch i386 -s %p/Inputs/fat-test.dylib | FileCheck -check-prefix=I386 -check-prefix=ONE %s
|
RUN: dsymutil -arch i386 -s %p/Inputs/fat-test.dylib | FileCheck -check-prefix=I386 -check-prefix=ONE %s
|
||||||
|
|
||||||
|
|
||||||
ALL: ----------------------------------------------------------------------
|
ALL: ----------------------------------------------------------------------
|
||||||
@ -41,4 +41,4 @@ ALL-NEXT: [ 2] 00000016 66 (N_OSO ) 08 0001 0000000055b1d0b9 '
|
|||||||
ALL-NEXT: [ 3] 00000029 20 (N_GSYM ) 00 0000 0000000000000000 '_x86_64h_var'
|
ALL-NEXT: [ 3] 00000029 20 (N_GSYM ) 00 0000 0000000000000000 '_x86_64h_var'
|
||||||
ALL-NEXT: [ 4] 00000001 64 (N_SO ) 01 0000 0000000000000000
|
ALL-NEXT: [ 4] 00000001 64 (N_SO ) 01 0000 0000000000000000
|
||||||
ALL-NEXT: [ 5] 00000036 0f ( SECT EXT) 02 0000 0000000000001000 '_x86_64h_var'
|
ALL-NEXT: [ 5] 00000036 0f ( SECT EXT) 02 0000 0000000000001000 '_x86_64h_var'
|
||||||
ALL-NEXT: [ 6] 00000043 01 ( UNDF EXT) 00 0100 0000000000000000 'dyld_stub_binder'
|
ALL-NEXT: [ 6] 00000043 01 ( UNDF EXT) 00 0100 0000000000000000 'dyld_stub_binder'
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
RUN: llvm-dsymutil -f -verbose -no-output %p/Inputs/fat-test.dylib -oso-prepend-path %p | FileCheck %s
|
RUN: dsymutil -f -verbose -no-output %p/Inputs/fat-test.dylib -oso-prepend-path %p | FileCheck %s
|
||||||
|
|
||||||
This test doesn't produce any filesytstem output, we just look at the verbose
|
This test doesn't produce any filesytstem output, we just look at the verbose
|
||||||
log output.
|
log output.
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
#RUN: llvm-dsymutil -f -oso-prepend-path=%p/Inputs/ -y %s -no-output 2>&1 \
|
#RUN: dsymutil -f -oso-prepend-path=%p/Inputs/ -y %s -no-output 2>&1 \
|
||||||
#RUN: | FileCheck %s
|
#RUN: | FileCheck %s
|
||||||
|
|
||||||
# CHECK: warning: could not find referenced DIE
|
# CHECK: warning: could not find referenced DIE
|
||||||
@ -26,7 +26,7 @@
|
|||||||
# To generate the debug map:
|
# To generate the debug map:
|
||||||
#
|
#
|
||||||
# $ ld -arch x86_64 -macosx_version_min 10.13.0 -lSystem null_die.o -o null_die
|
# $ ld -arch x86_64 -macosx_version_min 10.13.0 -lSystem null_die.o -o null_die
|
||||||
# $ llvm-dsymutil -dump-debug-map null_die
|
# $ dsymutil -dump-debug-map null_die
|
||||||
|
|
||||||
---
|
---
|
||||||
triple: 'x86_64-apple-darwin'
|
triple: 'x86_64-apple-darwin'
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
# RUN: llvm-dsymutil -dump-debug-map -oso-prepend-path=%p -y %s | FileCheck %s
|
# RUN: dsymutil -dump-debug-map -oso-prepend-path=%p -y %s | FileCheck %s
|
||||||
#
|
#
|
||||||
# The YAML debug map bellow is the one from basic-archive.macho.x86_64 with
|
# The YAML debug map bellow is the one from basic-archive.macho.x86_64 with
|
||||||
# the object addresses set to zero. Check that the YAML import is able to
|
# the object addresses set to zero. Check that the YAML import is able to
|
||||||
|
@ -8,7 +8,7 @@ set(LLVM_LINK_COMPONENTS
|
|||||||
Target
|
Target
|
||||||
)
|
)
|
||||||
|
|
||||||
add_llvm_tool(llvm-dsymutil
|
add_llvm_tool(dsymutil
|
||||||
dsymutil.cpp
|
dsymutil.cpp
|
||||||
BinaryHolder.cpp
|
BinaryHolder.cpp
|
||||||
CFBundle.cpp
|
CFBundle.cpp
|
||||||
@ -23,10 +23,10 @@ add_llvm_tool(llvm-dsymutil
|
|||||||
)
|
)
|
||||||
|
|
||||||
if(APPLE)
|
if(APPLE)
|
||||||
target_link_libraries(llvm-dsymutil PRIVATE "-framework CoreFoundation")
|
target_link_libraries(dsymutil PRIVATE "-framework CoreFoundation")
|
||||||
endif(APPLE)
|
endif(APPLE)
|
||||||
|
|
||||||
if(LLVM_INSTALL_CCTOOLS_SYMLINKS)
|
if(LLVM_INSTALL_CCTOOLS_SYMLINKS)
|
||||||
add_llvm_tool_symlink(dsymutil llvm-dsymutil)
|
add_llvm_tool_symlink(dsymutil dsymutil)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
@ -244,11 +244,10 @@ MappingTraits<dsymutil::DebugMapObject>::YamlDMO::denormalize(IO &IO) {
|
|||||||
if (auto EC = ErrOrObjectFiles.getError()) {
|
if (auto EC = ErrOrObjectFiles.getError()) {
|
||||||
warn_ostream() << "Unable to open " << Path << " " << EC.message() << '\n';
|
warn_ostream() << "Unable to open " << Path << " " << EC.message() << '\n';
|
||||||
} else if (auto ErrOrObjectFile = BinHolder.Get(Ctxt.BinaryTriple)) {
|
} else if (auto ErrOrObjectFile = BinHolder.Get(Ctxt.BinaryTriple)) {
|
||||||
// Rewrite the object file symbol addresses in the debug map. The
|
// Rewrite the object file symbol addresses in the debug map. The YAML
|
||||||
// YAML input is mainly used to test llvm-dsymutil without
|
// input is mainly used to test dsymutil without requiring binaries
|
||||||
// requiring binaries checked-in. If we generate the object files
|
// checked-in. If we generate the object files during the test, we can't
|
||||||
// during the test, we can't hard-code the symbols addresses, so
|
// hard-code the symbols addresses, so look them up here and rewrite them.
|
||||||
// look them up here and rewrite them.
|
|
||||||
for (const auto &Sym : ErrOrObjectFile->symbols()) {
|
for (const auto &Sym : ErrOrObjectFile->symbols()) {
|
||||||
uint64_t Address = Sym.getValue();
|
uint64_t Address = Sym.getValue();
|
||||||
Expected<StringRef> Name = Sym.getName();
|
Expected<StringRef> Name = Sym.getName();
|
||||||
|
@ -17,6 +17,6 @@
|
|||||||
|
|
||||||
[component_0]
|
[component_0]
|
||||||
type = Tool
|
type = Tool
|
||||||
name = llvm-dsymutil
|
name = dsymutil
|
||||||
parent = Tools
|
parent = Tools
|
||||||
required_libraries = AsmPrinter DebugInfoDWARF MC Object Support all-targets
|
required_libraries = AsmPrinter DebugInfoDWARF MC Object Support all-targets
|
||||||
|
Loading…
x
Reference in New Issue
Block a user