[llvm] Adding Matching and Inference Functionality to Propeller-PR4: Implement matching and inference and create clusters (PR #167622)

Vitaly Buka via llvm-commits llvm-commits at lists.llvm.org
Sat Apr 18 20:20:07 PDT 2026


================
@@ -80,6 +80,8 @@ struct BlendedBlockHash {
     return Dist;
   }
----------------
vitalybuka wrote:

@rlavaee
@wdx727

Trying to figure out flakiness
basic-block-sections-clusters-bb-hash

Isn't these hashes suppose to be stable?

for (auto &Block : MF) {
    Blocks.push_back(&Block);
    errs() << Block << "\n";
    Hashes.push_back(BlendedBlockHash(MBHI->getMBBHash(Block)));
    errs() << MBHI->getMBBHash(Block) << "\n";
  }


# .---command stderr------------
# | bb.0 (%ir-block.1, bb_id 0):
# |   successors: %bb.2, %bb.1
# |   liveins: $edi
# |   frame-setup PUSH64r undef $rax, implicit-def $rsp, implicit $rsp
# |   $al = MOV8rr $dil, implicit killed $edi
# |   renamable $al = AND8ri renamable $al(tied-def 0), 1, implicit-def dead $eflags
# |   MOV8mr $rsp, 1, $noreg, 7, $noreg, killed renamable $al :: (store (s8) into %ir.2)
# |   TEST8mi $rsp, 1, $noreg, 7, $noreg, 1, implicit-def $eflags :: (load (s8) from %ir.2)
# |   JCC_1 %bb.2, 4, implicit killed $eflags
# | 
# | 10480298204694249472
bb.0 (%ir-block.1, bb_id 0):
  successors: %bb.2, %bb.1
  liveins: $edi
  frame-setup PUSH64r undef $rax, implicit-def $rsp, implicit $rsp
  $al = MOV8rr $dil, implicit killed $edi
  renamable $al = AND8ri renamable $al(tied-def 0), 1, implicit-def dead $eflags
  MOV8mr $rsp, 1, $noreg, 7, $noreg, killed renamable $al :: (store (s8) into %ir.2)
  TEST8mi $rsp, 1, $noreg, 7, $noreg, 1, implicit-def $eflags :: (load (s8) from %ir.2)
  JCC_1 %bb.2, 4, implicit killed $eflags

10480300502501752832

https://github.com/llvm/llvm-project/pull/167622


More information about the llvm-commits mailing list