diff options
author | Hongtao Yu <hoy@fb.com> | 2021-04-19 08:51:57 -0700 |
---|---|---|
committer | Hongtao Yu <hoy@fb.com> | 2021-04-19 17:55:34 -0700 |
commit | 1812319292e0041e7e32ad7b61d7252a450b95c2 (patch) | |
tree | 58613e33f6fcb46824485ace4441484f8e58d273 /llvm/lib/CodeGen/MachineBasicBlock.cpp | |
parent | fbb9132e71a200c12f416d30f4528b58c6c283f2 (diff) | |
download | llvm-1812319292e0041e7e32ad7b61d7252a450b95c2.zip llvm-1812319292e0041e7e32ad7b61d7252a450b95c2.tar.gz llvm-1812319292e0041e7e32ad7b61d7252a450b95c2.tar.bz2 |
[CSSPGO] Flip SkipPseudoOp to true for MIR APIs.
Flipping the default value of SkipPseudoOp to true for those MIR APIs to favor maximum performance. Note that certain spots like branch folding and MIR if-conversion is are disabled for better counts quality. For these two optimizations, this is a no-diff change.
The counts quality with SPEC2017 before/after this change is unchanged.
Reviewed By: wmi
Differential Revision: https://reviews.llvm.org/D100332
Diffstat (limited to 'llvm/lib/CodeGen/MachineBasicBlock.cpp')
-rw-r--r-- | llvm/lib/CodeGen/MachineBasicBlock.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/llvm/lib/CodeGen/MachineBasicBlock.cpp b/llvm/lib/CodeGen/MachineBasicBlock.cpp index f31eae9..cf22230 100644 --- a/llvm/lib/CodeGen/MachineBasicBlock.cpp +++ b/llvm/lib/CodeGen/MachineBasicBlock.cpp @@ -221,11 +221,13 @@ MachineBasicBlock::SkipPHIsAndLabels(MachineBasicBlock::iterator I) { } MachineBasicBlock::iterator -MachineBasicBlock::SkipPHIsLabelsAndDebug(MachineBasicBlock::iterator I) { +MachineBasicBlock::SkipPHIsLabelsAndDebug(MachineBasicBlock::iterator I, + bool SkipPseudoOp) { const TargetInstrInfo *TII = getParent()->getSubtarget().getInstrInfo(); iterator E = end(); while (I != E && (I->isPHI() || I->isPosition() || I->isDebugInstr() || + (SkipPseudoOp && I->isPseudoProbe()) || TII->isBasicBlockPrologue(*I))) ++I; // FIXME: This needs to change if we wish to bundle labels / dbg_values |