OSDN Git Service

pf3gnuchains/gcc-fork.git
12 years ago2011-08-29 Ed Schonberg <schonberg@adacore.com>
charlet [Mon, 29 Aug 2011 10:06:16 +0000 (10:06 +0000)]
2011-08-29  Ed Schonberg  <schonberg@adacore.com>

* sem_res.adb (Resolve_Actuals): Use base type to determine whether an
access subtype is access_to_subprogram, when applying checks for
RM 3.10.2 (27).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178185 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-29 Matthew Heaney <heaney@adacore.com>
charlet [Mon, 29 Aug 2011 10:02:08 +0000 (10:02 +0000)]
2011-08-29  Matthew Heaney  <heaney@adacore.com>

* a-comutr.adb, a-cimutr.adb, a-cbmutr.adb (Splice_Subtree): Only check
for sibling when common parent.

2011-08-29  Thomas Quinot  <quinot@adacore.com>

* get_scos.adb: Literals of Pragma_Id are pragma names prefixed with
"pragma_".

2011-08-29  Ed Schonberg  <schonberg@adacore.com>

* sem_ch6.adb (Analyze_Subprogram_Body_Helper): Enable freeze actions
for the return type when in ASIS mode.

2011-08-29  Vincent Celier  <celier@adacore.com>

* make.adb (Gnatmake): Get the default search dirs, then the target
parameters after getting the Builder switches, as the Builder switches
may include --RTS= and that could change the default search dirs.

2011-08-29  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch7.adb (Make_Adjust_Call): Rewrite to mimic the structure of
Make_Final_Call. Move the processing for class-wide types before the
processing for derivations from [Limited_]Controlled.
(Make_Final_Call): Move the processing for class-wide types before the
processing for derivations from [Limited_]Controlled.
* s-stposu.adb (Allocate_Any_Controlled): Correct the membership check.
Add code to account for alignments larger than the list header. Add a
comment illustrating the structure of the allocated object + padding +
header.
(Deallocate_Any_Controlled): Add code to account for alignments larger
than the list header.

2011-08-29  Ed Schonberg  <schonberg@adacore.com>

* sinfo.ads, sinfo.adb: New node kind
N_Formal_Incomplete_Type_Definition, related flags.
par-ch12.adb (P_Formal_Type_Declaration, G_Formal_Type_Definition):
Parse formal incomplete types.
* sem.adb (Analyze): Formal_Incomplete_Type_Definitions are handled in
sem_ch12.
* sem_ch7.adb (Analyze_Package_Specification, Unit_Requires_Body):
Formal incomplete types do not need completion.
* sem_ch12.adb (Analyze_Formal_Incomplete_Type,
Validate_Incomplete_Type_Instance): New procedures to handle formal
incomplete types.
* freeze.adb (Freeze_Entity): Do not freeze the subtype of an actual
that corresponds to a formal incomplete type.
* sprint.adb: Handle formal incomplete type declarations.
* exp_util.adb (Insert_Actions): An incomplete_type_definition is not
an insertion point.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178184 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-29 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Mon, 29 Aug 2011 09:52:57 +0000 (09:52 +0000)]
2011-08-29  Hristian Kirtchev  <kirtchev@adacore.com>

* a-fihema.ads, a-fihema.adb: Unit removed.
* a-undesu.ads, a-undesu.adb: New unit implementing
Ada.Unchecked_Deallocate_Subpool.
* einfo.adb: Remove Associated_Collection from the node usage.
Add Finalization_Master to the node usage.
(Associated_Collection): Removed.
(Finalization_Master): New routine.
(Set_Associated_Collection): Removed.
(Set_Finalization_Master): New routine.
(Write_Field23_Name): Remove Associated_Collection from the output. Add
Finalization_Master to the output.
* einfo.ads: Remove attribute Associated_Collection and its uses in
entities.
Add new attribute Finalization_Master along with its uses in entitites.
(Associated_Collection): Removed along with its pragma import.
(Finalization_Master): New routine along with a pragma import.
(Set_Associated_Collection): Removed along with its pragma import.
(Set_Finalization_Master): New routine along with a pragma import.
* exp_ch3.adb (Expand_Freeze_Array_Type): Replace call to
Build_Finalization_Collection with Build_Finalization_Master.
(Expand_Freeze_Record_Type): Move the generation of Finalize_Address
before the bodies of the predefined routines. Add comment explaining
this. Replace call to Build_Finalization_Collection with
Build_Finalization_Master.
(Freeze_Type): Replace call to Build_Finalization_Collection with
Build_Finalization_Master.
(Make_Finalize_Address_Body): Comment reformatting.
(Make_Predefined_Primitive_Specs): Code reformatting.
(Stream_Operation_OK): Update comment mentioning finalization
collections. Replace RE_Finalization_Collection with
RE_Finalization_Master.
* exp_ch4.adb (Complete_Controlled_Allocation): Replace call to
Associated_Collection with Finalization_Master. Replace call to
Build_Finalization_Collection with Build_Finalization_Master.
(Expand_Allocator_Expression): Replace call to Associated_Collection
with Finalization_Master. Replace call to Set_Associated_Collection with
Set_Finalization_Master. Remove the generation of
Set_Finalize_Address_Ptr.
(Expand_N_Allocator): Replace call to Associated_Collection with
Finalization_Master. Remove the generation of Set_Finalize_Address_Ptr.
* exp_ch6.adb (Add_Collection_Actual_To_Build_In_Place_Call): Renamed to
Add_Finalization_Master_Actual_To_Build_In_Place_Call. Update the
comment on usage. Replace call to Needs_BIP_Collection with
Needs_BIP_Finalization_Master Remplace BIP_Collection with
BIP_Finalization_Master. Update all comments which mention finalization
collections. Replace Associated_Collection with
Finalization_Master. Replace Build_Finalization_Collection with
Build_Finalization_Master.
(BIP_Formal_Suffix): Update BIP_Collection's case.
(Build_Heap_Allocator): Update the related comment. Rename local
variable Collect to Fin_Mas_Id and update its occurrences. Update
comments which mention finalization collections. Replace
Set_Associated_Collection with Set_Finalization_Master.
(Expand_Call): Update the code which detects a special piece of library
code for .NET/JVM.
(Make_Build_In_Place_Call_In_Allocator): Replace the call to
Add_Collection_Actual_To_Build_In_Place_Call with
Add_Finalization_Master_Actual_To_Build_In_Place_Call. Remove the code
which generates a call to Make_Set_Finalize_Address_Ptr_Call.
(Make_Build_In_Place_Call_In_Anonymous_Context): Replace call to
Add_Collection_Actual_To_Build_In_Place_Call with
Add_Finalization_Master_Actual_To_Build_In_Place_Call.
(Make_Build_In_Place_Call_In_Assignment): Replace call to
Add_Collection_Actual_To_Build_In_Place_Call with
Add_Finalization_Master_Actual_To_Build_In_Place_Call.
(Needs_BIP_Collection): Renamed to Needs_BIP_Finalization_Master.
* exp_ch6.ads: Rename BIP_Collection to BIP_Finalization_Master.
(Needs_BIP_Collection): Renamed to Needs_BIP_Finalization_Master.
* exp_ch7.adb (Build_BIP_Cleanup_Stmts): Update comment on usage.
Rename local variable Collect to Fin_Mas_Id and update its occurrences.
Replace call to Set_Associated_Collection with Set_Finalization_Master.
(Build_Finalization_Collection): Renamed to Build_Finalization_Master.
Replace the call to Associated_Collection with Finalization_Master.
Rename local variable Coll_Id to Fin_Mas_Id and update its occurrences.
Update the way finalization master names are generated. Update the
retrieval of the correct access type which will carry the pool and
master attributes.
(Make_Final_Call): Reimplement the way [Deep_]Finalize is retrieved.
(Make_Finalize_Address_Body): Abstract types do not need
Finalize_Address. Code reformatting.
(Make_Finalize_Address_Stmts): Update comment on usage.
(Make_Set_Finalize_Address_Ptr_Call): Removed.
(Process_Declarations): Update comments.
* exp_ch7.ads (Build_Finalization_Collection): Renamed to
Build_Finalization_Master. Update associated comment.
(Make_Set_Finalize_Address_Ptr_Call): Removed.
* exp_ch13.adb: Update comments which mention finalization collections.
(Expand_N_Free_Statement): Replace the call to Associated_Collection
with Finalization_Master.
* exp_util.adb (Build_Allocate_Deallocate_Proc): Reimplemented to
create calls to routines Allocate_Any_Controlled and
Deallocate_Any_Controlled.
(Find_Finalize_Address): New routine.
(Is_Allocate_Deallocate_Proc): Update the RTE entities used in the
comparison.
(Requires_Cleanup_Actions): Update the comment on freeze node
inspection.
* exp_util.ads: Remove comment on generated code for
Build_Allocate_Deallocate_Proc. The code is now quite complex and it
is better to simply look in the body.
* freeze.adb (Freeze_All): Update the comment of finalization
collections. Replace the call to Associated_Collection with
Finalization_Master. Replace the call to Build_Finalization_Collection
with Build_Finalization_Master.
* impunit.adb: Add a-undesu and s-stposu to the list of units.
* Makefile.rtl: Add files a-undesu, s-finmas and s-stposu. Remove file
a-fihema.
* rtsfind.adb (Get_Unit_Name): Remove the processing for children of
Ada.Finalization. Add processing for children of System.Storage_Pools.
* rtsfind.ads: Remove the naming of second level children of
Ada.Finalization.
Remove Ada_Finalization_Heap_Management from the list of units.
Remove subtype Ada_Finalization_Child.
Remove the following subprogram entities:

   RE_Allocate
   RE_Deallocate
   RE_Finalization_Collection
   RE_Finalization_Collection_Ptr
   RE_Set_Finalize_Address_Ptr

