Handle va_arg on struct types for the le32 target (PNaCl and Emscripten)

Cherry picked from https://codereview.chromium.org/183973037, itself a
cherry pick from clang upstream r199830, originally
authored by mseaborn@chromium.org

PNaCl and Emscripten can both handle va_arg IR instructions with
struct type.

Also add a test to cover generating a va_arg IR instruction from
va_arg in C on le32 (as already handled by VisitVAArgExpr() in
CGExprScalar.cpp), which was not covered by a test before.

(This fixes
https://code.google.com/p/nativeclient/issues/detail?id=2381)

Differential Revision: http://llvm-reviews.chandlerc.com/D2539

R=mseaborn@chromium.org, dschuff@chromium.org, jvoung@chromium.org
TEST= ninja clang-check
BUG= https://code.google.com/p/nativeclient/issues/detail?id=2381
Merge pull request #4 from ericrannaud/incoming

Handle va_arg on struct types for the le32 target (PNaCl and Emscripten)