Comparing example1::main() in assumed vs ignored

Files changed (1) hide show
  1. balcl_optionvalue.t/{1.assume.s → 1.none.s} +90 -87
balcl_optionvalue.t/{1.assume.s → 1.none.s} RENAMED
@@ -1,196 +1,199 @@
1
  00000000004050f0 <example1::main()>:
2
  0000000000000000: 01 pushq %rbx
3
  0000000000000001: 07 subq $192, %rsp
4
  0000000000000008: 08 movl $0, 96(%rsp)
5
- 0000000000000010: 07 movq 3254553(%rip), %rax # 71fa20 <BloombergLP::bslma::Default::s_defaultAllocator>
6
  0000000000000017: 03 testq %rax, %rax
7
  000000000000001a: 02 jne 0x405111 <example1::main()+0x21>
8
- 000000000000001c: 05 callq 0x4a5830 <BloombergLP::bslma::Default::determineAndReturnDefaultAllocator()>
9
  0000000000000021: 05 movq %rax, 104(%rsp)
10
- 0000000000000026: 05 movl $5070597, %esi
11
  000000000000002b: 02 xorl %edi, %edi
12
  000000000000002d: 05 movl $2081, %edx
13
  0000000000000032: 05 callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)>
14
  0000000000000037: 05 leaq 32(%rsp), %rdi
15
- 000000000000003c: 05 callq 0x49f630 <BloombergLP::balcl::OptionValue::type() const>
16
  0000000000000041: 02 xorl %edi, %edi
17
  0000000000000043: 02 testl %eax, %eax
18
  0000000000000045: 04 setne %dil
19
- 0000000000000049: 05 movl $5070630, %esi
20
  000000000000004e: 05 movl $2082, %edx
21
  0000000000000053: 05 callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)>
22
  0000000000000058: 11 movl $3, 176(%rsp)
23
- 0000000000000063: 07 movq 3254470(%rip), %rax # 71fa20 <BloombergLP::bslma::Default::s_defaultAllocator>
24
  000000000000006a: 03 testq %rax, %rax
25
  000000000000006d: 02 je 0x405166 <example1::main()+0x76>
26
  000000000000006f: 05 movl $3, %ecx
27
  0000000000000074: 02 jmp 0x405172 <example1::main()+0x82>
28
- 0000000000000076: 05 callq 0x4a5830 <BloombergLP::bslma::Default::determineAndReturnDefaultAllocator()>
29
  000000000000007b: 07 movl 176(%rsp), %ecx
30
  0000000000000082: 08 movq %rax, 184(%rsp)
31
  000000000000008a: 08 movl $5, 112(%rsp)
32
  0000000000000092: 05 movb $1, 116(%rsp)
33
  0000000000000097: 02 xorl %edi, %edi
34
  0000000000000099: 02 testl %ecx, %ecx
35
  000000000000009b: 04 sete %dil
36
- 000000000000009f: 05 movl $5070673, %esi
37
  00000000000000a4: 05 movl $2090, %edx
38
  00000000000000a9: 05 callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)>
39
  00000000000000ae: 05 leaq 112(%rsp), %rbx
40
  00000000000000b3: 03 movq %rbx, %rdi
41
- 00000000000000b6: 05 callq 0x49f630 <BloombergLP::balcl::OptionValue::type() const>
42
  00000000000000bb: 02 xorl %edi, %edi
43
  00000000000000bd: 03 cmpl $3, %eax
44
  00000000000000c0: 04 setne %dil
45
- 00000000000000c4: 05 movl $5070705, %esi
46
  00000000000000c9: 05 movl $2091, %edx
47
  00000000000000ce: 05 callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)>
48
  00000000000000d3: 02 xorl %edi, %edi
49
  00000000000000d5: 05 cmpl $5, 112(%rsp)
50
  00000000000000da: 04 setne %dil
51
- 00000000000000de: 05 movl $5070747, %esi
52
  00000000000000e3: 05 movl $2092, %edx
53
  00000000000000e8: 05 callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)>
54
  00000000000000ed: 04 movl 96(%rsp), %edx
55
  00000000000000f1: 02 movb $1, %al
56
  00000000000000f3: 07 cmpl 176(%rsp), %edx
57
  00000000000000fa: 02 jne 0x405215 <example1::main()+0x125>
58
  00000000000000fc: 02 testl %edx, %edx
59
  00000000000000fe: 02 je 0x405213 <example1::main()+0x123>
60
  0000000000000100: 05 movb $1, 16(%rsp)
61
  0000000000000105: 05 movq %rbx, 24(%rsp)
62
  000000000000010a: 05 leaq 32(%rsp), %rdi
63
  000000000000010f: 05 leaq 16(%rsp), %rsi
64
- 0000000000000114: 05 callq 0x496ae0 <void BloombergLP::bdlb::VariantImp<BloombergLP::bslmf::TypeList<BloombergLP::bdlb::NullableValue<bool>, BloombergLP::bdlb::NullableValue<char>, BloombergLP::bdlb::NullableValue<int>, BloombergLP::bdlb::NullableValue<long long>, BloombergLP::bdlb::NullableValue<double>, BloombergLP::bdlb::NullableValue<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Datetime>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Date>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Time>, BloombergLP::bdlb::NullableValue<bsl::vector<char, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<bsl::vector<int, bsl::allocator<int> > >, BloombergLP::bdlb::NullableValue<bsl::vector<long long, bsl::allocator<long long> > >, BloombergLP::bdlb::NullableValue<bsl::vector<double, bsl::allocator<double> > >, BloombergLP::bdlb::NullableValue<bsl::vector<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >, bsl::allocator<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > > > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Datetime, bsl::allocator<BloombergLP::bdlt::Datetime> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Date, bsl::allocator<BloombergLP::bdlt::Date> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Time, bsl::allocator<BloombergLP::bdlt::Time> > > > >::doApply<BloombergLP::bdlb::Variant_EqualityTestVisitor&>(BloombergLP::bdlb::Variant_EqualityTestVisitor&, int) const>
65
  0000000000000119: 05 cmpb $0, 16(%rsp)
