0000000000426810 <void BloombergLP::bdlmt::EventScheduler::scheduleEventRaw<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l> > >(BloombergLP::bdlmt::EventScheduler::Event**, std::__1::chrono::time_point<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l> > > const&, bsl::function<void ()> const&)>:
M0000000000000000: pushq %r15 ; 2 bytes
M0000000000000002: pushq %r14 ; 2 bytes
M0000000000000004: pushq %r12 ; 2 bytes
M0000000000000006: pushq %rbx ; 1 bytes
M0000000000000007: subq $264, %rsp ; 7 bytes
M000000000000000e: movq %rcx, %r15 ; 3 bytes
M0000000000000011: movq %rsi, %r14 ; 3 bytes
M0000000000000014: movq %rdi, %r12 ; 3 bytes
M0000000000000017: cmpl $0, 588(%rdi) ; 7 bytes
M000000000000001e: je 0x426937 <void BloombergLP::bdlmt::EventScheduler::scheduleEventRaw<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l> > >(BloombergLP::bdlmt::EventScheduler::Event**, std::__1::chrono::time_point<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l> > > const&, bsl::function<void ()> const&)+0x127> ; 6 bytes
M0000000000000024: movq (%rdx), %rbx ; 3 bytes
M0000000000000027: movq %rbx, 8(%rsp) ; 5 bytes
M000000000000002c: movq 2600517(%rip), %rax # 6a1688 <BloombergLP::bslma::Default::s_defaultAllocator> ; 7 bytes
M0000000000000033: testq %rax, %rax ; 3 bytes
M0000000000000036: jne 0x42684d <void BloombergLP::bdlmt::EventScheduler::scheduleEventRaw<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l> > >(BloombergLP::bdlmt::EventScheduler::Event**, std::__1::chrono::time_point<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l> > > const&, bsl::function<void ()> const&)+0x3d> ; 2 bytes
M0000000000000038: callq 0x438150 <BloombergLP::bslma::Default::determineAndReturnDefaultAllocator()> ; 5 bytes
M000000000000003d: movq %rax, 64(%rsp) ; 5 bytes
M0000000000000042: xorps %xmm0, %xmm0 ; 3 bytes
M0000000000000045: movups %xmm0, 72(%rsp) ; 5 bytes
M000000000000004a: leaq 16(%rsp), %rdi ; 5 bytes
M000000000000004f: movl $16, %esi ; 5 bytes
M0000000000000054: callq 0x43bd60 <BloombergLP::bslstl::Function_Rep::allocateBuf(unsigned long)> ; 5 bytes
M0000000000000059: movq $4372048, 72(%rsp) ; 9 bytes
M0000000000000062: movq $4365600, 16(%rsp) ; 9 bytes
M000000000000006b: movq %rbx, 24(%rsp) ; 5 bytes
M0000000000000070: movq $4372032, 80(%rsp) ; 9 bytes
M0000000000000079: leaq 96(%rsp), %rdi ; 5 bytes
M000000000000007e: leaq 16(%rsp), %rdx ; 5 bytes
M0000000000000083: movq %r15, %rsi ; 3 bytes
M0000000000000086: callq 0x4283e0 <BloombergLP::bdlmt::EventScheduler::EventData::EventData(bsl::function<void ()> const&, bsl::function<long long ()> const&)> ; 5 bytes
M000000000000008b: leaq 80(%r12), %r15 ; 5 bytes
M0000000000000090: movq %r15, %rdi ; 3 bytes
M0000000000000093: callq 0x435eb0 <BloombergLP::bdlcc::SkipList_RandomLevelGenerator::randomLevel()> ; 5 bytes
M0000000000000098: leaq 8(%rsp), %rdx ; 5 bytes
M000000000000009d: leaq 96(%rsp), %rcx ; 5 bytes
M00000000000000a2: movq %r15, %rdi ; 3 bytes
M00000000000000a5: movl %eax, %esi ; 2 bytes
M00000000000000a7: callq 0x42b300 <BloombergLP::bdlcc::SkipList<long long, BloombergLP::bdlmt::EventScheduler::EventData>::allocateNode(int, long long const&, BloombergLP::bdlmt::EventScheduler::EventData const&)> ; 5 bytes
M00000000000000ac: movq %rax, %rbx ; 3 bytes
M00000000000000af: movq %rax, %rdi ; 3 bytes
M00000000000000b2: callq 0x435e40 <BloombergLP::bdlcc::SkipList_Control::incrementRefCount()> ; 5 bytes
M00000000000000b7: movq %rbx, (%r14) ; 3 bytes
M00000000000000ba: leaq 7(%rsp), %rsi ; 5 bytes
M00000000000000bf: movq %r15, %rdi ; 3 bytes
M00000000000000c2: movq %rbx, %rdx ; 3 bytes
M00000000000000c5: movl $1, %ecx ; 5 bytes
M00000000000000ca: callq 0x42b420 <BloombergLP::bdlcc::SkipList<long long, BloombergLP::bdlmt::EventScheduler::EventData>::addNodeImpR(bool*, BloombergLP::bdlcc::SkipList_Node<long long, BloombergLP::bdlmt::EventScheduler::EventData>*, bool)> ; 5 bytes
M00000000000000cf: leaq 176(%rsp), %rdi ; 8 bytes
M00000000000000d7: callq 0x43bd00 <BloombergLP::bslstl::Function_Rep::~Function_Rep()> ; 5 bytes
M00000000000000dc: leaq 96(%rsp), %rdi ; 5 bytes
M00000000000000e1: callq 0x43bd00 <BloombergLP::bslstl::Function_Rep::~Function_Rep()> ; 5 bytes
M00000000000000e6: leaq 16(%rsp), %rdi ; 5 bytes
M00000000000000eb: callq 0x43bd00 <BloombergLP::bslstl::Function_Rep::~Function_Rep()> ; 5 bytes
M00000000000000f0: cmpb $0, 7(%rsp) ; 5 bytes
M00000000000000f5: je 0x4269ec <void BloombergLP::bdlmt::EventScheduler::scheduleEventRaw<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l> > >(BloombergLP::bdlmt::EventScheduler::Event**, std::__1::chrono::time_point<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l> > > const&, bsl::function<void ()> const&)+0x1dc> ; 6 bytes
M00000000000000fb: leaq 408(%r12), %rbx ; 8 bytes
M0000000000000103: movq %rbx, %rdi ; 3 bytes
M0000000000000106: callq 0x4046c0 <pthread_mutex_lock@plt> ; 5 bytes
M000000000000010b: addq $448, %r12 ; 7 bytes
M0000000000000112: movq %r12, %rdi ; 3 bytes
M0000000000000115: callq 0x404080 <pthread_cond_signal@plt> ; 5 bytes
M000000000000011a: movq %rbx, %rdi ; 3 bytes
M000000000000011d: callq 0x404790 <pthread_mutex_unlock@plt> ; 5 bytes
M0000000000000122: jmp 0x4269ec <void BloombergLP::bdlmt::EventScheduler::scheduleEventRaw<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l> > >(BloombergLP::bdlmt::EventScheduler::Event**, std::__1::chrono::time_point<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l> > > const&, bsl::function<void ()> const&)+0x1dc> ; 5 bytes
M0000000000000127: movq (%rdx), %rcx ; 3 bytes
M000000000000012a: movabsq $4835703278458516699, %rdx ; 10 bytes
M0000000000000134: movq %rcx, %rax ; 3 bytes
M0000000000000137: imulq %rdx ; 3 bytes
M000000000000013a: movq %rdx, %rax ; 3 bytes
M000000000000013d: shrq $63, %rax ; 4 bytes
M0000000000000141: sarq $18, %rdx ; 4 bytes
M0000000000000145: addq %rax, %rdx ; 3 bytes
M0000000000000148: imull $4293967296, %edx, %eax ; 6 bytes
M000000000000014e: addl %eax, %ecx ; 2 bytes
M0000000000000150: imull $1000, %ecx, %eax ; 6 bytes
M0000000000000156: movq %rdx, 96(%rsp) ; 5 bytes
M000000000000015b: leal 999999999(%rax), %ecx ; 6 bytes
M0000000000000161: cmpl $1999999999, %ecx ; 6 bytes
M0000000000000167: jb 0x4269a3 <void BloombergLP::bdlmt::EventScheduler::scheduleEventRaw<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l> > >(BloombergLP::bdlmt::EventScheduler::Event**, std::__1::chrono::time_point<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l> > > const&, bsl::function<void ()> const&)+0x193> ; 2 bytes
M0000000000000169: movslq %eax, %rcx ; 3 bytes
M000000000000016c: imulq $1152921505, %rcx, %rcx ; 7 bytes
M0000000000000173: movq %rcx, %rsi ; 3 bytes
M0000000000000176: shrq $63, %rsi ; 4 bytes
M000000000000017a: sarq $60, %rcx ; 4 bytes
M000000000000017e: addl %esi, %ecx ; 2 bytes
M0000000000000180: movslq %ecx, %rcx ; 3 bytes
M0000000000000183: addq %rcx, %rdx ; 3 bytes
M0000000000000186: movq %rdx, 96(%rsp) ; 5 bytes
M000000000000018b: imull $1000000000, %ecx, %ecx ; 6 bytes
M0000000000000191: subl %ecx, %eax ; 2 bytes
M0000000000000193: movl %eax, 104(%rsp) ; 4 bytes
M0000000000000197: testq %rdx, %rdx ; 3 bytes
M000000000000019a: jle 0x4269bf <void BloombergLP::bdlmt::EventScheduler::scheduleEventRaw<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l> > >(BloombergLP::bdlmt::EventScheduler::Event**, std::__1::chrono::time_point<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l> > > const&, bsl::function<void ()> const&)+0x1af> ; 2 bytes
M000000000000019c: testl %eax, %eax ; 2 bytes
M000000000000019e: jns 0x4269d9 <void BloombergLP::bdlmt::EventScheduler::scheduleEventRaw<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l> > >(BloombergLP::bdlmt::EventScheduler::Event**, std::__1::chrono::time_point<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l> > > const&, bsl::function<void ()> const&)+0x1c9> ; 2 bytes
M00000000000001a0: decq %rdx ; 3 bytes
M00000000000001a3: movq %rdx, 96(%rsp) ; 5 bytes
M00000000000001a8: addl $1000000000, %eax ; 5 bytes
M00000000000001ad: jmp 0x4269d5 <void BloombergLP::bdlmt::EventScheduler::scheduleEventRaw<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l> > >(BloombergLP::bdlmt::EventScheduler::Event**, std::__1::chrono::time_point<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l> > > const&, bsl::function<void ()> const&)+0x1c5> ; 2 bytes
M00000000000001af: testl %eax, %eax ; 2 bytes
M00000000000001b1: jle 0x4269d9 <void BloombergLP::bdlmt::EventScheduler::scheduleEventRaw<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l> > >(BloombergLP::bdlmt::EventScheduler::Event**, std::__1::chrono::time_point<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l> > > const&, bsl::function<void ()> const&)+0x1c9> ; 2 bytes
M00000000000001b3: testq %rdx, %rdx ; 3 bytes
M00000000000001b6: je 0x4269d9 <void BloombergLP::bdlmt::EventScheduler::scheduleEventRaw<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l> > >(BloombergLP::bdlmt::EventScheduler::Event**, std::__1::chrono::time_point<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l> > > const&, bsl::function<void ()> const&)+0x1c9> ; 2 bytes
M00000000000001b8: incq %rdx ; 3 bytes
M00000000000001bb: movq %rdx, 96(%rsp) ; 5 bytes
M00000000000001c0: addl $3294967296, %eax ; 5 bytes
M00000000000001c5: movl %eax, 104(%rsp) ; 4 bytes
M00000000000001c9: leaq 96(%rsp), %rdx ; 5 bytes
M00000000000001ce: movq %r12, %rdi ; 3 bytes
M00000000000001d1: movq %r14, %rsi ; 3 bytes
M00000000000001d4: movq %r15, %rcx ; 3 bytes
M00000000000001d7: callq 0x433790 <BloombergLP::bdlmt::EventScheduler::scheduleEventRaw(BloombergLP::bdlmt::EventScheduler::Event**, BloombergLP::bsls::TimeInterval const&, bsl::function<void ()> const&)> ; 5 bytes
M00000000000001dc: addq $264, %rsp ; 7 bytes
M00000000000001e3: popq %rbx ; 1 bytes
M00000000000001e4: popq %r12 ; 2 bytes
M00000000000001e6: popq %r14 ; 2 bytes
M00000000000001e8: popq %r15 ; 2 bytes
M00000000000001ea: retq ; 1 bytes
M00000000000001eb: movq %rax, %rbx ; 3 bytes
M00000000000001ee: jmp 0x426a1f <void BloombergLP::bdlmt::EventScheduler::scheduleEventRaw<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l> > >(BloombergLP::bdlmt::EventScheduler::Event**, std::__1::chrono::time_point<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l> > > const&, bsl::function<void ()> const&)+0x20f> ; 2 bytes
M00000000000001f0: movq %rax, %rbx ; 3 bytes
M00000000000001f3: jmp 0x426a1f <void BloombergLP::bdlmt::EventScheduler::scheduleEventRaw<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l> > >(BloombergLP::bdlmt::EventScheduler::Event**, std::__1::chrono::time_point<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l> > > const&, bsl::function<void ()> const&)+0x20f> ; 2 bytes
M00000000000001f5: movq %rax, %rbx ; 3 bytes
M00000000000001f8: leaq 176(%rsp), %rdi ; 8 bytes
M0000000000000200: callq 0x43bd00 <BloombergLP::bslstl::Function_Rep::~Function_Rep()> ; 5 bytes
M0000000000000205: leaq 96(%rsp), %rdi ; 5 bytes
M000000000000020a: callq 0x43bd00 <BloombergLP::bslstl::Function_Rep::~Function_Rep()> ; 5 bytes
M000000000000020f: leaq 16(%rsp), %rdi ; 5 bytes
M0000000000000214: callq 0x43bd00 <BloombergLP::bslstl::Function_Rep::~Function_Rep()> ; 5 bytes
M0000000000000219: movq %rbx, %rdi ; 3 bytes
M000000000000021c: callq 0x404730 <_Unwind_Resume@plt> ; 5 bytes
M0000000000000221: nopw %cs:(%rax,%rax) ; 10 bytes
M000000000000022b: nopl (%rax,%rax) ; 5 bytes