From 0cece07db6f0fc382c3fb69c2dfd100b005f9ffa Mon Sep 17 00:00:00 2001 From: Olivier Galibert Date: Sat, 25 Jul 2015 16:05:14 +0200 Subject: [PATCH] rspcp2: Make the align declarations gcc-compatible [O. Galibert] --- src/emu/cpu/rsp/rspcp2.h | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/src/emu/cpu/rsp/rspcp2.h b/src/emu/cpu/rsp/rspcp2.h index c5e01218def..25ed0013e2a 100644 --- a/src/emu/cpu/rsp/rspcp2.h +++ b/src/emu/cpu/rsp/rspcp2.h @@ -32,6 +32,13 @@ #endif #if USE_SIMD + +#ifdef _MSC_VER +#define __align16 __declspec(align(16)) +#else +#define __align16 __attribute__((aligned(16))) +#endif + #if (defined(__SSE4_2__) || defined(_MSC_VER)) #include #elif (defined(__SSE4_1__) || defined(_MSC_VER)) @@ -181,7 +188,7 @@ protected: UINT32 m_vres[8]; /* used for temporary vector results */ #if USE_SIMD - __declspec(align(16)) VECTOR_REG m_v[32]; + __align16 VECTOR_REG m_v[32]; #else VECTOR_REG m_v[32]; #endif @@ -232,9 +239,9 @@ protected: UINT16 s[24]; }; - __declspec(align(16)) aligned_rsp_1vect_t m_vdqm; - __declspec(align(16)) aligned_rsp_2vect_t m_flags[3]; - __declspec(align(16)) aligned_rsp_3vect_t m_acc; + __align16 aligned_rsp_1vect_t m_vdqm; + __align16 aligned_rsp_2vect_t m_flags[3]; + __align16 aligned_rsp_3vect_t m_acc; UINT32 m_dp_flag; typedef struct