You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
35 lines
931 B
35 lines
931 B
4 months ago
|
## Test how the Machine YAML field can be used to set the e_machine ELF header field.
|
||
|
|
||
|
## Test we can use an arbitrary value.
|
||
|
|
||
|
# RUN: yaml2obj -D MACHINE=0x1234 %s -o %t1
|
||
|
# RUN: llvm-readelf %t1 --file-headers | FileCheck %s --check-prefix=UNKNOWN
|
||
|
|
||
|
# UNKNOWN: Machine: 1234
|
||
|
|
||
|
--- !ELF
|
||
|
FileHeader:
|
||
|
Class: ELFCLASS64
|
||
|
Data: ELFDATA2MSB
|
||
|
Type: ET_REL
|
||
|
Machine: [[MACHINE]]
|
||
|
|
||
|
## Test we can't use a number that doesn't fit into 2 bytes.
|
||
|
|
||
|
# RUN: not yaml2obj -D MACHINE=0x12345 %s 2>&1 | FileCheck %s --check-prefix=ERR
|
||
|
|
||
|
# ERR: error: out of range hex16 number
|
||
|
|
||
|
## Test we can use a known named constant.
|
||
|
|
||
|
# RUN: yaml2obj -D MACHINE=EM_NONE %s -o %t3
|
||
|
# RUN: llvm-readelf %t3 --file-headers | FileCheck %s --check-prefix=NONE
|
||
|
|
||
|
# NONE: Machine: None
|
||
|
|
||
|
## Test we can't use an unknown string constant.
|
||
|
|
||
|
# RUN: not yaml2obj -D MACHINE=EM_UNKNOWN_FOO %s 2>&1 | FileCheck %s --check-prefix=ERR2
|
||
|
|
||
|
# ERR2: error: invalid hex16 number
|