PNaCl: Fix setjmp() by adding the "returns_twice" attribute back

This fixes a bug in which stack slots could get reused by the backend.

BUG=https://code.google.com/p/nativeclient/issues/detail?id=3733
TEST=lit test + run_longjmp_stackslots_test being added to NaCl Scons tests
R=jfb@chromium.org

Review URL: https://codereview.chromium.org/293313002

(cherry picked from commit d17e53213884aea9ebf5575f968da521a21b5611)
PNaCl: Simplify PromoteIntegers pass to not convert pointer types

This fixes handling of GEPs on types like [2 x i40]*, which was used
in an Emscripten test case.

This change simplifies the pass and makes it a bit more robust.

BUG=none
TEST=*.ll test

Review URL: https://codereview.chromium.org/99553006

(cherry picked from commit 44d6e2838db26df9d09fd7b57609ceef84cc479e)

Conflicts:
	lib/Transforms/NaCl/PromoteIntegers.cpp
LTO: Don't add the vectorizer passes unless the user provided -vectorize-loops or -vectorize-slp.