| ## Test how relocations are dumped. |
| |
| # RUN: yaml2obj %s -o %t |
| # RUN: llvm-readobj --relocs --expand-relocs %t | \ |
| # RUN: FileCheck %s --strict-whitespace --match-full-lines --check-prefix=RELOCSEXP |
| # RUN: llvm-readobj --relocs %t | \ |
| # RUN: FileCheck %s --strict-whitespace --match-full-lines --check-prefix=RELOCS |
| |
| # RELOCSEXP:Relocations [ |
| # RELOCSEXP-NEXT: Section (index: 1) .text { |
| # RELOCSEXP-NEXT: Relocation { |
| # RELOCSEXP-NEXT: Virtual Address: 0x80 |
| # RELOCSEXP-NEXT: Symbol: foo (0) |
| # RELOCSEXP-NEXT: IsSigned: No |
| # RELOCSEXP-NEXT: FixupBitValue: 0 |
| # RELOCSEXP-NEXT: Length: 22 |
| # RELOCSEXP-NEXT: Type: R_POS (0x0) |
| # RELOCSEXP-NEXT: } |
| # RELOCSEXP-NEXT: Relocation { |
| # RELOCSEXP-NEXT: Virtual Address: 0x100 |
| # RELOCSEXP-NEXT: Symbol: foo (0) |
| # RELOCSEXP-NEXT: IsSigned: No |
| # RELOCSEXP-NEXT: FixupBitValue: 0 |
| # RELOCSEXP-NEXT: Length: 21 |
| # RELOCSEXP-NEXT: Type: R_REL (0x2) |
| # RELOCSEXP-NEXT: } |
| # RELOCSEXP-NEXT: } |
| # RELOCSEXP-NEXT: Section (index: 2) .data { |
| # RELOCSEXP-NEXT: Relocation { |
| # RELOCSEXP-NEXT: Virtual Address: 0x200 |
| # RELOCSEXP-NEXT: Symbol: bar (1) |
| # RELOCSEXP-NEXT: IsSigned: No |
| # RELOCSEXP-NEXT: FixupBitValue: 0 |
| # RELOCSEXP-NEXT: Length: 20 |
| # RELOCSEXP-NEXT: Type: R_TOC (0x3) |
| # RELOCSEXP-NEXT: } |
| # RELOCSEXP-NEXT: } |
| # RELOCSEXP-NEXT:] |
| |
| # RELOCS:Relocations [ |
| # RELOCS-NEXT: Section (index: 1) .text { |
| # RELOCS-NEXT: 0x80 R_POS foo(0) 0x15 |
| # RELOCS-NEXT: 0x100 R_REL foo(0) 0x14 |
| # RELOCS-NEXT: } |
| # RELOCS-NEXT: Section (index: 2) .data { |
| # RELOCS-NEXT: 0x200 R_TOC bar(1) 0x13 |
| # RELOCS-NEXT: } |
| # RELOCS-NEXT:] |
| |
| --- !XCOFF |
| FileHeader: |
| MagicNumber: 0x01DF |
| Sections: |
| - Name: .text |
| Flags: [ STYP_TEXT ] |
| Relocations: |
| - Address: 0x80 |
| Symbol: 0x0 |
| Info: 0x15 |
| Type: 0x0 |
| - Address: 0x100 |
| Symbol: 0x0 |
| Info: 0x14 |
| Type: 0x2 |
| - Name: .data |
| Flags: [ STYP_DATA ] |
| Relocations: |
| - Address: 0x200 |
| Symbol: 0x1 |
| Info: 0x13 |
| Type: 0x3 |
| Symbols: |
| - Name: foo |
| Value: 0x0 |
| Section: .text |
| - Name: bar |
| Value: 0x80 |
| Section: .data |