llvm-for-llvmta/test/tools/yaml2obj/ELF/none-value.yaml

45 lines
1.4 KiB
YAML
Raw Normal View History

2022-04-25 10:02:23 +02:00
## We have a special "<none>" value for all keys that are implemented
## as Optional<> in the code. Setting a key to "<none>" means no-op and
## works in the same way as when a field was not specified at all.
## Test a few keys for which the "<none>" value is supported.
## We do not test all possible keys, because it would be too verbose.
## It reasonable to test all keys for a section, because normally many
## of them would conflict or intersect when specified together.
# RUN: yaml2obj %s --docnum=1 -o %t-none
# RUN: yaml2obj %s --docnum=2 -o %t-base
# RUN: cmp %t-none %t-base
## We do not use the TEST macro. It exists to
## demonstrate the expected use case for the <none> word.
--- !ELF
FileHeader:
Class: ELFCLASS64
Data: ELFDATA2LSB
Type: ET_REL
Sections:
- Name: .bar
Type: SHT_PROGBITS
Flags: [[TEST=<none>]] ## Comment
Offset: [[TEST=<none>]]
Address: [[TEST=<none>]]
Content: [[TEST=<none>]]
Size: [[TEST=<none>]]
ContentArray: [[TEST=<none>]]
Info: [[TEST=<none>]]
EntSize: [[TEST=<none>]]
ShName: [[TEST=<none>]]
ShOffset: [[TEST=<none>]]
ShSize: [[TEST=<none>]]
ShFlags: [[TEST=<none>]]
## The same document, but all fields that were set to <none> are removed.
--- !ELF
FileHeader:
Class: ELFCLASS64
Data: ELFDATA2LSB
Type: ET_REL
Sections:
- Name: .bar
Type: SHT_PROGBITS