[LLVMbugs] [Bug 17300] confusing return from _mm_extract_epi8() in smmintrin.h

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Fri Sep 20 03:38:51 PDT 2013


http://llvm.org/bugs/show_bug.cgi?id=17300

Chandler Carruth <chandlerc at gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
                 CC|                            |chandlerc at gmail.com
         Resolution|---                         |WORKSFORME

--- Comment #1 from Chandler Carruth <chandlerc at gmail.com> ---
(In reply to comment #0)
> _mm_extract_epi8() function in smmintrin.h returns unsigned char instead of
> int.
> It is confusing because the corresponding PEXTRB instruction returns ***zero
> extended*** int/__int64 value.
> 
> In smmintrin.h of GNU C "(unsigned char)" is redundant:
> 
> extern __inline int __attribute__((__gnu_inline__, __always_inline__,

Uh... The return type is right here and it is int. The cast you refer to is in
the definition not the signature.

Does using this intrinsic produce machine code other than what you would
expect?

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20130920/920ee5e7/attachment.html>


More information about the llvm-bugs mailing list