Comparing BloombergLP::bdlcc::ObjectPool >, bsl::function, BloombergLP::bdlcc::ObjectPoolFunctors::Reset > > >::getObject() in assumed vs ignored

Files changed (1) hide show
  1. bdlcc_sharedobjectpool.t/{1.assume.s → 1.none.s} +124 -122
bdlcc_sharedobjectpool.t/{1.assume.s → 1.none.s} RENAMED
@@ -1,178 +1,180 @@
1
- 0000000000409600 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()>:
2
  0000000000000000: 01 pushq %rbp
3
  0000000000000001: 02 pushq %r15
4
  0000000000000003: 02 pushq %r14
5
  0000000000000005: 02 pushq %r13
6
  0000000000000007: 02 pushq %r12
7
  0000000000000009: 01 pushq %rbx
8
  000000000000000a: 04 subq $40, %rsp
9
  000000000000000e: 03 movq %rdi, %rbp
10
  0000000000000011: 07 leaq 144(%rdi), %r14
11
  0000000000000018: 04 leaq 120(%rdi), %r15
12
  000000000000001c: 04 leaq 16(%rdi), %r12
13
  0000000000000020: 04 movq 8(%rbp), %rbx
14
  0000000000000024: 03 testq %rbx, %rbx
15
- 0000000000000027: 02 je 0x409692 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x92>
16
  0000000000000029: 05 movl $2, %eax
17
  000000000000002e: 01 lock
18
  000000000000002f: 04 xaddl %eax, 8(%rbx)
19
  0000000000000033: 02 testl %eax, %eax
20
- 0000000000000035: 02 jne 0x4096b0 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0xb0>
21
  0000000000000037: 04 movq 8(%rbp), %rax
22
  000000000000003b: 05 movq %rax, 24(%rsp)
23
  0000000000000040: 05 movq 24(%rsp), %rax
24
  0000000000000045: 03 cmpq %rbx, %rax
25
- 0000000000000048: 02 jne 0x40967a <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x7a>
26
  000000000000004a: 05 movq 24(%rsp), %rax
27
  000000000000004f: 03 movq (%rax), %rcx
28
  0000000000000052: 03 movq %rbx, %rax
29
  0000000000000055: 01 lock
30
  0000000000000056: 05 cmpxchgq %rcx, 8(%rbp)
31
  000000000000005b: 03 cmpq %rax, %rbx
32
- 000000000000005e: 06 je 0x4097cf <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x1cf>
33
- 0000000000000064: 02 jmp 0x40967a <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x7a>
34
  0000000000000066: 02 movl %ecx, %edx
35
  0000000000000068: 03 xorl $1, %edx
36
  000000000000006b: 02 movl %ecx, %eax
37
  000000000000006d: 01 lock
38
  000000000000006e: 04 cmpxchgl %edx, 8(%rbx)
39
  0000000000000072: 02 cmpl %eax, %ecx
40
- 0000000000000074: 06 je 0x4097cf <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x1cf>
41
  000000000000007a: 03 movl 8(%rbx), %ecx
42
  000000000000007d: 03 testb $1, %cl
43
- 0000000000000080: 02 jne 0x409666 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x66>
44
  0000000000000082: 03 leal -2(%rcx), %edx
45
  0000000000000085: 02 movl %ecx, %eax
46
  0000000000000087: 01 lock
47
  0000000000000088: 04 cmpxchgl %edx, 8(%rbx)
48
  000000000000008c: 02 cmpl %eax, %ecx
49
- 000000000000008e: 02 jne 0x40967a <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x7a>
50
- 0000000000000090: 02 jmp 0x409620 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x20>
51
  0000000000000092: 03 movq %r14, %rdi
52
  0000000000000095: 05 callq 0x403a50 <pthread_mutex_lock@plt>
53
  000000000000009a: 04 movq 8(%rbp), %rbx
54
  000000000000009e: 03 testq %rbx, %rbx
55
- 00000000000000a1: 02 je 0x4096d3 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0xd3>
56
  00000000000000a3: 03 movq %r14, %rdi
57
  00000000000000a6: 05 callq 0x403b00 <pthread_mutex_unlock@plt>
