#ifndef X86_MATH_PRIVATE_H
#define X86_MATH_PRIVATE_H 1
+#include <math.h>
#include_next <math_private.h>
__extern_always_inline long double
return ret;
}
+__extern_always_inline double
+__trunc (double x)
+{
+#ifdef __AVX__
+ asm ("vroundsd $11, %1, %1, %0" : "=v" (x) : "v" (x));
+#elif defined __SSE4_1__
+ asm ("roundsd $11, %1, %0" : "=x" (x) : "x" (x));
+#else
+ x = trunc (x);
+#endif
+ return x;
+}
+
+__extern_always_inline float
+__truncf (float x)
+{
+#ifdef __AVX__
+ asm ("vroundss $11, %1, %1, %0" : "=v" (x) : "v" (x));
+#elif defined __SSE4_1__
+ asm ("roundss $11, %1, %0" : "=x" (x) : "x" (x));
+#else
+ x = truncf (x);
+#endif
+ return x;
+}
+
#endif