|
@@ -1,101 +1,118 @@
|
|
| 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 $56, %rsp
|
| 9 |
000000000000000e: 03 movl %r9d, %r14d
|
| 10 |
-
0000000000000011: 03 movq %r8, %
|
| 11 |
-
0000000000000014: 03 movq %rcx, %
|
| 12 |
0000000000000017: 03 movq %rdx, %r15
|
| 13 |
000000000000001a: 05 movq %rsi, 40(%rsp)
|
| 14 |
000000000000001f: 03 movq %rdi, %rbx
|
| 15 |
0000000000000022: 04 movq 96(%rdi), %rbp
|
| 16 |
0000000000000026: 05 callq 0x403cb0 <pthread_self@plt>
|
| 17 |
000000000000002b: 04 cmpq %rax, 32(%rbp)
|
| 18 |
000000000000002f: 05 movq %rax, 48(%rsp)
|
| 19 |
-
0000000000000034: 02 jne
|
| 20 |
0000000000000036: 04 movq 56(%rbp), %rax
|
| 21 |
000000000000003a: 05 movq %rax, 32(%rsp)
|
| 22 |
000000000000003f: 04 movups 40(%rbp), %xmm0
|
| 23 |
0000000000000043: 05 movaps %xmm0, 16(%rsp)
|
| 24 |
-
0000000000000048: 02 jmp
|
| 25 |
000000000000004a: 05 leaq 16(%rsp), %rsi
|
| 26 |
000000000000004f: 03 movq %rbp, %rdi
|
| 27 |
0000000000000052: 05 callq 0x42a600 <BloombergLP::bdlpcre::RegEx_MatchContext::allocateMatchContext(BloombergLP::bdlpcre::RegEx_MatchContextData*) const>
|
| 28 |
0000000000000057: 05 movl $4294967295, %ebp
|
| 29 |
000000000000005c: 02 testl %eax, %eax
|
| 30 |
-
000000000000005e: 06 jne
|
| 31 |
0000000000000064: 03 testq %r15, %r15
|
| 32 |
-
0000000000000067: 05 movl $
|
| 33 |
000000000000006c: 04 cmovneq %r15, %rsi
|
| 34 |
-
0000000000000070:
|
| 35 |
-
|
| 36 |
-
|
| 37 |
-
|
| 38 |
-
|
| 39 |
-
|
| 40 |
-
|
| 41 |
-
|
| 42 |
-
|
| 43 |
-
|
| 44 |
-
|
| 45 |
-
|
| 46 |
-
|
| 47 |
-
|
| 48 |
-
|
| 49 |
-
|
| 50 |
-
|
| 51 |
-
|
| 52 |
-
|
| 53 |
-
|
| 54 |
-
|
| 55 |
-
|
| 56 |
-
|
| 57 |
-
00000000000000c2:
|
| 58 |
-
|
| 59 |
-
00000000000000c9: 02
|
| 60 |
-
00000000000000cb:
|
| 61 |
-
|
| 62 |
-
00000000000000d2:
|
| 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 |
-
|
| 96 |
-
|
| 97 |
-
|
| 98 |
-
|
| 99 |
-
0000000000000151:
|
| 100 |
-
|
| 101 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
000000000042af70 <int BloombergLP::bdlpcre::RegEx::matchImp<BloombergLP::bdlpcre::(anonymous namespace)::DataExtractor<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >(BloombergLP::bdlpcre::(anonymous namespace)::DataExtractor<std::__1::basic_string_view<char, std::__1::char_traits<char> > > const&, char const*, unsigned long, unsigned long, bool) const>:
|
| 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 $56, %rsp
|
| 9 |
000000000000000e: 03 movl %r9d, %r14d
|
| 10 |
+
0000000000000011: 03 movq %r8, %r12
|
| 11 |
+
0000000000000014: 03 movq %rcx, %r13
|
| 12 |
0000000000000017: 03 movq %rdx, %r15
|
| 13 |
000000000000001a: 05 movq %rsi, 40(%rsp)
|
| 14 |
000000000000001f: 03 movq %rdi, %rbx
|
| 15 |
0000000000000022: 04 movq 96(%rdi), %rbp
|
| 16 |
0000000000000026: 05 callq 0x403cb0 <pthread_self@plt>
|
| 17 |
000000000000002b: 04 cmpq %rax, 32(%rbp)
|
| 18 |
000000000000002f: 05 movq %rax, 48(%rsp)
|
| 19 |
+
0000000000000034: 02 jne 0x42afba <int BloombergLP::bdlpcre::RegEx::matchImp<BloombergLP::bdlpcre::(anonymous namespace)::DataExtractor<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >(BloombergLP::bdlpcre::(anonymous namespace)::DataExtractor<std::__1::basic_string_view<char, std::__1::char_traits<char> > > const&, char const*, unsigned long, unsigned long, bool) const+0x4a>
|
| 20 |
0000000000000036: 04 movq 56(%rbp), %rax
|
| 21 |
000000000000003a: 05 movq %rax, 32(%rsp)
|
| 22 |
000000000000003f: 04 movups 40(%rbp), %xmm0
|
| 23 |
0000000000000043: 05 movaps %xmm0, 16(%rsp)
|
| 24 |
+
0000000000000048: 02 jmp 0x42afd4 <int BloombergLP::bdlpcre::RegEx::matchImp<BloombergLP::bdlpcre::(anonymous namespace)::DataExtractor<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >(BloombergLP::bdlpcre::(anonymous namespace)::DataExtractor<std::__1::basic_string_view<char, std::__1::char_traits<char> > > const&, char const*, unsigned long, unsigned long, bool) const+0x64>
|
| 25 |
000000000000004a: 05 leaq 16(%rsp), %rsi
|
| 26 |
000000000000004f: 03 movq %rbp, %rdi
|
| 27 |
0000000000000052: 05 callq 0x42a600 <BloombergLP::bdlpcre::RegEx_MatchContext::allocateMatchContext(BloombergLP::bdlpcre::RegEx_MatchContextData*) const>
|
| 28 |
0000000000000057: 05 movl $4294967295, %ebp
|
| 29 |
000000000000005c: 02 testl %eax, %eax
|
| 30 |
+
000000000000005e: 06 jne 0x42b0ea <int BloombergLP::bdlpcre::RegEx::matchImp<BloombergLP::bdlpcre::(anonymous namespace)::DataExtractor<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >(BloombergLP::bdlpcre::(anonymous namespace)::DataExtractor<std::__1::basic_string_view<char, std::__1::char_traits<char> > > const&, char const*, unsigned long, unsigned long, bool) const+0x17a>
|
| 31 |
0000000000000064: 03 testq %r15, %r15
|
| 32 |
+
0000000000000067: 05 movl $5110924, %esi
|
| 33 |
000000000000006c: 04 cmovneq %r15, %rsi
|
| 34 |
+
0000000000000070: 02 movl (%rbx), %eax
|
| 35 |
+
0000000000000072: 02 testb $8, %al
|
| 36 |
+
0000000000000074: 02 je 0x42b029 <int BloombergLP::bdlpcre::RegEx::matchImp<BloombergLP::bdlpcre::(anonymous namespace)::DataExtractor<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >(BloombergLP::bdlpcre::(anonymous namespace)::DataExtractor<std::__1::basic_string_view<char, std::__1::char_traits<char> > > const&, char const*, unsigned long, unsigned long, bool) const+0xb9>
|
| 37 |
+
0000000000000076: 03 testb %r14b, %r14b
|
| 38 |
+
0000000000000079: 02 jne 0x42b029 <int BloombergLP::bdlpcre::RegEx::matchImp<BloombergLP::bdlpcre::(anonymous namespace)::DataExtractor<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >(BloombergLP::bdlpcre::(anonymous namespace)::DataExtractor<std::__1::basic_string_view<char, std::__1::char_traits<char> > > const&, char const*, unsigned long, unsigned long, bool) const+0xb9>
|
| 39 |
+
000000000000007b: 04 movq 72(%rbx), %rdi
|
| 40 |
+
000000000000007f: 05 movq 16(%rsp), %r14
|
| 41 |
+
0000000000000084: 05 movq 24(%rsp), %rax
|
| 42 |
+
0000000000000089: 04 movq %r14, (%rsp)
|
| 43 |
+
000000000000008d: 03 movq %r13, %rdx
|
| 44 |
+
0000000000000090: 03 movq %rax, %r13
|
| 45 |
+
0000000000000093: 03 movq %r12, %rcx
|
| 46 |
+
0000000000000096: 03 xorl %r8d, %r8d
|
| 47 |
+
0000000000000099: 03 movq %rax, %r9
|
| 48 |
+
000000000000009c: 05 callq 0x4ba7d0 <pcre2_match_8>
|
| 49 |
+
00000000000000a1: 03 cmpl $-47, %eax
|
| 50 |
+
00000000000000a4: 06 je 0x42b0bc <int BloombergLP::bdlpcre::RegEx::matchImp<BloombergLP::bdlpcre::(anonymous namespace)::DataExtractor<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >(BloombergLP::bdlpcre::(anonymous namespace)::DataExtractor<std::__1::basic_string_view<char, std::__1::char_traits<char> > > const&, char const*, unsigned long, unsigned long, bool) const+0x14c>
|
| 51 |
+
00000000000000aa: 03 cmpl $-46, %eax
|
| 52 |
+
00000000000000ad: 02 jne 0x42b055 <int BloombergLP::bdlpcre::RegEx::matchImp<BloombergLP::bdlpcre::(anonymous namespace)::DataExtractor<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >(BloombergLP::bdlpcre::(anonymous namespace)::DataExtractor<std::__1::basic_string_view<char, std::__1::char_traits<char> > > const&, char const*, unsigned long, unsigned long, bool) const+0xe5>
|
| 53 |
+
00000000000000af: 05 movl $2, %ebp
|
| 54 |
+
00000000000000b4: 05 jmp 0x42b0c1 <int BloombergLP::bdlpcre::RegEx::matchImp<BloombergLP::bdlpcre::(anonymous namespace)::DataExtractor<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >(BloombergLP::bdlpcre::(anonymous namespace)::DataExtractor<std::__1::basic_string_view<char, std::__1::char_traits<char> > > const&, char const*, unsigned long, unsigned long, bool) const+0x151>
|
| 55 |
+
00000000000000b9: 04 movq 72(%rbx), %rdi
|
| 56 |
+
00000000000000bd: 05 movq 16(%rsp), %r14
|
| 57 |
+
00000000000000c2: 05 movq 24(%rsp), %rbp
|
| 58 |
+
00000000000000c7: 02 testb $16, %al
|
| 59 |
+
00000000000000c9: 02 jne 0x42b09b <int BloombergLP::bdlpcre::RegEx::matchImp<BloombergLP::bdlpcre::(anonymous namespace)::DataExtractor<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >(BloombergLP::bdlpcre::(anonymous namespace)::DataExtractor<std::__1::basic_string_view<char, std::__1::char_traits<char> > > const&, char const*, unsigned long, unsigned long, bool) const+0x12b>
|
| 60 |
+
00000000000000cb: 04 movq %r14, (%rsp)
|
| 61 |
+
00000000000000cf: 03 movq %r13, %rdx
|
| 62 |
+
00000000000000d2: 03 movq %r12, %rcx
|
| 63 |
+
00000000000000d5: 06 movl $1073741824, %r8d
|
| 64 |
+
00000000000000db: 03 movq %rbp, %r9
|
| 65 |
+
00000000000000de: 05 callq 0x4ba7d0 <pcre2_match_8>
|
| 66 |
+
00000000000000e3: 02 jmp 0x42b0b0 <int BloombergLP::bdlpcre::RegEx::matchImp<BloombergLP::bdlpcre::(anonymous namespace)::DataExtractor<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >(BloombergLP::bdlpcre::(anonymous namespace)::DataExtractor<std::__1::basic_string_view<char, std::__1::char_traits<char> > > const&, char const*, unsigned long, unsigned long, bool) const+0x140>
|
| 67 |
+
00000000000000e5: 02 movl %eax, %ebp
|
| 68 |
+
00000000000000e7: 03 sarl $31, %ebp
|
| 69 |
+
00000000000000ea: 02 testl %eax, %eax
|
| 70 |
+
00000000000000ec: 02 js 0x42b0c1 <int BloombergLP::bdlpcre::RegEx::matchImp<BloombergLP::bdlpcre::(anonymous namespace)::DataExtractor<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >(BloombergLP::bdlpcre::(anonymous namespace)::DataExtractor<std::__1::basic_string_view<char, std::__1::char_traits<char> > > const&, char const*, unsigned long, unsigned long, bool) const+0x151>
|
| 71 |
+
00000000000000ee: 03 movq %r13, %rdi
|
| 72 |
+
00000000000000f1: 05 callq 0x4cc260 <pcre2_get_ovector_pointer_8>
|
| 73 |
+
00000000000000f6: 03 movq %r14, %r12
|
| 74 |
+
00000000000000f9: 03 movq %rax, %r14
|
| 75 |
+
00000000000000fc: 03 movq %r13, %rdi
|
| 76 |
+
00000000000000ff: 05 callq 0x4cc270 <pcre2_get_ovector_count_8>
|
| 77 |
+
0000000000000104: 03 movq (%r14), %rax
|
| 78 |
+
0000000000000107: 04 movq 8(%r14), %rcx
|
| 79 |
+
000000000000010b: 03 movq %r12, %r14
|
| 80 |
+
000000000000010e: 05 movq 40(%rsp), %rdx
|
| 81 |
+
0000000000000113: 03 movq (%rdx), %rdx
|
| 82 |
+
0000000000000116: 03 addq %rax, %r15
|
| 83 |
+
0000000000000119: 02 xorl %esi, %esi
|
| 84 |
+
000000000000011b: 03 subq %rax, %rcx
|
| 85 |
+
000000000000011e: 04 cmovneq %r15, %rsi
|
| 86 |
+
0000000000000122: 03 movq %rsi, (%rdx)
|
| 87 |
+
0000000000000125: 04 movq %rcx, 8(%rdx)
|
| 88 |
+
0000000000000129: 02 jmp 0x42b0c1 <int BloombergLP::bdlpcre::RegEx::matchImp<BloombergLP::bdlpcre::(anonymous namespace)::DataExtractor<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >(BloombergLP::bdlpcre::(anonymous namespace)::DataExtractor<std::__1::basic_string_view<char, std::__1::char_traits<char> > > const&, char const*, unsigned long, unsigned long, bool) const+0x151>
|
| 89 |
+
000000000000012b: 04 movq %r14, (%rsp)
|
| 90 |
+
000000000000012f: 03 movq %r13, %rdx
|
| 91 |
+
0000000000000132: 03 movq %r12, %rcx
|
| 92 |
+
0000000000000135: 03 xorl %r8d, %r8d
|
| 93 |
+
0000000000000138: 03 movq %rbp, %r9
|
| 94 |
+
000000000000013b: 05 callq 0x47de10 <pcre2_jit_match_8>
|
| 95 |
+
0000000000000140: 03 movq %rbp, %r13
|
| 96 |
+
0000000000000143: 03 cmpl $-47, %eax
|
| 97 |
+
0000000000000146: 06 jne 0x42b01a <int BloombergLP::bdlpcre::RegEx::matchImp<BloombergLP::bdlpcre::(anonymous namespace)::DataExtractor<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >(BloombergLP::bdlpcre::(anonymous namespace)::DataExtractor<std::__1::basic_string_view<char, std::__1::char_traits<char> > > const&, char const*, unsigned long, unsigned long, bool) const+0xaa>
|
| 98 |
+
000000000000014c: 05 movl $1, %ebp
|
| 99 |
+
0000000000000151: 04 movq 96(%rbx), %rax
|
| 100 |
+
0000000000000155: 05 movq 48(%rsp), %rcx
|
| 101 |
+
000000000000015a: 04 cmpq %rcx, 32(%rax)
|
| 102 |
+
000000000000015e: 02 je 0x42b0ea <int BloombergLP::bdlpcre::RegEx::matchImp<BloombergLP::bdlpcre::(anonymous namespace)::DataExtractor<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >(BloombergLP::bdlpcre::(anonymous namespace)::DataExtractor<std::__1::basic_string_view<char, std::__1::char_traits<char> > > const&, char const*, unsigned long, unsigned long, bool) const+0x17a>
|
| 103 |
+
0000000000000160: 03 movq %r13, %rdi
|
| 104 |
+
0000000000000163: 05 callq 0x4cc220 <pcre2_match_data_free_8>
|
| 105 |
+
0000000000000168: 05 movq 32(%rsp), %rdi
|
| 106 |
+
000000000000016d: 05 callq 0x47e2a0 <pcre2_jit_stack_free_8>
|
| 107 |
+
0000000000000172: 03 movq %r14, %rdi
|
| 108 |
+
0000000000000175: 05 callq 0x462980 <pcre2_match_context_free_8>
|
| 109 |
+
000000000000017a: 02 movl %ebp, %eax
|
| 110 |
+
000000000000017c: 04 addq $56, %rsp
|
| 111 |
+
0000000000000180: 01 popq %rbx
|
| 112 |
+
0000000000000181: 02 popq %r12
|
| 113 |
+
0000000000000183: 02 popq %r13
|
| 114 |
+
0000000000000185: 02 popq %r14
|
| 115 |
+
0000000000000187: 02 popq %r15
|
| 116 |
+
0000000000000189: 01 popq %rbp
|
| 117 |
+
000000000000018a: 01 retq
|
| 118 |
+
000000000000018b: 05 nopl (%rax,%rax)
|