66
  000000000000011e: 03 sete %al
67
  0000000000000121: 02 jmp 0x405215 <example1::main()+0x125>
68
  0000000000000123: 02 xorl %eax, %eax
69
  0000000000000125: 02 xorb $1, %al
70
  0000000000000127: 03 movzbl %al, %edi
71
- 000000000000012a: 05 movl $5070770, %esi
72
  000000000000012f: 05 movl $2094, %edx
73
  0000000000000134: 05 callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)>
74
  0000000000000139: 07 movl 176(%rsp), %edx
75
  0000000000000140: 02 testl %edx, %edx
76
  0000000000000142: 02 je 0x40524e <example1::main()+0x15e>
77
  0000000000000144: 05 leaq 112(%rsp), %rdi
78
  0000000000000149: 05 leaq 16(%rsp), %rsi
79
- 000000000000014e: 05 callq 0x4968b0 <void BloombergLP::bdlb::VariantImp<BloombergLP::bslmf::TypeList<BloombergLP::bdlb::NullableValue<bool>, BloombergLP::bdlb::NullableValue<char>, BloombergLP::bdlb::NullableValue<int>, BloombergLP::bdlb::NullableValue<long long>, BloombergLP::bdlb::NullableValue<double>, BloombergLP::bdlb::NullableValue<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Datetime>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Date>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Time>, BloombergLP::bdlb::NullableValue<bsl::vector<char, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<bsl::vector<int, bsl::allocator<int> > >, BloombergLP::bdlb::NullableValue<bsl::vector<long long, bsl::allocator<long long> > >, BloombergLP::bdlb::NullableValue<bsl::vector<double, bsl::allocator<double> > >, BloombergLP::bdlb::NullableValue<bsl::vector<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >, bsl::allocator<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > > > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Datetime, bsl::allocator<BloombergLP::bdlt::Datetime> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Date, bsl::allocator<BloombergLP::bdlt::Date> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Time, bsl::allocator<BloombergLP::bdlt::Time> > > > >::doApply<BloombergLP::bdlb::Variant_DestructorVisitor&>(BloombergLP::bdlb::Variant_DestructorVisitor&, int)>
80
  0000000000000153: 11 movl $0, 176(%rsp)
81
  000000000000015e: 02 xorl %edi, %edi
82
  0000000000000160: 05 cmpl $0, 96(%rsp)
83
  0000000000000165: 04 setne %dil
84
- 0000000000000169: 05 movl $5070787, %esi
85
  000000000000016e: 05 movl $2101, %edx
86
  0000000000000173: 05 callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)>
87
  0000000000000178: 04 movl 96(%rsp), %edx
88
  000000000000017c: 02 testl %edx, %edx
89
  000000000000017e: 02 je 0x405287 <example1::main()+0x197>
90
  0000000000000180: 05 leaq 32(%rsp), %rdi
91
  0000000000000185: 05 leaq 16(%rsp), %rsi
92
- 000000000000018a: 05 callq 0x4968b0 <void BloombergLP::bdlb::VariantImp<BloombergLP::bslmf::TypeList<BloombergLP::bdlb::NullableValue<bool>, BloombergLP::bdlb::NullableValue<char>, BloombergLP::bdlb::NullableValue<int>, BloombergLP::bdlb::NullableValue<long long>, BloombergLP::bdlb::NullableValue<double>, BloombergLP::bdlb::NullableValue<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Datetime>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Date>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Time>, BloombergLP::bdlb::NullableValue<bsl::vector<char, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<bsl::vector<int, bsl::allocator<int> > >, BloombergLP::bdlb::NullableValue<bsl::vector<long long, bsl::allocator<long long> > >, BloombergLP::bdlb::NullableValue<bsl::vector<double, bsl::allocator<double> > >, BloombergLP::bdlb::NullableValue<bsl::vector<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >, bsl::allocator<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > > > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Datetime, bsl::allocator<BloombergLP::bdlt::Datetime> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Date, bsl::allocator<BloombergLP::bdlt::Date> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Time, bsl::allocator<BloombergLP::bdlt::Time> > > > >::doApply<BloombergLP::bdlb::Variant_DestructorVisitor&>(BloombergLP::bdlb::Variant_DestructorVisitor&, int)>
93
  000000000000018f: 08 movl $0, 96(%rsp)
94
  0000000000000197: 05 leaq 32(%rsp), %rdi
95
  000000000000019c: 05 movl $5, %esi
96
- 00000000000001a1: 05 callq 0x49f130 <BloombergLP::balcl::OptionValue::init(BloombergLP::balcl::OptionType::Enum)>
97
  00000000000001a6: 02 xorl %edi, %edi
98
  00000000000001a8: 05 cmpl $0, 96(%rsp)
99
  00000000000001ad: 04 sete %dil
100
- 00000000000001b1: 05 movl $5070804, %esi
101
  00000000000001b6: 05 movl $2106, %edx
102
  00000000000001bb: 05 callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)>
103
  00000000000001c0: 05 leaq 32(%rsp), %rdi
104
- 00000000000001c5: 05 callq 0x49f630 <BloombergLP::balcl::OptionValue::type() const>
105
  00000000000001ca: 02 xorl %edi, %edi
106
  00000000000001cc: 03 cmpl $5, %eax
107
  00000000000001cf: 04 setne %dil
108
- 00000000000001d3: 05 movl $5070836, %esi
109
  00000000000001d8: 05 movl $2107, %edx
110
  00000000000001dd: 05 callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)>
111
  00000000000001e2: 04 xorpd %xmm0, %xmm0
112
  00000000000001e6: 07 cmpneqsd 32(%rsp), %xmm0
113
  00000000000001ed: 05 movq %xmm0, %rdi
114
  00000000000001f2: 03 andl $1, %edi
115
- 00000000000001f5: 05 movl $5070881, %esi
116
  00000000000001fa: 05 movl $2108, %edx
117
  00000000000001ff: 05 callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)>
