|
@@ -1,138 +1,140 @@
|
|
| 1 |
-
|
| 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 $88, %rsp
|
| 9 |
000000000000000e: 03 movq %rdi, %r12
|
| 10 |
0000000000000011: 04 movq 80(%rdi), %rax
|
| 11 |
0000000000000015: 04 movq 96(%rdi), %rcx
|
| 12 |
0000000000000019: 05 movq %rcx, 8(%rsp)
|
| 13 |
000000000000001e: 03 testq %rax, %rax
|
| 14 |
-
0000000000000021: 02 je
|
| 15 |
0000000000000023: 06 cmpq $23, 88(%r12)
|
| 16 |
-
0000000000000029: 02 je
|
| 17 |
000000000000002b: 05 movq 56(%r12), %rcx
|
| 18 |
-
0000000000000030: 02 jmp
|
| 19 |
0000000000000032: 05 leaq 56(%r12), %rcx
|
| 20 |
0000000000000037: 05 movq %rcx, 16(%rsp)
|
| 21 |
000000000000003c: 05 movq %rax, 24(%rsp)
|
| 22 |
0000000000000041: 05 leaq 16(%rsp), %rdi
|
| 23 |
-
0000000000000046: 05 callq
|
| 24 |
000000000000004b: 05 movq 40(%r12), %rdi
|
| 25 |
0000000000000050: 05 callq 0x403cf0 <pthread_mutex_lock@plt>
|
| 26 |
0000000000000055: 05 movq 40(%r12), %rdi
|
| 27 |
000000000000005a: 05 callq 0x403dc0 <pthread_mutex_unlock@plt>
|
| 28 |
000000000000005f: 05 movq 8(%r12), %rbx
|
| 29 |
0000000000000064: 05 leaq 16(%rsp), %rdi
|
| 30 |
-
0000000000000069: 05 callq
|
| 31 |
000000000000006e: 05 leaq 16(%r12), %r15
|
| 32 |
0000000000000073: 05 leaq 16(%rsp), %rdx
|
| 33 |
0000000000000078: 03 movq %rbx, %rdi
|
| 34 |
000000000000007b: 03 movq %r15, %rsi
|
| 35 |
000000000000007e: 05 callq 0x406660 <int BloombergLP::bslmt::ThreadGroup::addThread<(anonymous namespace)::u::MutexTestJob>((anonymous namespace)::u::MutexTestJob const&, BloombergLP::bslmt::ThreadAttributes const&)>
|
| 36 |
0000000000000083: 06 cmpq $23, 72(%rsp)
|
| 37 |
-
0000000000000089: 02 je
|
| 38 |
000000000000008b: 05 movq 40(%rsp), %rsi
|
| 39 |
0000000000000090: 05 movq 80(%rsp), %rdi
|
| 40 |
0000000000000095: 03 movq (%rdi), %rax
|
| 41 |
0000000000000098: 03 callq *24(%rax)
|
| 42 |
000000000000009b: 05 movq 8(%r12), %rbx
|
| 43 |
00000000000000a0: 05 movl 48(%r12), %ebp
|
| 44 |
00000000000000a5: 05 leaq 16(%rsp), %rdi
|
| 45 |
-
00000000000000aa: 05 callq
|
| 46 |
-
00000000000000af:
|
| 47 |
-
|
| 48 |
-
|
| 49 |
-
|
| 50 |
-
|
| 51 |
-
|
| 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 |
-
0000000000000141: 03 movq %rax, %rdi
|
| 91 |
-
0000000000000144: 05 callq 0x4076b0 <__clang_call_terminate>
|
| 92 |
0000000000000149: 03 movq %rax, %rdi
|
| 93 |
-
000000000000014c: 05 callq
|
| 94 |
0000000000000151: 03 movq %rax, %rdi
|
| 95 |
-
0000000000000154: 05 callq
|
| 96 |
-
0000000000000159:
|
| 97 |
-
|
| 98 |
-
|
| 99 |
-
0000000000000164:
|
| 100 |
-
|
| 101 |
-
000000000000016b:
|
| 102 |
-
|
| 103 |
-
|
| 104 |
-
0000000000000176:
|
| 105 |
-
|
| 106 |
-
|
| 107 |
-
|
| 108 |
-
|
| 109 |
-
|
| 110 |
-
|
| 111 |
-
|
| 112 |
-
|
| 113 |
-
0000000000000195:
|
| 114 |
-
|
| 115 |
-
|
| 116 |
-
00000000000001a0:
|
| 117 |
-
|
| 118 |
-
|
| 119 |
-
|
| 120 |
-
|
| 121 |
-
|
| 122 |
-
|
| 123 |
-
|
| 124 |
-
00000000000001bd:
|
| 125 |
-
|
| 126 |
-
|
| 127 |
-
|
| 128 |
-
|
| 129 |
-
|
| 130 |
-
|
| 131 |
-
|
| 132 |
-
|
| 133 |
-
00000000000001e4: 03 movq %
|
| 134 |
-
00000000000001e7: 05 callq
|
| 135 |
00000000000001ec: 03 movq %rax, %rdi
|
| 136 |
-
00000000000001ef: 05 callq
|
|
|
|
|
|
|
|
|
|
|
|
|
| 137 |
-
|
| 138 |
-
|
| 1 |
+
00000000004071f0 <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)>:
|
| 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 $88, %rsp
|
| 9 |
000000000000000e: 03 movq %rdi, %r12
|
| 10 |
0000000000000011: 04 movq 80(%rdi), %rax
|
| 11 |
0000000000000015: 04 movq 96(%rdi), %rcx
|
| 12 |
0000000000000019: 05 movq %rcx, 8(%rsp)
|
| 13 |
000000000000001e: 03 testq %rax, %rax
|
| 14 |
+
0000000000000021: 02 je 0x40723b <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0x4b>
|
| 15 |
0000000000000023: 06 cmpq $23, 88(%r12)
|
| 16 |
+
0000000000000029: 02 je 0x407222 <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0x32>
|
| 17 |
000000000000002b: 05 movq 56(%r12), %rcx
|
| 18 |
+
0000000000000030: 02 jmp 0x407227 <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0x37>
|
| 19 |
0000000000000032: 05 leaq 56(%r12), %rcx
|
| 20 |
0000000000000037: 05 movq %rcx, 16(%rsp)
|
| 21 |
000000000000003c: 05 movq %rax, 24(%rsp)
|
| 22 |
0000000000000041: 05 leaq 16(%rsp), %rdi
|
| 23 |
+
0000000000000046: 05 callq 0x408620 <BloombergLP::bslmt::ThreadUtilImpl<BloombergLP::bslmt::Platform::PosixThreads>::setThreadName(BloombergLP::bslstl::StringRefImp<char> const&)>
|
| 24 |
000000000000004b: 05 movq 40(%r12), %rdi
|
| 25 |
0000000000000050: 05 callq 0x403cf0 <pthread_mutex_lock@plt>
|
| 26 |
0000000000000055: 05 movq 40(%r12), %rdi
|
| 27 |
000000000000005a: 05 callq 0x403dc0 <pthread_mutex_unlock@plt>
|
| 28 |
000000000000005f: 05 movq 8(%r12), %rbx
|
| 29 |
0000000000000064: 05 leaq 16(%rsp), %rdi
|
| 30 |
+
0000000000000069: 05 callq 0x407d50 <BloombergLP::bslmt::ThreadAttributes::ThreadAttributes()>
|
| 31 |
000000000000006e: 05 leaq 16(%r12), %r15
|
| 32 |
0000000000000073: 05 leaq 16(%rsp), %rdx
|
| 33 |
0000000000000078: 03 movq %rbx, %rdi
|
| 34 |
000000000000007b: 03 movq %r15, %rsi
|
| 35 |
000000000000007e: 05 callq 0x406660 <int BloombergLP::bslmt::ThreadGroup::addThread<(anonymous namespace)::u::MutexTestJob>((anonymous namespace)::u::MutexTestJob const&, BloombergLP::bslmt::ThreadAttributes const&)>
|
| 36 |
0000000000000083: 06 cmpq $23, 72(%rsp)
|
| 37 |
+
0000000000000089: 02 je 0x40728b <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0x9b>
|
| 38 |
000000000000008b: 05 movq 40(%rsp), %rsi
|
| 39 |
0000000000000090: 05 movq 80(%rsp), %rdi
|
| 40 |
0000000000000095: 03 movq (%rdi), %rax
|
| 41 |
0000000000000098: 03 callq *24(%rax)
|
| 42 |
000000000000009b: 05 movq 8(%r12), %rbx
|
| 43 |
00000000000000a0: 05 movl 48(%r12), %ebp
|
| 44 |
00000000000000a5: 05 leaq 16(%rsp), %rdi
|
| 45 |
+
00000000000000aa: 05 callq 0x407d50 <BloombergLP::bslmt::ThreadAttributes::ThreadAttributes()>
|
| 46 |
+
00000000000000af: 03 cmpl $2, %ebp
|
| 47 |
+
00000000000000b2: 02 jl 0x4072de <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0xee>
|
| 48 |
+
00000000000000b4: 02 decl %ebp
|
| 49 |
+
00000000000000b6: 06 movl $1, %r14d
|
| 50 |
+
00000000000000bc: 05 leaq 16(%rsp), %r13
|
| 51 |
+
00000000000000c1: 10 nopw %cs:(%rax,%rax)
|
| 52 |
+
00000000000000cb: 05 nopl (%rax,%rax)
|
| 53 |
+
00000000000000d0: 03 movq %rbx, %rdi
|
| 54 |
+
00000000000000d3: 03 movq %r15, %rsi
|
| 55 |
+
00000000000000d6: 03 movq %r13, %rdx
|
| 56 |
+
00000000000000d9: 05 callq 0x406660 <int BloombergLP::bslmt::ThreadGroup::addThread<(anonymous namespace)::u::MutexTestJob>((anonymous namespace)::u::MutexTestJob const&, BloombergLP::bslmt::ThreadAttributes const&)>
|
| 57 |
+
00000000000000de: 02 testl %eax, %eax
|
| 58 |
+
00000000000000e0: 02 jne 0x4072de <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0xee>
|
| 59 |
+
00000000000000e2: 04 leal 1(%r14), %eax
|
| 60 |
+
00000000000000e6: 03 cmpl %ebp, %r14d
|
| 61 |
+
00000000000000e9: 03 movl %eax, %r14d
|
| 62 |
+
00000000000000ec: 02 jl 0x4072c0 <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0xd0>
|
| 63 |
+
00000000000000ee: 06 cmpq $23, 72(%rsp)
|
| 64 |
+
00000000000000f4: 02 je 0x4072f6 <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0x106>
|
| 65 |
+
00000000000000f6: 05 movq 40(%rsp), %rsi
|
| 66 |
+
00000000000000fb: 05 movq 80(%rsp), %rdi
|
| 67 |
+
0000000000000100: 03 movq (%rdi), %rax
|
| 68 |
+
0000000000000103: 03 callq *24(%rax)
|
| 69 |
+
0000000000000106: 03 testq %r12, %r12
|
| 70 |
+
0000000000000109: 02 je 0x40732a <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0x13a>
|
| 71 |
+
000000000000010b: 06 cmpq $23, 88(%r12)
|
| 72 |
+
0000000000000111: 02 je 0x407313 <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0x123>
|
| 73 |
+
0000000000000113: 05 movq 56(%r12), %rsi
|
| 74 |
+
0000000000000118: 05 movq 96(%r12), %rdi
|
| 75 |
+
000000000000011d: 03 movq (%rdi), %rax
|
| 76 |
+
0000000000000120: 03 callq *24(%rax)
|
| 77 |
+
0000000000000123: 09 movq $-1, 80(%r12)
|
| 78 |
+
000000000000012c: 05 movq 8(%rsp), %rdi
|
| 79 |
+
0000000000000131: 03 movq (%rdi), %rax
|
| 80 |
+
0000000000000134: 03 movq %r12, %rsi
|
| 81 |
+
0000000000000137: 03 callq *24(%rax)
|
| 82 |
+
000000000000013a: 04 addq $88, %rsp
|
| 83 |
+
000000000000013e: 01 popq %rbx
|
| 84 |
+
000000000000013f: 02 popq %r12
|
| 85 |
+
0000000000000141: 02 popq %r13
|
| 86 |
+
0000000000000143: 02 popq %r14
|
| 87 |
+
0000000000000145: 02 popq %r15
|
| 88 |
+
0000000000000147: 01 popq %rbp
|
| 89 |
+
0000000000000148: 01 retq
|
|
|
|
|
|
|
| 90 |
0000000000000149: 03 movq %rax, %rdi
|
| 91 |
+
000000000000014c: 05 callq 0x407730 <__clang_call_terminate>
|
| 92 |
0000000000000151: 03 movq %rax, %rdi
|
| 93 |
+
0000000000000154: 05 callq 0x407730 <__clang_call_terminate>
|
| 94 |
+
0000000000000159: 03 movq %rax, %rdi
|
| 95 |
+
000000000000015c: 05 callq 0x407730 <__clang_call_terminate>
|
| 96 |
+
0000000000000161: 03 movq %rax, %rdi
|
| 97 |
+
0000000000000164: 05 callq 0x407730 <__clang_call_terminate>
|
| 98 |
+
0000000000000169: 02 jmp 0x407380 <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0x190>
|
| 99 |
+
000000000000016b: 03 movq %rax, %r15
|
| 100 |
+
000000000000016e: 06 cmpq $23, 72(%rsp)
|
| 101 |
+
0000000000000174: 02 je 0x4073a5 <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0x1b5>
|
| 102 |
+
0000000000000176: 05 movq 40(%rsp), %rsi
|
| 103 |
+
000000000000017b: 05 movq 80(%rsp), %rdi
|
| 104 |
+
0000000000000180: 03 movq (%rdi), %rax
|
| 105 |
+
0000000000000183: 03 callq *24(%rax)
|
| 106 |
+
0000000000000186: 02 jmp 0x4073a5 <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0x1b5>
|
| 107 |
+
0000000000000188: 03 movq %rax, %rdi
|
| 108 |
+
000000000000018b: 05 callq 0x407730 <__clang_call_terminate>
|
| 109 |
+
0000000000000190: 03 movq %rax, %r15
|
| 110 |
+
0000000000000193: 02 jmp 0x4073a5 <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0x1b5>
|
| 111 |
+
0000000000000195: 03 movq %rax, %r15
|
| 112 |
+
0000000000000198: 06 cmpq $23, 72(%rsp)
|
| 113 |
+
000000000000019e: 02 je 0x4073a0 <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0x1b0>
|
| 114 |
+
00000000000001a0: 05 movq 40(%rsp), %rsi
|
| 115 |
+
00000000000001a5: 05 movq 80(%rsp), %rdi
|
| 116 |
+
00000000000001aa: 03 movq (%rdi), %rax
|
| 117 |
+
00000000000001ad: 03 callq *24(%rax)
|
| 118 |
+
00000000000001b0: 03 testq %r12, %r12
|
| 119 |
+
00000000000001b3: 02 je 0x4073d4 <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0x1e4>
|
| 120 |
+
00000000000001b5: 06 cmpq $23, 88(%r12)
|
| 121 |
+
00000000000001bb: 02 je 0x4073bd <BloombergLP::bslmt::EntryPointFunctorAdapter<(anonymous namespace)::u::SynchronizedAddJob>::invokerFunction(void*)+0x1cd>
|
| 122 |
+
00000000000001bd: 05 movq 56(%r12), %rsi
|
| 123 |
+
00000000000001c2: 05 movq 96(%r12), %rdi
|
| 124 |
+
00000000000001c7: 03 movq (%rdi), %rax
|
| 125 |
+
00000000000001ca: 03 callq *24(%rax)
|
| 126 |
+
00000000000001cd: 09 movq $-1, 80(%r12)
|
| 127 |
+
00000000000001d6: 05 movq 8(%rsp), %rdi
|
| 128 |
+
00000000000001db: 03 movq (%rdi), %rax
|
| 129 |
+
00000000000001de: 03 movq %r12, %rsi
|
| 130 |
+
00000000000001e1: 03 callq *24(%rax)
|
| 131 |
+
00000000000001e4: 03 movq %r15, %rdi
|
| 132 |
+
00000000000001e7: 05 callq 0x403d70 <_Unwind_Resume@plt>
|
| 133 |
00000000000001ec: 03 movq %rax, %rdi
|
| 134 |
+
00000000000001ef: 05 callq 0x407730 <__clang_call_terminate>
|
| 135 |
+
00000000000001f4: 03 movq %rax, %rdi
|
| 136 |
+
00000000000001f7: 05 callq 0x407730 <__clang_call_terminate>
|
| 137 |
+
00000000000001fc: 03 movq %rax, %rdi
|
| 138 |
+
00000000000001ff: 05 callq 0x407730 <__clang_call_terminate>
|
| 139 |
+
0000000000000204: 10 nopw %cs:(%rax,%rax)
|
| 140 |
+
000000000000020e: 02 nop
|