Add the naming of second level children of System.Storage_Pools.
Add System_Finalization_Masters and System_Storage_Pools_Subpools to
the list of units.
Add subtype System_Storage_Pools_Child.
Add the following subprogram entities to System.Finalization_Masters:

   RE_Finalization_Master
   RE_Finalization_Master_Ptr

Add the following subprogram entities to System.Storage_Pools.Subpools:

   RE_Allocate_Any_Controlled
   RE_Deallocate_Any_Controlled
   RE_Root_Storage_Pool_With_Subpools
   RE_Root_Subpool
   RE_Subpool_Handle

Move the following subprogram entities from
Ada.Finalization.Heap_Management to System.Finalization_Masters:

   RE_Add_Offset_To_Address
   RE_Attach
   RE_Base_Pool
   RE_Detach

* sem_ch3.adb (Access_Type_Declaration): Replace the call to
Set_Associated_Collection with Set_Finalization_Master.
* sem_ch6.adb (Create_Extra_Formals): Update the way extra formal
BIP_Finalization_Master is created.
* s-finmas.adb: New unit System.Finalization_Masters.
* s-finmas.ads: New unit System.Finalization_Masters.
* s-stopoo.ads, s-stopoo.adb: Minor code reformatting.
* s-stposu.ads, s-stposu.adb: New unit implementing
System.Storage_Pools.Subpools.

2011-08-29  Bob Duff  <duff@adacore.com>

* tbuild.adb: Add assertion.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178183 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-29 Thomas Quinot <quinot@adacore.com>
charlet [Mon, 29 Aug 2011 09:41:15 +0000 (09:41 +0000)]
2011-08-29  Thomas Quinot  <quinot@adacore.com>

* s-pooglo.adb: Minor reformatting.

2011-08-29  Ed Schonberg  <schonberg@adacore.com>

* exp_ch5.adb (Expand_N_Assignment_Statement): if the left-hand side is
an indexed component of a packed array whose element type is a record
with a representation clause different from that of the right-hand
side, generate a temporary to minimuze the number of bit-field
operations generated.

2011-08-29  Ed Schonberg  <schonberg@adacore.com>

* exp_util.adb (Insert_Actions): Use clauses can be part of lists of
declarations, and thus are likely insertion points for actions.

2011-08-29  Bob Duff  <duff@adacore.com>

* einfo.ads: Minor comment fix.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178182 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-29 Robert Dewar <dewar@adacore.com>
charlet [Mon, 29 Aug 2011 09:38:56 +0000 (09:38 +0000)]
2011-08-29  Robert Dewar  <dewar@adacore.com>

* frontend.adb, gnat1drv.adb: Minor reformatting.

2011-08-29  Tristan Gingold  <gingold@adacore.com>

* s-pooglo.adb (Allocate, Deallocate): Take into account the alignment.
* a-fihema.adb (Allocate, Deallocate): Ditto.  Possibly add padding
space in front of the header.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178181 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-29 Johannes Kanig <kanig@adacore.com>
charlet [Mon, 29 Aug 2011 09:36:59 +0000 (09:36 +0000)]
2011-08-29  Johannes Kanig  <kanig@adacore.com>

* frontend.adb (Frontend): Exit after creating Standard package when
-gnatd.H is present.
* gnat1drv.adb (Gnat1drv): Call Backend right away when -gnatd.H is
present.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178180 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-29 Robert Dewar <dewar@adacore.com>
charlet [Mon, 29 Aug 2011 09:34:19 +0000 (09:34 +0000)]
2011-08-29  Robert Dewar  <dewar@adacore.com>

* exp_ch9.adb, mlib-prj.adb, prj.adb, prj.ads, ttypes.ads, sem_ch4.adb,
makeutl.adb, makeutl.ads, atree.ads, snames.adb-tmpl,
snames.ads-tmpl: Minor reformatting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178179 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-29 Philippe Gil <gil@adacore.com>
charlet [Mon, 29 Aug 2011 09:30:33 +0000 (09:30 +0000)]
2011-08-29  Philippe Gil  <gil@adacore.com>

* prj.adb (Reset_Units_In_Table): New procedure.
Reset units to avoid access to freed memory.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178178 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-29 Thomas Quinot <quinot@adacore.com>
charlet [Mon, 29 Aug 2011 09:28:10 +0000 (09:28 +0000)]
2011-08-29  Thomas Quinot  <quinot@adacore.com>

* get_scos.adb: When reading a P statement SCO without a pragma name
(from an older ALI file), ensure that the Pragma_Name component is set
to Unknown_Pragma (not left uninitialized).

2011-08-29  Vincent Celier  <celier@adacore.com>

* makeutl.adb (Get_Directories): New procedure moved from Buildgpr and
modified to compute correctly the object path of a SAL project that is
extending another library project.
(Write_Path_File): New procedure.
* makeutl.ads (Directories): New table moved from Buildgpr
(Get_Directories): New procedure moved from Buildgpr
(Write_Path_File): New procedure
* mlib-prj.adb (Build_Library): Use Makeutl.Get_Directories to set the
paths before binding SALs, instead of Set_Ada_Paths.
* prj-env.adb (Set_Path_File_Var): Procedure has been moved to package
Prj.
* prj.adb (Set_Path_File_Var): New procedure moved from Prj.Env
(Current_Source_Path_File_Of): New function
(Set_Current_Object_Path_File_Of): New procedure
(Current_Source_Object_File_Of): New function
(Set_Current_Object_Path_File_Of): New procedure
* prj.ads (Set_Path_File_Var): New procedure moved from Prj.Env
(Current_Source_Path_File_Of): New function
(Set_Current_Object_Path_File_Of): New procedure
(Current_Source_Object_File_Of): New function
(Set_Current_Object_Path_File_Of): New procedure

2011-08-29  Ed Schonberg  <schonberg@adacore.com>

* exp_ch5.adb (Expand_N_Assignment_Statement): For an assignment to a
packed entity, use a bit-field assignment only if there is no change of
representation.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178177 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-29 Thomas Quinot <quinot@adacore.com>
charlet [Mon, 29 Aug 2011 09:24:55 +0000 (09:24 +0000)]
2011-08-29  Thomas Quinot  <quinot@adacore.com>

* rtsfind.ads, exp_ch3.adb (In_Runtime): Minor code improvement, use
Is_RTU instead of using Chars comparisons.

2011-08-29  Thomas Quinot  <quinot@adacore.com>

* exp_strm.adb (Build_Mutable_Record_Read_Procedure): Do not create a
temporary object if the actual is constrained, and the discriminants
read from the stream don't match.

2011-08-29  Tristan Gingold  <gingold@adacore.com>

* sem_attr.adb, exp_attr.adb: Add handling of
Attribute_System_Allocator_Alignment
* snames.ads-tmpl: Add Name_System_Allocator_Alignment and
Attribute_System_Allocator_Alignment.
* ttypes.ads, get_targ.ads: Add Get_System_Allocator_Alignment.
* gcc-interface/targtyps.c, gcc-interface/utils2.c,
gcc-interface/gigi.h: Renames get_target_default_allocator_alignment to
get_target_system_allocator_alignment.

2011-08-29  Arnaud Charlet  <charlet@adacore.com>

* gcc-interface/Makefile.in, gcc-interface/Make-lang.in: Update
dependencies.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178176 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-29 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Mon, 29 Aug 2011 09:05:11 +0000 (09:05 +0000)]
2011-08-29  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR libfortran/50192
* intrinsics/string_intrinsics.c (memcmp_char4):  New function.
* intrinsics/string_intrinsics_inc.c:  New macro MEMCMP, either
set to memcmp or memcmp_char4.
(compare_string):  Use MEMCMP, with correct size for it.
* libgfortran.h:  Add prototype for memcmp_char4.

2011-08-29  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR libfortran/50192
* gfortran.dg/widechar_compare_1.f90:  New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178173 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-29 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 29 Aug 2011 09:03:41 +0000 (09:03 +0000)]
2011-08-29  Richard Guenther  <rguenther@suse.de>

* gimple-fold.c (gimple_fold_stmt_to_constant_1): Set a location
on the built ADDR_EXPR.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178172 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-29 Arnaud Charlet <charlet@adacore.com>
charlet [Mon, 29 Aug 2011 09:00:59 +0000 (09:00 +0000)]
2011-08-29  Arnaud Charlet  <charlet@adacore.com>

* exp_ch3.adb (In_Runtime): Fix typo.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178171 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-29 Bob Duff <duff@adacore.com>
charlet [Mon, 29 Aug 2011 08:59:28 +0000 (08:59 +0000)]
2011-08-29  Bob Duff  <duff@adacore.com>

* sem_ch4.adb (Analyze_Allocator): Analyze the subpool specification.

2011-08-29  Ed Schonberg  <schonberg@adacore.com>

