[PATCH] D20686: [X86][SSE] Replace (V)PMOVSX and (V)PMOVZX integer extension intrinsics with generic IR (llvm)

Simon Pilgrim via llvm-commits llvm-commits at lists.llvm.org
Thu May 26 09:13:59 PDT 2016


RKSimon created this revision.
RKSimon added reviewers: mkuper, craig.topper, spatel, andreadb.
RKSimon added a subscriber: llvm-commits.
RKSimon set the repository for this revision to rL LLVM.

This patch removes the llvm intrinsics VPMOVSX and (V)PMOVZX sign/zero extension intrinsics and auto-upgrades to SEXT/ZEXT calls instead. We already did this for SSE41 PMOVSX sometime ago so much of that implementation can be reused.

A companion patch (D20684) removes/auto-upgrade the clang intrinsics.

Repository:
  rL LLVM

http://reviews.llvm.org/D20686

Files:
  include/llvm/IR/IntrinsicsX86.td
  lib/IR/AutoUpgrade.cpp
  lib/Target/X86/X86IntrinsicsInfo.h
  lib/Transforms/InstCombine/InstCombineCalls.cpp
  test/CodeGen/X86/avx-intrinsics-x86-upgrade.ll
  test/CodeGen/X86/avx-intrinsics-x86.ll
  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/avx2-pmovxrm-intrinsics.ll
  test/CodeGen/X86/sse41-intrinsics-fast-isel.ll
  test/CodeGen/X86/sse41-intrinsics-x86-upgrade.ll
  test/CodeGen/X86/sse41-intrinsics-x86.ll
  test/CodeGen/X86/sse41-pmovxrm-intrinsics.ll
  test/CodeGen/X86/stack-folding-int-avx2.ll
  test/Transforms/InstCombine/x86-pmovsx.ll
  test/Transforms/InstCombine/x86-pmovzx.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D20686.58627.patch
Type: text/x-patch
Size: 78558 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160526/439a357c/attachment-0001.bin>


More information about the llvm-commits mailing list