Ignored vs Assumed Semantics in BDE

BloombergLP::bdls::PathUtil::popLeaf(bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >*, int) - Ignored

0000000000412310 <BloombergLP::bdls::PathUtil::popLeaf(bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >*, int)>:
M0000000000000000:	pushq	%r15	;  2 bytes
M0000000000000002:	pushq	%r14	;  2 bytes
M0000000000000004:	pushq	%r13	;  2 bytes
M0000000000000006:	pushq	%r12	;  2 bytes
M0000000000000008:	pushq	%rbx	;  1 bytes
M0000000000000009:	movl	%esi, %r15d	;  3 bytes
M000000000000000c:	movq	%rdi, %r14	;  3 bytes
M000000000000000f:	movq	32(%rdi), %r13	;  4 bytes
M0000000000000013:	testl	%esi, %esi	;  2 bytes
M0000000000000015:	js	0x412410 <BloombergLP::bdls::PathUtil::popLeaf(bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >*, int)+0x100>	;  6 bytes
M000000000000001b:	cmpq	$23, %r13	;  4 bytes
M000000000000001f:	jne	0x412336 <BloombergLP::bdls::PathUtil::popLeaf(bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >*, int)+0x26>	;  2 bytes
M0000000000000021:	movq	%r14, %rbx	;  3 bytes
M0000000000000024:	jmp	0x412339 <BloombergLP::bdls::PathUtil::popLeaf(bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >*, int)+0x29>	;  2 bytes
M0000000000000026:	movq	(%r14), %rbx	;  3 bytes
M0000000000000029:	movq	%rbx, %rdi	;  3 bytes
M000000000000002c:	callq	0x404a70 <strlen@plt>	;  5 bytes
M0000000000000031:	movq	%rax, %r12	;  3 bytes
M0000000000000034:	movl	%r15d, %ecx	;  3 bytes
M0000000000000037:	testl	%r15d, %r15d	;  3 bytes
M000000000000003a:	js	0x41241b <BloombergLP::bdls::PathUtil::popLeaf(bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >*, int)+0x10b>	;  6 bytes
M0000000000000040:	movl	%r12d, %eax	;  3 bytes
M0000000000000043:	movl	%r12d, %edx	;  3 bytes
M0000000000000046:	sarl	$31, %edx	;  3 bytes
M0000000000000049:	andl	%r12d, %edx	;  3 bytes
M000000000000004c:	nopl	(%rax)	;  4 bytes
M0000000000000050:	testl	%eax, %eax	;  2 bytes
M0000000000000052:	jle	0x412376 <BloombergLP::bdls::PathUtil::popLeaf(bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >*, int)+0x66>	;  2 bytes
M0000000000000054:	leaq	-1(%rax), %rsi	;  4 bytes
M0000000000000058:	cmpb	$47, -1(%rbx,%rax)	;  5 bytes
M000000000000005d:	movq	%rsi, %rax	;  3 bytes
M0000000000000060:	je	0x412360 <BloombergLP::bdls::PathUtil::popLeaf(bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >*, int)+0x50>	;  2 bytes
M0000000000000062:	incl	%esi	;  2 bytes
M0000000000000064:	movl	%esi, %edx	;  2 bytes
M0000000000000066:	movl	$4294967295, %eax	;  5 bytes
M000000000000006b:	cmpl	%edx, %ecx	;  2 bytes
M000000000000006d:	jge	0x412406 <BloombergLP::bdls::PathUtil::popLeaf(bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >*, int)+0xf6>	;  6 bytes
M0000000000000073:	movq	%r14, %rbx	;  3 bytes
M0000000000000076:	cmpq	$23, %r13	;  4 bytes
M000000000000007a:	je	0x41238f <BloombergLP::bdls::PathUtil::popLeaf(bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >*, int)+0x7f>	;  2 bytes
M000000000000007c:	movq	(%r14), %rbx	;  3 bytes
M000000000000007f:	movl	24(%r14), %eax	;  4 bytes
M0000000000000083:	testl	%eax, %eax	;  2 bytes
M0000000000000085:	jns	0x41239f <BloombergLP::bdls::PathUtil::popLeaf(bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >*, int)+0x8f>	;  2 bytes
M0000000000000087:	movq	%rbx, %rdi	;  3 bytes
M000000000000008a:	callq	0x404a70 <strlen@plt>	;  5 bytes
M000000000000008f:	movl	%eax, %edx	;  2 bytes
M0000000000000091:	movl	%eax, %ecx	;  2 bytes
M0000000000000093:	sarl	$31, %ecx	;  3 bytes
M0000000000000096:	andl	%eax, %ecx	;  2 bytes
M0000000000000098:	nopl	(%rax,%rax)	;  8 bytes
M00000000000000a0:	testl	%edx, %edx	;  2 bytes
M00000000000000a2:	jle	0x4123c6 <BloombergLP::bdls::PathUtil::popLeaf(bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >*, int)+0xb6>	;  2 bytes
M00000000000000a4:	leaq	-1(%rdx), %rax	;  4 bytes
M00000000000000a8:	cmpb	$47, -1(%rbx,%rdx)	;  5 bytes
M00000000000000ad:	movq	%rax, %rdx	;  3 bytes
M00000000000000b0:	je	0x4123b0 <BloombergLP::bdls::PathUtil::popLeaf(bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >*, int)+0xa0>	;  2 bytes
M00000000000000b2:	incl	%eax	;  2 bytes
M00000000000000b4:	movl	%eax, %ecx	;  2 bytes
M00000000000000b6:	movslq	%ecx, %rcx	;  3 bytes
M00000000000000b9:	movslq	%r15d, %rax	;  3 bytes
M00000000000000bc:	addq	%rbx, %rax	;  3 bytes
M00000000000000bf:	decq	%rcx	;  3 bytes
M00000000000000c2:	nopw	%cs:(%rax,%rax)	; 10 bytes
M00000000000000cc:	nopl	(%rax)	;  4 bytes
M00000000000000d0:	movq	%rcx, %rsi	;  3 bytes
M00000000000000d3:	leaq	(%rbx,%rcx), %rdx	;  4 bytes
M00000000000000d7:	cmpq	%rax, %rdx	;  3 bytes
M00000000000000da:	jbe	0x4123f5 <BloombergLP::bdls::PathUtil::popLeaf(bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >*, int)+0xe5>	;  2 bytes
M00000000000000dc:	leaq	-1(%rsi), %rcx	;  4 bytes
M00000000000000e0:	cmpb	$47, (%rdx)	;  3 bytes
M00000000000000e3:	jne	0x4123e0 <BloombergLP::bdls::PathUtil::popLeaf(bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >*, int)+0xd0>	;  2 bytes
M00000000000000e5:	movq	%r14, %rdi	;  3 bytes
M00000000000000e8:	movq	$-1, %rdx	;  7 bytes
M00000000000000ef:	callq	0x41c4e0 <bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >::erase(unsigned long, unsigned long)>	;  5 bytes
M00000000000000f4:	xorl	%eax, %eax	;  2 bytes
M00000000000000f6:	popq	%rbx	;  1 bytes
M00000000000000f7:	popq	%r12	;  2 bytes
M00000000000000f9:	popq	%r13	;  2 bytes
M00000000000000fb:	popq	%r14	;  2 bytes
M00000000000000fd:	popq	%r15	;  2 bytes
M00000000000000ff:	retq		;  1 bytes
M0000000000000100:	cmpq	$23, %r13	;  4 bytes
M0000000000000104:	jne	0x41244a <BloombergLP::bdls::PathUtil::popLeaf(bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >*, int)+0x13a>	;  2 bytes
M0000000000000106:	movq	%r14, %rbx	;  3 bytes
M0000000000000109:	jmp	0x41244d <BloombergLP::bdls::PathUtil::popLeaf(bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >*, int)+0x13d>	;  2 bytes
M000000000000010b:	movl	%r12d, %eax	;  3 bytes
M000000000000010e:	testl	%r12d, %r12d	;  3 bytes
M0000000000000111:	js	0x41247b <BloombergLP::bdls::PathUtil::popLeaf(bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >*, int)+0x16b>	;  2 bytes
M0000000000000113:	testl	%eax, %eax	;  2 bytes
M0000000000000115:	jle	0x412487 <BloombergLP::bdls::PathUtil::popLeaf(bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >*, int)+0x177>	;  2 bytes
M0000000000000117:	movl	%eax, %eax	;  2 bytes
M0000000000000119:	xorl	%ecx, %ecx	;  2 bytes
M000000000000011b:	nopl	(%rax,%rax)	;  5 bytes
M0000000000000120:	cmpb	$47, (%rbx,%rcx)	;  4 bytes
M0000000000000124:	jne	0x412350 <BloombergLP::bdls::PathUtil::popLeaf(bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >*, int)+0x40>	;  6 bytes
M000000000000012a:	incq	%rcx	;  3 bytes
M000000000000012d:	cmpq	%rcx, %rax	;  3 bytes
M0000000000000130:	jne	0x412430 <BloombergLP::bdls::PathUtil::popLeaf(bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >*, int)+0x120>	;  2 bytes
M0000000000000132:	movq	%rax, %rcx	;  3 bytes
M0000000000000135:	jmp	0x412350 <BloombergLP::bdls::PathUtil::popLeaf(bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >*, int)+0x40>	;  5 bytes
M000000000000013a:	movq	(%r14), %rbx	;  3 bytes
M000000000000013d:	movl	24(%r14), %eax	;  4 bytes
M0000000000000141:	testl	%eax, %eax	;  2 bytes
M0000000000000143:	js	0x41248e <BloombergLP::bdls::PathUtil::popLeaf(bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >*, int)+0x17e>	;  2 bytes
M0000000000000145:	testl	%eax, %eax	;  2 bytes
M0000000000000147:	jle	0x41249a <BloombergLP::bdls::PathUtil::popLeaf(bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >*, int)+0x18a>	;  2 bytes
M0000000000000149:	movl	%eax, %eax	;  2 bytes
M000000000000014b:	xorl	%r15d, %r15d	;  3 bytes
M000000000000014e:	nop		;  2 bytes
M0000000000000150:	cmpb	$47, (%rbx,%r15)	;  5 bytes
M0000000000000155:	jne	0x41232b <BloombergLP::bdls::PathUtil::popLeaf(bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >*, int)+0x1b>	;  6 bytes
M000000000000015b:	incq	%r15	;  3 bytes
M000000000000015e:	cmpq	%r15, %rax	;  3 bytes
M0000000000000161:	jne	0x412460 <BloombergLP::bdls::PathUtil::popLeaf(bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >*, int)+0x150>	;  2 bytes
M0000000000000163:	movq	%rax, %r15	;  3 bytes
M0000000000000166:	jmp	0x41232b <BloombergLP::bdls::PathUtil::popLeaf(bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >*, int)+0x1b>	;  5 bytes
M000000000000016b:	movq	%rbx, %rdi	;  3 bytes
M000000000000016e:	callq	0x404a70 <strlen@plt>	;  5 bytes
M0000000000000173:	testl	%eax, %eax	;  2 bytes
M0000000000000175:	jg	0x412427 <BloombergLP::bdls::PathUtil::popLeaf(bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >*, int)+0x117>	;  2 bytes
M0000000000000177:	xorl	%ecx, %ecx	;  2 bytes
M0000000000000179:	jmp	0x412350 <BloombergLP::bdls::PathUtil::popLeaf(bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >*, int)+0x40>	;  5 bytes
M000000000000017e:	movq	%rbx, %rdi	;  3 bytes
M0000000000000181:	callq	0x404a70 <strlen@plt>	;  5 bytes
M0000000000000186:	testl	%eax, %eax	;  2 bytes
M0000000000000188:	jg	0x412459 <BloombergLP::bdls::PathUtil::popLeaf(bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >*, int)+0x149>	;  2 bytes
M000000000000018a:	xorl	%r15d, %r15d	;  3 bytes
M000000000000018d:	jmp	0x41232b <BloombergLP::bdls::PathUtil::popLeaf(bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >*, int)+0x1b>	;  5 bytes
M0000000000000192:	nopw	%cs:(%rax,%rax)	; 10 bytes
M000000000000019c:	nopl	(%rax)	;  4 bytes