* exp_ch3.adb (Expand_N_Object_Declaration): If the entity is tagged
and a separate tag assignment is generated, ensure that the tag
assignment is analyzed.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178170 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-29 Ed Schonberg <schonberg@adacore.com>
charlet [Mon, 29 Aug 2011 08:56:40 +0000 (08:56 +0000)]
2011-08-29  Ed Schonberg  <schonberg@adacore.com>

* atree.ads, atree.adb (Copy_Separate_List): New function that applies
Copy_Separate_Tree to a list of nodes. Used to create disjoint copies
of statement lists that may contain local declarations.
(Expand_N_Timed_Entry_Call): Use Copy_Separate_List to duplicate the
triggering statements needed for the expansion of this construct, when
the trigger is a dispatching call to a synchronized primitive.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178169 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-29 Arnaud Charlet <charlet@adacore.com>
charlet [Mon, 29 Aug 2011 08:55:18 +0000 (08:55 +0000)]
2011-08-29  Arnaud Charlet  <charlet@adacore.com>

* gnat_rm.texi: Add doc for 'Elab_Subp_Body.
* bindgen.adb: Add comments.
* snames.adb-tmpl (Is_Attribute_Name): Only recognize 'Elab_Subp_Body
in CodePeer mode.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178168 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR debug/50215
jakub [Mon, 29 Aug 2011 08:55:02 +0000 (08:55 +0000)]
PR debug/50215
* var-tracking.c (create_entry_value): Call cselib_lookup_from_insn
before adding ENTRY_VALUE to val->locs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178167 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-29 Robert Dewar <dewar@adacore.com>
charlet [Mon, 29 Aug 2011 08:54:00 +0000 (08:54 +0000)]
2011-08-29  Robert Dewar  <dewar@adacore.com>

* exp_attr.adb: Minor reformatting.
Minor code reorganization and commenting.
* par_sco.adb, checks.adb, sem_attr.adb, get_scos.adb: Minor
reformatting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178166 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-29 Thomas Quinot <quinot@adacore.com>
charlet [Mon, 29 Aug 2011 08:52:00 +0000 (08:52 +0000)]
2011-08-29  Thomas Quinot  <quinot@adacore.com>

* get_scos.adb: Ignore chaining indicators not currently supported
by Ada.

2011-08-29  Arnaud Charlet  <charlet@adacore.com>

* system.ads: Minor editing.

2011-08-29  Arnaud Charlet  <charlet@adacore.com>

* bindgen.adb (Gen_Elab_Calls): Generate calls to subp'Elab_Subp_Body in
CodePeer mode.
* sem_attr.ads, sem_attr.adb, exp_Attr.adb, sem_ch6.adb: Add handling of
Attribute_Elab_Subp_Body.
* snames.ads-tmpl (Attribute_Elab_Subp_Body, Name_Elab_Subp_Body): New.
* sem_util.adb: Update comments.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178165 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-29 Thomas Quinot <quinot@adacore.com>
charlet [Mon, 29 Aug 2011 08:49:48 +0000 (08:49 +0000)]
2011-08-29  Thomas Quinot  <quinot@adacore.com>

* par_sco.adb, scos.adb, scos.ads, put_scos.adb, get_scos.adb: Record
pragma name for each SCO statement corresponding to a pragma.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178164 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-29 Arnaud Charlet <charlet@adacore.com>
charlet [Mon, 29 Aug 2011 08:46:47 +0000 (08:46 +0000)]
2011-08-29  Arnaud Charlet  <charlet@adacore.com>

* opt.ads: Minor editing.

2011-08-29  Yannick Moy  <moy@adacore.com>

* gnat1drv.adb (Adjust_Global_Switches): Remove options for ALFA mode
that only made sense for CodePeer mode.

2011-08-29  Jose Ruiz  <ruiz@adacore.com>

* targparm.ads (Support_64_Bit_Divides_On_Target): Remove this flag
which is no longer used.
* targparm.adb (S64, S64_Str, Get_Target_Parameters): Remove the
handling of the 64-bit division check.
* exp_ch4.adb (Expand_N_Op_Divide): Remove the check for 64-bit
division available.
* system*.ads (Support_64_Bit_Divides): Remove this flag which is no
longer used.

2011-08-29  Thomas Quinot  <quinot@adacore.com>

* get_scos.adb: Minor reformatting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178163 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-29 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Mon, 29 Aug 2011 08:40:53 +0000 (08:40 +0000)]
2011-08-29  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_util.adb (Process_Statements_For_Controlled_Objects): Whenever a
statement list is wrapped in a block, the block is explicitly analyzed
in order to properly redecorate the entities and create a servicing
finalizer.

2011-08-29  Tristan Gingold  <gingold@adacore.com>

* sinfo.ads, sinfo.adb (Zero_Cost_Handling): Remove.
(Set_Zero_Cost_Handling): Remove.

2011-08-29  Thomas Quinot  <quinot@adacore.com>

* par_sco.adb, scos.ads, put_scos.adb, get_scos.adb: Minor reformatting

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178162 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-29 Geert Bosch <bosch@adacore.com>
charlet [Mon, 29 Aug 2011 08:36:28 +0000 (08:36 +0000)]
2011-08-29  Geert Bosch  <bosch@adacore.com>

* s-vaflop-vms-alpha.adb (Neg_F): Use subtraction instead of negation
instruction, as the latter may produce -0.0, which is not a valid VAX
F float number.
(Neg_G): Likewise for VAX F float.

2011-08-29  Robert Dewar  <dewar@adacore.com>

* exp_util.adb: Minor reformatting.

2011-08-29  Yannick Moy  <moy@adacore.com>

* sem_ch3.adb: Minor comment update.

2011-08-29  Thomas Quinot  <quinot@adacore.com>

* checks.adb (Apply_Type_Conversion_Checks): Use the Underlying_Type of
the operand type.

2011-08-29  Thomas Quinot  <quinot@adacore.com>

* par_sco.adb (Traverse_Declarations_Or_Statements): Do not flush
current statement sequence on a generic instantiation or a subprogram
declaration.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178161 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-29 Robert Dewar <dewar@adacore.com>
charlet [Mon, 29 Aug 2011 08:32:46 +0000 (08:32 +0000)]
2011-08-29  Robert Dewar  <dewar@adacore.com>

* sem_type.adb, einfo.ads, freeze.adb, exp_ch4.adb, sem_ch13.adb:
Minor reformatting.

2011-08-29  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_util.adb (Requires_Cleanup_Actions (List_Id, Boolean, Boolean)):
Correct the check which involves the freeze node of a controlled or
access-to-controlled type.

2011-08-29  Geert Bosch  <bosch@adacore.com>

* sem_warn.adb (Check_Code_Statement): Remove check for consecutive Asm
statements.
* s-vaflop-vms-alpha.adb: Remove bogus Volatile => True arguments from
Asm statements.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178160 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-29 Yannick Moy <moy@adacore.com>
charlet [Mon, 29 Aug 2011 08:30:02 +0000 (08:30 +0000)]
2011-08-29  Yannick Moy  <moy@adacore.com>

* sem_ch3.adb (Array_Type_Declaration): Insert a subtype declaration
for every index type and component type that is not a subtype_mark.
(Process_Subtype): Set Etype of subtype.

2011-08-29  Robert Dewar  <dewar@adacore.com>

* a-cbmutr.adb, a-cimutr.adb, a-comutr.adb, prj-nmsc.adb: Minor code
reorganization.  Minor reformatting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178159 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-29 Steve Baird <baird@adacore.com>
charlet [Mon, 29 Aug 2011 08:26:40 +0000 (08:26 +0000)]
2011-08-29  Steve Baird  <baird@adacore.com>

* exp_ch4.adb (Expand_N_Op_Expon): Suppress N_Op_Expon node expansion
for CodePeer and ALFA modes.

2011-08-29  Ed Schonberg  <schonberg@adacore.com>

* sem_type.adb (Collect_Interps): Within an instance, collect a homonym
that comes from an enclosing scope if it is not the renaming of an
actual, to handle properly a spurious ambiguity in an instance.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178158 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-29 Eric Botcazou <ebotcazou@adacore.com>
charlet [Mon, 29 Aug 2011 08:24:15 +0000 (08:24 +0000)]
2011-08-29  Eric Botcazou  <ebotcazou@adacore.com>

* sem_ch13.adb (Alignment_Check_For_Esize_Change): Rename to...
(Alignment_Check_For_Size_Change): ...this.  Add SIZE parameter and
use it instead of the Esize of the first parameter.
(Analyze_Attribute_Definition_Clause) <Object_Size>: Adjust call to
above change.
<Size>: Likewise.  Call it for composite types on the RM size.

2011-08-29  Yannick Moy  <moy@adacore.com>

* exp_ch4.adb (Expand_N_Op_Not): Do not expand not on array.
* sem_util.adb (Unique_Name): Correct behaviour for names of
compilation units.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178157 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-29 Yannick Moy <moy@adacore.com>
charlet [Mon, 29 Aug 2011 08:21:24 +0000 (08:21 +0000)]
2011-08-29  Yannick Moy  <moy@adacore.com>

* sem_prag.adb (Check_Precondition_Postcondition): In formal
verification mode, analyze pragma expression for correctness, for
pre/post on library-level subprogram, as it is not expanded later.

2011-08-29  Yannick Moy  <moy@adacore.com>

