From patchwork Sat Jan 10 18:04:53 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jakub Jelinek X-Patchwork-Id: 127824 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from vm01.sourceware.org (localhost [127.0.0.1]) by sourceware.org (Postfix) with ESMTP id 7604C4BA2E27 for ; Sat, 10 Jan 2026 18:06:13 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 7604C4BA2E27 Authentication-Results: sourceware.org; dkim=pass (1024-bit key, unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256 header.s=mimecast20190719 header.b=D9SLG5Z0 X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by sourceware.org (Postfix) with ESMTP id 6A50B4BA2E05 for ; Sat, 10 Jan 2026 18:05:02 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 6A50B4BA2E05 Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=redhat.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=redhat.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 6A50B4BA2E05 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=170.10.133.124 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1768068302; cv=none; b=UpuQNa4dT0UYt0oPjRQwCXitfYDxBEZnjuM0kxgChsARTmUS/hdZl2vJlnV5TOnOTx1fcf25JY6UYjh+sODZOxCYbLjdtr4aJzY39PHTbBdPLhZ/DYHsDzqG3QPKsQe16wYltgL0i6ouTlswD54QJbvkTDXs0sTjWFBkyA2Vo/Q= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1768068302; c=relaxed/simple; bh=B2U/x/ZpyQRzJGlzUhlCTKDFgQERmdK4pxnuVNo8JMY=; h=DKIM-Signature:Date:From:To:Subject:Message-ID:MIME-Version; b=aMPd5u2pQDYlsnCjnNZ8QeeUR2QwJkb1OvnXdRyOQ61dlYNVHwSD7S+CmTKG8shbo7e0guzbrU+O1F/J0dqWCHZHVoYVSRmbWAJOGQd96m9JkU5Z2FtepnCsdNyXswF8XLGraLXUTF/I7dcHG016j7q14WxiYUTXQJDv2C78voQ= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 6A50B4BA2E05 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1768068302; h=from:from:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:in-reply-to:in-reply-to: references:references; bh=Be21QeMpdPyYvHzSJNFm0YGIeqNgE9PJsDH9t7SPxCU=; b=D9SLG5Z0dsSPB4XGZS211Y0RdhDgGis8BN9vWw+4jiYEpE6XKsthIO3OnneGrmeRJ8QLDy YMUU/3cYzdfbVAgD0WQmiZbA5cbu1HxfiM8EQArWa108znZB5Zpm+IvX+OwcAAajGk3fBu +5JOesn1Z9RTRPocsDhn8rpcqkaordQ= Received: from mx-prod-mc-08.mail-002.prod.us-west-2.aws.redhat.com (ec2-35-165-154-97.us-west-2.compute.amazonaws.com [35.165.154.97]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-108-QgJcelCvNmW5pix1SgvYNw-1; Sat, 10 Jan 2026 13:04:58 -0500 X-MC-Unique: QgJcelCvNmW5pix1SgvYNw-1 X-Mimecast-MFC-AGG-ID: QgJcelCvNmW5pix1SgvYNw_1768068297 Received: from mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.111]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-08.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 77815180044D; Sat, 10 Jan 2026 18:04:57 +0000 (UTC) Received: from tucnak.zalov.cz (unknown [10.44.32.27]) by mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id A94781800240; Sat, 10 Jan 2026 18:04:56 +0000 (UTC) Received: from tucnak.zalov.cz (localhost [127.0.0.1]) by tucnak.zalov.cz (8.18.1/8.18.1) with ESMTPS id 60AI4rK03656169 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Sat, 10 Jan 2026 19:04:53 +0100 Received: (from jakub@localhost) by tucnak.zalov.cz (8.18.1/8.18.1/Submit) id 60AI4rG73656168; Sat, 10 Jan 2026 19:04:53 +0100 Date: Sat, 10 Jan 2026 19:04:53 +0100 From: Jakub Jelinek To: Stefan Schulze Frielinghaus Cc: gcc-patches@gcc.gnu.org, krebbel@linux.ibm.com, libstdc++@gcc.gnu.org Subject: [PATCH] s390: Fix ABI issue in libstdc++.so.6 Message-ID: References: <20260110162415.1075400-1-stefansf@linux.ibm.com> MIME-Version: 1.0 In-Reply-To: <20260110162415.1075400-1-stefansf@linux.ibm.com> X-Scanned-By: MIMEDefang 3.4.1 on 10.30.177.111 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: iib97okx0uS1cfYy-WJqAvjBC6xOXFiQr-Frhxb2Mzg_1768068297 X-Mimecast-Originator: redhat.com Content-Disposition: inline X-Spam-Status: No, score=-3.6 required=5.0 tests=BAYES_00, DKIMWL_WL_HIGH, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_BLOCKED, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED, SPF_HELO_PASS, SPF_NONE, TXREP autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Jakub Jelinek Errors-To: gcc-patches-bounces~patchwork=sourceware.org@gcc.gnu.org On Sat, Jan 10, 2026 at 05:24:15PM +0100, Stefan Schulze Frielinghaus wrote: > libstdc++-v3/ChangeLog: > > * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Add > names {,P,K}DF16. This is wrong - an ABI issue. You can't export new symbols in CXXABI_1.3.14 symbol version when they weren't exported there in GCC 13.1 already. Symbols new in GCC 16 like these should be exported in CXXABI_1.3.17. So, I think you want (completely untested): 2026-01-10 Jakub Jelinek * config/abi/pre/gnu.ver (CXXABI_1.3.14): Don't export _ZTI*DF16_ on s390x. (CXXABI_1.3.17): Export _ZTI*DF16_ on s390x. * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Remove _ZTI{,P,K}DF16_. Jakub --- libstdc++-v3/config/abi/pre/gnu.ver.jj 2026-01-02 09:56:10.583329488 +0100 +++ libstdc++-v3/config/abi/pre/gnu.ver 2026-01-10 18:58:37.133669626 +0100 @@ -2899,9 +2899,16 @@ CXXABI_1.3.14 { # typeinfo for _Float{16,32,64,128,32x,64x,128x} and # __bf16/bfloat16_t +#ifndef __s390x__ _ZTIDF[0-9]*[_x]; _ZTIPDF[0-9]*[_x]; _ZTIPKDF[0-9]*[_x]; +#else + # No _Float16 on s390x in GCC 13. + _ZTIDF[0-9]*[0-57-9][_x]; + _ZTIPDF[0-9]*[0-57-9][_x]; + _ZTIPKDF[0-9]*[0-57-9][_x]; +#endif #ifndef __riscv _ZTIDF16b; _ZTIPDF16b; @@ -2933,6 +2940,13 @@ CXXABI_1.3.16 { CXXABI_1.3.17 { # std::exception_ptr::_M_exception_ptr_cast _ZNKSt15__exception_ptr13exception_ptr21_M_exception_ptr_castERKSt9type_info; + +#ifdef __s390x__ + _ZTIDF16_; + _ZTIPDF16_; + _ZTIPKDF16_; +#endif + #ifdef __riscv } CXXABI_1.3.16; #else --- libstdc++-v3/config/abi/post/s390x-linux-gnu/baseline_symbols.txt.jj 2026-01-10 18:52:48.533640534 +0100 +++ libstdc++-v3/config/abi/post/s390x-linux-gnu/baseline_symbols.txt 2026-01-10 18:59:02.224239870 +0100 @@ -4951,7 +4951,6 @@ OBJECT:15:_ZTSSt8messagesIwE@@GLIBCXX_3. OBJECT:15:_ZTSSt8numpunctIcE@@GLIBCXX_3.4 OBJECT:15:_ZTSSt8numpunctIwE@@GLIBCXX_3.4 OBJECT:16:_ZTIDF128_@@CXXABI_1.3.14 -OBJECT:16:_ZTIDF16_@@CXXABI_1.3.14 OBJECT:16:_ZTIDF32_@@CXXABI_1.3.14 OBJECT:16:_ZTIDF32x@@CXXABI_1.3.14 OBJECT:16:_ZTIDF64_@@CXXABI_1.3.14 @@ -5616,7 +5615,6 @@ OBJECT:30:_ZTSSt7codecvtIDsDu11__mbstate OBJECT:32:_ZNSbIwSt11char_traitsIwESaIwEE4_Rep20_S_empty_rep_storageE@@GLIBCXX_3.4 OBJECT:32:_ZNSs4_Rep20_S_empty_rep_storageE@@GLIBCXX_3.4 OBJECT:32:_ZTIPDF128_@@CXXABI_1.3.14 -OBJECT:32:_ZTIPDF16_@@CXXABI_1.3.14 OBJECT:32:_ZTIPDF32_@@CXXABI_1.3.14 OBJECT:32:_ZTIPDF32x@@CXXABI_1.3.14 OBJECT:32:_ZTIPDF64_@@CXXABI_1.3.14 @@ -5629,7 +5627,6 @@ OBJECT:32:_ZTIPDn@@CXXABI_1.3.5 OBJECT:32:_ZTIPDs@@CXXABI_1.3.3 OBJECT:32:_ZTIPDu@@CXXABI_1.3.12 OBJECT:32:_ZTIPKDF128_@@CXXABI_1.3.14 -OBJECT:32:_ZTIPKDF16_@@CXXABI_1.3.14 OBJECT:32:_ZTIPKDF32_@@CXXABI_1.3.14 OBJECT:32:_ZTIPKDF32x@@CXXABI_1.3.14 OBJECT:32:_ZTIPKDF64_@@CXXABI_1.3.14