118
  0000000000000204: 10 movabsq $4618441417868443648, %rax
119
  000000000000020e: 05 movq %rax, 32(%rsp)
120
  0000000000000213: 05 movb $1, 40(%rsp)
121
- 0000000000000218: 05 movl $5070914, %esi
122
  000000000000021d: 02 xorl %edi, %edi
123
  000000000000021f: 05 movl $2111, %edx
124
  0000000000000224: 05 callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)>
125
  0000000000000229: 05 leaq 8(%rsp), %rax
126
  000000000000022e: 05 movq %rax, 16(%rsp)
127
  0000000000000233: 04 movl 96(%rsp), %edx
128
  0000000000000237: 05 leaq 32(%rsp), %rdi
129
  000000000000023c: 05 leaq 16(%rsp), %rsi
130
- 0000000000000241: 05 callq 0x497190 <void BloombergLP::bdlb::VariantImp<BloombergLP::bslmf::TypeList<BloombergLP::bdlb::NullableValue<bool>, BloombergLP::bdlb::NullableValue<char>, BloombergLP::bdlb::NullableValue<int>, BloombergLP::bdlb::NullableValue<long long>, BloombergLP::bdlb::NullableValue<double>, BloombergLP::bdlb::NullableValue<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Datetime>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Date>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Time>, BloombergLP::bdlb::NullableValue<bsl::vector<char, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<bsl::vector<int, bsl::allocator<int> > >, BloombergLP::bdlb::NullableValue<bsl::vector<long long, bsl::allocator<long long> > >, BloombergLP::bdlb::NullableValue<bsl::vector<double, bsl::allocator<double> > >, BloombergLP::bdlb::NullableValue<bsl::vector<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >, bsl::allocator<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > > > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Datetime, bsl::allocator<BloombergLP::bdlt::Datetime> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Date, bsl::allocator<BloombergLP::bdlt::Date> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Time, bsl::allocator<BloombergLP::bdlt::Time> > > > >::doApply<BloombergLP::bdlb::Variant_RawVisitorHelper<void, BloombergLP::balcl::OptionValue_SetNullVisitor> const&>(BloombergLP::bdlb::Variant_RawVisitorHelper<void, BloombergLP::balcl::OptionValue_SetNullVisitor> const&, int)>
131
- 0000000000000246: 05 leaq 40(%rsp), %rax
132
- 000000000000024b: 04 movl 96(%rsp), %ecx
133
- 000000000000024f: 02 decl %ecx
134
- 0000000000000251: 07 jmpq *5043472(,%rcx,8)
135
- 0000000000000258: 05 leaq 64(%rsp), %rax
136
- 000000000000025d: 03 movzbl (%rax), %edi
137
- 0000000000000260: 05 movl $5070942, %esi
138
- 0000000000000265: 05 movl $2117, %edx
139
- 000000000000026a: 05 callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)>
140
- 000000000000026f: 05 leaq 32(%rsp), %rdi
141
- 0000000000000274: 05 callq 0x49f630 <BloombergLP::balcl::OptionValue::type() const>
142
- 0000000000000279: 02 xorl %edi, %edi
143
- 000000000000027b: 03 cmpl $5, %eax
144
- 000000000000027e: 04 setne %dil
145
- 0000000000000282: 05 movl $5070836, %esi
146
- 0000000000000287: 05 movl $2118, %edx
147
- 000000000000028c: 05 callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)>
148
- 0000000000000291: 07 movl 176(%rsp), %edx
149
- 0000000000000298: 02 testl %edx, %edx
150
- 000000000000029a: 02 je 0x40539b <example1::main()+0x2ab>
151
- 000000000000029c: 05 leaq 112(%rsp), %rdi
152
- 00000000000002a1: 05 leaq 16(%rsp), %rsi
153
- 00000000000002a6: 05 callq 0x4968b0 <void BloombergLP::bdlb::VariantImp<BloombergLP::bslmf::TypeList<BloombergLP::bdlb::NullableValue<bool>, BloombergLP::bdlb::NullableValue<char>, BloombergLP::bdlb::NullableValue<int>, BloombergLP::bdlb::NullableValue<long long>, BloombergLP::bdlb::NullableValue<double>, BloombergLP::bdlb::NullableValue<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Datetime>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Date>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Time>, BloombergLP::bdlb::NullableValue<bsl::vector<char, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<bsl::vector<int, bsl::allocator<int> > >, BloombergLP::bdlb::NullableValue<bsl::vector<long long, bsl::allocator<long long> > >, BloombergLP::bdlb::NullableValue<bsl::vector<double, bsl::allocator<double> > >, BloombergLP::bdlb::NullableValue<bsl::vector<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >, bsl::allocator<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > > > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Datetime, bsl::allocator<BloombergLP::bdlt::Datetime> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Date, bsl::allocator<BloombergLP::bdlt::Date> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Time, bsl::allocator<BloombergLP::bdlt::Time> > > > >::doApply<BloombergLP::bdlb::Variant_DestructorVisitor&>(BloombergLP::bdlb::Variant_DestructorVisitor&, int)>
154
- 00000000000002ab: 04 movl 96(%rsp), %edx
155
- 00000000000002af: 02 testl %edx, %edx
156
- 00000000000002b1: 02 je 0x4053b2 <example1::main()+0x2c2>
157
- 00000000000002b3: 05 leaq 32(%rsp), %rdi
158
- 00000000000002b8: 05 leaq 112(%rsp), %rsi
159
- 00000000000002bd: 05 callq 0x4968b0 <void BloombergLP::bdlb::VariantImp<BloombergLP::bslmf::TypeList<BloombergLP::bdlb::NullableValue<bool>, BloombergLP::bdlb::NullableValue<char>, BloombergLP::bdlb::NullableValue<int>, BloombergLP::bdlb::NullableValue<long long>, BloombergLP::bdlb::NullableValue<double>, BloombergLP::bdlb::NullableValue<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Datetime>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Date>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Time>, BloombergLP::bdlb::NullableValue<bsl::vector<char, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<bsl::vector<int, bsl::allocator<int> > >, BloombergLP::bdlb::NullableValue<bsl::vector<long long, bsl::allocator<long long> > >, BloombergLP::bdlb::NullableValue<bsl::vector<double, bsl::allocator<double> > >, BloombergLP::bdlb::NullableValue<bsl::vector<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >, bsl::allocator<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > > > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Datetime, bsl::allocator<BloombergLP::bdlt::Datetime> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Date, bsl::allocator<BloombergLP::bdlt::Date> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Time, bsl::allocator<BloombergLP::bdlt::Time> > > > >::doApply<BloombergLP::bdlb::Variant_DestructorVisitor&>(BloombergLP::bdlb::Variant_DestructorVisitor&, int)>
160
- 00000000000002c2: 02 xorl %eax, %eax
161
- 00000000000002c4: 07 addq $192, %rsp
162
- 00000000000002cb: 01 popq %rbx
163
- 00000000000002cc: 01 retq
164
- 00000000000002cd: 05 leaq 33(%rsp), %rax
165
- 00000000000002d2: 02 jmp 0x40534d <example1::main()+0x25d>
166
- 00000000000002d4: 05 leaq 36(%rsp), %rax
167
- 00000000000002d9: 02 jmp 0x40534d <example1::main()+0x25d>
168
- 00000000000002db: 05 leaq 80(%rsp), %rax
169
- 00000000000002e0: 05 jmp 0x40534d <example1::main()+0x25d>
170
- 00000000000002e5: 02 jmp 0x4053e7 <example1::main()+0x2f7>
171
- 00000000000002e7: 03 movq %rax, %rdi
172
- 00000000000002ea: 05 callq 0x496ad0 <__clang_call_terminate>
 
