diff options
author | Sergei Trofimovich <slyfox@gentoo.org> | 2019-10-26 17:33:17 +0100 |
---|---|---|
committer | Sergei Trofimovich <slyfox@gentoo.org> | 2019-10-26 17:36:09 +0100 |
commit | 5277d012d4d21640d82ba9c82748d8b63523804c (patch) | |
tree | ed8fd2914643d3cee46c3a86289b652d365bdf3c /eclass | |
parent | profiles: Cancel last-rites for games-fps/ut2003-bonuspack-cm (diff) | |
download | gentoo-5277d012d4d21640d82ba9c82748d8b63523804c.tar.gz gentoo-5277d012d4d21640d82ba9c82748d8b63523804c.tar.bz2 gentoo-5277d012d4d21640d82ba9c82748d8b63523804c.zip |
toolchain.eclass: filter out -mstackrealign, bug #688580
-mstackrealign breaks stack unwinding via _Unwind_RaiseException
in libgcc_s.so.1. Not clear why exactly. Probably by breaking
unwinding information during realignment.
The change works it around by dropping -mstackrealign when building gcc.
Reported-by: Erik
Bug: https://bugs.gentoo.org/688580
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
Diffstat (limited to 'eclass')
-rw-r--r-- | eclass/toolchain.eclass | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass index b1ba774ea0c8..7e88900737ac 100644 --- a/eclass/toolchain.eclass +++ b/eclass/toolchain.eclass @@ -1547,6 +1547,13 @@ gcc_do_filter_flags() { filter-flags -Wstack-protector fi + if tc_version_is_between 6 8 ; then + # -mstackrealign triggers crashes in exception throwing + # at least on ada: bug #688580 + # The reason is unknown. Drop the flag for now. + filter-flags -mstackrealign + fi + if tc_version_is_at_least 3.4 ; then case $(tc-arch) in amd64|x86) |