diff options
author | Arnaud Charlet <charlet@gcc.gnu.org> | 2012-03-07 15:58:43 +0100 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2012-03-07 15:58:43 +0100 |
commit | 6eddd7b4f35fd5e258260126de69e9c1e7e2617d (patch) | |
tree | 50beb99d31b658b397856787bdf8f11e39a18263 /gcc/ada/targparm.adb | |
parent | 84f4072a8e1097b05597a62fb96f28f9c48f868a (diff) | |
download | gcc-6eddd7b4f35fd5e258260126de69e9c1e7e2617d.zip gcc-6eddd7b4f35fd5e258260126de69e9c1e7e2617d.tar.gz gcc-6eddd7b4f35fd5e258260126de69e9c1e7e2617d.tar.bz2 |
[multiple changes]
2012-03-07 Ed Schonberg <schonberg@adacore.com>
* sem_ch6.adb (Process_Formals): a generic subprogram with
a formal incomplete type does not require a freeze node.
2012-03-07 Bob Duff <duff@adacore.com>
* sem_util.ads: Minor reformatting.
2012-03-07 Geert Bosch <bosch@adacore.com>
* targparm.ads: New target parameter Atomic_Sync_Default,
defaulting to True.
* targparm.adb (Get_Target_Parameters): Add processing for
Atomic_Sync_Default.
* gnat1drv.adb (Adjust_Global_Switches): Adjust Supress_Options
based on ASD.
From-SVN: r185056
Diffstat (limited to 'gcc/ada/targparm.adb')
-rw-r--r-- | gcc/ada/targparm.adb | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/gcc/ada/targparm.adb b/gcc/ada/targparm.adb index 7868446..193858a 100644 --- a/gcc/ada/targparm.adb +++ b/gcc/ada/targparm.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 1999-2011, Free Software Foundation, Inc. -- +-- Copyright (C) 1999-2012, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -40,6 +40,7 @@ package body Targparm is type Targparm_Tags is (AAM, -- AAMP ACR, -- Always_Compatible_Rep + ASD, -- Atomic_Sync_Default BDC, -- Backend_Divide_Checks BOC, -- Backend_Overflow_Checks CLA, -- Command_Line_Args @@ -75,6 +76,7 @@ package body Targparm is AAM_Str : aliased constant Source_Buffer := "AAMP"; ACR_Str : aliased constant Source_Buffer := "Always_Compatible_Rep"; + ASD_Str : aliased constant Source_Buffer := "Atomic_Sync_Default"; BDC_Str : aliased constant Source_Buffer := "Backend_Divide_Checks"; BOC_Str : aliased constant Source_Buffer := "Backend_Overflow_Checks"; CLA_Str : aliased constant Source_Buffer := "Command_Line_Args"; @@ -110,6 +112,7 @@ package body Targparm is Targparm_Str : constant array (Targparm_Tags) of Buffer_Ptr := (AAM_Str'Access, ACR_Str'Access, + ASD_Str'Access, BDC_Str'Access, BOC_Str'Access, CLA_Str'Access, @@ -548,6 +551,7 @@ package body Targparm is case K is when AAM => AAMP_On_Target := Result; when ACR => Always_Compatible_Rep_On_Target := Result; + when ASD => Atomic_Sync_Default := Result; when BDC => Backend_Divide_Checks_On_Target := Result; when BOC => Backend_Overflow_Checks_On_Target := Result; when CLA => Command_Line_Args_On_Target := Result; @@ -556,6 +560,10 @@ package body Targparm is VM_Target := CLI_Target; Tagged_Type_Expansion := False; end if; + -- This is wrong, this processing should be done in + -- Gnat1drv.Adjust_Global_Switches. It is not the + -- right level for targparm to know about tagged + -- type extension??? when CRT => Configurable_Run_Time_On_Target := Result; when D32 => Duration_32_Bits_On_Target := Result; @@ -568,6 +576,10 @@ package body Targparm is VM_Target := JVM_Target; Tagged_Type_Expansion := False; end if; + -- This is wrong, this processing should be done in + -- Gnat1drv.Adjust_Global_Switches. It is not the + -- right level for targparm to know about tagged + -- type extension??? when MOV => Machine_Overflows_On_Target := Result; when MRN => Machine_Rounds_On_Target := Result; |