macho-dis-symname.test 1.1 KB
# RUN: llvm-objdump -m -d %p/Inputs/exeThread.macho-x86_64 -dis-symname start -no-show-raw-insn -full-leading-addr -print-imm-hex | FileCheck %s

# CHECK: (__TEXT,__text) section
# CHECK: start:
# CHECK: 0000000100000d00	pushq	$0x0
# CHECK: 0000000100000d02	movq	%rsp, %rbp
# CHECK: 0000000100000d05	andq	$-0x10, %rsp
# CHECK: 0000000100000d09	movq	0x8(%rbp), %rdi
# CHECK: 0000000100000d0d	leaq	0x10(%rbp), %rsi
# CHECK: 0000000100000d11	movl	%edi, %edx
# CHECK: 0000000100000d13	addl	$0x1, %edx
# CHECK: 0000000100000d16	shll	$0x3, %edx
# CHECK: 0000000100000d19	addq	%rsi, %rdx
# CHECK: 0000000100000d1c	callq	__start
# CHECK: 0000000100000d21	hlt

# CHECK-NOT: __start:
# CHECK-NOT: 0000000100000d22
# CHECK-NOT: _main:

# not RUN: llvm-objdump -m -d %p/Inputs/exeThread.macho-x86_64 -dis-symname _environ 2>&1 | FileCheck -check-prefix BAD-SYMAME-1 %s
BAD-SYMAME-1: -dis-symname: _environ not in the section

# not RUN: llvm-objdump -m -d %p/Inputs/exeThread.macho-x86_64 -dis-symname __mh_execute_header 2>&1 | FileCheck -check-prefix BAD-SYMAME-2 %s
BAD-SYMAME-2: -dis-symname: __mh_execute_header not in any section