diff options
author | Than McIntosh <thanm@google.com> | 2018-11-07 17:41:57 +0000 |
---|---|---|
committer | Than McIntosh <thanm@google.com> | 2018-11-07 17:41:57 +0000 |
commit | 5bcdea51186658e0eb1c7f73273bf256c2626512 (patch) | |
tree | fd6cbeaca964b53a3d642a1f9b70a8c6e296599b /llvm/lib | |
parent | ac86038b407514cc1a93b05d0a4b375c49298a0b (diff) | |
download | bcm5719-llvm-5bcdea51186658e0eb1c7f73273bf256c2626512.tar.gz bcm5719-llvm-5bcdea51186658e0eb1c7f73273bf256c2626512.zip |
[X86] improve split-stack machine BB placement
Summary:
The conditional branch created to support -fsplit-stack for X86 is
left unbiased/unhinted, resulting in less than ideal block placement:
the __morestack call block is kept on the main hot path. Bias the
branch to insure that the stack allocation block is treated as a
"cold" block during machine basic block placement.
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D54123
llvm-svn: 346336
Diffstat (limited to 'llvm/lib')
-rw-r--r-- | llvm/lib/Target/X86/X86FrameLowering.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/Target/X86/X86FrameLowering.cpp b/llvm/lib/Target/X86/X86FrameLowering.cpp index 67ec867b562..e40b0f81e33 100644 --- a/llvm/lib/Target/X86/X86FrameLowering.cpp +++ b/llvm/lib/Target/X86/X86FrameLowering.cpp @@ -2471,8 +2471,8 @@ void X86FrameLowering::adjustForSegmentedStacks( allocMBB->addSuccessor(&PrologueMBB); - checkMBB->addSuccessor(allocMBB); - checkMBB->addSuccessor(&PrologueMBB); + checkMBB->addSuccessor(allocMBB, BranchProbability::getZero()); + checkMBB->addSuccessor(&PrologueMBB, BranchProbability::getOne()); #ifdef EXPENSIVE_CHECKS MF.verify(); |