[PATCH] D32273: [X86][AVX512]

Guy Blank via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Apr 20 00:28:17 PDT 2017


guyblank created this revision.

Following this RFC <https://groups.google.com/forum/#!msg/llvm-dev/-OmfyIY3SaU/n0ak_jyyBQAJ;context-place=forum/llvm-dev>.
This patch defines the i1 type as illegal in the X86 backend for AVX512.
for DAG operations on <N x i1> types (build vector, extract vector element, ...) i8 is used, and should be truncated/extended.
A v1i1 MVT is added to support scalar instruction that use masks, like floating point compare.


https://reviews.llvm.org/D32273

Files:
  include/llvm/CodeGen/MachineValueType.h
  include/llvm/CodeGen/ValueTypes.td
  lib/IR/ValueTypes.cpp
  lib/Target/X86/X86CallingConv.td
  lib/Target/X86/X86ISelLowering.cpp
  lib/Target/X86/X86InstrAVX512.td
  lib/Target/X86/X86InstrFragmentsSIMD.td
  lib/Target/X86/X86InstrInfo.cpp
  lib/Target/X86/X86RegisterInfo.td
  test/CodeGen/X86/avx512-cmp.ll
  test/CodeGen/X86/avx512-cvt.ll
  test/CodeGen/X86/avx512-ext.ll
  test/CodeGen/X86/avx512-fsel.ll
  test/CodeGen/X86/avx512-i1test.ll
  test/CodeGen/X86/avx512-insert-extract.ll
  test/CodeGen/X86/avx512-insert-extract_i1.ll
  test/CodeGen/X86/avx512-intrinsics-upgrade.ll
  test/CodeGen/X86/avx512-intrinsics.ll
  test/CodeGen/X86/avx512-load-store.ll
  test/CodeGen/X86/avx512-mask-bugfix.ll
  test/CodeGen/X86/avx512-mask-op.ll
  test/CodeGen/X86/avx512-memfold.ll
  test/CodeGen/X86/avx512-regcall-NoMask.ll
  test/CodeGen/X86/avx512-select.ll
  test/CodeGen/X86/avx512dq-intrinsics-upgrade.ll
  test/CodeGen/X86/avx512dq-intrinsics.ll
  test/CodeGen/X86/avx512er-intrinsics.ll
  test/CodeGen/X86/fast-isel-load-i1.ll
  test/CodeGen/X86/fma-fneg-combine.ll
  test/CodeGen/X86/masked_gather_scatter.ll
  test/CodeGen/X86/pr27591.ll
  test/CodeGen/X86/pr28173.ll
  test/CodeGen/X86/pr32241.ll
  test/CodeGen/X86/pr32256.ll
  test/CodeGen/X86/pr32284.ll
  test/CodeGen/X86/pr32451.ll
  test/CodeGen/X86/sse-scalar-fp-arith.ll
  test/CodeGen/X86/xmulo.ll
  test/CodeGen/X86/xor-select-i1-combine.ll
  test/TableGen/intrinsic-varargs.td
  utils/TableGen/CodeGenTarget.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D32273.95897.patch
Type: text/x-patch
Size: 153428 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170420/15dc6bc0/attachment.bin>


More information about the llvm-commits mailing list