universal-arm64.test 2.42 KB
## This test checks that the CPUTypes are printed correctly for the subtypes of
## ARM64.

# RUN: yaml2obj %s -o %tarm.o
# RUN: llvm-objdump %tarm.o --universal-headers --macho | \
# RUN:   FileCheck %s --match-full-lines

# CHECK:      Fat headers
# CHECK-NEXT: fat_magic FAT_MAGIC
# CHECK-NEXT: nfat_arch 3
# CHECK-NEXT: architecture arm64
# CHECK-NEXT:     cputype CPU_TYPE_ARM64
# CHECK-NEXT:     cpusubtype CPU_SUBTYPE_ARM64_ALL
# CHECK-NEXT:     capabilities 0x0
# CHECK-NEXT:     offset 4096
# CHECK-NEXT:     size 352
# CHECK-NEXT:     align 2^12 (4096)
# CHECK-NEXT: architecture
# CHECK-NEXT:     cputype CPU_TYPE_ARM64
# CHECK-NEXT:     cpusubtype CPU_SUBTYPE_ARM64_V8
# CHECK-NEXT:     capabilities 0x0
# CHECK-NEXT:     offset 16384
# CHECK-NEXT:     size 384
# CHECK-NEXT:     align 2^14 (16384)
# CHECK-NEXT: architecture
# CHECK-NEXT:     cputype CPU_TYPE_ARM64
# CHECK-NEXT:     cpusubtype CPU_SUBTYPE_ARM64E
# CHECK-NEXT:     capabilities 0x0
# CHECK-NEXT:     offset 28672
# CHECK-NEXT:     size 384
# CHECK-NEXT:     align 2^12 (4096)
# CHECK-NOT:{{.}}

--- !fat-mach-o
FatHeader:
  magic:           0xCAFEBABE
  nfat_arch:       3
FatArchs:
  - cputype:         0x0100000C
    cpusubtype:      0x00000000
    offset:          0x0000000000001000
    size:            352
    align:           12
  - cputype:         0x0100000C
    cpusubtype:      0x00000001
    offset:          0x0000000000004000
    size:            384
    align:           14
  - cputype:         0x0100000C
    cpusubtype:      0x00000002
    offset:          0x0000000000007000
    size:            384
    align:           12
Slices:
  - !mach-o
    FileHeader:
      magic:           0xFEEDFACF
      cputype:         0x0100000C
      cpusubtype:      0x00000000
      filetype:        0x00000001
      ncmds:           0
      sizeofcmds:      0
      flags:           0x00000000
      reserved:        0x00000000
  - !mach-o
    FileHeader:
      magic:           0xFEEDFACF
      cputype:         0x0100000C
      cpusubtype:      0x00000001
      filetype:        0x00000001
      ncmds:           0
      sizeofcmds:      0
      flags:           0x00000000
      reserved:        0x00000000
  - !mach-o
    FileHeader:
      magic:           0xFEEDFACF
      cputype:         0x0100000C
      cpusubtype:      0x00000002
      filetype:        0x00000001
      ncmds:           0
      sizeofcmds:      0
      flags:           0x00000000
      reserved:        0x00000000
...