Module Name:    src
Committed By:   christos
Date:           Sat Jul 17 16:31:51 UTC 2021

Modified Files:
        src/external/gpl3/gcc/dist/gcc/ginclude: stddef.h

Log Message:
provide an equivalent alignment for __float128 for clang and i386 that
does not have it. Idea from mrg@


To generate a diff of this commit:
cvs rdiff -u -r1.10 -r1.11 src/external/gpl3/gcc/dist/gcc/ginclude/stddef.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/external/gpl3/gcc/dist/gcc/ginclude/stddef.h
diff -u src/external/gpl3/gcc/dist/gcc/ginclude/stddef.h:1.10 src/external/gpl3/gcc/dist/gcc/ginclude/stddef.h:1.11
--- src/external/gpl3/gcc/dist/gcc/ginclude/stddef.h:1.10	Wed Jul 14 09:24:58 2021
+++ src/external/gpl3/gcc/dist/gcc/ginclude/stddef.h	Sat Jul 17 12:31:51 2021
@@ -420,9 +420,14 @@ typedef struct {
      use __float128 here; that is only available on some
      architectures, but only on i386 is extra alignment needed for
      __float128.  */
-#if defined(__i386__) && !defined(__clang__)
+#if defined(__i386__)
+#ifdef __clang__
+  // 16 is the gcc alignment for __float128
+  long long __max_align_128 __attribute__((__aligned__(16)));
+#else
   __float128 __max_align_f128 __attribute__((__aligned__(__alignof(__float128))));
 #endif
+#endif
 } max_align_t;
 #endif
 #endif /* C11 or C++11.  */

Reply via email to