This is an archive of the discontinued LLVM Phabricator instance.

[X86][AVX512] add encoding and intrinsics for Multishift
ClosedPublic

Authored by AsafBadouh on Jan 21 2016, 3:35 AM.

Diff Detail

Repository
rL LLVM

Event Timeline

AsafBadouh updated this revision to Diff 45506.Jan 21 2016, 3:35 AM
AsafBadouh retitled this revision from to [X86][AVX512] add encoding and intrinsics for Multishift.
AsafBadouh updated this object.
AsafBadouh added reviewers: delena, m_zuckerman, igorb.
AsafBadouh set the repository for this revision to rL LLVM.
AsafBadouh added a subscriber: llvm-commits.
This comment was removed by AsafBadouh.
delena added inline comments.Jan 30 2016, 11:29 PM
E:/Work/LLVM/llvm/include/llvm/IR/IntrinsicsX86.td
2514 ↗(On Diff #45506)

The types you wrote here don't match GCC
return (m512i) builtin_ia32_vpmultishiftqb512_mask ((v64qi) X,

(__v64qi) __Y,
(__v64qi) __W,
(__mmask64) __M);
AsafBadouh updated this revision to Diff 46486.Jan 31 2016, 1:33 AM

change types to be align with GCC builtins

delena added inline comments.Jan 31 2016, 2:06 AM
E:/Work/LLVM/llvm/lib/Target/X86/X86InstrAVX512.td
3433 ↗(On Diff #46486)

broadcast is the same for all cases, you don't need to pass it

AsafBadouh updated this revision to Diff 46487.Jan 31 2016, 3:37 AM
AsafBadouh marked an inline comment as done.

changes according to Elena's comment.

AsafBadouh marked an inline comment as done.Feb 1 2016, 4:04 AM

ping

delena accepted this revision.Feb 1 2016, 6:44 AM
delena edited edge metadata.

LGTM

This revision is now accepted and ready to land.Feb 1 2016, 6:44 AM
This revision was automatically updated to reflect the committed changes.