Bug 1255210 - Update OVR_ALIGNAS macro in ovr_capi_dynamic.h draft
authorKearwood (Kip) Gilbert <kgilbert@mozilla.com>
Wed, 28 Sep 2016 16:14:39 -0700
changeset 418685 29bea238e5c050e064b96b80f0f7e69904d2c4a6
parent 418456 b1d60f2f68c7cccc96fcf9a2075bb430a500a0f2
child 532415 6ee8b546641bb9f0f9f771e8a06cbeb28ced8f12
push id30754
push userkgilbert@mozilla.com
push dateWed, 28 Sep 2016 23:15:05 +0000
bugs1255210
milestone52.0a1
Bug 1255210 - Update OVR_ALIGNAS macro in ovr_capi_dynamic.h - The updated OVR_ALIGNAS macro corrects errors blocking clang-cl builds. MozReview-Commit-ID: 20SMLNsia67
gfx/vr/ovr_capi_dynamic.h
--- a/gfx/vr/ovr_capi_dynamic.h
+++ b/gfx/vr/ovr_capi_dynamic.h
@@ -35,30 +35,22 @@
 
 #if defined(_WIN32)
 #define OVR_PFN __cdecl
 #else
 #define OVR_PFN
 #endif
 
 #if !defined(OVR_ALIGNAS)
-#if defined(__GNUC__) && (((__GNUC__ * 100) + __GNUC_MINOR__) >= 408) && (defined(__GXX_EXPERIMENTAL_CXX0X__) || (__cplusplus >= 201103L))
-#define OVR_ALIGNAS(n) alignas(n)
-#elif defined(__clang__) && !defined(__APPLE__) && (((__clang_major__ * 100) + __clang_minor__) >= 300) && (__cplusplus >= 201103L)
-#define OVR_ALIGNAS(n) alignas(n)
-#elif defined(__clang__) && defined(__APPLE__) && (((__clang_major__ * 100) + __clang_minor__) >= 401) && (__cplusplus >= 201103L)
-#define OVR_ALIGNAS(n) alignas(n)
-#elif defined(_MSC_VER) && (_MSC_VER >= 1900)
-#define OVR_ALIGNAS(n) alignas(n)
-#elif defined(__EDG_VERSION__) && (__EDG_VERSION__ >= 408)
-#define OVR_ALIGNAS(n) alignas(n)
-#elif defined(__GNUC__) || defined(__clang__)
+#if defined(__GNUC__) || defined(__clang__)
 #define OVR_ALIGNAS(n) __attribute__((aligned(n)))
 #elif defined(_MSC_VER) || defined(__INTEL_COMPILER)
 #define OVR_ALIGNAS(n) __declspec(align(n))
+#elif defined(__CC_ARM)
+#define OVR_ALIGNAS(n) __align(n)
 #else
 #error Need to define OVR_ALIGNAS
 #endif
 #endif
 
 #if !defined(OVR_UNUSED_STRUCT_PAD)
 #define OVR_UNUSED_STRUCT_PAD(padName, size) char padName[size];
 #endif