1 // These test checks that llvm-objdump will not crash with malformed Mach-O 2 // files. So the check line is not all that important but the bug fixes to 3 // make sure llvm-objdump is robust is what matters. 4 # RUN: llvm-objdump -macho -objc-meta-data \ 5 # RUN: %p/Inputs/malformed-machos/mem-crup-0001.macho \ 6 # RUN: | FileCheck -check-prefix=m0001 %s 7 8 # m0001: (method_t extends past the end of the section) 9 10 # RUN: llvm-objdump -macho -objc-meta-data \ 11 # RUN: %p/Inputs/malformed-machos/mem-crup-0006.macho \ 12 # RUN: | FileCheck -check-prefix=m0006 %s 13 14 # m0006: ivarLayout 0x8 15 16 # RUN: llvm-objdump -macho -objc-meta-data \ 17 # RUN: %p/Inputs/malformed-machos/mem-crup-0006.macho \ 18 # RUN: | FileCheck -check-prefix=m0010 %s 19 20 # m0010: 00000000000010e0 0x10e8 _OBJC_CLASS_ 21 22 # RUN: llvm-objdump -macho -objc-meta-data \ 23 # RUN: %p/Inputs/malformed-machos/mem-crup-0040.macho \ 24 # RUN: | FileCheck -check-prefix=m0040 %s 25 26 # m0040: 00000000000010a0 0xf39 -[tiny_dylib init] 27 28 # RUN: llvm-objdump -macho -objc-meta-data \ 29 # RUN: %p/Inputs/malformed-machos/mem-crup-0080.macho \ 30 # RUN: | FileCheck -check-prefix=m0080 %s 31 32 # m0080: data 0xf960000 (struct class_ro_t *) 33 34 # RUN: llvm-objdump -macho -objc-meta-data \ 35 # RUN: %p/Inputs/malformed-machos/mem-crup-0261.macho 36 37 # RUN: llvm-objdump -macho -disassemble \ 38 # RUN: %p/Inputs/malformed-machos/mem-crup-0337.macho \ 39 # RUN: | FileCheck -check-prefix=m0337 %s 40 41 # m0337: subq $16, %rsp 42