# RUN: llvm-objdump -D %p/Inputs/xcoff-section-headers.o | \
# RUN:   FileCheck %s

# RUN: llvm-objdump -D -r %p/Inputs/xcoff-section-headers.o | \
# RUN:   FileCheck --check-prefixes=CHECK,WITH-R %s

## xcoff-section-headers.o Compiled with IBM XL C/C++ for AIX, V16.1.0
## compiler command: xlc -qtls -o xcoff-section-headers.o -c test.c
## test.c:
## int a;
## int b = 12345;
## __thread int c;
## __thread double d = 3.14159;
##
## int func(void)  {
##   return a;
## }

CHECK:        Inputs/xcoff-section-headers.o:	file format aixcoff-rs6000
CHECK:        Disassembly of section .text:
CHECK:        00000000 <.func>:
CHECK-NEXT:        0: 80 62 00 04                  	lwz 3, 4(2)
WITH-R-NEXT:                         00000002:  R_TOC        a
CHECK-NEXT:        4: 80 63 00 00                  	lwz 3, 0(3)
CHECK-NEXT:        8: 4e 80 00 20                  	blr
CHECK-NEXT:        c: 00 00 00 00                  	<unknown>
CHECK-NEXT:       10: 00 00 20 40                  	<unknown>
CHECK-NEXT:       14: 00 00 00 01                  	<unknown>
CHECK-NEXT:       18: 00 00 00 0c                  	<unknown>
CHECK-NEXT:       1c: 00 04 66 75                  	<unknown>
CHECK-NEXT:       20: 6e 63 00 00                  	xoris 3, 19, 0
CHECK-NEXT: 		...
CHECK:        Disassembly of section .data:
CHECK:        00000080 <func>:
CHECK-NEXT:       80: 00 00 00 94                  	<unknown>
WITH-R-NEXT:                         00000080:  R_POS        func
CHECK:        00000084 <a>:
CHECK-NEXT:       84: 00 00 00 a4                  	<unknown>
WITH-R-NEXT:                         00000084:  R_POS        a
CHECK:        00000088 <b>:
CHECK-NEXT:       88: 00 00 00 a0                  	<unknown>
WITH-R-NEXT:                         00000088:  R_POS        b
CHECK:        0000008c <c>:
CHECK-NEXT:       8c: 00 00 00 08                  	<unknown>
WITH-R-NEXT:                         0000008c:  R_TLS        c
CHECK:        00000090 <d>:
CHECK-NEXT:       90: 00 00 00 00                  	<unknown>
WITH-R-NEXT:                         00000090:  R_TLS        d
CHECK:        00000094 <func>:
CHECK-NEXT:       94: 00 00 00 00                  	<unknown>
WITH-R-NEXT:                         00000094:  R_POS        .func
CHECK-NEXT:       98: 00 00 00 80                  	<unknown>
WITH-R-NEXT:                         00000098:  R_POS        TOC
CHECK-NEXT:       9c: 00 00 00 00                  	<unknown>
CHECK:        000000a0 <b>:
CHECK-NEXT:       a0: 00 00 30 39                  	<unknown>
CHECK:        Disassembly of section .bss:
CHECK:        000000a4 <a>:
CHECK-NEXT:        ...
CHECK:        Disassembly of section .tdata:
CHECK:        00000000 <d>:
CHECK-NEXT:        0: 40 09 21 f9                  	bdnzfl	9, 0x21f8
CHECK-NEXT:        4: f0 1b 86 6e                  	<unknown>
CHECK:        Disassembly of section .tbss:
CHECK:        00000008 <c>:
CHECK-NEXT:        ...
