On Thu, Jul 2, 2015 at 11:16 PM, Uros Bizjak <ubiz...@gmail.com> wrote:
> On Fri, Jul 3, 2015 at 5:53 AM, H.J. Lu <hjl.to...@gmail.com> wrote:
>> x86intrin.h has useful intrinsics for instructions for IA MCU.  This
>> patch adds __iamcu__ check to x86intrin.h and ia32intrin.h.
>>
>> OK for trunk?
>>
>> H.J.
>> ---
>> gcc/
>>
>>         PR target/66746
>>         * config/i386/ia32intrin.h (__crc32b): Don't define if __iamcu__
>>         is defined.
>>         (__crc32w): Likewise.
>>         (__crc32d): Likewise.
>>         (__rdpmc): Likewise.
>>         (__rdtscp): Likewise.
>>         (_rdpmc): Likewise.
>>         (_rdtscp): Likewise.
>>         * config/i386/x86intrin.h: Only include ia32intrin.h if __iamcu__
>>         is defined.
>>
>> gcc/testsuite/
>>
>>         PR target/66746
>>         * gcc.target/i386/pr66746.c: New file.
>
> OK.
>

It is OK to include <adxintrin.h> for IA MCU since GCC can generate ADX
intrinsics with alternative instuctions if ADX isn't enabled.

OK for trunk?

H.J.
---
PR target/66746
* config/i386/x86intrin.h: Include <adxintrin.h> if
__iamcu__ is defined.
From b1c38ef504f92ce6b085a1faace7d85566335654 Mon Sep 17 00:00:00 2001
From: "H.J. Lu" <hjl.to...@gmail.com>
Date: Wed, 8 Jul 2015 09:36:27 -0700
Subject: [PATCH] Allow <adxintrin.h> for IA MCU

It is OK to include <adxintrin.h> for IA MCU since GCC can generate ADX
intrinsics with alternative instuctions if ADX isn't enabled.

	PR target/66746
	* config/i386/x86intrin.h: Include <adxintrin.h> if
	__iamcu__ is defined.
---
 gcc/config/i386/x86intrin.h | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/gcc/config/i386/x86intrin.h b/gcc/config/i386/x86intrin.h
index be0a1a1..3ff571d 100644
--- a/gcc/config/i386/x86intrin.h
+++ b/gcc/config/i386/x86intrin.h
@@ -75,8 +75,12 @@
 
 #include <xsaveoptintrin.h>
 
+#endif /* __iamcu__ */
+
 #include <adxintrin.h>
 
+#ifndef __iamcu__
+
 #include <clwbintrin.h>
 
 #include <pcommitintrin.h>
-- 
2.4.3

Reply via email to