* exp_aggr.adb (Expand_Array_Aggregate): Do not expand array aggregates
in formal verification.

2011-08-29  Thomas Quinot  <quinot@adacore.com>

* sem_util.adb: Minor reformatting.
* freeze.adb, sem_ch13.adb: Fix comment: Bit_Order is an attribute,
there's no pragma.
* par_sco.ads, par_sco.adb: Update comments.

2011-08-29  Yannick Moy  <moy@adacore.com>

* einfo.adb, einfo.ads: Remove flag Is_Postcondition_Proc and
associated getter/setter.
* sem_ch6.adb: Remove reference to Is_Postcondition_Proc.

2011-08-29  Vincent Celier  <celier@adacore.com>

* prj-attr.adb: New Compiler attribute Dependency_Kind and Language_Kind
* prj-conf.adb: Add_Default_GNAT_Naming_Scheme: Add a package Compiler
with declarations for Language_Kind and Dependency_Kind for Ada.
* prj-nmsc.adb (Check_Unit_Name): New name of procedure Check_Ada_Name
(Process_Compiler): Take into account the new attributes Dependency_Kind
and Language_Kind.
(Check_Configuration): Check if language kind is unit based, not if the
language name is Ada.
(Process_Exceptions_Unit_Based): Ditto
(Add_Language): Remove default additions of language and dependency kind
* prj.ads: Minor comment change
* snames.ads-tmpl: New standard names Dependency_Kind and Language_Kind

2011-08-29  Johannes Kanig  <kanig@adacore.com>

* debug.adb: Update comments.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178156 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Mon, 29 Aug 2011 00:18:54 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178152 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-28 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Sun, 28 Aug 2011 21:05:48 +0000 (21:05 +0000)]
2011-08-28  Paolo Carlini  <paolo.carlini@oracle.com>

* include/bits/move.h (swap(_Tp(&)[_Nm], _Tp(&)[_Nm])): Remove
workaround for c++/49045.
* include/bits/algorithmfwd.h: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178147 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoFix the use of linemap_add and remove unnecessary kludge
dodji [Sun, 28 Aug 2011 20:14:46 +0000 (20:14 +0000)]
Fix the use of linemap_add and remove unnecessary kludge

libcpp/

* line-map.c (linemap_add): Assert that reason must not be
LC_RENAME when called for the first time on a "main input file".

c-family/

* c-pch.c (c_common_read_pch): Call linemap_add with LC_ENTER as it's
the first time it's being called on this main TU.

gcc/lto/

* lto-lang.c (lto_init): Likewise.  Also, avoid calling
linemap_add twice.

gcc/fortran/

* scanner.c (load_file): Don't abuse LC_RENAME reason while
(indirectly) calling linemap_add.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178146 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago Core DR 342
jason [Sun, 28 Aug 2011 15:38:29 +0000 (15:38 +0000)]
Core DR 342
PR c++/48582
* pt.c (check_valid_ptrmem_cst_expr): A null member pointer value
is valid in C++11.
(convert_nontype_argument): Likewise.  Implicitly convert nullptr
and do constant folding.
* mangle.c (write_template_arg_literal): Mangle null member
pointer values as 0.
* call.c (null_member_pointer_value_p): New.
* cp-tree.h: Declare it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178144 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * ja.po: Update.
jsm28 [Sun, 28 Aug 2011 12:38:57 +0000 (12:38 +0000)]
* ja.po: Update.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178142 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-28 Mikael Pettersson <mikpe@it.uu.se>
vries [Sun, 28 Aug 2011 12:08:41 +0000 (12:08 +0000)]
2011-08-28  Mikael Pettersson  <mikpe@it.uu.se>

