| # REQUIRES: x86 | |
| # RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t | |
| # RUN: echo "SECTIONS { \ | |
| # RUN: .aaa : ALIGN(4096) { *(.aaa) } \ | |
| # RUN: .bbb : ALIGN(4096 * 4) { *(.bbb) } \ | |
| # RUN: .ccc : ALIGN(4096 * 8) { *(.ccc) } \ | |
| # RUN: }" > %t.script | |
| # RUN: ld.lld -o %t1 --script %t.script %t | |
| # RUN: llvm-readobj --sections %t1 | FileCheck %s | |
| .global _start | |
| _start: | |
| nop | |
| // CHECK: Name: .aaa | |
| // CHECK-NEXT: Type: SHT_PROGBITS | |
| // CHECK-NEXT: Flags [ | |
| // CHECK-NEXT: SHF_ALLOC | |
| // CHECK-NEXT: ] | |
| // CHECK-NEXT: Address: | |
| // CHECK-NEXT: Offset: | |
| // CHECK-NEXT: Size: 8 | |
| // CHECK-NEXT: Link: 0 | |
| // CHECK-NEXT: Info: 0 | |
| // CHECK-NEXT: AddressAlignment: 4096 | |
| // CHECK-NEXT: EntrySize: | |
| .section .aaa, "a" | |
| .quad 0 | |
| // CHECK: Name: .bbb | |
| // CHECK-NEXT: Type: SHT_PROGBITS | |
| // CHECK-NEXT: Flags [ | |
| // CHECK-NEXT: SHF_ALLOC | |
| // CHECK-NEXT: ] | |
| // CHECK-NEXT: Address: | |
| // CHECK-NEXT: Offset: | |
| // CHECK-NEXT: Size: 8 | |
| // CHECK-NEXT: Link: 0 | |
| // CHECK-NEXT: Info: 0 | |
| // CHECK-NEXT: AddressAlignment: 16384 | |
| // CHECK-NEXT: EntrySize: | |
| .section .bbb, "a" | |
| .quad 0 | |
| // CHECK: Name: .ccc | |
| // CHECK-NEXT: Type: SHT_PROGBITS | |
| // CHECK-NEXT: Flags [ | |
| // CHECK-NEXT: SHF_ALLOC | |
| // CHECK-NEXT: ] | |
| // CHECK-NEXT: Address: | |
| // CHECK-NEXT: Offset: | |
| // CHECK-NEXT: Size: 8 | |
| // CHECK-NEXT: Link: 0 | |
| // CHECK-NEXT: Info: 0 | |
| // CHECK-NEXT: AddressAlignment: 32768 | |
| // CHECK-NEXT: EntrySize: | |
| .section .ccc, "a" | |
| .quad 0 |