## Test the p_align field of a program header can be set explicitly or inferred ## from the maximum alignment of contained sections. ## Explicit Align has priority over section alignments. # RUN: yaml2obj --docnum=1 %s -o %t # RUN: llvm-readobj -l %t | FileCheck %s # CHECK: ProgramHeader { # CHECK-NOT: ProgramHeader { # CHECK: Alignment: 16 # CHECK-NEXT: } --- !ELF FileHeader: Class: ELFCLASS64 Data: ELFDATA2LSB Type: ET_EXEC Machine: EM_NONE Sections: - Name: .tdata Type: SHT_PROGBITS AddressAlign: 4 - Name: .tbss Type: SHT_NOBITS AddressAlign: 64 ProgramHeaders: - Type: PT_TLS Align: 16 Sections: - Section: .tdata - Section: .tbss ## If Align is not specified, p_align is inferred from the maximum alignment ## of contained sections. # RUN: yaml2obj --docnum=2 %s -o %t # RUN: llvm-readobj -l %t | FileCheck %s --- !ELF FileHeader: Class: ELFCLASS64 Data: ELFDATA2LSB Type: ET_EXEC Machine: EM_NONE Sections: - Name: .text Type: SHT_PROGBITS AddressAlign: 4 - Name: .text.hot Type: SHT_PROGBITS AddressAlign: 16 ProgramHeaders: - Type: PT_LOAD Sections: - Section: .text - Section: .text.hot