This is not technically a GCC patch (hence 10/9), but is shared here for
context.

These changes are needed to work with GCC's new SIMT mode.

Prevent the vector functions breaking, and fixup incompatible ASM.
---
 newlib/libc/machine/amdgcn/exit-value.h      | 2 +-
 newlib/libm/machine/amdgcn/v64_mathcnst.c    | 3 +++
 newlib/libm/machine/amdgcn/v64_reent.c       | 4 ++++
 newlib/libm/machine/amdgcn/v64df_acos.c      | 3 +++
 newlib/libm/machine/amdgcn/v64df_acosh.c     | 3 +++
 newlib/libm/machine/amdgcn/v64df_asin.c      | 4 ++++
 newlib/libm/machine/amdgcn/v64df_asine.c     | 3 +++
 newlib/libm/machine/amdgcn/v64df_asinh.c     | 3 +++
 newlib/libm/machine/amdgcn/v64df_atan.c      | 4 ++++
 newlib/libm/machine/amdgcn/v64df_atan2.c     | 4 ++++
 newlib/libm/machine/amdgcn/v64df_atangent.c  | 3 +++
 newlib/libm/machine/amdgcn/v64df_atanh.c     | 4 ++++
 newlib/libm/machine/amdgcn/v64df_copysign.c  | 4 ++++
 newlib/libm/machine/amdgcn/v64df_cos.c       | 4 ++++
 newlib/libm/machine/amdgcn/v64df_cosh.c      | 4 ++++
 newlib/libm/machine/amdgcn/v64df_erf.c       | 3 +++
 newlib/libm/machine/amdgcn/v64df_exp.c       | 3 +++
 newlib/libm/machine/amdgcn/v64df_exp2.c      | 4 ++++
 newlib/libm/machine/amdgcn/v64df_finite.c    | 4 ++++
 newlib/libm/machine/amdgcn/v64df_fmod.c      | 4 ++++
 newlib/libm/machine/amdgcn/v64df_gamma.c     | 4 ++++
 newlib/libm/machine/amdgcn/v64df_hypot.c     | 4 ++++
 newlib/libm/machine/amdgcn/v64df_ilogb.c     | 4 ++++
 newlib/libm/machine/amdgcn/v64df_isnan.c     | 4 ++++
 newlib/libm/machine/amdgcn/v64df_ispos.c     | 4 ++++
 newlib/libm/machine/amdgcn/v64df_lgamma.c    | 4 ++++
 newlib/libm/machine/amdgcn/v64df_lgamma_r.c  | 3 +++
 newlib/libm/machine/amdgcn/v64df_log.c       | 3 +++
 newlib/libm/machine/amdgcn/v64df_log10.c     | 4 ++++
 newlib/libm/machine/amdgcn/v64df_log2.c      | 4 ++++
 newlib/libm/machine/amdgcn/v64df_modf.c      | 4 ++++
 newlib/libm/machine/amdgcn/v64df_numtest.c   | 4 ++++
 newlib/libm/machine/amdgcn/v64df_pow.c       | 3 +++
 newlib/libm/machine/amdgcn/v64df_remainder.c | 3 +++
 newlib/libm/machine/amdgcn/v64df_rint.c      | 4 ++++
 newlib/libm/machine/amdgcn/v64df_scalb.c     | 4 ++++
 newlib/libm/machine/amdgcn/v64df_scalbn.c    | 4 ++++
 newlib/libm/machine/amdgcn/v64df_signif.c    | 4 ++++
 newlib/libm/machine/amdgcn/v64df_sin.c       | 4 ++++
 newlib/libm/machine/amdgcn/v64df_sine.c      | 3 +++
 newlib/libm/machine/amdgcn/v64df_sineh.c     | 3 +++
 newlib/libm/machine/amdgcn/v64df_sinh.c      | 4 ++++
 newlib/libm/machine/amdgcn/v64df_sqrt.c      | 3 +++
 newlib/libm/machine/amdgcn/v64df_tan.c       | 3 +++
 newlib/libm/machine/amdgcn/v64df_tanh.c      | 3 +++
 newlib/libm/machine/amdgcn/v64df_tgamma.c    | 4 ++++
 newlib/libm/machine/amdgcn/v64sf_acos.c      | 4 ++++
 newlib/libm/machine/amdgcn/v64sf_acosh.c     | 4 ++++
 newlib/libm/machine/amdgcn/v64sf_asin.c      | 4 ++++
 newlib/libm/machine/amdgcn/v64sf_asine.c     | 3 +++
 newlib/libm/machine/amdgcn/v64sf_asinh.c     | 3 +++
 newlib/libm/machine/amdgcn/v64sf_atan.c      | 4 ++++
 newlib/libm/machine/amdgcn/v64sf_atan2.c     | 4 ++++
 newlib/libm/machine/amdgcn/v64sf_atangent.c  | 3 +++
 newlib/libm/machine/amdgcn/v64sf_atanh.c     | 4 ++++
 newlib/libm/machine/amdgcn/v64sf_copysign.c  | 4 ++++
 newlib/libm/machine/amdgcn/v64sf_cos.c       | 4 ++++
 newlib/libm/machine/amdgcn/v64sf_cosh.c      | 4 ++++
 newlib/libm/machine/amdgcn/v64sf_erf.c       | 3 +++
 newlib/libm/machine/amdgcn/v64sf_exp.c       | 4 ++++
 newlib/libm/machine/amdgcn/v64sf_exp2.c      | 4 ++++
 newlib/libm/machine/amdgcn/v64sf_finite.c    | 4 ++++
 newlib/libm/machine/amdgcn/v64sf_fmod.c      | 4 ++++
 newlib/libm/machine/amdgcn/v64sf_gamma.c     | 4 ++++
 newlib/libm/machine/amdgcn/v64sf_hypot.c     | 4 ++++
 newlib/libm/machine/amdgcn/v64sf_ilogb.c     | 4 ++++
 newlib/libm/machine/amdgcn/v64sf_isnan.c     | 4 ++++
 newlib/libm/machine/amdgcn/v64sf_ispos.c     | 4 ++++
 newlib/libm/machine/amdgcn/v64sf_lgamma.c    | 4 ++++
 newlib/libm/machine/amdgcn/v64sf_lgamma_r.c  | 3 +++
 newlib/libm/machine/amdgcn/v64sf_log.c       | 3 +++
 newlib/libm/machine/amdgcn/v64sf_log10.c     | 4 ++++
 newlib/libm/machine/amdgcn/v64sf_log2.c      | 4 ++++
 newlib/libm/machine/amdgcn/v64sf_modf.c      | 4 ++++
 newlib/libm/machine/amdgcn/v64sf_numtest.c   | 4 ++++
 newlib/libm/machine/amdgcn/v64sf_pow.c       | 3 +++
 newlib/libm/machine/amdgcn/v64sf_remainder.c | 3 +++
 newlib/libm/machine/amdgcn/v64sf_rint.c      | 4 ++++
 newlib/libm/machine/amdgcn/v64sf_scalb.c     | 4 ++++
 newlib/libm/machine/amdgcn/v64sf_scalbn.c    | 4 ++++
 newlib/libm/machine/amdgcn/v64sf_signif.c    | 4 ++++
 newlib/libm/machine/amdgcn/v64sf_sin.c       | 4 ++++
 newlib/libm/machine/amdgcn/v64sf_sine.c      | 3 +++
 newlib/libm/machine/amdgcn/v64sf_sineh.c     | 3 +++
 newlib/libm/machine/amdgcn/v64sf_sinh.c      | 4 ++++
 newlib/libm/machine/amdgcn/v64sf_sqrt.c      | 3 +++
 newlib/libm/machine/amdgcn/v64sf_tan.c       | 3 +++
 newlib/libm/machine/amdgcn/v64sf_tanh.c      | 3 +++
 newlib/libm/machine/amdgcn/v64sf_tgamma.c    | 4 ++++
 89 files changed, 323 insertions(+), 1 deletion(-)

