• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1#RUN: dsymutil -f -oso-prepend-path=%p/Inputs/ -y %s -no-output 2>&1 \
2#RUN:   |  FileCheck %s
3
4# CHECK: warning: could not find referenced DIE
5
6# We've modified the DW_AT_abstract_origin offset to reference a NULL DIE.
7#
8# Source:
9#
10#   void f1() {}
11#   __attribute__((always_inline)) void f2() {
12#     f1();
13#   }
14#   int main() {
15#     f2();
16#   }
17#
18# Compile with:
19#
20#   $ clang -g null_die.c -O0 -S -o null_die.s
21#
22#   Manually patch the DW_AT_abstract_origin to point to a NULL DIE.
23#
24#   $ llvm-mc -triple x86_64-apple-darwin -filetype=obj -o null_die.o null_die.s
25#
26# To generate the debug map:
27#
28#   $ ld -arch x86_64 -macosx_version_min 10.13.0 -lSystem null_die.o -o null_die
29#   $ dsymutil -dump-debug-map null_die
30
31---
32triple:          'x86_64-apple-darwin'
33binary-path:     null_die
34objects:
35  - filename:        /null_die.o
36    timestamp:       1505928022
37    symbols:
38      - { sym: _main, objAddr: 0x0000000000000020, binAddr: 0x0000000100000F10, size: 0x0000000D }
39      - { sym: _f1, objAddr: 0x0000000000000000, binAddr: 0x0000000100000EF0, size: 0x00000010 }
40      - { sym: _f2, objAddr: 0x0000000000000010, binAddr: 0x0000000100000F00, size: 0x00000010 }
41...
42