summaryrefslogtreecommitdiffstats
path: root/thirdparty/astcenc/astcenc_mathlib.h
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2023-08-07 15:34:07 +0200
committerRémi Verschelde <rverschelde@gmail.com>2024-02-29 18:36:40 +0100
commit82f20cdcc0a48435fa3ba3f0d4ff4ecbb30da450 (patch)
tree256b97c00b82369d83cc3bd885f7f367ea7fbf5d /thirdparty/astcenc/astcenc_mathlib.h
parent7d2ca2d8ac49cde9767e00b70f9eaf1920eb266d (diff)
downloadredot-engine-82f20cdcc0a48435fa3ba3f0d4ff4ecbb30da450.tar.gz
astcenc: Update to 4.7.0
https://github.com/ARM-software/astc-encoder/releases/tag/4.5.0 https://github.com/ARM-software/astc-encoder/releases/tag/4.6.0 https://github.com/ARM-software/astc-encoder/releases/tag/4.7.0
Diffstat (limited to 'thirdparty/astcenc/astcenc_mathlib.h')
-rw-r--r--thirdparty/astcenc/astcenc_mathlib.h16
1 files changed, 14 insertions, 2 deletions
diff --git a/thirdparty/astcenc/astcenc_mathlib.h b/thirdparty/astcenc/astcenc_mathlib.h
index 0540c4fedd..562d6597f2 100644
--- a/thirdparty/astcenc/astcenc_mathlib.h
+++ b/thirdparty/astcenc/astcenc_mathlib.h
@@ -1,6 +1,6 @@
// SPDX-License-Identifier: Apache-2.0
// ----------------------------------------------------------------------------
-// Copyright 2011-2021 Arm Limited
+// Copyright 2011-2024 Arm Limited
//
// Licensed under the Apache License, Version 2.0 (the "License"); you may not
// use this file except in compliance with the License. You may obtain a copy
@@ -73,10 +73,22 @@
#endif
#endif
+// Force vector-sized SIMD alignment
#if ASTCENC_AVX
#define ASTCENC_VECALIGN 32
-#else
+#elif ASTCENC_SSE || ASTCENC_NEON
#define ASTCENC_VECALIGN 16
+// Use default alignment for non-SIMD builds
+#else
+ #define ASTCENC_VECALIGN 0
+#endif
+
+// C++11 states that alignas(0) should be ignored but GCC doesn't do
+// this on some versions, so workaround and avoid emitting alignas(0)
+#if ASTCENC_VECALIGN > 0
+ #define ASTCENC_ALIGNAS alignas(ASTCENC_VECALIGN)
+#else
+ #define ASTCENC_ALIGNAS
#endif
#if ASTCENC_SSE != 0 || ASTCENC_AVX != 0 || ASTCENC_POPCNT != 0