Revert "Rename Frozen -> Fixed"

This reverts commit 08f9d5afee85f7d62bc7f7981cab5ececa005243.

Reviewed By: @jdelong

Differential Revision: D1187019
Add more cases to simplifyMul

Use Shl instead of Mul when possible.

Reviewed By: @edwinsmith

Differential Revision: D1169188
Change just a few classes into structs in translator.h

Reviewed By: @bertmaher

Differential Revision: D1186990
Add a few arrays-with-values to type system tests

I didn't have tests for this earlier just because it is a
mild pain to create static arrays (compared to static strings).  The
smart heap needs to be initialized by the time you do it, etc.

Also made a few unrelated style changes in main() while waiting for
compile.

Reviewed By: @dariorussi

Differential Revision: D1179090
Slight tracing tweaks

Gets rid of some newlines at trace level 4, keeps a single
block-visit together in the output.

Reviewed By: @edwinsmith

Differential Revision: D1186395
Fix a bug with local bases of static string types

In a later change I've change it so SStr=" " couldBe SStr=""
returns false.  Previously all static strings said they couldBe the
empty string, so elemCouldPromoteToArr would be true and we'd turn the
local into an InitCell (union of SStr and Arr), so we were doing
things "right" without handling this case explicitly.

Reviewed By: @dariorussi

Differential Revision: D1186440
remove _bin directory reference from test_server config file

This is a no-no, use a tmp file

Reviewed By: @ptarjan

Differential Revision: D1187423
Fix asserted type in simplifyAssertTypeOp

The way I was doing this used Type::operator- and was intentionally
suboptimal to work around operator-'s limitations. This is a new version of the
same logic, without using operator-.

This also exposed an issue where certain type predictions were causing us to
lose type information. I fixed it by making sure CheckStk's typeParam is always
as refined as possible, and adding some logic in codegen to avoid specialized
type tests when not needed.

Reviewed By: @jdelong

Differential Revision: D1186725
set defaults statically

we've been trying to keep these in sync with the hdf parsing, but you know how humans are... some are missing and some are wrong. I'll need this to decouple hdf and ini.

Reviewed By: @fredemmott

Differential Revision: D1186910
Fix hhbbc to propagate return type annotations

This diff fixes hhbbc to properly propagate return type annotations, and it
re-enables the hh_return_type.php test.

Reviewed By: @jdelong

Differential Revision: D1186794
Implement XSL extension

fixes #1700
fixes #1196

Reviewed By: @ptarjan

Differential Revision: D1182684

Pulled By: @fredemmott
Fix nested ArrayObject assignment

Fix assignment of values into arrays nested inside of
subclasses of ArrayObject.

Closes #1653
Closes #1906

Reviewed By: @ptarjan

Differential Revision: D1187678

Pulled By: @scannell
Convert from jemalloc's deprecated *allocm() API to *allocx().

jemalloc 3.5.0 introduced the *allocx() API and deprecated *allocm().
Use the new API when it's available.

Reviewed By: @scannell

Differential Revision: D1170381
only register ini settings at threadInit instead of requestInit

This is similar to how zend does it. Basically you you bind your ini settings to thread-local memory right when the thread starts up, then on any future `ini_set` we do an `ini_get` first, save the value and then do the set. Then when the request ends we replay all the saved values to put the thread back to its state before the request ran.

Reviewed By: @fredemmott

Differential Revision: D1186887
Fixed bug in sock_array_from_fd_set() where Array is not initialised.

Resolves a number of failed test cases in React framework
where "invalid argument supplied for foreach()".

Closes #1851

Reviewed By: @fredemmott

Differential Revision: D1189014

Pulled By: @ptarjan
Move TextArt up one level and get rid of Util namespace

That's it.

Reviewed By: @jdelong

Differential Revision: D1186599
Move Vdso out of Util namespace

Reviewed By: @jdelong

Differential Revision: D1186984
Fix debug-only invalidation of NativeData buffer

I called memset() incorrectly passing size for value and
value for size meaning that 0x6A bytes of data were written
with an essentially garbage value during sweep.

Under the right circumstances, this overran into the next
object's pre-alloc header.

Fortunately this is a debug-only issue and the invalidation
only happens in debug builds.

Reviewed By: smith

Differential Revision: D1189301