https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115608
--- Comment #6 from John Paul Adrian Glaubitz <glaubitz at physik dot fu-berlin.de> --- (In reply to Eric Botcazou from comment #5) > Tentative fix: > > diff --git a/gcc/config/sparc/linux64.h b/gcc/config/sparc/linux64.h > index 1e2e4aef2ad..83e0d6874d9 100644 > --- a/gcc/config/sparc/linux64.h > +++ b/gcc/config/sparc/linux64.h > @@ -162,7 +162,7 @@ extern const char *host_detect_local_cpu (int argc, > const char **argv); > "%{m32:%{m64:%emay not use both -m32 and -m64}} \ > %{m32:-mptr32 -mno-stack-bias %{!mlong-double-128:-mlong-double-64} \ > %{!mcpu*:-mcpu=cypress}} \ > -%{mv8plus:-mptr32 -mno-stack-bias %{!mlong-double-128:-mlong-double-64} \ > +%{mv8plus:-m32 -mptr32 -mno-stack-bias > %{!mlong-double-128:-mlong-double-64} \ > %{!mcpu*:-mcpu=v9}} \ > %{!m32:%{!mcpu*:-mcpu=ultrasparc}} \ > %{!mno-vis:%{!m32:%{!mcpu=v9:-mvis}}}" Indeed, passing -m32 on the command line as well fixes the problem.