PR bootstrap/50218
* tree-ssa-loop-ivopts.c (determine_use_iv_cost_condition): Initialize
comp.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178141 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-28 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Sun, 28 Aug 2011 10:08:50 +0000 (10:08 +0000)]
2011-08-28  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/40866
* generated/iall_i1.c: Regenerated.
* generated/iall_i16.c: Regenerated.
* generated/iall_i2.c: Regenerated.
* generated/iall_i4.c: Regenerated.
* generated/iall_i8.c: Regenerated.
* generated/iany_i1.c: Regenerated.
* generated/iany_i16.c: Regenerated.
* generated/iany_i2.c: Regenerated.
* generated/iany_i4.c: Regenerated.
* generated/iany_i8.c: Regenerated.
* generated/iparity_i1.c: Regenerated.
* generated/iparity_i16.c: Regenerated.
* generated/iparity_i2.c: Regenerated.
* generated/iparity_i4.c: Regenerated.
* generated/iparity_i8.c: Regenerated.
* generated/norm2_r10.c: Regenerated.
* generated/norm2_r16.c: Regenerated.
* generated/norm2_r4.c: Regenerated.
* generated/norm2_r8.c: Regenerated.
* generated/parity_l1.c: Regenerated.
* generated/parity_l16.c: Regenerated.
* generated/parity_l2.c: Regenerated.
* generated/parity_l4.c: Regenerated.
* generated/parity_l8.c: Regenerated.
* generated/misc_specifics.F90: Regenerated (comment change).
* generated/_abs_c10.F90: Regenerated (comment change).
* generated/_abs_c16.F90: Regenerated (comment change).
* generated/_abs_c4.F90: Regenerated (comment change).
* generated/_abs_c8.F90: Regenerated (comment change).
* generated/_abs_i16.F90: Regenerated (comment change).
* generated/_abs_i4.F90: Regenerated (comment change).
* generated/_abs_i8.F90: Regenerated (comment change).
* generated/_abs_r10.F90: Regenerated (comment change).
* generated/_abs_r16.F90: Regenerated (comment change).
* generated/_abs_r4.F90: Regenerated (comment change).
* generated/_abs_r8.F90: Regenerated (comment change).
* generated/_acosh_r10.F90: Regenerated (comment change).
* generated/_acosh_r16.F90: Regenerated (comment change).
* generated/_acosh_r4.F90: Regenerated (comment change).
* generated/_acosh_r8.F90: Regenerated (comment change).
* generated/_acos_r10.F90: Regenerated (comment change).
* generated/_acos_r16.F90: Regenerated (comment change).
* generated/_acos_r4.F90: Regenerated (comment change).
* generated/_acos_r8.F90: Regenerated (comment change).
* generated/_aimag_c10.F90: Regenerated (comment change).
* generated/_aimag_c16.F90: Regenerated (comment change).
* generated/_aimag_c4.F90: Regenerated (comment change).
* generated/_aimag_c8.F90: Regenerated (comment change).
* generated/_aint_r10.F90: Regenerated (comment change).
* generated/_aint_r16.F90: Regenerated (comment change).
* generated/_aint_r4.F90: Regenerated (comment change).
* generated/_aint_r8.F90: Regenerated (comment change).
* generated/_anint_r10.F90: Regenerated (comment change).
* generated/_anint_r16.F90: Regenerated (comment change).
* generated/_anint_r4.F90: Regenerated (comment change).
* generated/_anint_r8.F90: Regenerated (comment change).
* generated/_asinh_r10.F90: Regenerated (comment change).
* generated/_asinh_r16.F90: Regenerated (comment change).
* generated/_asinh_r4.F90: Regenerated (comment change).
* generated/_asinh_r8.F90: Regenerated (comment change).
* generated/_asin_r10.F90: Regenerated (comment change).
* generated/_asin_r16.F90: Regenerated (comment change).
* generated/_asin_r4.F90: Regenerated (comment change).
* generated/_asin_r8.F90: Regenerated (comment change).
* generated/_atan2_r10.F90: Regenerated (comment change).
* generated/_atan2_r16.F90: Regenerated (comment change).
* generated/_atan2_r4.F90: Regenerated (comment change).
* generated/_atan2_r8.F90: Regenerated (comment change).
* generated/_atanh_r10.F90: Regenerated (comment change).
* generated/_atanh_r16.F90: Regenerated (comment change).
* generated/_atanh_r4.F90: Regenerated (comment change).
* generated/_atanh_r8.F90: Regenerated (comment change).
* generated/_atan_r10.F90: Regenerated (comment change).
* generated/_atan_r16.F90: Regenerated (comment change).
* generated/_atan_r4.F90: Regenerated (comment change).
* generated/_atan_r8.F90: Regenerated (comment change).
* generated/_conjg_c10.F90: Regenerated (comment change).
* generated/_conjg_c16.F90: Regenerated (comment change).
* generated/_conjg_c4.F90: Regenerated (comment change).
* generated/_conjg_c8.F90: Regenerated (comment change).
* generated/_cosh_r10.F90: Regenerated (comment change).
* generated/_cosh_r16.F90: Regenerated (comment change).
* generated/_cosh_r4.F90: Regenerated (comment change).
* generated/_cosh_r8.F90: Regenerated (comment change).
* generated/_cos_c10.F90: Regenerated (comment change).
* generated/_cos_c16.F90: Regenerated (comment change).
* generated/_cos_c4.F90: Regenerated (comment change).
* generated/_cos_c8.F90: Regenerated (comment change).
* generated/_cos_r10.F90: Regenerated (comment change).
* generated/_cos_r16.F90: Regenerated (comment change).
* generated/_cos_r4.F90: Regenerated (comment change).
* generated/_cos_r8.F90: Regenerated (comment change).
* generated/_dim_i16.F90: Regenerated (comment change).
* generated/_dim_i4.F90: Regenerated (comment change).
* generated/_dim_i8.F90: Regenerated (comment change).
* generated/_dim_r10.F90: Regenerated (comment change).
* generated/_dim_r16.F90: Regenerated (comment change).
* generated/_dim_r4.F90: Regenerated (comment change).
* generated/_dim_r8.F90: Regenerated (comment change).
* generated/_exp_c10.F90: Regenerated (comment change).
* generated/_exp_c16.F90: Regenerated (comment change).
* generated/_exp_c4.F90: Regenerated (comment change).
* generated/_exp_c8.F90: Regenerated (comment change).
* generated/_exp_r10.F90: Regenerated (comment change).
* generated/_exp_r16.F90: Regenerated (comment change).
* generated/_exp_r4.F90: Regenerated (comment change).
* generated/_exp_r8.F90: Regenerated (comment change).
* generated/_log10_r10.F90: Regenerated (comment change).
* generated/_log10_r16.F90: Regenerated (comment change).
* generated/_log10_r4.F90: Regenerated (comment change).
* generated/_log10_r8.F90: Regenerated (comment change).
* generated/_log_c10.F90: Regenerated (comment change).
* generated/_log_c16.F90: Regenerated (comment change).
* generated/_log_c4.F90: Regenerated (comment change).
* generated/_log_c8.F90: Regenerated (comment change).
* generated/_log_r10.F90: Regenerated (comment change).
* generated/_log_r16.F90: Regenerated (comment change).
* generated/_log_r4.F90: Regenerated (comment change).
* generated/_log_r8.F90: Regenerated (comment change).
* generated/_mod_i16.F90: Regenerated (comment change).
* generated/_mod_i4.F90: Regenerated (comment change).
* generated/_mod_i8.F90: Regenerated (comment change).
* generated/_mod_r10.F90: Regenerated (comment change).
* generated/_mod_r16.F90: Regenerated (comment change).
* generated/_mod_r4.F90: Regenerated (comment change).
* generated/_mod_r8.F90: Regenerated (comment change).
* generated/_sign_i16.F90: Regenerated (comment change).
* generated/_sign_i4.F90: Regenerated (comment change).
* generated/_sign_i8.F90: Regenerated (comment change).
* generated/_sign_r10.F90: Regenerated (comment change).
* generated/_sign_r16.F90: Regenerated (comment change).
* generated/_sign_r4.F90: Regenerated (comment change).
* generated/_sign_r8.F90: Regenerated (comment change).
* generated/_sinh_r10.F90: Regenerated (comment change).
* generated/_sinh_r16.F90: Regenerated (comment change).
* generated/_sinh_r4.F90: Regenerated (comment change).
* generated/_sinh_r8.F90: Regenerated (comment change).
* generated/_sin_c10.F90: Regenerated (comment change).
* generated/_sin_c16.F90: Regenerated (comment change).
* generated/_sin_c4.F90: Regenerated (comment change).
* generated/_sin_c8.F90: Regenerated (comment change).
* generated/_sin_r10.F90: Regenerated (comment change).
* generated/_sin_r16.F90: Regenerated (comment change).
* generated/_sin_r4.F90: Regenerated (comment change).
* generated/_sin_r8.F90: Regenerated (comment change).
* generated/_sqrt_c10.F90: Regenerated (comment change).
* generated/_sqrt_c16.F90: Regenerated (comment change).
* generated/_sqrt_c4.F90: Regenerated (comment change).
* generated/_sqrt_c8.F90: Regenerated (comment change).
* generated/_sqrt_r10.F90: Regenerated (comment change).
* generated/_sqrt_r16.F90: Regenerated (comment change).
* generated/_sqrt_r4.F90: Regenerated (comment change).
* generated/_sqrt_r8.F90: Regenerated (comment change).
* generated/_tanh_r10.F90: Regenerated (comment change).
* generated/_tanh_r16.F90: Regenerated (comment change).
* generated/_tanh_r4.F90: Regenerated (comment change).
* generated/_tanh_r8.F90: Regenerated (comment change).
* generated/_tan_r10.F90: Regenerated (comment change).
* generated/_tan_r16.F90: Regenerated (comment change).
* generated/_tan_r4.F90: Regenerated (comment change).
* generated/_tan_r8.F90: Regenerated (comment change).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178140 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Sun, 28 Aug 2011 00:18:34 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178139 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * doc/rtl.texi (simple_return): Document.
bernds [Sat, 27 Aug 2011 17:38:58 +0000 (17:38 +0000)]
* doc/rtl.texi (simple_return): Document.
(parallel, PATTERN): Here too.
* doc/md.texi (return): Mention it's allowed to expand to simple_return
in some cases.
(simple_return): Document standard pattern.
* gengenrtl.c (special_rtx): SIMPLE_RETURN is special.
* final.c (final_scan_insn): Use ANY_RETURN_P on body.
* reorg.c (function_return_label, function_simple_return_label):
New static variables, replacing...
(end_of_function_label): ... this.
(simplejump_or_return_p): New static function.
(optimize_skip, steal_delay_list_from_fallthrough,
fill_slots_from_thread): Use it.
(relax_delay_slots): Likewise.  Use ANY_RETURN_P on body.
(rare_destination, follow_jumps): Use ANY_RETURN_P on body.
(find_end_label): Take a new arg which is one of the two return
rtxs.  Depending on which, set either function_return_label or
function_simple_return_label.  All callers changed.
(make_return_insns): Make both kinds.
(dbr_schedule): Adjust for two kinds of end labels.
* function.c (emit_return_into_block): Set JUMP_LABEL properly.
* genemit.c (gen_exp): Handle SIMPLE_RETURN.
(gen_expand, gen_split): Use ANY_RETURN_P.
* df-scan.c (df_uses_record): Handle SIMPLE_RETURN.
* rtl.def (SIMPLE_RETURN): New code.
* ifcvt.c (find_if_case_1): Be more careful about
redirecting jumps to the EXIT_BLOCK.
* jump.c (condjump_p, condjump_in_parallel_p, any_condjump_p,
returnjump_p_1): Handle SIMPLE_RETURNs.
* print-rtl.c (print_rtx): Likewise.
* rtl.c (copy_rtx): Likewise.
* bt-load.c (compute_defs_uses_and_gen): Use ANY_RETURN_P.
* combine.c (simplify_set): Likewise.
* resource.c (find_dead_or_set_registers, mark_set_resources):
Likewise.
* emit-rtl.c (verify_rtx_sharing, classify_insn, copy_insn_1,
copy_rtx_if_shared_1, mark_used_flags): Handle SIMPLE_RETURNs.
(init_emit_regs): Initialize simple_return_rtx.
* cfglayout.c (fixup_reorder_chain): Pass a JUMP_LABEL to
force_nonfallthru_and_redirect.
* rtl.h (ANY_RETURN_P): Allow SIMPLE_RETURN.
(GR_SIMPLE_RETURN): New enum value.
(simple_return_rtx): New macro.
* basic-block.h (force_nonfallthru_and_redirect): Adjust
declaration.
* cfgrtl.c (force_nonfallthru_and_redirect): Take a new jump_label
argument.  All callers changed.  Be careful about what kinds of
returnjumps to generate.
* config/i386/3i86.c (ix86_pad_returns, ix86_count_insn_bb,
ix86_pad_short_function): Likewise.
* config/arm/arm.c (arm_final_prescan_insn): Handle both kinds
of return.
* config/mips/mips.md (any_return): New code_iterator.
(optab): Add cases for return and simple_return.
(return): Expand to a simple_return.
(simple_return): New pattern.
(*<optab>, *<optab>_internal for any_return): New patterns.
(return_internal): Remove.
* config/mips/mips.c (mips_expand_epilogue): Make the last insn
a simple_return_internal.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178135 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/i386/sse.md (*absneg<mode>2): Fix split condition.
uros [Sat, 27 Aug 2011 10:44:00 +0000 (10:44 +0000)]
* config/i386/sse.md (*absneg<mode>2): Fix split condition.
(vec_extract_lo_<mode>): Prevent both operands in memory.
(vec_extract_lo_v16hi): Ditto.
(*vec_extract_v4sf_mem): Add TARGET_SSE insn constraint.

* config/i386/sse.md (mulv16qi3): Attach REG_EQUAL note.
(*sse2_mulv4si3): Ditto.
(mulv2di3): Ditto.
* config/i386/i386.c (legitimize_tls_address): Change REG_EQIV
notes to REG_EQUAL.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178132 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR target/50202
uros [Sat, 27 Aug 2011 07:46:35 +0000 (07:46 +0000)]
PR target/50202
* config/i386/sse.md (sse4_2_pcmpestr): Emit NOTE_INSN_DELETED note
when all outputs are unused.
(sse4_2_pcmpestr): Ditto.

testsuite/ChangeLog:

PR target/50202
* gcc.target/i386/pr50202.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178130 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Sat, 27 Aug 2011 00:18:32 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178129 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/i386/i386.c (ix86_build_const_vector): Rewrite using loop
uros [Fri, 26 Aug 2011 20:53:38 +0000 (20:53 +0000)]
* config/i386/i386.c (ix86_build_const_vector): Rewrite using loop
with RTVEC_ELT accessor.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178124 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/i386/i386.md (round<mode>2): New expander.
uros [Fri, 26 Aug 2011 19:42:30 +0000 (19:42 +0000)]
* config/i386/i386.md (round<mode>2): New expander.
* config/i386/i386.c (enum ix86_builtins): Add
IX86_BUILTIN_ROUND{PS,PD}_AZ{,256}.
(struct builtin_description): Add __builtin_ia32_round{ps,pd}_az{,256}
descriptions.
(ix86_builtin_vectorized_function): Handle BUILT_IN_ROUND{,F} builtins.

