Support pcre-8.32's JIT

8.32 has a JIT for regular expressions.

Reviewed By: @ottoni

Differential Revision: D1052476
Differential Revision: D1067435
Limit mini-systemlib names to 16 characters

Some platforms (MacOS) don't allow section names
longer than 16 characters.  Use "ext." plus the first
twelve hexits of md5($extname) instead.

This diff also adds an objdump wrapper for checking for
and dumping the contents of mini-systemlib sections.

Reviewed By: @scannell

Differential Revision: D1061643
Specialize array iteration in GenArrayWaitHandle::create

Also, only do one pass over the array, instead of two.

Perflab things it cuts on instructions a very tiny bit, and cuts
branch misses (less than a percent.)  This is adding a place that
assumes packed and mixed arrays have the same value layout---do we
think it's worth that?  (We can always rip it out later, and maybe
GenArrayWaitHandle will become less important if people soon use
Map/Vector WaitHandle instead?)

Reviewed By: @jano

Differential Revision: D1061039
Use store immediate for writing Func* to ActRec in SpillFrame

We were moving the immediate to a register and then to
memory; we can save an instruction by storing directly to memory.

Reviewed By: @jdelong

Differential Revision: D1064108
set JitEnableRenameFunction for AuthGuardTest.php

This test uses `debug_backtrace()[0]['args']` to get the args, so we need to keep them around. If we set this always it is a 5% perf regression so only doing it specifically for this test.

Reviewed By: @JoelMarcey

Differential Revision: D1064678
Allow stream_context_create to take an array of headers

Reviewed By: @sgolemon

Differential Revision: D1064310
strip user:pass from url before going to curl

It looks like curl is unhappy when passed a user:pass to `curl_setopt(CURL_URL)`. Lets remove it before we get there.

I could have used `parse_url` and then put it back together, but the regex seemed simple enough... (famous last words)...

Reviewed By: @sgolemon

Differential Revision: D1064319
Move wait handle declarations to individual header files

Split ext_asio.h into multiple header files, one per each WaitHandle
subclass.

Reviewed By: @jdelong

Differential Revision: D1064750
make DateTime remember the timezone from the constructor

Reviewed By: @alexmalyshev

Differential Revision: D1065084
add back test/slow/config.hdf

My desire to print more warnings was killing our test coverage for some options.

Reviewed By: @markw65

Differential Revision: D1064717
set error_reporting to the php-default for framework tests

and while I'm in there actually make the setting work ;)

Reviewed By: @alexmalyshev

Differential Revision: D1064978
Profile to detect hot functions

Use the initial profiling, interpreted requests to detect hot
functions.  Marking them as hot hints the JIT to put them in the ahot
TC area.

Reviewed By: @edwinsmith

Differential Revision: D1063581
Clowntown - The script wasn't counting fatals in stats

Sigh. The script was not printing fatals to the stats file and thus they were not being counted in the percentage.

Reviewed By: @ptarjan

Differential Revision: D1065312
Make DateTime serializable

In zend `DateTime` can be serialized. I could try to match their format but as long as we are consistent with ourselves I think this is ok.

Putting that attribute check seems pretty hacky but I couldn't think of a better way.

Reviewed By: @mikemag

Differential Revision: D1063231
Add a FrozenSet extension class (but don't make it a collection, yet)

Add a c_FrozenSet class that inherits from BaseSet and exposes an immutable
interface to PHP-land (it implements ConstSet).

We can foreach over it, but literal syntax doesn't work yet, since it's
not a collection (will make it so in another diff).

Reviewed By: @paroski

Differential Revision: D1051520
clownify validate_range_test.php

These tests all fail in zend with the same error `Creating default object from empty value`.

Reviewed By: @alexmalyshev

Differential Revision: D1065442
add ViewsDataHelperTest.php to clownylist

This fails in zend

Reviewed By: @alexmalyshev

Differential Revision: D1065420
Remove dead m_cls field from ResourceData

it's dead

Reviewed By: @jdelong

Differential Revision: D1065596
Fix instanceDtors for ZendObjectData types

Reviewed By: @ptarjan

Differential Revision: D1065079
Make some Mediawiki tests clowny

Some of the data sets for these tests fail in Zend as well.

We are getting rid of them all since we clown by file, but in this case that is ok, I think.

We move to 99.88%

Reviewed By: @ptarjan

Differential Revision: D1065351