diff --git a/newlib/libc/machine/amdgcn/exit-value.h 
b/newlib/libc/machine/amdgcn/exit-value.h
index 6b9d2411b..78fec96a0 100644
--- a/newlib/libc/machine/amdgcn/exit-value.h
+++ b/newlib/libc/machine/amdgcn/exit-value.h
@@ -24,7 +24,7 @@ exit_with_int (int val)
 #if defined(__has_builtin) && __has_builtin(__builtin_gcn_kernarg_ptr)
   asm ("s_load_dwordx2 %0, %1, 16 glc\n\t"
        "s_waitcnt      0"
-       : "=Sg"(return_value) : "r"(__builtin_gcn_kernarg_ptr()));
+       : "=Sg"(return_value) : "Sg"(__builtin_gcn_kernarg_ptr()));
 #else
   asm ("s_load_dwordx2 %0, s[8:9], 16 glc\n\t"
        "s_waitcnt      0" : "=Sg"(return_value));
diff --git a/newlib/libm/machine/amdgcn/v64_mathcnst.c 
b/newlib/libm/machine/amdgcn/v64_mathcnst.c
index 555df24d5..0433063a5 100644
--- a/newlib/libm/machine/amdgcn/v64_mathcnst.c
+++ b/newlib/libm/machine/amdgcn/v64_mathcnst.c
@@ -29,6 +29,8 @@
 
 /* Based on newlib/libm/mathfp/s_mathcnst.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 double BIGX = 7.09782712893383973096e+02;
@@ -50,3 +52,4 @@ udouble z_infinity = { 0, 0x7ff00000 };
 udouble z_notanum  = { 0, 0x7ff80000 };
 #endif /* __IEEE_LITTLE_ENDIAN */
 
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64_reent.c 
b/newlib/libm/machine/amdgcn/v64_reent.c
index e9c2b35f4..7bf6d06f8 100644
--- a/newlib/libm/machine/amdgcn/v64_reent.c
+++ b/newlib/libm/machine/amdgcn/v64_reent.c
@@ -12,6 +12,8 @@
  * they apply.
  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 static struct v64_reent __reent;
