Allow 64-bit code to be stored as ELF64.
Previously all unsandboxed 64-bit code was assumed to use ILP32 and
be stored in ELF32 format using the x32 ABI.
BUG=swiftshader:9
Change-Id: I2476a09d1f0af60b1ac6f8807ee9ed37d54a99d4
Reviewed-on: https://chromium-review.googlesource.com/385277
Reviewed-by: Jim Stichnoth <stichnot@chromium.org>
Tested-by: Nicolas Capens <nicolascapens@google.com>
diff --git a/src/IceClFlags.def b/src/IceClFlags.def
index bb9a181..3c03813 100644
--- a/src/IceClFlags.def
+++ b/src/IceClFlags.def
@@ -229,6 +229,13 @@
"Low-level integrated assembly ('.s') file"), \
clEnumValEnd)) \
\
+ X(ApplicationBinaryInterface, Ice::ABI, dev_opt_flag, "abi", \
+ cl::desc("ABI type"), cl::init(Ice::ABI_PNaCl), \
+ cl::values( \
+ clEnumValN(Ice::ABI_PNaCl, "pnacl", "x32 for unsandboxed 64-bit x86"), \
+ clEnumValN(Ice::ABI_Platform, "platform", "Native executable ABI"), \
+ clEnumValEnd)) \
+ \
X(ParseParallel, bool, dev_opt_flag, "parse-parallel", \
cl::desc("Parse function blocks in parallel"), cl::init(true)) \
\