From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1914) id 36A4E3815FEE; Mon, 30 May 2022 08:30:32 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 36A4E3815FEE MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="utf-8" From: Pierre-Marie de Rodat To: gcc-cvs@gcc.gnu.org Subject: [gcc r13-833] [Ada] Introduce Opt.CCG_Mode X-Act-Checkin: gcc X-Git-Author: Arnaud Charlet X-Git-Refname: refs/heads/master X-Git-Oldrev: 40e01041b3593c72f3d52013953fbfbe0011abb8 X-Git-Newrev: 764169055b5b083f1f2167122c637ddc72c58095 Message-Id: <20220530083032.36A4E3815FEE@sourceware.org> Date: Mon, 30 May 2022 08:30:32 +0000 (GMT) X-BeenThere: gcc-cvs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-cvs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 30 May 2022 08:30:32 -0000 https://gcc.gnu.org/g:764169055b5b083f1f2167122c637ddc72c58095 commit r13-833-g764169055b5b083f1f2167122c637ddc72c58095 Author: Arnaud Charlet Date: Fri Apr 22 08:32:37 2022 +0000 [Ada] Introduce Opt.CCG_Mode To handle code common to the old and the new CCG code generator. gcc/ada/ * gnat1drv.adb, opt.ads, sem_ch7.adb: Introduce CCG_Mode. Diff: --- gcc/ada/gnat1drv.adb | 1 + gcc/ada/opt.ads | 3 +++ gcc/ada/sem_ch7.adb | 4 ++-- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/gcc/ada/gnat1drv.adb b/gcc/ada/gnat1drv.adb index 49ddf03d04b..5c6fd92a825 100644 --- a/gcc/ada/gnat1drv.adb +++ b/gcc/ada/gnat1drv.adb @@ -180,6 +180,7 @@ procedure Gnat1drv is -- Set all flags required when generating C code if Generate_C_Code then + CCG_Mode := True; Modify_Tree_For_C := True; Transform_Function_Array := True; Unnest_Subprogram_Mode := True; diff --git a/gcc/ada/opt.ads b/gcc/ada/opt.ads index 2ce24eec332..c2abbcee8ef 100644 --- a/gcc/ada/opt.ads +++ b/gcc/ada/opt.ads @@ -262,6 +262,9 @@ package Opt is -- Set to True to build, bind and link all the sources of a project file -- (switch -B) + CCG_Mode : Boolean := False; + -- Set to True when running as CCG (either via -gnatceg or via -emit-c) + Check_Aliasing_Of_Parameters : Boolean := False; -- GNAT -- Set to True to detect whether subprogram parameters and function results diff --git a/gcc/ada/sem_ch7.adb b/gcc/ada/sem_ch7.adb index c43686b10ee..03aecc0c932 100644 --- a/gcc/ada/sem_ch7.adb +++ b/gcc/ada/sem_ch7.adb @@ -409,7 +409,7 @@ package body Sem_Ch7 is -- should occur, so we need to catch all cases where the -- subprogram may be inlined by the client. - if not Generate_C_Code + if not CCG_Mode and then (Is_Inlined (Decl_Id) or else Has_Pragma_Inline (Decl_Id)) then @@ -431,7 +431,7 @@ package body Sem_Ch7 is -- unless we generate C code since inlining is then -- handled by the C compiler. - if not Generate_C_Code + if not CCG_Mode and then (Is_Inlined (Decl_Id) or else Has_Pragma_Inline (Decl_Id)) then