nios2: Work around backend bug triggered by csu/libc-tls.c (GCC PR 92499)
authorFlorian Weimer <fweimer@redhat.com>
Wed, 13 Nov 2019 11:00:38 +0000 (12:00 +0100)
committerFlorian Weimer <fweimer@redhat.com>
Thu, 14 Nov 2019 11:39:49 +0000 (12:39 +0100)
Change-Id: If5df5b05d15f0418af821a9ac8cc0fad53437b10

sysdeps/unix/sysv/linux/nios2/Makefile

index 5688a16..9342e45 100644 (file)
@@ -7,3 +7,12 @@ ifeq ($(subdir),misc)
 sysdep_headers += sys/cachectl.h
 sysdep_routines += cacheflush
 endif
+
+ifeq ($(subdir),csu)
+# Work around an incorrect assumption that an object of variably
+# modified type, with a small fixed size but a large variable-sized
+# part (the static_slotinfo variable in libc-tls.c) is allocated in
+# the small data section, not the data section where it belongs based
+# on its size.  See GCC PR 92499.
+CFLAGS-libc-tls.c += -mgpopt=none
+endif