aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/CodeGen/CodeGenModule.cpp
diff options
context:
space:
mode:
authorRafael Auler <rafaelauler@fb.com>2022-05-20 20:10:22 -0700
committerRafael Auler <rafaelauler@fb.com>2022-07-11 17:30:13 -0700
commita3cfdd746e96a2e45953e5db1a6c87b925d16c8d (patch)
treee2fef9feb3a205e06856488c46c7aeefa9e8f098 /clang/lib/CodeGen/CodeGenModule.cpp
parent3e5f67f356a1b9dc31df72ac846e688143ce8a48 (diff)
downloadllvm-a3cfdd746e96a2e45953e5db1a6c87b925d16c8d.zip
llvm-a3cfdd746e96a2e45953e5db1a6c87b925d16c8d.tar.gz
llvm-a3cfdd746e96a2e45953e5db1a6c87b925d16c8d.tar.bz2
[BOLT] Increase coverage of shrink wrapping [5/5]
Add -experimental-shrink-wrapping flag to control when we want to move callee-saved registers even when addresses of the stack frame are captured and used in pointer arithmetic, making it more challenging to do alias analysis to prove that we do not access optimized stack positions. This alias analysis is not yet implemented, hence, it is experimental. In practice, though, no compiler would emit code to do pointer arithmetic to access a saved callee-saved register unless there is a memory bug or we are failing to identify a callee-saved reg, so I'm not sure how useful it would be to formally prove that. Reviewed By: Amir Differential Revision: https://reviews.llvm.org/D126115
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.cpp')
0 files changed, 0 insertions, 0 deletions