Ignored vs Assumed Semantics in BDE

BloombergLP::bdlmt::ThreadPool::enqueueJob(bsl::function<void ()>&&) - Ignored

0000000000437d30 <BloombergLP::bdlmt::ThreadPool::enqueueJob(bsl::function<void ()>&&)>:
M0000000000000000:	pushq	%r15	;  2 bytes
M0000000000000002:	pushq	%r14	;  2 bytes
M0000000000000004:	pushq	%rbx	;  1 bytes
M0000000000000005:	cmpq	$0, 64(%rsi)	;  5 bytes
M000000000000000a:	je	0x437dd6 <BloombergLP::bdlmt::ThreadPool::enqueueJob(bsl::function<void ()>&&)+0xa6>	;  6 bytes
M0000000000000010:	movq	%rsi, %r15	;  3 bytes
M0000000000000013:	movq	%rdi, %rbx	;  3 bytes
M0000000000000016:	leaq	56(%rdi), %r14	;  4 bytes
M000000000000001a:	movq	%r14, %rdi	;  3 bytes
M000000000000001d:	callq	0x405bd0 <pthread_mutex_lock@plt>	;  5 bytes
M0000000000000022:	cmpl	$0, 252(%rbx)	;  7 bytes
M0000000000000029:	je	0x437dc1 <BloombergLP::bdlmt::ThreadPool::enqueueJob(bsl::function<void ()>&&)+0x91>	;  2 bytes
M000000000000002b:	movq	%rbx, %rdi	;  3 bytes
M000000000000002e:	movq	%r15, %rsi	;  3 bytes
M0000000000000031:	callq	0x4381f0 <bsl::deque<bsl::function<void ()>, bsl::allocator<bsl::function<void ()> > >::push_back(bsl::function<void ()>&&)>	;  5 bytes
M0000000000000036:	cmpq	$0, 256(%rbx)	;  8 bytes
M000000000000003e:	je	0x437db5 <BloombergLP::bdlmt::ThreadPool::enqueueJob(bsl::function<void ()>&&)+0x85>	;  2 bytes
M0000000000000040:	movq	256(%rbx), %rax	;  7 bytes
M0000000000000047:	movl	$1, 72(%rax)	;  7 bytes
M000000000000004e:	movq	256(%rbx), %rdi	;  7 bytes
M0000000000000055:	callq	0x405440 <pthread_cond_signal@plt>	;  5 bytes
M000000000000005a:	movq	256(%rbx), %rax	;  7 bytes
M0000000000000061:	movq	56(%rax), %rax	;  4 bytes
M0000000000000065:	movq	%rax, 256(%rbx)	;  7 bytes
M000000000000006c:	cmpq	$0, 256(%rbx)	;  8 bytes
M0000000000000074:	je	0x437db5 <BloombergLP::bdlmt::ThreadPool::enqueueJob(bsl::function<void ()>&&)+0x85>	;  2 bytes
M0000000000000076:	movq	256(%rbx), %rax	;  7 bytes
M000000000000007d:	movq	$0, 64(%rax)	;  8 bytes
M0000000000000085:	movq	%rbx, %rdi	;  3 bytes
M0000000000000088:	callq	0x4373e0 <BloombergLP::bdlmt::ThreadPool::startThreadIfNeeded()>	;  5 bytes
M000000000000008d:	movl	%eax, %ebx	;  2 bytes
M000000000000008f:	jmp	0x437dc6 <BloombergLP::bdlmt::ThreadPool::enqueueJob(bsl::function<void ()>&&)+0x96>	;  2 bytes
M0000000000000091:	movl	$4294967295, %ebx	;  5 bytes
M0000000000000096:	movq	%r14, %rdi	;  3 bytes
M0000000000000099:	callq	0x405cf0 <pthread_mutex_unlock@plt>	;  5 bytes
M000000000000009e:	movl	%ebx, %eax	;  2 bytes
M00000000000000a0:	popq	%rbx	;  1 bytes
M00000000000000a1:	popq	%r14	;  2 bytes
M00000000000000a3:	popq	%r15	;  2 bytes
M00000000000000a5:	retq		;  1 bytes
M00000000000000a6:	callq	0x405370 <abort@plt>	;  5 bytes
M00000000000000ab:	movq	%rax, %rbx	;  3 bytes
M00000000000000ae:	movq	%r14, %rdi	;  3 bytes
M00000000000000b1:	callq	0x405cf0 <pthread_mutex_unlock@plt>	;  5 bytes
M00000000000000b6:	movq	%rbx, %rdi	;  3 bytes
M00000000000000b9:	callq	0x405c80 <_Unwind_Resume@plt>	;  5 bytes
M00000000000000be:	nop		;  2 bytes