[all-commits] [llvm/llvm-project] 44587e: [BPI] Improve static heuristics for integer compar...

Dávid Bolvanský via All-commits all-commits at lists.llvm.org
Thu Aug 13 05:24:31 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 44587e2f7e732604cd6340061d40ac21e7e188e5
      https://github.com/llvm/llvm-project/commit/44587e2f7e732604cd6340061d40ac21e7e188e5
  Author: Dávid Bolvanský <david.bolvansky at gmail.com>
  Date:   2020-08-13 (Thu, 13 Aug 2020)

  Changed paths:
    M llvm/include/llvm/Analysis/BranchProbabilityInfo.h
    M llvm/lib/Analysis/BranchProbabilityInfo.cpp
    A llvm/test/Analysis/BranchProbabilityInfo/integer_heuristics.ll
    M llvm/test/Analysis/BranchProbabilityInfo/loop.ll
    R llvm/test/Analysis/BranchProbabilityInfo/zero_heuristics.ll
    M llvm/test/CodeGen/AArch64/aarch64-gep-opt.ll
    M llvm/test/CodeGen/AArch64/branch-relax-alignment.ll
    M llvm/test/CodeGen/AArch64/combine-comparisons-by-cse.ll
    M llvm/test/CodeGen/AArch64/cond-br-tuning.ll
    M llvm/test/CodeGen/AArch64/fast-isel-cmp-branch.ll
    M llvm/test/CodeGen/ARM/2011-12-14-machine-sink.ll
    M llvm/test/CodeGen/ARM/cmpxchg-weak.ll
    M llvm/test/CodeGen/ARM/lsr-unfolded-offset.ll
    M llvm/test/CodeGen/ARM/machine-cse-cmp.ll
    M llvm/test/CodeGen/Hexagon/newvaluejump2.ll
    M llvm/test/CodeGen/Mips/brcongt.ll
    M llvm/test/CodeGen/Mips/brconlt.ll
    M llvm/test/CodeGen/Mips/brconne.ll
    M llvm/test/CodeGen/Mips/compactbranches/no-beqzc-bnezc.ll
    M llvm/test/CodeGen/Mips/lcb2.ll
    M llvm/test/CodeGen/Mips/lcb5.ll
    M llvm/test/CodeGen/Mips/longbranch/compact-branches-long-branch.ll
    M llvm/test/CodeGen/Mips/seleq.ll
    M llvm/test/CodeGen/Mips/selle.ll
    M llvm/test/CodeGen/PowerPC/brcond.ll
    M llvm/test/CodeGen/PowerPC/memCmpUsedInZeroEqualityComparison.ll
    M llvm/test/CodeGen/PowerPC/redundant-copy-after-tail-dup.ll
    M llvm/test/CodeGen/RISCV/branch.ll
    M llvm/test/CodeGen/RISCV/rv64m-w-insts-legalization.ll
    M llvm/test/CodeGen/SystemZ/int-cmp-37.ll
    M llvm/test/CodeGen/SystemZ/int-cmp-40.ll
    M llvm/test/CodeGen/Thumb2/LowOverheadLoops/mve-float-loops.ll
    M llvm/test/CodeGen/Thumb2/LowOverheadLoops/varying-outer-2d-reduction.ll
    M llvm/test/CodeGen/Thumb2/mve-postinc-distribute.ll
    M llvm/test/CodeGen/Thumb2/mve-postinc-lsr.ll
    M llvm/test/CodeGen/Thumb2/mve-satmul-loops.ll
    M llvm/test/CodeGen/Thumb2/thumb2-branch.ll
    M llvm/test/CodeGen/X86/3addr-16bit.ll
    M llvm/test/CodeGen/X86/absolute-cmp.ll
    M llvm/test/CodeGen/X86/atomic-flags.ll
    M llvm/test/CodeGen/X86/atomic-unordered.ll
    M llvm/test/CodeGen/X86/bmi.ll
    M llvm/test/CodeGen/X86/bt.ll
    M llvm/test/CodeGen/X86/conditional-tailcall-pgso.ll
    M llvm/test/CodeGen/X86/conditional-tailcall.ll
    M llvm/test/CodeGen/X86/fast-isel-cmp-branch2.ll
    M llvm/test/CodeGen/X86/funnel-shift.ll
    M llvm/test/CodeGen/X86/indirect-branch-tracking-eh2.ll
    M llvm/test/CodeGen/X86/jump_sign.ll
    M llvm/test/CodeGen/X86/lsr-negative-stride.ll
    M llvm/test/CodeGen/X86/machine-cse.ll
    M llvm/test/CodeGen/X86/memcmp-more-load-pairs.ll
    M llvm/test/CodeGen/X86/memcmp-optsize.ll
    M llvm/test/CodeGen/X86/memcmp-pgso.ll
    M llvm/test/CodeGen/X86/memcmp.ll
    M llvm/test/CodeGen/X86/neg_cmp.ll
    M llvm/test/CodeGen/X86/nobt.ll
    M llvm/test/CodeGen/X86/pr29170.ll
    M llvm/test/CodeGen/X86/wide-integer-cmp.ll
    M llvm/test/DebugInfo/COFF/fpo-shrink-wrap.ll
    M llvm/test/Transforms/PGOProfile/counter_promo_mexits.ll
    M llvm/test/Transforms/PGOProfile/landingpad.ll

  Log Message:
  -----------
  [BPI] Improve static heuristics for integer comparisons

Similarly as for pointers, even for integers a == b is usually false.

GCC also uses this heuristic.

Reviewed By: ebrevnov

Differential Revision: https://reviews.llvm.org/D85781




More information about the All-commits mailing list