Drop "de-const" cast hack from API migration

Preserve const in mem-file
Track malloced pointer separately in mem-file

Reviewed By: bmaurer

Differential Revision: D1037894
Don't decref Objects while sweeping

Per title

Reviewed By: @jano

Differential Revision: D1037445
actually remove temporary php_ini

I thought this was taken care of me for free. Nope.

Reviewed By: @alexmalyshev

Differential Revision: D1038214
Remove unused bool m_no_volatile_check

Always false.

Reviewed By: @markw65

Differential Revision: D1036977
Add PhysLoc::numWords and rename SSATmp::numNeededRegs->numWords

This is just code cleanup; sometimes we care about the # of logical
words for a tmp or PhysLoc, (eg 2 for a TypedValue) and sometimes
we care about the physical locations assigned (eg 1 for FullXMM,
0 for a constant).  This separates the two a bit more clearly.

Reviewed By: @bertmaher

Differential Revision: D1037818
Release old arrays when we grow them while setting/unsetting elements

D988759 changed the way we reallocate arrays, and broke a previous optimization in SetNewElemArray and UnsetElemArray, causing memory leaks in a wide variety of cases. We got a very nice repro from the Firehose team. This fixes the test case in the referenced task, which can complete now with minimal memory use. I suspect this also explains a number of other OOM bugs which have been cropping up since the 10/25 release, and perhaps the extra swapping in v3 we've experienced since then.

Reviewed By: @jdelong

Differential Revision: D1038091
Make AllocObj{,Fast} return a specialized object type

Reviewed By: @dariorussi

Differential Revision: D1032573
Sort frameworks for test bucket breakup

Sort the frameworks vector so that we can have a general alphabetical order of test
running after we bucket them in threads.

Fix a couple of bugs (undefined variable and possible div by zero) too.

Reviewed By: @ptarjan

Differential Revision: D1038251
Implement SetOpL for array arguments

A few hot call sites use this.

Reviewed By: @ottoni

Differential Revision: D1037492
Destructor cleanup

Reduce to a single implementation of the generic
dec-ref-and-destroy code.

RefData can never be static, so stop checking it

Reviewed By: @swtaarrs

Differential Revision: D1037810