testsuite/ChangeLog:

* gcc.target/i386/sse_4_1-round-vec.c: New test.
* gcc.target/i386/sse_4_1-roundf-vec.c: New test.
* gcc.target/i386/avx-round-vec.c: New test.
* gcc.target/i386/avx-roundf-vec.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178123 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR middle-end/50083
uros [Fri, 26 Aug 2011 16:10:45 +0000 (16:10 +0000)]
PR middle-end/50083
* convert.c (convert_to_integer) <BUIT_IN_ROUND{,F,L}>: Convert
only when TARGET_C99_FUNCTIONS.
<BUILT_IN_NEARBYINT{,F,L}>: Ditto.
<BUILT_IN_RINT{,F,L}>: Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178119 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR lto/50165
matz [Fri, 26 Aug 2011 16:02:17 +0000 (16:02 +0000)]
PR lto/50165
* lto-streamer-in.c (canon_file_name): Initialize new_slot->len;
don't call strlen twice, use memcpy.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178118 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoAdd <lzcntintrin.h>, <bmiintrin.h> and <bmi2intrin.h> to <immintrin.h>.
hjl [Fri, 26 Aug 2011 15:45:32 +0000 (15:45 +0000)]
Add <lzcntintrin.h>, <bmiintrin.h> and <bmi2intrin.h> to <immintrin.h>.

2011-08-26  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/bmi2intrin.h: Allow in <immintrin.h>.
* config/i386/bmiintrin.h: Likewise.
* config/i386/lzcntintrin.h: Likewise.

* config/i386/immintrin.h: Include <lzcntintrin.h>,
<bmiintrin.h> and <bmi2intrin.h>.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178117 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDisable .init_array/.fini_array support on Solaris (PR target/50166)
ro [Fri, 26 Aug 2011 15:17:42 +0000 (15:17 +0000)]
Disable .init_array/.fini_array support on Solaris (PR target/50166)

PR target/50166
* acinclude.m4 (gcc_AC_INITFINI_ARRAY): Check count in main.
* configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178116 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * trans-decl.c (get_proc_pointer_decl): Set DECL_TLS_MODEL
jakub [Fri, 26 Aug 2011 14:55:05 +0000 (14:55 +0000)]
* trans-decl.c (get_proc_pointer_decl): Set DECL_TLS_MODEL
if threadprivate.
* symbol.c (check_conflict): Allow threadprivate attribute with
FL_PROCEDURE if proc_pointer.

* testsuite/libgomp.fortran/threadprivate4.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178114 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * gcc.target/i386/cmpxchg16b-1.c: Match also space after the
jakub [Fri, 26 Aug 2011 14:52:54 +0000 (14:52 +0000)]
* gcc.target/i386/cmpxchg16b-1.c: Match also space after the
instruction.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178113 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR c/50179
jakub [Fri, 26 Aug 2011 14:37:22 +0000 (14:37 +0000)]
PR c/50179
* c-typeck.c (c_process_expr_stmt): Skip over nops and
call mark_exp_read even if exprv is ADDR_EXPR.

* c-c++-common/Wunused-var-14.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178110 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc/
rsandifo [Fri, 26 Aug 2011 14:21:19 +0000 (14:21 +0000)]
gcc/
* df-problems.c (df_note_bb_compute): Pass uses rather than defs
to df_set_dead_notes_for_mw.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178109 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-26 Richard Guenther <rguenther@suse.de>
rguenth [Fri, 26 Aug 2011 14:02:28 +0000 (14:02 +0000)]
2011-08-26  Richard Guenther  <rguenther@suse.de>

* varasm.c (decode_addr_const): Handle MEM_REF[&X, OFF].

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178107 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-26 Tom de Vries <tom@codesourcery.com>
vries [Fri, 26 Aug 2011 13:38:22 +0000 (13:38 +0000)]
2011-08-26  Tom de Vries  <tom@codesourcery.com>

* gcc.dg/tree-ssa/ivopts-lt.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178105 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-26 Zdenek Dvorak <ook@ucw.cz>
vries [Fri, 26 Aug 2011 13:36:28 +0000 (13:36 +0000)]
2011-08-26  Zdenek Dvorak  <ook@ucw.cz>
    Tom de Vries  <tom@codesourcery.com>

* tree-ssa-loop-ivopts.c (struct cost_pair): Add comp field.
(struct ivopts_data): Add loop_single_exit_p field.
(niter_for_exit): Change parameter desc_p into return value.  Return
desc if desc->may_be_zero.  Free desc if unused.
(niter_for_single_dom_exit): Change return type.
(find_induction_variables): Handle changed return type of
niter_for_single_dom_exit.  Dump may_be_zero.
(add_candidate_1): Keep original base and step type for IP_ORIGINAL.
(set_use_iv_cost): Add and handle comp parameter.
(determine_use_iv_cost_generic, determine_use_iv_cost_address): Add
comp argument to set_use_iv_cost.
(strip_wrap_conserving_type_conversions, expr_equal_p)
(difference_cannot_overflow_p, iv_elimination_compare_lt): New function.
(may_eliminate_iv): Add comp parameter.  Handle new return type of
niter_for_exit.  Use loop_single_exit_p.  Use iv_elimination_compare_lt.
(determine_use_iv_cost_condition): Add comp argument to set_use_iv_cost
and may_eliminate_iv.
(rewrite_use_compare): Move call to iv_elimination_compare to ...
(may_eliminate_iv): Here.
(tree_ssa_iv_optimize_loop): Initialize loop_single_exit_p.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178104 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-26 Tom de Vries <tom@codesourcery.com>
vries [Fri, 26 Aug 2011 13:03:58 +0000 (13:03 +0000)]
2011-08-26  Tom de Vries  <tom@codesourcery.com>

* tree-pretty-print (dump_generic_node): Test for NULL_TREE before
accessing TREE_TYPE.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178103 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoCommit for Jiangning.
ramana [Fri, 26 Aug 2011 12:50:19 +0000 (12:50 +0000)]
Commit for Jiangning.

Add conditional compare support for Thumb2.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178102 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * rtlanal.c (nonzero_bits1): Handle CLRSB.
jakub [Fri, 26 Aug 2011 12:15:25 +0000 (12:15 +0000)]
* rtlanal.c (nonzero_bits1): Handle CLRSB.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178101 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-26 Richard Guenther <rguenther@suse.de>
rguenth [Fri, 26 Aug 2011 11:23:37 +0000 (11:23 +0000)]
2011-08-26  Richard Guenther  <rguenther@suse.de>

* expr.c (string_constant): Handle &MEM_REF.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178100 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-26 Andrew Stubbs <ams@codesourcery.com>
ams [Fri, 26 Aug 2011 09:53:06 +0000 (09:53 +0000)]
2011-08-26  Andrew Stubbs  <ams@codesourcery.com>

gcc/
* config/arm/arm.c (struct four_ints): New type.
(count_insns_for_constant): Delete function.
(find_best_start): Delete function.
(optimal_immediate_sequence): New function.
(optimal_immediate_sequence_1): New function.
(arm_gen_constant): Move constant splitting code to
optimal_immediate_sequence.
Rewrite constant negation/invertion code.

gcc/testsuite/
* gcc.target/arm/thumb2-replicated-constant1.c: New file.
* gcc.target/arm/thumb2-replicated-constant2.c: New file.
* gcc.target/arm/thumb2-replicated-constant3.c: New file.
* gcc.target/arm/thumb2-replicated-constant4.c: New file.

2011-08-26  Andrew Stubbs  <ams@codesourcery.com>

gcc/
* config/arm/arm-protos.h (const_ok_for_op): Add prototype.
* config/arm/arm.c (const_ok_for_op): Add support for addw/subw.
Remove prototype. Remove static function type.
* config/arm/arm.md (*arm_addsi3): Add addw/subw support.
Add arch attribute.
* config/arm/constraints.md (Pj, PJ): New constraints.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178099 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoFix scheduling descriptions for smull, smmul and friends on Cortex-A9.
ramana [Fri, 26 Aug 2011 08:44:21 +0000 (08:44 +0000)]
Fix scheduling descriptions for smull, smmul and friends on Cortex-A9.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178098 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Fri, 26 Aug 2011 00:18:33 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178095 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoChange Bound_method_expression to refer to a constant method.
ian [Thu, 25 Aug 2011 23:14:20 +0000 (23:14 +0000)]
Change Bound_method_expression to refer to a constant method.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178091 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/i386/i386.md: Do not explicitly set default isa attribute.
uros [Thu, 25 Aug 2011 19:38:57 +0000 (19:38 +0000)]
* config/i386/i386.md: Do not explicitly set default isa attribute.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178088 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-25 Mikael Morin <mikael.morin@gcc.gnu.org>
mikael [Thu, 25 Aug 2011 19:10:06 +0000 (19:10 +0000)]
2011-08-25  Mikael Morin  <mikael.morin@gcc.gnu.org>

