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, const int index)
>   __int16 _mm256_extract_epi16 (__m256i a, const int index)


And the gcc version has them wrapped to the _mm_extract_epi* intrinsics which 
map to the real 128-bit instructions which do zero-extend.

I'm open to changing the return types in the headers instead, but really I'd 
expect the mm256 versions to zero extend like the older mm versions.


Repository:
  rL LLVM

http://reviews.llvm.org/D20468



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to