From: Andreas Krebbel Date: Fri, 5 Feb 2016 10:10:35 +0000 (+0000) Subject: S/390: Fix 64 bit sibcall X-Git-Tag: basepoints/gcc-7~1092 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=15288e9a946d0123254e63af7dd5252c9b83acce;p=thirdparty%2Fgcc.git S/390: Fix 64 bit sibcall This fixes a problem revealed during the split-stack work: https://gcc.gnu.org/ml/gcc-patches/2016-02/msg00322.html gcc/ChangeLog: 2016-02-05 Andreas Krebbel * config/s390/s390.c (s390_emit_call): Add missing 64 bit check. From-SVN: r233169 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3ce09b6b8bf6..b0c092b83f17 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2016-02-05 Andreas Krebbel + + * config/s390/s390.c (s390_emit_call): Add missing 64 bit check. + 2016-02-05 Andreas Krebbel PR target/69625 diff --git a/gcc/config/s390/s390.c b/gcc/config/s390/s390.c index 1667c115f41e..bca428ab303b 100644 --- a/gcc/config/s390/s390.c +++ b/gcc/config/s390/s390.c @@ -12507,7 +12507,7 @@ s390_emit_call (rtx addr_location, rtx tls_call, rtx result_reg, replace the symbol itself with the PLT stub. */ if (flag_pic && !SYMBOL_REF_LOCAL_P (addr_location)) { - if (retaddr_reg != NULL_RTX) + if (TARGET_64BIT || retaddr_reg != NULL_RTX) { addr_location = gen_rtx_UNSPEC (Pmode, gen_rtvec (1, addr_location),