|
@@ -1,107 +1,113 @@
|
|
| 1 |
-
|
| 2 |
0000000000000000: 01 pushq %rbp
|
| 3 |
0000000000000001: 02 pushq %r15
|
| 4 |
0000000000000003: 02 pushq %r14
|
| 5 |
0000000000000005: 01 pushq %rbx
|
| 6 |
0000000000000006: 04 subq $72, %rsp
|
| 7 |
000000000000000a: 03 movq %rdx, %r14
|
| 8 |
000000000000000d: 03 movq %rsi, %rbp
|
| 9 |
0000000000000010: 03 movq %rdi, %r15
|
| 10 |
-
0000000000000013: 03
|
| 11 |
-
0000000000000016:
|
| 12 |
-
|
| 13 |
-
|
| 14 |
-
|
| 15 |
-
0000000000000024:
|
| 16 |
-
|
| 17 |
-
|
| 18 |
-
|
| 19 |
-
|
| 20 |
-
|
| 21 |
-
|
| 22 |
-
|
| 23 |
-
|
| 24 |
-
|
| 25 |
-
|
| 26 |
-
|
| 27 |
-
|
| 28 |
-
|
| 29 |
-
|
| 30 |
-
|
| 31 |
-
|
| 32 |
-
000000000000006f: 05 movl $
|
| 33 |
-
0000000000000074:
|
| 34 |
-
|
| 35 |
-
|
| 36 |
-
|
| 37 |
-
|
| 38 |
-
|
| 39 |
-
|
| 40 |
-
|
| 41 |
-
|
| 42 |
-
|
| 43 |
-
|
| 44 |
-
|
| 45 |
-
|
| 46 |
-
00000000000000a2:
|
| 47 |
-
|
| 48 |
-
00000000000000a8: 04 movq 72(%rbx), %rdi
|
| 49 |
00000000000000ac: 03 movq (%rdi), %rax
|
| 50 |
00000000000000af: 03 callq *24(%rax)
|
| 51 |
-
00000000000000b2:
|
| 52 |
-
|
| 53 |
-
|
| 54 |
-
|
| 55 |
-
|
| 56 |
-
|
| 57 |
-
|
| 58 |
-
|
| 59 |
-
|
| 60 |
-
|
| 61 |
-
|
| 62 |
-
|
| 63 |
-
|
| 64 |
-
|
| 65 |
-
|
| 66 |
-
|
| 67 |
-
|
| 68 |
-
|
| 69 |
-
|
| 70 |
-
|
| 71 |
-
|
| 72 |
-
|
| 73 |
-
|
| 74 |
-
|
| 75 |
-
|
| 76 |
-
|
| 77 |
-
|
| 78 |
-
|
| 79 |
-
|
| 80 |
-
|
| 81 |
-
|
| 82 |
-
|
| 83 |
-
|
| 84 |
-
|
| 85 |
-
|
| 86 |
-
|
| 87 |
-
|
| 88 |
-
|
| 89 |
-
|
| 90 |
-
|
| 91 |
-
|
| 92 |
-
|
| 93 |
-
|
| 94 |
-
|
| 95 |
-
0000000000000149:
|
| 96 |
-
|
| 97 |
-
|
| 98 |
-
|
| 99 |
-
|
| 100 |
-
|
| 101 |
-
|
| 102 |
-
|
| 103 |
-
|
| 104 |
-
|
| 105 |
-
|
| 106 |
-
|
| 107 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
0000000000493740 <int BloombergLP::bslmt::ThreadUtil::createWithAllocator<USAGE_EXAMPLE_2::WorkerFunctor>(unsigned long*, USAGE_EXAMPLE_2::WorkerFunctor const&, BloombergLP::bslma::Allocator*)>:
|
| 2 |
0000000000000000: 01 pushq %rbp
|
| 3 |
0000000000000001: 02 pushq %r15
|
| 4 |
0000000000000003: 02 pushq %r14
|
| 5 |
0000000000000005: 01 pushq %rbx
|
| 6 |
0000000000000006: 04 subq $72, %rsp
|
| 7 |
000000000000000a: 03 movq %rdx, %r14
|
| 8 |
000000000000000d: 03 movq %rsi, %rbp
|
| 9 |
0000000000000010: 03 movq %rdi, %r15
|
| 10 |
+
0000000000000013: 03 testq %rdx, %rdx
|
| 11 |
+
0000000000000016: 02 jne 0x49376c <int BloombergLP::bslmt::ThreadUtil::createWithAllocator<USAGE_EXAMPLE_2::WorkerFunctor>(unsigned long*, USAGE_EXAMPLE_2::WorkerFunctor const&, BloombergLP::bslma::Allocator*)+0x2c>
|
| 12 |
+
0000000000000018: 07 movq 2698689(%rip), %r14 # 726520 <BloombergLP::bslma::Default::s_defaultAllocator>
|
| 13 |
+
000000000000001f: 03 testq %r14, %r14
|
| 14 |
+
0000000000000022: 02 jne 0x49376c <int BloombergLP::bslmt::ThreadUtil::createWithAllocator<USAGE_EXAMPLE_2::WorkerFunctor>(unsigned long*, USAGE_EXAMPLE_2::WorkerFunctor const&, BloombergLP::bslma::Allocator*)+0x2c>
|
| 15 |
+
0000000000000024: 05 callq 0x4bd7f0 <BloombergLP::bslma::Default::determineAndReturnDefaultAllocator()>
|
| 16 |
+
0000000000000029: 03 movq %rax, %r14
|
| 17 |
+
000000000000002c: 03 movq (%r14), %rax
|
| 18 |
+
000000000000002f: 05 movl $80, %esi
|
| 19 |
+
0000000000000034: 03 movq %r14, %rdi
|
| 20 |
+
0000000000000037: 03 callq *16(%rax)
|
| 21 |
+
000000000000003a: 03 movq %rax, %rbx
|
| 22 |
+
000000000000003d: 07 movq $4798672, (%rax)
|
| 23 |
+
0000000000000044: 04 movups (%rbp), %xmm0
|
| 24 |
+
0000000000000048: 04 movups %xmm0, 8(%rax)
|
| 25 |
+
000000000000004c: 04 movq 16(%rbp), %rax
|
| 26 |
+
0000000000000050: 04 movq %rax, 24(%rbx)
|
| 27 |
+
0000000000000054: 04 leaq 32(%rbx), %rdi
|
| 28 |
+
0000000000000058: 08 movq $0, 32(%rbx)
|
| 29 |
+
0000000000000060: 04 movq %r14, 72(%rbx)
|
| 30 |
+
0000000000000064: 07 movaps 340565(%rip), %xmm0 # 4e6a00 <MULTI_THREADED_TRY_PUSH::nullItem+0x150>
|
| 31 |
+
000000000000006b: 04 movups %xmm0, 56(%rbx)
|
| 32 |
+
000000000000006f: 05 movl $5150746, %ecx
|
| 33 |
+
0000000000000074: 02 xorl %esi, %esi
|
| 34 |
+
0000000000000076: 02 xorl %edx, %edx
|
| 35 |
+
0000000000000078: 05 callq 0x4c35b0 <bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >::privateAppend(char const*, unsigned long, char const*)>
|
| 36 |
+
000000000000007d: 03 movq %rsp, %rdi
|
| 37 |
+
0000000000000080: 05 callq 0x4beeb0 <BloombergLP::bslmt::ThreadAttributes::ThreadAttributes()>
|
| 38 |
+
0000000000000085: 03 movq %rsp, %rsi
|
| 39 |
+
0000000000000088: 05 movl $4975120, %edx
|
| 40 |
+
000000000000008d: 03 movq %r15, %rdi
|
| 41 |
+
0000000000000090: 03 movq %rbx, %rcx
|
| 42 |
+
0000000000000093: 05 callq 0x4bf3a0 <BloombergLP::bslmt::ThreadUtilImpl<BloombergLP::bslmt::Platform::PosixThreads>::create(unsigned long*, BloombergLP::bslmt::ThreadAttributes const&, void* (*)(void*), void*)>
|
| 43 |
+
0000000000000098: 02 movl %eax, %ebp
|
| 44 |
+
000000000000009a: 06 cmpq $23, 56(%rsp)
|
| 45 |
+
00000000000000a0: 02 je 0x4937f2 <int BloombergLP::bslmt::ThreadUtil::createWithAllocator<USAGE_EXAMPLE_2::WorkerFunctor>(unsigned long*, USAGE_EXAMPLE_2::WorkerFunctor const&, BloombergLP::bslma::Allocator*)+0xb2>
|
| 46 |
+
00000000000000a2: 05 movq 24(%rsp), %rsi
|
| 47 |
+
00000000000000a7: 05 movq 64(%rsp), %rdi
|
|
|
|
| 48 |
00000000000000ac: 03 movq (%rdi), %rax
|
| 49 |
00000000000000af: 03 callq *24(%rax)
|
| 50 |
+
00000000000000b2: 02 testl %ebp, %ebp
|
| 51 |
+
00000000000000b4: 02 je 0x49381f <int BloombergLP::bslmt::ThreadUtil::createWithAllocator<USAGE_EXAMPLE_2::WorkerFunctor>(unsigned long*, USAGE_EXAMPLE_2::WorkerFunctor const&, BloombergLP::bslma::Allocator*)+0xdf>
|
| 52 |
+
00000000000000b6: 05 cmpq $23, 64(%rbx)
|
| 53 |
+
00000000000000bb: 02 je 0x49380b <int BloombergLP::bslmt::ThreadUtil::createWithAllocator<USAGE_EXAMPLE_2::WorkerFunctor>(unsigned long*, USAGE_EXAMPLE_2::WorkerFunctor const&, BloombergLP::bslma::Allocator*)+0xcb>
|
| 54 |
+
00000000000000bd: 04 movq 32(%rbx), %rsi
|
| 55 |
+
00000000000000c1: 04 movq 72(%rbx), %rdi
|
| 56 |
+
00000000000000c5: 03 movq (%rdi), %rax
|
| 57 |
+
00000000000000c8: 03 callq *24(%rax)
|
| 58 |
+
00000000000000cb: 08 movq $-1, 56(%rbx)
|
| 59 |
+
00000000000000d3: 03 movq (%r14), %rax
|
| 60 |
+
00000000000000d6: 03 movq %r14, %rdi
|
| 61 |
+
00000000000000d9: 03 movq %rbx, %rsi
|
| 62 |
+
00000000000000dc: 03 callq *24(%rax)
|
| 63 |
+
00000000000000df: 02 movl %ebp, %eax
|
| 64 |
+
00000000000000e1: 04 addq $72, %rsp
|
| 65 |
+
00000000000000e5: 01 popq %rbx
|
| 66 |
+
00000000000000e6: 02 popq %r14
|
| 67 |
+
00000000000000e8: 02 popq %r15
|
| 68 |
+
00000000000000ea: 01 popq %rbp
|
| 69 |
+
00000000000000eb: 01 retq
|
| 70 |
+
00000000000000ec: 03 movq %rax, %rdi
|
| 71 |
+
00000000000000ef: 05 callq 0x433ef0 <__clang_call_terminate>
|
| 72 |
+
00000000000000f4: 03 movq %rax, %rdi
|
| 73 |
+
00000000000000f7: 05 callq 0x433ef0 <__clang_call_terminate>
|
| 74 |
+
00000000000000fc: 03 movq %rax, %rdi
|
| 75 |
+
00000000000000ff: 05 callq 0x433ef0 <__clang_call_terminate>
|
| 76 |
+
0000000000000104: 03 movq %rax, %r15
|
| 77 |
+
0000000000000107: 06 cmpq $23, 56(%rsp)
|
| 78 |
+
000000000000010d: 02 je 0x49386c <int BloombergLP::bslmt::ThreadUtil::createWithAllocator<USAGE_EXAMPLE_2::WorkerFunctor>(unsigned long*, USAGE_EXAMPLE_2::WorkerFunctor const&, BloombergLP::bslma::Allocator*)+0x12c>
|
| 79 |
+
000000000000010f: 05 movq 24(%rsp), %rsi
|
| 80 |
+
0000000000000114: 05 movq 64(%rsp), %rdi
|
| 81 |
+
0000000000000119: 03 movq (%rdi), %rax
|
| 82 |
+
000000000000011c: 03 callq *24(%rax)
|
| 83 |
+
000000000000011f: 02 jmp 0x49386c <int BloombergLP::bslmt::ThreadUtil::createWithAllocator<USAGE_EXAMPLE_2::WorkerFunctor>(unsigned long*, USAGE_EXAMPLE_2::WorkerFunctor const&, BloombergLP::bslma::Allocator*)+0x12c>
|
| 84 |
+
0000000000000121: 03 movq %rax, %rdi
|
| 85 |
+
0000000000000124: 05 callq 0x433ef0 <__clang_call_terminate>
|
| 86 |
+
0000000000000129: 03 movq %rax, %r15
|
| 87 |
+
000000000000012c: 05 cmpq $23, 64(%rbx)
|
| 88 |
+
0000000000000131: 02 je 0x493881 <int BloombergLP::bslmt::ThreadUtil::createWithAllocator<USAGE_EXAMPLE_2::WorkerFunctor>(unsigned long*, USAGE_EXAMPLE_2::WorkerFunctor const&, BloombergLP::bslma::Allocator*)+0x141>
|
| 89 |
+
0000000000000133: 04 movq 32(%rbx), %rsi
|
| 90 |
+
0000000000000137: 04 movq 72(%rbx), %rdi
|
| 91 |
+
000000000000013b: 03 movq (%rdi), %rax
|
| 92 |
+
000000000000013e: 03 callq *24(%rax)
|
| 93 |
+
0000000000000141: 08 movq $-1, 56(%rbx)
|
| 94 |
+
0000000000000149: 03 movq (%r14), %rax
|
| 95 |
+
000000000000014c: 03 movq %r14, %rdi
|
| 96 |
+
000000000000014f: 03 movq %rbx, %rsi
|
| 97 |
+
0000000000000152: 03 callq *24(%rax)
|
| 98 |
+
0000000000000155: 02 jmp 0x4938be <int BloombergLP::bslmt::ThreadUtil::createWithAllocator<USAGE_EXAMPLE_2::WorkerFunctor>(unsigned long*, USAGE_EXAMPLE_2::WorkerFunctor const&, BloombergLP::bslma::Allocator*)+0x17e>
|
| 99 |
+
0000000000000157: 03 movq %rax, %rdi
|
| 100 |
+
000000000000015a: 05 callq 0x433ef0 <__clang_call_terminate>
|
| 101 |
+
000000000000015f: 03 movq %rax, %rdi
|
| 102 |
+
0000000000000162: 05 callq 0x433ef0 <__clang_call_terminate>
|
| 103 |
+
0000000000000167: 03 movq %rax, %r15
|
| 104 |
+
000000000000016a: 08 movq $0, 56(%rbx)
|
| 105 |
+
0000000000000172: 03 movq (%r14), %rax
|
| 106 |
+
0000000000000175: 03 movq %r14, %rdi
|
| 107 |
+
0000000000000178: 03 movq %rbx, %rsi
|
| 108 |
+
000000000000017b: 03 callq *24(%rax)
|
| 109 |
+
000000000000017e: 03 movq %r15, %rdi
|
| 110 |
+
0000000000000181: 05 callq 0x404850 <_Unwind_Resume@plt>
|
| 111 |
+
0000000000000186: 03 movq %rax, %rdi
|
| 112 |
+
0000000000000189: 05 callq 0x433ef0 <__clang_call_terminate>
|
| 113 |
+
000000000000018e: 02 nop
|