Smarter path checking in out2expectf

Summary: The old method assumed that file paths would contain /hphp, and
stripped everything from the leading / to the hphp. Some tests end up
with the path to the repo in them, which probably doesn't contain hphp,
or might contain things like hphp-1, hphp-2 etc. In either case,
out2expectf produces expectf files that work locally, but probably not
anywhere else.

This finds the path to the root of the repo, and strips it explicitly,
along with a /hphp if its there, replacing the whole lot with %s.

Reviewed By: @swtaarrs

Differential Revision: D1713663

Signature: t1:1713663:1417626839:d95ef223421ebd9ec6cb0ddd70ef19421f772c62
Better implementation of DOMPropertyAccessorMap

Summary: Base the property order on the input table, use a set instead of
a map, and get rid of the duplicate map.

Reviewed By: @bertmaher

Differential Revision: D1712866

Signature: t1:1712866:1417547052:aca10c82ce8595f72c4aff549630163e0872b6bf
Fix #2517,Add pid support for persistent connection in Redis

Summary: pfsockopen does not supports id. So I changed it stream_socket_client, to handles ids as well.
Closes https://github.com/facebook/hhvm/pull/4291

Reviewed By: @fredemmott

Differential Revision: D1693997

Signature: t1:1693997:1417632135:c2b2b2648ee77d911d00e1da801c8698e591c784
Use LLVM's experimental location records.

Summary: Replace the usage of LLVM's stackmaps with locrecs as locrecs require
less help from HHVM disassembler and do not prevent any
of LLVM optimizations.

Reviewed By: @swtaarrs

Differential Revision: D1711966
Ordering in get_defined_var()

Summary: We want the order to be independent of the internal hash function.
Now try ksort().

Reviewed By: @markw65

Differential Revision: D1710163

Signature: t1:1710163:1417632293:f1612631a5653c479d4dbfa5a6f66b3a25c635a4
Codemod "const Cell&" to "const Cell"

Summary: Cell is small, and meant to be passed around by value.

Reviewed By: @edwinsmith, @jano

Differential Revision: D1702693

Signature: t1:1702693:1416938815:5f9f5b17b238bd1f576f7c3273517ecd95ce04a6
Embed HNI in hhbbc_test

Summary: No HNI is loaded in hhbbc_test. This is blocking D1668045, and potentially other conversions to HNI.

Reviewed By: @markw65

Differential Revision: D1705542

Signature: t1:1705542:1417028326:f40af9af166e91e5c1501dab2293eb1537378d60
Convert ext/spl to HNI

Summary: Fixes #3947
This was a missing clone in the assignment.
Closes https://github.com/facebook/hhvm/pull/4037

Reviewed By: @ptarjan

Differential Revision: D1631910

Signature: t1:1631910:1414743838:638a61df535bbea4177c91b6adf1e9817a90e478

Pulled By: @nigelchanyk
Only escape spaces in find command

Summary: A previous refactor broke this

Reviewed By: @bhosmer

Differential Revision: D1717674

Signature: t1:1717674:1417653252:de533bf9600c453525b6d2f05e932b4f794eea67
Automatically constrain psuedomain local guards

Summary: We're already doing a guard in the LdLocPseudoMain, but since we
weren't constraining the actual guard, guard relaxation takes it away, and then
when reflowing the types with reoptimize we'd lose our local type prediction
and end up punting.  This would happen O(N^2) times.

Reviewed By: @alexmalyshev

Differential Revision: D1708551