Fixes for vasm-llvm backend.

Summary: Down to 12 failures in test/quick. At least 1 test is flaky and sometimes
it goes to 11.

- Allocate data sections close to code to ensure 32-bit relocations point
  to correct code locations. This also fixes assertions we get with
  debug LLVM builds.
- Update LLVM with fixes to stack alignment in HHVM_TC calling convention
  and disable 8-byte stack alignment override.
- Enable smashable calls.

Reviewed By: @swtaarrs

Differential Revision: D1736576

Signature: t1:1736576:1418411702:b527abd17f6b8091561c7e7fb33015941bd10749