PR fortran/50050
* expr.c (gfc_free_shape): Do nothing if shape is NULL.
(free_expr0): Remove redundant NULL shape check.
* resolve.c (check_host_association): Ditto.
* trans-expr.c (gfc_trans_subarray_assign): Assert that shape is
non-NULL.
* trans-io.c (transfer_array_component): Ditto.

2011-08-25  Mikael Morin  <mikael.morin@gcc.gnu.org>

PR fortran/50050
* gfortran.dg/pointer_comp_init_1.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178086 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoPR 50132
rth [Thu, 25 Aug 2011 18:57:48 +0000 (18:57 +0000)]
PR 50132
PR 49864
        * cfgcleanup.c (old_insns_match_p): Don't allow cross-jump for
        non-constant stack adjutment.
        * expr.c (find_args_size_adjust): Break out from ...
        (fixup_args_size_notes): ... here.
        * rtl.h (find_args_size_adjust): Declare.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178084 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * call.c (convert_like_real): Remove redundant complain checks.
jason [Thu, 25 Aug 2011 18:22:54 +0000 (18:22 +0000)]
* call.c (convert_like_real): Remove redundant complain checks.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178082 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR c++/50157
jason [Thu, 25 Aug 2011 18:22:46 +0000 (18:22 +0000)]
PR c++/50157
* call.c (convert_like_real): Exit early if bad and !tf_error.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178081 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/i386/i386.md (isa): Add sse2, sse2_noavx, sse3,
uros [Thu, 25 Aug 2011 17:05:34 +0000 (17:05 +0000)]
* config/i386/i386.md (isa): Add sse2, sse2_noavx, sse3,
sse4 and sse4_noavx.
(enabled): Handle sse2, sse2_noavx, sse3, sse4 and sse4_noavx.
(*pushdf_rex64): Change Y2 register constraint to x.
(*movdf_internal_rex64): Ditto.
(*zero_extendsidi2_rex64): Ditto.
(*movdi_internal): Change Y2 register constraint to x
and update "isa" attribute.
(*pushdf): Ditto.
(*movdf internal): Ditto.
(zero_extendsidi2_1): Ditto.
(*truncdfdf_mixed): Ditto.
(*truncxfdf2_mixed): Ditto.
* config/i386/mmx.md (*mov<mode>_internal_rex64): Change Y2
register constraint to x.
(*movv2sf_internal_rex64): Ditto.
(*mov<mode>_internal): Change Y2 register constraint to x
and add "isa" attribute.
(*movv2sf_internal): Ditto.
(*vec_extractv2si_1): Ditto.
* config/i386/sse.md ("vec_set<mode>_0): Change Y2 and Y4 register
constraints to x and update "isa" attribute.
(*vec_interleave_highv2df): Change Y3 registerconstraint
to x and update "isa" attribute.
(*vec_interleave_lowv2df): Ditto.
(*vec_concatv2df): Change Y2 register constraint to x and
update "isa" attribute.
(sse2_loadld): Ditto.
(*vec_extractv2di_1): Ditto.
(*vec_dupv4si): Ditto.
(*vec_dupv2di): Ditto.
(*vec_concatv4si): Ditto.
(vec_concatv2di): Ditto.
* config/i386/constraints.md (Y2): Remove.
(Y3): Ditto.
(Y4): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178073 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-25 Tobias Burnus <burnus@net-b.de>
burnus [Thu, 25 Aug 2011 16:27:39 +0000 (16:27 +0000)]
2011-08-25  Tobias Burnus  <burnus@net-b.de>

        * trans-array.c (gfc_conv_descriptor_token): Add assert.
        * trans-decl.c (gfc_build_qualified_array,
        create_function_arglist): Handle assumed-shape arrays.
        * trans-expr.c (gfc_conv_procedure_call): Ditto.
        * trans-types.c (gfc_get_array_descriptor_base): Ditto, don't
        add "caf_token" to assumed-shape descriptors, new akind argument.
        (gfc_get_array_type_bounds): Pass akind.
        * trans.h (lang_decl): New elements caf_offset and token.
        (GFC_DECL_TOKEN, GFC_DECL_CAF_OFFSET): New macros.

2011-08-25  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/coarray_lib_token_4.f90: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178069 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-25 Tobias Burnus <burnus@net-b.de>
burnus [Thu, 25 Aug 2011 15:59:40 +0000 (15:59 +0000)]
2011-08-25  Tobias Burnus  <burnus@net-b.de>

        * trans-array.c (structure_alloc_comps): Fix for allocatable
        scalar coarray components.
        * trans-expr.c (gfc_conv_component_ref): Ditto.
        * trans-type.c (gfc_get_derived_type): Ditto.

2011-08-25  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/coarray/alloc_comp_1.f90: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178068 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/avr/avr.c (byte_immediate_operand): Remove Function.
gjl [Thu, 25 Aug 2011 14:36:01 +0000 (14:36 +0000)]
* config/avr/avr.c (byte_immediate_operand): Remove Function.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178067 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * testsuite/libstdc++-prettyprinters/simple.cc: New file.
tromey [Thu, 25 Aug 2011 14:29:47 +0000 (14:29 +0000)]
* testsuite/libstdc++-prettyprinters/simple.cc: New file.
* testsuite/lib/gdb-test.exp: New file.
* testsuite/libstdc++-prettyprinters/prettyprinters.exp: New
file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178066 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * regrename.c (scan_rtx_reg, scan_rtx_address, build_def_use,
bernds [Thu, 25 Aug 2011 14:23:47 +0000 (14:23 +0000)]
* regrename.c (scan_rtx_reg, scan_rtx_address, build_def_use,
dump_def_use_chain): Don't declare.
(mark_conflict, create_new_chain): Move before users.
(regrename_optimize): Move to near end of file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178065 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/avr-protos.h (byte_immediate_operand): Remove Prototype.
gjl [Thu, 25 Aug 2011 13:51:38 +0000 (13:51 +0000)]
* config/avr-protos.h (byte_immediate_operand): Remove Prototype.
(secondary_input_reload_class): Remove Prototype.
* config/avr/avr.c (byte_immediate_operand): Remove Function.
* config/avr/avr.md (setmemhi): Use u8_operand.
(strlenhi): Use const0_rtx for comparison.
* config/avr/avr.h (avr_reg_order): Remove Declaration.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178064 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/avr/avr.c (reg_class_tab): Make local to
gjl [Thu, 25 Aug 2011 13:50:30 +0000 (13:50 +0000)]
* config/avr/avr.c (reg_class_tab): Make local to
avr_regno_reg_class.  Return smallest register class available.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178063 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/avr/avr.c (STR_PREFIX_P): New Define.
gjl [Thu, 25 Aug 2011 13:46:35 +0000 (13:46 +0000)]
* config/avr/avr.c (STR_PREFIX_P): New Define.
(avr_asm_declare_function_name): Use it.
(avr_asm_named_section): Use it.
(avr_section_type_flags): Use it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178062 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-25 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 25 Aug 2011 13:24:34 +0000 (13:24 +0000)]
2011-08-25  Richard Guenther  <rguenther@suse.de>

* gcc.dg/Wshadow-3.c: Restore original content destroyed by r148442.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178061 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-25 Andrew Haley <aph@redhat.com>
aph [Thu, 25 Aug 2011 10:37:36 +0000 (10:37 +0000)]
2011-08-25  Andrew Haley  <aph@redhat.com>

        * src/arm/ffi.c (FFI_INIT_TRAMPOLINE): Remove hard-coded assembly
        instructions.
        * src/arm/sysv.S (ffi_arm_trampoline): Put them here instead.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178060 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * doc/md.texi (automata_option): Document collapse-ndfa.
bernds [Thu, 25 Aug 2011 10:30:13 +0000 (10:30 +0000)]
* doc/md.texi (automata_option): Document collapse-ndfa.
* genautomata.c (COLLAPSE_OPTION): New macro.
(collapse_flag): New static variable.
(struct description): New member normal_decls_num.
(struct automaton): New members advance_ainsn and collapse_ainsn.
(gen_automata_option): Check for COLLAPSE_OPTION.
(collapse_ndfa_insn_decl): New static variable.
(add_collapse_ndfa_insn_decl, special_decl_p): New functions.
(find_arc): If insn is the collapse-ndfa insn, accept any arc we
find.
(transform_insn_regexps): Call add_collapse_ndfa_insn_decl if
necessary.  Use normal_decls_num rather than decls_num, remove
test for special decls.
(create_alt_states, form_ainsn_with_same_reservs): Use
special_decl_p.
(make_automaton); Likewise.  Use the new advance_cycle_insn member
of struct automaton.
(create_composed_state): Disallow advance-cycle arcs if collapse_flag
is set.
(NDFA_to_DFA): Don't create composed states for the collapse-ndfa
transition.  Create the necessary transitions for it.
(create_ainsns): Return void.  Take an automaton_t argument, and
update its ainsn_list, advance_ainsn and collapse_ainsn members.  All
callers changed.
(COLLAPSE_NDFA_VALUE_NAME): New macro.
(output_tables): Output code to define it.
(output_internal_insn_code_evaluation): Output code to accept
const0_rtx as collapse-ndfa transition.
(output_default_latencies, output_print_reservation_func,
output_print_description): Reorganize loops to use normal_decls_num
as loop bound; remove special case for advance_cycle_insn_decl.
(initiate_automaton_gen): Handle COLLAPSE_OPTION.
(check_automata_insn_issues): Check for collapse_ainsn.
(expand_automate): Allocate sufficient space.  Initialize
normal_decls_num.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178059 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/avr/avr.md: Fix indentation from r177991.
gjl [Thu, 25 Aug 2011 10:27:18 +0000 (10:27 +0000)]
* config/avr/avr.md: Fix indentation from r177991.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178058 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * regrename.c (struct du_head): Remove member terminated.
bernds [Thu, 25 Aug 2011 10:12:35 +0000 (10:12 +0000)]
* regrename.c (struct du_head): Remove member terminated.
(create_new_chain): Don't initialize it.
(scan_rtx_reg): Don't set or test it, test the open_chains_set
bitmap instead.
(tick, this_tick): New global variables, moved out of
regrename_optimize.
(current_id, open_chains, closed_chains, open_chains_set,
live_in_chains, live_hard_regs): Reorder declarations.
(dump_def_use_chain): Move function earlier in the file.
(rename_chains): New static function, broken out of
regrename_optimize.
(regrename_optimize): Use it.  Remove #if 0'ed code.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178057 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDon't assume hg convert in gcc_update
ro [Thu, 25 Aug 2011 09:16:52 +0000 (09:16 +0000)]
Don't assume hg convert in gcc_update

* gcc_update: Determine svn branch from hg convert_revision.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178056 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-25 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
aldot [Thu, 25 Aug 2011 08:49:01 +0000 (08:49 +0000)]
2011-08-25  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>

* varasm.c: (default_binds_local_p_1): Commentary typo fix.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178055 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Thu, 25 Aug 2011 00:18:57 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178053 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogccgo: fixes to ast-dump, refactoring of export and ast-dump
ian [Wed, 24 Aug 2011 19:22:44 +0000 (19:22 +0000)]
gccgo:  fixes to ast-dump, refactoring of export and ast-dump
        to implement a common interface for writing basic
        type literals and added flags for optimization.

* lang.opt: Add fgo-optimize-.
* go-lang.c (go_langhook_handle_option): Handle OPT_fgo_optimize.
* go-c.h (go_enable_optimize): Declare.
* Make-lang.in (GO_OBJS): Add go/go-optimize.o.
(GO_EXPORT_H): Define.
(GO_IMPORT_H): Add $(GO_EXPORT_H).
(GO_AST_DUMP_H): Define.
(go/ast-dump.o, go/statements.o): Use GO_AST_DUMP_H.
(go/export.o, go/gogo.o, go/import.o): Use GO_EXPORT_H.
(go/types.o): Likewise.
(go/expressions.o): Use GO_AST_DUMP_H and GO_EXPORT_H.
(go/go-optimize.o): New target.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178046 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoMention PR target/50172.
hjl [Wed, 24 Aug 2011 13:25:22 +0000 (13:25 +0000)]
Mention PR target/50172.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178040 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoConvert to Pmode if needed.
hjl [Wed, 24 Aug 2011 13:24:07 +0000 (13:24 +0000)]
Convert to Pmode if needed.

2011-08-24  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.c (ix86_expand_builtin): Convert to Pmode if
needed.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178039 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-24 Tobias Burnus <burnus@net-b.de>
burnus [Wed, 24 Aug 2011 13:11:08 +0000 (13:11 +0000)]
2011-08-24  Tobias Burnus  <burnus@net-b.de>

        PR fortran/50163
        * expr.c (check_init_expr): Return when an error
        occured.

2011-08-24  Tobias Burnus  <burnus@net-b.de>

        PR fortran/50163
        * gfortran.dg/initialization_28.f90: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178038 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-24 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 24 Aug 2011 12:55:18 +0000 (12:55 +0000)]
