[PATCH] D46179: [X86] Lowering adds/addus/subs/subus intrinsics to native IR (LLVM part)

Tomasz Krupa via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Apr 27 01:36:01 PDT 2018


tkrupa created this revision.
Herald added a subscriber: llvm-commits.

This revision improves previous version (https://reviews.llvm.org/rL330322) which has been reverted due to crashes.

This is the patch that lowers x86 intrinsics to native IR
in order to enable optimizations. The patch also includes folding
of previously missing saturation patterns so that IR emits the same
machine instructions as the intrinsics.
Lowering in clang: https://reviews.llvm.org/D44786


Repository:
  rL LLVM

https://reviews.llvm.org/D46179

Files:
  include/llvm/IR/IntrinsicsX86.td
  lib/IR/AutoUpgrade.cpp
  lib/Target/X86/X86ISelLowering.cpp
  lib/Target/X86/X86IntrinsicsInfo.h
  test/CodeGen/X86/avx2-intrinsics-fast-isel.ll
  test/CodeGen/X86/avx2-intrinsics-x86-upgrade.ll
  test/CodeGen/X86/avx2-intrinsics-x86.ll
  test/CodeGen/X86/avx512bw-intrinsics-upgrade.ll
  test/CodeGen/X86/avx512bw-intrinsics.ll
  test/CodeGen/X86/avx512bwvl-intrinsics-upgrade.ll
  test/CodeGen/X86/avx512bwvl-intrinsics.ll
  test/CodeGen/X86/sse2-intrinsics-fast-isel.ll
  test/CodeGen/X86/sse2-intrinsics-x86-upgrade.ll
  test/CodeGen/X86/sse2-intrinsics-x86.ll
  test/CodeGen/X86/sse2-schedule.ll
  test/CodeGen/X86/vector-arith-sat.ll
  test/Instrumentation/MemorySanitizer/msan_x86intrinsics.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D46179.144295.patch
Type: text/x-patch
Size: 450403 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180427/feac62e6/attachment-0001.bin>


More information about the llvm-commits mailing list