173
  00000000000002ef: 03 movq %rax, %rdi
174
- 00000000000002f2: 05 callq 0x496ad0 <__clang_call_terminate>
175
- 00000000000002f7: 03 movq %rax, %rbx
176
- 00000000000002fa: 02 jmp 0x405407 <example1::main()+0x317>
177
- 00000000000002fc: 03 movq %rax, %rbx
178
- 00000000000002ff: 07 movl 176(%rsp), %edx
179
- 0000000000000306: 02 testl %edx, %edx
180
- 0000000000000308: 02 je 0x405407 <example1::main()+0x317>
181
- 000000000000030a: 05 leaq 112(%rsp), %rdi
182
- 000000000000030f: 03 movq %rsp, %rsi
183
- 0000000000000312: 05 callq 0x4968b0 <void BloombergLP::bdlb::VariantImp<BloombergLP::bslmf::TypeList<BloombergLP::bdlb::NullableValue<bool>, BloombergLP::bdlb::NullableValue<char>, BloombergLP::bdlb::NullableValue<int>, BloombergLP::bdlb::NullableValue<long long>, BloombergLP::bdlb::NullableValue<double>, BloombergLP::bdlb::NullableValue<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Datetime>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Date>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Time>, BloombergLP::bdlb::NullableValue<bsl::vector<char, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<bsl::vector<int, bsl::allocator<int> > >, BloombergLP::bdlb::NullableValue<bsl::vector<long long, bsl::allocator<long long> > >, BloombergLP::bdlb::NullableValue<bsl::vector<double, bsl::allocator<double> > >, BloombergLP::bdlb::NullableValue<bsl::vector<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >, bsl::allocator<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > > > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Datetime, bsl::allocator<BloombergLP::bdlt::Datetime> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Date, bsl::allocator<BloombergLP::bdlt::Date> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Time, bsl::allocator<BloombergLP::bdlt::Time> > > > >::doApply<BloombergLP::bdlb::Variant_DestructorVisitor&>(BloombergLP::bdlb::Variant_DestructorVisitor&, int)>
184
- 0000000000000317: 04 movl 96(%rsp), %edx
185
- 000000000000031b: 02 testl %edx, %edx
186
- 000000000000031d: 02 je 0x40541e <example1::main()+0x32e>
187
- 000000000000031f: 05 leaq 32(%rsp), %rdi
188
- 0000000000000324: 05 leaq 112(%rsp), %rsi
189
- 0000000000000329: 05 callq 0x4968b0 <void BloombergLP::bdlb::VariantImp<BloombergLP::bslmf::TypeList<BloombergLP::bdlb::NullableValue<bool>, BloombergLP::bdlb::NullableValue<char>, BloombergLP::bdlb::NullableValue<int>, BloombergLP::bdlb::NullableValue<long long>, BloombergLP::bdlb::NullableValue<double>, BloombergLP::bdlb::NullableValue<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Datetime>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Date>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Time>, BloombergLP::bdlb::NullableValue<bsl::vector<char, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<bsl::vector<int, bsl::allocator<int> > >, BloombergLP::bdlb::NullableValue<bsl::vector<long long, bsl::allocator<long long> > >, BloombergLP::bdlb::NullableValue<bsl::vector<double, bsl::allocator<double> > >, BloombergLP::bdlb::NullableValue<bsl::vector<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >, bsl::allocator<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > > > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Datetime, bsl::allocator<BloombergLP::bdlt::Datetime> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Date, bsl::allocator<BloombergLP::bdlt::Date> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Time, bsl::allocator<BloombergLP::bdlt::Time> > > > >::doApply<BloombergLP::bdlb::Variant_DestructorVisitor&>(BloombergLP::bdlb::Variant_DestructorVisitor&, int)>
190
- 000000000000032e: 03 movq %rbx, %rdi
191
- 0000000000000331: 05 callq 0x403fc0 <_Unwind_Resume@plt>
192
- 0000000000000336: 03 movq %rax, %rdi
193
- 0000000000000339: 05 callq 0x496ad0 <__clang_call_terminate>
194
  000000000000033e: 03 movq %rax, %rdi
195
- 0000000000000341: 05 callq 0x496ad0 <__clang_call_terminate>
196
- 0000000000000346: 10 nopw %cs:(%rax,%rax)
 
 
1
  00000000004050f0 <example1::main()>:
