Following ab command is observed to be 3-5x slower in HHVM than Zend:
ab -c100 -n1000 -X localhost:80 'http://en.wikipedia.org/w/api.php?action=parse&format=json&text=blah'
• tstarling | |
Oct 21 2014, 2:44 AM2014-10-21 02:44:28 (UTC+0) |
Following ab command is observed to be 3-5x slower in HHVM than Zend:
ab -c100 -n1000 -X localhost:80 'http://en.wikipedia.org/w/api.php?action=parse&format=json&text=blah'
That leaves 22%, so it would be about 4x faster if the above three issues were fixed.
When I ran the same test another few times, MessageCache disappeared from the list, but SidebarHookHandlers and MWTidy::execExternalTidy were still very expensive: ~110ms and ~200ms respectively.
Wikidata's contribution should be minimized by these two patches, which the team hopes to ship this week:
https://gerrit.wikimedia.org/r/#/c/174113/
https://gerrit.wikimedia.org/r/#/c/174874/
Change 175940 had a related patch set uploaded (by Tim Starling):
Use HHVM EZC internal tidy
Change 176383 had a related patch set uploaded (by Ori.livneh):
Use HHVM EZC internal tidy
Change 176387 had a related patch set uploaded (by Ori.livneh):
Use HHVM EZC internal tidy
tidy.so still needs to be added to /etc/hhvm/fcgi.ini . Please deploy it with care -- test one server first, and watch the logs.
Change 176864 had a related patch set uploaded (by Ori.livneh):
Add https://github.com/facebook/hhvm/pull/4330
In T758#795816, @tstarling wrote:tidy.so still needs to be added to /etc/hhvm/fcgi.ini . Please deploy it with care -- test one server first, and watch the logs.
@Joe: HHVM needs to be re-packaged, too -- we need https://github.com/facebook/hhvm/pull/4330. It backported cleanly: https://gerrit.wikimedia.org/r/#/c/176864/.
Order of operations for deployment:
(The extension will not be used yet, because I set $wgInternalTidy to false in CommonSettings.php.)
If everything looks good, the final step is:
This will cause MediaWiki to revert to its default behavior of using the tidy extension whenever it detects that the extension is available.
Ori's plan seems good to me, with the additional passage of testing every step in beta.
so, I performed step 1) and I deployed the package to beta, and a smoke test showed no crashes; so I decided to upload it to the repository.
We'll also have a few newly reimaged servers using the new package for the night, so that is everything is good tomorrow I'll deploy the new package everywhere - so step 2) will be done.
Next step is testing 3 and 4 in beta, then do the same in production. While in beta they can be tested together, the production deploy should be separated.
I pushed this to Beta and we started getting crashes:
1 | deployment-mediawiki01:/var/tmp/core |
---|---|
2 | root$ gdb hhvm core |
3 | core.deployment-mediawiki01.hhvm.23709.1417563682 |
4 | core.deployment-mediawiki01.hhvm.23961.1417563754 |
5 | deployment-mediawiki01:/var/tmp/core |
6 | root$ gdb hhvm core.deployment-mediawiki01.hhvm.23961.1417563754 |
7 | GNU gdb (Ubuntu 7.7.1-0ubuntu5~14.04.2) 7.7.1 |
8 | Copyright (C) 2014 Free Software Foundation, Inc. |
9 | License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> |
10 | This is free software: you are free to change and redistribute it. |
11 | There is NO WARRANTY, to the extent permitted by law. Type "show copying" |
12 | and "show warranty" for details. |
13 | This GDB was configured as "x86_64-linux-gnu". |
14 | Type "show configuration" for configuration details. |
15 | For bug reporting instructions, please see: |
16 | <http://www.gnu.org/software/gdb/bugs/>. |
17 | Find the GDB manual and other documentation resources online at: |
18 | <http://www.gnu.org/software/gdb/documentation/>. |
19 | For help, type "help". |
20 | Type "apropos word" to search for commands related to "word"... |
21 | Reading symbols from hhvm...Reading symbols from /usr/lib/debug/.build-id/a1/c9fd4453a18fd521be5c520fbcb59deeeb5b51.debug...done. |
22 | done. |
23 | [New LWP 23992] |
24 | [New LWP 23994] |
25 | [New LWP 23972] |
26 | [New LWP 23971] |
27 | [New LWP 23961] |
28 | [New LWP 23980] |
29 | [New LWP 23973] |
30 | [New LWP 23995] |
31 | [Thread debugging using libthread_db enabled] |
32 | Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". |
33 | Core was generated by `/usr/bin/hhvm --config /etc/hhvm/fcgi.ini --mode server'. |
34 | Program terminated with signal SIGSEGV, Segmentation fault. |
35 | #0 0x00007f1a92ba628a in ?? () from /usr/lib/x86_64-linux-gnu/hhvm/extensions/current/tidy.so |
36 | gdb> bt |
37 | #0 0x00007f1a92ba628a in ?? () from /usr/lib/x86_64-linux-gnu/hhvm/extensions/current/tidy.so |
38 | #1 0x000000000128911b in HPHP::zend_wrap_func (ar=0x7f1a6dbbf2e0) at /usr/src/hhvm/hphp/runtime/ext_zend_compat/hhvm/zend-wrap-func.cpp:96 |
39 | #2 0x0000000000c469c4 in iopNativeImpl (pc=<optimized out>, this=<optimized out>) at /usr/src/hhvm/hphp/runtime/vm/bytecode.cpp:6880 |
40 | #3 HPHP::ExecutionContext::dispatchImpl<true> (this=0x4) at /usr/src/hhvm/hphp/runtime/vm/bytecode.cpp:7518 |
41 | #4 0x0000000000c14689 in HPHP::ExecutionContext::dispatchBB (this=<optimized out>) at /usr/src/hhvm/hphp/runtime/vm/bytecode.cpp:7544 |
42 | #5 0x0000000000de2082 in HPHP::jit::MCGenerator::enterTC (this=0x7f1a9370a000, start=0x0, data=<optimized out>) at /usr/src/hhvm/hphp/runtime/vm/jit/mc-generator.cpp:999 |
43 | #6 0x0000000000c123ed in enterTCAtPrologue (start=<optimized out>, ar=<optimized out>, this=<optimized out>) at /usr/src/hhvm/hphp/runtime/vm/jit/mc-generator.h:240 |
44 | #7 HPHP::ExecutionContext::enterVMAtFunc (this=this@entry=0x0, enterFnAr=enterFnAr@entry=0x0, stk=stk@entry=HPHP::ExecutionContext::Untrimmed) at /usr/src/hhvm/hphp/runtime/vm/bytecode.cpp:1858 |
45 | #8 0x0000000000c126be in HPHP::ExecutionContext::enterVM (this=0x0, this@entry=0x7f1a76e69800, ar=0x0, ar@entry=0x7f1a6dbbffc0, stk=HPHP::ExecutionContext::Untrimmed, resumable=0x7f1a76e69800, resumable@entry=0x0, exception=exception@entry=0x0) at /usr/src/hhvm/hphp/runtime/vm/bytecode.cpp:1927 |
46 | #9 0x0000000000c1292c in HPHP::ExecutionContext::invokeFunc (this=this@entry=0x7f1a76e69800, retval=retval@entry=0x7f1a6bffb0d0, f=0x7f1a76877100, args_=..., this_=this_@entry=0x0, cls=cls@entry=0x0, varEnv=0x7f1a6d97c030, invName=invName@entry=0x0, flags=flags@entry=HPHP::ExecutionContext::InvokePseudoMain) at /usr/src/hhvm/hphp/runtime/vm/bytecode.cpp:2092 |
47 | #10 0x0000000000c12b7a in HPHP::ExecutionContext::invokeUnit (this=0x7f1a76e69800, retval=retval@entry=0x7f1a6bffb0d0, unit=0x7f1a8cbffc40) at /usr/src/hhvm/hphp/runtime/vm/bytecode.cpp:2274 |
48 | #11 0x0000000000a98791 in invoke_file_impl (currentDir=0x1c42fd3 "", once=0x1, path=SmartPtr<HPHP::StringData> = {...}, res=Uninit) at /usr/src/hhvm/hphp/runtime/base/builtin-functions.cpp:721 |
49 | #12 HPHP::invoke_file (s=SmartPtr<HPHP::StringData> = {...}, once=once@entry=0x1, currentDir=currentDir@entry=0x1c42fd3 "") at /usr/src/hhvm/hphp/runtime/base/builtin-functions.cpp:734 |
50 | #13 0x0000000000a9ae2a in HPHP::include_impl_invoke (file=SmartPtr<HPHP::StringData> = {...}, once=once@entry=0x1, currentDir=currentDir@entry=0x1c42fd3 "") at /usr/src/hhvm/hphp/runtime/base/builtin-functions.cpp:745 |
51 | #14 0x0000000000a4a619 in HPHP::hphp_invoke (context=context@entry=0x7f1a76e69800, cmd="/srv/mediawiki/docroot/wikipedia.org/w/index.php", func=func@entry=0x0, funcParams=SmartPtr<HPHP::ArrayData>(Null), funcRet=..., reqInitFunc=..., reqInitDoc="/srv/mediawiki/wmf-config/HHVMRequestInit.php", error=@0x7f1a6bffb440: 0x0, errorMsg="Internal Server Error", once=once@entry=0x1, warmupOnly=warmupOnly@entry=0x0, richErrorMsg=richErrorMsg@entry=0x0) at /usr/src/hhvm/hphp/runtime/base/program-functions.cpp:1796 |
52 | #15 0x0000000000b23f34 in HPHP::HttpRequestHandler::executePHPRequest (this=this@entry=0x7f1a6e7182a0, transport=transport@entry=0x7f1a50f72298, reqURI=..., sourceRootInfo=..., cachableDynamicContent=cachableDynamicContent@entry=0x0) at /usr/src/hhvm/hphp/runtime/server/http-request-handler.cpp:399 |
53 | #16 0x0000000000b25070 in HPHP::HttpRequestHandler::handleRequestImpl (this=0x7f1a6e7182a0, transport=0x7f1a50f72298) at /usr/src/hhvm/hphp/runtime/server/http-request-handler.cpp:292 |
54 | #17 0x0000000000b25b99 in HPHP::HttpRequestHandler::handleRequest (this=<optimized out>, transport=<optimized out>) at /usr/src/hhvm/hphp/runtime/server/http-request-handler.cpp:332 |
55 | #18 0x0000000000b64c69 in HPHP::ServerWorker<std::shared_ptr<HPHP::FastCGIJob>, HPHP::FastCGITransportTraits>::doJobImpl (this=0x7f1a8cd8bf00, job=std::shared_ptr (count 3, weak 0) 0x7f1a6c6bbd48, abort=<optimized out>) at /usr/src/hhvm/hphp/runtime/server/server-worker.h:103 |
56 | #19 0x0000000000b64e98 in HPHP::ServerWorker<std::shared_ptr<HPHP::FastCGIJob>, HPHP::FastCGITransportTraits>::doJob (this=<optimized out>, job=...) at /usr/src/hhvm/hphp/runtime/server/server-worker.h:57 |
57 | #20 0x0000000000b63e08 in HPHP::JobQueueWorker<std::shared_ptr<HPHP::FastCGIJob>, HPHP::Server*, true, false, HPHP::JobQueueDropVMStack>::start (this=0x7f1a8cd8bf00) at /usr/src/hhvm/hphp/util/job-queue.h:461 |
58 | #21 0x00000000015b1c37 in threadFuncImpl (this=0x7f1a8ce22100) at /usr/src/hhvm/hphp/util/async-func.cpp:131 |
59 | #22 HPHP::AsyncFuncImpl::ThreadFunc (obj=0x7f1a8ce22100) at /usr/src/hhvm/hphp/util/async-func.cpp:51 |
60 | #23 0x00007f1a9df7c182 in start_thread (arg=0x7f1a6bfff700) at pthread_create.c:312 |
61 | #24 0x00007f1a9d488fbd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111 |
62 | gdb> |
1 | (gdb) bt |
---|---|
2 | #0 memcpy (vdest=0x7f3c4920cf2e, vsrc=0x64656d2f7672732f, len=105) at /usr/src/hhvm/hphp/runtime/vm/jit/memcpy-x64.cpp:46 |
3 | #1 0x00000000010e074c in memcpy (__len=105, __src=<optimized out>, __dest=<optimized out>) at /usr/include/x86_64-linux-gnu/bits/string3.h:51 |
4 | #2 append (len=105, s=<optimized out>, this=0x7f3c433f9e90) at /usr/src/hhvm/hphp/runtime/base/string-buffer.h:173 |
5 | #3 append (s=..., this=<optimized out>) at /usr/src/hhvm/hphp/runtime/base/string-buffer.h:167 |
6 | #4 HPHP::debug_string_backtrace (skip=skip@entry=false, ignore_args=ignore_args@entry=false, limit=limit@entry=0) at /usr/src/hhvm/hphp/runtime/ext/std/ext_std_errorfunc.cpp:128 |
7 | #5 0x0000000000a57fe5 in HPHP::bt_handler (sig=11) at /usr/src/hhvm/hphp/runtime/base/crash-reporter.cpp:82 |
8 | #6 <signal handler called> |
9 | #7 HPHP::tvCastToStringInPlace (tv=0x7f3c3f01ffa0) at /usr/src/hhvm/hphp/runtime/base/string-data.h:215 |
10 | #8 0x00007f3c5a3a6345 in php_tidy_quick_repair (return_value_ptr=<optimized out>, this_ptr=<optimized out>, return_value_used=<optimized out>, is_file=0 '\000', tsrm_ls=0x7f3c546af7a0, return_value=0x7f3c491eceb0, ht=<optimized out>) at /home/ori/tmp/tidy/debian/build-hhvm/tidy.c:598 |
11 | #9 zif_tidy_repair_string (ht=<optimized out>, return_value=0x7f3c491eceb0, return_value_ptr=<optimized out>, this_ptr=<optimized out>, return_value_used=<optimized out>, tsrm_ls=0x7f3c546af7a0) at /home/ori/tmp/tidy/debian/build-hhvm/tidy.c:1337 |
12 | #10 0x000000000128911b in HPHP::zend_wrap_func (ar=0x7f3c547bf380) at /usr/src/hhvm/hphp/runtime/ext_zend_compat/hhvm/zend-wrap-func.cpp:96 |
13 | #11 0x0000000000c469c4 in iopNativeImpl (pc=<optimized out>, this=<optimized out>) at /usr/src/hhvm/hphp/runtime/vm/bytecode.cpp:6880 |
14 | #12 HPHP::ExecutionContext::dispatchImpl<true> (this=0x7f3c3f01ffa0) at /usr/src/hhvm/hphp/runtime/vm/bytecode.cpp:7518 |
15 | #13 0x0000000000c14689 in HPHP::ExecutionContext::dispatchBB (this=<optimized out>) at /usr/src/hhvm/hphp/runtime/vm/bytecode.cpp:7544 |
16 | #14 0x0000000000de2082 in HPHP::jit::MCGenerator::enterTC (this=0x7f3c5af0a000, start=0x0, data=<optimized out>) at /usr/src/hhvm/hphp/runtime/vm/jit/mc-generator.cpp:999 |
17 | #15 0x0000000000c123ed in enterTCAtPrologue (start=<optimized out>, ar=<optimized out>, this=<optimized out>) at /usr/src/hhvm/hphp/runtime/vm/jit/mc-generator.h:240 |
18 | #16 HPHP::ExecutionContext::enterVMAtFunc (this=this@entry=0x0, enterFnAr=enterFnAr@entry=0x0, stk=stk@entry=HPHP::ExecutionContext::Untrimmed) at /usr/src/hhvm/hphp/runtime/vm/bytecode.cpp:1858 |
19 | #17 0x0000000000c126be in HPHP::ExecutionContext::enterVM (this=0x0, this@entry=0x7f3c54693000, ar=0x0, ar@entry=0x7f3c547bffc0, stk=HPHP::ExecutionContext::Untrimmed, resumable=0x7f3c54693000, resumable@entry=0x0, exception=exception@entry=0x0) at /usr/src/hhvm/hphp/runtime/vm/bytecode.cpp:1927 |
20 | #18 0x0000000000c1292c in HPHP::ExecutionContext::invokeFunc (this=this@entry=0x7f3c54693000, retval=retval@entry=0x7f3c433fb0d0, f=0x7f3c4ac1d200, args_=..., this_=this_@entry=0x0, cls=cls@entry=0x0, varEnv=0x7f3c3f008270, invName=invName@entry=0x0, flags=flags@entry=HPHP::ExecutionContext::InvokePseudoMain) at /usr/src/hhvm/hphp/runtime/vm/bytecode.cpp:2092 |
21 | #19 0x0000000000c12b7a in HPHP::ExecutionContext::invokeUnit (this=0x7f3c54693000, retval=retval@entry=0x7f3c433fb0d0, unit=0x7f3c543fca40) at /usr/src/hhvm/hphp/runtime/vm/bytecode.cpp:2274 |
22 | #20 0x0000000000a98791 in invoke_file_impl (currentDir=0x1c42fd3 "", once=true, path=SmartPtr<HPHP::StringData> = {...}, res=Uninit) at /usr/src/hhvm/hphp/runtime/base/builtin-functions.cpp:721 |
23 | #21 HPHP::invoke_file (s=SmartPtr<HPHP::StringData> = {...}, once=once@entry=true, currentDir=currentDir@entry=0x1c42fd3 "") at /usr/src/hhvm/hphp/runtime/base/builtin-functions.cpp:734 |
24 | #22 0x0000000000a9ae2a in HPHP::include_impl_invoke (file=SmartPtr<HPHP::StringData> = {...}, once=once@entry=true, currentDir=currentDir@entry=0x1c42fd3 "") at /usr/src/hhvm/hphp/runtime/base/builtin-functions.cpp:745 |
25 | #23 0x0000000000a4a619 in HPHP::hphp_invoke (context=context@entry=0x7f3c54693000, cmd="/srv/mediawiki/docroot/wikipedia.org/w/index.php", func=func@entry=false, funcParams=SmartPtr<HPHP::ArrayData>(Null), funcRet=..., reqInitFunc=..., reqInitDoc="/srv/mediawiki/wmf-config/HHVMRequestInit.php", error=@0x7f3c433fb440: false, errorMsg="Internal Server Error", once=once@entry=true, warmupOnly=warmupOnly@entry=false, richErrorMsg=richErrorMsg@entry=false) at /usr/src/hhvm/hphp/runtime/base/program-functions.cpp:1796 |
26 | #24 0x0000000000b23f34 in HPHP::HttpRequestHandler::executePHPRequest (this=this@entry=0x7f3c546af8e0, transport=transport@entry=0x7f3c54528a98, reqURI=..., sourceRootInfo=..., cachableDynamicContent=cachableDynamicContent@entry=false) at /usr/src/hhvm/hphp/runtime/server/http-request-handler.cpp:399 |
27 | #25 0x0000000000b25070 in HPHP::HttpRequestHandler::handleRequestImpl (this=0x7f3c546af8e0, transport=0x7f3c54528a98) at /usr/src/hhvm/hphp/runtime/server/http-request-handler.cpp:292 |
28 | #26 0x0000000000b25b99 in HPHP::HttpRequestHandler::handleRequest (this=<optimized out>, transport=<optimized out>) at /usr/src/hhvm/hphp/runtime/server/http-request-handler.cpp:332 |
29 | #27 0x0000000000b64c69 in HPHP::ServerWorker<std::shared_ptr<HPHP::FastCGIJob>, HPHP::FastCGITransportTraits>::doJobImpl (this=0x7f3c54622f40, job=std::shared_ptr (count 3, weak 0) 0x7f3c546d1488, abort=<optimized out>) at /usr/src/hhvm/hphp/runtime/server/server-worker.h:103 |
30 | #28 0x0000000000b64e98 in HPHP::ServerWorker<std::shared_ptr<HPHP::FastCGIJob>, HPHP::FastCGITransportTraits>::doJob (this=<optimized out>, job=...) at /usr/src/hhvm/hphp/runtime/server/server-worker.h:57 |
31 | #29 0x0000000000b63e08 in HPHP::JobQueueWorker<std::shared_ptr<HPHP::FastCGIJob>, HPHP::Server*, true, false, HPHP::JobQueueDropVMStack>::start (this=0x7f3c54622f40) at /usr/src/hhvm/hphp/util/job-queue.h:461 |
32 | #30 0x00000000015b1c37 in threadFuncImpl (this=0x7f3c54581f00) at /usr/src/hhvm/hphp/util/async-func.cpp:131 |
33 | #31 HPHP::AsyncFuncImpl::ThreadFunc (obj=0x7f3c54581f00) at /usr/src/hhvm/hphp/util/async-func.cpp:51 |
34 | #32 0x00007f3c658d7182 in start_thread (arg=0x7f3c433ff700) at pthread_create.c:312 |
35 | #33 0x00007f3c64de3fbd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111 |
36 | (gdb) bt full |
37 | #0 memcpy (vdest=0x7f3c4920cf2e, vsrc=0x64656d2f7672732f, len=105) at /usr/src/hhvm/hphp/runtime/vm/jit/memcpy-x64.cpp:46 |
38 | qdest = <optimized out> |
39 | nBytes = 1 |
40 | nQwordBytes = <optimized out> |
41 | qsrc = <optimized out> |
42 | nQwords = <optimized out> |
43 | src = 0x64656d2f7672732f <error: Cannot access memory at address 0x64656d2f7672732f> |
44 | dest = 0x7f3c4920cf2e "" |
45 | #1 0x00000000010e074c in memcpy (__len=105, __src=<optimized out>, __dest=<optimized out>) at /usr/include/x86_64-linux-gnu/bits/string3.h:51 |
46 | No locals. |
47 | #2 append (len=105, s=<optimized out>, this=0x7f3c433f9e90) at /usr/src/hhvm/hphp/runtime/base/string-buffer.h:173 |
48 | No locals. |
49 | #3 append (s=..., this=<optimized out>) at /usr/src/hhvm/hphp/runtime/base/string-buffer.h:167 |
50 | No locals. |
51 | #4 HPHP::debug_string_backtrace (skip=skip@entry=false, ignore_args=ignore_args@entry=false, limit=limit@entry=0) at /usr/src/hhvm/hphp/runtime/ext/std/ext_std_errorfunc.cpp:128 |
52 | it = { |
53 | static initFuncTable = {0xa693e0 <HPHP::ArrayIter::IteratorObjInit(HPHP::ArrayIter*, HPHP::ObjectData*)>, 0xa67470 <HPHP::ArrayIter::VectorInit(HPHP::ArrayIter*, HPHP::ObjectData*)>, 0xa67490 <HPHP::ArrayIter::MapInit(HPHP::ArrayIter*, HPHP::ObjectData*)>, 0xa67530 <HPHP::ArrayIter::SetInit(HPHP::ArrayIter*, HPHP::ObjectData*)>, 0xa67580 <HPHP::ArrayIter::PairInit(HPHP::ArrayIter*, HPHP::ObjectData*)>, 0xa67590 <HPHP::ArrayIter::ImmVectorInit(HPHP::ArrayIter*, HPHP::ObjectData*)>, 0xa674e0 <HPHP::ArrayIter::ImmMapInit(HPHP::ArrayIter*, HPHP::ObjectData*)>, 0xa675b0 <HPHP::ArrayIter::ImmSetInit(HPHP::ArrayIter*, HPHP::ObjectData*)>}, |
54 | { |
55 | m_data = 0x7f3c49202940, |
56 | m_obj = 0x7f3c49202940 |
57 | }, |
58 | m_pos = 1, |
59 | m_version = 0, |
60 | { |
61 | { |
62 | m_itype = HPHP::ArrayIter::TypeUndefined, |
63 | m_nextHelperIdx = HPHP::ArrayPacked |
64 | }, |
65 | m_itypeAndNextHelperIdx = 0 |
66 | } |
67 | } |
68 | first = false |
69 | frame = SmartPtr<HPHP::ArrayData> = { |
70 | Python Exception <class 'gdb.error'> There is no member or method named key.: |
71 | 0x7f3c491b0b10 = 4 elements (kind==1) |
72 | } |
73 | it = { |
74 | static initFuncTable = {0xa693e0 <HPHP::ArrayIter::IteratorObjInit(HPHP::ArrayIter*, HPHP::ObjectData*)>, 0xa67470 <HPHP::ArrayIter::VectorInit(HPHP::ArrayIter*, HPHP::ObjectData*)>, 0xa67490 <HPHP::ArrayIter::MapInit(HPHP::ArrayIter*, HPHP::ObjectData*)>, 0xa67530 <HPHP::ArrayIter::SetInit(HPHP::ArrayIter*, HPHP::ObjectData*)>, 0xa67580 <HPHP::ArrayIter::PairInit(HPHP::ArrayIter*, HPHP::ObjectData*)>, 0xa67590 <HPHP::ArrayIter::ImmVectorInit(HPHP::ArrayIter*, HPHP::ObjectData*)>, 0xa674e0 <HPHP::ArrayIter::ImmMapInit(HPHP::ArrayIter*, HPHP::ObjectData*)>, 0xa675b0 <HPHP::ArrayIter::ImmSetInit(HPHP::ArrayIter*, HPHP::ObjectData*)>}, |
75 | { |
76 | m_data = 0x7f3c4920b590, |
77 | m_obj = 0x7f3c4920b590 |
78 | }, |
79 | m_pos = 0, |
80 | m_version = 0, |
81 | { |
82 | { |
83 | m_itype = HPHP::ArrayIter::TypeUndefined, |
84 | m_nextHelperIdx = HPHP::ArrayPacked |
85 | }, |
86 | m_itypeAndNextHelperIdx = 0 |
87 | } |
88 | } |
89 | bt = SmartPtr<HPHP::ArrayData> = { |
90 | 0x7f3c4920b590 = 17 elements (kind==0) = { |
91 | Python Exception <class 'gdb.error'> There is no member or method named key.: |
92 | 0 = Tv: 4 elements (kind==1), |
93 | Python Exception <class 'gdb.error'> There is no member or method named key.: |
94 | 1 = Tv: 6 elements (kind==1), |
95 | Python Exception <class 'gdb.error'> There is no member or method named key.: |
96 | 2 = Tv: 6 elements (kind==1), |
97 | Python Exception <class 'gdb.error'> There is no member or method named key.: |
98 | 3 = Tv: 6 elements (kind==1), |
99 | Python Exception <class 'gdb.error'> There is no member or method named key.: |
100 | 4 = Tv: 6 elements (kind==1), |
101 | Python Exception <class 'gdb.error'> There is no member or method named key.: |
102 | 5 = Tv: 6 elements (kind==1), |
103 | Python Exception <class 'gdb.error'> There is no member or method named key.: |
104 | 6 = Tv: 6 elements (kind==1), |
105 | Python Exception <class 'gdb.error'> There is no member or method named key.: |
106 | 7 = Tv: 6 elements (kind==1), |
107 | Python Exception <class 'gdb.error'> There is no member or method named key.: |
108 | 8 = Tv: 6 elements (kind==1), |
109 | Python Exception <class 'gdb.error'> There is no member or method named key.: |
110 | 9 = Tv: 6 elements (kind==1), |
111 | Python Exception <class 'gdb.error'> There is no member or method named key.: |
112 | 10 = Tv: 6 elements (kind==1), |
113 | Python Exception <class 'gdb.error'> There is no member or method named key.: |
114 | 11 = Tv: 6 elements (kind==1), |
115 | Python Exception <class 'gdb.error'> There is no member or method named key.: |
116 | 12 = Tv: 6 elements (kind==1), |
117 | Python Exception <class 'gdb.error'> There is no member or method named key.: |
118 | 13 = Tv: 6 elements (kind==1), |
119 | Python Exception <class 'gdb.error'> There is no member or method named key.: |
120 | 14 = Tv: 6 elements (kind==1), |
121 | Python Exception <class 'gdb.error'> There is no member or method named key.: |
122 | 15 = Tv: 6 elements (kind==1), |
123 | Python Exception <class 'gdb.error'> There is no member or method named key.: |
124 | 16 = Tv: 4 elements (kind==1) |
125 | } |
126 | } |
127 | buf = { |
128 | static kDefaultOutputLimit = 2147483646, |
129 | m_str = 0x7f3c4920c130, |
130 | m_buffer = 0x7f3c4920c148 "#0 tidy_repair_string(<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\"><html><head><title>test</title></head><body><p><br><br>C"..., |
131 | m_initialCap = 39, |
132 | m_maxBytes = 2147483646, |
133 | m_cap = 5095, |
134 | m_len = 3558 |
135 | } |
136 | i = 0 |
137 | #5 0x0000000000a57fe5 in HPHP::bt_handler (sig=11) at /usr/src/hhvm/hphp/runtime/base/crash-reporter.cpp:82 |
138 | pid = "17244\000\000\000\002\000\000\000\000" |
139 | tracefn = 0x7f3c433f9ef8 "/var/log/hhvm/stacktrace.17244.log" |
140 | fd = 23 |
141 | s_newBlacklist = {0x185ef92 "_ZN4HPHP16StackTraceNoHeap", 0x185efad "_ZN4HPHPL10bt_handlerEi", 0x185efc5 "killpg"} |
142 | st = { |
143 | <HPHP::StackTraceBase> = { |
144 | static Enabled = true, |
145 | static FunctionBlacklist = 0x2529450 <HPHP::bt_handler(int)::s_newBlacklist>, |
146 | static FunctionBlacklistCount = 3, |
147 | static MAXFRAME = 175 |
148 | }, |
149 | members of HPHP::StackTraceNoHeap: |
150 | m_btpointers = {0x15b6c85 <HPHP::StackTraceNoHeap::StackTraceNoHeap(bool)+53>, 0xa57eda <HPHP::bt_handler(int)+314>, 0x7f3c64d1fc30 <__restore_rt>, 0x98aba8 <HPHP::tvCastToStringInPlace(HPHP::TypedValue*)+392>, 0x7f3c5a3a6345 <zif_tidy_repair_string(int, zval*, zval**, zval*, int, void***)+549>, 0x128911b <HPHP::zend_wrap_func(HPHP::ActRec*)+283>, 0xc469c4 <HPHP::ExecutionContext::dispatchImpl<true>()+47444>, 0xc14689 <HPHP::ExecutionContext::dispatchBB()+9>, 0xde2082 <HPHP::jit::MCGenerator::enterTC(unsigned char*, void*)+354>, 0xc126be <HPHP::ExecutionContext::enterVM(HPHP::ActRec*, HPHP::ExecutionContext::StackArgsState, HPHP::Resumable*, HPHP::ObjectData*)+270>, 0xc1292c <HPHP::ExecutionContext::invokeFunc(HPHP::TypedValue*, HPHP::Func const*, HPHP::Variant const&, HPHP::ObjectData*, HPHP::Class*, HPHP::VarEnv*, HPHP::StringData*, HPHP::ExecutionContext::InvokeFlags)+364>, 0xc12b7a <HPHP::ExecutionContext::invokeUnit(HPHP::TypedValue*, HPHP::Unit const*)+106>, 0xa98791 <HPHP::invoke_file(HPHP::String const&, bool, char const*)+81>, 0xa9ae2a <HPHP::include_impl_invoke(HPHP::String const&, bool, char const*)+282>, 0xa4a619 <HPHP::hphp_invoke(HPHP::ExecutionContext*, std::string const&, bool, HPHP::Array const&, HPHP::VRefParamValue const&, std::string const&, std::string const&, bool&, std::string&, bool, bool, bool)+985>, 0xb23f34 <HPHP::HttpRequestHandler::executePHPRequest(HPHP::Transport*, HPHP::RequestURI&, HPHP::SourceRootInfo&, bool)+820>, 0xb25070 <HPHP::HttpRequestHandler::handleRequestImpl(HPHP::Transport*)+1376>, 0xb25b99 <HPHP::HttpRequestHandler::handleRequest(HPHP::Transport*)+9>, 0xb64c69 <HPHP::ServerWorker<std::shared_ptr<HPHP::FastCGIJob>, HPHP::FastCGITransportTraits>::doJobImpl(std::shared_ptr<HPHP::FastCGIJob>, bool)+409>, 0xb64e98 <HPHP::ServerWorker<std::shared_ptr<HPHP::FastCGIJob>, HPHP::FastCGITransportTraits>::doJob(std::shared_ptr<HPHP::FastCGIJob>)+56>, 0xb63e08 <HPHP::JobQueueWorker<std::shared_ptr<HPHP::FastCGIJob>, HPHP::Server*, true, false, HPHP::JobQueueDropVMStack>::start()+424>, 0x15b1c37 <HPHP::AsyncFuncImpl::ThreadFunc(void*)+71>, 0x7f3c658d7182 <start_thread+194>, 0x7f3c64de3fbd <clone+109>, 0x0, 0x7f3c4b072828, 0x7f3c433fa1d4, 0x7f3c66ea4840 <je_arena_bin_info>, 0x5b, 0x7, 0x0, 0x7f3c2920afd0, 0x0, 0x0, 0x7f3c4b0721f8, 0x0, 0x7f3c2920af90, 0x7f3c66c87d79 <je_tcache_alloc_small_hard+25>, 0x28, 0x70, 0x7f3c66ea4840 <je_arena_bin_info>, 0x7f3c66c56575 <malloc+1269>, 0x1, 0x7f3c546db108, 0x7f3c2920b040, 0x7f3c2920af90, 0x7f3c4a01c400, 0x3000000070, 0x28, 0x0, 0x0, 0x7f3c6ab82340 <_pcre_default_tables+256>, 0x7f3c6ab82240 <_pcre_default_tables>, 0x0, 0x10000000a, 0x0, 0x7f3c6ab82580 <_pcre_default_tables+832>, 0x7f3c2920af90, 0x0, 0x0, 0x0, 0x7f3c4b0728b0, 0x7f3c4b0727f0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f3c4b072760, 0x7f3c4b072e58, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x30, 0x100000000, 0x7f3c4a400000, 0x0, 0x7f3c433fa3d0, 0x7f3c66c5f03e <calloc+1278>, 0x1, 0x6c68e252536f7800, 0x6, 0x7f3c6ab6b4e9 <_pcre_jit_exec+345>, 0x7f3c433f2200, 0x7f3c491fbf08, 0x7f3c491fbf08, 0x7f3c491fcc22, 0x7f3c49202a88, 0x501000006, 0x0, 0xf424000000008, 0x0, 0x7f3c4916b1f0, 0x0, 0xd1a, 0x0, 0x7f3c6ab4ed9b <pcre_exec+3931>, 0x7f3c49202a88, 0x7f3c0000000c, 0x7f3c00000000, 0xa64d00 <folly::AtomicHashArray<HPHP::StringData const*, HPHP::SmartPtr<HPHP::pcre_cache_entry>, HPHP::string_data_hash, HPHP::ahm_string_data_same, std::allocator<char> >::insertInternal<HPHP::SmartPtr<HPHP::pcre_cache_entry> >(HPHP::StringData const*, HPHP::SmartPtr<HPHP::pcre_cache_entry>&&)+880>, 0x7f3c2920afd0, 0x7f3c491fbf08, 0x7f3c49202a88, 0x7f3c5ac08050, 0x7f3c433fa340, 0x7f3c5ac08040, 0x4d430001, 0x7f3c2106fe20, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f3c433fa770, 0x7f3c4916b1f0, 0x7f3c433fa570, 0x7f3c4916b1f0, 0x7f3c433fa4c0, 0xa5d7c1 <HPHP::pcre_get_compiled_regex_cache(HPHP::String const&)+1361>, 0x7f3c5476c008, 0x200, 0x0, 0x7f3c2920af60, 0x0, 0x7f3c547bf4e0, 0x7f3c00000000, 0xbf92da <HPHP::ExecutionContext::doFCall(HPHP::ActRec*, unsigned char const*&)+26>, 0x0, 0x7f3c547bf310, 0x7f3c49202a80, 0x7f3c5c0092c0, 0x0, 0x4916b280, 0x7f3c433fa470, 0x0, 0x7f3c484dc118, 0x7f3c547bf410, 0x7f3c2920afd0, 0xa5cc97 <HPHP::get_subpat_names(HPHP::pcre_cache_entry const*)+103>, 0x0, 0x7f3c5c11d1b0, 0x7f3c433fa450, 0x7f3c4916b1f0, 0x7f3c433fa4c0, 0x0, 0x7f3c4916b208, 0x7f3c547bf410, 0x7f3c49202a88, 0xa5cc97 <HPHP::get_subpat_names(HPHP::pcre_cache_entry const*)+103>, 0x0, 0x0, 0x7f3c433fa4a0, 0x9098db <HPHP::StringData::Make(unsigned long)+251>, 0x7f3c2920afd0, 0x6c68e252536f7800, 0x0, 0x0, 0x7f3c433fa4c0, 0x0, 0x0, 0x0, 0x7f3c433fa6e0, 0xa5f80e <HPHP::php_pcre_replace(HPHP::String const&, HPHP::String const&, HPHP::Variant const&, bool, int, int*)+174>, 0x7f3c49202a88}, |
151 | m_btpointers_cnt = 24 |
152 | } |
153 | debuggerCount = <optimized out> |
154 | #6 <signal handler called> |
155 | No locals. |
156 | #7 HPHP::tvCastToStringInPlace (tv=0x7f3c3f01ffa0) at /usr/src/hhvm/hphp/runtime/base/string-data.h:215 |
157 | No locals. |
158 | #8 0x00007f3c5a3a6345 in php_tidy_quick_repair (return_value_ptr=<optimized out>, this_ptr=<optimized out>, return_value_used=<optimized out>, is_file=0 '\000', tsrm_ls=0x7f3c546af7a0, return_value=0x7f3c491eceb0, ht=<optimized out>) at /home/ori/tmp/tidy/debian/build-hhvm/tidy.c:598 |
159 | arg1_len = 3533 |
160 | data = 0x7f3c491a9378 "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\"><html><head><title>test</title></head><body><p><br><br>Compulsive paying is a m"... |
161 | enc_len = 4 |
162 | data_len = 3533 |
163 | use_include_path = 0 '\000' |
164 | arg1 = 0x7f3c491a9378 "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\"><html><head><title>test</title></head><body><p><br><br>Compulsive paying is a m"... |
165 | enc = 0x7f3c4acbeef8 "utf8" |
166 | doc = 0x7f3c3f05bd08 |
167 | errbuf = 0x7f3c491ecd78 |
168 | config = 0x7f3c491ecee0 |
169 | #9 zif_tidy_repair_string (ht=<optimized out>, return_value=0x7f3c491eceb0, return_value_ptr=<optimized out>, this_ptr=<optimized out>, return_value_used=<optimized out>, tsrm_ls=0x7f3c546af7a0) at /home/ori/tmp/tidy/debian/build-hhvm/tidy.c:1337 |
170 | No locals. |
171 | #10 0x000000000128911b in HPHP::zend_wrap_func (ar=0x7f3c547bf380) at /usr/src/hhvm/hphp/runtime/ext_zend_compat/hhvm/zend-wrap-func.cpp:96 |
172 | _ = { |
173 | <boost::noncopyable_::noncopyable> = {<No data fields>}, |
174 | members of HPHP::VMRegAnchor: |
175 | m_old = HPHP::CLEAN |
176 | } |
177 | return_value_var = Tv: Ref: { |
178 | <HPHP::TypedValue> = Null, |
179 | members of HPHP::TypedValueAux: |
180 | static auxOffset = 12, |
181 | static auxSize = 4 |
182 | } |
183 | tsrm_ls = 0x7f3c546af7a0 |
184 | native_func = 0x7f3c5a3a6120 <zif_tidy_repair_string(int, zval*, zval**, zval*, int, void***)> |
185 | this_ptr_var = Tv: Ref: { |
186 | <HPHP::TypedValue> = Null, |
187 | members of HPHP::TypedValueAux: |
188 | static auxOffset = 12, |
189 | static auxSize = 4 |
190 | } |
191 | return_value_ptr = 0x7f3c433faba0 |
192 | #11 0x0000000000c469c4 in iopNativeImpl (pc=<optimized out>, this=<optimized out>) at /usr/src/hhvm/hphp/runtime/vm/bytecode.cpp:6880 |
193 | sfp = 0x7f3c5af0a000 |
194 | soff = 989855744 |
195 | #12 HPHP::ExecutionContext::dispatchImpl<true> (this=0x7f3c3f01ffa0) at /usr/src/hhvm/hphp/runtime/vm/bytecode.cpp:7518 |
196 | optabDirect = {0xc4776d <HPHP::ExecutionContext::dispatchImpl<true>()+50941>, 0xc3b22f <HPHP::ExecutionContext::dispatchImpl<true>()+447>, 0xc3d1cb <HPHP::ExecutionContext::dispatchImpl<true>()+8539>, 0xc3fdff <HPHP::ExecutionContext::dispatchImpl<true>()+19855>, 0xc3e82d <HPHP::ExecutionContext::dispatchImpl<true>()+14269>, 0xc405e1 <HPHP::ExecutionContext::dispatchImpl<true>()+21873>, 0xc3bcdc <HPHP::ExecutionContext::dispatchImpl<true>()+3180>, 0xc3bd65 <HPHP::ExecutionContext::dispatchImpl<true>()+3317>, 0xc40890 <HPHP::ExecutionContext::dispatchImpl<true>()+22560>, 0xc41722 <HPHP::ExecutionContext::dispatchImpl<true>()+26290>, 0xc3faa8 <HPHP::ExecutionContext::dispatchImpl<true>()+19000>, 0xc3fb24 <HPHP::ExecutionContext::dispatchImpl<true>()+19124>, 0xc411e7 <HPHP::ExecutionContext::dispatchImpl<true>()+24951>, 0xc4125f <HPHP::ExecutionContext::dispatchImpl<true>()+25071>, 0xc3db59 <HPHP::ExecutionContext::dispatchImpl<true>()+10985>, 0xc40af4 <HPHP::ExecutionContext::dispatchImpl<true>()+23172>, 0xc3dbcc <HPHP::ExecutionContext::dispatchImpl<true>()+11100>, 0xc3dc47 <HPHP::ExecutionContext::dispatchImpl<true>()+11223>, 0xc402eb <HPHP::ExecutionContext::dispatchImpl<true>()+21115>, 0xc41b29 <HPHP::ExecutionContext::dispatchImpl<true>()+27321>, 0xc415cd <HPHP::ExecutionContext::dispatchImpl<true>()+25949>, 0xc4166c <HPHP::ExecutionContext::dispatchImpl<true>()+26108>, 0xc3b54b <HPHP::ExecutionContext::dispatchImpl<true>()+1243>, 0xc42072 <HPHP::ExecutionContext::dispatchImpl<true>()+28674>, 0xc4071b <HPHP::ExecutionContext::dispatchImpl<true>()+22187>, 0xc421c8 <HPHP::ExecutionContext::dispatchImpl<true>()+29016>, 0xc3f608 <HPHP::ExecutionContext::dispatchImpl<true>()+17816>, 0xc4185e <HPHP::ExecutionContext::dispatchImpl<true>()+26606>, 0xc3f6af <HPHP::ExecutionContext::dispatchImpl<true>()+17983>, 0xc3f76f <HPHP::ExecutionContext::dispatchImpl<true>()+18175>, 0xc3d4c8 <HPHP::ExecutionContext::dispatchImpl<true>()+9304>, 0xc3d59c <HPHP::ExecutionContext::dispatchImpl<true>()+9516>, 0xc40c75 <HPHP::ExecutionContext::dispatchImpl<true>()+23557>, 0xc42122 <HPHP::ExecutionContext::dispatchImpl<true>()+28850>, 0xc3ff12 <HPHP::ExecutionContext::dispatchImpl<true>()+20130>, 0xc41f0a <HPHP::ExecutionContext::dispatchImpl<true>()+28314>, 0xc41daa <HPHP::ExecutionContext::dispatchImpl<true>()+27962>, 0xc41e49 <HPHP::ExecutionContext::dispatchImpl<true>()+28121>, 0xc3c9a1 <HPHP::ExecutionContext::dispatchImpl<true>()+6449>, 0xc3ca60 <HPHP::ExecutionContext::dispatchImpl<true>()+6640>, 0xc3cb41 <HPHP::ExecutionContext::dispatchImpl<true>()+6865>, 0xc3cc15 <HPHP::ExecutionContext::dispatchImpl<true>()+7077>, 0xc3ccf9 <HPHP::ExecutionContext::dispatchImpl<true>()+7305>, 0xc409ad <HPHP::ExecutionContext::dispatchImpl<true>()+22845>, 0xc3fc48 <HPHP::ExecutionContext::dispatchImpl<true>()+19416>, 0xc41cb2 <HPHP::ExecutionContext::dispatchImpl<true>()+27714>, 0xc3df91 <HPHP::ExecutionContext::dispatchImpl<true>()+12065>, 0xc3e132 <HPHP::ExecutionContext::dispatchImpl<true>()+12482>, 0xc3e1e1 <HPHP::ExecutionContext::dispatchImpl<true>()+12657>, 0xc3e290 <HPHP::ExecutionContext::dispatchImpl<true>()+12832>, 0xc40434 <HPHP::ExecutionContext::dispatchImpl<true>()+21444>, 0xc41fc3 <HPHP::ExecutionContext::dispatchImpl<true>()+28499>, 0xc41396 <HPHP::ExecutionContext::dispatchImpl<true>()+25382>, 0xc41445 <HPHP::ExecutionContext::dispatchImpl<true>()+25557>, 0xc3b3a7 <HPHP::ExecutionContext::dispatchImpl<true>()+823>, 0xc3ed09 <HPHP::ExecutionContext::dispatchImpl<true>()+15513>, 0xc3eacd <HPHP::ExecutionContext::dispatchImpl<true>()+14941>, 0xc3ee7c <HPHP::ExecutionContext::dispatchImpl<true>()+15884>, 0xc3dd6a <HPHP::ExecutionContext::dispatchImpl<true>()+11514>, 0xc3ddeb <HPHP::ExecutionContext::dispatchImpl<true>()+11643>, 0xc3ec40 <HPHP::ExecutionContext::dispatchImpl<true>()+15312>, 0xc3edb8 <HPHP::ExecutionContext::dispatchImpl<true>()+15688>, 0xc3d30c <HPHP::ExecutionContext::dispatchImpl<true>()+8860>, 0xc40370 <HPHP::ExecutionContext::dispatchImpl<true>()+21248>, 0xc3fb87 <HPHP::ExecutionContext::dispatchImpl<true>()+19223>, 0xc40657 <HPHP::ExecutionContext::dispatchImpl<true>()+21991>, 0xc3e95d <HPHP::ExecutionContext::dispatchImpl<true>()+14573>, 0xc3fe63 <HPHP::ExecutionContext::dispatchImpl<true>()+19955>, 0xc3ea1e <HPHP::ExecutionContext::dispatchImpl<true>()+14766>, 0xc3eb91 <HPHP::ExecutionContext::dispatchImpl<true>()+15137>, 0xc3be76 <HPHP::ExecutionContext::dispatchImpl<true>()+3590>, 0xc3bee5 <HPHP::ExecutionContext::dispatchImpl<true>()+3701>, 0xc3c13e <HPHP::ExecutionContext::dispatchImpl<true>()+4302>, 0xc3c1ed <HPHP::ExecutionContext::dispatchImpl<true>()+4477>, 0xc3c003 <HPHP::ExecutionContext::dispatchImpl<true>()+3987>, 0xc3c361 <HPHP::ExecutionContext::dispatchImpl<true>()+4849>, 0xc3c2f2 <HPHP::ExecutionContext::dispatchImpl<true>()+4738>, 0xc3c4d8 <HPHP::ExecutionContext::dispatchImpl<true>()+5224>, 0xc3bf94 <HPHP::ExecutionContext::dispatchImpl<true>()+3876>, 0xc3c547 <HPHP::ExecutionContext::dispatchImpl<true>()+5335>, 0xc3c25c <HPHP::ExecutionContext::dispatchImpl<true>()+4588>, 0xc3c758 <HPHP::ExecutionContext::dispatchImpl<true>()+5864>, 0xc3c072 <HPHP::ExecutionContext::dispatchImpl<true>()+4098>, 0xc3c629 <HPHP::ExecutionContext::dispatchImpl<true>()+5561>, 0xc3c3d0 <HPHP::ExecutionContext::dispatchImpl<true>()+4960>, 0xc3c6d5 <HPHP::ExecutionContext::dispatchImpl<true>()+5733>, 0xc3b8ad <HPHP::ExecutionContext::dispatchImpl<true>()+2109>, 0xc407c2 <HPHP::ExecutionContext::dispatchImpl<true>()+22354>, 0xc3b91a <HPHP::ExecutionContext::dispatchImpl<true>()+2218>, 0xc3b9e8 <HPHP::ExecutionContext::dispatchImpl<true>()+2424>, 0xc3f950 <HPHP::ExecutionContext::dispatchImpl<true>()+18656>, 0xc40de9 <HPHP::ExecutionContext::dispatchImpl<true>()+23929>, 0xc40d1f <HPHP::ExecutionContext::dispatchImpl<true>()+23727>, 0xc40eb1 <HPHP::ExecutionContext::dispatchImpl<true>()+24129>, 0xc3d881 <HPHP::ExecutionContext::dispatchImpl<true>()+10257>, 0xc3d968 <HPHP::ExecutionContext::dispatchImpl<true>()+10488>, 0xc40a34 <HPHP::ExecutionContext::dispatchImpl<true>()+22980>, 0xc40fe9 <HPHP::ExecutionContext::dispatchImpl<true>()+24441>, 0xc3ffd8 <HPHP::ExecutionContext::dispatchImpl<true>()+20328>, 0xc40efc <HPHP::ExecutionContext::dispatchImpl<true>()+24204>, 0xc40090 <HPHP::ExecutionContext::dispatchImpl<true>()+20512>, 0xc40176 <HPHP::ExecutionContext::dispatchImpl<true>()+20742>, 0xc3ce47 <HPHP::ExecutionContext::dispatchImpl<true>()+7639>, 0xc408ff <HPHP::ExecutionContext::dispatchImpl<true>()+22671>, 0xc3cf17 <HPHP::ExecutionContext::dispatchImpl<true>()+7847>, 0xc3cfe3 <HPHP::ExecutionContext::dispatchImpl<true>()+8051>, 0xc3fccf <HPHP::ExecutionContext::dispatchImpl<true>()+19551>, 0xc414f4 <HPHP::ExecutionContext::dispatchImpl<true>()+25732>, 0xc410be <HPHP::ExecutionContext::dispatchImpl<true>()+24654>, 0xc41135 <HPHP::ExecutionContext::dispatchImpl<true>()+24773>, 0xc3e515 <HPHP::ExecutionContext::dispatchImpl<true>()+13477>, 0xc41791 <HPHP::ExecutionContext::dispatchImpl<true>()+26401>, 0xc40b6f <HPHP::ExecutionContext::dispatchImpl<true>()+23295>, 0xc41bb0 <HPHP::ExecutionContext::dispatchImpl<true>()+27456>, 0xc404e3 <HPHP::ExecutionContext::dispatchImpl<true>()+21619>, 0xc41948 <HPHP::ExecutionContext::dispatchImpl<true>()+26840>, 0xc412c2 <HPHP::ExecutionContext::dispatchImpl<true>()+25170>, 0xc41a10 <HPHP::ExecutionContext::dispatchImpl<true>()+27040>, 0xc3b292 <HPHP::ExecutionContext::dispatchImpl<true>()+546>, 0xc470af <HPHP::ExecutionContext::dispatchImpl<true>()+49215>, 0xc44de1 <HPHP::ExecutionContext::dispatchImpl<true>()+40305>, 0xc47701 <HPHP::ExecutionContext::dispatchImpl<true>()+50833>, 0xc3e8a7 <HPHP::ExecutionContext::dispatchImpl<true>()+14391>, 0xc475cb <HPHP::ExecutionContext::dispatchImpl<true>()+50523>, 0xc467a4 <HPHP::ExecutionContext::dispatchImpl<true>()+46900>, 0xc4685c <HPHP::ExecutionContext::dispatchImpl<true>()+47084>, 0xc3d22e <HPHP::ExecutionContext::dispatchImpl<true>()+8638>, 0xc463e0 <HPHP::ExecutionContext::dispatchImpl<true>()+45936>, 0xc462ad <HPHP::ExecutionContext::dispatchImpl<true>()+45629>, 0xc47239 <HPHP::ExecutionContext::dispatchImpl<true>()+49609>, 0xc43324 <HPHP::ExecutionContext::dispatchImpl<true>()+33460>, 0xc46bee <HPHP::ExecutionContext::dispatchImpl<true>()+47998>, 0xc433e7 <HPHP::ExecutionContext::dispatchImpl<true>()+33655>, 0xc43485 <HPHP::ExecutionContext::dispatchImpl<true>()+33813>, 0xc3bddf <HPHP::ExecutionContext::dispatchImpl<true>()+3439>, 0xc4461b <HPHP::ExecutionContext::dispatchImpl<true>()+38315>, 0xc4454e <HPHP::ExecutionContext::dispatchImpl<true>()+38110>, 0xc447d1 <HPHP::ExecutionContext::dispatchImpl<true>()+38753>, 0xc42419 <HPHP::ExecutionContext::dispatchImpl<true>()+29609>, 0xc446fe <HPHP::ExecutionContext::dispatchImpl<true>()+38542>, 0xc424f3 <HPHP::ExecutionContext::dispatchImpl<true>()+29827>, 0xc4263a <HPHP::ExecutionContext::dispatchImpl<true>()+30154>, 0xc3dcc2 <HPHP::ExecutionContext::dispatchImpl<true>()+11346>, 0xc46a78 <HPHP::ExecutionContext::dispatchImpl<true>()+47624>, 0xc45f8d <HPHP::ExecutionContext::dispatchImpl<true>()+44829>, 0xc46064 <HPHP::ExecutionContext::dispatchImpl<true>()+45044>, 0xc443d8 <HPHP::ExecutionContext::dispatchImpl<true>()+37736>, 0xc4449e <HPHP::ExecutionContext::dispatchImpl<true>()+37934>, 0xc46610 <HPHP::ExecutionContext::dispatchImpl<true>()+46496>, 0xc46eb0 <HPHP::ExecutionContext::dispatchImpl<true>()+48704>, 0xc3b5fb <HPHP::ExecutionContext::dispatchImpl<true>()+1419>, 0xc45220 <HPHP::ExecutionContext::dispatchImpl<true>()+41392>, 0xc3b6c3 <HPHP::ExecutionContext::dispatchImpl<true>()+1619>, 0xc3b7b6 <HPHP::ExecutionContext::dispatchImpl<true>()+1862>, 0xc3f87f <HPHP::ExecutionContext::dispatchImpl<true>()+18447>, 0xc453d1 <HPHP::ExecutionContext::dispatchImpl<true>()+41825>, 0xc452e5 <HPHP::ExecutionContext::dispatchImpl<true>()+41589>, 0xc45490 <HPHP::ExecutionContext::dispatchImpl<true>()+42016>, 0xc3d66c <HPHP::ExecutionContext::dispatchImpl<true>()+9724>, 0xc3d789 <HPHP::ExecutionContext::dispatchImpl<true>()+10009>, 0xc43dad <HPHP::ExecutionContext::dispatchImpl<true>()+36157>, 0xc43ef0 <HPHP::ExecutionContext::dispatchImpl<true>()+36480>, 0xc43ad0 <HPHP::ExecutionContext::dispatchImpl<true>()+35424>, 0xc43c3d <HPHP::ExecutionContext::dispatchImpl<true>()+35789>, 0xc456fc <HPHP::ExecutionContext::dispatchImpl<true>()+42636>, 0xc45b88 <HPHP::ExecutionContext::dispatchImpl<true>()+43800>, 0xc3cd87 <HPHP::ExecutionContext::dispatchImpl<true>()+7447>, 0xc4563c <HPHP::ExecutionContext::dispatchImpl<true>()+42444>, 0xc4557c <HPHP::ExecutionContext::dispatchImpl<true>()+42252>, 0xc45f0a <HPHP::ExecutionContext::dispatchImpl<true>()+44698>, 0xc42e23 <HPHP::ExecutionContext::dispatchImpl<true>()+32179>, 0xc42f00 <HPHP::ExecutionContext::dispatchImpl<true>()+32400>, 0xc45c0b <HPHP::ExecutionContext::dispatchImpl<true>()+43931>, 0xc45d59 <HPHP::ExecutionContext::dispatchImpl<true>()+44265>, 0xc3e33f <HPHP::ExecutionContext::dispatchImpl<true>()+13007>, 0xc45ea0 <HPHP::ExecutionContext::dispatchImpl<true>()+44592>, 0xc4589f <HPHP::ExecutionContext::dispatchImpl<true>()+43055>, 0xc459d0 <HPHP::ExecutionContext::dispatchImpl<true>()+43360>, 0xc44a08 <HPHP::ExecutionContext::dispatchImpl<true>()+39320>, 0xc45b08 <HPHP::ExecutionContext::dispatchImpl<true>()+43672>, 0xc44b08 <HPHP::ExecutionContext::dispatchImpl<true>()+39576>, 0xc44c49 <HPHP::ExecutionContext::dispatchImpl<true>()+39897>, 0xc3b456 <HPHP::ExecutionContext::dispatchImpl<true>()+998>, 0xc3f428 <HPHP::ExecutionContext::dispatchImpl<true>()+17336>, 0xc3f320 <HPHP::ExecutionContext::dispatchImpl<true>()+17072>, 0xc3f518 <HPHP::ExecutionContext::dispatchImpl<true>()+17576>, 0xc3eedd <HPHP::ExecutionContext::dispatchImpl<true>()+15981>, 0xc3eff8 <HPHP::ExecutionContext::dispatchImpl<true>()+16264>, 0xc3f130 <HPHP::ExecutionContext::dispatchImpl<true>()+16576>, 0xc3f248 <HPHP::ExecutionContext::dispatchImpl<true>()+16856>, 0xc3d3d5 <HPHP::ExecutionContext::dispatchImpl<true>()+9061>, 0xc43ffa <HPHP::ExecutionContext::dispatchImpl<true>()+36746>, 0xc438b6 <HPHP::ExecutionContext::dispatchImpl<true>()+34886>, 0xc439b0 <HPHP::ExecutionContext::dispatchImpl<true>()+35136>, 0xc43523 <HPHP::ExecutionContext::dispatchImpl<true>()+33971>, 0xc43620 <HPHP::ExecutionContext::dispatchImpl<true>()+34224>, 0xc43778 <HPHP::ExecutionContext::dispatchImpl<true>()+34568>, 0xc43817 <HPHP::ExecutionContext::dispatchImpl<true>()+34727>, 0xc3c827 <HPHP::ExecutionContext::dispatchImpl<true>()+6071>, 0xc3c8c6 <HPHP::ExecutionContext::dispatchImpl<true>()+6230>...} |
197 | optabDbg = {0xc4773c <HPHP::ExecutionContext::dispatchImpl<true>()+50892>, 0xc3b207 <HPHP::ExecutionContext::dispatchImpl<true>()+407>, 0xc3d1a3 <HPHP::ExecutionContext::dispatchImpl<true>()+8499>, 0xc3fdd7 <HPHP::ExecutionContext::dispatchImpl<true>()+19815>, 0xc3e805 <HPHP::ExecutionContext::dispatchImpl<true>()+14229>, 0xc405b9 <HPHP::ExecutionContext::dispatchImpl<true>()+21833>, 0xc3bcb4 <HPHP::ExecutionContext::dispatchImpl<true>()+3140>, 0xc3bd3d <HPHP::ExecutionContext::dispatchImpl<true>()+3277>, 0xc40868 <HPHP::ExecutionContext::dispatchImpl<true>()+22520>, 0xc416fa <HPHP::ExecutionContext::dispatchImpl<true>()+26250>, 0xc3fa80 <HPHP::ExecutionContext::dispatchImpl<true>()+18960>, 0xc3fafc <HPHP::ExecutionContext::dispatchImpl<true>()+19084>, 0xc411bf <HPHP::ExecutionContext::dispatchImpl<true>()+24911>, 0xc41237 <HPHP::ExecutionContext::dispatchImpl<true>()+25031>, 0xc3db31 <HPHP::ExecutionContext::dispatchImpl<true>()+10945>, 0xc40acc <HPHP::ExecutionContext::dispatchImpl<true>()+23132>, 0xc3dba4 <HPHP::ExecutionContext::dispatchImpl<true>()+11060>, 0xc3dc1f <HPHP::ExecutionContext::dispatchImpl<true>()+11183>, 0xc402c3 <HPHP::ExecutionContext::dispatchImpl<true>()+21075>, 0xc41b01 <HPHP::ExecutionContext::dispatchImpl<true>()+27281>, 0xc415a5 <HPHP::ExecutionContext::dispatchImpl<true>()+25909>, 0xc41644 <HPHP::ExecutionContext::dispatchImpl<true>()+26068>, 0xc3b523 <HPHP::ExecutionContext::dispatchImpl<true>()+1203>, 0xc4204a <HPHP::ExecutionContext::dispatchImpl<true>()+28634>, 0xc406f3 <HPHP::ExecutionContext::dispatchImpl<true>()+22147>, 0xc421a0 <HPHP::ExecutionContext::dispatchImpl<true>()+28976>, 0xc3f5e0 <HPHP::ExecutionContext::dispatchImpl<true>()+17776>, 0xc41836 <HPHP::ExecutionContext::dispatchImpl<true>()+26566>, 0xc3f687 <HPHP::ExecutionContext::dispatchImpl<true>()+17943>, 0xc3f747 <HPHP::ExecutionContext::dispatchImpl<true>()+18135>, 0xc3d4a0 <HPHP::ExecutionContext::dispatchImpl<true>()+9264>, 0xc3d574 <HPHP::ExecutionContext::dispatchImpl<true>()+9476>, 0xc40c4d <HPHP::ExecutionContext::dispatchImpl<true>()+23517>, 0xc420fa <HPHP::ExecutionContext::dispatchImpl<true>()+28810>, 0xc3feea <HPHP::ExecutionContext::dispatchImpl<true>()+20090>, 0xc41ee2 <HPHP::ExecutionContext::dispatchImpl<true>()+28274>, 0xc41d82 <HPHP::ExecutionContext::dispatchImpl<true>()+27922>, 0xc41e21 <HPHP::ExecutionContext::dispatchImpl<true>()+28081>, 0xc3c979 <HPHP::ExecutionContext::dispatchImpl<true>()+6409>, 0xc3ca38 <HPHP::ExecutionContext::dispatchImpl<true>()+6600>, 0xc3cb19 <HPHP::ExecutionContext::dispatchImpl<true>()+6825>, 0xc3cbed <HPHP::ExecutionContext::dispatchImpl<true>()+7037>, 0xc3ccd1 <HPHP::ExecutionContext::dispatchImpl<true>()+7265>, 0xc40985 <HPHP::ExecutionContext::dispatchImpl<true>()+22805>, 0xc3fc20 <HPHP::ExecutionContext::dispatchImpl<true>()+19376>, 0xc41c8a <HPHP::ExecutionContext::dispatchImpl<true>()+27674>, 0xc3df69 <HPHP::ExecutionContext::dispatchImpl<true>()+12025>, 0xc3e10a <HPHP::ExecutionContext::dispatchImpl<true>()+12442>, 0xc3e1b9 <HPHP::ExecutionContext::dispatchImpl<true>()+12617>, 0xc3e268 <HPHP::ExecutionContext::dispatchImpl<true>()+12792>, 0xc4040c <HPHP::ExecutionContext::dispatchImpl<true>()+21404>, 0xc41f9b <HPHP::ExecutionContext::dispatchImpl<true>()+28459>, 0xc4136e <HPHP::ExecutionContext::dispatchImpl<true>()+25342>, 0xc4141d <HPHP::ExecutionContext::dispatchImpl<true>()+25517>, 0xc3b37f <HPHP::ExecutionContext::dispatchImpl<true>()+783>, 0xc3ece1 <HPHP::ExecutionContext::dispatchImpl<true>()+15473>, 0xc3eaa5 <HPHP::ExecutionContext::dispatchImpl<true>()+14901>, 0xc3ee54 <HPHP::ExecutionContext::dispatchImpl<true>()+15844>, 0xc3dd42 <HPHP::ExecutionContext::dispatchImpl<true>()+11474>, 0xc3ddc3 <HPHP::ExecutionContext::dispatchImpl<true>()+11603>, 0xc3ec18 <HPHP::ExecutionContext::dispatchImpl<true>()+15272>, 0xc3ed90 <HPHP::ExecutionContext::dispatchImpl<true>()+15648>, 0xc3d2e4 <HPHP::ExecutionContext::dispatchImpl<true>()+8820>, 0xc40348 <HPHP::ExecutionContext::dispatchImpl<true>()+21208>, 0xc3fb5f <HPHP::ExecutionContext::dispatchImpl<true>()+19183>, 0xc4062f <HPHP::ExecutionContext::dispatchImpl<true>()+21951>, 0xc3e935 <HPHP::ExecutionContext::dispatchImpl<true>()+14533>, 0xc3fe3b <HPHP::ExecutionContext::dispatchImpl<true>()+19915>, 0xc3e9f6 <HPHP::ExecutionContext::dispatchImpl<true>()+14726>, 0xc3eb69 <HPHP::ExecutionContext::dispatchImpl<true>()+15097>, 0xc3be4e <HPHP::ExecutionContext::dispatchImpl<true>()+3550>, 0xc3bebd <HPHP::ExecutionContext::dispatchImpl<true>()+3661>, 0xc3c116 <HPHP::ExecutionContext::dispatchImpl<true>()+4262>, 0xc3c1c5 <HPHP::ExecutionContext::dispatchImpl<true>()+4437>, 0xc3bfdb <HPHP::ExecutionContext::dispatchImpl<true>()+3947>, 0xc3c339 <HPHP::ExecutionContext::dispatchImpl<true>()+4809>, 0xc3c2ca <HPHP::ExecutionContext::dispatchImpl<true>()+4698>, 0xc3c4b0 <HPHP::ExecutionContext::dispatchImpl<true>()+5184>, 0xc3bf6c <HPHP::ExecutionContext::dispatchImpl<true>()+3836>, 0xc3c51f <HPHP::ExecutionContext::dispatchImpl<true>()+5295>, 0xc3c234 <HPHP::ExecutionContext::dispatchImpl<true>()+4548>, 0xc3c730 <HPHP::ExecutionContext::dispatchImpl<true>()+5824>, 0xc3c04a <HPHP::ExecutionContext::dispatchImpl<true>()+4058>, 0xc3c601 <HPHP::ExecutionContext::dispatchImpl<true>()+5521>, 0xc3c3a8 <HPHP::ExecutionContext::dispatchImpl<true>()+4920>, 0xc3c6ad <HPHP::ExecutionContext::dispatchImpl<true>()+5693>, 0xc3b885 <HPHP::ExecutionContext::dispatchImpl<true>()+2069>, 0xc4079a <HPHP::ExecutionContext::dispatchImpl<true>()+22314>, 0xc3b8f2 <HPHP::ExecutionContext::dispatchImpl<true>()+2178>, 0xc3b9c0 <HPHP::ExecutionContext::dispatchImpl<true>()+2384>, 0xc3f928 <HPHP::ExecutionContext::dispatchImpl<true>()+18616>, 0xc40dc1 <HPHP::ExecutionContext::dispatchImpl<true>()+23889>, 0xc40cf7 <HPHP::ExecutionContext::dispatchImpl<true>()+23687>, 0xc40e89 <HPHP::ExecutionContext::dispatchImpl<true>()+24089>, 0xc3d859 <HPHP::ExecutionContext::dispatchImpl<true>()+10217>, 0xc3d940 <HPHP::ExecutionContext::dispatchImpl<true>()+10448>, 0xc40a0c <HPHP::ExecutionContext::dispatchImpl<true>()+22940>, 0xc40fc1 <HPHP::ExecutionContext::dispatchImpl<true>()+24401>, 0xc3ffb0 <HPHP::ExecutionContext::dispatchImpl<true>()+20288>, 0xc40ed4 <HPHP::ExecutionContext::dispatchImpl<true>()+24164>, 0xc40068 <HPHP::ExecutionContext::dispatchImpl<true>()+20472>, 0xc4014e <HPHP::ExecutionContext::dispatchImpl<true>()+20702>, 0xc3ce1f <HPHP::ExecutionContext::dispatchImpl<true>()+7599>, 0xc408d7 <HPHP::ExecutionContext::dispatchImpl<true>()+22631>, 0xc3ceef <HPHP::ExecutionContext::dispatchImpl<true>()+7807>, 0xc3cfbb <HPHP::ExecutionContext::dispatchImpl<true>()+8011>, 0xc3fca7 <HPHP::ExecutionContext::dispatchImpl<true>()+19511>, 0xc414cc <HPHP::ExecutionContext::dispatchImpl<true>()+25692>, 0xc41096 <HPHP::ExecutionContext::dispatchImpl<true>()+24614>, 0xc4110d <HPHP::ExecutionContext::dispatchImpl<true>()+24733>, 0xc3e4ed <HPHP::ExecutionContext::dispatchImpl<true>()+13437>, 0xc41769 <HPHP::ExecutionContext::dispatchImpl<true>()+26361>, 0xc40b47 <HPHP::ExecutionContext::dispatchImpl<true>()+23255>, 0xc41b88 <HPHP::ExecutionContext::dispatchImpl<true>()+27416>, 0xc404bb <HPHP::ExecutionContext::dispatchImpl<true>()+21579>, 0xc41920 <HPHP::ExecutionContext::dispatchImpl<true>()+26800>, 0xc4129a <HPHP::ExecutionContext::dispatchImpl<true>()+25130>, 0xc419e8 <HPHP::ExecutionContext::dispatchImpl<true>()+27000>, 0xc3b26a <HPHP::ExecutionContext::dispatchImpl<true>()+506>, 0xc47087 <HPHP::ExecutionContext::dispatchImpl<true>()+49175>, 0xc44db9 <HPHP::ExecutionContext::dispatchImpl<true>()+40265>, 0xc476d9 <HPHP::ExecutionContext::dispatchImpl<true>()+50793>, 0xc3e87f <HPHP::ExecutionContext::dispatchImpl<true>()+14351>, 0xc475a3 <HPHP::ExecutionContext::dispatchImpl<true>()+50483>, 0xc4677c <HPHP::ExecutionContext::dispatchImpl<true>()+46860>, 0xc46834 <HPHP::ExecutionContext::dispatchImpl<true>()+47044>, 0xc3d206 <HPHP::ExecutionContext::dispatchImpl<true>()+8598>, 0xc463b8 <HPHP::ExecutionContext::dispatchImpl<true>()+45896>, 0xc46285 <HPHP::ExecutionContext::dispatchImpl<true>()+45589>, 0xc47211 <HPHP::ExecutionContext::dispatchImpl<true>()+49569>, 0xc432fc <HPHP::ExecutionContext::dispatchImpl<true>()+33420>, 0xc46bc6 <HPHP::ExecutionContext::dispatchImpl<true>()+47958>, 0xc433bf <HPHP::ExecutionContext::dispatchImpl<true>()+33615>, 0xc4345d <HPHP::ExecutionContext::dispatchImpl<true>()+33773>, 0xc3bdb7 <HPHP::ExecutionContext::dispatchImpl<true>()+3399>, 0xc445f3 <HPHP::ExecutionContext::dispatchImpl<true>()+38275>, 0xc44526 <HPHP::ExecutionContext::dispatchImpl<true>()+38070>, 0xc447a9 <HPHP::ExecutionContext::dispatchImpl<true>()+38713>, 0xc423f1 <HPHP::ExecutionContext::dispatchImpl<true>()+29569>, 0xc446d6 <HPHP::ExecutionContext::dispatchImpl<true>()+38502>, 0xc424cb <HPHP::ExecutionContext::dispatchImpl<true>()+29787>, 0xc42612 <HPHP::ExecutionContext::dispatchImpl<true>()+30114>, 0xc3dc9a <HPHP::ExecutionContext::dispatchImpl<true>()+11306>, 0xc46a50 <HPHP::ExecutionContext::dispatchImpl<true>()+47584>, 0xc45f65 <HPHP::ExecutionContext::dispatchImpl<true>()+44789>, 0xc4603c <HPHP::ExecutionContext::dispatchImpl<true>()+45004>, 0xc443b0 <HPHP::ExecutionContext::dispatchImpl<true>()+37696>, 0xc44476 <HPHP::ExecutionContext::dispatchImpl<true>()+37894>, 0xc465e8 <HPHP::ExecutionContext::dispatchImpl<true>()+46456>, 0xc46e88 <HPHP::ExecutionContext::dispatchImpl<true>()+48664>, 0xc3b5d3 <HPHP::ExecutionContext::dispatchImpl<true>()+1379>, 0xc451f8 <HPHP::ExecutionContext::dispatchImpl<true>()+41352>, 0xc3b69b <HPHP::ExecutionContext::dispatchImpl<true>()+1579>, 0xc3b78e <HPHP::ExecutionContext::dispatchImpl<true>()+1822>, 0xc3f857 <HPHP::ExecutionContext::dispatchImpl<true>()+18407>, 0xc453a9 <HPHP::ExecutionContext::dispatchImpl<true>()+41785>, 0xc452bd <HPHP::ExecutionContext::dispatchImpl<true>()+41549>, 0xc45468 <HPHP::ExecutionContext::dispatchImpl<true>()+41976>, 0xc3d644 <HPHP::ExecutionContext::dispatchImpl<true>()+9684>, 0xc3d761 <HPHP::ExecutionContext::dispatchImpl<true>()+9969>, 0xc43d85 <HPHP::ExecutionContext::dispatchImpl<true>()+36117>, 0xc43ec8 <HPHP::ExecutionContext::dispatchImpl<true>()+36440>, 0xc43aa8 <HPHP::ExecutionContext::dispatchImpl<true>()+35384>, 0xc43c15 <HPHP::ExecutionContext::dispatchImpl<true>()+35749>, 0xc456d4 <HPHP::ExecutionContext::dispatchImpl<true>()+42596>, 0xc45b60 <HPHP::ExecutionContext::dispatchImpl<true>()+43760>, 0xc3cd5f <HPHP::ExecutionContext::dispatchImpl<true>()+7407>, 0xc45614 <HPHP::ExecutionContext::dispatchImpl<true>()+42404>, 0xc45554 <HPHP::ExecutionContext::dispatchImpl<true>()+42212>, 0xc45ee2 <HPHP::ExecutionContext::dispatchImpl<true>()+44658>, 0xc42dfb <HPHP::ExecutionContext::dispatchImpl<true>()+32139>, 0xc42ed8 <HPHP::ExecutionContext::dispatchImpl<true>()+32360>, 0xc45be3 <HPHP::ExecutionContext::dispatchImpl<true>()+43891>, 0xc45d31 <HPHP::ExecutionContext::dispatchImpl<true>()+44225>, 0xc3e317 <HPHP::ExecutionContext::dispatchImpl<true>()+12967>, 0xc45e78 <HPHP::ExecutionContext::dispatchImpl<true>()+44552>, 0xc45877 <HPHP::ExecutionContext::dispatchImpl<true>()+43015>, 0xc459a8 <HPHP::ExecutionContext::dispatchImpl<true>()+43320>, 0xc449e0 <HPHP::ExecutionContext::dispatchImpl<true>()+39280>, 0xc45ae0 <HPHP::ExecutionContext::dispatchImpl<true>()+43632>, 0xc44ae0 <HPHP::ExecutionContext::dispatchImpl<true>()+39536>, 0xc44c21 <HPHP::ExecutionContext::dispatchImpl<true>()+39857>, 0xc3b42e <HPHP::ExecutionContext::dispatchImpl<true>()+958>, 0xc3f400 <HPHP::ExecutionContext::dispatchImpl<true>()+17296>, 0xc3f2f8 <HPHP::ExecutionContext::dispatchImpl<true>()+17032>, 0xc3f4f0 <HPHP::ExecutionContext::dispatchImpl<true>()+17536>, 0xc3eeb5 <HPHP::ExecutionContext::dispatchImpl<true>()+15941>, 0xc3efd0 <HPHP::ExecutionContext::dispatchImpl<true>()+16224>, 0xc3f108 <HPHP::ExecutionContext::dispatchImpl<true>()+16536>, 0xc3f220 <HPHP::ExecutionContext::dispatchImpl<true>()+16816>, 0xc3d3ad <HPHP::ExecutionContext::dispatchImpl<true>()+9021>, 0xc43fd2 <HPHP::ExecutionContext::dispatchImpl<true>()+36706>, 0xc4388e <HPHP::ExecutionContext::dispatchImpl<true>()+34846>, 0xc43988 <HPHP::ExecutionContext::dispatchImpl<true>()+35096>, 0xc434fb <HPHP::ExecutionContext::dispatchImpl<true>()+33931>, 0xc435f8 <HPHP::ExecutionContext::dispatchImpl<true>()+34184>, 0xc43750 <HPHP::ExecutionContext::dispatchImpl<true>()+34528>, 0xc437ef <HPHP::ExecutionContext::dispatchImpl<true>()+34687>, 0xc3c7ff <HPHP::ExecutionContext::dispatchImpl<true>()+6031>, 0xc3c89e <HPHP::ExecutionContext::dispatchImpl<true>()+6190>...} |
198 | optabCover = {0xc47748 <HPHP::ExecutionContext::dispatchImpl<true>()+50904>, 0xc3b213 <HPHP::ExecutionContext::dispatchImpl<true>()+419>, 0xc3d1af <HPHP::ExecutionContext::dispatchImpl<true>()+8511>, 0xc3fde3 <HPHP::ExecutionContext::dispatchImpl<true>()+19827>, 0xc3e811 <HPHP::ExecutionContext::dispatchImpl<true>()+14241>, 0xc405c5 <HPHP::ExecutionContext::dispatchImpl<true>()+21845>, 0xc3bcc0 <HPHP::ExecutionContext::dispatchImpl<true>()+3152>, 0xc3bd49 <HPHP::ExecutionContext::dispatchImpl<true>()+3289>, 0xc40874 <HPHP::ExecutionContext::dispatchImpl<true>()+22532>, 0xc41706 <HPHP::ExecutionContext::dispatchImpl<true>()+26262>, 0xc3fa8c <HPHP::ExecutionContext::dispatchImpl<true>()+18972>, 0xc3fb08 <HPHP::ExecutionContext::dispatchImpl<true>()+19096>, 0xc411cb <HPHP::ExecutionContext::dispatchImpl<true>()+24923>, 0xc41243 <HPHP::ExecutionContext::dispatchImpl<true>()+25043>, 0xc3db3d <HPHP::ExecutionContext::dispatchImpl<true>()+10957>, 0xc40ad8 <HPHP::ExecutionContext::dispatchImpl<true>()+23144>, 0xc3dbb0 <HPHP::ExecutionContext::dispatchImpl<true>()+11072>, 0xc3dc2b <HPHP::ExecutionContext::dispatchImpl<true>()+11195>, 0xc402cf <HPHP::ExecutionContext::dispatchImpl<true>()+21087>, 0xc41b0d <HPHP::ExecutionContext::dispatchImpl<true>()+27293>, 0xc415b1 <HPHP::ExecutionContext::dispatchImpl<true>()+25921>, 0xc41650 <HPHP::ExecutionContext::dispatchImpl<true>()+26080>, 0xc3b52f <HPHP::ExecutionContext::dispatchImpl<true>()+1215>, 0xc42056 <HPHP::ExecutionContext::dispatchImpl<true>()+28646>, 0xc406ff <HPHP::ExecutionContext::dispatchImpl<true>()+22159>, 0xc421ac <HPHP::ExecutionContext::dispatchImpl<true>()+28988>, 0xc3f5ec <HPHP::ExecutionContext::dispatchImpl<true>()+17788>, 0xc41842 <HPHP::ExecutionContext::dispatchImpl<true>()+26578>, 0xc3f693 <HPHP::ExecutionContext::dispatchImpl<true>()+17955>, 0xc3f753 <HPHP::ExecutionContext::dispatchImpl<true>()+18147>, 0xc3d4ac <HPHP::ExecutionContext::dispatchImpl<true>()+9276>, 0xc3d580 <HPHP::ExecutionContext::dispatchImpl<true>()+9488>, 0xc40c59 <HPHP::ExecutionContext::dispatchImpl<true>()+23529>, 0xc42106 <HPHP::ExecutionContext::dispatchImpl<true>()+28822>, 0xc3fef6 <HPHP::ExecutionContext::dispatchImpl<true>()+20102>, 0xc41eee <HPHP::ExecutionContext::dispatchImpl<true>()+28286>, 0xc41d8e <HPHP::ExecutionContext::dispatchImpl<true>()+27934>, 0xc41e2d <HPHP::ExecutionContext::dispatchImpl<true>()+28093>, 0xc3c985 <HPHP::ExecutionContext::dispatchImpl<true>()+6421>, 0xc3ca44 <HPHP::ExecutionContext::dispatchImpl<true>()+6612>, 0xc3cb25 <HPHP::ExecutionContext::dispatchImpl<true>()+6837>, 0xc3cbf9 <HPHP::ExecutionContext::dispatchImpl<true>()+7049>, 0xc3ccdd <HPHP::ExecutionContext::dispatchImpl<true>()+7277>, 0xc40991 <HPHP::ExecutionContext::dispatchImpl<true>()+22817>, 0xc3fc2c <HPHP::ExecutionContext::dispatchImpl<true>()+19388>, 0xc41c96 <HPHP::ExecutionContext::dispatchImpl<true>()+27686>, 0xc3df75 <HPHP::ExecutionContext::dispatchImpl<true>()+12037>, 0xc3e116 <HPHP::ExecutionContext::dispatchImpl<true>()+12454>, 0xc3e1c5 <HPHP::ExecutionContext::dispatchImpl<true>()+12629>, 0xc3e274 <HPHP::ExecutionContext::dispatchImpl<true>()+12804>, 0xc40418 <HPHP::ExecutionContext::dispatchImpl<true>()+21416>, 0xc41fa7 <HPHP::ExecutionContext::dispatchImpl<true>()+28471>, 0xc4137a <HPHP::ExecutionContext::dispatchImpl<true>()+25354>, 0xc41429 <HPHP::ExecutionContext::dispatchImpl<true>()+25529>, 0xc3b38b <HPHP::ExecutionContext::dispatchImpl<true>()+795>, 0xc3eced <HPHP::ExecutionContext::dispatchImpl<true>()+15485>, 0xc3eab1 <HPHP::ExecutionContext::dispatchImpl<true>()+14913>, 0xc3ee60 <HPHP::ExecutionContext::dispatchImpl<true>()+15856>, 0xc3dd4e <HPHP::ExecutionContext::dispatchImpl<true>()+11486>, 0xc3ddcf <HPHP::ExecutionContext::dispatchImpl<true>()+11615>, 0xc3ec24 <HPHP::ExecutionContext::dispatchImpl<true>()+15284>, 0xc3ed9c <HPHP::ExecutionContext::dispatchImpl<true>()+15660>, 0xc3d2f0 <HPHP::ExecutionContext::dispatchImpl<true>()+8832>, 0xc40354 <HPHP::ExecutionContext::dispatchImpl<true>()+21220>, 0xc3fb6b <HPHP::ExecutionContext::dispatchImpl<true>()+19195>, 0xc4063b <HPHP::ExecutionContext::dispatchImpl<true>()+21963>, 0xc3e941 <HPHP::ExecutionContext::dispatchImpl<true>()+14545>, 0xc3fe47 <HPHP::ExecutionContext::dispatchImpl<true>()+19927>, 0xc3ea02 <HPHP::ExecutionContext::dispatchImpl<true>()+14738>, 0xc3eb75 <HPHP::ExecutionContext::dispatchImpl<true>()+15109>, 0xc3be5a <HPHP::ExecutionContext::dispatchImpl<true>()+3562>, 0xc3bec9 <HPHP::ExecutionContext::dispatchImpl<true>()+3673>, 0xc3c122 <HPHP::ExecutionContext::dispatchImpl<true>()+4274>, 0xc3c1d1 <HPHP::ExecutionContext::dispatchImpl<true>()+4449>, 0xc3bfe7 <HPHP::ExecutionContext::dispatchImpl<true>()+3959>, 0xc3c345 <HPHP::ExecutionContext::dispatchImpl<true>()+4821>, 0xc3c2d6 <HPHP::ExecutionContext::dispatchImpl<true>()+4710>, 0xc3c4bc <HPHP::ExecutionContext::dispatchImpl<true>()+5196>, 0xc3bf78 <HPHP::ExecutionContext::dispatchImpl<true>()+3848>, 0xc3c52b <HPHP::ExecutionContext::dispatchImpl<true>()+5307>, 0xc3c240 <HPHP::ExecutionContext::dispatchImpl<true>()+4560>, 0xc3c73c <HPHP::ExecutionContext::dispatchImpl<true>()+5836>, 0xc3c056 <HPHP::ExecutionContext::dispatchImpl<true>()+4070>, 0xc3c60d <HPHP::ExecutionContext::dispatchImpl<true>()+5533>, 0xc3c3b4 <HPHP::ExecutionContext::dispatchImpl<true>()+4932>, 0xc3c6b9 <HPHP::ExecutionContext::dispatchImpl<true>()+5705>, 0xc3b891 <HPHP::ExecutionContext::dispatchImpl<true>()+2081>, 0xc407a6 <HPHP::ExecutionContext::dispatchImpl<true>()+22326>, 0xc3b8fe <HPHP::ExecutionContext::dispatchImpl<true>()+2190>, 0xc3b9cc <HPHP::ExecutionContext::dispatchImpl<true>()+2396>, 0xc3f934 <HPHP::ExecutionContext::dispatchImpl<true>()+18628>, 0xc40dcd <HPHP::ExecutionContext::dispatchImpl<true>()+23901>, 0xc40d03 <HPHP::ExecutionContext::dispatchImpl<true>()+23699>, 0xc40e95 <HPHP::ExecutionContext::dispatchImpl<true>()+24101>, 0xc3d865 <HPHP::ExecutionContext::dispatchImpl<true>()+10229>, 0xc3d94c <HPHP::ExecutionContext::dispatchImpl<true>()+10460>, 0xc40a18 <HPHP::ExecutionContext::dispatchImpl<true>()+22952>, 0xc40fcd <HPHP::ExecutionContext::dispatchImpl<true>()+24413>, 0xc3ffbc <HPHP::ExecutionContext::dispatchImpl<true>()+20300>, 0xc40ee0 <HPHP::ExecutionContext::dispatchImpl<true>()+24176>, 0xc40074 <HPHP::ExecutionContext::dispatchImpl<true>()+20484>, 0xc4015a <HPHP::ExecutionContext::dispatchImpl<true>()+20714>, 0xc3ce2b <HPHP::ExecutionContext::dispatchImpl<true>()+7611>, 0xc408e3 <HPHP::ExecutionContext::dispatchImpl<true>()+22643>, 0xc3cefb <HPHP::ExecutionContext::dispatchImpl<true>()+7819>, 0xc3cfc7 <HPHP::ExecutionContext::dispatchImpl<true>()+8023>, 0xc3fcb3 <HPHP::ExecutionContext::dispatchImpl<true>()+19523>, 0xc414d8 <HPHP::ExecutionContext::dispatchImpl<true>()+25704>, 0xc410a2 <HPHP::ExecutionContext::dispatchImpl<true>()+24626>, 0xc41119 <HPHP::ExecutionContext::dispatchImpl<true>()+24745>, 0xc3e4f9 <HPHP::ExecutionContext::dispatchImpl<true>()+13449>, 0xc41775 <HPHP::ExecutionContext::dispatchImpl<true>()+26373>, 0xc40b53 <HPHP::ExecutionContext::dispatchImpl<true>()+23267>, 0xc41b94 <HPHP::ExecutionContext::dispatchImpl<true>()+27428>, 0xc404c7 <HPHP::ExecutionContext::dispatchImpl<true>()+21591>, 0xc4192c <HPHP::ExecutionContext::dispatchImpl<true>()+26812>, 0xc412a6 <HPHP::ExecutionContext::dispatchImpl<true>()+25142>, 0xc419f4 <HPHP::ExecutionContext::dispatchImpl<true>()+27012>, 0xc3b276 <HPHP::ExecutionContext::dispatchImpl<true>()+518>, 0xc47093 <HPHP::ExecutionContext::dispatchImpl<true>()+49187>, 0xc44dc5 <HPHP::ExecutionContext::dispatchImpl<true>()+40277>, 0xc476e5 <HPHP::ExecutionContext::dispatchImpl<true>()+50805>, 0xc3e88b <HPHP::ExecutionContext::dispatchImpl<true>()+14363>, 0xc475af <HPHP::ExecutionContext::dispatchImpl<true>()+50495>, 0xc46788 <HPHP::ExecutionContext::dispatchImpl<true>()+46872>, 0xc46840 <HPHP::ExecutionContext::dispatchImpl<true>()+47056>, 0xc3d212 <HPHP::ExecutionContext::dispatchImpl<true>()+8610>, 0xc463c4 <HPHP::ExecutionContext::dispatchImpl<true>()+45908>, 0xc46291 <HPHP::ExecutionContext::dispatchImpl<true>()+45601>, 0xc4721d <HPHP::ExecutionContext::dispatchImpl<true>()+49581>, 0xc43308 <HPHP::ExecutionContext::dispatchImpl<true>()+33432>, 0xc46bd2 <HPHP::ExecutionContext::dispatchImpl<true>()+47970>, 0xc433cb <HPHP::ExecutionContext::dispatchImpl<true>()+33627>, 0xc43469 <HPHP::ExecutionContext::dispatchImpl<true>()+33785>, 0xc3bdc3 <HPHP::ExecutionContext::dispatchImpl<true>()+3411>, 0xc445ff <HPHP::ExecutionContext::dispatchImpl<true>()+38287>, 0xc44532 <HPHP::ExecutionContext::dispatchImpl<true>()+38082>, 0xc447b5 <HPHP::ExecutionContext::dispatchImpl<true>()+38725>, 0xc423fd <HPHP::ExecutionContext::dispatchImpl<true>()+29581>, 0xc446e2 <HPHP::ExecutionContext::dispatchImpl<true>()+38514>, 0xc424d7 <HPHP::ExecutionContext::dispatchImpl<true>()+29799>, 0xc4261e <HPHP::ExecutionContext::dispatchImpl<true>()+30126>, 0xc3dca6 <HPHP::ExecutionContext::dispatchImpl<true>()+11318>, 0xc46a5c <HPHP::ExecutionContext::dispatchImpl<true>()+47596>, 0xc45f71 <HPHP::ExecutionContext::dispatchImpl<true>()+44801>, 0xc46048 <HPHP::ExecutionContext::dispatchImpl<true>()+45016>, 0xc443bc <HPHP::ExecutionContext::dispatchImpl<true>()+37708>, 0xc44482 <HPHP::ExecutionContext::dispatchImpl<true>()+37906>, 0xc465f4 <HPHP::ExecutionContext::dispatchImpl<true>()+46468>, 0xc46e94 <HPHP::ExecutionContext::dispatchImpl<true>()+48676>, 0xc3b5df <HPHP::ExecutionContext::dispatchImpl<true>()+1391>, 0xc45204 <HPHP::ExecutionContext::dispatchImpl<true>()+41364>, 0xc3b6a7 <HPHP::ExecutionContext::dispatchImpl<true>()+1591>, 0xc3b79a <HPHP::ExecutionContext::dispatchImpl<true>()+1834>, 0xc3f863 <HPHP::ExecutionContext::dispatchImpl<true>()+18419>, 0xc453b5 <HPHP::ExecutionContext::dispatchImpl<true>()+41797>, 0xc452c9 <HPHP::ExecutionContext::dispatchImpl<true>()+41561>, 0xc45474 <HPHP::ExecutionContext::dispatchImpl<true>()+41988>, 0xc3d650 <HPHP::ExecutionContext::dispatchImpl<true>()+9696>, 0xc3d76d <HPHP::ExecutionContext::dispatchImpl<true>()+9981>, 0xc43d91 <HPHP::ExecutionContext::dispatchImpl<true>()+36129>, 0xc43ed4 <HPHP::ExecutionContext::dispatchImpl<true>()+36452>, 0xc43ab4 <HPHP::ExecutionContext::dispatchImpl<true>()+35396>, 0xc43c21 <HPHP::ExecutionContext::dispatchImpl<true>()+35761>, 0xc456e0 <HPHP::ExecutionContext::dispatchImpl<true>()+42608>, 0xc45b6c <HPHP::ExecutionContext::dispatchImpl<true>()+43772>, 0xc3cd6b <HPHP::ExecutionContext::dispatchImpl<true>()+7419>, 0xc45620 <HPHP::ExecutionContext::dispatchImpl<true>()+42416>, 0xc45560 <HPHP::ExecutionContext::dispatchImpl<true>()+42224>, 0xc45eee <HPHP::ExecutionContext::dispatchImpl<true>()+44670>, 0xc42e07 <HPHP::ExecutionContext::dispatchImpl<true>()+32151>, 0xc42ee4 <HPHP::ExecutionContext::dispatchImpl<true>()+32372>, 0xc45bef <HPHP::ExecutionContext::dispatchImpl<true>()+43903>, 0xc45d3d <HPHP::ExecutionContext::dispatchImpl<true>()+44237>, 0xc3e323 <HPHP::ExecutionContext::dispatchImpl<true>()+12979>, 0xc45e84 <HPHP::ExecutionContext::dispatchImpl<true>()+44564>, 0xc45883 <HPHP::ExecutionContext::dispatchImpl<true>()+43027>, 0xc459b4 <HPHP::ExecutionContext::dispatchImpl<true>()+43332>, 0xc449ec <HPHP::ExecutionContext::dispatchImpl<true>()+39292>, 0xc45aec <HPHP::ExecutionContext::dispatchImpl<true>()+43644>, 0xc44aec <HPHP::ExecutionContext::dispatchImpl<true>()+39548>, 0xc44c2d <HPHP::ExecutionContext::dispatchImpl<true>()+39869>, 0xc3b43a <HPHP::ExecutionContext::dispatchImpl<true>()+970>, 0xc3f40c <HPHP::ExecutionContext::dispatchImpl<true>()+17308>, 0xc3f304 <HPHP::ExecutionContext::dispatchImpl<true>()+17044>, 0xc3f4fc <HPHP::ExecutionContext::dispatchImpl<true>()+17548>, 0xc3eec1 <HPHP::ExecutionContext::dispatchImpl<true>()+15953>, 0xc3efdc <HPHP::ExecutionContext::dispatchImpl<true>()+16236>, 0xc3f114 <HPHP::ExecutionContext::dispatchImpl<true>()+16548>, 0xc3f22c <HPHP::ExecutionContext::dispatchImpl<true>()+16828>, 0xc3d3b9 <HPHP::ExecutionContext::dispatchImpl<true>()+9033>, 0xc43fde <HPHP::ExecutionContext::dispatchImpl<true>()+36718>, 0xc4389a <HPHP::ExecutionContext::dispatchImpl<true>()+34858>, 0xc43994 <HPHP::ExecutionContext::dispatchImpl<true>()+35108>, 0xc43507 <HPHP::ExecutionContext::dispatchImpl<true>()+33943>, 0xc43604 <HPHP::ExecutionContext::dispatchImpl<true>()+34196>, 0xc4375c <HPHP::ExecutionContext::dispatchImpl<true>()+34540>, 0xc437fb <HPHP::ExecutionContext::dispatchImpl<true>()+34699>, 0xc3c80b <HPHP::ExecutionContext::dispatchImpl<true>()+6043>, 0xc3c8aa <HPHP::ExecutionContext::dispatchImpl<true>()+6202>...} |
199 | pc = 0x7f3c54911954 "\016}\002\004\016}\004\004V\367\377\377\377\341\341\016}\002\004\016}\004\004\016}\006\004V\363\377\377\377", '\341' <repeats 12 times>, "\016}\002\004\016}\004\004\016}\006\004V\363\377\377\377\341\016}\002\004\016}\004\004V\367\377\377\377\341\016}\002\004\016}\004\004\021}\006\004V\363\377\377\377\341\016}\002\004\016}\004\004V\367\377\377\377", '\341' <repeats 19 times>, <incomplete sequence \341> |
200 | #13 0x0000000000c14689 in HPHP::ExecutionContext::dispatchBB (this=<optimized out>) at /usr/src/hhvm/hphp/runtime/vm/bytecode.cpp:7544 |
201 | No locals. |
202 | #14 0x0000000000de2082 in HPHP::jit::MCGenerator::enterTC (this=0x7f3c5af0a000, start=0x0, data=<optimized out>) at /usr/src/hhvm/hphp/runtime/vm/jit/mc-generator.cpp:999 |
203 | newPc = <optimized out> |
204 | info = { |
205 | requestNum = 11, |
206 | args = {139897092174720, 139897092174832, 48, 139897090793664, 139896664621056}, |
207 | saved_rStashedAr = 139897092174832, |
208 | stubAddr = 0x0 |
209 | } |
210 | sk = { |
211 | <boost::totally_ordered<HPHP::SrcKey, HPHP::SrcKey, boost::detail::empty_base<HPHP::SrcKey>, boost::detail::false_t>> = { |
212 | <boost::totally_ordered1<HPHP::SrcKey, boost::detail::empty_base<HPHP::SrcKey> >> = { |
213 | <boost::less_than_comparable1<HPHP::SrcKey, boost::equality_comparable1<HPHP::SrcKey, boost::detail::empty_base<HPHP::SrcKey> > >> = { |
214 | <boost::equality_comparable1<HPHP::SrcKey, boost::detail::empty_base<HPHP::SrcKey> >> = { |
215 | <boost::detail::empty_base<HPHP::SrcKey>> = {<No data fields>}, <No data fields>}, <No data fields>}, <No data fields>}, <No data fields>}, |
216 | members of HPHP::SrcKey: |
217 | { |
218 | m_atomicInt = 356482291200, |
219 | { |
220 | m_funcId = 5632, |
221 | m_offset = 83, |
222 | m_resumed = false |
223 | } |
224 | } |
225 | } |
226 | #15 0x0000000000c123ed in enterTCAtPrologue (start=<optimized out>, ar=<optimized out>, this=<optimized out>) at /usr/src/hhvm/hphp/runtime/vm/jit/mc-generator.h:240 |
227 | No locals. |
228 | #16 HPHP::ExecutionContext::enterVMAtFunc (this=this@entry=0x0, enterFnAr=enterFnAr@entry=0x0, stk=stk@entry=HPHP::ExecutionContext::Untrimmed) at /usr/src/hhvm/hphp/runtime/vm/bytecode.cpp:1858 |
229 | np = <optimized out> |
230 | na = <optimized out> |
231 | useJitPrologue = <optimized out> |
232 | #17 0x0000000000c126be in HPHP::ExecutionContext::enterVM (this=0x0, this@entry=0x7f3c54693000, ar=0x0, ar@entry=0x7f3c547bffc0, stk=HPHP::ExecutionContext::Untrimmed, resumable=0x7f3c54693000, resumable@entry=0x0, exception=exception@entry=0x0) at /usr/src/hhvm/hphp/runtime/vm/bytecode.cpp:1927 |
233 | __PRETTY_FUNCTION__ = "void HPHP::ExecutionContext::enterVM(HPHP::ActRec*, HPHP::ExecutionContext::StackArgsState, HPHP::Resumable*, HPHP::ObjectData*)" |
234 | faultDepth = <optimized out> |
235 | SCOPE_EXIT_STATE9 = { |
236 | <folly::ScopeGuardImplBase> = { |
237 | dismissed_ = false |
238 | }, |
239 | members of folly::ScopeGuardImpl<HPHP::ExecutionContext::enterVM(HPHP::ActRec*, HPHP::ExecutionContext::StackArgsState, HPHP::Resumable*, HPHP::ObjectData*)::__lambda62>: |
240 | function_ = {<No data fields>} |
241 | } |
242 | first = false |
243 | fault = <optimized out> |
244 | #18 0x0000000000c1292c in HPHP::ExecutionContext::invokeFunc (this=this@entry=0x7f3c54693000, retval=retval@entry=0x7f3c433fb0d0, f=0x7f3c4ac1d200, args_=..., this_=this_@entry=0x0, cls=cls@entry=0x0, varEnv=0x7f3c3f008270, invName=invName@entry=0x0, flags=flags@entry=HPHP::ExecutionContext::InvokePseudoMain) at /usr/src/hhvm/hphp/runtime/vm/bytecode.cpp:2092 |
245 | originalSP = 0x7f3c547bfff0 |
246 | _ = { |
247 | <boost::noncopyable_::noncopyable> = {<No data fields>}, |
248 | members of HPHP::VMRegAnchor: |
249 | m_old = HPHP::CLEAN |
250 | } |
251 | numPassedArgs = 105 |
252 | SCOPE_EXIT_STATE10 = { |
253 | <folly::ScopeGuardImplBase> = { |
254 | dismissed_ = false |
255 | }, |
256 | members of folly::ScopeGuardImpl<HPHP::ExecutionContext::invokeFunc(HPHP::TypedValue*, const HPHP::Func*, const HPHP::Variant&, HPHP::ObjectData*, HPHP::Class*, HPHP::VarEnv*, HPHP::StringData*, HPHP::ExecutionContext::InvokeFlags)::__lambda63>: |
257 | function_ = { |
258 | __this = 0x7f3c54693000 |
259 | } |
260 | } |
261 | #19 0x0000000000c12b7a in HPHP::ExecutionContext::invokeUnit (this=0x7f3c54693000, retval=retval@entry=0x7f3c433fb0d0, unit=0x7f3c543fca40) at /usr/src/hhvm/hphp/runtime/vm/bytecode.cpp:2274 |
262 | func = <optimized out> |
263 | #20 0x0000000000a98791 in invoke_file_impl (currentDir=0x1c42fd3 "", once=true, path=SmartPtr<HPHP::StringData> = {...}, res=Uninit) at /usr/src/hhvm/hphp/runtime/base/builtin-functions.cpp:721 |
264 | initial = true |
265 | u = <optimized out> |
266 | #21 HPHP::invoke_file (s=SmartPtr<HPHP::StringData> = {...}, once=once@entry=true, currentDir=currentDir@entry=0x1c42fd3 "") at /usr/src/hhvm/hphp/runtime/base/builtin-functions.cpp:734 |
267 | r = Uninit |
268 | #22 0x0000000000a9ae2a in HPHP::include_impl_invoke (file=SmartPtr<HPHP::StringData> = {...}, once=once@entry=true, currentDir=currentDir@entry=0x1c42fd3 "") at /usr/src/hhvm/hphp/runtime/base/builtin-functions.cpp:745 |
269 | rel_path = SmartPtr<HPHP::StringData> = { |
270 | 0x7f3c433fb170 = <error reading variable: Cannot access memory at address 0x7f3c433fb400> |
271 | } |
272 | #23 0x0000000000a4a619 in HPHP::hphp_invoke (context=context@entry=0x7f3c54693000, cmd="/srv/mediawiki/docroot/wikipedia.org/w/index.php", func=func@entry=false, funcParams=SmartPtr<HPHP::ArrayData>(Null), funcRet=..., reqInitFunc=..., reqInitDoc="/srv/mediawiki/wmf-config/HHVMRequestInit.php", error=@0x7f3c433fb440: false, errorMsg="Internal Server Error", once=once@entry=true, warmupOnly=warmupOnly@entry=false, richErrorMsg=richErrorMsg@entry=false) at /usr/src/hhvm/hphp/runtime/base/program-functions.cpp:1796 |
273 | ssh = { |
274 | m_section = 0x19045f5 "invoke", |
275 | m_wallStart = { |
276 | tv_sec = 139896803013488, |
277 | tv_nsec = 139897090945160 |
278 | }, |
279 | m_cpuStart = { |
280 | tv_sec = 139897090945152, |
281 | tv_nsec = 139896926547488 |
282 | }, |
283 | m_instStart = 0, |
284 | m_track = 0 |
285 | } |
286 | oldCwd = SmartPtr<HPHP::StringData> = { |
287 | 0x7f3c5c029280 = Str: '/var/tmp/hhvm' |
288 | } |
289 | ret = true |
290 | #24 0x0000000000b23f34 in HPHP::HttpRequestHandler::executePHPRequest (this=this@entry=0x7f3c546af8e0, transport=transport@entry=0x7f3c54528a98, reqURI=..., sourceRootInfo=..., cachableDynamicContent=cachableDynamicContent@entry=false) at /usr/src/hhvm/hphp/runtime/server/http-request-handler.cpp:399 |
291 | context = 0x7f3c54693000 |
292 | file = "/srv/mediawiki/docroot/wikipedia.org/w/index.php" |
293 | ret = true |
294 | code = <optimized out> |
295 | error = false |
296 | errorMsg = "Internal Server Error" |
297 | hasPostSend = <optimized out> |
298 | #25 0x0000000000b25070 in HPHP::HttpRequestHandler::handleRequestImpl (this=0x7f3c546af8e0, transport=0x7f3c54528a98) at /usr/src/hhvm/hphp/runtime/server/http-request-handler.cpp:292 |
299 | requestTimeoutSeconds = 0 |
300 | len = 1 |
301 | ret = false |
302 | vhost = 0x25944e0 <HPHP::VirtualHost::GetDefault()::s_default_vhost> |
303 | path = "w/index.php" |
304 | compressed = true |
305 | treatAsContent = <optimized out> |
306 | reqURI = { |
307 | m_originalURL = SmartPtr<HPHP::StringData>(Null), |
308 | m_queryString = SmartPtr<HPHP::StringData>(Null), |
309 | m_rewrittenURL = SmartPtr<HPHP::StringData>(Null), |
310 | m_resolvedURL = SmartPtr<HPHP::StringData>(Null), |
311 | m_pathInfo = SmartPtr<HPHP::StringData>(Null), |
312 | m_origPathInfo = SmartPtr<HPHP::StringData>(Null), |
313 | m_absolutePath = SmartPtr<HPHP::StringData>(Null), |
314 | m_path = SmartPtr<HPHP::StringData>(Null), |
315 | m_rewritten = false, |
316 | m_defaultDoc = false, |
317 | m_done = false, |
318 | m_forbidden = false, |
319 | m_ext = 0x7f3c3f008320 "acheLimit", |
320 | m_triedURLs = std::vector of length 0, capacity 0 |
321 | } |
322 | absPath = "/srv/mediawiki/docroot/wikipedia.org/w/index.php" |
323 | data = 0x1 <error: Cannot access memory at address 0x1> |
324 | tmpfile = "" |
325 | ep = { |
326 | m_info = 0x7f3c55795e80, |
327 | m_executing = HPHP::ThreadInfo::Idling |
328 | } |
329 | ssh = { |
330 | m_section = 0x1843056 "all", |
331 | m_wallStart = { |
332 | tv_sec = 139896734169344, |
333 | tv_nsec = 64 |
334 | }, |
335 | m_cpuStart = { |
336 | tv_sec = 0, |
337 | tv_nsec = 0 |
338 | }, |
339 | m_instStart = 0, |
340 | m_track = 3 |
341 | } |
342 | sourceRootInfo = { |
343 | m_user = SmartPtr<HPHP::StringData>(Null), |
344 | m_sandbox = SmartPtr<HPHP::StringData>(Null), |
345 | m_path = SmartPtr<HPHP::StringData>(Null), |
346 | m_sandboxCond = HPHP::SourceRootInfo::Off, |
347 | m_serverVars = SmartPtr<HPHP::ArrayData>(Null), |
348 | static s_path = { |
349 | m_node = { |
350 | m_p = 0x7f3c5573fef0, |
351 | m_on_thread_exit_fn = 0xb38e70 <HPHP::ThreadLocalOnThreadExit<std::string>(void*)>, |
352 | m_next = 0x7f3c433ff520 |
353 | } |
354 | }, |
355 | static s_phproot = { |
356 | m_node = { |
357 | m_p = 0x0, |
358 | m_on_thread_exit_fn = 0x0, |
359 | m_next = 0x0 |
360 | } |
361 | } |
362 | } |
363 | pathTranslation = "" |
364 | cachableDynamicContent = false |
365 | #26 0x0000000000b25b99 in HPHP::HttpRequestHandler::handleRequest (this=<optimized out>, transport=<optimized out>) at /usr/src/hhvm/hphp/runtime/server/http-request-handler.cpp:332 |
366 | No locals. |
367 | #27 0x0000000000b64c69 in HPHP::ServerWorker<std::shared_ptr<HPHP::FastCGIJob>, HPHP::FastCGITransportTraits>::doJobImpl (this=0x7f3c54622f40, job=std::shared_ptr (count 3, weak 0) 0x7f3c546d1488, abort=<optimized out>) at /usr/src/hhvm/hphp/runtime/server/server-worker.h:103 |
368 | cmd = "/wiki/Compulsive_Spender" |
369 | transport = 0x7f3c54528a98 |
370 | reqStart = { |
371 | tv_sec = 0, |
372 | tv_nsec = 0 |
373 | } |
374 | traits = { |
375 | m_server = 0x7f3c5d17b100, |
376 | m_transport = std::shared_ptr (count 3, weak 0) 0x7f3c54528a98 |
377 | } |
378 | server = 0x7f3c5d17b100 |
379 | error = true |
380 | errorMsg = "" |
381 | #28 0x0000000000b64e98 in HPHP::ServerWorker<std::shared_ptr<HPHP::FastCGIJob>, HPHP::FastCGITransportTraits>::doJob (this=<optimized out>, job=...) at /usr/src/hhvm/hphp/runtime/server/server-worker.h:57 |
382 | No locals. |
383 | #29 0x0000000000b63e08 in HPHP::JobQueueWorker<std::shared_ptr<HPHP::FastCGIJob>, HPHP::Server*, true, false, HPHP::JobQueueDropVMStack>::start (this=0x7f3c54622f40) at /usr/src/hhvm/hphp/util/job-queue.h:461 |
384 | expired = false |
385 | job = std::shared_ptr (count 3, weak 0) 0x7f3c546d1488 |
386 | #30 0x00000000015b1c37 in threadFuncImpl (this=0x7f3c54581f00) at /usr/src/hhvm/hphp/util/async-func.cpp:131 |
387 | No locals. |
388 | #31 HPHP::AsyncFuncImpl::ThreadFunc (obj=0x7f3c54581f00) at /usr/src/hhvm/hphp/util/async-func.cpp:51 |
389 | self = 0x7f3c54581f00 |
390 | #32 0x00007f3c658d7182 in start_thread (arg=0x7f3c433ff700) at pthread_create.c:312 |
391 | __res = <optimized out> |
392 | pd = 0x7f3c433ff700 |
393 | now = <optimized out> |
394 | unwind_buf = { |
395 | cancel_jmp_buf = {{ |
396 | jmp_buf = {139896803030784, -2214506153668134816, 0, 0, 139897236600152, 139896803030784, 2250946720058947680, 2250873441838938208}, |
397 | mask_was_saved = 0 |
398 | }}, |
399 | priv = { |
400 | pad = {0x0, 0x0, 0x0, 0x0}, |
401 | data = { |
402 | prev = 0x0, |
403 | cleanup = 0x0, |
404 | canceltype = 0 |
405 | } |
406 | } |
407 | } |
408 | not_first_call = <optimized out> |
409 | pagesize_m1 = <optimized out> |
410 | sp = <optimized out> |
411 | freesize = <optimized out> |
412 | __PRETTY_FUNCTION__ = "start_thread" |
413 | #33 0x00007f3c64de3fbd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111 |
414 | No locals. |
I wrote an HNI extension for just tidy_repair_string() and pushed it to the hni branch of the repository. Packaged it and deployed it to Labs. Looks good so far.
Extension deployed everywhere. New result for ab command:
Zend:
Requests per second: 63.46 [#/sec] (mean) Time per request: 1575.710 [ms] (mean) Time per request: 15.757 [ms] (mean, across all concurrent requests)
HHVM:
Requests per second: 121.21 [#/sec] (mean) Time per request: 824.985 [ms] (mean) Time per request: 8.250 [ms] (mean, across all concurrent requests)