From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by sourceware.org (Postfix) with ESMTP id 5CE143857C7F for ; Fri, 21 Jan 2022 12:22:54 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 5CE143857C7F Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id D35AD1FB; Fri, 21 Jan 2022 04:22:53 -0800 (PST) Received: from localhost (unknown [10.32.98.88]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 40B263F766; Fri, 21 Jan 2022 04:22:53 -0800 (PST) From: Richard Sandiford To: Iain Sandoe Mail-Followup-To: Iain Sandoe , GCC Development , Maxim Blinov , richard.sandiford@arm.com Cc: GCC Development , Maxim Blinov Subject: Re: Help with an ABI peculiarity References: <245C81F6-E1D1-4868-9E88-2270B7985E5E@sandoe.co.uk> Date: Fri, 21 Jan 2022 12:22:51 +0000 In-Reply-To: <245C81F6-E1D1-4868-9E88-2270B7985E5E@sandoe.co.uk> (Iain Sandoe's message of "Fri, 21 Jan 2022 11:19:45 +0000") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-6.4 required=5.0 tests=BAYES_00, KAM_DMARC_STATUS, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: gcc@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jan 2022 12:22:55 -0000 Iain Sandoe writes: > Hi Richard, >> On 20 Jan 2022, at 22:32, Richard Sandiford = wrot>> Iain Sandoe writes: >>>> On 10 Jan 2022, at 10:46, Richard Sandiford wrot>> An alternative might be to make promote_function_arg a =E2=80=9Cpr= oper=E2=80=9D >>>> ABI hook, taking a cumulative_args_t and a function_arg_info. >>>> Perhaps the return case should become a separate hook at the >>>> same time. >>>>=20 >>>> That would probably require more extensive changes than just >>>> updating the call sites, and I haven't really checked how much >>>> work it would be, but hopefully it wouldn't be too bad. >>>>=20 >>>> The new hook would still be called before function_arg, but that >>>> should no longer be a problem, since the new hook arguments would >>>> give the target the information it needs to decide whether the >>>> argument is passed in registers. >>>=20 >>> Yeah, this was my next port of call (I have looked at it ~10 times and = then >>> decided =E2=80=9Cnot today, maybe there=E2=80=99s a simpler way=E2=80= =9D). > > =E2=80=A6 and I did not have a chance to look at this in the meantime =E2= =80=A6 > >> BTW, finally catching up on old email, I see this is essentially also >> the approach that Maxim was taking with the TARGET_FUNCTION_ARG_BOUNDARY >> patches. What's the situation with those?=20 > > I have the patches plus amendments to make use of their new functionality= on the > development branch, which is actually in pretty good shape (not much diff= erence > in testsuite results from other Darwin sub-ports). > > Maxim and I need to discuss amending the TARGET_FUNCTION_ARG_BOUNDARY > changes to account for Richard (B)=E2=80=99s comments. > > Likewise, I need to tweak the support for heap allocation of nested funct= ion trampolines > to account for review comments. Sounds great. > As always, it=E2=80=99s a question of fitting everything in=E2=80=A6 Yeah :-) The question probably sounded pushier than it was meant to, sorry. I just wanted to check that you or Maxim weren't still waiting on reviews. Richard