2
  0000000000000000: 01 pushq %rbx
3
  0000000000000001: 07 subq $192, %rsp
4
  0000000000000008: 08 movl $0, 96(%rsp)
5
+ 0000000000000010: 07 movq 3262745(%rip), %rax # 721a20 <BloombergLP::bslma::Default::s_defaultAllocator>
6
  0000000000000017: 03 testq %rax, %rax
7
  000000000000001a: 02 jne 0x405111 <example1::main()+0x21>
8
+ 000000000000001c: 05 callq 0x4a64f0 <BloombergLP::bslma::Default::determineAndReturnDefaultAllocator()>
9
  0000000000000021: 05 movq %rax, 104(%rsp)
10
+ 0000000000000026: 05 movl $5078605, %esi
11
  000000000000002b: 02 xorl %edi, %edi
12
  000000000000002d: 05 movl $2081, %edx
13
  0000000000000032: 05 callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)>
14
  0000000000000037: 05 leaq 32(%rsp), %rdi
15
+ 000000000000003c: 05 callq 0x4a0260 <BloombergLP::balcl::OptionValue::type() const>
16
  0000000000000041: 02 xorl %edi, %edi
17
  0000000000000043: 02 testl %eax, %eax
18
  0000000000000045: 04 setne %dil
19
+ 0000000000000049: 05 movl $5078638, %esi
20
  000000000000004e: 05 movl $2082, %edx
21
  0000000000000053: 05 callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)>
22
  0000000000000058: 11 movl $3, 176(%rsp)
23
+ 0000000000000063: 07 movq 3262662(%rip), %rax # 721a20 <BloombergLP::bslma::Default::s_defaultAllocator>
24
  000000000000006a: 03 testq %rax, %rax
25
  000000000000006d: 02 je 0x405166 <example1::main()+0x76>
26
  000000000000006f: 05 movl $3, %ecx
27
  0000000000000074: 02 jmp 0x405172 <example1::main()+0x82>
28
+ 0000000000000076: 05 callq 0x4a64f0 <BloombergLP::bslma::Default::determineAndReturnDefaultAllocator()>
29
  000000000000007b: 07 movl 176(%rsp), %ecx
30
  0000000000000082: 08 movq %rax, 184(%rsp)
31
  000000000000008a: 08 movl $5, 112(%rsp)
32
  0000000000000092: 05 movb $1, 116(%rsp)
33
  0000000000000097: 02 xorl %edi, %edi
34
  0000000000000099: 02 testl %ecx, %ecx
35
  000000000000009b: 04 sete %dil
36
+ 000000000000009f: 05 movl $5078681, %esi
37
  00000000000000a4: 05 movl $2090, %edx
38
  00000000000000a9: 05 callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)>
39
  00000000000000ae: 05 leaq 112(%rsp), %rbx
40
  00000000000000b3: 03 movq %rbx, %rdi
41
+ 00000000000000b6: 05 callq 0x4a0260 <BloombergLP::balcl::OptionValue::type() const>
42
  00000000000000bb: 02 xorl %edi, %edi
43
  00000000000000bd: 03 cmpl $3, %eax
44
  00000000000000c0: 04 setne %dil
45
+ 00000000000000c4: 05 movl $5078713, %esi
46
  00000000000000c9: 05 movl $2091, %edx
47
  00000000000000ce: 05 callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)>
48
  00000000000000d3: 02 xorl %edi, %edi
49
  00000000000000d5: 05 cmpl $5, 112(%rsp)
50
  00000000000000da: 04 setne %dil
51
+ 00000000000000de: 05 movl $5078755, %esi
52
  00000000000000e3: 05 movl $2092, %edx
53
  00000000000000e8: 05 callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)>
54
  00000000000000ed: 04 movl 96(%rsp), %edx
55
  00000000000000f1: 02 movb $1, %al
56
  00000000000000f3: 07 cmpl 176(%rsp), %edx
57
  00000000000000fa: 02 jne 0x405215 <example1::main()+0x125>
58
  00000000000000fc: 02 testl %edx, %edx
59
  00000000000000fe: 02 je 0x405213 <example1::main()+0x123>
60
  0000000000000100: 05 movb $1, 16(%rsp)
61
  0000000000000105: 05 movq %rbx, 24(%rsp)
62
  000000000000010a: 05 leaq 32(%rsp), %rdi
63
  000000000000010f: 05 leaq 16(%rsp), %rsi
64
+ 0000000000000114: 05 callq 0x4976d0 <void BloombergLP::bdlb::VariantImp<BloombergLP::bslmf::TypeList<BloombergLP::bdlb::NullableValue<bool>, BloombergLP::bdlb::NullableValue<char>, BloombergLP::bdlb::NullableValue<int>, BloombergLP::bdlb::NullableValue<long long>, BloombergLP::bdlb::NullableValue<double>, BloombergLP::bdlb::NullableValue<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Datetime>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Date>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Time>, BloombergLP::bdlb::NullableValue<bsl::vector<char, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<bsl::vector<int, bsl::allocator<int> > >, BloombergLP::bdlb::NullableValue<bsl::vector<long long, bsl::allocator<long long> > >, BloombergLP::bdlb::NullableValue<bsl::vector<double, bsl::allocator<double> > >, BloombergLP::bdlb::NullableValue<bsl::vector<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >, bsl::allocator<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > > > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Datetime, bsl::allocator<BloombergLP::bdlt::Datetime> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Date, bsl::allocator<BloombergLP::bdlt::Date> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Time, bsl::allocator<BloombergLP::bdlt::Time> > > > >::doApply<BloombergLP::bdlb::Variant_EqualityTestVisitor&>(BloombergLP::bdlb::Variant_EqualityTestVisitor&, int) const>
65
  0000000000000119: 05 cmpb $0, 16(%rsp)
66
  000000000000011e: 03 sete %al
67
  0000000000000121: 02 jmp 0x405215 <example1::main()+0x125>
68
  0000000000000123: 02 xorl %eax, %eax
69
  0000000000000125: 02 xorb $1, %al
