Version
menu_open
link
Target Platform(s):

include/AK/SoundEngine/Platforms/Windows/AkSimd.h

Go to the documentation of this file.
00001 
00002 //
00003 // Copyright (c) 2006 Audiokinetic Inc. / All Rights Reserved
00004 //
00006 
00007 // AkSimd.h
00008 
00011 
00012 #pragma once
00013 
00014 #if defined AK_CPU_X86 || defined AK_CPU_X86_64
00015     #define AKSIMD_GETELEMENT_V4I32( __vName, __num__ )         (__vName).m128i_i32[(__num__)]  ///< Retrieve scalar element from vector.
00016     #define AKSIMD_GETELEMENT_V4F32( __vName, __num__ )         (__vName).m128_f32[(__num__)]   ///< Retrieve scalar element from vector.
00017     #define AKSIMD_GETELEMENT_V2F32( __vName, __num__ )         (__vName).m64_f32[(__num__)]    ///< Retrieve scalar element from vector.
00018     
00019     #include <AK/SoundEngine/Platforms/SSE/AkSimd.h>
00020 #endif
00021 
00022 #if defined AK_CPU_ARM_NEON
00023     #define AKSIMD_GETELEMENT_V4I32( __vName, __num__ )         (__vName).n128_i32[(__num__)]   ///< Retrieve scalar element from vector.
00024     #define AKSIMD_GETELEMENT_V4F32( __vName, __num__ )         (__vName).n128_f32[(__num__)]   ///< Retrieve scalar element from vector.
00025     #define AKSIMD_GETELEMENT_V2F32( __vName, __num__ )         (__vName).n64_f32[(__num__)]    ///< Retrieve scalar element from vector.
00026     
00027     #define AKSIMD_DECLARE_V4F32_TYPE                           DirectX::XMVECTORF32
00028     #define AKSIMD_DECLARE_V4F32( _x, _a, _b, _c, _d )          AKSIMD_DECLARE_V4F32_TYPE _x = { _a, _b, _c, _d }
00029 
00030     #define AKSIMD_DECLARE_V4I32_TYPE                           DirectX::XMVECTORI32
00031     #define AKSIMD_DECLARE_V4I32( _x, _a, _b, _c, _d )          AKSIMD_DECLARE_V4I32_TYPE _x = { _a, _b, _c, _d }
00032 
00033     #include <DirectXMath.h>
00034     #include <AK/SoundEngine/Platforms/arm_neon/AkSimd.h>
00035 #endif

Was this page helpful?

Need Support?

Questions? Problems? Need more info? Contact us, and we can help!

Visit our Support page

Tell us about your project. We're here to help.

Register your project and we'll help you get started with no strings attached!

Get started with Wwise