From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp.CeBiTec.Uni-Bielefeld.DE (smtp.CeBiTec.Uni-Bielefeld.DE [129.70.160.84]) by sourceware.org (Postfix) with ESMTPS id 139E2385C30B for ; Mon, 6 Jun 2022 12:00:25 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 139E2385C30B Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=CeBiTec.Uni-Bielefeld.DE Authentication-Results: sourceware.org; spf=none smtp.mailfrom=cebitec.uni-bielefeld.de Received: from localhost (localhost [127.0.0.1]) by smtp.CeBiTec.Uni-Bielefeld.DE (Postfix) with ESMTP id C837BBB2BF; Mon, 6 Jun 2022 14:00:23 +0200 (CEST) X-Virus-Scanned: amavisd-new at CeBiTec.Uni-Bielefeld.DE Received: from smtp.CeBiTec.Uni-Bielefeld.DE ([127.0.0.1]) by localhost (smtp.cebitec.uni-bielefeld.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id LTZU_s0wDnhw; Mon, 6 Jun 2022 14:00:23 +0200 (CEST) Received: from manam.CeBiTec.Uni-Bielefeld.DE (p508554ce.dip0.t-ipconnect.de [80.133.84.206]) (Authenticated sender: ro) by smtp.CeBiTec.Uni-Bielefeld.DE (Postfix) with ESMTPSA id 271CEBB145; Mon, 6 Jun 2022 14:00:23 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=CeBiTec.Uni-Bielefeld.DE; s=20200306; t=1654516823; bh=qdyKE7NWFYTqpsx+6IOyi+AJLhHoh8qOnJHsEwpH++Q=; h=From:To:Cc:Subject:References:Date:In-Reply-To:From; b=BlRVKGsv3Lfjgu1J1w5oa4DKLC681Nt2/d4P1GebcnqVy9h4NBkE+TphrEVwF0CK8 zfhzNeDQ4g90yhbPsCDbRZs0H3vz7nvP/Qjd0Saa6D/me3e8tBkIBZvdW9Trks2RJM kNIbtxEKuSEJwS8/vcReJsYDNa8NMYRdl16WGY9GT5/cpHO1v5x/3ESC//XeTkh+Be 8BgTU8QHWWsdqklA65dqGLHMO2wHXewDE1Dfe32nIB8M0Y0QmTFPzSVZARWU/YGHYW yAEZwTrVrt35Ose/EmeFcw4+Q2ls5s2kkv43WT7W18fz/EYZdaZELokxd8yz8U6iXU wDNA8VrimnUgA== From: Rainer Orth To: "Roger Sayle" Cc: "'Andreas Schwab'" , Subject: Re: [PING] PR middle-end/95126: Expand small const structs as immediate constants References: <006d01d86d00$777e67b0$667b3710$@nextmovesoftware.com> <87czfnf148.fsf@igel.home> <036701d87981$91cc3150$b56493f0$@nextmovesoftware.com> Date: Mon, 06 Jun 2022 14:00:22 +0200 In-Reply-To: <036701d87981$91cc3150$b56493f0$@nextmovesoftware.com> (Roger Sayle's message of "Mon, 6 Jun 2022 09:43:58 +0100") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1.90 (usg-unix-v) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Status: No, score=-3794.4 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, GIT_PATCH_0, SPF_HELO_NONE, SPF_NONE, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Jun 2022 12:00:30 -0000 Hi Roger, > My sincere apologies for the breakage. I'm currently regression testing a > solution to the ICEs introduced by my "small const struct" patch, which > fingers-crossed might also fix this Ada bootstrap. For a while when > Rainer also reported the bootstrap failure is visible, on > x86_64-pc-linux-gnu, > I thought I'd be able to diagnose and fix the issue myself, but alas my > --enable-languages="all" builds (still) fail earlier with: > > gcc -std=gnu99 -c -g -gnatpg -gnatwns -gnata -W -Wall -I- -I. > -Iada/generated -Iada -I../../gcc/gcc/ada ../../gcc/gcc/ada/osint.adb -o > ada/osint.o > osint.adb:438:31: "strlen" not declared in "CRTL" > osint.adb:441:14: "strncpy" not declared in "CRTL" > osint.adb:675:21: "strlen" not declared in "CRTL" > osint.adb:728:16: "Open_Append" is undefined > osint.adb:1108:41: "int64" not declared in "CRTL" > osint.adb:3144:28: "strlen" not declared in "CRTL" > osint.adb:3147:11: "strncpy" not declared in "CRTL" > > The one experiment I'd like to be able to try, to investigate the cause/cure > of this, is: > > diff --git a/gcc/calls.cc b/gcc/calls.cc > index a4336c1..05fdd24 100644 > --- a/gcc/calls.cc > +++ b/gcc/calls.cc > @@ -2177,7 +2177,7 @@ load_register_parameters (struct arg_data *args, int > num_a > VAR_DECL with a simple constructor, expand that constructor > via a pseudo rather than read from (possibly misaligned) > memory. PR middle-end/95126. */ > - else if (nregs == 1 > + else if (0 && nregs == 1 > && partial == 0 > && !args[i].pass_on_stack > && VAR_P (tree_value) > > My "small const structs" patch affected code generation in three places, and > identifying > which of these is causing the miscompilation issue for gnat will help narrow > down the > problem, or worst case allow reverting less of the problematic patch. I just tried this on i386-pc-solaris2.11: unfortunately, it made no difference. Rainer -- ----------------------------------------------------------------------------- Rainer Orth, Center for Biotechnology, Bielefeld University