From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pg1-x52e.google.com (mail-pg1-x52e.google.com [IPv6:2607:f8b0:4864:20::52e]) by sourceware.org (Postfix) with ESMTPS id 132593858C98 for ; Thu, 4 Apr 2024 14:28:43 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 132593858C98 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=dabbelt.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=dabbelt.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 132593858C98 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2607:f8b0:4864:20::52e ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1712240926; cv=none; b=oBz9TNcG90w+Qj4NBK783tPOsLSOcSPdg029sVAbN60RM8a45ALXEh++3qHu4agJWaaG2/kOnT1+nir0rjXV7pxS7bNEVWDGS/ro03QUVYfXMmJ+gdYqxYiXBojOefuzTHPytin6cAcG3osXM6nSVm5sq1MavEOgimXoNqO7KsE= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1712240926; c=relaxed/simple; bh=wYVyNQAs4WMax/zFgg6q5Bq/PiYQ28j2rlk0JN8IazY=; h=DKIM-Signature:Date:Subject:From:To:Message-ID:Mime-Version; b=wcSLYXK6OCAP8LJkRuba97KbDb/z/nzl6TWPJaLpwTpEMfe3tKQ887F/TlN0ghloeysad0p2Yzsf6gRYz1ErMMDK0+sx0t1G0qraJxkfnFtEb7x5Zu+jslMflrWHrYx31FQr4elWwm0CsW2O3+oBP6xQ3xqomqMScr+tnbd2BMI= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-pg1-x52e.google.com with SMTP id 41be03b00d2f7-5e4f79007ffso754584a12.2 for ; Thu, 04 Apr 2024 07:28:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=dabbelt-com.20230601.gappssmtp.com; s=20230601; t=1712240921; x=1712845721; darn=gcc.gnu.org; h=content-transfer-encoding:mime-version:message-id:to:from:cc :in-reply-to:subject:date:from:to:cc:subject:date:message-id :reply-to; bh=FzvIa1uxbr0H427WpPxUSyHltmWf8KTk/+/gSbxhQ0I=; b=iuurye42Ic5n3E+mzgXXotsUhNyBnCKxT8xY56a7vm2OaQKjFcmGeicisCRFAdDfmD J9yzd2ntl6zLixfmKBZPtz8bKg1OAJslqOCHPcTBbnO8xqGmBrV8vheWzgW13Rdfv+0j vh5ZlEpSI16pDpuVnyApPcAm0pXBeXyHVLFkYawkikM9cQUUnQZQX+2W//XsRf3zv6Er 85zgEAVQC9PZ4jo1xU5GcSMPAYvD5GzEBXd5jiG6d3PkIUoxElE5kU2cN8sgb+Axy4g9 pAI75sml8Xktmj870hnAOSgcbBhiH/ERR1AUvodR1P9276B9fgLh1JeYdLIz/CAwRYEc PA8g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1712240921; x=1712845721; h=content-transfer-encoding:mime-version:message-id:to:from:cc :in-reply-to:subject:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=FzvIa1uxbr0H427WpPxUSyHltmWf8KTk/+/gSbxhQ0I=; b=LJaj+sQ5ZQFRoBU96t9xkiaPGQVvneWDBvnSmmWN+ALtOSI7/bzqTFVNyBOfIrvSJ1 1AVYJ8GK1Rnnc6moXmT5X1fqwcEo+WpVHntm9VTtjmq6GUc/4XkYFmzT3Lut9+ZcAvMW +3AL5wP00ruHlbsAFCcEiwVuQrEm1PPVwzGaY89Qu5jQD3pbMFDcHy47MFT+Xd/uj7Rg Wyvjql9Lg+x9CbkNrdtjwe9D771w8LEVNCiXjrRU2LZMl4mrI/ItRcjj44EJOH5nhAOt 6Rf0azMaq2kpbge1D0JXGqrIf458W/lGGlc682xZ0cklOAi9MfHeWsMZC1m6/bYHxbji 6/9g== X-Gm-Message-State: AOJu0YxwjYUqSlJaBGv57abmXgzqHEKI+hhIwOFiYz/uWb10XIZf21Jb y0WORNDc0ZJIwCAZadKElydLKRmz42cZxCJ3lM6eTdmByjLSw3dYS5rYdPVWdZPaCufhb//WUO0 b X-Google-Smtp-Source: AGHT+IGjZbICRvOawHiCpGbPYmiZbX9xmXrI4ATdDJt3jOiV36YKvI7OahxOmOg3aWCbrZOyoWNEdg== X-Received: by 2002:a17:90a:68cc:b0:29f:7672:7fee with SMTP id q12-20020a17090a68cc00b0029f76727feemr2773731pjj.31.1712240921272; Thu, 04 Apr 2024 07:28:41 -0700 (PDT) Received: from localhost ([50.145.13.30]) by smtp.gmail.com with ESMTPSA id fa6-20020a17090af0c600b002a2fe2990cfsm115560pjb.5.2024.04.04.07.28.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 04 Apr 2024 07:28:40 -0700 (PDT) Date: Thu, 04 Apr 2024 07:28:40 -0700 (PDT) X-Google-Original-Date: Thu, 04 Apr 2024 07:28:38 PDT (-0700) Subject: Re: [gcc-13 backport PATCH] RISC-V: Fix C23 (...) functions returning large aggregates [PR114175] In-Reply-To: <20240403201736.3021296-1-ewlu@rivosinc.com> CC: gcc-patches@gcc.gnu.org, gnu-toolchain@rivosinc.com, ewlu@rivosinc.com From: Palmer Dabbelt To: ewlu@rivosinc.com, jakub@redhat.com Message-ID: Mime-Version: 1.0 (MHng) Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-10.8 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,GIT_PATCH_0,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: On Wed, 03 Apr 2024 13:17:36 PDT (-0700), ewlu@rivosinc.com wrote: > We assume that TYPE_NO_NAMED_ARGS_STDARG_P don't have any named arguments and > there is nothing to advance, but that is not the case for (...) functions > returning by hidden reference which have one such artificial argument. > This causes gcc.dg/c23-stdarg-[68].c to fail > > Fix the issue by checking if arg.type is NULL as r14-9503-g218d1749612 > explains > > Tested on linux rv64gcv. > > gcc/ChangeLog: > > PR target/114175 > * config/riscv/riscv.cc (riscv_setup_incoming_varargs): Only skip > riscv_funciton_arg_advance for TYPE_NO_NAMED_ARGS_STDARG_P functions > if arg.type is NULL > > (cherry picked from commit 60586710b0646efdbbd77a7f53b93fb5edb87a61) > --- > gcc/config/riscv/riscv.cc | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/gcc/config/riscv/riscv.cc b/gcc/config/riscv/riscv.cc > index 01eebc83cc5..cefd3b7b2b2 100644 > --- a/gcc/config/riscv/riscv.cc > +++ b/gcc/config/riscv/riscv.cc > @@ -3961,7 +3961,8 @@ riscv_setup_incoming_varargs (cumulative_args_t cum, > argument. Advance a local copy of CUM past the last "real" named > argument, to find out how many registers are left over. */ > local_cum = *get_cumulative_args (cum); > - if (!TYPE_NO_NAMED_ARGS_STDARG_P (TREE_TYPE (current_function_decl))) > + if (!TYPE_NO_NAMED_ARGS_STDARG_P (TREE_TYPE (current_function_decl)) > + || arg.type != NULL_TREE) > riscv_function_arg_advance (pack_cumulative_args (&local_cum), arg); > > /* Found out how many registers we need to save. */ Acked-by: Palmer Dabbelt I'm not sure if we need release maintainer approval, all I can find is the 13.2.1 status report saying 13.3 is expected in the spring . My allergies certainly indicate it's spring, but that's kind of a wide time window... Maybe Jakub knows?