qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [v3 1/3] cutils: add avx2 instruction optimization


From: Richard Henderson
Subject: Re: [Qemu-devel] [v3 1/3] cutils: add avx2 instruction optimization
Date: Wed, 9 Dec 2015 06:57:05 -0800
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.4.0

On 12/09/2015 01:32 AM, Li, Liang Z wrote:
I think you means the ' __attribute__((target("avx2")))', I have tried this 
way, the issue here is:
  without the ' -mavx2' option for gcc, there are compiling error:  '__m256i undeclared', 
the __attribute__((target("avx2")))
can't solve this issue.  Any idea?

You're right that you can't use the normal __m256i, as it doesn't get declared. But you can define the same type within the function itself.

Which is a simple matter of

  typedef long long __m256i __attribute__((vector_size(32)));

From there, you might as well rely on other gcc extensions to instead write

   __m256i tmp0 = p[i + 0] | p[i + 1];

rather than obfuscating the code with AVX2_VEC_OR.



r~



reply via email to

[Prev in Thread] Current Thread [Next in Thread]