@@ -22,3 +24,5 @@ __v64si_signgam (void)
 {
   return &_REENT_V64SI_SIGNGAM(_V64_REENT);
 }
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_acos.c 
b/newlib/libm/machine/amdgcn/v64df_acos.c
index 63a34cad2..f1ab92d35 100644
--- a/newlib/libm/machine/amdgcn/v64df_acos.c
+++ b/newlib/libm/machine/amdgcn/v64df_acos.c
@@ -29,6 +29,8 @@
 
 /* Based on newlib/libm/mathfp/s_acos.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64df v64df_asine_aux (v64df x, int acosine, v64di);
@@ -40,3 +42,4 @@ DEF_VD_MATH_FUNC (v64df, acos, v64df x)
 
 DEF_VARIANTS (acos, df, df)
 
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_acosh.c 
b/newlib/libm/machine/amdgcn/v64df_acosh.c
index d98d38b11..1492353cf 100644
--- a/newlib/libm/machine/amdgcn/v64df_acosh.c
+++ b/newlib/libm/machine/amdgcn/v64df_acosh.c
@@ -26,6 +26,8 @@
 
 /* Based on newlib/libm/mathfp/e_acosh.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64df v64df_log_aux (v64df, v64di);
@@ -79,3 +81,4 @@ DEF_VD_MATH_FUNC (v64df, acosh, v64df x)
 
 DEF_VARIANTS (acosh, df, df)
 
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_asin.c 
b/newlib/libm/machine/amdgcn/v64df_asin.c
index 0883f9367..f0440d36d 100644
--- a/newlib/libm/machine/amdgcn/v64df_asin.c
+++ b/newlib/libm/machine/amdgcn/v64df_asin.c
@@ -29,6 +29,8 @@
 
 /* Based on newlib/libm/mathfp/s_asin.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64df v64df_asine_aux (v64df x, int acosine, v64di __mask);
@@ -39,3 +41,5 @@ DEF_VD_MATH_FUNC (v64df, asin, v64df x)
 }
 
 DEF_VARIANTS (asin, df, df)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_asine.c 
b/newlib/libm/machine/amdgcn/v64df_asine.c
index d1af526ef..31cb00522 100644
--- a/newlib/libm/machine/amdgcn/v64df_asine.c
+++ b/newlib/libm/machine/amdgcn/v64df_asine.c
@@ -36,6 +36,8 @@
 
 /* Based on newlib/libm/mathfp/s_asine.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64si v64df_numtest (v64df);
@@ -133,3 +135,4 @@ DEF_VD_MATH_FUNC (v64df, asine, v64df x, int acosine)
 }
 
 #endif
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_asinh.c 
b/newlib/libm/machine/amdgcn/v64df_asinh.c
index add4a486a..256b593e1 100644
--- a/newlib/libm/machine/amdgcn/v64df_asinh.c
+++ b/newlib/libm/machine/amdgcn/v64df_asinh.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/mathfp/s_asinh.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64df v64df_log_aux (v64df, v64di);
@@ -79,3 +81,4 @@ DEF_VD_MATH_FUNC (v64df, asinh, v64df x)
 DEF_VARIANTS (asinh, df, df)
 
 #endif
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_atan.c 
b/newlib/libm/machine/amdgcn/v64df_atan.c
index 66b7a8d6c..2ef3d3cd0 100644
--- a/newlib/libm/machine/amdgcn/v64df_atan.c
+++ b/newlib/libm/machine/amdgcn/v64df_atan.c
@@ -29,6 +29,8 @@
 
 /* Based on newlib/libm/mathfp/s_atan.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64df v64df_atangent_aux (v64df, v64df, v64df, int, v64di);
@@ -41,3 +43,5 @@ DEF_VD_MATH_FUNC (v64df, atan, v64df x)
 }
 
 DEF_VARIANTS (atan, df, df)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_atan2.c 
b/newlib/libm/machine/amdgcn/v64df_atan2.c
index 18307883e..79dc96319 100644
--- a/newlib/libm/machine/amdgcn/v64df_atan2.c
+++ b/newlib/libm/machine/amdgcn/v64df_atan2.c
@@ -29,6 +29,8 @@
 
 /* Based on newlib/libm/mathfp/s_atan2.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64df v64df_atangent_aux (v64df, v64df, v64df, int, v64di);
@@ -39,3 +41,5 @@ DEF_VD_MATH_FUNC (v64df, atan2, v64df v, v64df u)
 }
 
 DEF_VARIANTS2 (atan2, df, df)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_atangent.c 
b/newlib/libm/machine/amdgcn/v64df_atangent.c
index b5b375679..16cd1f549 100644
--- a/newlib/libm/machine/amdgcn/v64df_atangent.c
+++ b/newlib/libm/machine/amdgcn/v64df_atangent.c
@@ -36,6 +36,8 @@
 
 /* Based on newlib/libm/mathfp/s_atangent.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include <float.h>
 #include "amdgcnmach.h"
 
@@ -159,3 +161,4 @@ DEF_VD_MATH_FUNC (v64df, atangent, v64df x, v64df v, v64df 
u, int arctan2)
 }
 
 #endif
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_atanh.c 
b/newlib/libm/machine/amdgcn/v64df_atanh.c
index 1ca61a382..e22f7baed 100644
--- a/newlib/libm/machine/amdgcn/v64df_atanh.c
+++ b/newlib/libm/machine/amdgcn/v64df_atanh.c
@@ -26,6 +26,8 @@
 
 /* Based on newlib/libm/mathfp/e_atanh.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64df v64df_log1p_aux (v64df, v64di);
@@ -73,3 +75,5 @@ DEF_VD_MATH_FUNC (v64df, atanh, v64df x)
 }
 
 DEF_VARIANTS (atanh, df, df)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_copysign.c 
b/newlib/libm/machine/amdgcn/v64df_copysign.c
index c57af07df..009f09874 100644
--- a/newlib/libm/machine/amdgcn/v64df_copysign.c
+++ b/newlib/libm/machine/amdgcn/v64df_copysign.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/common/s_copysign.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 DEF_VD_MATH_FUNC (v64df, copysign, v64df x, v64df y)
@@ -41,3 +43,5 @@ DEF_VD_MATH_FUNC (v64df, copysign, v64df x, v64df y)
 }
 
 DEF_VARIANTS2 (copysign, df, df)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_cos.c 
b/newlib/libm/machine/amdgcn/v64df_cos.c
index 6e464ef3d..56dd7c605 100644
--- a/newlib/libm/machine/amdgcn/v64df_cos.c
+++ b/newlib/libm/machine/amdgcn/v64df_cos.c
@@ -29,6 +29,8 @@
 
 /* Based on newlib/libm/mathfp/s_cos.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64df v64df_sine_aux (v64df, int, v64di);
@@ -39,3 +41,5 @@ DEF_VD_MATH_FUNC (v64df, cos, v64df x)
 }
 
 DEF_VARIANTS (cos, df, df)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_cosh.c 
b/newlib/libm/machine/amdgcn/v64df_cosh.c
index d0268b5b0..8fe560374 100644
--- a/newlib/libm/machine/amdgcn/v64df_cosh.c
+++ b/newlib/libm/machine/amdgcn/v64df_cosh.c
@@ -29,6 +29,8 @@
 
 /* Based on newlib/libm/mathfp/s_cosh.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64df v64df_sineh_aux (v64df, int, v64di);
@@ -39,3 +41,5 @@ DEF_VD_MATH_FUNC (v64df, cosh, v64df x)
 }
 
 DEF_VARIANTS (cosh, df, df)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_erf.c 
b/newlib/libm/machine/amdgcn/v64df_erf.c
index 518ac979a..9a4cd07b5 100644
--- a/newlib/libm/machine/amdgcn/v64df_erf.c
+++ b/newlib/libm/machine/amdgcn/v64df_erf.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/mathfp/s_erf.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64df v64df_exp_aux (v64df, v64di);
@@ -183,3 +185,4 @@ DEF_VD_MATH_FUNC (v64df, erf, v64df x)
 DEF_VARIANTS (erf, df, df)
 
 #endif
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_exp.c 
b/newlib/libm/machine/amdgcn/v64df_exp.c
index f4890e2df..12009b02a 100644
--- a/newlib/libm/machine/amdgcn/v64df_exp.c
+++ b/newlib/libm/machine/amdgcn/v64df_exp.c
@@ -36,6 +36,8 @@
 
 /* Based on newlib/libm/mathfp/s_exp.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64si v64df_ispos (v64df);
@@ -101,3 +103,4 @@ DEF_VD_MATH_FUNC (v64df, exp, v64df x)
 DEF_VARIANTS (exp, df, df)
 
 #endif
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_exp2.c 
b/newlib/libm/machine/amdgcn/v64df_exp2.c
index 33ad59705..aeb7ccef5 100644
--- a/newlib/libm/machine/amdgcn/v64df_exp2.c
+++ b/newlib/libm/machine/amdgcn/v64df_exp2.c
@@ -20,6 +20,8 @@
 
 /* Based on newlib/libm/mathfp/s_exp2.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64df v64df_pow_aux (v64df, v64df, v64di);
@@ -30,3 +32,5 @@ DEF_VD_MATH_FUNC (v64df, exp2, v64df x)
 }
 
 DEF_VARIANTS (exp2, df, df)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_finite.c 
b/newlib/libm/machine/amdgcn/v64df_finite.c
index 3eafe07f0..c17ab9d75 100644
--- a/newlib/libm/machine/amdgcn/v64df_finite.c
+++ b/newlib/libm/machine/amdgcn/v64df_finite.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/common/s_finite.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 DEF_VD_MATH_PRED (v64si, finite, v64df x)
@@ -36,3 +38,5 @@ DEF_VD_MATH_PRED (v64si, finite, v64df x)
 }
 
 DEF_VARIANTS (finite, si, df)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_fmod.c 
b/newlib/libm/machine/amdgcn/v64df_fmod.c
index ba12577b1..9f4ecbab7 100644
--- a/newlib/libm/machine/amdgcn/v64df_fmod.c
+++ b/newlib/libm/machine/amdgcn/v64df_fmod.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/mathfp/s_fmod.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 DEF_VD_MATH_FUNC (v64df, fmod, v64df x, v64df y)
@@ -194,3 +196,5 @@ DEF_VD_MATH_FUNC (v64df, fmod, v64df x, v64df y)
 }
 
 DEF_VARIANTS2 (fmod, df, df)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_gamma.c 
b/newlib/libm/machine/amdgcn/v64df_gamma.c
index 4b5af3e06..bbd7f4473 100644
--- a/newlib/libm/machine/amdgcn/v64df_gamma.c
+++ b/newlib/libm/machine/amdgcn/v64df_gamma.c
@@ -26,6 +26,8 @@
 
 /* Based on newlib/libm/math/w_gamma.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64df v64df_lgamma_aux (v64df x, v64di __mask);
@@ -36,3 +38,5 @@ DEF_VD_MATH_FUNC (v64df, gamma, v64df x)
 }
 
 DEF_VARIANTS (gamma, df, df)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_hypot.c 
b/newlib/libm/machine/amdgcn/v64df_hypot.c
index fde1cb384..954c3103a 100644
--- a/newlib/libm/machine/amdgcn/v64df_hypot.c
+++ b/newlib/libm/machine/amdgcn/v64df_hypot.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/mathfp/e_hypot.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64df v64df_sqrt_aux (v64df, v64di);
@@ -125,3 +127,5 @@ DEF_VD_MATH_FUNC (v64df, hypot, v64df x, v64df y)
 }
 
 DEF_VARIANTS2 (hypot, df, df)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_ilogb.c 
b/newlib/libm/machine/amdgcn/v64df_ilogb.c
index 5e9932297..432246856 100644
--- a/newlib/libm/machine/amdgcn/v64df_ilogb.c
+++ b/newlib/libm/machine/amdgcn/v64df_ilogb.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/common/s_ilogb.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 DEF_VD_MATH_PRED (v64si, ilogb, v64df x)
@@ -59,3 +61,5 @@ DEF_VD_MATH_PRED (v64si, ilogb, v64df x)
 }
 
 DEF_VARIANTS (ilogb, si, df)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_isnan.c 
b/newlib/libm/machine/amdgcn/v64df_isnan.c
index 033917274..41c4115b1 100644
--- a/newlib/libm/machine/amdgcn/v64df_isnan.c
+++ b/newlib/libm/machine/amdgcn/v64df_isnan.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/common/s_isnan.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 DEF_VD_MATH_PRED (v64si, isnan, v64df x)
@@ -39,3 +41,5 @@ DEF_VD_MATH_PRED (v64si, isnan, v64df x)
 }
 
 DEF_VARIANTS (isnan, si, df)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_ispos.c 
b/newlib/libm/machine/amdgcn/v64df_ispos.c
index ff34598e2..9b88f97f5 100644
--- a/newlib/libm/machine/amdgcn/v64df_ispos.c
+++ b/newlib/libm/machine/amdgcn/v64df_ispos.c
@@ -29,6 +29,8 @@
 
 /* Based on newlib/libm/mathfp/s_ispos.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64si 
@@ -45,3 +47,5 @@ v64df_ispos (v64df x)
 
   FUNCTION_RETURN;
 }
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_lgamma.c 
b/newlib/libm/machine/amdgcn/v64df_lgamma.c
index 8a827ac83..fa7a3fd2b 100644
--- a/newlib/libm/machine/amdgcn/v64df_lgamma.c
+++ b/newlib/libm/machine/amdgcn/v64df_lgamma.c
@@ -26,6 +26,8 @@
 
 /* Based on newlib/libm/math/w_lgamma.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64si v64df_finite_aux (v64df x, v64di __mask);
@@ -42,3 +44,5 @@ DEF_VD_MATH_FUNC (v64df, lgamma, v64df x)
 }
 
 DEF_VARIANTS (lgamma, df, df)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_lgamma_r.c 
b/newlib/libm/machine/amdgcn/v64df_lgamma_r.c
index 59a895e30..0b18dcbe0 100644
--- a/newlib/libm/machine/amdgcn/v64df_lgamma_r.c
+++ b/newlib/libm/machine/amdgcn/v64df_lgamma_r.c
@@ -26,6 +26,8 @@
 
 /* Based on newlib/libm/math/er_lgamma.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 static const double two52=  4.50359962737049600000e+15, /* 0x43300000, 
0x00000000 */
@@ -298,3 +300,4 @@ DEF_VD_MATH_FUNC (v64df, lgamma_r, v64df x, v64si *signgamp)
 }
 
 #endif
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_log.c 
b/newlib/libm/machine/amdgcn/v64df_log.c
index 573bb3978..4bf84c903 100644
--- a/newlib/libm/machine/amdgcn/v64df_log.c
+++ b/newlib/libm/machine/amdgcn/v64df_log.c
@@ -36,6 +36,8 @@
 
 /* Based on newlib/libm/mathfp/s_logarithm.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64si v64df_finite (v64df);
@@ -109,3 +111,4 @@ DEF_VD_MATH_FUNC (v64df, log1p, v64df x)
 DEF_VARIANTS (log1p, df, df)
 
 #endif
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_log10.c 
b/newlib/libm/machine/amdgcn/v64df_log10.c
index 45237b895..0a3a840b4 100644
--- a/newlib/libm/machine/amdgcn/v64df_log10.c
+++ b/newlib/libm/machine/amdgcn/v64df_log10.c
@@ -36,6 +36,8 @@
 
 /* Based on newlib/libm/mathfp/s_logarithm.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64df v64df_log_aux (v64df, v64di);
@@ -48,3 +50,5 @@ DEF_VD_MATH_FUNC (v64df, log10, v64df x)
 }
 
 DEF_VARIANTS (log10, df, df)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_log2.c 
b/newlib/libm/machine/amdgcn/v64df_log2.c
index 3e7ed1f17..4368db8a0 100644
--- a/newlib/libm/machine/amdgcn/v64df_log2.c
+++ b/newlib/libm/machine/amdgcn/v64df_log2.c
@@ -12,6 +12,8 @@
  * they apply.
  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64df v64df_log_aux (v64df, v64di);
@@ -24,3 +26,5 @@ DEF_VD_MATH_FUNC (v64df, log2, v64df x)
 }
 
 DEF_VARIANTS (log2, df, df)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_modf.c 
b/newlib/libm/machine/amdgcn/v64df_modf.c
index bc0b810b7..287a05c88 100644
--- a/newlib/libm/machine/amdgcn/v64df_modf.c
+++ b/newlib/libm/machine/amdgcn/v64df_modf.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/common/s_modf.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64si v64df_numtest (v64df);
@@ -78,3 +80,5 @@ DEF_VD_MATH_FUNC (v64df, modf, v64df x, v64df *iptr)
   *iptr = ret_i;
   FUNCTION_RETURN;
 }
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_numtest.c 
b/newlib/libm/machine/amdgcn/v64df_numtest.c
index 55f0340f1..0ffc7da95 100644
--- a/newlib/libm/machine/amdgcn/v64df_numtest.c
+++ b/newlib/libm/machine/amdgcn/v64df_numtest.c
@@ -29,6 +29,8 @@
 
 /* Based on newlib/libm/mathfp/s_numtest.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64si
@@ -58,3 +60,5 @@ v64df_numtest (v64df x)
 
   FUNCTION_RETURN;
 }
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_pow.c 
b/newlib/libm/machine/amdgcn/v64df_pow.c
index 1035d0532..9c8ca5d91 100644
--- a/newlib/libm/machine/amdgcn/v64df_pow.c
+++ b/newlib/libm/machine/amdgcn/v64df_pow.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/math/e_pow.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 static const double
@@ -334,3 +336,4 @@ DEF_VD_MATH_FUNC (v64df, pow, v64df x, v64df y)
 DEF_VARIANTS2 (pow, df, df)
 
 #endif
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_remainder.c 
b/newlib/libm/machine/amdgcn/v64df_remainder.c
index 01fda8e1b..b9aadf9ca 100644
--- a/newlib/libm/machine/amdgcn/v64df_remainder.c
+++ b/newlib/libm/machine/amdgcn/v64df_remainder.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/mathfp/e_remainder.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64df v64df_fmod_aux (v64df, v64df, v64di);
@@ -80,3 +82,4 @@ DEF_VD_MATH_FUNC (v64df, remainder, v64df x, v64df p)
 DEF_VARIANTS2 (remainder, df, df)
 
 #endif
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_rint.c 
b/newlib/libm/machine/amdgcn/v64df_rint.c
index 18f6b318f..872eb9d8a 100644
--- a/newlib/libm/machine/amdgcn/v64df_rint.c
+++ b/newlib/libm/machine/amdgcn/v64df_rint.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/common/s_rint.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 static const double TWO52[2] = {
@@ -81,3 +83,5 @@ DEF_VD_MATH_FUNC (v64df, rint, v64df x)
 }
 
 DEF_VARIANTS (rint, df, df)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_scalb.c 
b/newlib/libm/machine/amdgcn/v64df_scalb.c
index a7e68fefe..5559aca0e 100644
--- a/newlib/libm/machine/amdgcn/v64df_scalb.c
+++ b/newlib/libm/machine/amdgcn/v64df_scalb.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/mathfp/e_scalb.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64si v64df_isnan (v64df);
@@ -62,3 +64,5 @@ DEF_VD_MATH_FUNC (v64df, scalb, v64df x, v64df fn)
 }
 
 DEF_VARIANTS2 (scalb, df, df)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_scalbn.c 
b/newlib/libm/machine/amdgcn/v64df_scalbn.c
index 44d91799a..224893b2b 100644
--- a/newlib/libm/machine/amdgcn/v64df_scalbn.c
+++ b/newlib/libm/machine/amdgcn/v64df_scalbn.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/common/s_scalbn.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 #include <limits.h>
 #include <float.h>
@@ -70,3 +72,5 @@ DEF_VD_MATH_FUNC (v64df, scalbn, v64df x, v64si n)
 
   FUNCTION_RETURN;
 }
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_signif.c 
b/newlib/libm/machine/amdgcn/v64df_signif.c
index e112e1cf1..6aa3dc2a4 100644
--- a/newlib/libm/machine/amdgcn/v64df_signif.c
+++ b/newlib/libm/machine/amdgcn/v64df_signif.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/mathfp/s_signif.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64df v64df_scalb_aux (v64df x, v64df fn, v64di);
@@ -37,3 +39,5 @@ DEF_VD_MATH_FUNC (v64df, significand, v64df x)
 }
 
 DEF_VARIANTS (significand, df, df)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_sin.c 
b/newlib/libm/machine/amdgcn/v64df_sin.c
index db91c72cf..af6338026 100644
--- a/newlib/libm/machine/amdgcn/v64df_sin.c
+++ b/newlib/libm/machine/amdgcn/v64df_sin.c
@@ -29,6 +29,8 @@
 
 /* Based on newlib/libm/mathfp/s_sin.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64df v64df_sine_aux (v64df, int, v64di);
@@ -39,3 +41,5 @@ DEF_VD_MATH_FUNC (v64df, sin, v64df x)
 }
 
 DEF_VARIANTS (sin, df, df)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_sine.c 
b/newlib/libm/machine/amdgcn/v64df_sine.c
index f70d23481..ef13126f7 100644
--- a/newlib/libm/machine/amdgcn/v64df_sine.c
+++ b/newlib/libm/machine/amdgcn/v64df_sine.c
@@ -36,6 +36,8 @@
 
 /* Based on newlib/libm/mathfp/s_sine.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64si v64df_numtest (v64df x);
@@ -124,3 +126,4 @@ DEF_VD_MATH_FUNC(v64df, sine, v64df x, int cosine)
 }
 
 #endif
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_sineh.c 
b/newlib/libm/machine/amdgcn/v64df_sineh.c
index b46bebb2e..a9f11e82b 100644
--- a/newlib/libm/machine/amdgcn/v64df_sineh.c
+++ b/newlib/libm/machine/amdgcn/v64df_sineh.c
@@ -36,6 +36,8 @@
 
 /* Based on newlib/libm/mathfp/s_sineh.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64df v64df_exp_aux (v64df, v64di);
@@ -128,3 +130,4 @@ DEF_VD_MATH_FUNC (v64df, sineh, v64df x, int cosineh)
 }
 
 #endif
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_sinh.c 
b/newlib/libm/machine/amdgcn/v64df_sinh.c
index e91b4e359..1fbc186d7 100644
--- a/newlib/libm/machine/amdgcn/v64df_sinh.c
+++ b/newlib/libm/machine/amdgcn/v64df_sinh.c
@@ -29,6 +29,8 @@
 
 /* Based on newlib/libm/mathfp/s_sinh.c.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64df v64df_sineh_aux (v64df, int, v64di);
@@ -39,3 +41,5 @@ DEF_VD_MATH_FUNC (v64df, sinh, v64df x)
 }
 
 DEF_VARIANTS (sinh, df, df)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_sqrt.c 
b/newlib/libm/machine/amdgcn/v64df_sqrt.c
index d3390e564..3c5e83728 100644
--- a/newlib/libm/machine/amdgcn/v64df_sqrt.c
+++ b/newlib/libm/machine/amdgcn/v64df_sqrt.c
@@ -36,6 +36,8 @@
 
 /* Based on newlib/libm/mathfp/s_sqrt.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64si v64df_numtest (v64df);
@@ -102,3 +104,4 @@ DEF_VD_MATH_FUNC (v64df, sqrt, v64df x)
 DEF_VARIANTS (sqrt, df, df)
 
 #endif
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_tan.c 
b/newlib/libm/machine/amdgcn/v64df_tan.c
index 88fe757a3..8e03d7608 100644
--- a/newlib/libm/machine/amdgcn/v64df_tan.c
+++ b/newlib/libm/machine/amdgcn/v64df_tan.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/math/kf_tan.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 static const double 
@@ -154,3 +156,4 @@ DEF_VD_MATH_FUNC (v64df, tan, v64df x)
 DEF_VARIANTS (tan, df, df)
 
 #endif
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_tanh.c 
b/newlib/libm/machine/amdgcn/v64df_tanh.c
index b17cac3a6..4b0f32c1f 100644
--- a/newlib/libm/machine/amdgcn/v64df_tanh.c
+++ b/newlib/libm/machine/amdgcn/v64df_tanh.c
@@ -36,6 +36,8 @@
 
 /* Based on newlib/libm/mathfp/s_tanh.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64df v64df_exp_aux (v64df, v64di);
@@ -90,3 +92,4 @@ DEF_VD_MATH_FUNC (v64df, tanh, v64df x)
 DEF_VARIANTS (tanh, df, df)
 
 #endif
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64df_tgamma.c 
b/newlib/libm/machine/amdgcn/v64df_tgamma.c
index f8d811055..da34c2e7a 100644
--- a/newlib/libm/machine/amdgcn/v64df_tgamma.c
+++ b/newlib/libm/machine/amdgcn/v64df_tgamma.c
@@ -26,6 +26,8 @@
 
 /* Based on newlib/libm/math/e_tgamma.c in Newlib. */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64df v64df_exp_aux (v64df x, v64di __mask);
