gcc/libgcc/config/rs6000
Alan Modra cd6ca96f5d [POWER10] __morestack calls from pcrel code
Compiling gcc/testsuite/gcc.dg/split-*.c and others with -mcpu=power10
and linking with a non-pcrel libgcc results in crashes due to the
power10 pcrel code not having r2 set for the generic-morestack.c
functions called from __morestack.  There is also a problem when
non-pcrel code calls a pcrel libgcc.  See the patch comments.

A similar situation theoretically occurs with ELFv1 multi-toc
executables, when __morestack might be located in a different toc
group to its caller.  This patch makes no attempt to fix that, since
the gold linker does not support multi-toc (gold is needed for proper
support of -fsplit-stack code) nor does gcc emit __morestack calls
that support multi-toc.

	* config/rs6000/morestack.S (R2_SAVE): Define.
	(__morestack): Save and restore r2.  Set up r2 for called
	functions.
2021-07-15 15:27:09 +09:30
..
_dd_to_kf.c Add conversions between _Float128 and Decimal. 2021-02-22 15:33:29 -05:00
_divkc3.c Practical improvement to libgcc complex divide 2021-04-28 21:54:44 +02:00
_kf_to_dd.c Add conversions between _Float128 and Decimal. 2021-02-22 15:33:29 -05:00
_kf_to_sd.c Add conversions between _Float128 and Decimal. 2021-02-22 15:33:29 -05:00
_kf_to_td.c Add conversions between _Float128 and Decimal. 2021-02-22 15:33:29 -05:00
_mulkc3.c Update copyright years. 2021-01-04 10:26:59 +01:00
_powikf2.c Update copyright years. 2021-01-04 10:26:59 +01:00
_sd_to_kf.c Add conversions between _Float128 and Decimal. 2021-02-22 15:33:29 -05:00
_td_to_kf.c Add conversions between _Float128 and Decimal. 2021-02-22 15:33:29 -05:00
aix-unwind.h Update copyright years. 2021-01-04 10:26:59 +01:00
aixinitfini.c
atexit.c Update copyright years. 2021-01-04 10:26:59 +01:00
crtcxa.c Update copyright years. 2021-01-04 10:26:59 +01:00
crtdbase.S Update copyright years. 2021-01-04 10:26:59 +01:00
crtresfpr.S Update copyright years. 2021-01-04 10:26:59 +01:00
crtresgpr.S Update copyright years. 2021-01-04 10:26:59 +01:00
crtrestvr.S Update copyright years. 2021-01-04 10:26:59 +01:00
crtresxfpr.S Update copyright years. 2021-01-04 10:26:59 +01:00
crtresxgpr.S Update copyright years. 2021-01-04 10:26:59 +01:00
crtsavevr.S Update copyright years. 2021-01-04 10:26:59 +01:00
crtsavfpr.S Update copyright years. 2021-01-04 10:26:59 +01:00
crtsavgpr.S Update copyright years. 2021-01-04 10:26:59 +01:00
cxa_atexit.c Update copyright years. 2021-01-04 10:26:59 +01:00
cxa_finalize.c Update copyright years. 2021-01-04 10:26:59 +01:00
darwin-asm.h Update copyright years. 2021-01-04 10:26:59 +01:00
darwin-crt2.c Update copyright years. 2021-01-04 10:26:59 +01:00
darwin-fallback.c Update copyright years. 2021-01-04 10:26:59 +01:00
darwin-fpsave.S Update copyright years. 2021-01-04 10:26:59 +01:00
darwin-gpsave.S Update copyright years. 2021-01-04 10:26:59 +01:00
darwin-tramp.S Update copyright years. 2021-01-04 10:26:59 +01:00
darwin-unwind.h Update copyright years. 2021-01-04 10:26:59 +01:00
darwin-vecsave.S Update copyright years. 2021-01-04 10:26:59 +01:00
darwin-world.S Update copyright years. 2021-01-04 10:26:59 +01:00
e500crtres32gpr.S Update copyright years. 2021-01-04 10:26:59 +01:00
e500crtres64gpr.S Update copyright years. 2021-01-04 10:26:59 +01:00
e500crtres64gprctr.S Update copyright years. 2021-01-04 10:26:59 +01:00
e500crtrest32gpr.S Update copyright years. 2021-01-04 10:26:59 +01:00
e500crtrest64gpr.S Update copyright years. 2021-01-04 10:26:59 +01:00
e500crtresx32gpr.S Update copyright years. 2021-01-04 10:26:59 +01:00
e500crtresx64gpr.S Update copyright years. 2021-01-04 10:26:59 +01:00
e500crtsav32gpr.S Update copyright years. 2021-01-04 10:26:59 +01:00
e500crtsav64gpr.S Update copyright years. 2021-01-04 10:26:59 +01:00
e500crtsav64gprctr.S Update copyright years. 2021-01-04 10:26:59 +01:00
e500crtsavg32gpr.S Update copyright years. 2021-01-04 10:26:59 +01:00
e500crtsavg64gpr.S Update copyright years. 2021-01-04 10:26:59 +01:00
e500crtsavg64gprctr.S Update copyright years. 2021-01-04 10:26:59 +01:00
eabi-ci.S Update copyright years. 2021-01-04 10:26:59 +01:00
eabi-cn.S Update copyright years. 2021-01-04 10:26:59 +01:00
eabi.S Update copyright years. 2021-01-04 10:26:59 +01:00
exit.h Update copyright years. 2021-01-04 10:26:59 +01:00
extendkftf2-sw.c Update copyright years. 2021-01-04 10:26:59 +01:00
fixkfti-sw.c Conversions between 128-bit integer and floating point values. 2021-06-09 11:20:07 -05:00
fixunskfti-sw.c Conversions between 128-bit integer and floating point values. 2021-06-09 11:20:07 -05:00
float128-hw.c Update copyright years. 2021-01-04 10:26:59 +01:00
float128-ifunc.c rs6000: Fix typos in float128 ISA3.1 support 2021-06-22 23:09:30 -05:00
float128-p10.c Conversions between 128-bit integer and floating point values. 2021-06-09 11:20:07 -05:00
float128-sed Conversions between 128-bit integer and floating point values. 2021-06-09 11:20:07 -05:00
float128-sed-hw Conversions between 128-bit integer and floating point values. 2021-06-09 11:20:07 -05:00
floattikf-sw.c Conversions between 128-bit integer and floating point values. 2021-06-09 11:20:07 -05:00
floatuntikf-sw.c Conversions between 128-bit integer and floating point values. 2021-06-09 11:20:07 -05:00
freebsd-unwind.h Update copyright years. 2021-01-04 10:26:59 +01:00
gthr-aix.h Update copyright years. 2021-01-04 10:26:59 +01:00
ibm-ldouble-format Update copyright years. 2021-01-04 10:26:59 +01:00
ibm-ldouble.c Update copyright years. 2021-01-04 10:26:59 +01:00
libgcc-aix-cxa.ver
libgcc-darwin.10.4.ver Update copyright years. 2021-01-04 10:26:59 +01:00
libgcc-darwin.10.5.ver Update copyright years. 2021-01-04 10:26:59 +01:00
libgcc-glibc.ver Update copyright years. 2021-01-04 10:26:59 +01:00
libgcc-ibm-ldouble.ver
linux-unwind.h Update copyright years. 2021-01-04 10:26:59 +01:00
morestack.S [POWER10] __morestack calls from pcrel code 2021-07-15 15:27:09 +09:30
on_exit.c Update copyright years. 2021-01-04 10:26:59 +01:00
quad-float128.h rs6000: Fix *TItype_ppc 2021-06-10 15:20:09 +00:00
sfp-exceptions.c Update copyright years. 2021-01-04 10:26:59 +01:00
sfp-machine.h
sol-ci.S Update copyright years. 2021-01-04 10:26:59 +01:00
sol-cn.S Update copyright years. 2021-01-04 10:26:59 +01:00
t-aix-cxa aix: Add GCC64 configuration and FAT target libraries. 2020-06-21 14:14:46 -04:00
t-crtstuff
t-darwin
t-darwin64
t-e500v1-fp Update copyright years. 2021-01-04 10:26:59 +01:00
t-e500v2-fp Update copyright years. 2021-01-04 10:26:59 +01:00
t-float128 Conversions between 128-bit integer and floating point values. 2021-06-09 11:20:07 -05:00
t-float128-hw rs6000: Fix typos in float128 ISA3.1 support 2021-06-22 23:09:30 -05:00
t-float128-p10-hw rs6000: Fix typos in float128 ISA3.1 support 2021-06-22 23:09:30 -05:00
t-freebsd Update copyright years. 2021-01-04 10:26:59 +01:00
t-freebsd64
t-ibm-ldouble
t-linux rs6000: Fix up libgcc ABI when built with --with-long-double-format=ieee [PR97653] 2021-04-03 10:05:32 +02:00
t-lynx
t-netbsd
t-ppc64-fp [RS6000] Use LIB2_SIDITI_CONV_FUNCS in place of ppc64-fp.c 2020-11-17 10:39:01 +10:30
t-ppccomm
t-savresfgpr
t-slibgcc-aix Update copyright years. 2021-01-04 10:26:59 +01:00
t-stack-rs6000
tramp.S Fix logic error in 32-bit trampolines. 2021-04-23 18:16:03 -04:00
trunctfkf2-sw.c Update copyright years. 2021-01-04 10:26:59 +01:00