58
- 00000000000000ab: 05 jmp 0x409629 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x29>
59
  00000000000000b0: 04 movq 8(%rbp), %rax
60
  00000000000000b4: 03 cmpq %rax, %rbx
61
- 00000000000000b7: 06 jne 0x409637 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x37>
62
  00000000000000bd: 04 movq 8(%rbp), %rax
63
  00000000000000c1: 03 cmpq %rax, %rbx
64
- 00000000000000c4: 06 jne 0x409637 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x37>
65
  00000000000000ca: 04 movq 8(%rbp), %rax
66
- 00000000000000ce: 05 jmp 0x409637 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x37>
67
  00000000000000d3: 03 movl 100(%rbp), %eax
68
  00000000000000d6: 02 movl %eax, %ebx
69
  00000000000000d8: 02 negl %ebx
70
  00000000000000da: 04 movl %eax, 8(%rsp)
71
  00000000000000de: 03 cmovll %eax, %ebx
72
- 00000000000000e1: 02 movl %ebx, %esi
73
- 00000000000000e3: 03 shll $6, %esi
74
- 00000000000000e6: 03 orl $16, %esi
75
- 00000000000000e9: 03 movq %r15, %rdi
76
- 00000000000000ec: 05 callq 0x4104b0 <BloombergLP::bdlma::InfrequentDeleteBlockList::allocate(unsigned long)>
77
- 00000000000000f1: 04 movq 112(%rbp), %rcx
78
- 00000000000000f5: 03 movq %rcx, (%rax)
79
- 00000000000000f8: 04 movl %ebx, 4(%rsp)
80
- 00000000000000fc: 03 movl %ebx, 8(%rax)
81
- 00000000000000ff: 04 leaq 16(%rax), %rdx
82
- 0000000000000103: 03 movq %rdx, %r13
83
- 0000000000000106: 05 cmpl $0, 8(%rsp)
84
- 000000000000010b: 02 je 0x40977d <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x17d>
85
- 000000000000010d: 05 movq %rdx, 32(%rsp)
86
- 0000000000000112: 04 movl 4(%rsp), %ecx
87
- 0000000000000116: 02 negl %ecx
88
- 0000000000000118: 05 movq %rcx, 8(%rsp)
89
- 000000000000011d: 05 movl $1, %ebx
90
- 0000000000000122: 05 movq %rax, 16(%rsp)
91
- 0000000000000127: 03 movq %rax, %r13
92
- 000000000000012a: 04 leaq 80(%r13), %rax
93
- 000000000000012e: 04 movq %rax, 16(%r13)
94
- 0000000000000132: 08 movl $0, 24(%r13)
95
- 000000000000013a: 04 movq 80(%rbp), %rax
96
- 000000000000013e: 03 testq %rax, %rax
97
- 0000000000000141: 06 je 0x4097f0 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x1f0>
98
- 0000000000000147: 07 movq 136(%rbp), %rdx
99
- 000000000000014e: 04 leaq 32(%r13), %rsi
100
- 0000000000000152: 03 movq %r12, %rdi
101
- 0000000000000155: 02 callq *%rax
102
- 0000000000000157: 05 movq 8(%rsp), %rax
103
- 000000000000015c: 04 leal 1(%rax,%rbx), %eax
104
- 0000000000000160: 02 movl %ebx, %ecx
105
- 0000000000000162: 02 incl %ecx
106
- 0000000000000164: 04 addq $64, %r13
107
- 0000000000000168: 02 movl %ecx, %ebx
108
- 000000000000016a: 03 cmpl $1, %eax
109
- 000000000000016d: 02 jne 0x40972a <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x12a>
110
- 000000000000016f: 04 addq $16, %r13
111
- 0000000000000173: 05 movq 16(%rsp), %rax
112
- 0000000000000178: 05 movq 32(%rsp), %rdx
113
- 000000000000017d: 08 movl $0, -56(%r13)
114
- 0000000000000185: 04 movq %rax, 112(%rbp)
115
- 0000000000000189: 04 movq 8(%rbp), %rcx
116
- 000000000000018d: 04 movq %rcx, -64(%r13)
117
- 0000000000000191: 03 movq %rcx, %rax
118
- 0000000000000194: 01 lock
119
- 0000000000000195: 05 cmpxchgq %rdx, 8(%rbp)
120
- 000000000000019a: 03 cmpq %rax, %rcx
121
- 000000000000019d: 02 jne 0x409789 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x189>
122
- 000000000000019f: 04 movl 4(%rsp), %eax
123
- 00000000000001a3: 01 lock
124
- 00000000000001a4: 03 addl %eax, 108(%rbp)
125
- 00000000000001a7: 01 lock
126
- 00000000000001a8: 03 addl %eax, 104(%rbp)
127
- 00000000000001ab: 03 movl 100(%rbp), %eax
128
- 00000000000001ae: 02 testl %eax, %eax
129
- 00000000000001b0: 02 jns 0x4097c2 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x1c2>
130
- 00000000000001b2: 02 movl %eax, %ecx
131
- 00000000000001b4: 02 negl %ecx
132
- 00000000000001b6: 03 leal (%rax,%rax), %edx
133
- 00000000000001b9: 03 cmpl $-32, %eax
134
- 00000000000001bc: 03 cmovlel %ecx, %edx
135
- 00000000000001bf: 03 movl %edx, 100(%rbp)
136
- 00000000000001c2: 03 movq %r14, %rdi
137
- 00000000000001c5: 05 callq 0x403b00 <pthread_mutex_unlock@plt>
138
- 00000000000001ca: 05 jmp 0x409620 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x20>
139
- 00000000000001cf: 07 movq $0, (%rbx)
140
- 00000000000001d6: 01 lock
141
- 00000000000001d7: 03 decl 104(%rbp)
142
- 00000000000001da: 04 addq $16, %rbx
143
- 00000000000001de: 03 movq %rbx, %rax
144
- 00000000000001e1: 04 addq $40, %rsp
145
- 00000000000001e5: 01 popq %rbx
146
- 00000000000001e6: 02 popq %r12
147
- 00000000000001e8: 02 popq %r13
148
- 00000000000001ea: 02 popq %r14
149
- 00000000000001ec: 02 popq %r15
150
- 00000000000001ee: 01 popq %rbp
151
- 00000000000001ef: 01 retq
152
- 00000000000001f0: 05 movl $8, %edi
153
- 00000000000001f5: 05 callq 0x403690 <__cxa_allocate_exception@plt>
154
- 00000000000001fa: 07 movq $4430616, (%rax)
155
- 0000000000000201: 05 movl $4430576, %esi
156
- 0000000000000206: 05 movl $4208976, %edx
157
- 000000000000020b: 03 movq %rax, %rdi
158
- 000000000000020e: 05 callq 0x403740 <__cxa_throw@plt>
159
- 0000000000000213: 03 movq %rax, %r15
160
- 0000000000000216: 02 jmp 0x40983f <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x23f>
161
- 0000000000000218: 02 jmp 0x40981a <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x21a>
162
- 000000000000021a: 03 movq %rax, %r15
163
- 000000000000021d: 03 cmpl $1, %ebx
164
- 0000000000000220: 02 je 0x40983f <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x23f>
165
- 0000000000000222: 05 movq 16(%rsp), %rbp
166
- 0000000000000227: 04 addq $32, %rbp
167
- 000000000000022b: 04 movq (%rbp), %rax
168
- 000000000000022f: 03 movq %rbp, %rdi
169
- 0000000000000232: 02 callq *(%rax)
170
- 0000000000000234: 04 addq $64, %rbp
171
- 0000000000000238: 02 decl %ebx
172
- 000000000000023a: 03 cmpl $1, %ebx
173
- 000000000000023d: 02 jg 0x40982b <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x22b>
174
- 000000000000023f: 03 movq %r14, %rdi
175
- 0000000000000242: 05 callq 0x403b00 <pthread_mutex_unlock@plt>
176
- 0000000000000247: 03 movq %r15, %rdi
177
- 000000000000024a: 05 callq 0x403ab0 <_Unwind_Resume@plt>
178
- 000000000000024f: 01 nop
 
 
1
+ 0000000000409610 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()>:
2
  0000000000000000: 01 pushq %rbp
