charlet [Tue, 2 Aug 2011 09:28:26 +0000 (09:28 +0000)]
2011-08-02 Yannick Moy <moy@adacore.com>
* sem_aggr.adb (Resolve_Aggregate): Fix thinko.
2011-08-02 Robert Dewar <dewar@adacore.com>
* impunit.adb: Add comment.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177108
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Tue, 2 Aug 2011 09:25:38 +0000 (09:25 +0000)]
Code clean up.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177107
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Tue, 2 Aug 2011 09:24:53 +0000 (09:24 +0000)]
Minor reformatting.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177106
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Tue, 2 Aug 2011 09:24:25 +0000 (09:24 +0000)]
Minor reformatting.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177105
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Tue, 2 Aug 2011 09:23:40 +0000 (09:23 +0000)]
* sem_ch3.adb (Analyze_Full_Type_Declaration): move test that a type
has a discriminant specification so that it does not include the case
of derived types
(Derived_Type_Declaration): move here the test that a derived type has a
discriminant specification
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177104
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Tue, 2 Aug 2011 09:21:47 +0000 (09:21 +0000)]
2011-08-02 Yannick Moy <moy@adacore.com>
* sem_aggr.adb (Check_Qualified_Aggregate): new procedure which checks
qualification of aggregates in formal mode
(Is_Top_Level_Aggregate): returns True for an aggregate not contained in
another aggregate
(Resolve_Aggregate): complete the test that an aggregate is adequately
qualified in formal mode
2011-08-02 Pascal Obry <obry@adacore.com>
* make.adb, bindgen.adb, gnatbind.adb: Minor reformatting.
* mlib-prj.adb: Supress warning when compiling binder generated file.
(Build_Library): Supress all warnings when compiling the binder
generated file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177103
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Tue, 2 Aug 2011 09:17:46 +0000 (09:17 +0000)]
2011-08-02 Yannick Moy <moy@adacore.com>
* errout.adb, errout.ads (Check_Formal_Restriction): move procedure
from here...
* restrict.adb, restrict.ads (Check_Formal_Restriction): ...to here
* sem_aggr.adb, sem_ch5.adb, sem_util.adb:
Add with/use clauses to make Check_Formal_Restriction visible
2011-08-02 Ed Schonberg <schonberg@adacore.com>
* sem_ch12.adb (Check_Generic_Actuals): handle properly actual
in-parameters when type of the generic formal is private in the generic
spec and non-private in the body.
2011-08-02 Claire Dross <dross@adacore.com>
* a-cfdlli.adb, a-cfdlli.ads, a-cfhase.adb, a-cfhase.ads, a-cfhama.adb,
a-cfhama.ads, a-cforse.adb, a-cforse.ads, a-cforma.adb, a-cforma.ads,
a-cofove.adb, a-cofove.ads: New files implementing formal containers.
* impunit.adb, Makefile.rtl: Take new files into account.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177102
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Tue, 2 Aug 2011 09:09:07 +0000 (09:09 +0000)]
2011-08-02 Vincent Celier <celier@adacore.com>
* prj-nmsc.adb (Check_Library_Attributes): For virtual library project,
inherit library kind.
2011-08-02 Robert Dewar <dewar@adacore.com>
* sem_aggr.adb, sem_ch3.adb, sem_ch5.adb, make.adb, sem_res.adb,
sem_attr.adb, sem_ch6.adb, sem_ch8.adb: Minor reformatting.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177101
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Tue, 2 Aug 2011 09:07:35 +0000 (09:07 +0000)]
2011-08-02 Yannick Moy <moy@adacore.com>
* sem_aggr.adb (Resolve_Aggregate): disable incorrectly placed check in
formal mode
* sem_util.adb (Matching_Static_Array_Bounds): proper detection of
matching static array bounds, taking into account the special case of
string literals
* sem_ch3.adb: Typo in comment.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177100
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Tue, 2 Aug 2011 09:05:58 +0000 (09:05 +0000)]
2011-08-02 Yannick Moy <moy@adacore.com>
* errout.adb, errout.ads (Check_Formal_Restriction): new procedure
which issues an error in formal mode if its argument node is originally
from source
* sem_ch3.adb (Analyze_Full_Type_Declaration): move test that a type
has a discriminant specification so that it does not include the case
of derived types
(Derived_Type_Declaration): move here the test that a derived type has a
discriminant specification
* sem_aggr.adb (Resolve_Record_Aggregate): test the presence of the
first element of a component association before accessing its choices
(presence of component association is not enough)
* exp_ch6.adb (Expand_N_Subprogram_Declaration): test if a subprogram
declaration is a library item before accessing the next element in a
list, as library items are not member of lists
* sem_attr.adb, sem_ch11.adb, sem_ch4.adb, sem_ch5.adb, sem_ch6.adb,
sem_ch8.adb, sem_ch9.adb, sem_res.adb, sem_util.adb: use
Check_Formal_Restriction whenever possible.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177099
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Tue, 2 Aug 2011 09:03:13 +0000 (09:03 +0000)]
2011-08-02 Ed Schonberg <schonberg@adacore.com>
* sem_ch3.adb (Find_Type_Of_Object): In ASIS mode, create an itype
reference when needed.
2011-08-02 Bob Duff <duff@adacore.com>
* gnat_ugn.texi: Fix typo.
2011-08-02 Vincent Celier <celier@adacore.com>
* make.adb (Gnatmake): Use MLib.Tgt.Archive_Ext as the extension of
archive file name. Do not use the full path name of archives for Open
VMS.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177097
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Tue, 2 Aug 2011 09:01:37 +0000 (09:01 +0000)]
PR target/47766
* doc/md.texi (stack_protect_set): The pattern moves ptr_mode value.
(stack_protect_test): The pattern compares ptr_mode value.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177096
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Tue, 2 Aug 2011 08:58:37 +0000 (08:58 +0000)]
2011-08-02 Robert Dewar <dewar@adacore.com>
* sem_ch12.adb, sem_ch11.adb: New calling sequence for
Analyze_Aspect_Specifications
* sem_ch13.adb
(Analyze_Aspect_Specifications): New handling for boolean aspects
* sem_ch13.ads (Analyze_Aspect_Specifications): New calling sequence
* sem_ch3.adb, sem_ch6.adb, sem_ch7.adb, sem_ch9.adb: New calling
sequence for Analyze_Aspect_Specifications
* sem_prag.adb (Analyze_Pragma): Remove use of Aspect_Cancel entirely
* sinfo.ads, sinfo.adb (Aspect_Cancel): Remove, no longer used
2011-08-02 Robert Dewar <dewar@adacore.com>
* freeze.adb (Freeze_Entity): Remove handling of delayed boolean
aspects, since these no longer exist.
2011-08-02 Robert Dewar <dewar@adacore.com>
* par-ch13.adb (Aspect_Specifications_Present): Always return false on
semicolon, do not try to see if there are aspects following it.
* par-ch3.adb (P_Declarative_Items): Better message for unexpected
aspect spec.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177095
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Tue, 2 Aug 2011 08:19:12 +0000 (08:19 +0000)]
2011-08-02 Robert Dewar <dewar@adacore.com>
* sem_ch8.adb, aspects.ads: Minor reformatting.
2011-08-02 Eric Botcazou <ebotcazou@adacore.com>
* sem_ch13.ads (Analyze_Aspect_Specification): Add pragma Inline.
* sem_ch13.adb (Analyze_Non_Null_Aspect_Specifications): New procedure
extracted from...
(Analyze_Aspect_Specifications): ...here. Call above procedure.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177094
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Tue, 2 Aug 2011 08:16:45 +0000 (08:16 +0000)]
2011-08-02 Yannick Moy <moy@adacore.com>
* exp_ch6.adb (Expand_N_Subprogram_Declaration): issue error in formal
mode on subprogram declaration outside of package specification, unless
it is followed by a pragma Import
* sem_ch3.adb (Access_Definition, Access_Subprogram_Declaration,
Access_Type_Declaration): issue error in formal mode on access type
(Analyze_Incomplete_Type_Decl): issue error in formal mode on
incomplete type
(Analyze_Object_Declaration): issue error in formal mode on object
declaration which does not respect SPARK restrictions
(Analyze_Subtype_Declaration): issue error in formal mode on subtype
declaration which does not respect SPARK restrictions
(Constrain_Decimal, Constrain_Float, Constrain_Ordinary_Fixed): issue
error in formal mode on digits or delta constraint
(Decimal_Fixed_Point_Type_Declaration): issue error in formal mode on
decimal fixed point type
(Derived_Type_Declaration): issue error in formal mode on derived type
other than type extensions of tagged record types
* sem_ch6.adb (Process_Formals): remove check in formal mode, redundant
with check on access definition
* sem_ch9.adb (Analyze_Protected_Definition): issue error in formal
mode on protected definition.
(Analyze_Task_Definition): issue error in formal mode on task definition
2011-08-02 Robert Dewar <dewar@adacore.com>
* make.adb, sem_ch8.adb, s-inmaop-vxworks.adb: Minor reformatting.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177093
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Tue, 2 Aug 2011 08:13:21 +0000 (08:13 +0000)]
2011-08-02 Javier Miranda <miranda@adacore.com>
* sem_ch6.adb (Can_Override_Operator): New function.
(Verify_Overriding_Indicator): Add missing code to check overriding
indicator in operators. Fixes regression.
(Check_Overriding_Indicator): Minor reformating after replacing the
code that evaluates if the subprogram can override an operator by
invocations to the above new function.
* einfo.adb
(Write_Field26_Name): Add missing code to ensure that, following
the documentation in einfo.ads, this field is not shown as attribute
"Static_Initialization" on non-dispatching functions.
2011-08-02 Jose Ruiz <ruiz@adacore.com>
* sem_res.adb (Resolve_Call): A call to
Ada.Real_Time.Timing_Events.Set_Handler violates restriction
No_Relative_Delay (AI-0211) only when it sets a relative timing event,
i.e., when the second parameter is of type Time_Span.
2011-08-02 Vincent Celier <celier@adacore.com>
* make.adb (Gnatmake): use <library dir>/lib<library name>.a to link
with an archive instead of -L<library dir> -l<library name>.
2011-08-02 Ed Schonberg <schonberg@adacore.com>
* sem_ch8.adb (Analyze_Use_Type): If the clause is being re-analyzed,
mark the base types In_Use in addition to making the operations
use_visible.
2011-08-02 Ed Falis <falis@adacore.com>
* init.c: add and setup __gnat_signal_mask for the exception signals
* s-inmaop-vxworks.adb: new file.
* s-intman-vxworks.adb: remove unnecessary initializations and
simplify remaining
* s-intman-vxworks.ads: remove unnecessary variable
* s-taprop-vxworks.adb: simplify signal initialization
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177092
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Tue, 2 Aug 2011 08:06:18 +0000 (08:06 +0000)]
2011-08-02 Robert Dewar <dewar@adacore.com>
* sem_ch8.adb: Minor code reorganization, comment updates.
2011-08-02 Robert Dewar <dewar@adacore.com>
* sem_res.adb (Matching_Static_Array_Bounds): Moved to Sem_Util
* sem_util.ads, sem_util.adb (Matching_Static_Array_Bounds): Moved
here from Sem_Res.
(Matching_Static_Array_Bounds): Use Is_Ok_Static_Expression
(Matching_Static_Array_Bounds): Moved here from Sem_Res
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177091
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Tue, 2 Aug 2011 08:03:11 +0000 (08:03 +0000)]
2011-08-02 Ed Schonberg <schonberg@adacore.com>
* atree.h, atree.ads, atree.adb: New subprograms to manipulate Elist5.
* par_ch8.adb (P_Use_Type): initialize Used_Operations for node.
* sinfo.ads, sinfo.adb (Used_Operations): new attribute of
use_type_clauses, to handle more efficiently use_type and use_all_type
constructs.
* sem_ch8.adb: Rewrite Use_One_Type and End_Use_Type to handle the
Ada2012 Use_All_Type clause.
(Use_Class_Wide_Operations): new procedure.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177090
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Tue, 2 Aug 2011 07:53:29 +0000 (07:53 +0000)]
2011-08-02 Robert Dewar <dewar@adacore.com>
* exp_util.adb, par-ch10.adb, par-ch6.adb, sem.adb, sem_ch6.adb,
sem_ch6.ads, sinfo.adb, sinfo.ads, sprint.adb: Change parameterized
expression to expression function.
2011-08-02 Ed Schonberg <schonberg@adacore.com>
* sem_ch4.adb: transform simple Ada2012 membership into equality only
if types are compatible.
2011-08-02 Yannick Moy <moy@adacore.com>
* sem_res.adb (Matching_Static_Array_Bounds): new function which
returns True if its argument array types have same dimension and same
static bounds at each index.
(Resolve_Actuals): issue an error in formal mode on actuals passed as
OUT or IN OUT paramaters which are not view conversions in SPARK.
(Resolve_Arithmetic_Op): issue an error in formal mode on
multiplication or division with operands of fixed point types which are
not qualified or explicitly converted.
(Resolve_Comparison_Op): issue an error in formal mode on comparisons of
Boolean or array type (except String) operands.
(Resolve_Equality_Op): issue an error in formal mode on equality
operators for array types other than String with non-matching static
bounds.
(Resolve_Logical_Op): issue an error in formal mode on logical operators
for array types with non-matching static bounds. Factorize the code in
Matching_Static_Array_Bounds.
(Resolve_Qualified_Expression): issue an error in formal mode on
qualified expressions for array types with non-matching static bounds.
(Resolve_Type_Conversion): issue an error in formal mode on type
conversion for array types with non-matching static bounds
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177089
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Tue, 2 Aug 2011 07:48:59 +0000 (07:48 +0000)]
2011-08-02 Robert Dewar <dewar@adacore.com>
* par-ch10.adb: Minor code reorganization (use Nkind_In).
2011-08-02 Ed Schonberg <schonberg@adacore.com>
* par-ch9.adb: save location of entry for proper error message.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177088
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Tue, 2 Aug 2011 07:46:39 +0000 (07:46 +0000)]
2011-08-02 Javier Miranda <miranda@adacore.com>
* sem_type.ads, sem_type.adb (Is_Ancestor): Addition of a new formal
(Use_Full_View) which permits this routine to climb through the
ancestors using the full-view of private parents.
* sem_util.adb (Collect_Interfaces_Info, Implements_Interface): Set
Use_Full_View to true in calls to Is_Ancestor.
* sem_disp.adb (Override_Dispatching_Operation): Set Use_Full_View to
true in call to Is_Ancestor.
* exp_ch3.adb (Build_Offset_To_Top_Functions, Initialize_Tag): Set
Use_Full_View to true in call to Is_Ancestor.
* exp_ch7.adb (Controller_Component): Set Use_Full_View to true in
call to Is_Ancestor.
* exp_ch4.adb (Expand_N_Type_Conversion, Tagged_Membership): Set
Use_Full_View to true in calls to Is_Ancestor.
* exp_disp.adb (Expand_Interface_Actuals, Make_Secondary_DT, Make_DT,
Make_Select_Specific_Data_Table, Register_Primitive,
Set_All_DT_Position): Set Use_Full_View to true in calls to Is_Ancestor.
* exp_intr.adb (Expand_Dispatching_Constructor_Call): Set Use_Full_View
to true in call to Is_Ancestor.
* exp_util.adb (Find_Interface_ADT, Find_Interface_Tag): Set
Use_Full_View to true in calls to Is_Ancestor.
* exp_cg.adb
(Write_Call_Info): Set Use_Full_View to true in call to Is_Ancestor.
(Write_Type_Info): Set Use_Full_View to true in call to Is_Ancestor.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177087
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Tue, 2 Aug 2011 07:42:46 +0000 (07:42 +0000)]
2011-08-02 Robert Dewar <dewar@adacore.com>
* gnat_rm.texi: Minor reformatting.
* sem_prag.adb: Minor reformatting.
2011-08-02 Tristan Gingold <gingold@adacore.com>
* vms_data.ads: Add VMS qualifier for -gnateP.
2011-08-02 Robert Dewar <dewar@adacore.com>
* par-ch13.adb (P_Aspect_Specification): New meaning of Decl = Empty
* par-ch7.adb (P_Package): Proper placement of aspects for package
decl/instantiation.
* par-endh.adb (Check_End): Ad Is_Sloc parameter
(End_Statements): Add Is_Sloc parameterr
* par.adb (P_Aspect_Specification): New meaning of Decl = Empty
(Check_End): Ad Is_Sloc parameter
(End_Statements): Add Is_Sloc parameterr
2011-08-02 Vincent Celier <celier@adacore.com>
* ug_words: Add VMS qualifier equivalent to -gnateP:
/SYMBOL_PREPROCESSING.
2011-08-02 Jose Ruiz <ruiz@adacore.com>
* gnat-style.texi: For hexadecimal numeric literals the typical
grouping of digits is 4 to represent 2 bytes.
A procedure spec which is split into several lines is indented two
characters.
2011-08-02 Yannick Moy <moy@adacore.com>
* exp_aggr.adb (Is_Others_Aggregate): move function to other unit.
* sem_aggr.adb, sem_aggr.ads (Is_Others_Aggregate): move function here
(Resolve_Aggregate): issue errors in formal modes when aggregate is not
properly qualified
(Resolve_Array_Aggregate): issue errors in formal modes on non-static
choice in array aggregate
(Resolve_Extension_Aggregate): issue errors in formal modes on subtype
mark as ancestor
(Resolve_Record_Aggregate): issue errors in formal modes on mixed
positional and named aggregate for record, or others in record
aggregate, or multiple choice in record aggregate
* sem_res.adb (Resolve_Logical_Op): issue errors in formal mode when
array operands to logical operations AND, OR and XOR do not have the
same static lower and higher bounds
* sem_ch5.adb, sinfo.ads: Correct typos in comments
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177086
138bc75d-0d04-0410-961f-
82ee72b054a4
amodra [Tue, 2 Aug 2011 05:12:37 +0000 (05:12 +0000)]
* config/rs6000/rs6000.c (rs6000_emit_prologue): Add REG_CFA_RESTORE
note for save_LR_around_toc_setup sequence.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177084
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Tue, 2 Aug 2011 00:31:07 +0000 (00:31 +0000)]
Replace long with long long on __lzcnt64.
2011-08-01 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/lzcntintrin.h (__lzcnt64): Replace long with
long long.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177081
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Tue, 2 Aug 2011 00:18:50 +0000 (00:18 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177080
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Mon, 1 Aug 2011 22:32:26 +0000 (22:32 +0000)]
Add x32 libstdc++ baseline_symbols.txt.
2011-08-01 H.J. Lu <hongjiu.lu@intel.com>
* config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Generated.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177076
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Mon, 1 Aug 2011 21:53:07 +0000 (21:53 +0000)]
2011-08-01 Sebastian Pop <sebastian.pop@amd.com>
Joseph Myers <joseph@codesourcery.com>
* Makefile.in (hwint.o): Depend on DIAGNOSTIC_CORE_H.
* hwint.c: Include diagnostic-core.h.
(abs_hwi): New.
(gcd): Moved here...
(pos_mul_hwi): New.
(mul_hwi): New.
(least_common_multiple): Moved here...
* hwint.h (gcd): ... from here.
(least_common_multiple): ... from here.
(HOST_WIDE_INT_MIN): New.
(HOST_WIDE_INT_MAX): New.
(abs_hwi): Declared.
(gcd): Declared.
(pos_mul_hwi): Declared.
(mul_hwi): Declared.
(least_common_multiple): Declared.
* omega.c (check_pos_mul): Removed.
(check_mul): Removed.
(omega_solve_geq): Use pos_mul_hwi instead of check_pos_mul and
mul_hwi instead of check_mul.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177075
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 1 Aug 2011 21:02:07 +0000 (21:02 +0000)]
PR c++/49932
gcc/cp/
* mangle.c (write_prefix): Handle decltype.
libiberty/
* cp-demangle.c (d_prefix): Handle decltype.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177074
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 1 Aug 2011 21:01:59 +0000 (21:01 +0000)]
PR c++/49924
* semantics.c (cxx_eval_vec_init_1): Fix logic.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177073
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Mon, 1 Aug 2011 19:35:43 +0000 (19:35 +0000)]
PR target/49881
* config/avr/avr.h (PUSH_ROUNDING): New.
* config/avr/avr.md (pushqi1): Rename from *pushqi.
(*pushhi, *pushsi, *pushsf): Remove.
(MPUSH): New mode iterator.
(push<MPUSH>1): New expander.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177071
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Mon, 1 Aug 2011 19:26:39 +0000 (19:26 +0000)]
2011-08-01 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/49813
* include/c_global/cmath (isinf): Remove workaround.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177070
138bc75d-0d04-0410-961f-
82ee72b054a4
aesok [Mon, 1 Aug 2011 19:08:34 +0000 (19:08 +0000)]
* config/mmix/mmix.h (PREFERRED_RELOAD_CLASS,
PREFERRED_OUTPUT_RELOAD_CLASS): Remove macro.
* config/mmix/mmix-protos.h (mmix_preferred_reload_class,
mmix_preferred_output_reload_class): Remove.
* config/mmix/mmix.c (mmix_preferred_reload_class,
mmix_preferred_output_reload_class): Make static. Change rclass
argument and return type to reg_class_t.
(TARGET_PREFERRED_RELOAD_CLASS,
TARGET_PREFERRED_OUTPUT_RELOAD_CLASS): Define.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177069
138bc75d-0d04-0410-961f-
82ee72b054a4
amylaar [Mon, 1 Aug 2011 18:30:29 +0000 (18:30 +0000)]
* mode-switching.c (optimize_mode_switching): Fix bug in MODE_AFTER
handling.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177068
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Mon, 1 Aug 2011 18:21:07 +0000 (18:21 +0000)]
Use ptr_mode for stack protector.
2011-08-01 H.J. Lu <hongjiu.lu@intel.com>
PR target/47766
* config/i386/i386.md (PTR): New.
(stack_protect_set: Check TARGET_LP64 instead of TARGET_64BIT.
(stack_protect_test): Likewise.
(stack_protect_set_<mode>): Replace ":P" with ":PTR".
(stack_tls_protect_set_<mode>): Likewise.
(stack_tls_protect_test_<mode>): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177067
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 1 Aug 2011 18:14:29 +0000 (18:14 +0000)]
PR c++/49813
* semantics.c (potential_constant_expression_1): Allow any builtin.
(morally_constexpr_builtin_function_p): Remove.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177066
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Mon, 1 Aug 2011 17:13:30 +0000 (17:13 +0000)]
PR target/49927
* config/i386/i386.c (ix86_address_subreg_operand): New.
(ix86_decompose_address): Use ix86_address_subreg_operand.
(ix86_legitimate_address_p): Do not assert that subregs satisfy
register_no_elim_operand in DImode.
testsuite/ChangeLog:
PR target/49927
* gcc.target/i386/pr49927.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177064
138bc75d-0d04-0410-961f-
82ee72b054a4
irar [Mon, 1 Aug 2011 16:58:20 +0000 (16:58 +0000)]
PR tree-optimization/49926
* tree-vect-loop.c (vect_is_slp_reduction): Check that a
statement in a chain doesn't have uses both inside and
outside the loop.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177063
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 16:16:24 +0000 (16:16 +0000)]
2011-08-01 Robert Dewar <dewar@adacore.com>
* sem_util.ads, sem_util.adb, sem_ch6.adb (Last_Source_Statement):
Replaces Last_Source_Node_In_Sequence.
* err_vars.ads (Error_Msg_Lang): 16 is OK, don't need 4K
* errout.adb (Set_Error_Msg_Lang): Takes arg with no parens, but stores
parens and blank in string (this was inconsistently implemented).
* errout.ads
(Set_Error_Msg_Lang): Takes arg with no parens, but stores parens and
blank in string (this was inconsistently implemented).
* gnat1drv.adb
(Set_Global_Switches): Set formal mode switches appropriately
* opt.ads, opt.adb: Formal mode is now global switches, more consistent
* par-prag.adb
(Analyze_Pragma, case SPARK_95): Set opt switches appropriately and
call Set_Error_Msg_Lang to set "spark" as language name.
* par.adb: Remove unnecessary call to set formal language for errout
* sem_prag.adb (P_Pragma, case SPARK_95): Set opt switches
appropriately and call Set_Error_Msg_Lang to set "spark" as language
name.
* sem_ch4.adb (Analyze_Concatenation_Operand): remove procedure and
calls to it, moved after resolution so that types are known
* sem_res.adb (Resolve_Op_Concat): issue an error in formal mode if
result of concatenation is not of type String
(Resolve_Op_Concat_Arg): issue an error in formal mode if an operand of
concatenation is not properly restricted
* gnat_rm.texi: Add doc on pragma Spark_95.
* gcc-interface/Makefile.in: Remove obsolete target pairs for
Interfaces.C.* on VMS. Remove s-parame-vms-restrict.ads.
* gcc-interface/Make-lang.in: Update dependencies.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177061
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 16:09:10 +0000 (16:09 +0000)]
2011-08-01 Javier Miranda <miranda@adacore.com>
* sem_disp.adb (Override_Dispatching_Operation): Enforce strictness of
condition that detects if the overridden operation must replace an
existing entity.
2011-08-01 Javier Miranda <miranda@adacore.com>
* exp_ch4.adb (Expand_N_Case_Expression): Propagate to the expanded
code declarations inserted by Insert_Actions in each alternative of the
N_Case_Expression node.
2011-08-01 Robert Dewar <dewar@adacore.com>
* sem_ch6.adb: Minor code reorganization.
* sem_util.adb: Minor reformatting.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177059
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 16:06:47 +0000 (16:06 +0000)]
2011-08-01 Pascal Obry <obry@adacore.com>
* prj-env.adb: Remove <prefix>/lib/gpr/<target> project search path.
* gnat_ugn.texi: Add documentation for VERSIONINFO Windows resource.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177058
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 16:05:30 +0000 (16:05 +0000)]
2011-08-01 Yannick Moy <moy@adacore.com>
* par-ch4.adb (P_Name): issue a syntax error in SPARK mode on character
literal or operator symbol which is prefixed
* sem_attr.adb (Analyze_Access_Attribute): issue an error in formal
mode on access attributes.
* sem_ch4.adb (Analyze_Concatenation_Operand): new procedure to check
that concatenation operands are properly restricted in formal mode
(Analyze_Concatenation, Analyze_Concatenation_Rest): call new procedure
Analyze_Concatenation_Operand. Issue an error in formal mode if the
result of the concatenation has a type different from String.
(Analyze_Conditional_Expression, Analyze_Explicit_Dereference,
Analyze_Quantified_Expression, Analyze_Slice,
Analyze_Null): issue an error in formal mode on unsupported constructs
* sem_ch5.adb
(Analyze_Block_Statement): only issue error on source block statement
* sem_util.ads, sem_util.adb (Last_Source_Node_In_Sequence): new
function which returns the last node in a list of nodes for which
Comes_From_Source returns True, if any
* sem_ch6.adb (Check_Missing_Return): minor refactoring to use
Last_Source_Node_In_Sequence
* sem_ch8.adb (Analyze_Exception_Renaming, Analyze_Generic_Renaming,
Analyze_Object_Renaming, Analyze_Use_Package): issue an error in formal
mode on unsupported constructs
* sem_ch9.adb Do not return after issuing error in formal mode, as the
rest of the actions may be needed later on since the error is marked as
not serious.
* sinfo.ads: Typos in comments.
2011-08-01 Pascal Obry <obry@adacore.com>
* projects.texi: Minor editing.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177057
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 16:02:10 +0000 (16:02 +0000)]
2011-08-01 Yannick Moy <moy@adacore.com>
* err_vars.ads (Error_Msg_Lang, Error_Msg_Langlen): new variables for
insertion character ~~
* errout.ads, errout.adb (Formal_Error_Msg_...): remove procedures
(Set_Error_Msg_Lang): new procedure which fixes the language for use
with insertion character ~~
(Set_Msg_Text): treat insertion character ~~
* par-ch4.adb, par-ch5.adb, par-endh.adb, sem_attr.adb, sem_ch11.adb,
sem_ch3.adb, sem_ch5.adb, sem_ch9.adb, sem_util.adb: Replace calls to
Formal_Error_Msg_... procedures by equivalent Error_Msg_...
procedures. Favor calls to Error_Msg_F(E) over Error_Msg_N(E). Make
errors related to the formal language restriction not serious
(insertion character |).
* par.adb (Par): set formal language for error messages if needed
* sem_ch6.adb (Check_Missing_Return): take into account possible
generated statements at the end of the function
* snames.ads-tmpl (Name_SPARK_95, Pragma_SPARK_95): new variable and
enumeration value to define a new pragma SPARK_95
* opt.ads, opt.adb (SPARK_Version_Type, SPARK_Version_Default,
SPARK_Version): new type and variables to store the SPARK version
(none by default).
(SPARK_Mode): return True when SPARK_Version is set
* par-prag.adb: Correct indentation
(Prag): take Pragma_SPARK_95 into account
* sem_prag.adb (Set_Mechanism_Value, Sig_Flags): take Pragma_SPARK_95
into account.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177056
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 15:59:50 +0000 (15:59 +0000)]
2011-08-01 Robert Dewar <dewar@adacore.com>
* sem_ch3.adb, sem_ch3.ads, sem_ch5.adb, prj-part.adb, par-ch4.adb,
sem_util.adb, sem_ch4.adb, sem_ch6.adb, sem_ch6.ads, sem_ch8.adb,
sem_ch8.ads, sem_ch13.ads, par-ch5.adb, prj-env.ads: Minor reformatting
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177055
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 15:57:17 +0000 (15:57 +0000)]
2011-08-01 Pascal Obry <obry@adacore.com>
* prj-part.ads, prj-part.adb (Parse): Add Target_Name parameter. Pass
Target_Name to Get_Path call.
(Parse_Single_Project): Likewise.
(Post_Parse_Context_Clause): Likewise.
* prj-env.ads, prj-env.adb (Find_Project): Add Target_Name parameter.
Call Initialise_Project_Path with the proper Target_Name.
(Initialize_Project_Path): Add <gnat_root>/<target_name>/lib/gnat
search path.
(Get_Path): Add Target_Name parameter. Call Initialise_Project_Path
with the proper Target_Name.
* prj-conf.adb (Get_Or_Create_Configuration_File): Pass Target_Name to
Part.Parse routine.
(Parse_Project_And_Apply_Config): Likewise.
* prj-makr.adb (Initialize): Pass empty Target_Name to Parse routine.
This is fine as this part of the code is supporting only native
compilation.
* prj-pars.adb (Parse): Pass empty Target_Name to Parse routine. This
is fine as this part of the code is supporting only native compilation.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177054
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 15:54:39 +0000 (15:54 +0000)]
2011-08-01 Yannick Moy <moy@adacore.com>
* sem_util.adb (Enter_Name): issue error in formal mode on declaration
of homonym, unless the homonym is one of the cases allowed in SPARK
* par-ch5.adb (Parse_Decls_Begin_End): issue error in SPARK mode for
package declaration occurring after a body.
2011-08-01 Robert Dewar <dewar@adacore.com>
* checks.adb, exp_ch4.adb: Minor reformatting.
2011-08-01 Javier Miranda <miranda@adacore.com>
* einfo.ads (Access_Disp_Table): Fix documentation.
(Dispatch_Table_Wrappers): Fix documentation.
2011-08-01 Pascal Obry <obry@adacore.com>
* prj-env.adb, prj-env.ads: Minor reformatting.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177053
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 15:51:41 +0000 (15:51 +0000)]
2011-08-01 Yannick Moy <moy@adacore.com>
* sem_util.ads, sem_util.adb, par.adb, par_util.adb
(Formal_Error_Msg, Formal_Error_Msg_N, Formal_Error_Msg_SP): move
procedures out of these packages.
* errout.ads, errout.adb
(Formal_Error_Msg, Formal_Error_Msg_N, Formal_Error_Msg_SP): move
procedures in of this package
(Formal_Error_Msg_NE): new procedure for wrapper on Error_Msg_NE
* par-ch5.adb (Parse_Decls_Begin_End): issue syntax error in SPARK mode
on misplaced later vs initial declarations, like in Ada 83
* sem_attr.adb (Processing for Analyze_Attribute): issue error in
formal mode on attribute of private type whose full type declaration
is not visible
* sem_ch3.adb (Analyze_Declarations): issue error in formal mode on a
package declaration inside a package specification
(Analyze_Full_Type_Declaration): issue error in formal mode on
controlled type or discriminant type
* sem_ch6.adb (Analyze_Subprogram_Specification): only issue error on
user-defined operator means that it should come from the source
(New_Overloaded_Entity): issue error in formal mode on overloaded
entity.
* sem_ch6.ads, sem_ch13.ads: typos in comments.
2011-08-01 Thomas Quinot <quinot@adacore.com>
* atree.adb: Minor reformatting.
* checks.adb: Minor reformatting.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177052
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 15:45:30 +0000 (15:45 +0000)]
2011-08-01 Vincent Celier <celier@adacore.com>
* s-parame-vms-ia64.ads: Fix typo in comment
Minor reformatting
* s-parame-vms-restrict.ads: Removed, unused.
2011-08-01 Javier Miranda <miranda@adacore.com>
* exp_ch3.adb
(Is_Variable_Size_Array): Remove local subprogram Is_Constant_Bound.
* sem_ch3.adb
(Constrain_Index): Remove side effects in the evaluation of the bounds.
* sem_ch3.ads, sem_ch3.adb
(Is_Constant_Bound): New extended version of the subprogram that was
previously located inside function Exp_Ch3.Is_Variable_Size_Array.
Moved here since it is shared by routines of sem_ch3 and exp_ch3.
* sem_aux.ads (Constant_Value): Fix typo in comment.
* checks.adb (Generate_Index_Checks): New implementation which, for
array objects with constant bounds, generates the runtime check
referencing the bounds of the array type. For other cases this routine
provides its previous behavior obtaining such values from the array
object.
* sem_res.adb (Set_Slice_Subtype): Link a copied range subtree with its
parent type.
* atree.adb (New_Copy): Reset flag Is_Overloaded in the new copy since
we cannot have semantic interpretations of the new node.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177051
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 15:41:01 +0000 (15:41 +0000)]
2011-08-01 Ed Schonberg <schonberg@adacore.com>
* sem_ch6.adb (Fully_Conformant_Expressions): handle quantified
expressions.
2011-08-01 Arnaud Charlet <charlet@adacore.com>
* sem_ch8.adb: Minor code editing.
* s-vxwext.adb: Remove trailing space.
* freeze.adb, freeze.ads, errout.ads, erroutc.adb: Fix GPLv3 header for
consistency with other files.
2011-08-01 Thomas Quinot <quinot@adacore.com>
* s-auxdec.ads, s-auxdec-vms_64.ads: Minor reformatting.
2011-08-01 Ed Schonberg <schonberg@adacore.com>
* par-ch10.adb: reject parameterized expressions as compilation unit.
* sem_ch4.adb: handle properly conditional expression with overloaded
then_clause and no else_clause.
2011-08-01 Tristan Gingold <gingold@adacore.com>
* s-parame-vms-alpha.ads, s-parame-vms-ia64.ads: Redeclare C_Address
like done by System.Aux_DEC.
* env.c (__gnat_setenv) [VMS]: Put logicals into LNM$PROCESS table.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177050
138bc75d-0d04-0410-961f-
82ee72b054a4
gjl [Mon, 1 Aug 2011 15:35:45 +0000 (15:35 +0000)]
* config/avr/avr.h (mcu_type_s): Add errata_skip field.
* config/avr/avr-devices.c (avr_mcu_types): Use it.
* config/avr/avr-mcus.def (AVR_MCU): Use it.
* config/avr/avr-c.c (avr_cpu_cpp_builtins): Use it to builtin
define __AVR_ERRATA_SKIP__ and __AVR_ERRATA_SKIP_JMP_CALL__.
* config/avr/libgcc.S (__mulshisi3, __ffshi2, __fmulsu_exit):
Use __AVR_ERRATA_SKIP_JMP_CALL__ instead of __AVR_HAVE_JMP_CALL__
to detect if XJMP must not be skipped.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177049
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 15:34:50 +0000 (15:34 +0000)]
2011-08-01 Yannick Moy <moy@adacore.com>
* par-endh.adb (Check_End): issue a syntax error in SPARK mode for
missing label at end of declaration (subprogram or package)
* par-ch4.adb (P_Name): issue a syntax error in SPARK mode for mixing
of positional and named parameter association
* par.adb, par-util.adb (Formal_Error_Msg_SP): new wrapper on
Error_Msg_SP which adds a prefix to the error message giving the name
of the formal language analyzed
* sem_ch6.adb (Analyze_Return_Type): issue an error in formal mode for
access result type in subprogram, unconstrained array as result type,.
(Analyze_Subprogram_Declaration): issue an error in formal mode for null
procedure
* sem_ch8.adb: Code clean up.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177048
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 15:17:35 +0000 (15:17 +0000)]
2011-08-01 Javier Miranda <miranda@adacore.com>
* sem_ch7.adb (Uninstall_Declarations): Remove useless code.
* einfo.ads (Access_Disp_Table): Fix documentation.
(Dispatch_Table_Wrappers): Fix documentation.
* einfo.adb (Access_Disp_Table, Dispatch_Table_Wrappers,
Set_Access_Disp_Table, Set_Dispatch_Table_Wrappers): Fix the assertions
to enforce the documentation of this attribute.
(Set_Is_Interface): Cleanup the assertion.
* exp_ch4.adb (Expand_Allocator_Expression, Tagged_Membership): Locate
the Underlying_Type entity before reading attribute Access_Disp_Table.
* exp_disp.adb (Expand_Dispatching_Call, Expand_Interface_Conversion):
Locate the Underlying_Type before reading attribute Access_Disp_Table.
* exp_aggr.adb (Build_Array_Aggr_Code, Build_Record_Aggr_Code): Locate
the Underlying_Type entity before reading attribute Access_Disp_Table.
* exp_ch3.adb (Build_Record_Init_Proc, Expand_N_Object_Declaration):
Locate the Underlying_Type entity before reading attribute
Access_Disp_Table.
2011-08-01 Ed Schonberg <schonberg@adacore.com>
* s-poosiz.ads: Additional overriding indicators.
2011-08-01 Yannick Moy <moy@adacore.com>
* sem_ch5.adb (Analyze_Exit_Statement): add return after error in
formal mode.
(Analyze_Iteration_Scheme): issue error in formal mode when loop
parameter specification does not include a subtype mark.
* sem_ch6.adb (Analyze_Abstract_Subprogram_Declaration): issue error in
formal mode on abstract subprogram.
(Analyze_Subprogram_Specification): issue error in formal mode on
user-defined operator.
(Process_Formals): issue error in formal mode on access parameter and
default expression.
* sem_ch9.adb (Analyze_Abort_Statement,
Analyze_Accept_Statement, Analyze_Asynchronous_Select,
Analyze_Conditional_Entry_Call, Analyze_Delay_Relative,
Analyze_Delay_Until, Analyze_Entry_Call_Alternative,
Analyze_Requeue, Analyze_Selective_Accept,
Analyze_Timed_Entry_Call): issue error in formal mode on such constructs
* sem_ch11.adb (Analyze_Raise_Statement, Analyze_Raise_xxx_Error):
issue error in formal mode on user-defined raise statement.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177047
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 15:13:25 +0000 (15:13 +0000)]
2011-08-01 Thomas Quinot <quinot@adacore.com>
* sem_ch6.adb (Enter_Overloaded_Entity): Do not warn about a
declaration being hidden when overriding an implicit inherited
subprogram.
* par-ch10.adb (P_Compilation_Unit): In syntax check only mode
(-gnats), do not complain about a source file that contains only a
pragma No_Body.
2011-08-01 Ed Schonberg <schonberg@adacore.com>
* sem_ch5.adb (Analyze_Iterator_Scheme): Do not overwrite type of loop
variable if already set.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177046
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 15:11:02 +0000 (15:11 +0000)]
Update header.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177045
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 15:10:28 +0000 (15:10 +0000)]
Update header.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177044
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 15:10:11 +0000 (15:10 +0000)]
Switch to GPLv3 run-time license.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177043
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 15:08:40 +0000 (15:08 +0000)]
Update to GPLv3 run-time license.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177042
138bc75d-0d04-0410-961f-
82ee72b054a4
amodra [Mon, 1 Aug 2011 15:05:24 +0000 (15:05 +0000)]
libgcc/
* config/rs6000/linux-unwind.h (frob_update_context <__powerpc64__>):
Restore for indirect call bcrtl from correct stack slot, and only
if cfa+40 isn't valid.
gcc/
* config/rs6000/rs6000-protos.h (rs6000_save_toc_in_prologue_p): Delete.
* config/rs6000/rs6000.c (rs6000_save_toc_in_prologue_p): Make static.
(rs6000_emit_prologue): Don't prematurely return when
TARGET_SINGLE_PIC_BASE. Don't emit eh_frame info in
save_toc_in_prologue case.
(rs6000_call_indirect_aix): Only disallow save_toc_in_prologue for
calls_alloca.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177041
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 15:05:02 +0000 (15:05 +0000)]
2011-08-01 Arnaud Charlet <charlet@adacore.com>
* g-socket-dummy.adb, s-osinte-linux.ads, g-socket-dummy.ads,
g-debuti.adb, g-tasloc.adb, g-debuti.ads, g-tasloc.ads,
s-osinte-hpux.ads, g-sercom.adb, g-soliop-solaris.ads, g-sercom.ads,
g-sptain.ads, g-curexc.ads, s-tasloc.adb, s-tasloc.ads, s-tataat.adb,
g-ctrl_c.adb, a-reatim.adb, s-tataat.ads, g-dirope.adb, g-ctrl_c.ads,
g-dirope.ads, g-boubuf.adb, g-calend.adb, g-boubuf.ads, g-souinf.ads,
g-table.adb, g-bytswa-x86.adb, g-wispch.adb, g-io.adb, g-table.ads,
g-wispch.ads, g-io.ads, g-memdum.adb, g-memdum.ads, g-busorg.adb,
g-busorg.ads, g-regpat.adb, g-sothco-dummy.adb, g-encstr.adb,
g-regpat.ads, g-sothco-dummy.ads, s-osinte-aix.ads, g-encstr.ads,
g-sercom-mingw.adb, s-mastop-vms.adb, g-diopit.adb, g-diopit.ads,
s-vxwext.adb, g-dyntab.adb, g-dyntab.ads, g-crc32.adb,
g-sercom-linux.adb, g-crc32.ads, s-regpat.adb, g-flocon.ads,
s-regpat.ads, g-stheme.adb, g-sestin.ads, s-taspri-posix-noaltstack.ads,
g-soliop.ads, s-inmaop-posix.adb, g-locfil.ads, g-enblsp-vms-alpha.adb,
g-socthi-dummy.adb, g-socthi-dummy.ads, gnat.ads, g-moreex.adb,
g-moreex.ads, g-dynhta.adb, g-dynhta.ads, g-deutst.ads, g-htable.adb,
g-cgicoo.adb, g-htable.ads, g-cgicoo.ads, a-interr.adb,
g-socthi-vms.adb, g-socthi-vms.ads, g-hesora.adb, g-bubsor.adb,
g-hesora.ads, g-bubsor.ads, g-md5.adb, g-md5.ads, s-intman-irix.adb,
s-htable.adb, s-osinte-vms.adb, s-htable.ads, s-osinte-vms.ads,
s-taprob.adb, g-bytswa.adb, g-bytswa.ads, s-osinte-solaris-posix.ads,
a-suenco.adb, g-comver.adb, g-comver.ads, g-exctra.adb,
s-osinte-solaris.adb, g-exctra.ads, s-osinte-irix.ads,
s-osinte-solaris.ads, a-caldel-vms.adb, g-socthi-vxworks.adb,
g-expect.adb, g-socthi-vxworks.ads, g-expect.ads, g-comlin.ads,
g-heasor.adb, g-heasor.ads, g-traceb.adb, g-traceb.ads, g-decstr.adb,
g-spipat.adb, g-decstr.ads, g-spipat.ads, s-mastop-tru64.adb,
g-except.ads, g-thread.adb, g-hesorg.adb, g-thread.ads, g-hesorg.ads,
g-expect-vms.adb, a-stuten.ads, g-spchge.adb, g-spchge.ads,
g-u3spch.adb, g-u3spch.ads, g-spitbo.adb, g-spitbo.ads,
s-osinte-dummy.ads, s-osinte-posix.adb, g-pehage.adb, g-pehage.ads,
s-gloloc-mingw.adb, g-sha1.ads, s-traceb-hpux.adb,
g-trasym-unimplemented.adb, g-trasym-unimplemented.ads, g-io_aux.adb,
g-regexp.adb, g-io_aux.ads, g-socthi-mingw.adb, g-regexp.ads,
s-osinte-hpux-dce.adb, g-socthi-mingw.ads, g-cgi.adb,
s-osinte-hpux-dce.ads, g-cgi.ads, g-byorma.adb, g-boumai.ads,
g-byorma.ads, a-caldel.adb, s-regexp.adb, s-regexp.ads,
g-soliop-mingw.ads, g-sptavs.ads, s-osinte-tru64.ads, g-speche.adb,
g-speche.ads, g-socthi.adb, g-stsifd-sockets.adb, g-socthi.ads,
s-osinte-darwin.ads, i-vxwork-x86.ads, g-awk.adb, i-vxwork.ads,
g-awk.ads, g-zspche.adb, g-zspche.ads, g-socket.adb, g-sptabo.ads,
g-socket.ads, g-semaph.adb, g-semaph.ads, s-taspri-posix.ads,
g-enblsp-vms-ia64.adb, g-cgideb.adb, g-cgideb.ads, g-sothco.adb,
s-osinte-freebsd.ads, g-sothco.ads, g-catiio.adb, g-casuti.adb,
g-catiio.ads, g-casuti.ads, g-trasym.adb, g-trasym.ads, s-casuti.adb,
g-os_lib.adb, s-traceb-mastop.adb, g-busora.adb, s-interr-dummy.adb,
g-busora.ads, g-enutst.ads, s-os_lib.adb, a-tasatt.adb,
s-osinte-mingw.ads: Update to GPLv3 run-time license.
Use GNAT instead of GNARL.
2011-08-01 Bob Duff <duff@adacore.com>
* a-cdlili.ads, a-cihama.ads, a-coinve.ads, a-ciorse.ads, a-coorma.ads,
a-cidlli.ads, a-ciormu.ads, a-cihase.ads, a-cohama.ads, a-coorse.ads,
a-ciorma.ads, a-coormu.ads, a-convec.ads, a-cohase.ads: Minor
reformatting.
2011-08-01 Yannick Moy <moy@adacore.com>
* debug.adb (d.D) reverve flag for the SPARK mode
(d.E) reverve flag for SPARK generation mode
(d.F) reverve flag for Why generation mode
* opt.ads, opt.adb (ALFA_Mode, ALFA_Through_SPARK_Mode,
ALFA_Through_Why_Mode, Formal_Verification_Mode, SPARK_Mode): New
functions which return True when the corresponding modes are set
(Formal_Language): return "spark" or "alfa" when in formal verification
mode.
* sem_util.ads, sem_util.adb (Formal_Error_Msg): new wrapper on
Error_Msg to prefix the error message with a tag giving the formal
language
(Formal_Error_Msg_N): new wrapper on Error_Msg_N to prefix the error
message with a tag giving the formal language
* sem_ch5.adb (Analyze_Block_Statement): issue error in formal mode on
block statement
(Analyze_Case_Statement): issue error in formal mode on case statement
with a single "others" case alternative
(Analyze_Exit_Statement): issue errors in formal mode on exit
statements which do not respect SPARK restrictions
(Analyze_Goto_Statement): issue error in formal mode on goto statement
(Check_Unreachable_Code): always issue an error (not a warning) in
formal mode on unreachable code (concerns both code after an infinite
loop and after an unconditional jump, both not allowed in SPARK)
* sem_ch6.adb (Analyze_Return_Statement): add call to
Set_Return_Present for a procedure containing a return statement
(already done for functions in Analyze_Function_Return)
(Analyze_Function_Return): issue error in formal mode on extended
return or if return is not last statement in function
(Check_Missing_Return): issue error in formal mode if function does
not end with return or if procedure contains a return
* sem_ch8.ads, sem_ch8.adb (Has_Loop_In_Inner_Open_Scopes): new
function to detect if there is an inner scope of its parameter S which
is a loop.
2011-08-01 Thomas Quinot <quinot@adacore.com>
* sem_ch6.ads: Minor reformatting.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177040
138bc75d-0d04-0410-961f-
82ee72b054a4
gjl [Mon, 1 Aug 2011 14:49:57 +0000 (14:49 +0000)]
* config/avr/avr-devices.c: Delete SVN property svn:executable.
* config/avr/predicates.md: Ditto.
* config/avr/driver-avr.c: Ditto.
* config/avr/genopt.sh: Set SVN property svn:executable to *.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177039
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 14:36:39 +0000 (14:36 +0000)]
2011-08-01 Javier Miranda <miranda@adacore.com>
* sem_util.adb (Abstract_Interface_List): Complete condition when
processing private type declarations to avoid reading unavailable
attribute.
(Is_Synchronized_Tagged_Type): Complete condition when processing
private extension declaration nodes to avoid reading unavailable
attribute.
2011-08-01 Thomas Quinot <quinot@adacore.com>
* sem_ch3.adb: Minor reformatting.
2011-08-01 Thomas Quinot <quinot@adacore.com>
* s-parame-ae653.ads, s-parame-vms-alpha.ads, s-parame-hpux.ads,
i-cpoint.adb, i-cstrin.adb, i-cpoint.ads, i-cstrin.ads,
s-parame-vms-ia64.ads, s-parame.ads, i-c.ads, s-parame-vxworks.ads,
s-parame-vms-restrict.ads: Remove duplicated Interfaces.C.* packages
for VMS, instead parametrize the common implementation with
System.Parameters declarations.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177038
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 14:30:34 +0000 (14:30 +0000)]
2011-08-01 Eric Botcazou <ebotcazou@adacore.com>
* gnat_rm.texi: Document limitation of Pragma No_Strict_Aliasing.
2011-08-01 Tristan Gingold <gingold@adacore.com>
* seh_init.c: Fix SEH handler installation on win64.
2011-08-01 Ed Schonberg <schonberg@adacore.com>
* sem_ch3.adb (Access_Subprogram_Declaration): in Asis mode, prevent
double analysis of an anonymous access to subprogram, because it can
lead to improper sharing of profiles and a back-end crash.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177037
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Mon, 1 Aug 2011 13:53:21 +0000 (13:53 +0000)]
Declare size only if BLOCK_REG_PADDING is defined.
2011-08-01 H.J. Lu <hongjiu.lu@intel.com>
* calls.c (emit_library_call_value_1): Declare size only if
BLOCK_REG_PADDING is defined.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177036
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 13:50:27 +0000 (13:50 +0000)]
2011-08-01 Robert Dewar <dewar@adacore.com>
* make.adb, sem_ch4.adb: Minor reformatting.
* gcc-interface/Make-lang.in: Update dependencies.
* sem_util.adb, exp_ch5.adb: Minor reformatting.
2011-08-01 Arnaud Charlet <charlet@adacore.com>
* gnat_rm.texi: Fix definition of Long_Integer.
2011-08-01 Ed Schonberg <schonberg@adacore.com>
* exp_aggr.adb: check limit size of static aggregate unconditionally,
to prevent storage exhaustion.
* exp_ch7.adb (Clean_Simple_Protected_Objects): if the scope being
finalized is a function body, insert the cleanup code before the final
return statement, to prevent spurious warnings.
* s-pooglo.ads: add overriding indicator.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177035
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Mon, 1 Aug 2011 13:47:31 +0000 (13:47 +0000)]
Add -mlzcnt.
gcc/
2011-08-01 Kirill Yukhin <kirill.yukhin@intel.com>
PR target/49547
* config.gcc (i[34567]86-*-*): Replace abmintrin.h with
lzcntintrin.h.
(x86_64-*-*): Likewise.
* config/i386/i386.opt (mlzcnt): New.
* config/i386/abmintrin.h: File removed.
(__lzcnt_u16, __lzcnt, __lzcnt_u64): Moved to ...
* config/i386/lzcntintrin.h: ... here. New file.
(__lzcnt): Rename to ...
(__lzcnt32): ... this.
* config/i386/bmiintrin.h (head): Update copyright year.
(__lzcnt_u16): Removed.
(__lzcnt_u32): Likewise.
(__lzcnt_u64): Likewise.
* config/i386/x86intrin.h: Include lzcntintrin.h when __LZCNT__
is defined, remove abmintrin.h.
* config/i386/cpuid.h (bit_LZCNT): New.
* config/i386/driver-i386.c (host_detect_local_cpu): Detect
LZCNT feature.
* config/i386/i386-c.c (ix86_target_macros_internal): Define
__LZCNT__ if needed.
* config/i386/i386.c (ix86_target_string): New option -mlzcnt.
(ix86_option_override_internal): Handle LZCNT option.
(ix86_valid_target_attribute_inner_p): Likewise.
(struct builtin_description bdesc_args) <IX86_BUILTIN_CLZS>: Update.
* config/i386/i386.h (TARGET_LZCNT): New.
(CLZ_DEFINED_VALUE_AT_ZERO): Update.
* config/i386/i386.md (clz<mode>2): Update insn constraint.
(clz<mode>2_lzcnt): Likewise.
* doc/invoke.texi: Mention -mlzcnt option.
* doc/extend.texi: Likewise.
gcc/testsuite/
2011-08-01 Kirill Yukhin <kirill.yukhin@intel.com>
* gcc.target/i386/i386.exp (check_effective_target_lzcnt): New.
* gcc.target/i386/lzcnt-1.c: New test.
* gcc.target/i386/lzcnt-2.c: Likewise.
* gcc.target/i386/lzcnt-2a.c: Likewise.
* gcc.target/i386/lzcnt-3.c: Likewise.
* gcc.target/i386/lzcnt-4.c: Likewise.
* gcc.target/i386/lzcnt-4a.c: Likewise.
* gcc.target/i386/lzcnt-5.c: Likewise.
* gcc.target/i386/lzcnt-6.c: Likewise.
* gcc.target/i386/lzcnt-6a.c: Likewise.
* gcc.target/i386/lzcnt-check.h: Likewise.
* gcc.target/i386/sse-12.c (dg-compile): Add -mlzcnt.
* gcc.target/i386/sse-13.c: Likewise.
* gcc.target/i386/sse-14.c: Likewise.
* g++.dg/other/i386-2.C: Likewise.
* g++.dg/other/i386-3.C: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177034
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 13:33:29 +0000 (13:33 +0000)]
2011-08-01 Ed Schonberg <schonberg@adacore.com>
* sem_ch4.adb (Operator_Check): improve error message when both a
with_clause and a use_clause are needed to make operator usage legal.
* sem_util.ads, sem_util.adb (Unit_Is_Visible): new predicate to
determine whether a compilation unit is visible within an other,
either through a with_clause in the current unit, or a with_clause in
its library unit or one one of its parents.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177033
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 13:29:56 +0000 (13:29 +0000)]
2011-08-01 Ed Schonberg <schonberg@adacore.com>
* exp_ch5.adb (Expand_N_Iterator_Loop): handle properly an iterator
over an arbitrary expression of an array or container type.
* lib-xref.adb: clarify comment.
2011-08-01 Bob Duff <duff@adacore.com>
* einfo.ads: Minor reformatting.
* debug.adb: Minor comment improvement.
2011-08-01 Javier Miranda <miranda@adacore.com>
* sem_ch4.adb (Try_Object_Operation): For class-wide subprograms do not
consider hidden subprograms as valid candidates.
2011-08-01 Arnaud Charlet <charlet@adacore.com>
* make.adb (Compile): Strip -mxxx switches in CodePeer mode.
2011-08-01 Vasiliy Fofanov <fofanov@adacore.com>
* gnat_ugn.texi: Fix typo.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177031
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 13:26:49 +0000 (13:26 +0000)]
2011-08-01 Robert Dewar <dewar@adacore.com>
* i-cstrin.adb, sem_util.adb, exp_ch11.adb, sem_ch8.adb,
lib-xref.adb: Minor reformatting
2011-08-01 Gary Dismukes <dismukes@adacore.com>
* exp_ch6.adb (Expand_N_Extended_Return_Statement): Replace test of
when to generate a call to Move_Final_List.
(Has_Controlled_Parts): Remove this function.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177030
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 13:23:32 +0000 (13:23 +0000)]
2011-08-01 Geert Bosch <bosch@adacore.com>
* par-ch3.adb (P_Discrete_Choice_List): Improve error message for extra
"," in choice list.
2011-08-01 Thomas Quinot <quinot@adacore.com>
* exp_ch11.adb (Expand_N_Raise_Statement): Mark N_Raise_xxx_Error for
explicit raise of a predefined exception as Comes_From_Source if the
original N_Raise_Statement comes from source.
2011-08-01 Robert Dewar <dewar@adacore.com>
* sinfo.ads: Add comment.
* sem_ch6.adb: Minor reformatting.
2011-08-01 Robert Dewar <dewar@adacore.com>
* freeze.adb (Freeze_Entity): Refine check for bad component size
clause to avoid rejecting confirming clause when atomic/aliased present.
2011-08-01 Ed Schonberg <schonberg@adacore.com>
* sem_ch8.adb (Find_Direct_Name, Analyze_Expanded_Name): use Is_LHS to
better determine whether an entity reference is a write.
* sem_util.adb (Is_LHS): refine predicate to handle assignment to a
subcomponent.
* lib-xref.adb (Output_References): Do no suppress a read reference at
the same location as an immediately preceeding modify-reference, to
handle properly in-out actuals.
2011-08-01 Tristan Gingold <gingold@adacore.com>
* env.c (__gnat_setenv) [VMS]: Refine previous change.
2011-08-01 Quentin Ochem <ochem@adacore.com>
* i-cstrin.adb (New_String): Changed implementation, now uses only the
heap to compute the result.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177029
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 13:17:49 +0000 (13:17 +0000)]
2011-08-01 Robert Dewar <dewar@adacore.com>
* atree.ads: Minor reformatting.
2011-08-01 Emmanuel Briot <briot@adacore.com>
* g-expect.adb (Get_Command_Output): Fix memory leak.
2011-08-01 Geert Bosch <bosch@adacore.com>
* cstand.adb (P_Float_Type): New procedure to print the definition of
predefined fpt types.
(P_Mixed_Name): New procedure to print a name using mixed case
(Print_Standard): Use P_Float_Type for printing floating point types
* einfo.adb (Machine_Emax_Value): Add preliminary support for quad
precision IEEE float.
2011-08-01 Thomas Quinot <quinot@adacore.com>
* sem_ch3.adb: Minor reformatting.
2011-08-01 Ed Schonberg <schonberg@adacore.com>
* sem_ch6.adb (Analyze_Parameterized_Expression): If the expression is
the completion of a generic function, insert the new body rather than
rewriting the original.
2011-08-01 Yannick Moy <moy@adacore.com>
* sinfo.ads, errout.ads: Typos in comments.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177028
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 12:50:07 +0000 (12:50 +0000)]
2011-08-01 Robert Dewar <dewar@adacore.com>
* par-endh.adb: Minor reformatting.
2011-08-01 Robert Dewar <dewar@adacore.com>
* aspects.ads, aspects.adb: Add aspects for library unit pragmas
(Pre_Post_Aspects): New subtype.
* par-ch12.adb (P_Generic): New syntax for aspects in packages
* par-ch13.adb (P_Aspect_Specifications): Add Semicolon parameter
* par-ch7.adb (P_Package): Remove Decl parameter
(P_Package): Handle new syntax for aspects (before IS)
* par-ch9.adb (P_Protected_Definition): Remove Decl parameter, handle
new aspect syntax
(P_Task_Definition): Remove Decl parameter, handle new aspect syntax
* par.adb (P_Aspect_Specifications): Add Semicolon parameter
(P_Package): Remove Decl parameter
* sem_ch13.adb (Analyze_Aspect_Specifications): Handle library unit
aspects
* sem_ch7.adb (Analyze_Package_Declaration): Analyze new format aspect
specs
* sem_util.ads, sem_util.adb (Static_Boolean): New function
* sinfo.ads: Document new syntax for aspects in packages etc.
* sprint.adb: Handle new syntax of aspects before IS in package
2011-08-01 Thomas Quinot <quinot@adacore.com>
* atree.ads: Minor reformatting.
* sem_prag.adb: Minor reformatting.
2011-08-01 Robert Dewar <dewar@adacore.com>
* exp_util.adb (Insert_Actions): Fix error in handling Actions for
case expr alternative.
2011-08-01 Ed Schonberg <schonberg@adacore.com>
* sem_ch12.adb: Fix typo.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177027
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 12:41:48 +0000 (12:41 +0000)]
2011-08-01 Geert Bosch <bosch@adacore.com>
* sem_prag.adb (Check_No_Link_Name): New procedure.
(Process_Import_Or_Interface): Use Check_No_Link_Name.
* cstand.adb (Create_Standard): Use Esize (Standard_Long_Long_Float)
instead of Standard_Long_Long_Float_Size global. Preparation for
eventual removal of per type constants.
* exp_util.ads (Get_Stream_Size): New function returning the stream
size value of subtype E.
* exp_util.adb (Get_Stream_Size): Implement new function.
* exp_strm.adb (Build_Elementary_Input_Call): Use Get_Stream_Size
function.
* exp_attr.adb (Attribute_Stream_Size): Use Get_Stream_Size
* einfo.adb:
(Machine_Mantissa_Value): Handle 128-bit quad precision IEEE floats
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177026
138bc75d-0d04-0410-961f-
82ee72b054a4
jules [Mon, 1 Aug 2011 12:41:30 +0000 (12:41 +0000)]
gcc/
* configure.ac (fixed-point): Add ARM support.
* configure: Regenerate.
* config/arm/arm.c (arm_fixed_mode_set): New struct.
(arm_set_fixed_optab_libfunc): New.
(arm_set_fixed_conv_libfunc): New.
(arm_init_libfuncs): Initialise fixed-point helper libfuncs with
ARM-specific names.
(aapcs_libcall_value): Return sub-word-size fixed-point libcall
return values in SImode.
(arm_return_in_msb): Return fixed-point types in the msb.
(arm_pad_reg_upwards, arm_pad_arg_upwards): Pad fixed-point types
upwards.
(arm_scalar_mode_supported_p): Support fixed-point modes.
(arm_vector_mode_supported_p): Support vector fixed-point modes.
* config/arm/arm.h (SHORT_FRACT_TYPE_SIZE, FRACT_TYPE_SIZE)
(LONG_FRACT_TYPE_SIZE, LONG_LONG_FRACT_TYPE_SIZE)
(SHORT_ACCUM_TYPE_SIZE, ACCUM_TYPE_SIZE, LONG_ACCUM_TYPE_SIZE)
(LONG_LONG_ACCUM_TYPE_SIZE, MAX_FIXED_MODE_SIZE): Define.
* config/arm/iterators.md (FIXED, ADDSUB, UQADDSUB, QADDSUB, QMUL):
New mode iterators.
(qaddsub_suf): New mode attribute.
* config/arm/arm-modes.def (FRACT, UFRACT, ACCUM, UACCUM): Declare
vector modes.
* config/arm/predicates.md (sat_shift_operator): New predicate.
* config/arm/arm-fixed.md: New.
* config/arm/arm.md: Include arm-fixed.md.
* config/arm/t-arm (MD_INCLUDES): Add arm-fixed.md.
libgcc/
* config.host (arm*-*-linux*, arm*-*-uclinux*, arm*-*-eabi*)
(arm*-*-symbianelf*): Add t-fixedpoint-gnu-prefix makefile fragment.
* config/arm/bpabi-lib.h (LIBGCC2_FIXEDBIT_GNU_PREFIX): Define.
gcc/testsuite/
* gcc.target/arm/fixed-point-exec.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177025
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 12:39:29 +0000 (12:39 +0000)]
2011-08-01 Geert Bosch <bosch@adacore.com>
* cstand.adb: Fix comments.
* sem_prag.adb (Analyze_Pragma): Use List_Length instead of explicit
count of arguments.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177024
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 12:37:10 +0000 (12:37 +0000)]
2011-08-01 Robert Dewar <dewar@adacore.com>
* exp_ch4.adb, sem_cat.adb: Minor reformatting.
2011-08-01 Geert Bosch <bosch@adacore.com>
* atree.ads: Fix comment.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177023
138bc75d-0d04-0410-961f-
82ee72b054a4
jules [Mon, 1 Aug 2011 12:34:15 +0000 (12:34 +0000)]
gcc/
* calls.c (emit_library_call_value_1): Support padding for libcall
arguments and return values.
* config/arm/arm.c (arm_pad_arg_upward): Pad half-float values
downwards in big-endian mode.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177022
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 12:31:32 +0000 (12:31 +0000)]
2011-08-01 Robert Dewar <dewar@adacore.com>
* aspects.ads, aspects.adb (Aspect_Names): Moved from body to spec.
* par-ch13.adb (P_Aspect_Specifications): Check misspelled aspect name.
* par.adb: Add with for Namet.Sp.
* par-tchk.adb: Minor reformatting.
2011-08-01 Vincent Celier <celier@adacore.com>
* mlib-tgt-specific-vms-alpha.adb, mlib-tgt-specific-vms-ia64.adb
(Build_Dynamic_Library): Use new function Init_Proc_Name to get the name
of the init procedure of a SAL.
* mlib-tgt-vms_common.ads, mlib-tgt-vms_common.adb (Init_Proc_Name):
New procedure.
2011-08-01 Thomas Quinot <quinot@adacore.com>
* exp_ch4.adb, s-tasini.ads, sem_attr.adb, s-soflin.ads: Minor
reformatting.
2011-08-01 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* adaint.c (__gnat_file_time_name_attr): Get rid of warning.
2011-08-01 Thomas Quinot <quinot@adacore.com>
* sem_util.adb, sem_util.ads (Has_Overriding_Initialize): Make function
conformant with its spec (return True only for types that have
an overriding Initialize primitive operation that prevents them from
having preelaborable initialization).
* sem_cat.adb (Validate_Object_Declaration): Fix test for preelaborable
initialization for controlled types in Ada 2005 or later mode.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177021
138bc75d-0d04-0410-961f-
82ee72b054a4
ro [Mon, 1 Aug 2011 12:14:21 +0000 (12:14 +0000)]
PR debug/49887
* config/sol2.c (solaris_code_end): Rename to solaris_file_end.
* config/sol2-protos.h: Likewise.
* config/i386/i386.c (ix86_code_end) [TARGET_SOLARIS]: Don't call
solaris_code_end.
* config/i386/sol2.h [!USE_GAS] (TARGET_ASM_FILE_END): Redefine.
* config/sparc/sparc.c (sparc_file_end) [TARGET_SOLARIS]: Call
solaris_file_end.
* config/sparc/sol2.h (TARGET_ASM_CODE_END): Remove.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177020
138bc75d-0d04-0410-961f-
82ee72b054a4
jules [Mon, 1 Aug 2011 12:02:45 +0000 (12:02 +0000)]
libgcc/
* Makefile.in (LIBGCC_VER_FIXEDPOINT_GNU_PREFIX): New.
(libgcc-std.ver.in): Use above.
* fixed-bit.h (LIBGCC2_FIXEDBIT_GNU_PREFIX): Define, if
LIBGCC2_GNU_PREFIX is defined. Use instead of LIBGCC2_GNU_PREFIX
throughout file.
* config/t-fixedpoint-gnu-prefix: New file.
* config/t-gnu-prefix (LIBGCC_VER_FIXEDPOINT_GNU_PREFIX): Set.
* libgcc-std.ver.in (fixed-point routines): Use __FIXPTPFX__
instead of __PFX__.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177019
138bc75d-0d04-0410-961f-
82ee72b054a4
jules [Mon, 1 Aug 2011 11:55:20 +0000 (11:55 +0000)]
gcc/
* tree-ssa-sccvn.c (copy_reference_ops_from_ref): Support FIXED_CST.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177018
138bc75d-0d04-0410-961f-
82ee72b054a4
jules [Mon, 1 Aug 2011 11:53:51 +0000 (11:53 +0000)]
gcc/
* final.c (output_addr_const): Print fixed-point constants as
decimal not hex.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177017
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Mon, 1 Aug 2011 11:51:04 +0000 (11:51 +0000)]
2011-08-01 Richard Guenther <rguenther@suse.de>
* stor-layout.c (initialize_sizetypes): Properly sign-extend
bitsiztype TYPE_MAX_VALUE.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177016
138bc75d-0d04-0410-961f-
82ee72b054a4
jules [Mon, 1 Aug 2011 11:46:27 +0000 (11:46 +0000)]
* optabs.c (prepare_cmp_insn): Use correct biasing for fixed-point
comparison helpers.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177015
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 10:44:02 +0000 (10:44 +0000)]
2011-08-01 Robert Dewar <dewar@adacore.com>
* aspects.ads, aspects.adb: Add aspect Type_Invariant, Precondition,
Postcondition.
(Same_Aspect): New function.
* sem_ch13.adb (Analyze_Aspect_Specifications): Add aspect
Type_Invariant, Precondition, Postcondition.
* snames.ads-tmpl: Add Name_Type_Invariant.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177011
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 10:39:44 +0000 (10:39 +0000)]
2011-08-01 Robert Dewar <dewar@adacore.com>
* freeze.adb (Freeze_Entity): Don't call Check_Aspect_At_Freeze_Point
here.
(Freeze_All_Ent): Fix error in handling inherited aspects.
* sem_ch13.adb (Analyze_Aspect_Specifications): Skip aspect that is
already analyzed, but don't skip entire processing of a declaration,
that's wrong in some cases of declarations being rewritten.
(Analyze_Aspect_Specification): Set Is_Delayed_Aspect in aspects.
Don't delay for integer, string literals
Treat predicates in usual manner for delay, remove special case code,
not needed.
(Analyze_Freeze_Entity): Make call to Check_Aspect_At_Freeze_Point
(Build_Predicate_Function): Update saved expression in aspect
(Build_Invariant_Procedure): Update saved expression in aspect
* exp_ch4.adb (Expand_N_Selected_Component): Only do the optimization
of replacement of discriminant references if the reference is simple.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177010
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 10:31:31 +0000 (10:31 +0000)]
2011-08-01 Robert Dewar <dewar@adacore.com>
* aspects.ads, aspects.adb: Add Static_Predicate and Dynamic_Predicate.
* sem_ch13.adb (Analyze_Aspect_Specification): Add processing for
Static_Predicate and Dynamic_Predicate.
(Build_Predicate_Function): Add processing for Static_Predicate
and Dynamic_Predicate.
* sinfo.ads, sinfo.adb (From_Dynamic_Predicate): New flag
(From_Static_Predicate): New flag
* snames.ads-tmpl: Add Name_Static_Predicate and Name_Dynamic_Predicate
2011-08-01 Robert Dewar <dewar@adacore.com>
* usage.adb: Documentation cleanup for Ada version modes in usage.
* expander.adb: Minor reformatting.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177009
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 10:27:49 +0000 (10:27 +0000)]
2011-08-01 Robert Dewar <dewar@adacore.com>
* atree.ads: Minor comment fix.
* a-stwifi.adb, a-stzfix.adb, a-strfix.adb, a-ztexio.ads, a-textio.ads,
a-witeio.ads, sem_prag.adb: Minor reformatting.
2011-08-01 Doug Rupp <rupp@adacore.com>
* env.c (__gnat_setenv) [VMS]: Force 32bit on item list structure
pointers. Use descrip.h header file for convenience. Add some
comments.
2011-08-01 Robert Dewar <dewar@adacore.com>
* freeze.adb (Freeze_Entity): Call Check_Aspect_At_Freeze_Point
(Freeze_All): Call Check_Aspect_At_End_Of_Declarations
* sem_ch13.ads, sem_ch13.adb (Check_Aspect_At_Freeze_Point):
New procedure.
(Check_Aspect_At_End_Of_Declarations): New procedure
(Analye_Aspect_Specification): Minor changes for above procedures
* sinfo.ads, sinfo.adb (Is_Delayed_Aspect): Now set in aspect
specification node as well.
2011-08-01 Pascal Obry <obry@adacore.com>
* adaint.c (_gnat_stat): GetFilesAttributesEx() would fail on special
Windows files. Use GetFilesAttributes() in this case to check for file
existence instead of returning with an error code.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177008
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 10:15:08 +0000 (10:15 +0000)]
2011-08-01 Vincent Celier <celier@adacore.com>
* a-stzfix.adb, a-stwifi.adb (Replace_Slice): Fixed computation when
High is above Source length.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177007
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 10:13:07 +0000 (10:13 +0000)]
2011-08-01 Robert Dewar <dewar@adacore.com>
* a-ztexio.ads, a-textio.ads, a-witeio.ads: Fix comment.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177006
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 09:25:46 +0000 (09:25 +0000)]
2011-08-01 Robert Dewar <dewar@adacore.com>
* aspects.ads (Boolean_Aspects): New subtype.
* exp_ch13.adb (Expand_Freeze_Entity): Fix errors in handling aspects
for derived types in cases where the parent type and derived type have
aspects.
* freeze.adb (Freeze_Entity): Fix problems in handling derived type
with aspects when parent type also has aspects.
(Freeze_Entity): Deal with delay of boolean aspects (must evaluate
boolean expression at this point).
* sem_ch13.adb (Analyze_Aspect_Specifications): Delay all aspects in
accordance with final decision on the Ada 2012 feature.
* sinfo.ads, sinfo.adb (Is_Boolean_Aspect): New flag.
2011-08-01 Matthew Heaney <heaney@adacore.com>
* a-chtgbo.adb (Delete_Node_Sans_Free): Replace iterator with selector.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177005
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 09:22:08 +0000 (09:22 +0000)]
2011-08-01 Pascal Obry <obry@adacore.com>
* a-stzunb-shared.adb, a-strunb-shared.adb, a-stwiun-shared.adb:
Fix Replace_Slice when High is above current string size.
(Replace_Slice): Fix DL computation when High is above current
string length.
2011-08-01 Gary Dismukes <dismukes@adacore.com>
* gnat_rm.texi: Add documentation for pragma Static_Elaboration_Desired.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177004
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 09:15:30 +0000 (09:15 +0000)]
2011-08-01 Matthew Heaney <heaney@adacore.com>
* a-rbtgbo.adb (Delete_Node_Sans_Free): Fixed assignment to left child
of node.
2011-08-01 Pascal Obry <obry@adacore.com>
* a-stzunb-shared.adb, a-strunb-shared.adb, a-stwiun-shared.adb: Minor
reformatting.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177003
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 09:04:40 +0000 (09:04 +0000)]
2011-08-01 Ed Schonberg <schonberg@adacore.com>
* sem_attr.adb (Analyze_Attribute, case 'Access): handle properly named
access to protected subprograms in generic bodies.
* sem_ch6.adb (Analyze_Subprogram_Declaration): If the context is a
protected type, indicate that the convention of the subprogram is
Convention_Protected, because it may be used in subsequent declarations
within the protected declaration.
2011-08-01 Vincent Celier <celier@adacore.com>
* mlib-prj.adb (Build_Library): Use "ada_" as the prefix for the "init"
and "final" procedures when the name of the library is "ada", to avoid
duplicate symbols "adainit" and "adafinal" in executables.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177002
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 1 Aug 2011 08:59:50 +0000 (08:59 +0000)]
2011-08-01 Ed Schonberg <schonberg@adacore.com>
* sem_attr.adb (Analyze_Attribute, case 'Result): Handle properly a
quantified expression that appears within a postcondition and uses the
Ada2012 'Result attribute.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177001
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 1 Aug 2011 08:55:33 +0000 (08:55 +0000)]
* math/rem_pio2q.c (__quadmath_kernel_rem_pio2): Fix up fq to y
conversion for prec 3 and __FLT_EVAL_METHOD__ != 0.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176999
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Mon, 1 Aug 2011 01:44:36 +0000 (01:44 +0000)]
Use temporary variables for calls with multiple results.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176998
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Mon, 1 Aug 2011 01:13:43 +0000 (01:13 +0000)]
h8300: Add flags to .section directives.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176996
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Mon, 1 Aug 2011 01:11:04 +0000 (01:11 +0000)]
Handle SIZE_TYPE being unsigned short.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176995
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Mon, 1 Aug 2011 00:18:56 +0000 (00:18 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176994
138bc75d-0d04-0410-961f-
82ee72b054a4
kkojima [Sun, 31 Jul 2011 23:01:14 +0000 (23:01 +0000)]
PR target/49880
* config/sh/sh.md (udivsi3_i1): Enable for TARGET_DIVIDE_CALL_DIV1.
(divsi3_i1): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176990
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Sun, 31 Jul 2011 21:46:20 +0000 (21:46 +0000)]
* de.po: Update.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176988
138bc75d-0d04-0410-961f-
82ee72b054a4