@@ -40,3 +42,5 @@ DEF_VD_MATH_FUNC (v64df, tgamma, v64df x)
 }
 
 DEF_VARIANTS (tgamma, df, df)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_acos.c 
b/newlib/libm/machine/amdgcn/v64sf_acos.c
index 1a0b67c24..ede5e5d48 100644
--- a/newlib/libm/machine/amdgcn/v64sf_acos.c
+++ b/newlib/libm/machine/amdgcn/v64sf_acos.c
@@ -29,6 +29,8 @@
 
 /* Based on newlib/libm/mathfp/sf_acos.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64sf v64sf_asinef_aux (v64sf, int, v64si);
@@ -39,3 +41,5 @@ DEF_VS_MATH_FUNC (v64sf, acosf, v64sf x)
 }
 
 DEF_VARIANTS (acosf, sf, sf)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_acosh.c 
b/newlib/libm/machine/amdgcn/v64sf_acosh.c
index 99b3939ef..499912334 100644
--- a/newlib/libm/machine/amdgcn/v64sf_acosh.c
+++ b/newlib/libm/machine/amdgcn/v64sf_acosh.c
@@ -26,6 +26,8 @@
 
 /* Based on newlib/libm/mathfp/ef_acosh.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64sf v64sf_logf_aux (v64sf, v64si);
@@ -78,3 +80,5 @@ DEF_VS_MATH_FUNC (v64sf, acoshf, v64sf x)
 }
 
 DEF_VARIANTS (acoshf, sf, sf)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_asin.c 
b/newlib/libm/machine/amdgcn/v64sf_asin.c
index f9aea1b9a..7ca782b9d 100644
--- a/newlib/libm/machine/amdgcn/v64sf_asin.c
+++ b/newlib/libm/machine/amdgcn/v64sf_asin.c
@@ -29,6 +29,8 @@
 
 /* Based on newlib/libm/mathfp/sf_asin.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64sf v64sf_asinef_aux (v64sf, int, v64si);
@@ -39,3 +41,5 @@ DEF_VS_MATH_FUNC (v64sf, asinf, v64sf x)
 }
 
 DEF_VARIANTS (asinf, sf, sf)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_asine.c 
b/newlib/libm/machine/amdgcn/v64sf_asine.c
index dc949e60b..11a537bff 100644
--- a/newlib/libm/machine/amdgcn/v64sf_asine.c
+++ b/newlib/libm/machine/amdgcn/v64sf_asine.c
@@ -36,6 +36,8 @@
 
 /* Based on newlib/libm/mathfp/sf_asine.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64si v64sf_numtestf (v64sf);
@@ -125,3 +127,4 @@ DEF_VS_MATH_FUNC (v64sf, asinef, v64sf x, int acosine)
 }
 
 #endif
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_asinh.c 
b/newlib/libm/machine/amdgcn/v64sf_asinh.c
index e82bd1a55..e8075e421 100644
--- a/newlib/libm/machine/amdgcn/v64sf_asinh.c
+++ b/newlib/libm/machine/amdgcn/v64sf_asinh.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/mathfp/sf_asinh.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64sf v64sf_logf_aux (v64sf, v64si);
@@ -80,3 +82,4 @@ DEF_VS_MATH_FUNC (v64sf, asinhf, v64sf x)
 DEF_VARIANTS (asinhf, sf, sf)
 
 #endif
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_atan.c 
b/newlib/libm/machine/amdgcn/v64sf_atan.c
index 552d9b383..a52045bd9 100644
--- a/newlib/libm/machine/amdgcn/v64sf_atan.c
+++ b/newlib/libm/machine/amdgcn/v64sf_atan.c
@@ -29,6 +29,8 @@
 
 /* Based on newlib/libm/mathfp/sf_atan.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64sf v64sf_atangentf_aux (v64sf, v64sf, v64sf, int, v64si);
@@ -40,3 +42,5 @@ DEF_VS_MATH_FUNC (v64sf, atanf, v64sf x)
 }
 
 DEF_VARIANTS (atanf, sf, sf)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_atan2.c 
b/newlib/libm/machine/amdgcn/v64sf_atan2.c
index 17e84710a..e1c26efb2 100644
--- a/newlib/libm/machine/amdgcn/v64sf_atan2.c
+++ b/newlib/libm/machine/amdgcn/v64sf_atan2.c
@@ -29,6 +29,8 @@
 
 /* Based on newlib/libm/mathfp/sf_atan2.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64sf v64sf_atangentf_aux (v64sf, v64sf, v64sf, int, v64si);
@@ -39,3 +41,5 @@ DEF_VS_MATH_FUNC (v64sf, atan2f, v64sf v, v64sf u)
 }
 
 DEF_VARIANTS2 (atan2f, sf, sf)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_atangent.c 
b/newlib/libm/machine/amdgcn/v64sf_atangent.c
index 9d6b7b136..30124028d 100644
--- a/newlib/libm/machine/amdgcn/v64sf_atangent.c
+++ b/newlib/libm/machine/amdgcn/v64sf_atangent.c
@@ -37,6 +37,8 @@
 /* Based on newlib/libm/mathfp/sf_atangent.c in Newlib.  */
 
 #include <float.h>
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 static const float ROOT3 = 1.732050807;
@@ -150,3 +152,4 @@ DEF_VS_MATH_FUNC (v64sf, atangentf, v64sf x, v64sf v, v64sf 
u, int arctan2)
 }
 
 #endif
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_atanh.c 
b/newlib/libm/machine/amdgcn/v64sf_atanh.c
index b3bc01265..8e5dde4ec 100644
--- a/newlib/libm/machine/amdgcn/v64sf_atanh.c
+++ b/newlib/libm/machine/amdgcn/v64sf_atanh.c
@@ -26,6 +26,8 @@
 
 /* Based on newlib/libm/mathfp/ef_atanh.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64sf v64sf_log1pf_aux (v64sf, v64si);
@@ -73,3 +75,5 @@ DEF_VS_MATH_FUNC (v64sf, atanhf, v64sf x)
 }
 
 DEF_VARIANTS (atanhf, sf, sf)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_copysign.c 
b/newlib/libm/machine/amdgcn/v64sf_copysign.c
index 03cf2ff9e..02170bdd4 100644
--- a/newlib/libm/machine/amdgcn/v64sf_copysign.c
+++ b/newlib/libm/machine/amdgcn/v64sf_copysign.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/common/sf_copysign.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 DEF_VS_MATH_FUNC (v64sf, copysignf, v64sf x, v64sf y)
@@ -41,3 +43,5 @@ DEF_VS_MATH_FUNC (v64sf, copysignf, v64sf x, v64sf y)
 }
 
 DEF_VARIANTS2 (copysignf, sf, sf)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_cos.c 
b/newlib/libm/machine/amdgcn/v64sf_cos.c
index c3f1e5a4b..10705093e 100644
--- a/newlib/libm/machine/amdgcn/v64sf_cos.c
+++ b/newlib/libm/machine/amdgcn/v64sf_cos.c
@@ -29,6 +29,8 @@
 
 /* Based on newlib/libm/mathfp/sf_cos.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64sf v64sf_sinef_aux (v64sf, int, v64si);
@@ -39,3 +41,5 @@ DEF_VS_MATH_FUNC (v64sf, cosf, v64sf x)
 }
 
 DEF_VARIANTS (cosf, sf, sf)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_cosh.c 
b/newlib/libm/machine/amdgcn/v64sf_cosh.c
index f928c3e5a..682280542 100644
--- a/newlib/libm/machine/amdgcn/v64sf_cosh.c
+++ b/newlib/libm/machine/amdgcn/v64sf_cosh.c
@@ -29,6 +29,8 @@
 
 /* Based on newlib/libm/mathfp/sf_cosh.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64sf v64sf_sinehf_aux (v64sf, int, v64si);
@@ -39,3 +41,5 @@ DEF_VS_MATH_FUNC (v64sf, coshf, v64sf x)
 }
 
 DEF_VARIANTS (coshf, sf, sf)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_erf.c 
b/newlib/libm/machine/amdgcn/v64sf_erf.c
index f7a06f0ab..3908881a6 100644
--- a/newlib/libm/machine/amdgcn/v64sf_erf.c
+++ b/newlib/libm/machine/amdgcn/v64sf_erf.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/mathfp/sf_erf.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64sf v64sf_expf_aux (v64sf, v64si);
@@ -184,3 +186,4 @@ DEF_VS_MATH_FUNC (v64sf, erff, v64sf x)
 DEF_VARIANTS (erff, sf, sf)
 
 #endif
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_exp.c 
b/newlib/libm/machine/amdgcn/v64sf_exp.c
index b4ddd2a5f..1fb76a293 100644
--- a/newlib/libm/machine/amdgcn/v64sf_exp.c
+++ b/newlib/libm/machine/amdgcn/v64sf_exp.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/math/ef_exp.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 static const float
@@ -100,3 +102,5 @@ DEF_VS_MATH_FUNC (v64sf, expf, v64sf x)
 }
 
 DEF_VARIANTS (expf, sf, sf)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_exp2.c 
b/newlib/libm/machine/amdgcn/v64sf_exp2.c
index 27039e4c4..f2d183bb7 100644
--- a/newlib/libm/machine/amdgcn/v64sf_exp2.c
+++ b/newlib/libm/machine/amdgcn/v64sf_exp2.c
@@ -20,6 +20,8 @@
 
 /* Based on newlib/libm/mathfp/sf_exp2.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64sf v64sf_powf_aux (v64sf, v64sf, v64si);
@@ -30,3 +32,5 @@ DEF_VS_MATH_FUNC (v64sf, exp2f, v64sf x)
 }
 
 DEF_VARIANTS (exp2f, sf, sf)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_finite.c 
b/newlib/libm/machine/amdgcn/v64sf_finite.c
index 54df31f37..619855a5a 100644
--- a/newlib/libm/machine/amdgcn/v64sf_finite.c
+++ b/newlib/libm/machine/amdgcn/v64sf_finite.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/common/v64sf_finite.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 DEF_VS_MATH_FUNC (v64si, finitef, v64sf x)
@@ -35,3 +37,5 @@ DEF_VS_MATH_FUNC (v64si, finitef, v64sf x)
 }
 
 DEF_VARIANTS (finitef, si, sf)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_fmod.c 
b/newlib/libm/machine/amdgcn/v64sf_fmod.c
index e4ddfc299..b5f6e09af 100644
--- a/newlib/libm/machine/amdgcn/v64sf_fmod.c
+++ b/newlib/libm/machine/amdgcn/v64sf_fmod.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/mathfp/sf_fmod.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 DEF_VS_MATH_FUNC (v64sf, fmodf, v64sf x, v64sf y)
@@ -142,3 +144,5 @@ DEF_VS_MATH_FUNC (v64sf, fmodf, v64sf x, v64sf y)
 }
 
 DEF_VARIANTS2 (fmodf, sf, sf)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_gamma.c 
b/newlib/libm/machine/amdgcn/v64sf_gamma.c
index 99e69cbab..f073bc613 100644
--- a/newlib/libm/machine/amdgcn/v64sf_gamma.c
+++ b/newlib/libm/machine/amdgcn/v64sf_gamma.c
@@ -26,6 +26,8 @@
 
 /* Based on newlib/libm/math/wf_gamma.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64sf v64sf_lgammaf_aux (v64sf x, v64si __mask);
@@ -36,3 +38,5 @@ DEF_VS_MATH_FUNC (v64sf, gammaf, v64sf x)
 }
 
 DEF_VARIANTS (gammaf, sf, sf)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_hypot.c 
b/newlib/libm/machine/amdgcn/v64sf_hypot.c
index 4d4925a21..18015d120 100644
--- a/newlib/libm/machine/amdgcn/v64sf_hypot.c
+++ b/newlib/libm/machine/amdgcn/v64sf_hypot.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/mathfp/ef_hypot.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64sf v64sf_sqrtf_aux (v64sf, v64si);
@@ -116,3 +118,5 @@ DEF_VS_MATH_FUNC (v64sf, hypotf, v64sf x, v64sf y)
 }
 
 DEF_VARIANTS2 (hypotf, sf, sf)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_ilogb.c 
b/newlib/libm/machine/amdgcn/v64sf_ilogb.c
index ecaf99653..6968e8cb8 100644
--- a/newlib/libm/machine/amdgcn/v64sf_ilogb.c
+++ b/newlib/libm/machine/amdgcn/v64sf_ilogb.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/common/sf_ilogb.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 DEF_VS_MATH_FUNC (v64si, ilogbf, v64sf x)
@@ -55,3 +57,5 @@ DEF_VS_MATH_FUNC (v64si, ilogbf, v64sf x)
 }
 
 DEF_VARIANTS (ilogbf, si, sf)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_isnan.c 
b/newlib/libm/machine/amdgcn/v64sf_isnan.c
index a84f064bc..739eba1bf 100644
--- a/newlib/libm/machine/amdgcn/v64sf_isnan.c
+++ b/newlib/libm/machine/amdgcn/v64sf_isnan.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/common/sf_isnan.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 DEF_VS_MATH_FUNC (v64si, isnanf, v64sf x)
@@ -35,3 +37,5 @@ DEF_VS_MATH_FUNC (v64si, isnanf, v64sf x)
 }
 
 DEF_VARIANTS (isnanf, si, sf)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_ispos.c 
b/newlib/libm/machine/amdgcn/v64sf_ispos.c
index 5ba15d6fa..f528ecbbf 100644
--- a/newlib/libm/machine/amdgcn/v64sf_ispos.c
+++ b/newlib/libm/machine/amdgcn/v64sf_ispos.c
@@ -29,6 +29,8 @@
 
 /* Based on newlib/libm/mathfp/sf_ispos.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64si
@@ -38,3 +40,5 @@ v64sf_isposf (v64sf x)
 
   return (wx & 0x80000000) == 0;
 }
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_lgamma.c 
b/newlib/libm/machine/amdgcn/v64sf_lgamma.c
index 79a2d6da5..18d5dbb6b 100644
--- a/newlib/libm/machine/amdgcn/v64sf_lgamma.c
+++ b/newlib/libm/machine/amdgcn/v64sf_lgamma.c
@@ -26,6 +26,8 @@
 
 /* Based on newlib/libm/math/wf_lgamma.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64si v64sf_finitef_aux (v64sf x, v64si __mask);
@@ -42,3 +44,5 @@ DEF_VS_MATH_FUNC (v64sf, lgammaf, v64sf x)
 }
 
 DEF_VARIANTS (lgammaf, sf, sf)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_lgamma_r.c 
b/newlib/libm/machine/amdgcn/v64sf_lgamma_r.c
index 0a18f87c3..3dcc31a00 100644
--- a/newlib/libm/machine/amdgcn/v64sf_lgamma_r.c
+++ b/newlib/libm/machine/amdgcn/v64sf_lgamma_r.c
@@ -26,6 +26,8 @@
 
 /* Based on newlib/libm/math/erf_lgamma.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 static const float two23=  8.3886080000e+06, /* 0x4b000000 */
