aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorKai Luo <lkail@cn.ibm.com>2020-07-22 04:16:20 +0000
committerKai Luo <lkail@cn.ibm.com>2020-07-22 06:35:12 +0000
commitc3f9697f1f227296818fbaf1a770a29842ea454c (patch)
tree1241a0aa39752aa0780b0fac7d4a994bba29750c /clang/lib/Frontend/CompilerInvocation.cpp
parent8912252252c87d8ef6623ecf9fdde444560ee4b9 (diff)
downloadllvm-c3f9697f1f227296818fbaf1a770a29842ea454c.zip
llvm-c3f9697f1f227296818fbaf1a770a29842ea454c.tar.gz
llvm-c3f9697f1f227296818fbaf1a770a29842ea454c.tar.bz2
[PowerPC] Fix wrong codegen when stack pointer has to realign performing dynalloc
Current powerpc backend generates wrong code sequence if stack pointer has to realign if `-fstack-clash-protection` enabled. When probing dynamic stack allocation, current `PREPARE_PROBED_ALLOCA` takes `NegSizeReg` as input and returns `FinalStackPtr`. `FinalStackPtr=StackPtr+ActualNegSize` is calculated correctly, however code following `PREPARE_PROBED_ALLOCA` still uses value of `NegSizeReg`, which does not contain `ActualNegSize` if `MaxAlign > TargetAlign`, to calculate loop trip count and residual number of bytes. This patch is part of fix of https://bugs.llvm.org/show_bug.cgi?id=46759. Differential Revision: https://reviews.llvm.org/D84152
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions