about summary refs log tree commit diff
diff options
context:
space:
mode:
authorDaniel Micay <danielmicay@gmail.com>2013-08-22 20:46:20 -0400
committerDaniel Micay <danielmicay@gmail.com>2013-08-22 20:49:48 -0400
commit0ac02e7c4fcdda35940eccba385001e8b882c63e (patch)
treea191547b209c95b9dc4271bc3cc70d880b0a281c
parentdb14469e21facf6754e24aea5fbb5de7e0c03e99 (diff)
downloadrust-0ac02e7c4fcdda35940eccba385001e8b882c63e.tar.gz
rust-0ac02e7c4fcdda35940eccba385001e8b882c63e.zip
make: stop disabling frame pointer elimination
We currently have no need for the frame pointers on any platform. They
may eventually be needed on platforms without an equivalent to the DWARF
call frame information to walk the stack in the garbage collector.

Closes #7477
-rw-r--r--mk/platform.mk5
-rw-r--r--src/rustllvm/RustWrapper.cpp2
2 files changed, 1 insertions, 6 deletions
diff --git a/mk/platform.mk b/mk/platform.mk
index 9fde6475535..3e7ad914dab 100644
--- a/mk/platform.mk
+++ b/mk/platform.mk
@@ -26,10 +26,7 @@ endef
 $(foreach t,$(CFG_TARGET_TRIPLES),$(eval $(call DEF_OSTYPE_VAR,$(t))))
 $(foreach t,$(CFG_TARGET_TRIPLES),$(info cfg: os for $(t) is $(OSTYPE_$(t))))
 
-# FIXME: no-omit-frame-pointer is just so that task_start_wrapper
-# has a frame pointer and the stack walker can understand it. Turning off
-# frame pointers everywhere is overkill
-CFG_GCCISH_CFLAGS += -fno-omit-frame-pointer -DUSE_UTF8
+CFG_GCCISH_CFLAGS += -DUSE_UTF8
 
 # On Darwin, we need to run dsymutil so the debugging information ends
 # up in the right place.  On other platforms, it automatically gets
diff --git a/src/rustllvm/RustWrapper.cpp b/src/rustllvm/RustWrapper.cpp
index 1a4b7f32329..7e9a790e215 100644
--- a/src/rustllvm/RustWrapper.cpp
+++ b/src/rustllvm/RustWrapper.cpp
@@ -342,7 +342,6 @@ LLVMRustBuildJIT(void* mem,
   std::string Err;
   TargetOptions Options;
   Options.JITEmitDebugInfo = true;
-  Options.NoFramePointerElim = true;
   Options.EnableSegmentedStacks = EnableSegmentedStacks;
   RustMCJITMemoryManager* MM = (RustMCJITMemoryManager*) mem;
   assert(MM);
@@ -393,7 +392,6 @@ LLVMRustWriteOutputFile(LLVMPassManagerRef PMR,
   }
 
   TargetOptions Options;
-  Options.NoFramePointerElim = true;
   Options.EnableSegmentedStacks = EnableSegmentedStacks;
   Options.FixedStackSegmentSize = 2 * 1024 * 1024;  // XXX: This is too big.