3
  0000000000000001: 02 pushq %r15
4
  0000000000000003: 02 pushq %r14
5
  0000000000000005: 02 pushq %r13
6
  0000000000000007: 02 pushq %r12
7
  0000000000000009: 01 pushq %rbx
8
  000000000000000a: 04 subq $40, %rsp
9
  000000000000000e: 03 movq %rdi, %rbp
10
  0000000000000011: 07 leaq 144(%rdi), %r14
11
  0000000000000018: 04 leaq 120(%rdi), %r15
12
  000000000000001c: 04 leaq 16(%rdi), %r12
13
  0000000000000020: 04 movq 8(%rbp), %rbx
14
  0000000000000024: 03 testq %rbx, %rbx
15
+ 0000000000000027: 02 je 0x4096a2 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x92>
16
  0000000000000029: 05 movl $2, %eax
17
  000000000000002e: 01 lock
18
  000000000000002f: 04 xaddl %eax, 8(%rbx)
19
  0000000000000033: 02 testl %eax, %eax
20
+ 0000000000000035: 02 jne 0x4096c0 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0xb0>
21
  0000000000000037: 04 movq 8(%rbp), %rax
22
  000000000000003b: 05 movq %rax, 24(%rsp)
23
  0000000000000040: 05 movq 24(%rsp), %rax