2011-08-24  Richard Guenther  <rguenther@suse.de>

* tree-data-ref.c (dr_analyze_indices): Avoid unsharing the
ref in the basic-block case.  Move stripping array-refs
to the place we create an access-function for it.  Remove
bogus stripping down a MEM_REF to its base.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178037 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-24 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 24 Aug 2011 12:51:45 +0000 (12:51 +0000)]
2011-08-24  Richard Guenther  <rguenther@suse.de>

* fold-const.c (fold_comparison): Fold &a < &a + 4 even
with -fno-strict-overflow.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178036 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-24 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 24 Aug 2011 11:26:42 +0000 (11:26 +0000)]
2011-08-24  Richard Guenther  <rguenther@suse.de>

* tree-vectorizer.c (vect_print_dump_info): Avoid the
file and location clutter when dumping to dump files.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178034 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-24 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 24 Aug 2011 11:16:57 +0000 (11:16 +0000)]
2011-08-24  Richard Guenther  <rguenther@suse.de>

PR c/49396

c-family/
* c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Fix conditional.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178032 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-24 Simon Baldwin <simonb@google.com>
simonb [Wed, 24 Aug 2011 11:14:56 +0000 (11:14 +0000)]
2011-08-24  Simon Baldwin  <simonb@google.com>

* gengtype-state.c (write_state): Remove timestamped header line.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178031 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * Makefile.in (CFLAGS-collect2.o, CFLAGS-c-family/c-opts.o)
jsm28 [Wed, 24 Aug 2011 10:47:06 +0000 (10:47 +0000)]
* Makefile.in (CFLAGS-collect2.o, CFLAGS-c-family/c-opts.o)
(CFLAGS-c-family/c-pch.o, CFLAGS-prefix.o, CFLAGS-version.o)
(CFLAGS-lto-compress.o, CFLAGS-toplev.o, CFLAGS-intl.o)
(CFLAGS-cppbuiltin.o, CFLAGS-cppdefault.o): New.
(collect2.o, c-family/c-cppbuiltin.o, c-family/c-opts.o)
(c-family/c-pch.o, prefix.o, version.o, lto-compress.o, toplev.o)
(intl.o, cppbuiltin.o, cppdefault.o): Remove explicit compilation
rules.
(lto-wrapper$(exeext)): Use $(LINKER) not $(COMPILER).

ada:
* gcc-interface/Make-lang.in (CFLAGS-ada/tracebak.o)
(CFLAGS-ada/targext.o, CFLAGS-ada/cio.o, CFLAGS-ada/init.o)
(CFLAGS-ada/initialize.o, CFLAGS-ada/raise.o): New.
(ada/tracebak.o, ada/targext.o, ada/cio.o, ada/init.o)
(ada/initialize.o, ada/raise.o): Remove explicit compilation rules.

fortran:
* Make-lang.in (fortran/cpp.o): Remove explicit compilation rule.

go:
* Make-lang.in (CFLAGS-go/go-lang.o): New.
(go/go-lang.o): Remove explicit compilation rule.

java:
* Make-lang.in (CFLAGS-java/jcf-io.o, CFLAGS-java/jcf-path.o):
New.
(java/jcf-io.o, java/jcf-path.o): Remove explicit compilation
rules.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178030 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * Makefile.in (ALL_CXXFLAGS): Include $(CFLAGS-$@).
jsm28 [Wed, 24 Aug 2011 10:42:11 +0000 (10:42 +0000)]
* Makefile.in (ALL_CXXFLAGS): Include $(CFLAGS-$@).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178029 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-24 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 24 Aug 2011 10:07:20 +0000 (10:07 +0000)]
2011-08-24  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/50067
* tree-data-ref.c (dr_analyze_indices): Do not add an access
function for a MEM_REF base that has no evolution in the loop
nest or that is not analyzable.

* gcc.dg/torture/pr50067-3.c: New testcase.
* gcc.dg/torture/pr50067-4.c: Likewise.
* gcc.dg/torture/pr50067-5.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178028 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Wed, 24 Aug 2011 00:18:53 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178023 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-23 Vladimir Makarov <vmakarov@redhat.com>
vmakarov [Tue, 23 Aug 2011 23:06:04 +0000 (23:06 +0000)]
2011-08-23  Vladimir Makarov  <vmakarov@redhat.com>

* ira.c (ira_init_register_move_cost): Check small subclasses
through ira_reg_class_max_nregs and ira_available_class_regs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178019 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-08-23 Steve Ellcey <sje@cup.hp.com>
sje [Tue, 23 Aug 2011 21:32:34 +0000 (21:32 +0000)]
2011-08-23  Steve Ellcey  <sje@cup.hp.com>

PR libstdc++/50153
* inclhack.def (hpux11_abs): Extend to all hpux machines.
* fixincl.x: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178018 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/i386/sse-22.c: Rearrange to fix sse-22a.c failure.
uros [Tue, 23 Aug 2011 21:14:10 +0000 (21:14 +0000)]
* config/i386/sse-22.c: Rearrange to fix sse-22a.c failure.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178017 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/i386/constraints.md (Yp): New register constraint.
uros [Tue, 23 Aug 2011 20:00:27 +0000 (20:00 +0000)]
* config/i386/constraints.md (Yp): New register constraint.
* config/i386/i386.md (*addhi_1): Merge with *addhi_1_lea using
Yp register constraint.
(*addqi_1): Merge with *addqi_1_lea using Yp register constraint.
(*ashlhi3_1): Merge with *ashlhi3_1_lea using Yp register constraint.
(*ashlqi3_1): Merge with *ashlqi3_1_lea using Yp register constraint.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178011 138bc75d-0d04-0410-961f-82ee72b054a4