| // RUN: llvm-mc -triple=arm64-apple-darwin < %s | \ |
| // RUN: FileCheck %s --check-prefix=ASM |
| |
| // RUN: llvm-mc -triple=arm64-apple-darwin -filetype=obj < %s | \ |
| // RUN: llvm-readobj --expand-relocs --sections \ |
| // RUN: --section-relocations --section-data - | \ |
| // RUN: FileCheck %s --check-prefix=RELOC |
| |
| |
| |
| // RELOC: Sections [ |
| // RELOC-LABEL: Section { |
| // RELOC-LABEL: Section { |
| // RELOC-NEXT: Index: 1 |
| // RELOC-NEXT: Name: __const (5F 5F 63 6F 6E 73 74 00 00 00 00 00 00 00 00 00) |
| // RELOC-NEXT: Segment: __DATA (5F 5F 44 41 54 41 00 00 00 00 00 00 00 00 00 00) |
| |
| .section __DATA,__const |
| .p2align 3 |
| |
| // RELOC-LABEL: Relocations [ |
| // RELOC-NEXT: Relocation { |
| // RELOC-NEXT: Offset: 0x70 |
| // RELOC-NEXT: PCRel: 0 |
| // RELOC-NEXT: Length: 3 |
| // RELOC-NEXT: Type: ARM64_RELOC_AUTHENTICATED_POINTER (11) |
| // RELOC-NEXT: Symbol: _g 7 |
| // RELOC-NEXT: } |
| // RELOC-NEXT: Relocation { |
| // RELOC-NEXT: Offset: 0x60 |
| // RELOC-NEXT: PCRel: 0 |
| // RELOC-NEXT: Length: 3 |
| // RELOC-NEXT: Type: ARM64_RELOC_AUTHENTICATED_POINTER (11) |
| // RELOC-NEXT: Symbol: _g 6 |
| // RELOC-NEXT: } |
| // RELOC-NEXT: Relocation { |
| // RELOC-NEXT: Offset: 0x50 |
| // RELOC-NEXT: PCRel: 0 |
| // RELOC-NEXT: Length: 3 |
| // RELOC-NEXT: Type: ARM64_RELOC_AUTHENTICATED_POINTER (11) |
| // RELOC-NEXT: Symbol: _g5 |
| // RELOC-NEXT: } |
| // RELOC-NEXT: Relocation { |
| // RELOC-NEXT: Offset: 0x40 |
| // RELOC-NEXT: PCRel: 0 |
| // RELOC-NEXT: Length: 3 |
| // RELOC-NEXT: Type: ARM64_RELOC_AUTHENTICATED_POINTER (11) |
| // RELOC-NEXT: Symbol: _g4 |
| // RELOC-NEXT: } |
| // RELOC-NEXT: Relocation { |
| // RELOC-NEXT: Offset: 0x30 |
| // RELOC-NEXT: PCRel: 0 |
| // RELOC-NEXT: Length: 3 |
| // RELOC-NEXT: Type: ARM64_RELOC_AUTHENTICATED_POINTER (11) |
| // RELOC-NEXT: Symbol: _g3 |
| // RELOC-NEXT: } |
| // RELOC-NEXT: Relocation { |
| // RELOC-NEXT: Offset: 0x20 |
| // RELOC-NEXT: PCRel: 0 |
| // RELOC-NEXT: Length: 3 |
| // RELOC-NEXT: Type: ARM64_RELOC_AUTHENTICATED_POINTER (11) |
| // RELOC-NEXT: Symbol: _g2 |
| // RELOC-NEXT: } |
| // RELOC-NEXT: Relocation { |
| // RELOC-NEXT: Offset: 0x10 |
| // RELOC-NEXT: PCRel: 0 |
| // RELOC-NEXT: Length: 3 |
| // RELOC-NEXT: Type: ARM64_RELOC_AUTHENTICATED_POINTER (11) |
| // RELOC-NEXT: Symbol: _g1 |
| // RELOC-NEXT: } |
| // RELOC-NEXT: Relocation { |
| // RELOC-NEXT: Offset: 0x0 |
| // RELOC-NEXT: PCRel: 0 |
| // RELOC-NEXT: Length: 3 |
| // RELOC-NEXT: Type: ARM64_RELOC_AUTHENTICATED_POINTER (11) |
| // RELOC-NEXT: Symbol: _g0 |
| // RELOC-NEXT: } |
| // RELOC-NEXT: ] |
| // RELOC-NEXT: SectionData ( |
| |
| // RELOC-NEXT: 0000: 00000000 2A000080 |
| // ASM: .quad _g0@AUTH(ia,42) |
| .quad _g0@AUTH(ia,42) |
| .quad 0 |
| |
| // RELOC-NEXT: 0010: 00000000 00000280 |
| // ASM: .quad _g1@AUTH(ib,0) |
| .quad _g1@AUTH(ib,0) |
| .quad 0 |
| |
| // RELOC-NEXT: 0020: 00000000 05000580 |
| // ASM: .quad _g2@AUTH(da,5,addr) |
| .quad _g2@AUTH(da,5,addr) |
| .quad 0 |
| |
| // RELOC-NEXT: 0030: 00000000 FFFF0780 |
| // ASM: .quad _g3@AUTH(db,65535,addr) |
| .quad _g3@AUTH(db,0xffff,addr) |
| .quad 0 |
| |
| // RELOC-NEXT: 0040: 07000000 00000080 |
| // ASM: .quad (_g4+7)@AUTH(ia,0) |
| .quad (_g4 + 7)@AUTH(ia,0) |
| .quad 0 |
| |
| // RELOC-NEXT: 0050: FDFFFFFF 00DE0280 |
| // ASM: .quad (_g5-3)@AUTH(ib,56832) |
| .quad (_g5 - 3)@AUTH(ib,0xde00) |
| .quad 0 |
| |
| // RELOC-NEXT: 0060: 00000000 FF000780 |
| // ASM: .quad "_g 6"@AUTH(db,255,addr) |
| .quad "_g 6"@AUTH(db,0xff,addr) |
| .quad 0 |
| |
| // RELOC-NEXT: 0070: 07000000 10000080 |
| // ASM: .quad ("_g 7"+7)@AUTH(ia,16) |
| .quad ("_g 7" + 7)@AUTH(ia,16) |
| .quad 0 |