diff options
author | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-08-04 11:57:38 +0000 |
---|---|---|
committer | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-08-04 11:57:38 +0000 |
commit | c4866605abc8d4a0002eb5226c2e40daea95bbc6 (patch) | |
tree | adf39c1d4a047200bbc2e48560a200b9fb9477f3 | |
parent | affd9972925e47179858b6797880a134a0ba0882 (diff) | |
download | gcc-c4866605abc8d4a0002eb5226c2e40daea95bbc6.tar.gz |
2011-08-04 Emmanuel Briot <briot@adacore.com>
* projects.texi: Added documentation for the IDE'Gnat project file
attribute.
2011-08-04 Nicolas Roche <roche@adacore.com>
* gnat_rm.texi: Minor editing.
2011-08-04 Javier Miranda <miranda@adacore.com>
* bindgen.adb (Gen_Adafinal_Ada): Do not differentiate the main case
and the library case for VM targets.
(Gen_Adainit_Ada): Likewise.
2011-08-04 Robert Dewar <dewar@adacore.com>
* g-altive.ads: Minor comment updates.
* prj-nmsc.adb: Minor reformatting.
2011-08-04 Javier Miranda <miranda@adacore.com>
* opt.ads
(Normalize_Scalars_Config): Value of the configuration switch set by
pragma Normalize_Scalars when it appears in the gnat.adc file.
(Normalize_Scalars): New field for record Config_Switches_Type. Used
to save and restore settings of this pragma.
* opt.adb
(Register_Opt_Config_Switches, Save_Opt_Config_Switches,
Restore_Opt_Config_Switches): Add missing support for Normalize_Scalars.
2011-08-04 Vincent Celier <celier@adacore.com>
* gnat_ugn.texi: Document gnatlink options -M and -M=mapfile
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177360 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ada/ChangeLog | 35 | ||||
-rw-r--r-- | gcc/ada/bindgen.adb | 21 | ||||
-rw-r--r-- | gcc/ada/g-altive.ads | 15 | ||||
-rw-r--r-- | gcc/ada/gnat_rm.texi | 2 | ||||
-rw-r--r-- | gcc/ada/gnat_ugn.texi | 8 | ||||
-rw-r--r-- | gcc/ada/opt.adb | 6 | ||||
-rw-r--r-- | gcc/ada/opt.ads | 8 | ||||
-rw-r--r-- | gcc/ada/prj-nmsc.adb | 2 | ||||
-rw-r--r-- | gcc/ada/projects.texi | 7 |
9 files changed, 84 insertions, 20 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index ec8a3255e3e..9d287ca86fe 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,38 @@ +2011-08-04 Emmanuel Briot <briot@adacore.com> + + * projects.texi: Added documentation for the IDE'Gnat project file + attribute. + +2011-08-04 Nicolas Roche <roche@adacore.com> + + * gnat_rm.texi: Minor editing. + +2011-08-04 Javier Miranda <miranda@adacore.com> + + * bindgen.adb (Gen_Adafinal_Ada): Do not differentiate the main case + and the library case for VM targets. + (Gen_Adainit_Ada): Likewise. + +2011-08-04 Robert Dewar <dewar@adacore.com> + + * g-altive.ads: Minor comment updates. + * prj-nmsc.adb: Minor reformatting. + +2011-08-04 Javier Miranda <miranda@adacore.com> + + * opt.ads + (Normalize_Scalars_Config): Value of the configuration switch set by + pragma Normalize_Scalars when it appears in the gnat.adc file. + (Normalize_Scalars): New field for record Config_Switches_Type. Used + to save and restore settings of this pragma. + * opt.adb + (Register_Opt_Config_Switches, Save_Opt_Config_Switches, + Restore_Opt_Config_Switches): Add missing support for Normalize_Scalars. + +2011-08-04 Vincent Celier <celier@adacore.com> + + * gnat_ugn.texi: Document gnatlink options -M and -M=mapfile + 2011-08-04 Arnaud Charlet <charlet@adacore.com> * makeutl.adb: Minor reformatting. diff --git a/gcc/ada/bindgen.adb b/gcc/ada/bindgen.adb index 893ff131a68..58636541215 100644 --- a/gcc/ada/bindgen.adb +++ b/gcc/ada/bindgen.adb @@ -428,7 +428,7 @@ package body Bindgen is begin WBI (" procedure " & Ada_Final_Name.all & " is"); - if Bind_Main_Program and then VM_Target = No_VM then + if VM_Target = No_VM and then Bind_Main_Program then WBI (" procedure s_stalib_adafinal;"); Set_String (" pragma Import (C, s_stalib_adafinal, "); Set_String ("""system__standard_library__adafinal"");"); @@ -441,18 +441,18 @@ package body Bindgen is WBI (" end if;"); WBI (" Is_Elaborated := False;"); - if not Bind_Main_Program then - if Lib_Final_Built then + -- On non-virtual machine targets, finalization is done differently + -- depending on whether this is the main program or a library. + + if VM_Target = No_VM then + if Bind_Main_Program then + WBI (" s_stalib_adafinal;"); + elsif Lib_Final_Built then WBI (" finalize_library;"); else WBI (" null;"); end if; - -- Main program case - - elsif VM_Target = No_VM then - WBI (" s_stalib_adafinal;"); - -- Pragma Import C cannot be used on virtual machine targets, therefore -- call the runtime finalization routine directly. @@ -882,11 +882,12 @@ package body Bindgen is WBI (" Initialize_Stack_Limit;"); end if; - -- In the main program case, attach finalize_library to the soft link. + -- On virtual machine targets, or on non-virtual machine ones if this + -- is the main program case, attach finalize_library to the soft link. -- Do it only when not using a restricted run time, in which case tasks -- are non-terminating, so we do not want library-level finalization. - if Bind_Main_Program + if (VM_Target /= No_VM or else Bind_Main_Program) and then not Configurable_Run_Time_On_Target and then not Suppress_Standard_Library_On_Target then diff --git a/gcc/ada/g-altive.ads b/gcc/ada/g-altive.ads index 9ce80df3f06..27b991503b6 100644 --- a/gcc/ada/g-altive.ads +++ b/gcc/ada/g-altive.ads @@ -46,13 +46,14 @@ -- and instruction set. -- These documents, as well as a number of others of general interest on the --- AltiVec technology, are available from the Motorola/AltiVec Web site at +-- AltiVec technology, are available from the Motorola/AltiVec Web site at: -- http://www.freescale.com/altivec -- The binding interface is structured to allow alternate implementations: -- for real AltiVec capable targets, and for other targets. In the latter --- case, everything is emulated in software. We refer to the two versions as: +-- case, everything is emulated in software. The two versions are referred +-- to as: -- o The Hard binding for AltiVec capable targets (with the appropriate -- hardware support and corresponding instruction set) @@ -60,12 +61,12 @@ -- o The Soft binding for other targets (with the low level primitives -- emulated in software). --- We also offer interfaces not strictly part of the base AltiVec API, such --- as vector conversions to/from array representations, which are of interest --- for client applications (e.g. for vector initialization purposes) and may --- also be used as implementation facilities. +-- In addition, interfaces that are not strictly part of the base AltiVec API +-- are provided, such as vector conversions to and from array representations, +-- which are of interest for client applications (e.g. for vector +-- initialization purposes). --- Only the soft binding is available today. +-- Only the soft binding is available today ----------------------------------------- -- General package architecture survey -- diff --git a/gcc/ada/gnat_rm.texi b/gcc/ada/gnat_rm.texi index 41436d7d038..2464fc4b03d 100644 --- a/gcc/ada/gnat_rm.texi +++ b/gcc/ada/gnat_rm.texi @@ -4277,8 +4277,8 @@ packages: @item No_Dependence => Ada.Execution_Time.Timers @item No_Dependence => Ada.Task_Attributes @item No_Dependence => System.Multiprocessors.Dispatching_Domains - @end table + @noindent This set of configuration pragmas and restrictions correspond to the diff --git a/gcc/ada/gnat_ugn.texi b/gcc/ada/gnat_ugn.texi index 69bc2750bc5..1d87f4aebd9 100644 --- a/gcc/ada/gnat_ugn.texi +++ b/gcc/ada/gnat_ugn.texi @@ -9141,6 +9141,14 @@ when multiple versions of the GNAT compiler are available. for further details. You would normally use the @option{-b} or @option{-V} switch instead. +@item -M +When linking an executable, create a map file. The name of the map file +has the same name as the executable with extension ".map". + +@item -M=mapfile +When linking an executable, create a map file. The name of the map file is +"mapfile". + @item --GCC=@var{compiler_name} @cindex @option{--GCC=compiler_name} (@command{gnatlink}) Program used for compiling the binder file. The default is diff --git a/gcc/ada/opt.adb b/gcc/ada/opt.adb index 0fea77d7447..4b66c34b5bf 100644 --- a/gcc/ada/opt.adb +++ b/gcc/ada/opt.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 1992-2010, Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2011, 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- -- @@ -59,6 +59,7 @@ package body Opt is Fast_Math_Config := Fast_Math; Init_Or_Norm_Scalars_Config := Init_Or_Norm_Scalars; Initialize_Scalars_Config := Initialize_Scalars; + Normalize_Scalars_Config := Normalize_Scalars; Optimize_Alignment_Config := Optimize_Alignment; Persistent_BSS_Mode_Config := Persistent_BSS_Mode; Polling_Required_Config := Polling_Required; @@ -93,6 +94,7 @@ package body Opt is Fast_Math := Save.Fast_Math; Init_Or_Norm_Scalars := Save.Init_Or_Norm_Scalars; Initialize_Scalars := Save.Initialize_Scalars; + Normalize_Scalars := Save.Normalize_Scalars; Optimize_Alignment := Save.Optimize_Alignment; Optimize_Alignment_Local := Save.Optimize_Alignment_Local; Persistent_BSS_Mode := Save.Persistent_BSS_Mode; @@ -122,6 +124,7 @@ package body Opt is Save.Fast_Math := Fast_Math; Save.Init_Or_Norm_Scalars := Init_Or_Norm_Scalars; Save.Initialize_Scalars := Initialize_Scalars; + Save.Normalize_Scalars := Normalize_Scalars; Save.Optimize_Alignment := Optimize_Alignment; Save.Optimize_Alignment_Local := Optimize_Alignment_Local; Save.Persistent_BSS_Mode := Persistent_BSS_Mode; @@ -189,6 +192,7 @@ package body Opt is Fast_Math := Fast_Math_Config; Init_Or_Norm_Scalars := Init_Or_Norm_Scalars_Config; Initialize_Scalars := Initialize_Scalars_Config; + Normalize_Scalars := Normalize_Scalars_Config; Optimize_Alignment := Optimize_Alignment_Config; Optimize_Alignment_Local := False; Persistent_BSS_Mode := Persistent_BSS_Mode_Config; diff --git a/gcc/ada/opt.ads b/gcc/ada/opt.ads index 0eb44ec7aab..563e57804c1 100644 --- a/gcc/ada/opt.ads +++ b/gcc/ada/opt.ads @@ -1730,6 +1730,13 @@ package Opt is -- This switch is not set when the pragma appears ahead of a given -- unit, so it does not affect the compilation of other units. + Normalize_Scalars_Config : Boolean; + -- GNAT + -- This is the value of the configuration switch that is set by the + -- pragma Normalize_Scalars when it appears in the gnat.adc file. + -- This switch is not set when the pragma appears ahead of a given + -- unit, so it does not affect the compilation of other units. + Optimize_Alignment_Config : Character; -- GNAT -- This is the value of the configuration switch that controls the @@ -1911,6 +1918,7 @@ private Fast_Math : Boolean; Init_Or_Norm_Scalars : Boolean; Initialize_Scalars : Boolean; + Normalize_Scalars : Boolean; Optimize_Alignment : Character; Optimize_Alignment_Local : Boolean; Persistent_BSS_Mode : Boolean; diff --git a/gcc/ada/prj-nmsc.adb b/gcc/ada/prj-nmsc.adb index e5bc2b3196b..a75ebfb8fdc 100644 --- a/gcc/ada/prj-nmsc.adb +++ b/gcc/ada/prj-nmsc.adb @@ -592,7 +592,7 @@ package body Prj.Nmsc is -- For instance a suffix "configure.in" must match a file with the -- same name. To avoid dummy cases, though, a suffix starting with -- '.' requires a file that is at least one character longer ('.cpp' - -- should not match a file with the same name) + -- should not match a file with the same name). if Suf (Suf'First) = '.' then Min_Prefix_Length := 1; diff --git a/gcc/ada/projects.texi b/gcc/ada/projects.texi index 1ca76d2d62d..f5cc8ae71dc 100644 --- a/gcc/ada/projects.texi +++ b/gcc/ada/projects.texi @@ -3393,6 +3393,7 @@ system (file). The text is between brackets ([]) if the index is optional. @item Compiler_Command @tab string @tab IDE @tab insensitive (language) @item Debugger_Command @tab string @tab IDE @tab - @item Gnatlist @tab string @tab IDE @tab - +@item Gnat @tab string @tab IDE @tab - @item VCS_Kind @tab string @tab IDE @tab - @item VCS_File_Check @tab string @tab IDE @tab - @item VCS_Log_Check @tab string @tab IDE @tab - @@ -4382,11 +4383,17 @@ value is a list of switches to use when invoking that tool. This is a simple attribute. Its value is a string that specifies the name of the @command{gnatls} utility to be used to retrieve information about the predefined path; e.g., @code{"gnatls"}, @code{"powerpc-wrs-vxworks-gnatls"}. + @item VCS_Kind This is a simple attribute. Its value is a string used to specify the Version Control System (VCS) to be used for this project, e.g.@: CVS, RCS ClearCase or Perforce. +@item Gnat +This is a simple attribute. Its value is a string that specifies the name +of the @command{gnat} utility to be used when executing various tools from +GPS, in particular @code{"gnat pp"}, @code{"gnat stub"},@dots{} + @item VCS_File_Check This is a simple attribute. Its value is a string that specifies the command used by the VCS to check the validity of a file, either |