| commit e42f6c0ac05bae37be8e2a5fd8861773646eae1b |
| Author: Han Shen <shenhan@google.com> |
| Date: Thu Oct 22 17:26:01 2020 -0700 |
| |
| Revert "[MBP] Add whole chain to BlockFilterSet instead of individual BB" |
| |
| This reverts commit adfb5415010fbbc009a4a6298cfda7a6ed4fa6d4. |
| |
| This is reverted because it caused an chrome error: https://crbug.com/1140168 |
| |
| diff --git a/llvm/lib/CodeGen/MachineBlockPlacement.cpp b/llvm/lib/CodeGen/MachineBlockPlacement.cpp |
| index b4244bb8bb9..8a866963803 100644 |
| --- a/llvm/lib/CodeGen/MachineBlockPlacement.cpp |
| +++ b/llvm/lib/CodeGen/MachineBlockPlacement.cpp |
| @@ -2541,14 +2541,10 @@ MachineBlockPlacement::collectLoopBlockSet(const MachineLoop &L) { |
| MBPI->getEdgeProbability(LoopPred, L.getHeader()); |
| |
| for (MachineBasicBlock *LoopBB : L.getBlocks()) { |
| - if (LoopBlockSet.count(LoopBB)) |
| - continue; |
| auto Freq = MBFI->getBlockFreq(LoopBB).getFrequency(); |
| if (Freq == 0 || LoopFreq.getFrequency() / Freq > LoopToColdBlockRatio) |
| continue; |
| - BlockChain *Chain = BlockToChain[LoopBB]; |
| - for (MachineBasicBlock *ChainBB : *Chain) |
| - LoopBlockSet.insert(ChainBB); |
| + LoopBlockSet.insert(LoopBB); |
| } |
| } else |
| LoopBlockSet.insert(L.block_begin(), L.block_end()); |
| diff --git a/llvm/test/CodeGen/X86/block_set.ll b/llvm/test/CodeGen/X86/block_set.ll |
| deleted file mode 100644 |
| index bfe391d5b46..00000000000 |
| --- a/llvm/test/CodeGen/X86/block_set.ll |
| +++ /dev/null |
| @@ -1,64 +0,0 @@ |
| -; RUN: llc -mtriple=i686-linux < %s | FileCheck %s |
| - |
| -define i1 @block_filter() !prof !22{ |
| -; CHECK-LABEL: block_filter |
| -; CHECK: %.entry |
| -; CHECK: %.header1 |
| -; CHECK: %.bb1 |
| -; CHECK: %.header2 |
| -; CHECK: %.latch2 |
| -; CHECK: %.cold |
| -; CHECK: %.pred |
| -; CHECK: %.problem |
| -; CHECK: %.latch1 |
| -; CHECK: %.exit |
| -.entry: |
| - %val0 = call i1 @bar() |
| - br label %.header1 |
| - |
| -.header1: |
| - %val1 = call i1 @foo() |
| - br i1 %val1, label %.bb1, label %.pred, !prof !2 |
| - |
| -.bb1: |
| - %val11 = call i1 @foo() |
| - br i1 %val11, label %.header2, label %.pred, !prof !2 |
| - |
| -.header2: |
| - %val2 = call i1 @foo() |
| - br i1 %val2, label %.latch2, label %.cold, !prof !10 |
| - |
| -.cold: |
| - %val4 = call i1 @bar() |
| - br i1 %val4, label %.latch2, label %.problem |
| - |
| -.latch2: |
| - %val5 = call i1 @foo() |
| - br i1 %val5, label %.header2, label %.latch1, !prof !1 |
| - |
| -.pred: |
| - %valp = call i1 @foo() |
| - br label %.problem |
| - |
| -.problem: |
| - %val3 = call i1 @foo() |
| - br label %.latch1 |
| - |
| -.latch1: |
| - %val6 = call i1 @foo() |
| - br i1 %val6, label %.header1, label %.exit, !prof !1 |
| - |
| -.exit: |
| - %val7 = call i1 @foo() |
| - ret i1 %val7 |
| -} |
| - |
| -declare i1 @foo() |
| -declare i1 @bar() |
| - |
| -!1 = !{!"branch_weights", i32 5, i32 5} |
| -!2 = !{!"branch_weights", i32 60, i32 40} |
| -!3 = !{!"branch_weights", i32 90, i32 10} |
| -!10 = !{!"branch_weights", i32 90, i32 10} |
| - |
| -!22 = !{!"function_entry_count", i64 100} |