@@ -298,3 +300,4 @@ DEF_VS_MATH_FUNC (v64sf, lgammaf_r, v64sf x, v64si 
*signgamp)
 }
 
 #endif
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_log.c 
b/newlib/libm/machine/amdgcn/v64sf_log.c
index 630ce2a73..eacaa2611 100644
--- a/newlib/libm/machine/amdgcn/v64sf_log.c
+++ b/newlib/libm/machine/amdgcn/v64sf_log.c
@@ -36,6 +36,8 @@
 
 /* Based on newlib/libm/mathfp/sf_logarithm.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64si v64sf_finitef_aux (v64sf, v64si);
@@ -109,3 +111,4 @@ DEF_VS_MATH_FUNC (v64sf, log1pf, v64sf x)
 DEF_VARIANTS (log1pf, sf, sf)
 
 #endif
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_log10.c 
b/newlib/libm/machine/amdgcn/v64sf_log10.c
index 863836c08..10d987205 100644
--- a/newlib/libm/machine/amdgcn/v64sf_log10.c
+++ b/newlib/libm/machine/amdgcn/v64sf_log10.c
@@ -36,6 +36,8 @@
 
 /* Based on newlib/libm/mathfp/sf_logarithm.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64sf v64sf_logf_aux (v64sf, v64si);
@@ -48,3 +50,5 @@ DEF_VS_MATH_FUNC (v64sf, log10f, v64sf x)
 }
 
 DEF_VARIANTS (log10f, sf, sf)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_log2.c 
b/newlib/libm/machine/amdgcn/v64sf_log2.c
index 290b8a34f..b302b4fb5 100644
--- a/newlib/libm/machine/amdgcn/v64sf_log2.c
+++ b/newlib/libm/machine/amdgcn/v64sf_log2.c
@@ -12,6 +12,8 @@
  * they apply.
  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64sf v64sf_logf_aux (v64sf, v64si);
@@ -24,3 +26,5 @@ DEF_VS_MATH_FUNC (v64sf, log2f, v64sf x)
 }
 
 DEF_VARIANTS (log2f, sf, sf)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_modf.c 
b/newlib/libm/machine/amdgcn/v64sf_modf.c
index d0d1dfe17..1f84b8d45 100644
--- a/newlib/libm/machine/amdgcn/v64sf_modf.c
+++ b/newlib/libm/machine/amdgcn/v64sf_modf.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/common/sf_modf.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64si v64sf_numtestf (v64sf);
@@ -67,3 +69,5 @@ DEF_VS_MATH_FUNC (v64sf, modff, v64sf x, v64sf *iptr)
   *iptr = ret_i;
   FUNCTION_RETURN;
 }
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_numtest.c 
b/newlib/libm/machine/amdgcn/v64sf_numtest.c
index 1f3fbe936..7db9072ab 100644
--- a/newlib/libm/machine/amdgcn/v64sf_numtest.c
+++ b/newlib/libm/machine/amdgcn/v64sf_numtest.c
@@ -29,6 +29,8 @@
 
 /* Based on newlib/libm/mathfp/sf_numtest.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64si
@@ -57,3 +59,5 @@ v64sf_numtestf (v64sf x)
 
   FUNCTION_RETURN;
 }
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_pow.c 
b/newlib/libm/machine/amdgcn/v64sf_pow.c
index 9cb1cc231..06ec64b99 100644
--- a/newlib/libm/machine/amdgcn/v64sf_pow.c
+++ b/newlib/libm/machine/amdgcn/v64sf_pow.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/math/ef_pow.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 static const float
@@ -304,3 +306,4 @@ DEF_VS_MATH_FUNC (v64sf, powf, v64sf x, v64sf y)
 DEF_VARIANTS2 (powf, sf, sf)
 
 #endif
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_remainder.c 
b/newlib/libm/machine/amdgcn/v64sf_remainder.c
index 5820498ac..b3743e962 100644
--- a/newlib/libm/machine/amdgcn/v64sf_remainder.c
+++ b/newlib/libm/machine/amdgcn/v64sf_remainder.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/mathfp/ef_remainder.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64sf v64sf_fmodf_aux (v64sf, v64sf, v64si);
@@ -83,3 +85,4 @@ DEF_VS_MATH_FUNC (v64sf, remainderf, v64sf x, v64sf p)
 DEF_VARIANTS2 (remainderf, sf, sf)
 
 #endif
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_rint.c 
b/newlib/libm/machine/amdgcn/v64sf_rint.c
index f07602063..b8e7b9cc6 100644
--- a/newlib/libm/machine/amdgcn/v64sf_rint.c
+++ b/newlib/libm/machine/amdgcn/v64sf_rint.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/common/sf_rint.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 static const float TWO23[2] = {
@@ -74,3 +76,5 @@ DEF_VS_MATH_FUNC (v64sf, rintf, v64sf x)
 }
 
 DEF_VARIANTS (rintf, sf, sf)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_scalb.c 
b/newlib/libm/machine/amdgcn/v64sf_scalb.c
index 1c3e34883..3494bae87 100644
--- a/newlib/libm/machine/amdgcn/v64sf_scalb.c
+++ b/newlib/libm/machine/amdgcn/v64sf_scalb.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/mathfp/ef_scalb.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64si v64sf_isnanf (v64sf);
@@ -71,3 +73,5 @@ DEF_VS_MATH_FUNC (v64sf, scalbf, v64sf x, v64sf fn)
 }
 
 DEF_VARIANTS2 (scalbf, sf, sf)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_scalbn.c 
b/newlib/libm/machine/amdgcn/v64sf_scalbn.c
index 52c18dc1a..fc79afde9 100644
--- a/newlib/libm/machine/amdgcn/v64sf_scalbn.c
+++ b/newlib/libm/machine/amdgcn/v64sf_scalbn.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/common/sf_scalbn.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 #include <limits.h>
 #include <float.h>
@@ -90,3 +92,5 @@ DEF_VS_MATH_FUNC (v64sf, scalbnf, v64sf x, v64si n)
 
   FUNCTION_RETURN;
 }
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_signif.c 
b/newlib/libm/machine/amdgcn/v64sf_signif.c
index ff7136e65..d401d88c2 100644
--- a/newlib/libm/machine/amdgcn/v64sf_signif.c
+++ b/newlib/libm/machine/amdgcn/v64sf_signif.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/mathfp/sf_signif.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64sf v64sf_scalbf_aux (v64sf x, v64sf fn, v64si);
@@ -36,3 +38,5 @@ DEF_VS_MATH_FUNC (v64sf, significandf, v64sf x)
 }
 
 DEF_VARIANTS (significandf, sf, sf)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_sin.c 
b/newlib/libm/machine/amdgcn/v64sf_sin.c
index cd43eb546..1ed8056d5 100644
--- a/newlib/libm/machine/amdgcn/v64sf_sin.c
+++ b/newlib/libm/machine/amdgcn/v64sf_sin.c
@@ -29,6 +29,8 @@
 
 /* Based on newlib/libm/mathfp/sf_sin.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64sf v64sf_sinef_aux (v64sf, int, v64si);
@@ -39,3 +41,5 @@ DEF_VS_MATH_FUNC (v64sf, sinf, v64sf x)
 }
 
 DEF_VARIANTS (sinf, sf, sf)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_sine.c 
b/newlib/libm/machine/amdgcn/v64sf_sine.c
index ad118b1d3..9ef8d6012 100644
--- a/newlib/libm/machine/amdgcn/v64sf_sine.c
+++ b/newlib/libm/machine/amdgcn/v64sf_sine.c
@@ -36,6 +36,8 @@
 
 /* Based on newlib/libm/mathfp/sf_sine.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64si v64sf_numtestf (v64sf);
@@ -120,3 +122,4 @@ DEF_VS_MATH_FUNC (v64sf, sinef, v64sf x, int cosine)
 }
 
 #endif
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_sineh.c 
b/newlib/libm/machine/amdgcn/v64sf_sineh.c
index 013b97a25..727a6b08d 100644
--- a/newlib/libm/machine/amdgcn/v64sf_sineh.c
+++ b/newlib/libm/machine/amdgcn/v64sf_sineh.c
@@ -36,6 +36,8 @@
 
 /* Based in newlib/libm/mathfp/sf_sineh.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64sf v64sf_expf_aux (v64sf, v64si);
@@ -125,3 +127,4 @@ DEF_VS_MATH_FUNC (v64sf, sinehf, v64sf x, int cosineh)
 }
 
 #endif
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_sinh.c 
b/newlib/libm/machine/amdgcn/v64sf_sinh.c
index 20530e8bf..0daab66c1 100644
--- a/newlib/libm/machine/amdgcn/v64sf_sinh.c
+++ b/newlib/libm/machine/amdgcn/v64sf_sinh.c
@@ -29,6 +29,8 @@
 
 /* Based on newlib/libm/mathfp/sf_sinh.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64sf v64sf_sinehf_aux (v64sf, int, v64si);
@@ -39,3 +41,5 @@ DEF_VS_MATH_FUNC (v64sf, sinhf, v64sf x)
 }
 
 DEF_VARIANTS (sinhf, sf, sf)
+
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_sqrt.c 
b/newlib/libm/machine/amdgcn/v64sf_sqrt.c
index c93b44c74..17033475f 100644
--- a/newlib/libm/machine/amdgcn/v64sf_sqrt.c
+++ b/newlib/libm/machine/amdgcn/v64sf_sqrt.c
@@ -36,6 +36,8 @@
 
 /* Based on newlib/libm/mathfp/sf_sqrt.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64si v64sf_numtestf (v64sf);
@@ -101,3 +103,4 @@ DEF_VS_MATH_FUNC (v64sf, sqrtf, v64sf x)
 DEF_VARIANTS (sqrtf, sf, sf)
 
 #endif
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_tan.c 
b/newlib/libm/machine/amdgcn/v64sf_tan.c
index d1841e74e..969666e6c 100644
--- a/newlib/libm/machine/amdgcn/v64sf_tan.c
+++ b/newlib/libm/machine/amdgcn/v64sf_tan.c
@@ -25,6 +25,8 @@
 
 /* Based on newlib/libm/math/kf_tan.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 static const float 
@@ -150,3 +152,4 @@ DEF_VS_MATH_FUNC (v64sf, tanf, v64sf x)
 DEF_VARIANTS (tanf, sf, sf)
 
 #endif
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_tanh.c 
b/newlib/libm/machine/amdgcn/v64sf_tanh.c
index 2fd46231a..da4c591a7 100644
--- a/newlib/libm/machine/amdgcn/v64sf_tanh.c
+++ b/newlib/libm/machine/amdgcn/v64sf_tanh.c
@@ -36,6 +36,8 @@
 
 /* Based on newlib/libm/mathfp/sf_tanh.c in Newlib.  */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64sf v64sf_expf_aux (v64sf, v64si);
@@ -90,3 +92,4 @@ DEF_VS_MATH_FUNC (v64sf, tanhf, v64sf x)
 DEF_VARIANTS (tanhf, sf, sf)
 
 #endif
+#endif
diff --git a/newlib/libm/machine/amdgcn/v64sf_tgamma.c 
b/newlib/libm/machine/amdgcn/v64sf_tgamma.c
index cfe045841..4454adab2 100644
--- a/newlib/libm/machine/amdgcn/v64sf_tgamma.c
+++ b/newlib/libm/machine/amdgcn/v64sf_tgamma.c
@@ -26,6 +26,8 @@
 
 /* Based on newlib/libm/math/ef_tgamma.c in Newlib. */
 
+#ifndef __SIMT__
+
 #include "amdgcnmach.h"
 
 v64sf v64sf_expf_aux (v64sf x, v64si __mask);
@@ -40,3 +42,5 @@ DEF_VS_MATH_FUNC (v64sf, tgammaf, v64sf x)
 }
 
 DEF_VARIANTS (tgammaf, sf, sf)
+
+#endif
-- 
2.54.0

Reply via email to