brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.9 KiB · 5e13ce8 Raw
45 lines · plain
1# RUN: rm -rf %t.dir2# RUN: mkdir %t.dir3# RUN: cd %t.dir4# RUN: yaml2obj %p/Inputs/single-file-split-dwarf.yaml -o %t.dir/test5# RUN: yaml2obj %p/Inputs/single-file-split-dwarf.o.yaml -o %t.dir/test.o6# RUN: lldb-test breakpoints %t.dir/test %s | FileCheck %s7 8# This test checks that source code location is shown correctly9# when single split file debug information is used (when .dwo sections are in .o files).10#11# single-file-split-dwarf.yaml and single-file-split-dwarf.o.yaml are12# reduced yaml files produces from the object file and the corresponding executable.13#14# The following code was used initially:15# int main() {16#   return 0;17# }18# 19# void foo() {20# }21#22# Invocation used to produce .o file was:23# clang test.cpp -gdwarf-5 -gsplit-dwarf=single -c -o test.o -v24#25# The full invocation used to produce the executable was:26# "/usr/local/bin/ld" -z relro --hash-style=gnu --eh-frame-hdr -m elf_x86_64 -dynamic-linker27#  /lib64/ld-linux-x86-64.so.2 -o test /usr/lib/gcc/x86_64-linux-gnu/7.3.0/../../../x86_64-linux-gnu/crt1.o28#  /usr/lib/gcc/x86_64-linux-gnu/7.3.0/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/7.3.0/crtbegin.o29#  -L/usr/lib/gcc/x86_64-linux-gnu/7.3.0 -L/usr/lib/gcc/x86_64-linux-gnu/7.3.0/../../../x86_64-linux-gnu30#  -L/lib/x86_64-linux-gnu -L/lib/../lib64 -L/usr/lib/x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/7.3.0/../../..31#  -L/home/umb/LLVM/build/bin/../lib -L/lib -L/usr/lib test.o -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc32#  --as-needed -lgcc_s --no-as-needed /usr/lib/gcc/x86_64-linux-gnu/7.3.0/crtend.o33#  /usr/lib/gcc/x86_64-linux-gnu/7.3.0/../../../x86_64-linux-gnu/crtn.o34#35# Also, the DW_AT_comp_dir string value set to empty in yaml produced. 36# Build bots had different path there and failed to find object.37 38b main39# CHECK-LABEL: b main40# CHECK: Address: {{.*}}main + 13 at test.cpp:2:341 42b foo43# CHECK-LABEL: b foo44# CHECK: Address: {{.*}}foo() + 4 at test.cpp:6:145