diff options
author | Nick Desaulniers <ndesaulniers@google.com> | 2020-02-18 15:33:42 -0800 |
---|---|---|
committer | Nick Desaulniers <ndesaulniers@google.com> | 2020-02-18 15:33:46 -0800 |
commit | 8b9cb120812449dbe67d2252ebf619c4c9cac816 (patch) | |
tree | 99eec8fcc13168ef7f2642cea8edc3d01a251f10 /llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp | |
parent | 1f441342433dc39f691ded7821126b8d2a59df88 (diff) | |
download | llvm-8b9cb120812449dbe67d2252ebf619c4c9cac816.zip llvm-8b9cb120812449dbe67d2252ebf619c4c9cac816.tar.gz llvm-8b9cb120812449dbe67d2252ebf619c4c9cac816.tar.bz2 |
[Driver] -pg -mfentry should respect target specific decisions for -mframe-pointer=all
Summary:
$ clang -O2 -pg -mfentry foo.c
was adding frame pointers to all functions. This was exposed via
compiling the Linux kernel for x86_64 with CONFIG_FUNCTION_TRACER
enabled.
-pg was unconditionally setting the equivalent of -fno-omit-frame-pointer,
regardless of the presence of -mfentry or optimization level. After this
patch, frame pointers will only be omitted at -O0 or if
-fno-omit-frame-pointer is explicitly set for -pg -mfentry.
See also:
https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=3c5273a96ba8dbf98c40bc6d9d0a1587b4cfedb2;hp=c9d75a48c4ea63ab27ccdb40f993236289b243f2#patch2
(modification to ix86_frame_pointer_required())
Fixes: pr/44934
Reviewers: void, manojgupta, dberris, MaskRay, hfinkel
Reviewed By: MaskRay
Subscribers: cfe-commits, llozano, niravd, srhines
Tags: #clang
Differential Revision: https://reviews.llvm.org/D74698
Diffstat (limited to 'llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp')
0 files changed, 0 insertions, 0 deletions