[cfe-commits] r166743 - in /cfe/trunk: lib/Headers/xmmintrin.h test/CodeGen/sse-builtins.c

Eli Friedman eli.friedman at gmail.com
Thu Oct 25 18:13:21 PDT 2012


On Thu, Oct 25, 2012 at 5:25 PM, Manman Ren <mren at apple.com> wrote:
> Author: mren
> Date: Thu Oct 25 19:25:10 2012
> New Revision: 166743
>
> URL: http://llvm.org/viewvc/llvm-project?rev=166743&view=rev
> Log:
> X86 SSE Intrinsics: update header for sqrt_ss, rsqrt_ss and rcp_ss.
>
> There intrinsics pass through the upper FP values from the input.
> rdar://12558838
>
> Modified:
>     cfe/trunk/lib/Headers/xmmintrin.h
>     cfe/trunk/test/CodeGen/sse-builtins.c
>
> Modified: cfe/trunk/lib/Headers/xmmintrin.h
> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Headers/xmmintrin.h?rev=166743&r1=166742&r2=166743&view=diff
> ==============================================================================
> --- cfe/trunk/lib/Headers/xmmintrin.h (original)
> +++ cfe/trunk/lib/Headers/xmmintrin.h Thu Oct 25 19:25:10 2012
> @@ -95,7 +95,8 @@
>  static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
>  _mm_sqrt_ss(__m128 a)
>  {
> -  return __builtin_ia32_sqrtss(a);
> +  __m128 c = __builtin_ia32_sqrtss(a);
> +  return (__m128) { c[0], a[1], a[2], a[3] };
>  }

What does exactly does __builtin_ia32_sqrtss return, if not the result
of a sqrtss instruction?

-Eli



More information about the cfe-commits mailing list