70
  0000000000000127: 03 movzbl %al, %edi
71
+ 000000000000012a: 05 movl $5078778, %esi
72
  000000000000012f: 05 movl $2094, %edx
73
  0000000000000134: 05 callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)>
74
  0000000000000139: 07 movl 176(%rsp), %edx
75
  0000000000000140: 02 testl %edx, %edx
76
  0000000000000142: 02 je 0x40524e <example1::main()+0x15e>
77
  0000000000000144: 05 leaq 112(%rsp), %rdi
78
  0000000000000149: 05 leaq 16(%rsp), %rsi
79
+ 000000000000014e: 05 callq 0x4974a0 <void BloombergLP::bdlb::VariantImp<BloombergLP::bslmf::TypeList<BloombergLP::bdlb::NullableValue<bool>, BloombergLP::bdlb::NullableValue<char>, BloombergLP::bdlb::NullableValue<int>, BloombergLP::bdlb::NullableValue<long long>, BloombergLP::bdlb::NullableValue<double>, BloombergLP::bdlb::NullableValue<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Datetime>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Date>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Time>, BloombergLP::bdlb::NullableValue<bsl::vector<char, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<bsl::vector<int, bsl::allocator<int> > >, BloombergLP::bdlb::NullableValue<bsl::vector<long long, bsl::allocator<long long> > >, BloombergLP::bdlb::NullableValue<bsl::vector<double, bsl::allocator<double> > >, BloombergLP::bdlb::NullableValue<bsl::vector<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >, bsl::allocator<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > > > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Datetime, bsl::allocator<BloombergLP::bdlt::Datetime> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Date, bsl::allocator<BloombergLP::bdlt::Date> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Time, bsl::allocator<BloombergLP::bdlt::Time> > > > >::doApply<BloombergLP::bdlb::Variant_DestructorVisitor&>(BloombergLP::bdlb::Variant_DestructorVisitor&, int)>
80
  0000000000000153: 11 movl $0, 176(%rsp)
81
  000000000000015e: 02 xorl %edi, %edi
82
  0000000000000160: 05 cmpl $0, 96(%rsp)
83
  0000000000000165: 04 setne %dil
84
+ 0000000000000169: 05 movl $5078795, %esi
85
  000000000000016e: 05 movl $2101, %edx
86
  0000000000000173: 05 callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)>
87
  0000000000000178: 04 movl 96(%rsp), %edx
88
  000000000000017c: 02 testl %edx, %edx
89
  000000000000017e: 02 je 0x405287 <example1::main()+0x197>
90
  0000000000000180: 05 leaq 32(%rsp), %rdi
91
  0000000000000185: 05 leaq 16(%rsp), %rsi
92
+ 000000000000018a: 05 callq 0x4974a0 <void BloombergLP::bdlb::VariantImp<BloombergLP::bslmf::TypeList<BloombergLP::bdlb::NullableValue<bool>, BloombergLP::bdlb::NullableValue<char>, BloombergLP::bdlb::NullableValue<int>, BloombergLP::bdlb::NullableValue<long long>, BloombergLP::bdlb::NullableValue<double>, BloombergLP::bdlb::NullableValue<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Datetime>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Date>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Time>, BloombergLP::bdlb::NullableValue<bsl::vector<char, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<bsl::vector<int, bsl::allocator<int> > >, BloombergLP::bdlb::NullableValue<bsl::vector<long long, bsl::allocator<long long> > >, BloombergLP::bdlb::NullableValue<bsl::vector<double, bsl::allocator<double> > >, BloombergLP::bdlb::NullableValue<bsl::vector<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >, bsl::allocator<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > > > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Datetime, bsl::allocator<BloombergLP::bdlt::Datetime> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Date, bsl::allocator<BloombergLP::bdlt::Date> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Time, bsl::allocator<BloombergLP::bdlt::Time> > > > >::doApply<BloombergLP::bdlb::Variant_DestructorVisitor&>(BloombergLP::bdlb::Variant_DestructorVisitor&, int)>
93
  000000000000018f: 08 movl $0, 96(%rsp)
94
  0000000000000197: 05 leaq 32(%rsp), %rdi
95
  000000000000019c: 05 movl $5, %esi
96
+ 00000000000001a1: 05 callq 0x49fd60 <BloombergLP::balcl::OptionValue::init(BloombergLP::balcl::OptionType::Enum)>
97
  00000000000001a6: 02 xorl %edi, %edi
98
  00000000000001a8: 05 cmpl $0, 96(%rsp)
99
  00000000000001ad: 04 sete %dil
100
+ 00000000000001b1: 05 movl $5078812, %esi
101
  00000000000001b6: 05 movl $2106, %edx
102
  00000000000001bb: 05 callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)>
103
  00000000000001c0: 05 leaq 32(%rsp), %rdi
104
+ 00000000000001c5: 05 callq 0x4a0260 <BloombergLP::balcl::OptionValue::type() const>
105
  00000000000001ca: 02 xorl %edi, %edi
106
  00000000000001cc: 03 cmpl $5, %eax
107
  00000000000001cf: 04 setne %dil
108
+ 00000000000001d3: 05 movl $5078844, %esi
109
  00000000000001d8: 05 movl $2107, %edx
110
  00000000000001dd: 05 callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)>
111
  00000000000001e2: 04 xorpd %xmm0, %xmm0
112
  00000000000001e6: 07 cmpneqsd 32(%rsp), %xmm0
113
  00000000000001ed: 05 movq %xmm0, %rdi
114
  00000000000001f2: 03 andl $1, %edi
115
+ 00000000000001f5: 05 movl $5078889, %esi
116
  00000000000001fa: 05 movl $2108, %edx
117
  00000000000001ff: 05 callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)>
118
  0000000000000204: 10 movabsq $4618441417868443648, %rax
119
  000000000000020e: 05 movq %rax, 32(%rsp)
120
  0000000000000213: 05 movb $1, 40(%rsp)
121
+ 0000000000000218: 05 movl $5078922, %esi
122
  000000000000021d: 02 xorl %edi, %edi