24
  0000000000000045: 03 cmpq %rbx, %rax
25
+ 0000000000000048: 02 jne 0x40968a <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x7a>
26
  000000000000004a: 05 movq 24(%rsp), %rax
27
  000000000000004f: 03 movq (%rax), %rcx
28
  0000000000000052: 03 movq %rbx, %rax
29
  0000000000000055: 01 lock
30
  0000000000000056: 05 cmpxchgq %rcx, 8(%rbp)
31
  000000000000005b: 03 cmpq %rax, %rbx
32
+ 000000000000005e: 06 je 0x4097e2 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x1d2>
33
+ 0000000000000064: 02 jmp 0x40968a <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x7a>
34
  0000000000000066: 02 movl %ecx, %edx
35
  0000000000000068: 03 xorl $1, %edx
36
  000000000000006b: 02 movl %ecx, %eax
37
  000000000000006d: 01 lock
38
  000000000000006e: 04 cmpxchgl %edx, 8(%rbx)
39
  0000000000000072: 02 cmpl %eax, %ecx
40
+ 0000000000000074: 06 je 0x4097e2 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x1d2>
41
  000000000000007a: 03 movl 8(%rbx), %ecx
42
  000000000000007d: 03 testb $1, %cl
43
+ 0000000000000080: 02 jne 0x409676 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x66>
44
  0000000000000082: 03 leal -2(%rcx), %edx
45
  0000000000000085: 02 movl %ecx, %eax
46
  0000000000000087: 01 lock
47
  0000000000000088: 04 cmpxchgl %edx, 8(%rbx)
48
  000000000000008c: 02 cmpl %eax, %ecx
49
+ 000000000000008e: 02 jne 0x40968a <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x7a>
50
+ 0000000000000090: 02 jmp 0x409630 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x20>
51
  0000000000000092: 03 movq %r14, %rdi
52
  0000000000000095: 05 callq 0x403a50 <pthread_mutex_lock@plt>
53
  000000000000009a: 04 movq 8(%rbp), %rbx
54
  000000000000009e: 03 testq %rbx, %rbx
55
+ 00000000000000a1: 02 je 0x4096e3 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0xd3>
56
  00000000000000a3: 03 movq %r14, %rdi
57
  00000000000000a6: 05 callq 0x403b00 <pthread_mutex_unlock@plt>
58
+ 00000000000000ab: 05 jmp 0x409639 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x29>
59
  00000000000000b0: 04 movq 8(%rbp), %rax
60
  00000000000000b4: 03 cmpq %rax, %rbx
61
+ 00000000000000b7: 06 jne 0x409647 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x37>
62
  00000000000000bd: 04 movq 8(%rbp), %rax
63
  00000000000000c1: 03 cmpq %rax, %rbx
64
+ 00000000000000c4: 06 jne 0x409647 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x37>
65
  00000000000000ca: 04 movq 8(%rbp), %rax
66
+ 00000000000000ce: 05 jmp 0x409647 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x37>
67
  00000000000000d3: 03 movl 100(%rbp), %eax
