emachine.yaml 987 Bytes
## Check how obj2yaml dumps e_machine field.

## Check it dumps an unknown e_machine as a number.

# RUN: yaml2obj -DMACHINE=0x1234 %s -o %t1
# RUN: obj2yaml %t1 | FileCheck %s -DMACHINE=0x1234

# CHECK:      --- !ELF
# CHECK-NEXT: FileHeader:
# CHECK-NEXT:   Class:   ELFCLASS64
# CHECK-NEXT:   Data:    ELFDATA2MSB
# CHECK-NEXT:   Type:    ET_REL
# CHECK-NEXT:   Machine: [[MACHINE]]

--- !ELF
FileHeader:
  Class:   ELFCLASS64
  Data:    ELFDATA2MSB
  Type:    ET_REL
  Machine: [[MACHINE]]

## Check it dumps a known e_machine value as an enum string.

# RUN: yaml2obj %s -DMACHINE=0x1 -o %t2
# RUN: obj2yaml %t2 | FileCheck %s -DMACHINE=EM_M32

## Check it doesn't dump e_machine when it is EM_NONE (0).

# RUN: yaml2obj %s -DMACHINE=0x0 -o %t3
# RUN: obj2yaml %t3 | FileCheck %s --check-prefix=DEFAULT

# DEFAULT:      --- !ELF
# DEFAULT-NEXT: FileHeader:
# DEFAULT-NEXT:   Class: ELFCLASS64
# DEFAULT-NEXT:   Data:  ELFDATA2MSB
# DEFAULT-NEXT:   Type:  ET_REL
# DEFAULT-NEXT: ...