Skip to content

Commit 0ac02e7

Browse files
committed
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
1 parent db14469 commit 0ac02e7

File tree

2 files changed

+1
-6
lines changed

2 files changed

+1
-6
lines changed

mk/platform.mk

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,10 +26,7 @@ endef
2626
$(foreach t,$(CFG_TARGET_TRIPLES),$(eval $(call DEF_OSTYPE_VAR,$(t))))
2727
$(foreach t,$(CFG_TARGET_TRIPLES),$(info cfg: os for $(t) is $(OSTYPE_$(t))))
2828

29-
# FIXME: no-omit-frame-pointer is just so that task_start_wrapper
30-
# has a frame pointer and the stack walker can understand it. Turning off
31-
# frame pointers everywhere is overkill
32-
CFG_GCCISH_CFLAGS += -fno-omit-frame-pointer -DUSE_UTF8
29+
CFG_GCCISH_CFLAGS += -DUSE_UTF8
3330

3431
# On Darwin, we need to run dsymutil so the debugging information ends
3532
# up in the right place. On other platforms, it automatically gets

src/rustllvm/RustWrapper.cpp

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -342,7 +342,6 @@ LLVMRustBuildJIT(void* mem,
342342
std::string Err;
343343
TargetOptions Options;
344344
Options.JITEmitDebugInfo = true;
345-
Options.NoFramePointerElim = true;
346345
Options.EnableSegmentedStacks = EnableSegmentedStacks;
347346
RustMCJITMemoryManager* MM = (RustMCJITMemoryManager*) mem;
348347
assert(MM);
@@ -393,7 +392,6 @@ LLVMRustWriteOutputFile(LLVMPassManagerRef PMR,
393392
}
394393

395394
TargetOptions Options;
396-
Options.NoFramePointerElim = true;
397395
Options.EnableSegmentedStacks = EnableSegmentedStacks;
398396
Options.FixedStackSegmentSize = 2 * 1024 * 1024; // XXX: This is too big.
399397

0 commit comments

Comments
 (0)