From c9bf28d625ad1533935d40ae94b15453d0c98508 Mon Sep 17 00:00:00 2001 From: Florian Weimer Date: Wed, 13 Nov 2019 12:00:38 +0100 Subject: nios2: Work around backend bug triggered by csu/libc-tls.c (GCC PR 92499) Change-Id: If5df5b05d15f0418af821a9ac8cc0fad53437b10 --- sysdeps/unix/sysv/linux/nios2/Makefile | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'sysdeps/unix/sysv/linux') diff --git a/sysdeps/unix/sysv/linux/nios2/Makefile b/sysdeps/unix/sysv/linux/nios2/Makefile index 5688a16c38..9342e4521a 100644 --- a/sysdeps/unix/sysv/linux/nios2/Makefile +++ b/sysdeps/unix/sysv/linux/nios2/Makefile @@ -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 -- cgit 1.4.1