[all-commits] [llvm/llvm-project] 5e3ae4: [NVPTX] improve Boolean ISel (#80166)

Alex MacLean via All-commits all-commits at lists.llvm.org
Wed Jan 31 14:37:40 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 5e3ae4c4afc98e30e4264b52e234113b49159c37
      https://github.com/llvm/llvm-project/commit/5e3ae4c4afc98e30e4264b52e234113b49159c37
  Author: Alex MacLean <amaclean at nvidia.com>
  Date:   2024-01-31 (Wed, 31 Jan 2024)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    A llvm/test/CodeGen/NVPTX/boolean-patterns.ll

  Log Message:
  -----------
  [NVPTX] improve Boolean ISel (#80166)

Add TableGen patterns to convert more instructions to boolean
expressions:

- **mul -> and/or**: i1 multiply instructions currently cannot be
selected causing the compiler to crash. See
https://github.com/llvm/llvm-project/issues/57404
- **select -> and/or**: Converting selects to and/or can enable more
optimizations. `InstCombine` cannot do this as aggressively due to
poison semantics.




More information about the All-commits mailing list