From: krebbel Date: Fri, 5 Feb 2016 10:10:35 +0000 (+0000) Subject: S/390: Fix 64 bit sibcall X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=aa5b477817c28a20bd09b4dd4ed953d10998a3b4;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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233169 138bc75d-0d04-0410-961f-82ee72b054a4 --- 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),