[all-commits] [llvm/llvm-project] 40163f: [x86] add special-case lowering for usubsat for AV...

RotateRight via All-commits all-commits at lists.llvm.org
Wed Oct 20 13:41:26 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 40163f1df8c60f987e8adc0cb78edb289f73b771
      https://github.com/llvm/llvm-project/commit/40163f1df8c60f987e8adc0cb78edb289f73b771
  Author: Sanjay Patel <spatel at rotateright.com>
  Date:   2021-10-20 (Wed, 20 Oct 2021)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/psubus.ll

  Log Message:
  -----------
  [x86] add special-case lowering for usubsat for AVX512

This is a small extension of D112095 to avoid another regression
seen with D112085.
In this case, we allow the same conversion from usubsat to ALU
ops if the target supports vpternlog.

That pattern will get converted later in X86DAGToDAGISel::tryVPTERNLOG().
This seems better than putting a magic immediate constant directly in
this code to create the exact vpternlog that we need. It's possible that
there are other special-cases along these lines, so we should try to
keep all of the vpternlog magic in one place.

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




More information about the All-commits mailing list