qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH for-8.0 15/29] include/qemu/int128: Add vector type to Int128Alia


From: Richard Henderson
Subject: [PATCH for-8.0 15/29] include/qemu/int128: Add vector type to Int128Alias
Date: Fri, 18 Nov 2022 01:47:40 -0800

Adding a vector type will make it easier to handle i386
have_atomic16 via AVX.

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
 include/qemu/int128.h | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/include/qemu/int128.h b/include/qemu/int128.h
index f62a46b48c..f29f90e6f4 100644
--- a/include/qemu/int128.h
+++ b/include/qemu/int128.h
@@ -479,16 +479,16 @@ static inline void bswap128s(Int128 *s)
 /*
  * When compiler supports a 128-bit type, define a combination of
  * a possible structure and the native types.  Ease parameter passing
- * via use of the transparent union extension.
+ * via use of the transparent union extension.  Provide a vector type
+ * for use in atomicity on some hosts.
  */
-#ifdef CONFIG_INT128
 typedef union {
     Int128 s;
+    uint64_t v __attribute__((vector_size(16)));
+#ifdef CONFIG_INT128
     __int128_t i;
     __uint128_t u;
-} Int128Alias __attribute__((transparent_union));
-#else
-typedef Int128 Int128Alias;
 #endif /* CONFIG_INT128 */
+} Int128Alias __attribute__((transparent_union));
 
 #endif /* INT128_H */
-- 
2.34.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]