Ignored vs Assumed Semantics in BDE

BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*) - Assumed

0000000000407190 <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)>:
M0000000000000000:	pushq	%rbp	;  1 bytes
M0000000000000001:	pushq	%r15	;  2 bytes
M0000000000000003:	pushq	%r14	;  2 bytes
M0000000000000005:	pushq	%r13	;  2 bytes
M0000000000000007:	pushq	%r12	;  2 bytes
M0000000000000009:	pushq	%rbx	;  1 bytes
M000000000000000a:	subq	$88, %rsp	;  4 bytes
M000000000000000e:	movq	%rdi, %r12	;  3 bytes
M0000000000000011:	movq	80(%rdi), %rax	;  4 bytes
M0000000000000015:	movq	96(%rdi), %rcx	;  4 bytes
M0000000000000019:	movq	%rcx, 8(%rsp)	;  5 bytes
M000000000000001e:	testq	%rax, %rax	;  3 bytes
M0000000000000021:	je	0x4071db <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0x4b>	;  2 bytes
M0000000000000023:	cmpq	$23, 88(%r12)	;  6 bytes
M0000000000000029:	je	0x4071c2 <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0x32>	;  2 bytes
M000000000000002b:	movq	56(%r12), %rcx	;  5 bytes
M0000000000000030:	jmp	0x4071c7 <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0x37>	;  2 bytes
M0000000000000032:	leaq	56(%r12), %rcx	;  5 bytes
M0000000000000037:	movq	%rcx, 16(%rsp)	;  5 bytes
M000000000000003c:	movq	%rax, 24(%rsp)	;  5 bytes
M0000000000000041:	leaq	16(%rsp), %rdi	;  5 bytes
M0000000000000046:	callq	0x408580 <BloombergLP::bslmt::ThreadUtilImpl<BloombergLP::bslmt::Platform::PosixThreads>::setThreadName(BloombergLP::bslstl::StringRefImp<char> const&)>	;  5 bytes
M000000000000004b:	movq	40(%r12), %rdi	;  5 bytes
M0000000000000050:	callq	0x403cf0 <pthread_mutex_lock@plt>	;  5 bytes
M0000000000000055:	movq	40(%r12), %rdi	;  5 bytes
M000000000000005a:	callq	0x403dc0 <pthread_mutex_unlock@plt>	;  5 bytes
M000000000000005f:	movq	8(%r12), %rbx	;  5 bytes
M0000000000000064:	leaq	16(%rsp), %rdi	;  5 bytes
M0000000000000069:	callq	0x407cd0 <BloombergLP::bslmt::ThreadAttributes::ThreadAttributes()>	;  5 bytes
M000000000000006e:	leaq	16(%r12), %r15	;  5 bytes
M0000000000000073:	leaq	16(%rsp), %rdx	;  5 bytes
M0000000000000078:	movq	%rbx, %rdi	;  3 bytes
M000000000000007b:	movq	%r15, %rsi	;  3 bytes
M000000000000007e:	callq	0x406660 <int BloombergLP::bslmt::ThreadGroup::addThread<(anonymous namespace)::u::MutexTestJob>((anonymous namespace)::u::MutexTestJob const&, BloombergLP::bslmt::ThreadAttributes const&)>	;  5 bytes
M0000000000000083:	cmpq	$23, 72(%rsp)	;  6 bytes
M0000000000000089:	je	0x40722b <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0x9b>	;  2 bytes
M000000000000008b:	movq	40(%rsp), %rsi	;  5 bytes
M0000000000000090:	movq	80(%rsp), %rdi	;  5 bytes
M0000000000000095:	movq	(%rdi), %rax	;  3 bytes
M0000000000000098:	callq	*24(%rax)	;  3 bytes
M000000000000009b:	movq	8(%r12), %rbx	;  5 bytes
M00000000000000a0:	movl	48(%r12), %ebp	;  5 bytes
M00000000000000a5:	leaq	16(%rsp), %rdi	;  5 bytes
M00000000000000aa:	callq	0x407cd0 <BloombergLP::bslmt::ThreadAttributes::ThreadAttributes()>	;  5 bytes
M00000000000000af:	decl	%ebp	;  2 bytes
M00000000000000b1:	je	0x40726e <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0xde>	;  2 bytes
M00000000000000b3:	movl	$1, %r14d	;  6 bytes
M00000000000000b9:	leaq	16(%rsp), %r13	;  5 bytes
M00000000000000be:	nop		;  2 bytes
M00000000000000c0:	movq	%rbx, %rdi	;  3 bytes
M00000000000000c3:	movq	%r15, %rsi	;  3 bytes
M00000000000000c6:	movq	%r13, %rdx	;  3 bytes
M00000000000000c9:	callq	0x406660 <int BloombergLP::bslmt::ThreadGroup::addThread<(anonymous namespace)::u::MutexTestJob>((anonymous namespace)::u::MutexTestJob const&, BloombergLP::bslmt::ThreadAttributes const&)>	;  5 bytes
M00000000000000ce:	testl	%eax, %eax	;  2 bytes
M00000000000000d0:	jne	0x40726e <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0xde>	;  2 bytes
M00000000000000d2:	leal	1(%r14), %eax	;  4 bytes
M00000000000000d6:	cmpl	%ebp, %r14d	;  3 bytes
M00000000000000d9:	movl	%eax, %r14d	;  3 bytes
M00000000000000dc:	jb	0x407250 <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0xc0>	;  2 bytes
M00000000000000de:	cmpq	$23, 72(%rsp)	;  6 bytes
M00000000000000e4:	je	0x407286 <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0xf6>	;  2 bytes
M00000000000000e6:	movq	40(%rsp), %rsi	;  5 bytes
M00000000000000eb:	movq	80(%rsp), %rdi	;  5 bytes
M00000000000000f0:	movq	(%rdi), %rax	;  3 bytes
M00000000000000f3:	callq	*24(%rax)	;  3 bytes
M00000000000000f6:	testq	%r12, %r12	;  3 bytes
M00000000000000f9:	je	0x4072ba <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0x12a>	;  2 bytes
M00000000000000fb:	cmpq	$23, 88(%r12)	;  6 bytes
M0000000000000101:	je	0x4072a3 <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0x113>	;  2 bytes
M0000000000000103:	movq	56(%r12), %rsi	;  5 bytes
M0000000000000108:	movq	96(%r12), %rdi	;  5 bytes
M000000000000010d:	movq	(%rdi), %rax	;  3 bytes
M0000000000000110:	callq	*24(%rax)	;  3 bytes
M0000000000000113:	movq	$-1, 80(%r12)	;  9 bytes
M000000000000011c:	movq	8(%rsp), %rdi	;  5 bytes
M0000000000000121:	movq	(%rdi), %rax	;  3 bytes
M0000000000000124:	movq	%r12, %rsi	;  3 bytes
M0000000000000127:	callq	*24(%rax)	;  3 bytes
M000000000000012a:	addq	$88, %rsp	;  4 bytes
M000000000000012e:	popq	%rbx	;  1 bytes
M000000000000012f:	popq	%r12	;  2 bytes
M0000000000000131:	popq	%r13	;  2 bytes
M0000000000000133:	popq	%r14	;  2 bytes
M0000000000000135:	popq	%r15	;  2 bytes
M0000000000000137:	popq	%rbp	;  1 bytes
M0000000000000138:	retq		;  1 bytes
M0000000000000139:	movq	%rax, %rdi	;  3 bytes
M000000000000013c:	callq	0x4076b0 <__clang_call_terminate>	;  5 bytes
M0000000000000141:	movq	%rax, %rdi	;  3 bytes
M0000000000000144:	callq	0x4076b0 <__clang_call_terminate>	;  5 bytes
M0000000000000149:	movq	%rax, %rdi	;  3 bytes
M000000000000014c:	callq	0x4076b0 <__clang_call_terminate>	;  5 bytes
M0000000000000151:	movq	%rax, %rdi	;  3 bytes
M0000000000000154:	callq	0x4076b0 <__clang_call_terminate>	;  5 bytes
M0000000000000159:	jmp	0x407310 <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0x180>	;  2 bytes
M000000000000015b:	movq	%rax, %r15	;  3 bytes
M000000000000015e:	cmpq	$23, 72(%rsp)	;  6 bytes
M0000000000000164:	je	0x407335 <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0x1a5>	;  2 bytes
M0000000000000166:	movq	40(%rsp), %rsi	;  5 bytes
M000000000000016b:	movq	80(%rsp), %rdi	;  5 bytes
M0000000000000170:	movq	(%rdi), %rax	;  3 bytes
M0000000000000173:	callq	*24(%rax)	;  3 bytes
M0000000000000176:	jmp	0x407335 <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0x1a5>	;  2 bytes
M0000000000000178:	movq	%rax, %rdi	;  3 bytes
M000000000000017b:	callq	0x4076b0 <__clang_call_terminate>	;  5 bytes
M0000000000000180:	movq	%rax, %r15	;  3 bytes
M0000000000000183:	jmp	0x407335 <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0x1a5>	;  2 bytes
M0000000000000185:	movq	%rax, %r15	;  3 bytes
M0000000000000188:	cmpq	$23, 72(%rsp)	;  6 bytes
M000000000000018e:	je	0x407330 <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0x1a0>	;  2 bytes
M0000000000000190:	movq	40(%rsp), %rsi	;  5 bytes
M0000000000000195:	movq	80(%rsp), %rdi	;  5 bytes
M000000000000019a:	movq	(%rdi), %rax	;  3 bytes
M000000000000019d:	callq	*24(%rax)	;  3 bytes
M00000000000001a0:	testq	%r12, %r12	;  3 bytes
M00000000000001a3:	je	0x407364 <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0x1d4>	;  2 bytes
M00000000000001a5:	cmpq	$23, 88(%r12)	;  6 bytes
M00000000000001ab:	je	0x40734d <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0x1bd>	;  2 bytes
M00000000000001ad:	movq	56(%r12), %rsi	;  5 bytes
M00000000000001b2:	movq	96(%r12), %rdi	;  5 bytes
M00000000000001b7:	movq	(%rdi), %rax	;  3 bytes
M00000000000001ba:	callq	*24(%rax)	;  3 bytes
M00000000000001bd:	movq	$-1, 80(%r12)	;  9 bytes
M00000000000001c6:	movq	8(%rsp), %rdi	;  5 bytes
M00000000000001cb:	movq	(%rdi), %rax	;  3 bytes
M00000000000001ce:	movq	%r12, %rsi	;  3 bytes
M00000000000001d1:	callq	*24(%rax)	;  3 bytes
M00000000000001d4:	movq	%r15, %rdi	;  3 bytes
M00000000000001d7:	callq	0x403d70 <_Unwind_Resume@plt>	;  5 bytes
M00000000000001dc:	movq	%rax, %rdi	;  3 bytes
M00000000000001df:	callq	0x4076b0 <__clang_call_terminate>	;  5 bytes
M00000000000001e4:	movq	%rax, %rdi	;  3 bytes
M00000000000001e7:	callq	0x4076b0 <__clang_call_terminate>	;  5 bytes
M00000000000001ec:	movq	%rax, %rdi	;  3 bytes
M00000000000001ef:	callq	0x4076b0 <__clang_call_terminate>	;  5 bytes
M00000000000001f4:	nopw	%cs:(%rax,%rax)	; 10 bytes
M00000000000001fe:	nop		;  2 bytes