68
  00000000000000d6: 02 movl %eax, %ebx
69
  00000000000000d8: 02 negl %ebx
70
  00000000000000da: 04 movl %eax, 8(%rsp)
71
  00000000000000de: 03 cmovll %eax, %ebx
72
+ 00000000000000e1: 02 movl %ebx, %eax
73
+ 00000000000000e3: 03 shll $6, %eax
74
+ 00000000000000e6: 03 orl $16, %eax
75
+ 00000000000000e9: 03 movslq %eax, %rsi
76
+ 00000000000000ec: 03 movq %r15, %rdi
77
+ 00000000000000ef: 05 callq 0x410520 <BloombergLP::bdlma::InfrequentDeleteBlockList::allocate(unsigned long)>
78
+ 00000000000000f4: 04 movq 112(%rbp), %rcx
79
+ 00000000000000f8: 03 movq %rcx, (%rax)
80
+ 00000000000000fb: 04 movl %ebx, 4(%rsp)
81
+ 00000000000000ff: 03 movl %ebx, 8(%rax)
82
+ 0000000000000102: 04 leaq 16(%rax), %rdx
83
+ 0000000000000106: 03 movq %rdx, %r13
84
+ 0000000000000109: 05 cmpl $0, 8(%rsp)
85
+ 000000000000010e: 02 je 0x409790 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x180>
86
+ 0000000000000110: 05 movq %rdx, 32(%rsp)
87
+ 0000000000000115: 04 movl 4(%rsp), %ecx
88
+ 0000000000000119: 02 negl %ecx
89
+ 000000000000011b: 05 movq %rcx, 8(%rsp)
90
+ 0000000000000120: 05 movl $1, %ebx
91
+ 0000000000000125: 05 movq %rax, 16(%rsp)
92
+ 000000000000012a: 03 movq %rax, %r13
93
+ 000000000000012d: 04 leaq 80(%r13), %rax
94
+ 0000000000000131: 04 movq %rax, 16(%r13)
95
+ 0000000000000135: 08 movl $0, 24(%r13)
96
+ 000000000000013d: 04 movq 80(%rbp), %rax
97
+ 0000000000000141: 03 testq %rax, %rax
98
+ 0000000000000144: 06 je 0x409803 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x1f3>
99
+ 000000000000014a: 07 movq 136(%rbp), %rdx
100
+ 0000000000000151: 04 leaq 32(%r13), %rsi
101
+ 0000000000000155: 03 movq %r12, %rdi
102
+ 0000000000000158: 02 callq *%rax
103
+ 000000000000015a: 05 movq 8(%rsp), %rax
104
+ 000000000000015f: 04 leal 1(%rax,%rbx), %eax
105
+ 0000000000000163: 02 movl %ebx, %ecx
106
+ 0000000000000165: 02 incl %ecx
107
+ 0000000000000167: 04 addq $64, %r13
108
+ 000000000000016b: 02 movl %ecx, %ebx
109
+ 000000000000016d: 03 cmpl $1, %eax
110
+ 0000000000000170: 02 jne 0x40973d <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x12d>
111
+ 0000000000000172: 04 addq $16, %r13
112
+ 0000000000000176: 05 movq 16(%rsp), %rax
113
+ 000000000000017b: 05 movq 32(%rsp), %rdx
114
+ 0000000000000180: 08 movl $0, -56(%r13)
115
+ 0000000000000188: 04 movq %rax, 112(%rbp)
116
+ 000000000000018c: 04 movq 8(%rbp), %rcx
117
+ 0000000000000190: 04 movq %rcx, -64(%r13)
118
+ 0000000000000194: 03 movq %rcx, %rax
119
+ 0000000000000197: 01 lock
120
+ 0000000000000198: 05 cmpxchgq %rdx, 8(%rbp)
121
+ 000000000000019d: 03 cmpq %rax, %rcx
122
+ 00000000000001a0: 02 jne 0x40979c <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x18c>
123
+ 00000000000001a2: 04 movl 4(%rsp), %eax
124
+ 00000000000001a6: 01 lock
125
+ 00000000000001a7: 03 addl %eax, 108(%rbp)
126
+ 00000000000001aa: 01 lock
127
+ 00000000000001ab: 03 addl %eax, 104(%rbp)
128
+ 00000000000001ae: 03 movl 100(%rbp), %eax
129
+ 00000000000001b1: 02 testl %eax, %eax
130
+ 00000000000001b3: 02 jns 0x4097d5 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x1c5>
131
+ 00000000000001b5: 02 movl %eax, %ecx
132
+ 00000000000001b7: 02 negl %ecx
133
+ 00000000000001b9: 03 leal (%rax,%rax), %edx
134
+ 00000000000001bc: 03 cmpl $-32, %eax
135
+ 00000000000001bf: 03 cmovlel %ecx, %edx
136
+ 00000000000001c2: 03 movl %edx, 100(%rbp)
137
+ 00000000000001c5: 03 movq %r14, %rdi
138
+ 00000000000001c8: 05 callq 0x403b00 <pthread_mutex_unlock@plt>
139
+ 00000000000001cd: 05 jmp 0x409630 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x20>
140
+ 00000000000001d2: 07 movq $0, (%rbx)
141
+ 00000000000001d9: 01 lock
142
+ 00000000000001da: 03 decl 104(%rbp)
143
+ 00000000000001dd: 04 addq $16, %rbx
144
+ 00000000000001e1: 03 movq %rbx, %rax
145
+ 00000000000001e4: 04 addq $40, %rsp
146
+ 00000000000001e8: 01 popq %rbx
147
+ 00000000000001e9: 02 popq %r12
148
+ 00000000000001eb: 02 popq %r13
149
+ 00000000000001ed: 02 popq %r14
150
+ 00000000000001ef: 02 popq %r15
151
+ 00000000000001f1: 01 popq %rbp
152
+ 00000000000001f2: 01 retq
153
+ 00000000000001f3: 05 movl $8, %edi
154
+ 00000000000001f8: 05 callq 0x403690 <__cxa_allocate_exception@plt>
155
+ 00000000000001fd: 07 movq $4430784, (%rax)
156
+ 0000000000000204: 05 movl $4430744, %esi
157
+ 0000000000000209: 05 movl $4208976, %edx
158
+ 000000000000020e: 03 movq %rax, %rdi
159
+ 0000000000000211: 05 callq 0x403740 <__cxa_throw@plt>
160
+ 0000000000000216: 03 movq %rax, %r15
161
+ 0000000000000219: 02 jmp 0x409852 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x242>
162
+ 000000000000021b: 02 jmp 0x40982d <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x21d>
163
+ 000000000000021d: 03 movq %rax, %r15
164
+ 0000000000000220: 03 cmpl $1, %ebx
165
+ 0000000000000223: 02 je 0x409852 <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x242>
166
+ 0000000000000225: 05 movq 16(%rsp), %rbp
167
+ 000000000000022a: 04 addq $32, %rbp
168
+ 000000000000022e: 04 movq (%rbp), %rax
169
+ 0000000000000232: 03 movq %rbp, %rdi
170
+ 0000000000000235: 02 callq *(%rax)
171
+ 0000000000000237: 04 addq $64, %rbp
172
+ 000000000000023b: 02 decl %ebx
173
+ 000000000000023d: 03 cmpl $1, %ebx
174
+ 0000000000000240: 02 jg 0x40983e <BloombergLP::bdlcc::ObjectPool<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> >, bsl::function<void (void*, BloombergLP::bslma::Allocator*)>, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<BloombergLP::bdlcc::SharedObjectPool_Rep<(anonymous namespace)::SpLink, BloombergLP::bdlcc::ObjectPoolFunctors::Reset<(anonymous namespace)::SpLink> > > >::getObject()+0x22e>
175
+ 0000000000000242: 03 movq %r14, %rdi
176
+ 0000000000000245: 05 callq 0x403b00 <pthread_mutex_unlock@plt>
177
+ 000000000000024a: 03 movq %r15, %rdi
178
+ 000000000000024d: 05 callq 0x403ab0 <_Unwind_Resume@plt>
179
+ 0000000000000252: 10 nopw %cs:(%rax,%rax)
180
+ 000000000000025c: 04 nopl (%rax)