123
  000000000000021f: 05 movl $2111, %edx
124
  0000000000000224: 05 callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)>
125
  0000000000000229: 05 leaq 8(%rsp), %rax
126
  000000000000022e: 05 movq %rax, 16(%rsp)
127
  0000000000000233: 04 movl 96(%rsp), %edx
128
  0000000000000237: 05 leaq 32(%rsp), %rdi
129
  000000000000023c: 05 leaq 16(%rsp), %rsi
130
+ 0000000000000241: 05 callq 0x497d80 <void BloombergLP::bdlb::VariantImp<BloombergLP::bslmf::TypeList<BloombergLP::bdlb::NullableValue<bool>, BloombergLP::bdlb::NullableValue<char>, BloombergLP::bdlb::NullableValue<int>, BloombergLP::bdlb::NullableValue<long long>, BloombergLP::bdlb::NullableValue<double>, BloombergLP::bdlb::NullableValue<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Datetime>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Date>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Time>, BloombergLP::bdlb::NullableValue<bsl::vector<char, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<bsl::vector<int, bsl::allocator<int> > >, BloombergLP::bdlb::NullableValue<bsl::vector<long long, bsl::allocator<long long> > >, BloombergLP::bdlb::NullableValue<bsl::vector<double, bsl::allocator<double> > >, BloombergLP::bdlb::NullableValue<bsl::vector<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >, bsl::allocator<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > > > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Datetime, bsl::allocator<BloombergLP::bdlt::Datetime> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Date, bsl::allocator<BloombergLP::bdlt::Date> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Time, bsl::allocator<BloombergLP::bdlt::Time> > > > >::doApply<BloombergLP::bdlb::Variant_RawVisitorHelper<void, BloombergLP::balcl::OptionValue_SetNullVisitor> const&>(BloombergLP::bdlb::Variant_RawVisitorHelper<void, BloombergLP::balcl::OptionValue_SetNullVisitor> const&, int)>
131
+ 0000000000000246: 04 movl 96(%rsp), %ecx
132
+ 000000000000024a: 02 decl %ecx
133
+ 000000000000024c: 03 cmpl $19, %ecx
134
+ 000000000000024f: 06 ja 0x4053db <example1::main()+0x2eb>
135
+ 0000000000000255: 05 leaq 40(%rsp), %rax
136
+ 000000000000025a: 07 jmpq *5048336(,%rcx,8)
137
+ 0000000000000261: 05 leaq 64(%rsp), %rax
138
+ 0000000000000266: 02 jmp 0x40536b <example1::main()+0x27b>
139
+ 0000000000000268: 05 leaq 33(%rsp), %rax
140
+ 000000000000026d: 02 jmp 0x40536b <example1::main()+0x27b>
141
+ 000000000000026f: 05 leaq 36(%rsp), %rax
142
+ 0000000000000274: 02 jmp 0x40536b <example1::main()+0x27b>
143
+ 0000000000000276: 05 leaq 80(%rsp), %rax
144
+ 000000000000027b: 03 movzbl (%rax), %edi
145
+ 000000000000027e: 05 movl $5078950, %esi
146
+ 0000000000000283: 05 movl $2117, %edx
147
+ 0000000000000288: 05 callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)>
148
+ 000000000000028d: 05 leaq 32(%rsp), %rdi
149
+ 0000000000000292: 05 callq 0x4a0260 <BloombergLP::balcl::OptionValue::type() const>
150
+ 0000000000000297: 02 xorl %edi, %edi
151
+ 0000000000000299: 03 cmpl $5, %eax
152
+ 000000000000029c: 04 setne %dil
153
+ 00000000000002a0: 05 movl $5078844, %esi
154
+ 00000000000002a5: 05 movl $2118, %edx
155
+ 00000000000002aa: 05 callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)>
156
+ 00000000000002af: 07 movl 176(%rsp), %edx
157
+ 00000000000002b6: 02 testl %edx, %edx
158
+ 00000000000002b8: 02 je 0x4053b9 <example1::main()+0x2c9>
159
+ 00000000000002ba: 05 leaq 112(%rsp), %rdi
160
+ 00000000000002bf: 05 leaq 16(%rsp), %rsi
161
+ 00000000000002c4: 05 callq 0x4974a0 <void BloombergLP::bdlb::VariantImp<BloombergLP::bslmf::TypeList<BloombergLP::bdlb::NullableValue<bool>, BloombergLP::bdlb::NullableValue<char>, BloombergLP::bdlb::NullableValue<int>, BloombergLP::bdlb::NullableValue<long long>, BloombergLP::bdlb::NullableValue<double>, BloombergLP::bdlb::NullableValue<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Datetime>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Date>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Time>, BloombergLP::bdlb::NullableValue<bsl::vector<char, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<bsl::vector<int, bsl::allocator<int> > >, BloombergLP::bdlb::NullableValue<bsl::vector<long long, bsl::allocator<long long> > >, BloombergLP::bdlb::NullableValue<bsl::vector<double, bsl::allocator<double> > >, BloombergLP::bdlb::NullableValue<bsl::vector<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >, bsl::allocator<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > > > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Datetime, bsl::allocator<BloombergLP::bdlt::Datetime> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Date, bsl::allocator<BloombergLP::bdlt::Date> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Time, bsl::allocator<BloombergLP::bdlt::Time> > > > >::doApply<BloombergLP::bdlb::Variant_DestructorVisitor&>(BloombergLP::bdlb::Variant_DestructorVisitor&, int)>
162
+ 00000000000002c9: 04 movl 96(%rsp), %edx
163
+ 00000000000002cd: 02 testl %edx, %edx
164
+ 00000000000002cf: 02 je 0x4053d0 <example1::main()+0x2e0>
165
+ 00000000000002d1: 05 leaq 32(%rsp), %rdi
166
+ 00000000000002d6: 05 leaq 112(%rsp), %rsi
167
+ 00000000000002db: 05 callq 0x4974a0 <void BloombergLP::bdlb::VariantImp<BloombergLP::bslmf::TypeList<BloombergLP::bdlb::NullableValue<bool>, BloombergLP::bdlb::NullableValue<char>, BloombergLP::bdlb::NullableValue<int>, BloombergLP::bdlb::NullableValue<long long>, BloombergLP::bdlb::NullableValue<double>, BloombergLP::bdlb::NullableValue<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Datetime>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Date>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Time>, BloombergLP::bdlb::NullableValue<bsl::vector<char, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<bsl::vector<int, bsl::allocator<int> > >, BloombergLP::bdlb::NullableValue<bsl::vector<long long, bsl::allocator<long long> > >, BloombergLP::bdlb::NullableValue<bsl::vector<double, bsl::allocator<double> > >, BloombergLP::bdlb::NullableValue<bsl::vector<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >, bsl::allocator<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > > > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Datetime, bsl::allocator<BloombergLP::bdlt::Datetime> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Date, bsl::allocator<BloombergLP::bdlt::Date> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Time, bsl::allocator<BloombergLP::bdlt::Time> > > > >::doApply<BloombergLP::bdlb::Variant_DestructorVisitor&>(BloombergLP::bdlb::Variant_DestructorVisitor&, int)>
168
+ 00000000000002e0: 02 xorl %eax, %eax
169
+ 00000000000002e2: 07 addq $192, %rsp
170
+ 00000000000002e9: 01 popq %rbx
171
+ 00000000000002ea: 01 retq
172
+ 00000000000002eb: 02 ud2
173
+ 00000000000002ed: 02 jmp 0x4053ef <example1::main()+0x2ff>
174
  00000000000002ef: 03 movq %rax, %rdi
175
+ 00000000000002f2: 05 callq 0x4976c0 <__clang_call_terminate>
176
+ 00000000000002f7: 03 movq %rax, %rdi
177
+ 00000000000002fa: 05 callq 0x4976c0 <__clang_call_terminate>
178
+ 00000000000002ff: 03 movq %rax, %rbx
179
+ 0000000000000302: 02 jmp 0x40540f <example1::main()+0x31f>
180
+ 0000000000000304: 03 movq %rax, %rbx
181
+ 0000000000000307: 07 movl 176(%rsp), %edx
182
+ 000000000000030e: 02 testl %edx, %edx
183
+ 0000000000000310: 02 je 0x40540f <example1::main()+0x31f>
184
+ 0000000000000312: 05 leaq 112(%rsp), %rdi
185
+ 0000000000000317: 03 movq %rsp, %rsi
186
+ 000000000000031a: 05 callq 0x4974a0 <void BloombergLP::bdlb::VariantImp<BloombergLP::bslmf::TypeList<BloombergLP::bdlb::NullableValue<bool>, BloombergLP::bdlb::NullableValue<char>, BloombergLP::bdlb::NullableValue<int>, BloombergLP::bdlb::NullableValue<long long>, BloombergLP::bdlb::NullableValue<double>, BloombergLP::bdlb::NullableValue<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Datetime>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Date>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Time>, BloombergLP::bdlb::NullableValue<bsl::vector<char, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<bsl::vector<int, bsl::allocator<int> > >, BloombergLP::bdlb::NullableValue<bsl::vector<long long, bsl::allocator<long long> > >, BloombergLP::bdlb::NullableValue<bsl::vector<double, bsl::allocator<double> > >, BloombergLP::bdlb::NullableValue<bsl::vector<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >, bsl::allocator<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > > > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Datetime, bsl::allocator<BloombergLP::bdlt::Datetime> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Date, bsl::allocator<BloombergLP::bdlt::Date> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Time, bsl::allocator<BloombergLP::bdlt::Time> > > > >::doApply<BloombergLP::bdlb::Variant_DestructorVisitor&>(BloombergLP::bdlb::Variant_DestructorVisitor&, int)>
187
+ 000000000000031f: 04 movl 96(%rsp), %edx
188
+ 0000000000000323: 02 testl %edx, %edx
189
+ 0000000000000325: 02 je 0x405426 <example1::main()+0x336>
190
+ 0000000000000327: 05 leaq 32(%rsp), %rdi
191
+ 000000000000032c: 05 leaq 112(%rsp), %rsi
192
+ 0000000000000331: 05 callq 0x4974a0 <void BloombergLP::bdlb::VariantImp<BloombergLP::bslmf::TypeList<BloombergLP::bdlb::NullableValue<bool>, BloombergLP::bdlb::NullableValue<char>, BloombergLP::bdlb::NullableValue<int>, BloombergLP::bdlb::NullableValue<long long>, BloombergLP::bdlb::NullableValue<double>, BloombergLP::bdlb::NullableValue<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Datetime>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Date>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Time>, BloombergLP::bdlb::NullableValue<bsl::vector<char, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<bsl::vector<int, bsl::allocator<int> > >, BloombergLP::bdlb::NullableValue<bsl::vector<long long, bsl::allocator<long long> > >, BloombergLP::bdlb::NullableValue<bsl::vector<double, bsl::allocator<double> > >, BloombergLP::bdlb::NullableValue<bsl::vector<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >, bsl::allocator<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > > > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Datetime, bsl::allocator<BloombergLP::bdlt::Datetime> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Date, bsl::allocator<BloombergLP::bdlt::Date> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Time, bsl::allocator<BloombergLP::bdlt::Time> > > > >::doApply<BloombergLP::bdlb::Variant_DestructorVisitor&>(BloombergLP::bdlb::Variant_DestructorVisitor&, int)>
193
+ 0000000000000336: 03 movq %rbx, %rdi
194
+ 0000000000000339: 05 callq 0x403fc0 <_Unwind_Resume@plt>
195
  000000000000033e: 03 movq %rax, %rdi
196
+ 0000000000000341: 05 callq 0x4976c0 <__clang_call_terminate>
197
+ 0000000000000346: 03 movq %rax, %rdi
198
+ 0000000000000349: 05 callq 0x4976c0 <__clang_call_terminate>
199
+ 000000000000034e: 02 nop