[all-commits] [llvm/llvm-project] 44cdbe: [InstCombine] Infer nneg flag from shift users (#7...

Yingwei Zheng via All-commits all-commits at lists.llvm.org
Mon Nov 13 05:05:19 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 44cdbef71560f1a09beefb4b2a96b597b4e6b214
      https://github.com/llvm/llvm-project/commit/44cdbef71560f1a09beefb4b2a96b597b4e6b214
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2023-11-13 (Mon, 13 Nov 2023)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/test/Transforms/InstCombine/div-shift.ll
    M llvm/test/Transforms/InstCombine/load-cmp.ll
    M llvm/test/Transforms/InstCombine/rem.ll
    M llvm/test/Transforms/InstCombine/select-bitext-bitwise-ops.ll
    M llvm/test/Transforms/InstCombine/select-obo-peo-ops.ll
    M llvm/test/Transforms/InstCombine/shift-add-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/shift-add.ll
    M llvm/test/Transforms/InstCombine/shift-amount-reassociation-in-bittest-with-truncation-lshr.ll
    M llvm/test/Transforms/InstCombine/shift-amount-reassociation-in-bittest-with-truncation-shl.ll
    M llvm/test/Transforms/InstCombine/shift-amount-reassociation-with-truncation-ashr.ll
    M llvm/test/Transforms/InstCombine/shift-amount-reassociation-with-truncation-lshr.ll
    M llvm/test/Transforms/InstCombine/shift-amount-reassociation-with-truncation-shl.ll
    M llvm/test/Transforms/InstCombine/shift-by-signext.ll
    M llvm/test/Transforms/InstCombine/shift-sra.ll
    M llvm/test/Transforms/InstCombine/variable-signext-of-variable-high-bit-extraction.ll
    M llvm/test/Transforms/InstCombine/vector-udiv.ll

  Log Message:
  -----------
  [InstCombine] Infer nneg flag from shift users (#71947)

This patch sets `nneg` flag when the zext is only used by a shift.

Alive2: https://alive2.llvm.org/ce/z/h3xKjP
Compile-time impact:
https://llvm-compile-time-tracker.com/compare.php?from=bd611264993f64decbce178d460caf1d1cb05f59&to=26bc473b239010bb24ff1bc39d58b42ecbbc4730&stat=instructions:u

This is an alternative to #71906.




More information about the All-commits mailing list