]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - test/tools/dsymutil/X86/frame-1.test
Vendor import of llvm trunk r338150:
[FreeBSD/FreeBSD.git] / test / tools / dsymutil / X86 / frame-1.test
1 # REQUIRES: object-emission
2 # RUN: rm -rf %t
3 # RUN: mkdir -p %t
4 # RUN: llc -filetype=obj %p/../Inputs/frame-dw2.ll -o %t/frame-dw2.o
5 # RUN: dsymutil -f -oso-prepend-path=%t -y %s -o - | llvm-dwarfdump -debug-frame - | FileCheck %s
6
7 # This test is meant to verify that identical CIEs will get reused
8 # in the same file but also inbetween files. For this to happen, we
9 # link twice the same file using this made-up debug map:
10
11 ---
12 triple:          'i386-apple-darwin'
13 objects:
14   - filename: frame-dw2.o
15     symbols:
16       - { sym: _bar, objAddr: 0x0, binAddr: 0x1000, size: 0x12 }
17       - { sym: _baz, objAddr: 0x0, binAddr: 0x2000, size: 0x12 }
18   - filename: frame-dw2.o
19     symbols:
20       - { sym: _baz, objAddr: 0x0, binAddr: 0x3000, size: 0x12 }
21 ...
22
23 # CHECK: .debug_frame contents:
24 # CHECK: 00000000 {{[0-9a-f]*}} ffffffff CIE
25 # CHECK-NOT: FDE
26 # CHECK:  FDE cie=00000000 pc=00001000...00001
27 # CHECK-NOT: FDE
28 # CHECK:  FDE cie=00000000 pc=00002000...00002
29 # CHECK-NOT: FDE
30 # CHECK:  FDE cie=00000000 pc=00003000...00003
31 # CHECK-NOT: FDE
32 # CHECK: .eh_frame contents: