forked from pool/gcc15
- Take patches inherited from GCC 14. * gcc-add-defaultsspec.diff, add the ability to provide a specs file that is read by default * tls-no-direct.diff, avoid direct %fs references on x86 to not slow down Xen * gcc43-no-unwind-tables.diff, do not produce unwind tables for CRT files * gcc41-ppc32-retaddr.patch, fix expansion of __builtin_return_addr for ppc, just a testcase * gcc44-textdomain.patch, make translation files version specific and adjust textdomain to find them * gcc44-rename-info-files.patch, fix cross-references in info files when renaming them to be version specific * gcc48-libstdc++-api-reference.patch, fix link in the installed libstdc++ html documentation * gcc7-remove-Wexpansion-to-defined-from-Wextra.patch, removes new warning from -Wextra * gcc7-avoid-fixinc-error.diff * gcc9-reproducible-builds-buildid-for-checksum.patch * gcc9-reproducible-builds.patch * gcc11-gdwarf-4-default.patch, default to -gdwarf-4 on old products OBS-URL: https://build.opensuse.org/package/show/devel:gcc/gcc15?expand=0&rev=1
21 lines
913 B
Diff
21 lines
913 B
Diff
For i?86 negative offsets to %fs segment accesses cause a hypervisor
|
|
trap for Xen. Avoid this by making accesses indirect.
|
|
|
|
??? Note that similar to the behavior on SLE11 this only affects
|
|
the compiler built on %ix86, not that on x86_64, even with -m32.
|
|
|
|
Index: gcc/config/i386/linux.h
|
|
===================================================================
|
|
--- gcc/config/i386/linux.h.orig 2015-12-17 15:07:37.785650062 +0100
|
|
+++ gcc/config/i386/linux.h 2015-12-17 15:08:06.393983290 +0100
|
|
@@ -24,3 +24,9 @@ along with GCC; see the file COPYING3.
|
|
|
|
#undef MUSL_DYNAMIC_LINKER
|
|
#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-i386.so.1"
|
|
+
|
|
+/* This slows down Xen, so take a very small general performance hit
|
|
+ for not accessing the %fs segment with negative offsets by making
|
|
+ GCC not emit direct accesses to %fs at all. */
|
|
+#undef TARGET_TLS_DIRECT_SEG_REFS_DEFAULT
|
|
+#define TARGET_TLS_DIRECT_SEG_REFS_DEFAULT 0
|