Ignored vs Assumed Semantics in BDE

BloombergLP::bdlde::CharConvertUtf16::utf16ToUtf8(std::__1::vector<char, std::__1::allocator<char> >*, std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, unsigned long*, char, BloombergLP::bdlde::ByteOrder::Enum) - Ignored

000000000042f430 <BloombergLP::bdlde::CharConvertUtf16::utf16ToUtf8(std::__1::vector<char, std::__1::allocator<char> >*, std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, unsigned long*, char, BloombergLP::bdlde::ByteOrder::Enum)>:
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:	pushq	%rax	;  1 bytes
M000000000000000b:	movl	%ecx, %r13d	;  3 bytes
M000000000000000e:	movq	%rdx, %r14	;  3 bytes
M0000000000000011:	movq	%rdi, %r12	;  3 bytes
M0000000000000014:	movq	(%rsi), %r15	;  3 bytes
M0000000000000017:	movq	8(%rsi), %rax	;  4 bytes
M000000000000001b:	leaq	(%r15,%rax,4), %rbx	;  4 bytes
M000000000000001f:	xorl	%esi, %esi	;  2 bytes
M0000000000000021:	testl	%r8d, %r8d	;  3 bytes
M0000000000000024:	je	0x42f52a <BloombergLP::bdlde::CharConvertUtf16::utf16ToUtf8(std::__1::vector<char, std::__1::allocator<char> >*, std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, unsigned long*, char, BloombergLP::bdlde::ByteOrder::Enum)+0xfa>	;  6 bytes
M000000000000002a:	testq	%rax, %rax	;  3 bytes
M000000000000002d:	jle	0x42f4f0 <BloombergLP::bdlde::CharConvertUtf16::utf16ToUtf8(std::__1::vector<char, std::__1::allocator<char> >*, std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, unsigned long*, char, BloombergLP::bdlde::ByteOrder::Enum)+0xc0>	;  6 bytes
M0000000000000033:	movl	$16515072, %r8d	;  6 bytes
M0000000000000039:	movq	%r15, %rcx	;  3 bytes
M000000000000003c:	jmp	0x42f486 <BloombergLP::bdlde::CharConvertUtf16::utf16ToUtf8(std::__1::vector<char, std::__1::allocator<char> >*, std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, unsigned long*, char, BloombergLP::bdlde::ByteOrder::Enum)+0x56>	;  2 bytes
M000000000000003e:	nop		;  2 bytes
M0000000000000040:	cmpl	$2048, %edi	;  6 bytes
M0000000000000046:	sbbq	$0, %rsi	;  4 bytes
M000000000000004a:	addq	$3, %rsi	;  4 bytes
M000000000000004e:	movq	%rdx, %rcx	;  3 bytes
M0000000000000051:	cmpq	%rbx, %rdx	;  3 bytes
M0000000000000054:	jae	0x42f4f0 <BloombergLP::bdlde::CharConvertUtf16::utf16ToUtf8(std::__1::vector<char, std::__1::allocator<char> >*, std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, unsigned long*, char, BloombergLP::bdlde::ByteOrder::Enum)+0xc0>	;  2 bytes
M0000000000000056:	movl	(%rcx), %ebp	;  2 bytes
M0000000000000058:	movl	%ebp, %edx	;  2 bytes
M000000000000005a:	shrl	$24, %edx	;  3 bytes
M000000000000005d:	movl	%ebp, %edi	;  2 bytes
M000000000000005f:	shrl	$8, %edi	;  3 bytes
M0000000000000062:	andl	$65280, %edi	;  6 bytes
M0000000000000068:	orl	%edx, %edi	;  2 bytes
M000000000000006a:	cmpl	$127, %edi	;  3 bytes
M000000000000006d:	ja	0x42f4b0 <BloombergLP::bdlde::CharConvertUtf16::utf16ToUtf8(std::__1::vector<char, std::__1::allocator<char> >*, std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, unsigned long*, char, BloombergLP::bdlde::ByteOrder::Enum)+0x80>	;  2 bytes
M000000000000006f:	addq	$4, %rcx	;  4 bytes
M0000000000000073:	incq	%rsi	;  3 bytes
M0000000000000076:	movq	%rcx, %rdx	;  3 bytes
M0000000000000079:	jmp	0x42f47e <BloombergLP::bdlde::CharConvertUtf16::utf16ToUtf8(std::__1::vector<char, std::__1::allocator<char> >*, std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, unsigned long*, char, BloombergLP::bdlde::ByteOrder::Enum)+0x4e>	;  2 bytes
M000000000000007b:	nopl	(%rax,%rax)	;  5 bytes
M0000000000000080:	movl	%ebp, %eax	;  2 bytes
M0000000000000082:	andl	$16252928, %eax	;  5 bytes
M0000000000000087:	leaq	4(%rcx), %rdx	;  4 bytes
M000000000000008b:	cmpl	$14155776, %eax	;  5 bytes
M0000000000000090:	jne	0x42f470 <BloombergLP::bdlde::CharConvertUtf16::utf16ToUtf8(std::__1::vector<char, std::__1::allocator<char> >*, std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, unsigned long*, char, BloombergLP::bdlde::ByteOrder::Enum)+0x40>	;  2 bytes
M0000000000000092:	cmpq	%rbx, %rdx	;  3 bytes
M0000000000000095:	jae	0x42f4eb <BloombergLP::bdlde::CharConvertUtf16::utf16ToUtf8(std::__1::vector<char, std::__1::allocator<char> >*, std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, unsigned long*, char, BloombergLP::bdlde::ByteOrder::Enum)+0xbb>	;  2 bytes
M0000000000000097:	andl	$16515072, %ebp	;  6 bytes
M000000000000009d:	cmpl	$14155776, %ebp	;  6 bytes
M00000000000000a3:	jne	0x42f4eb <BloombergLP::bdlde::CharConvertUtf16::utf16ToUtf8(std::__1::vector<char, std::__1::allocator<char> >*, std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, unsigned long*, char, BloombergLP::bdlde::ByteOrder::Enum)+0xbb>	;  2 bytes
M00000000000000a5:	movl	(%rdx), %eax	;  2 bytes
M00000000000000a7:	andl	%r8d, %eax	;  3 bytes
M00000000000000aa:	cmpl	$14417920, %eax	;  5 bytes
M00000000000000af:	jne	0x42f4eb <BloombergLP::bdlde::CharConvertUtf16::utf16ToUtf8(std::__1::vector<char, std::__1::allocator<char> >*, std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, unsigned long*, char, BloombergLP::bdlde::ByteOrder::Enum)+0xbb>	;  2 bytes
M00000000000000b1:	addq	$8, %rcx	;  4 bytes
M00000000000000b5:	addq	$4, %rsi	;  4 bytes
M00000000000000b9:	jmp	0x42f4a6 <BloombergLP::bdlde::CharConvertUtf16::utf16ToUtf8(std::__1::vector<char, std::__1::allocator<char> >*, std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, unsigned long*, char, BloombergLP::bdlde::ByteOrder::Enum)+0x76>	;  2 bytes
M00000000000000bb:	incq	%rsi	;  3 bytes
M00000000000000be:	jmp	0x42f47e <BloombergLP::bdlde::CharConvertUtf16::utf16ToUtf8(std::__1::vector<char, std::__1::allocator<char> >*, std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, unsigned long*, char, BloombergLP::bdlde::ByteOrder::Enum)+0x4e>	;  2 bytes
M00000000000000c0:	incq	%rsi	;  3 bytes
M00000000000000c3:	movq	(%r12), %rdi	;  4 bytes
M00000000000000c7:	movq	8(%r12), %rax	;  5 bytes
M00000000000000cc:	subq	%rdi, %rax	;  3 bytes
M00000000000000cf:	cmpq	%rax, %rsi	;  3 bytes
M00000000000000d2:	jbe	0x42f510 <BloombergLP::bdlde::CharConvertUtf16::utf16ToUtf8(std::__1::vector<char, std::__1::allocator<char> >*, std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, unsigned long*, char, BloombergLP::bdlde::ByteOrder::Enum)+0xe0>	;  2 bytes
M00000000000000d4:	movq	%r12, %rdi	;  3 bytes
M00000000000000d7:	callq	0x433890 <std::__1::vector<char, std::__1::allocator<char> >::resize(unsigned long)>	;  5 bytes
M00000000000000dc:	movq	(%r12), %rdi	;  4 bytes
M00000000000000e0:	movsbl	%r13b, %r9d	;  4 bytes
M00000000000000e4:	movq	%rsp, %r8	;  3 bytes
M00000000000000e7:	movq	%r15, %rsi	;  3 bytes
M00000000000000ea:	movq	%rbx, %rdx	;  3 bytes
M00000000000000ed:	movq	%r14, %rcx	;  3 bytes
M00000000000000f0:	callq	0x433380 <int (anonymous namespace)::localUtf16ToUtf8<wchar_t, (anonymous namespace)::NoOpCapacity, (anonymous namespace)::Utf16::PtrBasedEnd<wchar_t>, (anonymous namespace)::Swapper<wchar_t> >(char*, (anonymous namespace)::NoOpCapacity, wchar_t const*, (anonymous namespace)::Utf16::PtrBasedEnd<wchar_t>, (anonymous namespace)::Swapper<wchar_t>, unsigned long*, unsigned long*, char)>	;  5 bytes
M00000000000000f5:	jmp	0x42f5e7 <BloombergLP::bdlde::CharConvertUtf16::utf16ToUtf8(std::__1::vector<char, std::__1::allocator<char> >*, std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, unsigned long*, char, BloombergLP::bdlde::ByteOrder::Enum)+0x1b7>	;  5 bytes
M00000000000000fa:	testq	%rax, %rax	;  3 bytes
M00000000000000fd:	jle	0x42f5b2 <BloombergLP::bdlde::CharConvertUtf16::utf16ToUtf8(std::__1::vector<char, std::__1::allocator<char> >*, std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, unsigned long*, char, BloombergLP::bdlde::ByteOrder::Enum)+0x182>	;  6 bytes
M0000000000000103:	movl	$64512, %eax	;  5 bytes
M0000000000000108:	movq	%r15, %rcx	;  3 bytes
M000000000000010b:	jmp	0x42f556 <BloombergLP::bdlde::CharConvertUtf16::utf16ToUtf8(std::__1::vector<char, std::__1::allocator<char> >*, std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, unsigned long*, char, BloombergLP::bdlde::ByteOrder::Enum)+0x126>	;  2 bytes
M000000000000010d:	nopl	(%rax)	;  3 bytes
M0000000000000110:	cmpl	$2048, %edi	;  6 bytes
M0000000000000116:	sbbq	$0, %rsi	;  4 bytes
M000000000000011a:	addq	$3, %rsi	;  4 bytes
M000000000000011e:	movq	%rdx, %rcx	;  3 bytes
M0000000000000121:	cmpq	%rbx, %rdx	;  3 bytes
M0000000000000124:	jae	0x42f5b2 <BloombergLP::bdlde::CharConvertUtf16::utf16ToUtf8(std::__1::vector<char, std::__1::allocator<char> >*, std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, unsigned long*, char, BloombergLP::bdlde::ByteOrder::Enum)+0x182>	;  2 bytes
M0000000000000126:	movl	(%rcx), %edi	;  2 bytes
M0000000000000128:	cmpl	$127, %edi	;  3 bytes
M000000000000012b:	ja	0x42f570 <BloombergLP::bdlde::CharConvertUtf16::utf16ToUtf8(std::__1::vector<char, std::__1::allocator<char> >*, std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, unsigned long*, char, BloombergLP::bdlde::ByteOrder::Enum)+0x140>	;  2 bytes
M000000000000012d:	addq	$4, %rcx	;  4 bytes
M0000000000000131:	incq	%rsi	;  3 bytes
M0000000000000134:	movq	%rcx, %rdx	;  3 bytes
M0000000000000137:	jmp	0x42f54e <BloombergLP::bdlde::CharConvertUtf16::utf16ToUtf8(std::__1::vector<char, std::__1::allocator<char> >*, std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, unsigned long*, char, BloombergLP::bdlde::ByteOrder::Enum)+0x11e>	;  2 bytes
M0000000000000139:	nopl	(%rax)	;  7 bytes
M0000000000000140:	movl	%edi, %ebp	;  2 bytes
M0000000000000142:	andl	$63488, %ebp	;  6 bytes
M0000000000000148:	leaq	4(%rcx), %rdx	;  4 bytes
M000000000000014c:	cmpl	$55296, %ebp	;  6 bytes
M0000000000000152:	jne	0x42f540 <BloombergLP::bdlde::CharConvertUtf16::utf16ToUtf8(std::__1::vector<char, std::__1::allocator<char> >*, std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, unsigned long*, char, BloombergLP::bdlde::ByteOrder::Enum)+0x110>	;  2 bytes
M0000000000000154:	cmpq	%rbx, %rdx	;  3 bytes
M0000000000000157:	jae	0x42f5ad <BloombergLP::bdlde::CharConvertUtf16::utf16ToUtf8(std::__1::vector<char, std::__1::allocator<char> >*, std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, unsigned long*, char, BloombergLP::bdlde::ByteOrder::Enum)+0x17d>	;  2 bytes
M0000000000000159:	andl	$64512, %edi	;  6 bytes
M000000000000015f:	cmpl	$55296, %edi	;  6 bytes
M0000000000000165:	jne	0x42f5ad <BloombergLP::bdlde::CharConvertUtf16::utf16ToUtf8(std::__1::vector<char, std::__1::allocator<char> >*, std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, unsigned long*, char, BloombergLP::bdlde::ByteOrder::Enum)+0x17d>	;  2 bytes
M0000000000000167:	movl	(%rdx), %edi	;  2 bytes
M0000000000000169:	andl	%eax, %edi	;  2 bytes
M000000000000016b:	cmpl	$56320, %edi	;  6 bytes
M0000000000000171:	jne	0x42f5ad <BloombergLP::bdlde::CharConvertUtf16::utf16ToUtf8(std::__1::vector<char, std::__1::allocator<char> >*, std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, unsigned long*, char, BloombergLP::bdlde::ByteOrder::Enum)+0x17d>	;  2 bytes
M0000000000000173:	addq	$8, %rcx	;  4 bytes
M0000000000000177:	addq	$4, %rsi	;  4 bytes
M000000000000017b:	jmp	0x42f564 <BloombergLP::bdlde::CharConvertUtf16::utf16ToUtf8(std::__1::vector<char, std::__1::allocator<char> >*, std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, unsigned long*, char, BloombergLP::bdlde::ByteOrder::Enum)+0x134>	;  2 bytes
M000000000000017d:	incq	%rsi	;  3 bytes
M0000000000000180:	jmp	0x42f54e <BloombergLP::bdlde::CharConvertUtf16::utf16ToUtf8(std::__1::vector<char, std::__1::allocator<char> >*, std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, unsigned long*, char, BloombergLP::bdlde::ByteOrder::Enum)+0x11e>	;  2 bytes
M0000000000000182:	incq	%rsi	;  3 bytes
M0000000000000185:	movq	(%r12), %rdi	;  4 bytes
M0000000000000189:	movq	8(%r12), %rax	;  5 bytes
M000000000000018e:	subq	%rdi, %rax	;  3 bytes
M0000000000000191:	cmpq	%rax, %rsi	;  3 bytes
M0000000000000194:	jbe	0x42f5d2 <BloombergLP::bdlde::CharConvertUtf16::utf16ToUtf8(std::__1::vector<char, std::__1::allocator<char> >*, std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, unsigned long*, char, BloombergLP::bdlde::ByteOrder::Enum)+0x1a2>	;  2 bytes
M0000000000000196:	movq	%r12, %rdi	;  3 bytes
M0000000000000199:	callq	0x433890 <std::__1::vector<char, std::__1::allocator<char> >::resize(unsigned long)>	;  5 bytes
M000000000000019e:	movq	(%r12), %rdi	;  4 bytes
M00000000000001a2:	movsbl	%r13b, %r9d	;  4 bytes
M00000000000001a6:	movq	%rsp, %r8	;  3 bytes
M00000000000001a9:	movq	%r15, %rsi	;  3 bytes
M00000000000001ac:	movq	%rbx, %rdx	;  3 bytes
M00000000000001af:	movq	%r14, %rcx	;  3 bytes
M00000000000001b2:	callq	0x4331f0 <int (anonymous namespace)::localUtf16ToUtf8<wchar_t, (anonymous namespace)::NoOpCapacity, (anonymous namespace)::Utf16::PtrBasedEnd<wchar_t>, (anonymous namespace)::NoOpSwapper<wchar_t> >(char*, (anonymous namespace)::NoOpCapacity, wchar_t const*, (anonymous namespace)::Utf16::PtrBasedEnd<wchar_t>, (anonymous namespace)::NoOpSwapper<wchar_t>, unsigned long*, unsigned long*, char)>	;  5 bytes
M00000000000001b7:	movl	%eax, %ebx	;  2 bytes
M00000000000001b9:	movq	(%rsp), %rsi	;  4 bytes
M00000000000001bd:	movq	8(%r12), %rax	;  5 bytes
M00000000000001c2:	subq	(%r12), %rax	;  4 bytes
M00000000000001c6:	cmpq	%rsi, %rax	;  3 bytes
M00000000000001c9:	je	0x42f603 <BloombergLP::bdlde::CharConvertUtf16::utf16ToUtf8(std::__1::vector<char, std::__1::allocator<char> >*, std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, unsigned long*, char, BloombergLP::bdlde::ByteOrder::Enum)+0x1d3>	;  2 bytes
M00000000000001cb:	movq	%r12, %rdi	;  3 bytes
M00000000000001ce:	callq	0x433890 <std::__1::vector<char, std::__1::allocator<char> >::resize(unsigned long)>	;  5 bytes
M00000000000001d3:	movl	%ebx, %eax	;  2 bytes
M00000000000001d5:	addq	$8, %rsp	;  4 bytes
M00000000000001d9:	popq	%rbx	;  1 bytes
M00000000000001da:	popq	%r12	;  2 bytes
M00000000000001dc:	popq	%r13	;  2 bytes
M00000000000001de:	popq	%r14	;  2 bytes
M00000000000001e0:	popq	%r15	;  2 bytes
M00000000000001e2:	popq	%rbp	;  1 bytes
M00000000000001e3:	retq		;  1 bytes
M00000000000001e4:	nopw	%cs:(%rax,%rax)	; 10 bytes
M00000000000001ee:	nop		;  2 bytes