mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-10-19 02:52:53 +02:00
bfbad8d3aa
llvm-objdump when printing the Mach Header to print the unknown cputype and cpusubtype fields as decimal instead of not printing them at all. And change the test to check for that. llvm-svn: 258826
63 lines
3.8 KiB
Plaintext
63 lines
3.8 KiB
Plaintext
// An odd Mach-O file, with just a mach header with all but the magic field
|
|
// and filetype zeros. The cputype and cpusubtype fields being zero are invalid,
|
|
// but that does not mater for the most part to display some of the contents.
|
|
RUN: llvm-objdump -private-headers %p/Inputs/macho-invalid-zero-ncmds -macho \
|
|
RUN: | FileCheck -check-prefix ZERO-NCMDS %s
|
|
ZERO-NCMDS: MH_MAGIC_64 0 0 0x00 OBJECT 0 0 0x00000000
|
|
|
|
RUN: not llvm-objdump -private-headers %p/Inputs/macho64-invalid-incomplete-load-command 2>&1 \
|
|
RUN: | FileCheck -check-prefix INCOMPLETE-LOADC %s
|
|
INCOMPLETE-LOADC: Invalid data was encountered while parsing the file.
|
|
|
|
RUN: not llvm-objdump -private-headers %p/Inputs/macho-invalid-too-small-load-command 2>&1 \
|
|
RUN: | FileCheck -check-prefix SMALL-LOADC-SIZE %s
|
|
RUN: not llvm-objdump -private-headers %p/Inputs/macho64-invalid-too-small-load-command 2>&1 \
|
|
RUN: | FileCheck -check-prefix SMALL-LOADC-SIZE %s
|
|
SMALL-LOADC-SIZE: Mach-O load command with size < 8 bytes
|
|
|
|
RUN: not llvm-objdump -private-headers %p/Inputs/macho-invalid-too-small-segment-load-command 2>&1 \
|
|
RUN: | FileCheck -check-prefix SMALL-SEGLOADC-SIZE %s
|
|
RUN: not llvm-objdump -private-headers %p/Inputs/macho64-invalid-too-small-segment-load-command 2>&1 \
|
|
RUN: | FileCheck -check-prefix SMALL-SEGLOADC-SIZE %s
|
|
SMALL-SEGLOADC-SIZE: Mach-O segment load command size is too small
|
|
|
|
RUN: not llvm-objdump -private-headers %p/Inputs/macho-invalid-no-size-for-sections 2>&1 \
|
|
RUN: | FileCheck -check-prefix TOO-MANY-SECTS %s
|
|
RUN: not llvm-objdump -private-headers %p/Inputs/macho64-invalid-no-size-for-sections 2>&1 \
|
|
RUN: | FileCheck -check-prefix TOO-MANY-SECTS %s
|
|
TOO-MANY-SECTS: Mach-O segment load command contains too many sections
|
|
|
|
RUN: not llvm-objdump -t %p/Inputs/macho-invalid-bad-symbol-index 2>&1 \
|
|
RUN: | FileCheck -check-prefix BAD-SYMBOL %s
|
|
BAD-SYMBOL: Invalid data was encountered while parsing the file.
|
|
RUN: llvm-objdump -t %p/Inputs/macho-valid-0-nsyms 2>&1 \
|
|
RUN: | FileCheck -check-prefix ZERO-NSYMS %s
|
|
ZERO-NSYMS: SYMBOL TABLE
|
|
ZERO-NSYMS-NOT: Requested symbol index is out of range
|
|
|
|
RUN: not llvm-objdump -t %p/Inputs/macho-invalid-symbol-name-past-eof 2>&1 \
|
|
RUN: | FileCheck -check-prefix NAME-PAST-EOF %s
|
|
NAME-PAST-EOF: error reading file: Invalid data was encountered while parsing the file.
|
|
RUN: llvm-nm -pa %p/Inputs/macho-invalid-symbol-name-past-eof 2>&1 \
|
|
RUN: | FileCheck -check-prefix NAME-PAST-EOF-nm-pa %s
|
|
NAME-PAST-EOF-nm-pa: 0000000000000000 - 00 0000 SO bad string index
|
|
RUN: llvm-nm -pax %p/Inputs/macho-invalid-symbol-name-past-eof 2>&1 \
|
|
RUN: | FileCheck -check-prefix NAME-PAST-EOF-nm-pax %s
|
|
NAME-PAST-EOF-nm-pax: 0000000000000000 64 00 0000 fe000002 bad string index
|
|
|
|
RUN: llvm-nm %p/Inputs/macho-invalid-section-index-getSectionRawName 2>&1 \
|
|
RUN: | FileCheck -check-prefix INVALID-SECTION-IDX-SYMBOL-SEC %s
|
|
INVALID-SECTION-IDX-SYMBOL-SEC: 0000000100000000 S __mh_execute_header
|
|
RUN: llvm-nm -m %p/Inputs/macho-invalid-section-index-getSectionRawName 2>&1 \
|
|
RUN: | FileCheck -check-prefix INVALID-SECTION-IDX-SYMBOL-SEC-m %s
|
|
INVALID-SECTION-IDX-SYMBOL-SEC-m: 0000000100000000 (?,?) [referenced dynamically] external __mh_execute_header
|
|
RUN: llvm-nm -pax %p/Inputs/macho-invalid-section-index-getSectionRawName 2>&1 \
|
|
RUN: | FileCheck -check-prefix INVALID-SECTION-IDX-SYMBOL-SEC-pax %s
|
|
INVALID-SECTION-IDX-SYMBOL-SEC-pax: 0000000100000000 0f 42 0010 00000065 __mh_execute_header
|
|
|
|
RUN: not llvm-objdump -private-headers %p/Inputs/macho-invalid-header 2>&1 | FileCheck -check-prefix INVALID-HEADER %s
|
|
INVALID-HEADER: Invalid data was encountered while parsing the file
|
|
|
|
RUN: not llvm-objdump -private-headers %p/Inputs/macho64-invalid-incomplete-segment-load-command 2>&1 | FileCheck -check-prefix INCOMPLETE-SEGMENT-LOADC %s
|
|
INCOMPLETE-SEGMENT-LOADC: Invalid data was encountered while parsing the file
|