Assert that PNaCl bitcode only uses 128-bit vector casts.
Change-Id: I5aee2c998842f95ccc44d5c0fed90aa289bdf67b
Reviewed-on: https://chromium-review.googlesource.com/401639
Tested-by: Nicolas Capens <nicolascapens@google.com>
Reviewed-by: Jim Stichnoth <stichnot@chromium.org>
diff --git a/src/IceTargetLoweringX86BaseImpl.h b/src/IceTargetLoweringX86BaseImpl.h
index 38dfba7..941074b 100644
--- a/src/IceTargetLoweringX86BaseImpl.h
+++ b/src/IceTargetLoweringX86BaseImpl.h
@@ -3216,6 +3216,8 @@
// Bitcast requires equal type sizes, which isn't strictly the case
// between scalars and vectors, but to emulate v4i8 vectors one has to
// use v16i8 vectors.
+ assert(getFlags().getApplicationBinaryInterface() != ABI_PNaCl &&
+ "PNaCl only supports real 128-bit vectors");
_movd(Dest, legalize(Src0, Legal_Reg | Legal_Mem));
} else {
_movp(Dest, legalizeToReg(Src0));