http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56298



--- Comment #10 from Piotr Wyderski <piotr.wyderski at gmail dot com> 
2013-02-15 11:41:07 UTC ---

(In reply to comment #1)



More related problems -- do they deserve their own bug reports?



1. The following workaround provided by Jakub

doesen't solve the #error problem:



> #pragma GCC push_options

> #pragma GCC target ("aes")

> #include <wmmintrin.h>

> #pragma GCC pop_options



It is reported by checking the __AES__ macro, which is not

defined by #pragma GCC target ("aes"). Similarly with 

target("sse4.1") and __SSE_4_1__ form nmmintrin.h.



2. Additionally, the use of intrinsic _mm_aeskeygenassist_si128,

implemented as shown below:



_mm_aeskeygenassist_si128 (__m128i __X, const int __C)

{

  return (__m128i) __builtin_ia32_aeskeygenassist128 ((__v2di)__X, __C);

} 



aborts compilation (on 4.7.2) claiming that the

__builtin_ia32_aeskeygenassist128 function explicitly

requires "-maes" in the command line, despite the fact

it is used within a block surrounded by #pragma GCC target ("aes").

Reply via email to