[PATCH] D138774: Enhance stack protector

Xiang Zhang via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Dec 2 23:57:20 PST 2022


xiangzhangllvm added a comment.

In D138774#3966421 <https://reviews.llvm.org/D138774#3966421>, @fhahn wrote:

> This is causing some bots with EXPENSIVE_CHECKS enabled to fail so I reverted the patch to get the bots back to green:  https://green.lab.llvm.org/green/job/clang-stage1-cmake-RA-expensive/24249/testReport/junit/LLVM/CodeGen_X86/stack_protector_no_return_ll/
>
> It looks like the StackProtector pass claims to preserve the DT, but with this patch it probably runs into a case where it is not preserved properly, hence the verification failure.

Yes, after we enhance it, the old logic in stack protector is not enough to update the DT. Let me fix it. Thanks!



================
Comment at: llvm/lib/CodeGen/StackProtector.cpp:548-552
       // Update the dominator tree if we need to.
       if (DT && DT->isReachableFromEntry(&BB)) {
         DT->addNewBlock(NewBB, &BB);
         DT->addNewBlock(FailBB, &BB);
       }
----------------
Thanks, after we enhance the stack protector, the simple DT update is not enough to cover the DT change.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D138774/new/

https://reviews.llvm.org/D138774



More information about the llvm-commits mailing list