[all-commits] [llvm/llvm-project] e90dc7: [X86] Move avx512 code that forces zeros to the fa...

topperc via All-commits all-commits at lists.llvm.org
Mon Feb 17 22:24:53 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: e90dc7c48bf384d6ae863ca80f81d135150e9b90
      https://github.com/llvm/llvm-project/commit/e90dc7c48bf384d6ae863ca80f81d135150e9b90
  Author: Craig Topper <craig.topper at gmail.com>
  Date:   2020-02-17 (Mon, 17 Feb 2020)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/avx512-vec-cmp.ll

  Log Message:
  -----------
  [X86] Move avx512 code that forces zeros to the false side of vselects above a check for legal types.

This helps this transform occur earlier so we can fold the not
with setcc. If we delay it until after type legalization we might
have introduced instructions to widen the mask if the vselect was
widened. This can prevent the not from making it to the setcc.

We could of course add more DAG combines to handle that, but
moving this earlier is easier.




More information about the All-commits mailing list