forked from OSchip/llvm-project
66 lines
1.7 KiB
Plaintext
66 lines
1.7 KiB
Plaintext
# Check ELF flags merging.
|
|
|
|
# RUN: yaml2obj -format=elf -docnum 1 %s > %t-none.o
|
|
# RUN: yaml2obj -format=elf -docnum 2 %s > %t-noreorder.o
|
|
# RUN: yaml2obj -format=elf -docnum 3 %s > %t-micro.o
|
|
|
|
# RUN: lld -flavor gnu -target mipsel -shared -o %t.so \
|
|
# RUN: %t-none.o %t-noreorder.o %t-micro.o
|
|
# RUN: llvm-readobj -file-headers %t.so | FileCheck %s
|
|
|
|
# CHECK: Flags [ (0x52001001)
|
|
# CHECK-NEXT: EF_MIPS_ABI_O32 (0x1000)
|
|
# CHECK-NEXT: EF_MIPS_ARCH_32 (0x50000000)
|
|
# CHECK-NEXT: EF_MIPS_MICROMIPS (0x2000000)
|
|
# CHECK-NEXT: EF_MIPS_NOREORDER (0x1)
|
|
# CHECK-NEXT: ]
|
|
|
|
# none.o
|
|
---
|
|
FileHeader:
|
|
Class: ELFCLASS32
|
|
Data: ELFDATA2LSB
|
|
Type: ET_REL
|
|
Machine: EM_MIPS
|
|
Flags: [EF_MIPS_ABI_O32, EF_MIPS_ARCH_32]
|
|
|
|
Sections:
|
|
- Name: .text
|
|
Type: SHT_PROGBITS
|
|
Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
|
|
AddressAlign: 0x04
|
|
Size: 0x04
|
|
|
|
# noreorder.o
|
|
---
|
|
FileHeader:
|
|
Class: ELFCLASS32
|
|
Data: ELFDATA2LSB
|
|
Type: ET_REL
|
|
Machine: EM_MIPS
|
|
Flags: [EF_MIPS_ABI_O32, EF_MIPS_ARCH_32, EF_MIPS_NOREORDER]
|
|
|
|
Sections:
|
|
- Name: .text
|
|
Type: SHT_PROGBITS
|
|
Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
|
|
AddressAlign: 0x04
|
|
Size: 0x04
|
|
|
|
# micro.o
|
|
---
|
|
FileHeader:
|
|
Class: ELFCLASS32
|
|
Data: ELFDATA2LSB
|
|
Type: ET_REL
|
|
Machine: EM_MIPS
|
|
Flags: [EF_MIPS_ABI_O32, EF_MIPS_ARCH_32, EF_MIPS_MICROMIPS]
|
|
|
|
Sections:
|
|
- Name: .text
|
|
Type: SHT_PROGBITS
|
|
Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
|
|
AddressAlign: 0x04
|
|
Size: 0x04
|
|
...
|