From patchwork Tue Nov 8 18:00:53 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: David Edelsohn X-Patchwork-Id: 692418 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3tCxvM3w4rz9t1b for ; Wed, 9 Nov 2016 05:01:18 +1100 (AEDT) Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org header.b="Gkul2Pl/"; dkim-atps=neutral DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender :mime-version:in-reply-to:references:from:date:message-id :subject:to:cc:content-type; q=dns; s=default; b=ST/ab/uAfEZa/Wl Tk3ftbgQKpoHwa3XtwBgVEkRflG1qTGPGw/ubN6/IH6gzsGYBhoU9ON6vdNhQzTf r9GEtfE4t52sTsdQx8x9D9gppSGE/Lh/N03cLkIPDgxohne1arg3Zxl9wFfq6UiZ JI33lXj3cBw3p09nbgXJ5Q7H1LHo= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender :mime-version:in-reply-to:references:from:date:message-id :subject:to:cc:content-type; s=default; bh=evd+WxZVDYKPIrYhEznWm QnT8cU=; b=Gkul2Pl/wb6VM0O2XeIn1hYFXWSrFXxzd7RuFIYmD45Pc+06u9Kx3 fZ8jKvzvtidZ7Vg2wVRkfcfLKjk6lAcAxkqOhBSGwmBbUz6wbFbh1qrSBlymLgYP 5KpIuaHom2KCy7IS2mzMB2lMmA+ebi142/2yT/ly5TbDFgdq6/g3/s= Received: (qmail 28764 invoked by alias); 8 Nov 2016 18:01:09 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Received: (qmail 28683 invoked by uid 89); 8 Nov 2016 18:01:06 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=0.3 required=5.0 tests=AWL, BAYES_50, FREEMAIL_FROM, RCVD_IN_DNSWL_LOW, RCVD_IN_SORBS_SPAM, SPF_PASS autolearn=ham version=3.3.2 spammy=sk:asm_out, UD:rs6000-protos.h, rs6000_code_end, xcoff X-HELO: mail-qt0-f196.google.com Received: from mail-qt0-f196.google.com (HELO mail-qt0-f196.google.com) (209.85.216.196) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Tue, 08 Nov 2016 18:00:56 +0000 Received: by mail-qt0-f196.google.com with SMTP id l20so7608085qta.1 for ; Tue, 08 Nov 2016 10:00:55 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=NLc40j/LdmiMuSPJ0UXjFXYHdCbmUzNUgKmSnV38n+Q=; b=EA9pDtwRSr+lJ7eaXPKKT675IWNoDhDPv5kK6PPXbMrXRoMEKEcY5pyf1abDtAJEA6 gEbuc39PP1iDFt8rotrJGHPeD1QxOlELeybByV2MR+8gzxq00pgarb0ok+FA5g7w3zJk d73uKyR5oZd9/qXB/IJqpCwT86CppKod4vXbFpNQBqnZLwpt02PgwW/UicJwk9sBcVpk JyDrp50jZn7jjwYWGzRgOGxM/4gcOhrzJak8RY/w62cWu8kDAmc+2hZv/NXZoElRlKzs Rrffm6k1UVP3ZeYhwxKflhzhAbqf/2Uy3jcEoLCG6IdAPDxFZ1L+kcplSuDqHFogRD1B 06uQ== X-Gm-Message-State: ABUngvdoju7cDc7/BsF1F1E1AgdtMSUZYHs9mBk64bHdhmvV/emLF3YD83JEW5/SyC8FivxKLwVQdsXIrnoMnw== X-Received: by 10.200.36.246 with SMTP id t51mr14332012qtt.125.1478628054225; Tue, 08 Nov 2016 10:00:54 -0800 (PST) MIME-Version: 1.0 Received: by 10.12.163.1 with HTTP; Tue, 8 Nov 2016 10:00:53 -0800 (PST) In-Reply-To: References: From: David Edelsohn Date: Tue, 8 Nov 2016 13:00:53 -0500 Message-ID: Subject: Re: [PATCH v2] AIX visibility To: Christophe Lyon Cc: Jakub Jelinek , Segher Boessenkool , GCC Patches On Tue, Nov 8, 2016 at 10:23 AM, Christophe Lyon wrote: > Hi David, > > On 2 November 2016 at 16:41, David Edelsohn wrote: >> This revised patch makes two changes: >> >> 1) Fix typo in configure.ac >> 2) Add AIX visibility support for ASM_WEAKEN_DECL, which does touch >> the same code as Linux. >> >> The AIX "weak" support fixes a large number of C++ visibility testcases. >> >> Bootstrapped on powerpc-ibm-aix7.2.0.0. >> >> * configure.ac (.hidden): Change to conftest_s string. Provide string >> for AIX assembler. >> (gcc_cv_ld_hidden): Yes for AIX. >> * configure: Regenerate. >> >> * dwarf2asm.c (USE_LINKONCE_INDIRECT): Don't set for AIX (XCOFF). >> >> * config/rs6000/rs6000-protos.h (rs6000_asm_weaken_decl): Declare >> (rs6000_xcoff_asm_output_aligned_decl_common): Declare. >> * config/rs6000/xcoff.h (TARGET_ASM_GLOBALIZE_DECL_NAME): Define. >> (ASM_OUTPUT_ALIGNED_DECL_COMMON): Define. >> (ASM_OUTPUT_ALIGNED_COMMON): Delete. >> * config/rs6000/rs6000.c (rs6000_init_builtins): Change clog rename >> from #if to if. >> (rs6000_xcoff_visibility): New. >> (rs6000_xcoff_declare_function_name): Add visibility support. >> (rs6000_xcoff_asm_globalize_decl_name): New. >> (rs6000_xcoff_asm_output_aligned_decl_common): New. >> (rs6000_asm_weaken_decl): New. >> (rs6000_code_end): Disable HIDDEN_LINKONCE on XCOFF. >> config/rs6000/rs6000.h (ASM_WEAKEN_DECL): Change definition to >> reference function. >> >> dwarf2asm.c okay? >> >> Any comments on ASM_WEAKEN_DECL change? >> >> Thanks, David > > It seems this commit (r241930) is causing a regression on aarch64: > FAIL: g++.dg/torture/pr60750.C -O2 -flto -fno-use-linker-plugin > -flto-partition=none execution test Hi, Christophe Because GCC wants to move toward runtime tests, the appended patch is a better solution. Thanks, David Index: dwarf2asm.c =================================================================== --- dwarf2asm.c (revision 241972) +++ dwarf2asm.c (working copy) @@ -824,8 +824,8 @@ static GTY(()) int dw2_const_labelno; -#if defined(HAVE_GAS_HIDDEN) && !defined(XCOFF_DEBUGGING_INFO) -# define USE_LINKONCE_INDIRECT (SUPPORTS_ONE_ONLY) +#if defined(HAVE_GAS_HIDDEN) +# define USE_LINKONCE_INDIRECT (SUPPORTS_ONE_ONLY && !XCOFF_DEBUGGING_INFO) #else # define USE_LINKONCE_INDIRECT 0 #endif