From patchwork Fri Aug 2 07:11:38 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?Marc_Poulhi=C3=A8s?= X-Patchwork-Id: 95173 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id F0389385EC55 for ; Fri, 2 Aug 2024 07:18:42 +0000 (GMT) X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from mail-wr1-x42a.google.com (mail-wr1-x42a.google.com [IPv6:2a00:1450:4864:20::42a]) by sourceware.org (Postfix) with ESMTPS id B3621385EC59 for ; Fri, 2 Aug 2024 07:12:41 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org B3621385EC59 Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=adacore.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=adacore.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org B3621385EC59 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a00:1450:4864:20::42a ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1722582763; cv=none; b=JQ0fNNfZdjgGDL/YNRm4rmpIAoltcyIu9GIpVCvnsJW16f5aL7zuV6In1zqMJz4gPZ577RhgW730ENkoxbmWW6z4ZnK7v97E1PanAgQ6rmuhXQyqoVYPiwyobDBH3A1XlB5kXBToLFA1xAGwCuACquUqiDYKcsn5o3EW99NkKBw= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1722582763; c=relaxed/simple; bh=XuA3MkZIklIFugY3LdAM7KFAndkHU5YDgx39Pv487DA=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=GE7vOj5D8nnW7iPzXITbAtzXyqV5f2EUTRAR6PPohnjrb4sdkcD5/EIB3WSB0yANez7gGyyZUJ+5Dg4tEgBVqLSJTpBxXmn7ZtYjHEfNXHlSVShhbzkOvhOPgcEGbWJxwGblbRd83wKzZ22/prcgULrAU12EZ8Zju+w9uQk09Kw= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-wr1-x42a.google.com with SMTP id ffacd0b85a97d-3684407b2deso3946638f8f.1 for ; Fri, 02 Aug 2024 00:12:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=adacore.com; s=google; t=1722582760; x=1723187560; darn=gcc.gnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=6LRHaimFDUgPP3c4Wtio0/QCdfokDfJb5SGVyLr59PU=; b=h0QW53ufznNpFxzihI1YGMJu8bh7lqeHtvmapGYcY5AT5LJe1qA8gHumzFKfoAm7a5 MO1qDqQUpOLiFl7cNOlsjUGrw0c74RpAC7muE5d/RCG0NdVBvNsYS8QHquHCnLW3VFL2 5c04AvtZ+xyskbeyCEhIfw7N5ebHynIfkI1/wmzEAkYD/bVb7nP1k+R2AklXeG+ss/mL SQMkqpb9qluv4TwDWdDpqXdeLZluTgEiz02MIhTxYOp1BBgvCWQEwv80quVBM3fISLGh ZxFisUt7vCCrhMFbjRXJnlxgkL5WT0jdH928urCwUU22J2XFvNMMrYSz/iNB3dMM9gVC Kg+w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1722582760; x=1723187560; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=6LRHaimFDUgPP3c4Wtio0/QCdfokDfJb5SGVyLr59PU=; b=GBnnv1JeeCX72IRwl8fqOpAjp+Qdys1+3ALksHeHv3K2NRLoLuJZdUxJYZd7qvJTzK ow0cfA+/rLTtM6IJrsf4XmcdJ7DCXUUnI83CFiUNvbX5qT1BnQ/hbzQpk+JHLCoyatug M/Ve+sCryjPhsqakpt1Rc3xcyW+DeR6IztTIYTu/pqejcUpAjpUvvoIxy1otTQiTtgiZ Upp5n0+wCeJh6jSiPCArQJwiztoPEKjOkPspOPm7VN5GhxIOv3/QJWPrfnPs3qWwU0zG OCpV3TIk86Vp91VtYnmfDVH5o9Qdf/4evWuqW98Rc6ES8j5lp50ltblN50axSh2yXgzP zQfw== X-Gm-Message-State: AOJu0Yx2bbn6EvRJqb6yLq0SJK9dodyYNn3qABs1UfQjKVtivXSpXeqp K+aSrOWIcbUh8zbXrchWoWPxn4it32DmUG/RsabqRTqGru1y0uuGHJTQGqJRKsFDpCN6N7JyWKH hXQ== X-Google-Smtp-Source: AGHT+IGLG3BebhUJlZ4TUvxR1wIVZ+5CoEsxKcIFwO0TX3EVK8B7NhD9/kCKFebG67g3d1+yQ4mZ3g== X-Received: by 2002:adf:ec03:0:b0:368:714e:5a59 with SMTP id ffacd0b85a97d-36bbc0aeba6mr1733125f8f.11.1722582760469; Fri, 02 Aug 2024 00:12:40 -0700 (PDT) Received: from localhost.localdomain ([2001:861:3382:1a90:b6aa:4751:9ea1:da1e]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-36bbd059932sm1195770f8f.69.2024.08.02.00.12.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 02 Aug 2024 00:12:39 -0700 (PDT) From: =?utf-8?q?Marc_Poulhi=C3=A8s?= To: gcc-patches@gcc.gnu.org Cc: Piotr Trojanek Subject: [COMMITTED 21/26] ada: Simplify code by reusing Choice_List Date: Fri, 2 Aug 2024 09:11:38 +0200 Message-ID: <20240802071210.413366-21-poulhies@adacore.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240802071210.413366-1-poulhies@adacore.com> References: <20240802071210.413366-1-poulhies@adacore.com> MIME-Version: 1.0 X-Spam-Status: No, score=-13.7 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, 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 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: , Errors-To: gcc-patches-bounces~patchwork=sourceware.org@gcc.gnu.org From: Piotr Trojanek Code cleanup; semantics is unaffected. gcc/ada/ * exp_aggr.adb (Gen_Assign): Fix layout. * sem_aggr.adb (Empty_Range): Reuse Choice_List. Tested on x86_64-pc-linux-gnu, committed on master. --- gcc/ada/exp_aggr.adb | 8 ++++---- gcc/ada/sem_aggr.adb | 8 +------- 2 files changed, 5 insertions(+), 11 deletions(-) diff --git a/gcc/ada/exp_aggr.adb b/gcc/ada/exp_aggr.adb index 25af78a4da7..7a2d0570dbd 100644 --- a/gcc/ada/exp_aggr.adb +++ b/gcc/ada/exp_aggr.adb @@ -1010,8 +1010,8 @@ package body Exp_Aggr is -- Returns a new reference to the index type name function Gen_Assign - (Ind : Node_Id; - Expr : Node_Id) return List_Id; + (Ind : Node_Id; + Expr : Node_Id) return List_Id; -- Ind must be a side-effect-free expression. If the input aggregate N -- to Build_Loop contains no subaggregates, then this function returns -- the assignment statement: @@ -1237,8 +1237,8 @@ package body Exp_Aggr is ---------------- function Gen_Assign - (Ind : Node_Id; - Expr : Node_Id) return List_Id + (Ind : Node_Id; + Expr : Node_Id) return List_Id is function Add_Loop_Actions (Lis : List_Id) return List_Id; -- Collect insert_actions generated in the construction of a loop, diff --git a/gcc/ada/sem_aggr.adb b/gcc/ada/sem_aggr.adb index 565f2cb8a79..656d789de73 100644 --- a/gcc/ada/sem_aggr.adb +++ b/gcc/ada/sem_aggr.adb @@ -2735,15 +2735,9 @@ package body Sem_Aggr is ----------------- function Empty_Range (A : Node_Id) return Boolean is - R : Node_Id; + R : constant Node_Id := First (Choice_List (A)); begin - if Nkind (A) = N_Iterated_Component_Association then - R := First (Discrete_Choices (A)); - else - R := First (Choices (A)); - end if; - return No (Next (R)) and then Nkind (R) = N_Range and then Compile_Time_Compare