2 // RUN
: rm
-rf
%t && split-file
%s
%t && cd
%t
4 // RUN
: llvm-mc
-filetype
=obj
-triple
=x86_64
a.s
-o
a.o
5 // RUN
: ld.lld
a.o
-T eh-frame-non-zero-offset.
t -o non-zero
6 // RUN
: llvm-readelf
--program-headers
--unwind
--symbols
-x
.eh_frame non-zero | FileCheck --check-prefix=NONZERO %s
7 // RUN
: ld.lld
a.o
-T eh-frame-zero-offset.
t -o zero
8 // RUN
: llvm-readelf
--program-headers
--unwind
--symbols
-x
.eh_frame zero | FileCheck --check-prefix=ZERO %s
10 // NONZERO
: {{[0-9]+}}: 0000000000000088 {{.*}} __eh_frame_start
11 // NONZERO-NEXT
: {{[0-9]+}}: 00000000000000bc {{.*}} __eh_frame_end
13 // NONZERO
: 0x00000088 14000000 00000000 017a5200
01781001
14 // NONZERO-NEXT
: 0x00000098 1b0c0708
90010000 14000000 1c000000
15 // NONZERO-NEXT
: 0x000000a8 58ffffff
04000000 00000000 00000000
16 // NONZERO-NEXT
: 0x000000b8 00000000
18 // ZERO
: {{[0-9]+}}: 0000000000000008 {{.*}} __eh_frame_start
19 // ZERO-NEXT
: {{[0-9]+}}: 000000000000003c
{{.*}} __eh_frame_end
21 // ZERO
: 0x00000008 14000000 00000000 017a5200
01781001
22 // ZERO-NEXT
: 0x00000018 1b0c0708
90010000 14000000 1c000000
23 // ZERO-NEXT
: 0x00000028 d8ffffff
04000000 00000000 00000000
24 // ZERO-NEXT
: 0x00000038 00000000
26 //--- eh-frame-non-zero-offset.
t
28 .text : { *(.text .text.*) }
30 /* Padding within .eh_frame */
38 //--- eh-frame-zero-offset.
t
40 .text : { *(.text .text.*) }
49 .section .text.01, "ax",%progbits