Re: [PATCH] D20468: [X86][AVX] Ensure zero-extension of _mm256_extract_epi8 and _mm256_extract_epi16

2016-05-21 Thread Simon Pilgrim via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL270330: [X86][AVX] Ensure zero-extension of _mm256_extract_epi8 and _mm256_extract_epi16 (authored by RKSimon). Changed prior to commit: http://reviews.llvm.org/D20468?vs=57927=58045#toc Repository:

Re: [PATCH] D20468: [X86][AVX] Ensure zero-extension of _mm256_extract_epi8 and _mm256_extract_epi16

2016-05-20 Thread Michael Kuperstein via cfe-commits
mkuper accepted this revision. mkuper added a comment. This revision is now accepted and ready to land. Thanks, Dave! In that case, LGTM. Repository: rL LLVM http://reviews.llvm.org/D20468 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

Re: [PATCH] D20468: [X86][AVX] Ensure zero-extension of _mm256_extract_epi8 and _mm256_extract_epi16

2016-05-20 Thread David Kreitzer via cfe-commits
DavidKreitzer added a subscriber: DavidKreitzer. DavidKreitzer added a comment. Hi Michael, I think the Intel Intrinsics reference and the Intel Compiler are in error and that this is the right fix for the LLVM headers. (I'll follow up to get the Intel Intrinsics reference & Intel Compiler

Re: [PATCH] D20468: [X86][AVX] Ensure zero-extension of _mm256_extract_epi8 and _mm256_extract_epi16

2016-05-20 Thread Michael Kuperstein via cfe-commits
mkuper added a comment. You're right, the underlying instructions zext, and it seems like it's the right thing to do. I'm just wondering if this is something user code is supposed to rely on, given the way the intrinsics guide documents them right now. H.J, could you please take a look?

Re: [PATCH] D20468: [X86][AVX] Ensure zero-extension of _mm256_extract_epi8 and _mm256_extract_epi16

2016-05-20 Thread Simon Pilgrim via cfe-commits
RKSimon added a comment. In http://reviews.llvm.org/D20468#435522, @mkuper wrote: > Could you point me to where in the documentation it says they must be > zero-extended? > The Intel intrinsics guide actually has them with shorter return types: > > __int8 _mm256_extract_epi8 (__m256i a,

Re: [PATCH] D20468: [X86][AVX] Ensure zero-extension of _mm256_extract_epi8 and _mm256_extract_epi16

2016-05-20 Thread Michael Kuperstein via cfe-commits
mkuper added a comment. Could you point me to where in the documentation it says they must be zero-extended? The Intel intrinsics guide actually has them with shorter return types: __int8 _mm256_extract_epi8 (__m256i a, const int index) __int16 _mm256_extract_epi16 (__m256i a, const int

[PATCH] D20468: [X86][AVX] Ensure zero-extension of _mm256_extract_epi8 and _mm256_extract_epi16

2016-05-20 Thread Simon Pilgrim via cfe-commits
RKSimon created this revision. RKSimon added reviewers: mkuper, craig.topper, kromanova, spatel. RKSimon added a subscriber: cfe-commits. RKSimon set the repository for this revision to rL LLVM. Ensure _mm256_extract_epi8 and _mm256_extract_epi16 zero extend their i8/i16 result to i32. This