Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Joel_E_
Beginner
215 Views

Question on emmintrin.h header file

Hi,

I had some errors during compilation of OpenVino samples on my older i7 CPU (i7 870 to be exact).

The compilation error was related to _mm_blendv_ps which was introduced on SSE4.1 technology according to this documentation.

This was solved by changing "defs.h" include file from emmintrin.h (SSE2) to either smmintrin.h (SSE4.1) or nmmintrin.h (SSE4.2).

Obviously _mm_blendv_ps was introduced from SSE4.1 so I was wondering why emmintrin.h was used? Is this a bug?

Any instructions/advice instead if the current solution is not advisable.

Thanks in advance.

Regards,

Joel

0 Kudos
2 Replies
berupon
Beginner
215 Views

Hi, Joel E. Thanks a lot for the medium post. It helped me to solve the problem with VS2017.

Regarding the header file to include,
  MSVC : <intrin.h>
  gcc/clang : <x86intrin.h>
might be preferrable. It seems like x64 gcc/clang also has <intrin.h> but x86 gcc/clang lack it.
Anyways, <intrin.h> file contains include statements for non-x86 processors such as <arm_neon.h>, which can be a taboo for the bunnysuits.

 

Joel_E_
Beginner
215 Views

Hi berupon,

Thanks for your reply! It's good to know about the other header files related to MSVC and gcc.

Hope others will also find this useful.

Regards,
Joel