Subzero: Fixes for Hello World and bisection debugging.
Add the llvm2ice -sandbox option (false by default) to select between
native and sandboxed code generation. Currently, it controls whether
the llvm.nacl.read.tp intrinsic is lowered to gs:[0x0] or a call to
__nacl_read_tp.
Change the asm output slightly for -ffunction-sections so that objdump
is more willing to provide a disassembly.
BUG= none
R=jvoung@chromium.org
Review URL: https://codereview.chromium.org/504963002
diff --git a/src/IceCfg.cpp b/src/IceCfg.cpp
index faaabe9..6fe7eb0 100644
--- a/src/IceCfg.cpp
+++ b/src/IceCfg.cpp
@@ -309,7 +309,7 @@
Str << "\t.text\n";
IceString MangledName = getContext()->mangleName(getFunctionName());
if (Ctx->getFlags().FunctionSections)
- Str << "\t.section\t.text." << MangledName << "\n";
+ Str << "\t.section\t.text." << MangledName << ",\"ax\",@progbits\n";
if (!getInternal()) {
Str << "\t.globl\t" << MangledName << "\n";
Str << "\t.type\t" << MangledName << ",@function\n";