[all-commits] [llvm/llvm-project] 12d59b: [DAG] Legalize umin(x, y) -> sub(x, usubsat(x, y)) an...

Simon Pilgrim via All-commits all-commits at lists.llvm.org
Thu Nov 26 07:01:47 PST 2020


  Branch: refs/heads/temp-test-main
  Home:   https://github.com/llvm/llvm-project
  Commit: 12d59b696b33065e070d6ee7a55d2e8c019d138b
      https://github.com/llvm/llvm-project/commit/12d59b696b33065e070d6ee7a55d2e8c019d138b
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2020-11-26 (Thu, 26 Nov 2020)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/midpoint-int-vec-128.ll

  Log Message:
  -----------
  [DAG] Legalize umin(x,y) -> sub(x,usubsat(x,y)) and umax(x,y) -> add(x,usubsat(y,x)) iff usubsat is legal

If usubsat() is legal, this is likely to result in smaller codegen expansion than the default cmp+select codegen expansion.

Allows us to move the x86-specific lowering to the generic expansion code.




More information about the All-commits mailing list