Commit f5fc5b9d by Arnaud Charlet

[multiple changes]

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

From-SVN: r177360
parent 0c4683cf
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> 2011-08-04 Arnaud Charlet <charlet@adacore.com>
* makeutl.adb: Minor reformatting. * makeutl.adb: Minor reformatting.
......
...@@ -428,7 +428,7 @@ package body Bindgen is ...@@ -428,7 +428,7 @@ package body Bindgen is
begin begin
WBI (" procedure " & Ada_Final_Name.all & " is"); 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;"); WBI (" procedure s_stalib_adafinal;");
Set_String (" pragma Import (C, s_stalib_adafinal, "); Set_String (" pragma Import (C, s_stalib_adafinal, ");
Set_String ("""system__standard_library__adafinal"");"); Set_String ("""system__standard_library__adafinal"");");
...@@ -441,18 +441,18 @@ package body Bindgen is ...@@ -441,18 +441,18 @@ package body Bindgen is
WBI (" end if;"); WBI (" end if;");
WBI (" Is_Elaborated := False;"); WBI (" Is_Elaborated := False;");
if not Bind_Main_Program then -- On non-virtual machine targets, finalization is done differently
if Lib_Final_Built then -- 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;"); WBI (" finalize_library;");
else else
WBI (" null;"); WBI (" null;");
end if; 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 -- Pragma Import C cannot be used on virtual machine targets, therefore
-- call the runtime finalization routine directly. -- call the runtime finalization routine directly.
...@@ -882,11 +882,12 @@ package body Bindgen is ...@@ -882,11 +882,12 @@ package body Bindgen is
WBI (" Initialize_Stack_Limit;"); WBI (" Initialize_Stack_Limit;");
end if; 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 -- 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. -- 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 Configurable_Run_Time_On_Target
and then not Suppress_Standard_Library_On_Target and then not Suppress_Standard_Library_On_Target
then then
......
...@@ -46,13 +46,14 @@ ...@@ -46,13 +46,14 @@
-- and instruction set. -- and instruction set.
-- These documents, as well as a number of others of general interest on the -- 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 -- http://www.freescale.com/altivec
-- The binding interface is structured to allow alternate implementations: -- The binding interface is structured to allow alternate implementations:
-- for real AltiVec capable targets, and for other targets. In the latter -- 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 -- o The Hard binding for AltiVec capable targets (with the appropriate
-- hardware support and corresponding instruction set) -- hardware support and corresponding instruction set)
...@@ -60,12 +61,12 @@ ...@@ -60,12 +61,12 @@
-- o The Soft binding for other targets (with the low level primitives -- o The Soft binding for other targets (with the low level primitives
-- emulated in software). -- emulated in software).
-- We also offer interfaces not strictly part of the base AltiVec API, such -- In addition, interfaces that are not strictly part of the base AltiVec API
-- as vector conversions to/from array representations, which are of interest -- are provided, such as vector conversions to and from array representations,
-- for client applications (e.g. for vector initialization purposes) and may -- which are of interest for client applications (e.g. for vector
-- also be used as implementation facilities. -- initialization purposes).
-- Only the soft binding is available today. -- Only the soft binding is available today
----------------------------------------- -----------------------------------------
-- General package architecture survey -- -- General package architecture survey --
......
...@@ -4277,8 +4277,8 @@ packages: ...@@ -4277,8 +4277,8 @@ packages:
@item No_Dependence => Ada.Execution_Time.Timers @item No_Dependence => Ada.Execution_Time.Timers
@item No_Dependence => Ada.Task_Attributes @item No_Dependence => Ada.Task_Attributes
@item No_Dependence => System.Multiprocessors.Dispatching_Domains @item No_Dependence => System.Multiprocessors.Dispatching_Domains
@end table @end table
@noindent @noindent
This set of configuration pragmas and restrictions correspond to the This set of configuration pragmas and restrictions correspond to the
......
...@@ -9141,6 +9141,14 @@ when multiple versions of the GNAT compiler are available. ...@@ -9141,6 +9141,14 @@ when multiple versions of the GNAT compiler are available.
for further details. You would normally use the @option{-b} or for further details. You would normally use the @option{-b} or
@option{-V} switch instead. @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} @item --GCC=@var{compiler_name}
@cindex @option{--GCC=compiler_name} (@command{gnatlink}) @cindex @option{--GCC=compiler_name} (@command{gnatlink})
Program used for compiling the binder file. The default is Program used for compiling the binder file. The default is
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- 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 -- -- 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- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -59,6 +59,7 @@ package body Opt is ...@@ -59,6 +59,7 @@ package body Opt is
Fast_Math_Config := Fast_Math; Fast_Math_Config := Fast_Math;
Init_Or_Norm_Scalars_Config := Init_Or_Norm_Scalars; Init_Or_Norm_Scalars_Config := Init_Or_Norm_Scalars;
Initialize_Scalars_Config := Initialize_Scalars; Initialize_Scalars_Config := Initialize_Scalars;
Normalize_Scalars_Config := Normalize_Scalars;
Optimize_Alignment_Config := Optimize_Alignment; Optimize_Alignment_Config := Optimize_Alignment;
Persistent_BSS_Mode_Config := Persistent_BSS_Mode; Persistent_BSS_Mode_Config := Persistent_BSS_Mode;
Polling_Required_Config := Polling_Required; Polling_Required_Config := Polling_Required;
...@@ -93,6 +94,7 @@ package body Opt is ...@@ -93,6 +94,7 @@ package body Opt is
Fast_Math := Save.Fast_Math; Fast_Math := Save.Fast_Math;
Init_Or_Norm_Scalars := Save.Init_Or_Norm_Scalars; Init_Or_Norm_Scalars := Save.Init_Or_Norm_Scalars;
Initialize_Scalars := Save.Initialize_Scalars; Initialize_Scalars := Save.Initialize_Scalars;
Normalize_Scalars := Save.Normalize_Scalars;
Optimize_Alignment := Save.Optimize_Alignment; Optimize_Alignment := Save.Optimize_Alignment;
Optimize_Alignment_Local := Save.Optimize_Alignment_Local; Optimize_Alignment_Local := Save.Optimize_Alignment_Local;
Persistent_BSS_Mode := Save.Persistent_BSS_Mode; Persistent_BSS_Mode := Save.Persistent_BSS_Mode;
...@@ -122,6 +124,7 @@ package body Opt is ...@@ -122,6 +124,7 @@ package body Opt is
Save.Fast_Math := Fast_Math; Save.Fast_Math := Fast_Math;
Save.Init_Or_Norm_Scalars := Init_Or_Norm_Scalars; Save.Init_Or_Norm_Scalars := Init_Or_Norm_Scalars;
Save.Initialize_Scalars := Initialize_Scalars; Save.Initialize_Scalars := Initialize_Scalars;
Save.Normalize_Scalars := Normalize_Scalars;
Save.Optimize_Alignment := Optimize_Alignment; Save.Optimize_Alignment := Optimize_Alignment;
Save.Optimize_Alignment_Local := Optimize_Alignment_Local; Save.Optimize_Alignment_Local := Optimize_Alignment_Local;
Save.Persistent_BSS_Mode := Persistent_BSS_Mode; Save.Persistent_BSS_Mode := Persistent_BSS_Mode;
...@@ -189,6 +192,7 @@ package body Opt is ...@@ -189,6 +192,7 @@ package body Opt is
Fast_Math := Fast_Math_Config; Fast_Math := Fast_Math_Config;
Init_Or_Norm_Scalars := Init_Or_Norm_Scalars_Config; Init_Or_Norm_Scalars := Init_Or_Norm_Scalars_Config;
Initialize_Scalars := Initialize_Scalars_Config; Initialize_Scalars := Initialize_Scalars_Config;
Normalize_Scalars := Normalize_Scalars_Config;
Optimize_Alignment := Optimize_Alignment_Config; Optimize_Alignment := Optimize_Alignment_Config;
Optimize_Alignment_Local := False; Optimize_Alignment_Local := False;
Persistent_BSS_Mode := Persistent_BSS_Mode_Config; Persistent_BSS_Mode := Persistent_BSS_Mode_Config;
......
...@@ -1730,6 +1730,13 @@ package Opt is ...@@ -1730,6 +1730,13 @@ package Opt is
-- This switch is not set when the pragma appears ahead of a given -- This switch is not set when the pragma appears ahead of a given
-- unit, so it does not affect the compilation of other units. -- 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; Optimize_Alignment_Config : Character;
-- GNAT -- GNAT
-- This is the value of the configuration switch that controls the -- This is the value of the configuration switch that controls the
...@@ -1911,6 +1918,7 @@ private ...@@ -1911,6 +1918,7 @@ private
Fast_Math : Boolean; Fast_Math : Boolean;
Init_Or_Norm_Scalars : Boolean; Init_Or_Norm_Scalars : Boolean;
Initialize_Scalars : Boolean; Initialize_Scalars : Boolean;
Normalize_Scalars : Boolean;
Optimize_Alignment : Character; Optimize_Alignment : Character;
Optimize_Alignment_Local : Boolean; Optimize_Alignment_Local : Boolean;
Persistent_BSS_Mode : Boolean; Persistent_BSS_Mode : Boolean;
......
...@@ -592,7 +592,7 @@ package body Prj.Nmsc is ...@@ -592,7 +592,7 @@ package body Prj.Nmsc is
-- For instance a suffix "configure.in" must match a file with the -- For instance a suffix "configure.in" must match a file with the
-- same name. To avoid dummy cases, though, a suffix starting with -- same name. To avoid dummy cases, though, a suffix starting with
-- '.' requires a file that is at least one character longer ('.cpp' -- '.' 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 if Suf (Suf'First) = '.' then
Min_Prefix_Length := 1; Min_Prefix_Length := 1;
......
...@@ -3393,6 +3393,7 @@ system (file). The text is between brackets ([]) if the index is optional. ...@@ -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 Compiler_Command @tab string @tab IDE @tab insensitive (language)
@item Debugger_Command @tab string @tab IDE @tab - @item Debugger_Command @tab string @tab IDE @tab -
@item Gnatlist @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_Kind @tab string @tab IDE @tab -
@item VCS_File_Check @tab string @tab IDE @tab - @item VCS_File_Check @tab string @tab IDE @tab -
@item VCS_Log_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. ...@@ -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 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 of the @command{gnatls} utility to be used to retrieve information about the
predefined path; e.g., @code{"gnatls"}, @code{"powerpc-wrs-vxworks-gnatls"}. predefined path; e.g., @code{"gnatls"}, @code{"powerpc-wrs-vxworks-gnatls"}.
@item VCS_Kind @item VCS_Kind
This is a simple attribute. Its value is a string used to specify the 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 Version Control System (VCS) to be used for this project, e.g.@: CVS, RCS
ClearCase or Perforce. 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 @item VCS_File_Check
This is a simple attribute. Its value is a string that specifies the 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 command used by the VCS to check the validity of a file, either
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment