OSDN Git Service

pf3gnuchains/gcc-fork.git
12 years ago2011-09-06 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 6 Sep 2011 13:17:50 +0000 (13:17 +0000)]
2011-09-06  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/48317
* tree-ssa-sccvn.h (struct vn_nary_op_s): Make op a true
trailing array.
(sizeof_vn_nary_op): New inline function.
(vn_nary_op_lookup_pieces): Adjust.
(vn_nary_op_insert_pieces): Likewise.
* tree-ssa-sccvn.c (vn_nary_op_eq): Also compare the length.
(init_vn_nary_op_from_pieces): Adjust signature.  Deal with
any number of operands.
(vn_nary_length_from_stmt): New function.
(init_vn_nary_op_from_stmt): Adjust for CONSTRUCTOR handling.
(vn_nary_op_lookup_pieces): Adjust signature and allocate properly
sized temporary.
(vn_nary_op_lookup): Likewise.
(vn_nary_op_lookup_stmt): Likewise.
(vn_nary_op_insert_into): Likewise.
(vn_nary_op_insert_stmt): Likewise.
(visit_use): Handle CONSTRUCTOR as nary.
* tree-ssa-pre.c (phi_translate_1): Adjust.
(create_expression_by_pieces): Likewise.
(compute_avail): Likewise.

* gcc.dg/tree-ssa/ssa-fre-31.c: New testcase.

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

12 years ago2011-09-06 Robert Dewar <dewar@adacore.com>
charlet [Tue, 6 Sep 2011 13:09:41 +0000 (13:09 +0000)]
2011-09-06  Robert Dewar  <dewar@adacore.com>

* impunit.ads, impunit.adb (Is_RM_Defined_Unit): New function.
* s-rident.ads: New restriction No_Implementation_Units
(this restriction is also part of the profile
No_Implementation_Extensions)
* sem_ch10.adb (Analyze_With_Clause): Add check for
No_Implementation_Units restriction.

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

12 years ago2011-09-06 Jerome Guitton <guitton@adacore.com>
charlet [Tue, 6 Sep 2011 13:07:09 +0000 (13:07 +0000)]
2011-09-06  Jerome Guitton  <guitton@adacore.com>

* sysdep.c (__gnat_get_task_options): Disable VX_SPE_TASK
on vThreads.

2011-09-06  Thomas Quinot  <quinot@adacore.com>

* s-solita.adb: Minor reformatting.

2011-09-06  Ed Schonberg  <schonberg@adacore.com>

* sem_ch6.adb (Analyze_Subprogram_Body_Helper): The body that
is a rewriting of an expression function does not freeze previous
entities.

2011-09-06  Robert Dewar  <dewar@adacore.com>

* impunit.adb (Is_Known_Unit): Fix bad handling of Ada 2012 case

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

12 years ago2011-09-06 Tristan Gingold <gingold@adacore.com>
charlet [Tue, 6 Sep 2011 12:16:01 +0000 (12:16 +0000)]
2011-09-06  Tristan Gingold  <gingold@adacore.com>

* gcc-interface/Makefile.in: Handle e500v2-wrs-vxworksae like
powerpc-wrs-vxworksae.

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

12 years ago2011-09-06 Thomas Quinot <quinot@adacore.com>
charlet [Tue, 6 Sep 2011 12:14:30 +0000 (12:14 +0000)]
2011-09-06  Thomas Quinot  <quinot@adacore.com>

* s-os_lib.ads (Spawn): Minor documentation clarification,
Success is True for a zero exit status.

2011-09-06  Ed Schonberg  <schonberg@adacore.com>

* sem_ch5.adb: Add message for common iterator error.

2011-09-06  Ed Schonberg  <schonberg@adacore.com>

* exp_ch3.adb (Build_Initialization_Call): If the target is a
selected component discriminated by a current instance, replace
the constraint with a reference to the target object, regardless
of whether the context is an init_proc.

2011-09-06  Robert Dewar  <dewar@adacore.com>

* exp_attr.adb: Descriptor_Size is never static.

2011-09-06  Robert Dewar  <dewar@adacore.com>

* gnat_ugn.texi: Add documentation for LSLOC metric in gnatmetric

2011-09-06  Hristian Kirtchev  <kirtchev@adacore.com>

* gnat_rm.texi: Clarify that attribute Descriptor_Size is
non-static.

2011-09-06  Ed Schonberg  <schonberg@adacore.com>

* sem_res.adb (Resolve): An expression that is the body of an
expression function does not freeze.

2011-09-06  Matthew Heaney  <heaney@adacore.com>

* a-csquin.ads, a-cusyqu.adb, a-cbprqu.adb, a-cbsyqu.adb,
a-cuprqu.adb: Changed copyright notice to indicate current
year only.

2011-09-06  Vincent Celier  <celier@adacore.com>

* prj.adb: Minor spelling error fix in comment
* sem_res.adb: Minor reformatting

2011-09-06  Pascal Obry  <obry@adacore.com>

* sysdep.c (winflush_nt): Removed as not needed anymore.
(winflush_95): Likewise.
(winflush_init): Likewise.
(winflush_function): Likewise.
(getc_immediate_common): Remove call to winflush_function.

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

12 years ago2011-09-06 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Tue, 6 Sep 2011 12:03:30 +0000 (12:03 +0000)]
2011-09-06  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_attr.adb (Expand_N_Attribute_Reference): Rewrite the
processing for Descriptor_Size.
* gnat_rm.texi: Rephrase the wording for attribute Descriptor_Size
to account for its broader usage.
* sem_attr.adb (Analyze_Attribute): Change the error detection
circuitry for Descriptor_Size as the attribute is now applicable
to all types.

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

12 years ago2011-09-06 Robert Dewar <dewar@adacore.com>
charlet [Tue, 6 Sep 2011 11:59:12 +0000 (11:59 +0000)]
2011-09-06  Robert Dewar  <dewar@adacore.com>

* sem_attr.adb, prj-nmsc.adb, exp_aggr.adb: Minor reformatting.

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

12 years ago * config/arm/arm.c (arm_preferred_simd_mode): Check
irar [Tue, 6 Sep 2011 11:29:53 +0000 (11:29 +0000)]
* config/arm/arm.c (arm_preferred_simd_mode): Check
TARGET_NEON_VECTORIZE_DOUBLE instead of
TARGET_NEON_VECTORIZE_QUAD.
(arm_autovectorize_vector_sizes): Likewise.
* config/arm/arm.opt (mvectorize-with-neon-quad): Make inverse
mask of mvectorize-with-neon-double.  Add RejectNegative.
(mvectorize-with-neon-double): New.

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

12 years ago2011-09-06 Ed Schonberg <schonberg@adacore.com>
charlet [Tue, 6 Sep 2011 11:03:44 +0000 (11:03 +0000)]
2011-09-06  Ed Schonberg  <schonberg@adacore.com>

* lib-xref.adb (OK_To_Set_Referenced): A reference to a formal
in a parameter association must not set the Referenced flag on
the formal.
* prj-nmsc.adb (Check_File_Naming_Schemes): Remove useless formal

2011-09-06  Hristian Kirtchev  <kirtchev@adacore.com>

* gnat_rm.texi: Add a section on attribute Descriptor_Size

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

12 years ago * gcc-interface/Makefile.in (common-tools, gnatmake-re,
charlet [Tue, 6 Sep 2011 10:55:20 +0000 (10:55 +0000)]
* gcc-interface/Makefile.in (common-tools, gnatmake-re,
gnatlink-re): Speed up by using -j0.

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

12 years ago2011-09-06 Robert Dewar <dewar@adacore.com>
charlet [Tue, 6 Sep 2011 10:53:58 +0000 (10:53 +0000)]
2011-09-06  Robert Dewar  <dewar@adacore.com>

* s-tpopsp-vxworks.adb, prj-nmsc.adb: Minor reformatting.

2011-09-06  Hristian Kirtchev  <kirtchev@adacore.com>

* gcc-interface/trans.c (Attribute_to_gnu): New case for
attribute Descriptor_Size.
* exp_attr.adb (Expand_N_Attribute_Reference): Add processing
for attribute Descriptor_Size.
* exp_ch7.adb (Double_Size_Of): Removed.
(Make_Finalize_Address_Stmts): Remove the code which generates
an expression to calculate the dope vector of an unconstrained
array. Instead use attribute Descriptor_Size and leave the
calculation to the back end.
(Nearest_Multiple_Rounded_Up): Removed.
(Size_Of): Removed.
* sem_attr.adb (Analyze_Attribute): Add processing for attribute
Descriptor_Size. Currently the attribute is applicable only
to unconstrained arrays.
(Eval_Attribute): Add processing for
attribute Descriptor_Size.
* snames.ads-tmpl: Add a predefined name and an Attribute_Id
for Descriptor_Size.

2011-09-06  Ed Schonberg  <schonberg@adacore.com>

* exp_aggr.adb: Remove useless formal.

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

12 years ago2011-09-06 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 6 Sep 2011 10:45:09 +0000 (10:45 +0000)]
2011-09-06  Richard Guenther  <rguenther@suse.de>

* tree-ssa-sccvn.c (visit_use): CSE stmt pieces and simplify
matching.

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

12 years ago2011-09-06 Yannick Moy <moy@adacore.com>
charlet [Tue, 6 Sep 2011 10:43:17 +0000 (10:43 +0000)]
2011-09-06  Yannick Moy  <moy@adacore.com>

* sem_ch13.adb (Analyze_Aspect_Specifications): Call
Set_Corresponding_Aspect when creating pragma from aspect.
(Add_Predicates): Use new field Corresponding_Aspect.
* sem_prag.adb (Analyze_Pragma): Make Pname hold source aspect
name when present, for the purpose of issuing error messages;
remove local procedure Error_Pragma_Arg_Alternate_Name.
* sinfo.adb, sinfo.ads (Corresponding_Aspect): New field in
N_Pragma node.
(From_Dynamic_Predicate, From_Static_Predicate): Remove fields from
N_Pragma node.

2011-09-06  Robert Dewar  <dewar@adacore.com>

* checks.adb, s-except.ads, g-socket.adb: Minor reformatting.

2011-09-06  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch6.adb (Build_Heap_Allocator): Add new
local variable Desig_Typ. Code and comment reformatting. Add
machinery to ensure that the allocation uses a fat pointer when
the type of the return object is a constrained array and the
function return type is an unconstrained array.

2011-09-06  Vincent Celier  <celier@adacore.com>

* make.adb, prj-part.adb, prj-nmsc.adb: Remove unused formal
parameters in subprograms.

2011-09-06  Arnaud Charlet  <charlet@adacore.com>

* s-taprop-mingw.adb (Finalize_TCB): Fix typo.

2011-09-06  Thomas Quinot  <quinot@adacore.com>

* s-taprop-vxworks.adb, s-tpoaal.adb, s-tpopsp-vxworks.adb
(System.Tasking.Primitive_Operations.Specific.Delete): Remove
subprogram.
(System.Tasking.Primitive_Operations.Specific.Set): If argument
is null, destroy task specific data, to make API consistent with
other platforms, and thus compatible with the shared version
of s-tpoaal.adb.
(System.Tasking.Primitive_Operations.ATCB_Allocation.Free_ATCB):
Document the above assumption.

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

12 years ago2011-09-06 Ed Schonberg <schonberg@adacore.com>
charlet [Tue, 6 Sep 2011 10:35:25 +0000 (10:35 +0000)]
2011-09-06  Ed Schonberg  <schonberg@adacore.com>

* exp_ch6.adb (Expand_Inlined_Call): Fix use of uninitialized
variable for type of return value when return type is
unconstrained and context is an assignment.

2011-09-06  Ed Schonberg  <schonberg@adacore.com>

* sem_ch8.adb (Check_Class_Wide_Actual): Do not generate body of
class-wide operation if expansion is not enabled.

2011-09-06  Eric Botcazou  <ebotcazou@adacore.com>

* checks.adb (Apply_Scalar_Range_Check): Deal with access
type prefix.

2011-09-06  Yannick Moy  <moy@adacore.com>

* sem_ch13.adb (Analyze_Aspect_Specifications, case
Aspect_Invariant): Do not issue error at this point on illegal
pragma placement, as this is checked later on when analyzing
the corresponding pragma.
* sem_prag.adb (Error_Pragma_Arg_Alternate_Name): New procedure
similar to Error_Pragma_Arg, except the source name of the
aspect/pragma to use in warnings may be equal to parameter
Alt_Name (Analyze_Pragma, case Pragma_Invariant): refine error
message to distinguish source name of pragma/aspect, and whether
the illegality resides in the type being public, or being private
without a public declaration

2011-09-06  Thomas Quinot  <quinot@adacore.com>

* g-socket.adb (Check_For_Fd_Set): On Windows, no need for bitmap
size check (fd_set is implemented differently on that platform).

2011-09-06  Thomas Quinot  <quinot@adacore.com>

* s-taprop-vxworks.adb, s-taprop-tru64.adb, s-taprop-vms.adb,
s-tpoaal.adb, s-taprop-mingw.adb, s-taprop-linux.adb,
s-taprop-solaris.adb, s-taprop-irix.adb, s-taprop.ads,
s-taprop-hpux-dce.adb, s-taprop-dummy.adb, s-taprop-posix.adb
(ATCB_Allocation): New subpackage of
System.Tasking.Primitive_Operations, shared across all targets
with full tasking runtime.
(ATCB_Allocation.New_ATCB): Moved there (from target specific
s-taprop bodies).
(ATCB_Allocation.Free_ATCB): New subprogram. Deallocate an ATCB,
taking care of establishing a local temporary ATCB if the one
being deallocated is Self, to avoid a reference to the freed
ATCB in Abort_Undefer.

2011-09-06  Thomas Quinot  <quinot@adacore.com>

* s-tassta.adb, s-taskin.ads (Free_Task): If the task is not
terminated, mark it for deallocation upon termination.
(Terminate_Task): Call Free_Task again if the task is marked
for automatic deallocation upon termination.

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

12 years ago2011-09-06 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Tue, 6 Sep 2011 10:22:21 +0000 (10:22 +0000)]
2011-09-06  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/50257
* include/bits/hashtable_policy.h (_Prime_rehash_policy::
    _M_next_bkt): Optimize for small argument.

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

12 years ago2011-09-06 Tom de Vries <tom@codesourcery.com>
vries [Tue, 6 Sep 2011 10:02:41 +0000 (10:02 +0000)]
2011-09-06  Tom de Vries  <tom@codesourcery.com>

* recog.c (asm_labels_ok): New function.
(check_asm_operands): Use asm_labels_ok.

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

12 years ago2011-09-06 Robert Dewar <dewar@adacore.com>
charlet [Tue, 6 Sep 2011 09:46:21 +0000 (09:46 +0000)]
2011-09-06  Robert Dewar  <dewar@adacore.com>

* a-cbprqu.ads, a-cbsyqu.ads, a-cuprqu.ads, a-cusyqu.ads,
a-intnam-aix.ads, a-intnam-darwin.ads, a-intnam-dummy.ads,
a-intnam-freebsd.ads, a-intnam-hpux.ads, a-intnam-irix.ads,
a-intnam-linux.ads, a-intnam-lynxos.ads, a-intnam-mingw.ads,
a-intnam-solaris.ads, a-intnam-tru64.ads,
a-intnam-vms.ads, a-intnam-vxworks.ads, a-intnam.ads, interfac.ads,
cstand.adb, s-maccod.ads: Mark all entities as Implementation_Defined
* einfo.ads, einfo.adb (Is_Implementation_Defined): New flag
* par-prag.adb: Add dummy entry for pragma Implementation_Defined
* s-rident.ads: Add new restriction No_Implementation_Identifiers
Add new profile No_Implementation_Extensions
* sem_prag.adb: Implement pragma Implementation_Defined Implement
profile No_Implementation_Extensions
* sem_util.adb: Minor reformatting (Set_Entity_With_Style_Check):
Check violation of restriction No_Implementation_Identifiers
* snames.ads-tmpl: Add entries for pragma Implementation_Defined
Add entry for Name_No_Implementation_Extensions

2011-09-06  Robert Dewar  <dewar@adacore.com>

* impunit.ads: Minor reformatting.

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

12 years ago2011-09-06 Robert Dewar <dewar@adacore.com>
charlet [Tue, 6 Sep 2011 09:37:22 +0000 (09:37 +0000)]
2011-09-06  Robert Dewar  <dewar@adacore.com>

* ali.adb, sem_ch13.adb, lib-xref.adb: Minor reformatting.

2011-09-06  Pascal Obry  <obry@adacore.com>

* s-osinte-linux.ads, s-oscons-tmplt.c: Use oscons to define sigset_t
types.

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

12 years ago2011-09-06 Robert Dewar <dewar@adacore.com>
charlet [Tue, 6 Sep 2011 09:32:56 +0000 (09:32 +0000)]
2011-09-06  Robert Dewar  <dewar@adacore.com>

* g-socket.adb: Minor reformatting

2011-09-06  Javier Miranda  <miranda@adacore.com>

* ali.adb (Scan_ALI): Add missing support to load references of
entities imported from other languages.
* ali.ads (Xref_Record): Adding new fields to store the language and
name of an imported entity.
* lib-xref.adb (Output_Import_Export_Info): Fix typo
in comment.

2011-09-06  Ed Schonberg  <schonberg@adacore.com>

* sem_prag.adb (Analyze_Pragma, case Type_Invariant): A type invariant
is allowed on a full type declaration if it is the completion of
a private declarations.
* sem_ch13.adb (Analyze_Aspect_Specifications): An invariant
aspect is allowed on a full type declaration in the private part
of a package.

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

12 years ago2011-09-06 Robert Dewar <dewar@adacore.com>
charlet [Tue, 6 Sep 2011 09:28:33 +0000 (09:28 +0000)]
2011-09-06  Robert Dewar  <dewar@adacore.com>

* sem_ch8.ads: Minor reformatting

2011-09-06  Thomas Quinot  <quinot@adacore.com>

* s-oscons-tmplt.c, g-socket.adb (GNAT.Sockets.Clear,Set,Is_Set):
Guard against socket values that are not in [0;FD_SETSIZE[

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

12 years ago2011-09-06 Robert Dewar <dewar@adacore.com>
charlet [Tue, 6 Sep 2011 09:26:02 +0000 (09:26 +0000)]
2011-09-06  Robert Dewar  <dewar@adacore.com>

* s-osinte-linux.ads, a-iteint.ads, exp_ch6.adb, s-solita.adb: Minor
reformatting.

2011-09-06  Arnaud Charlet  <charlet@adacore.com>

* s-linux-alpha.ads: Minor reformatting
* s-oscons-tmplt.c: Fix generated comments in s-oscons template.
Use sizeof instead of corresponding C defines in s-oscons template.

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

12 years ago2011-09-06 Vadim Godunko <godunko@adacore.com>
charlet [Tue, 6 Sep 2011 09:20:36 +0000 (09:20 +0000)]
2011-09-06  Vadim Godunko  <godunko@adacore.com>

* a-convec.ads, a-iteint.ads: Minor reformatting.

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

12 years ago2011-09-06 Vincent Celier <celier@adacore.com>
charlet [Tue, 6 Sep 2011 09:15:15 +0000 (09:15 +0000)]
2011-09-06  Vincent Celier  <celier@adacore.com>

* projects.texi: Add menus and @node lines.

2011-09-06  Ed Schonberg  <schonberg@adacore.com>

* exp_ch6.adb (Expand_Inlined_Call): Handle properly the case
where the return type is an unconstrained array and the context
is an assignment. Optimize the case when the target of the
assignment is a selected component.

2011-09-06  Arnaud Charlet  <charlet@adacore.com>

* s-solita.adb: Update comments.

2011-09-06  Pascal Obry  <obry@adacore.com>

* s-linux.ads, s-linux-alpha.ads, s-linux-hppa.ads, s-linux-mipsel.ads,
s-linux-sparc.ads: Remove hard coded and now wrong definitions.
* s-oscons-tmplt.c: Add support for generating pthread related
types size on GNU/Linux as done for Darwin.
* s-osinte-linux.ads: Use s-oscons to define the pthread types.

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

12 years ago2011-09-06 Robert Dewar <dewar@adacore.com>
charlet [Tue, 6 Sep 2011 09:02:44 +0000 (09:02 +0000)]
2011-09-06  Robert Dewar  <dewar@adacore.com>

* exp_ch6.adb: Fix minor typo.

2011-09-06  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch7.adb: Remove with and use clauses for Get_Targ.
(Alignment_Of): Moved to the body of Nearest_Multiple_Rounded_Up.
(Double_Size_Of): Alphabetized. Update the comment on usage.
(Make_Finalize_Address_Stmts): Update comments and reformat code.
(Nearest_Multiple_Rounded_Up): New routine.
(Size_Of): Update comment on usage. The generated expression now
accounts for alignment gaps by rounding the size of the type to the
nearest multiple rounded up of the type's alignment.

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

12 years ago2011-09-06 Robert Dewar <dewar@adacore.com>
charlet [Tue, 6 Sep 2011 08:27:42 +0000 (08:27 +0000)]
2011-09-06  Robert Dewar  <dewar@adacore.com>

* exp_ch7.adb, g-comlin.adb: Minor reformatting.

2011-09-06  Steve Baird  <baird@adacore.com>

* exp_ch4.adb (Expand_Allocator_Expression): Look through
derived subprograms in checking for presence of an
Extra_Accessibility_Of_Result formal parameter.
* exp_ch6.adb (Expand_Call): Look through derived subprograms in
checking for presence of an Extra_Accessibility_Of_Result formal
parameter.
(Expand_Call.Add_Actual_Parameter): Fix a bug in the
case where the Parameter_Associatiations attribute is already set,
but set to an empty list.
(Needs_Result_Accessibility_Level):
Unconditionally return False. This is a temporary
change, disabling the Extra_Accessibility_Of_Result
mechanism.
(Expand_Simple_Function_Return): Check for
Extra_Accessibility_Of_Result parameter's presence instead of
testing Ada_Version when generating a runtime accessibility
check which makes use of the parameter.

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

12 years ago2011-09-06 Ed Schonberg <schonberg@adacore.com>
charlet [Tue, 6 Sep 2011 08:07:27 +0000 (08:07 +0000)]
2011-09-06  Ed Schonberg  <schonberg@adacore.com>

* exp_ch4.adb (Expand_N_Case_Expression): Actions created for the
expression in a given case alternative must be attached to the
statement list of the ccrresponding case statement alternative
They cannot be propagated ahead of the case statement, because
the validity of the expression that generated the action may
hold only for that alternative.

2011-09-06  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch7.adb: Remove with and use clauses for Get_Targ.
(Alignment_Of): Remove the code for strict alignment targets.
(Double_Alignment_Of): Removed.
(Double_Size_Of): New routine.
(Make_Finalize_Address_Stmts): Change the
calculation of the dope's size.  Update relevant comments.
(Size_Of): New routine.

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

12 years ago2011-09-06 Steve Baird <baird@adacore.com>
charlet [Tue, 6 Sep 2011 08:03:04 +0000 (08:03 +0000)]
2011-09-06  Steve Baird  <baird@adacore.com>

* einfo.ads (Extra_Accessibility): Update associated comment to use
the term "present" correctly ("present" just means that it is not
an error to query the value of the attribute - it does not imply
that the value must be non-null).
(Extra_Constrained): Ditto.
(Is_Visible_Formal): Ditto.
(Extra_Accessibility_Of_Result) Ditto; also add Inline pragma.
(Set_Extra_Accessibility_Of_Result): Add Inline pragma.
* exp_ch4.adb (Expand_Allocator_Expression): Improve a comment.
* exp_ch6.adb (Expand_Call): The callee may require an
Extra_Accessibility_Of_Result actual parameter even if Ada_Version
< Ada_2012. This can occur if the callee is exported from a Gnat
runtimes unit. Also improve a comment.

2011-09-06  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch7.adb: Add with and use clauses for Get_Targ.
(Alignment_Of): Rename formal parameter Some_Typ
to Typ, update related comment. Use the allocator alignment on
strict alignment targets such as SPARC.
(Double_Alignment_Of): Rename formal parameter Some_Typ to Typ, update
related comment.

2011-09-06  Gary Dismukes  <dismukes@adacore.com>

* sem_ch9.adb (Check_Interfaces): Test
Is_Limited_Type rather than Is_Limited_Record when checking that
the partial view of a synchronized full view must be limited.

2011-09-06  Emmanuel Briot  <briot@adacore.com>

* g-comlin.adb (Free): Fix memory leak.

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

12 years ago2011-09-06 Robert Dewar <dewar@adacore.com>
charlet [Tue, 6 Sep 2011 07:56:50 +0000 (07:56 +0000)]
2011-09-06  Robert Dewar  <dewar@adacore.com>

* sem_util.adb, exp_ch6.adb: Minor reformatting and code reorganization.

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

12 years ago2011-09-06 Steve Baird <baird@adacore.com>
charlet [Tue, 6 Sep 2011 07:46:28 +0000 (07:46 +0000)]
2011-09-06  Steve Baird  <baird@adacore.com>

* einfo.ads (Extra_Accessibility_Of_Result): New function; in the
(Ada2012) cases described in AI05-0234 where the accessibility
level of a function result is "determined by the point of
call", an implicit parameter representing that accessibility
level is passed in. Extra_Accessibilty_Of_Result yields this
additional formal parameter. Extra_Accessibility_Of_Result
is analogous to the existing Extra_Accessibility
function used in the implementation of access parameters.
(Set_Extra_Accessibility_Of_Result): New procedure; sets
Extra_Accessibility_Of_Result attribute.
* einfo.adb (Extra_Accessibility_Of_Result): New function.
(Set_Extra_Accessibility_Of_Result): New procedure.
(Write_Field19_Name): Display Extra_Accessibilty_Of_Result attribute.
* sem_util.adb (Dynamic_Accessibility_Level): Set Etype of
an accessibility level literal to Natural; introduce a nested
function, Make_Level_Literal, to do this.
* exp_ch6.ads (Needs_Result_Accessibility_Level): New function;
determines whether a given function (or access-to-function
type) needs to have an implicitly-declared accessibility-level
parameter added to its profile.
(Add_Extra_Actual_To_Call): Export an existing procedure which was
previously declared in the body of Exp_Ch6.
* exp_ch6.adb (Add_Extra_Actual_To_Call): Export declaration by moving
it to exp_ch6.ads.
(Has_Unconstrained_Access_Discriminants): New Function; a
predicate on subtype entities which returns True if the given
subtype is unconstrained and has one or more access discriminants.
(Expand_Call): When expanding a call to a function which takes an
Extra_Accessibility_Of_Result parameter, pass in the appropriate
actual parameter value. In the case of a function call which is
used to initialize an allocator, this may not be possible because
the Etype of the allocator may not have been set yet. In this
case, we defer passing in the parameter and handle it later in
Expand_Allocator_Expression.
(Expand_Simple_Function_Return): When returning from a function which
returns an unconstrained subtype having at least one access
discriminant, generate the accessibility check needed to ensure that
the function result will not outlive any objects designated by its
discriminants.
(Needs_Result_Accessibility_Level): New function; see exp_ch6.ads
description.
* exp_ch4.adb (Expand_Allocator_Expression): When a function call
is used to initialize an allocator, we may need to pass in "the
accessibility level determined by the point of call" (AI05-0234)
to the function. Expand_Call, where such actual parameters are
usually generated, is too early in this case because the Etype of
the allocator (which is used in determining the level to be passed
in) may not have been set yet when Expand_Call executes. Instead,
we generate code to pass in the appropriate actual parameter
in Expand_Allocator_Expression.
* sem_ch6.adb (Create_Extra_Formals): Create
the new Extra_Accessibility_Of_Result formal if
Needs_Result_Accessibility_Level returns True. This includes the
introduction of a nested procedure, Check_Against_Result_Level.

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

12 years ago * gcc-interface/Makefile.in (X86_TARGET_PAIRS): Remove duplicate
charlet [Tue, 6 Sep 2011 07:06:52 +0000 (07:06 +0000)]
* gcc-interface/Makefile.in (X86_TARGET_PAIRS): Remove duplicate
declaration.

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

12 years agoDaily bump.
gccadmin [Tue, 6 Sep 2011 00:18:39 +0000 (00:18 +0000)]
Daily bump.

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

12 years ago * config/sparc/sol2-64.h: Move ...
davem [Mon, 5 Sep 2011 22:23:40 +0000 (22:23 +0000)]
* config/sparc/sol2-64.h: Move ...
* config/sparc/default-64.h: ... to here.  Update comment.
* config.gcc: Update Solaris sparc to use default-64.h, also
prefix this header into the list on sparc64-*-linux.
* config/sparc/linux64.h (TARGET_DEFAULT): Only override if
TARGET_64BIT_DEFAULT is defined.  Remove commented out reference
to MASK_HARD_QUAD.

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

12 years agogcc/
rsandifo [Mon, 5 Sep 2011 19:39:27 +0000 (19:39 +0000)]
gcc/
PR target/49606
* config/mips/mips.h (ABI_HAS_64BIT_SYMBOLS): Check Pmode.
(PMODE_INSN): New macro.
* config/mips/mips.c (gen_load_const_gp): Use PMODE_INSN.
(mips_got_load, mips_expand_synci_loop): Likewise.
(mips_save_gp_to_cprestore_slot): Handle SImode and DImode
cprestore patterns.
(mips_emit_loadgp): Use PMODE_INSN.  Handle SImode and DImode
copygp_mips16 patterns.
(mips_expand_prologue): Handle SImode and DImode potential_cprestore
and use_cprestore patterns.
(mips_override_options): Check for incompatible -mabi and -mlong
combinations.
* config/mips/mips.md (unspec_got<mode>): Rename to...
(unspec_got_<mode>): ...this.
(copygp_mips16): Use the Pmode iterator.
(potential_cprestore, cprestore, use_cprestore): Likewise.
(clear_cache, indirect_jump): Use PMODE_INSN.
(indirect_jump<mode>): Rename to...
(indirect_jump_<mode>): ...this.
(tablejump): Use PMODE_INSN.
(tablejump<mode>): Rename to...
(tablejump_<mode>): ...this.
(exception_receiver): Handle restore_gp_si and restore_gp_di.
(restore_gp): Use the Pmode iterator.
* config/mips/mips-dsp.md (mips_lbux, mips_lhx, mips_lwx): Use
PMODE_INSN.

gcc/testsuite/
PR target/49606
* gcc.target/mips/abi-main.h: New file.
* gcc.target/mips/abi-o32-long32.c: New test.
* gcc.target/mips/abi-o32-long64.c: Likewise.
* gcc.target/mips/abi-o64-long32.c: Likewise.
* gcc.target/mips/abi-o64-long64.c: Likewise.
* gcc.target/mips/abi-n32-long32.c: Likewise.
* gcc.target/mips/abi-n32-long64.c: Likewise.
* gcc.target/mips/abi-n64-long32.c: Likewise.
* gcc.target/mips/abi-n64-long64.c: Likewise.
* gcc.target/mips/abi-o32-long32-no-shared.c: Likewise.
* gcc.target/mips/abi-o32-long64-no-shared.c: Likewise.
* gcc.target/mips/abi-o64-long32-no-shared.c: Likewise.
* gcc.target/mips/abi-o64-long64-no-shared.c: Likewise.
* gcc.target/mips/abi-n32-long32-no-shared.c: Likewise.
* gcc.target/mips/abi-n32-long64-no-shared.c: Likewise.
* gcc.target/mips/abi-n64-long32-no-shared.c: Likewise.
* gcc.target/mips/abi-n64-long64-no-shared.c: Likewise.
* gcc.target/mips/abi-o32-long32-pic.c: Likewise.
* gcc.target/mips/abi-o32-long64-pic.c: Likewise.
* gcc.target/mips/abi-o64-long32-pic.c: Likewise.
* gcc.target/mips/abi-o64-long64-pic.c: Likewise.
* gcc.target/mips/abi-n32-long32-pic.c: Likewise.
* gcc.target/mips/abi-n32-long64-pic.c: Likewise.
* gcc.target/mips/abi-n64-long32-pic.c: Likewise.
* gcc.target/mips/abi-n64-long64-pic.c: Likewise.
* gcc.target/mips/abi-eabi32-long32.c: Likewise.
* gcc.target/mips/abi-eabi32-long64.c: Likewise.
* gcc.target/mips/abi-eabi64-long32.c: Likewise.
* gcc.target/mips/abi-eabi64-long64.c: Likewise.
* gcc.target/mips/mips.exp: Make -mshared implied -mabicalls.
* gcc.target/mips/branch-2.c: Remove -mabicalls.
* gcc.target/mips/branch-3.c: Likewise.
* gcc.target/mips/branch-4.c: Likewise.
* gcc.target/mips/branch-5.c: Likewise.
* gcc.target/mips/branch-6.c: Likewise.
* gcc.target/mips/branch-7.c: Likewise.
* gcc.target/mips/branch-8.c: Likewise.
* gcc.target/mips/branch-9.c: Likewise.
* gcc.target/mips/branch-10.c: Likewise.
* gcc.target/mips/branch-11.c: Likewise.
* gcc.target/mips/branch-12.c: Likewise.
* gcc.target/mips/branch-13.c: Likewise.
* gcc.target/mips/lazy-binding-1.c: Likewise.

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

12 years agogcc/
rsandifo [Mon, 5 Sep 2011 19:38:20 +0000 (19:38 +0000)]
gcc/
* config/mips/mips.c (mips_gimplify_va_arg_expr): Unshare off.
Fix the type of the BIT_AND_EXPR.

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

12 years ago * config.gcc: Recognize niagara3 and niagara4 in --with-cpu
davem [Mon, 5 Sep 2011 16:57:00 +0000 (16:57 +0000)]
* config.gcc: Recognize niagara3 and niagara4 in --with-cpu
and --with-tune options.

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

12 years ago * config/sparc/sparc-opts.h (PROCESSOR_NIAGARA3,
davem [Mon, 5 Sep 2011 16:00:53 +0000 (16:00 +0000)]
* config/sparc/sparc-opts.h (PROCESSOR_NIAGARA3,
PROCESSOR_NIAGARA4): New.
* config/sparc/sparc.opt: Handle new processor types.
* config/sparc/sparc.md: Add to "cpu" attribute.
* config/sparc/sparc.h (TARGET_CPU_niagara3,
TARGET_CPU_niagara4): New, treat as niagara2.
* config/sparc/linux64.h: Handle niagara3 and niagara4
like niagara2.
* config/sparc/sol2.h: Likewise.
* config/sparc/niagara2.md: Schedule niagara3 like
niagara2.
* config/sparc/sparc.c (sparc_option_override): Add
niagara3 and niagara4 handling.
(sparc32_initialize_trampoline): Likewise.
(sparc64_initialize_trampoline): Likewise.
(sparc_use_sched_lookahead): Likewise.
(sparc_issue_rate): Likewise.
(sparc_register_move_cost): Likewise.
* config/sparc/driver-sparc.c (cpu_names): Use niagara3
and niagara4 as appropriate.
* doc/invoke.texi: Document new processor types.

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

12 years ago * config.host: Add driver-sparc.o and sparc/x-sparc on
davem [Mon, 5 Sep 2011 15:58:57 +0000 (15:58 +0000)]
* config.host: Add driver-sparc.o and sparc/x-sparc on
native sparc*-*-linux* builds.
* config/sparc/driver-sparc.c: Correct Linux strings.
* config/sparc/linux.h: Add DRIVER_SELF_SPECS.
* config/sparc/linux64.h: Likewise.
* doc/invoke.texi: Document that Linux also supports
-mcpu=native and -mtune=native on sparc.

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

12 years ago2011-09-05 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Mon, 5 Sep 2011 14:30:30 +0000 (14:30 +0000)]
2011-09-05  Hristian Kirtchev  <kirtchev@adacore.com>

* s-finmas.adb (Set_Finalize_Address): Explain the reason
for the synchronization. Move the test for null from
s-stposu.Allocate_Any_Controlled to this routine since the check
needs to be protected too.
(Set_Heterogeneous_Finalize_Address): Explain the reason for the
synchronization code.
* s-finmas.ads (Set_Heterogeneous_Finalize_Address): Add comment
explaining the context in which this routine is used.
* s-stposu.adb (Allocate_Any_Controlled): Move the test for null
to s-finmas.Set_Finalize_Address.

2011-09-05  Ed Schonberg  <schonberg@adacore.com>

* einfo.ads: Document that itypes have no parent field.

2011-09-05  Robert Dewar  <dewar@adacore.com>

* rtsfind.adb (Check_CRT): Check for overloaded entity
* rtsfind.ads: Document that entities to be found by rtsfind
cannot be overloaded
* s-taenca.adb, s-tasren.adb, s-tpobop.adb, s-tpoben.ads, s-tpoben.adb
(Lock_Entries_With_Status): New name for Lock_Entries with two
arguments (changed to meet rtsfind no overloading rule).

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

12 years ago2011-09-05 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Mon, 5 Sep 2011 14:18:54 +0000 (14:18 +0000)]
2011-09-05  Hristian Kirtchev  <kirtchev@adacore.com>

* s-finmas.adb (Set_Finalize_Address (Address,
Finalize_Address_Ptr)): Renamed to Set_Heterogeneous_Finalize_Address.
(Set_Finalize_Address (in out Finalization_Master,
Finalize_Address_Ptr): Add synchronization code.
* s-finmas.ads (Set_Finalize_Address (Address,
Finalize_Address_Ptr)): Renamed to Set_Heterogeneous_Finalize_Address.
* s-stposu.adb (Allocate_Any_Controlled): Update the call to
Set_Finalize_Address for the heterogeneous case.

2011-09-05  Ed Schonberg  <schonberg@adacore.com>

* sem_ch3.adb: Undo previous change, not suitable after all.

2011-09-05  Robert Dewar  <dewar@adacore.com>

* einfo.ads: Minor comment clarification.

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

12 years ago2011-09-05 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Mon, 5 Sep 2011 14:15:16 +0000 (14:15 +0000)]
2011-09-05  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch6.adb (Move_Activation_Chain): Rewritten. The routine
no longer needs to search through the entities of the return
statement scope to find the _chain.
* sem_ch5.adb: Add with and use clauses for Exp_Ch6 and Sem_Ch6.
(Analyze_Block_Statement): Add local variable
Is_BIP_Return_Statement. Add machinery to install all entities
produced by the expansion of the return object declaration.
(Install_Return_Entities): New routine.
* sem_ch6.ads, sem_ch6.adb (Install_Entity): Moved from body to spec.

2011-09-05  Ed Schonberg  <schonberg@adacore.com>

* sem_ch10.adb (Analyze_Context): Apply simple fixup if context
of subunit is incomplete.
(Analyze_Proper_Body): If parent spec is not available, do not
attempt analysis.

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

12 years ago2011-09-05 Ed Schonberg <schonberg@adacore.com>
charlet [Mon, 5 Sep 2011 14:12:04 +0000 (14:12 +0000)]
2011-09-05  Ed Schonberg  <schonberg@adacore.com>

* sem_disp.adb (Find_Controlling_Arg): Add checks for
interface type conversions, that are expanded into dereferences.

2011-09-05  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_ch6.adb (Analyze_Subprogram_Body_Helper):
Examine the parameter and return profile of a subprogram and swap
any incomplete types coming from a limited context with their
corresponding non-limited views.
(Exchange_Limited_Views): New routine.

2011-09-05  Ed Schonberg  <schonberg@adacore.com>

* sem_ch3.adb (Prepare_Private_Subtype_Completion): Set parent
of internal entity to the subtype declaration, so that when
entities are subsequently exchanged in a package body, the tree
remains properly formatted for ASIS.

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

12 years ago2011-09-05 Johannes Kanig <kanig@adacore.com>
charlet [Mon, 5 Sep 2011 14:08:42 +0000 (14:08 +0000)]
2011-09-05  Johannes Kanig  <kanig@adacore.com>

* g-comlin.adb (Set_Usage): Additional optional argument to set help
message.
(Display_Help): display the user given help message, if available.

2011-09-05  Ed Schonberg  <schonberg@adacore.com>

* sem_ch3.adb (OK_For_Limited_Init_In_05): The expression
is legal if the original node is an identifier that is a
parameterless function call.

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

12 years ago2011-09-05 Pascal Obry <obry@adacore.com>
charlet [Mon, 5 Sep 2011 14:03:26 +0000 (14:03 +0000)]
2011-09-05  Pascal Obry  <obry@adacore.com>

* prj-nmsc.adb: Minor reformatting.
Add support for standalone aggregate library.
(Check_Stand_Alone_Library): Handle standalone aggregate library.
* projects.texi: Fix documentation for aggregate library projects.

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

12 years ago * gcc.dg/ipa/ipcp-3.c (mark_cell): Use mask 1 << 14 instead of 1
gjl [Mon, 5 Sep 2011 14:00:37 +0000 (14:00 +0000)]
* gcc.dg/ipa/ipcp-3.c (mark_cell): Use mask 1 << 14 instead of 1
<< 18 to avoid warning on int=16 platforms..

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

12 years ago2011-09-05 Robert Dewar <dewar@adacore.com>
charlet [Mon, 5 Sep 2011 14:00:30 +0000 (14:00 +0000)]
2011-09-05  Robert Dewar  <dewar@adacore.com>

* sem_ch6.adb: Minor reformatting.

2011-09-05  Matthew Gingell  <gingell@adacore.com>

* s-tassta.adb (Task_Wrapper): Ensure that we don't try to write the
stack guard page on PPC Linux. This patch ensures the 64K guard page at
the bottom of the stack is not overwritten.

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

12 years ago2011-09-05 Thomas Quinot <quinot@adacore.com>
charlet [Mon, 5 Sep 2011 13:58:39 +0000 (13:58 +0000)]
2011-09-05  Thomas Quinot  <quinot@adacore.com>

* exp_intr.adb, s-tasini.adb: Minor reformatting.

2011-09-05  Ed Schonberg  <schonberg@adacore.com>

* sem_ch3.adb (Access_Definition): If an access type declaration
appears in a child unit, the scope of whatever anonymous type
may be generated is the child unit itself.

2011-09-05  Ed Schonberg  <schonberg@adacore.com>

* sem_ch6.adb (Analyze_Expression_Function): Do not set
Comes_From_Source on rewritten body.
(Analyze_Subprogram_Body_Helper): Check that the original node for
the body comes from source, when determining whether expansion
of a protected operation is needed.

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

12 years ago2011-09-05 Ed Schonberg <schonberg@adacore.com>
charlet [Mon, 5 Sep 2011 13:53:59 +0000 (13:53 +0000)]
2011-09-05  Ed Schonberg  <schonberg@adacore.com>

* exp_aggr.adb (Replace_Type): If the target of the assignment is
a selected component and the right-hand side is a self-referential
access, the proper prefix of the rewritten attribute is a copy
of the left-hand side, not of its prefix.

2011-09-05  Robert Dewar  <dewar@adacore.com>

* sem_ch5.adb: Minor reformatting.
* sem_ch3.adb: Minor code clean up.

2011-09-05  Jose Ruiz  <ruiz@adacore.com>

* exp_ch9.adb (Make_Initialize_Protection): The fact that
restriction No_Dynamic_Attachment is in effect or not should
not influence the default priority associated to a protected
object. With this change, when the restriction is in effect (as
is the case for the Ravenscar profile) the default priority of
a protected object with an interrupt handler is in the range of
interrupt priorities (Default_Interrupt_Priority) as required
by D.3(10).

2011-09-05  Arnaud Charlet  <charlet@adacore.com>

* a-iteint.ads: Fix header.

2011-09-05  Vincent Celier  <celier@adacore.com>

* prj-conf.adb (Do_Autoconf): Make sure Obj_Dir always ends
with a directory separator to avoid output such as:
  "/path/to/objauto.cgpr" has been deleted.

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

12 years ago * gcc.dg/compat/struct-layout-1_test.h: Decrease bitfield size
jakub [Mon, 5 Sep 2011 13:53:08 +0000 (13:53 +0000)]
* gcc.dg/compat/struct-layout-1_test.h: Decrease bitfield size
to work even with -fshort-enums.

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

12 years ago2011-09-05 Robert Dewar <dewar@adacore.com>
charlet [Mon, 5 Sep 2011 13:48:16 +0000 (13:48 +0000)]
2011-09-05  Robert Dewar  <dewar@adacore.com>

* sem_ch3.adb: Minor reformatting.

2011-09-05  Ed Schonberg  <schonberg@adacore.com>

* sem_ch5.adb: Better error message.

2011-09-05  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_aggr.adb: Add with and use clause for Exp_Ch6.
(Expand_Array_Aggregate): Detect a special case of an aggregate
which contains tasks in the context of an unexpanded return
statement of a build-in-place function.
* exp_ch6.adb: Add with and use clause for Exp_Aggr.
(Expand_N_Extended_Return_Statement): Detect a delayed aggregate
which contains tasks and expand it now that the original simple
return statement has been rewritten.
* exp_ch9.adb (Build_Activation_Chain_Entity): Code
reformatting. Do not create a chain for an extended return
statement if one is already available.
(Has_Activation_Chain): New routine.

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

12 years ago2011-09-05 Marc Sango <sango@adacore.com>
charlet [Mon, 5 Sep 2011 13:40:04 +0000 (13:40 +0000)]
2011-09-05  Marc Sango  <sango@adacore.com>

* sem_ch3.adb (Analyze_Object_Declaration): Remove
the wrong test and add the correct test to detect the violation
of illegal use of unconstrained string type in SPARK mode.

2011-09-05  Ed Schonberg  <schonberg@adacore.com>

* sem_ch5.adb (Analyze_Iteration_Specification): Improve error
message on an iterator over an array.

2011-09-05  Robert Dewar  <dewar@adacore.com>

* lib-xref-alfa.adb: Minor reformatting.

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

12 years ago2011-09-05 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Mon, 5 Sep 2011 13:19:04 +0000 (13:19 +0000)]
2011-09-05  Hristian Kirtchev  <kirtchev@adacore.com>

* einfo.adb (Write_Field28_Name): Update the choices for
Extra_Formals.
* einfo.ads: Update the use of Extra_Formals in various entities.
* exp_ch6.adb (Add_Task_Actuals_To_Build_In_Place_Call): Code
reformatting. Handle the case where the function call returns
an incomplete type coming from a limited with context. Generate
a reference to the _master when the master id is associated
with an access type.
(Is_Build_In_Place_Function_Call): Code
reformatting. The Alfa mode case must appear first since otherwise
we will carry out the function name retrieval regardless of the
compilation mode.
(Make_Build_In_Place_Call_In_Allocator): Code
reformatting. Handle the case where the function call returns
an incomplete type coming from a limited with context. Remove
the reference creation when adding the task-related actuals,
this is now done in Add_Task_Actuals_To_Build_In_Place_Call.
* exp_ch7.adb (Make_Set_Finalize_Address_Call): Remove local
variable Call. Remove the useless wrapping of Set_Finalize_Address
when the finalization master is a build-in-place extra formal. The
whole mechanism of controlled allocation in a build-in-place
context is already protected by an if statement.
* sem_aux.adb (Is_Immutably_Limited_Type): Handle the case
where the type might be related to a function which returns an
incomplete type coming from a limited with.
* sem_ch6.adb (Create_Extra_Formals): Comment
reformatting. Handle the case where the function returns an
incomplete type coming from a limited with context.

2011-09-05  Johannes Kanig  <kanig@adacore.com>

* lib-xref-alfa.adb (Is_Alfa_Reference): Improve test for constant
objects and rewrite case statement as /if/elsif/endif.

2011-09-05  Thomas Quinot  <quinot@adacore.com>

* sem_ch3.adb, sem_ch4.adb: Minor reformatting.

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

12 years ago2011-09-05 Robert Dewar <dewar@adacore.com>
charlet [Mon, 5 Sep 2011 13:12:33 +0000 (13:12 +0000)]
2011-09-05  Robert Dewar  <dewar@adacore.com>

* sem_ch3.adb, sem_res.adb, par.adb, par-ch6.adb, g-comlin.adb,
exp_ch6.adb, lib-xref-alfa.adb: Minor reformatting.

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

12 years ago2011-09-05 Gary Dismukes <dismukes@adacore.com>
charlet [Mon, 5 Sep 2011 13:11:29 +0000 (13:11 +0000)]
2011-09-05  Gary Dismukes  <dismukes@adacore.com>

* exp_ch7.adb, exp_ch6.adb: Minor reformatting.

2011-09-05  Johannes Kanig  <kanig@adacore.com>

* lib-xref-alfa.adb: Update comments.

2011-09-05  Thomas Quinot  <quinot@adacore.com>

* sem_res.adb: Minor reformatting

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

12 years ago2011-09-05 Ed Schonberg <schonberg@adacore.com>
charlet [Mon, 5 Sep 2011 13:08:30 +0000 (13:08 +0000)]
2011-09-05  Ed Schonberg  <schonberg@adacore.com>

* exp_ch6.adb (Build_In_Place_Formal): If extra formals are not
present, create them now.  Needed in case the return type was
a limited view in the function declaration.
(Make_Build_In_Place_Call_In_Allocator): If return type contains
tasks, build the activation chain for it.  Pass a reference to
the Master_Id in call to Add_Task_Actuals_To_Build_In_Place call.
* exp_ch7.adb (Make_Set_Finalize_Address_Call): Clean up interface
with build_in_place calls.
* sem_ch9.adb (Analyze_Task_Type_Declaration): If partial view was
incomplete, inatialize its Corresponding_Record_Type component.
* sem_ch10.adb (Build_Chain): Initialize Private_Dependents field
of limited views.

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

12 years agoFix typo.
charlet [Mon, 5 Sep 2011 13:02:49 +0000 (13:02 +0000)]
Fix typo.

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

12 years ago2011-09-05 Johannes Kanig <kanig@adacore.com>
charlet [Mon, 5 Sep 2011 13:01:17 +0000 (13:01 +0000)]
2011-09-05  Johannes Kanig  <kanig@adacore.com>

* lib-xref-alfa.adb (Is_Alfa_Reference): Filter constants from effect
information.

2011-09-05  Ed Schonberg  <schonberg@adacore.com>

* par-ch6.adb (P_Subprogram): In Ada2012 mode, if the subprogram
appears within a package specification and the token after "IS"
is not a parenthesis, assume that this is an unparenthesized
expression function, even if the token appears in a line by
itself.
* par.adb: Clarify use of Labl field of scope stack in error
recovery.

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

12 years ago2011-09-05 Bob Duff <duff@adacore.com>
charlet [Mon, 5 Sep 2011 12:58:26 +0000 (12:58 +0000)]
2011-09-05  Bob Duff  <duff@adacore.com>

* sem_res.adb (Resolve_Intrinsic_Operator): Use unchecked
conversions instead of normal type conversions in all cases where a
type conversion would be illegal. In particular, use unchecked
conversions when the operand types are private.

2011-09-05  Johannes Kanig  <kanig@adacore.com>

* lib-xref-alfa.adb (Is_Alfa_Reference): Never declare effects on
objects of task type or protected type.

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

12 years ago2011-09-05 Ed Schonberg <schonberg@adacore.com>
charlet [Mon, 5 Sep 2011 12:51:44 +0000 (12:51 +0000)]
2011-09-05  Ed Schonberg  <schonberg@adacore.com>

* sem_ch6.adb (Analyze_Expression_Function): If the expression
function comes from source, indicate that so does its rewriting,
so it is compatible with any subsequent expansion of the
subprogram body (e.g. when it is a protected operation).
* sem_ch4.adb: minor reformatting

2011-09-05  Hristian Kirtchev  <kirtchev@adacore.com>

* lib.adb (Check_Same_Extended_Unit): Comment rewriting. Use
Get_Source_Unit rather than Get_Code_Unit as instantiation unfolding
may lead to wrong ancestor package in the case of instantiated subunit
bodies. If a subunit is instantiated, follow the chain of instantiations
rather than the stub structure.

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

12 years ago PR target/50289
gjl [Mon, 5 Sep 2011 12:20:03 +0000 (12:20 +0000)]
PR target/50289
* config/avr/avr.c (sequent_regs_live): Don't recognize sequences
that contain global register variable.

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

12 years ago2011-09-05 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 5 Sep 2011 10:31:04 +0000 (10:31 +0000)]
2011-09-05  Richard Guenther  <rguenther@suse.de>

* tree-cfg.c (replace_uses_by): Use fold_stmt, not fold_stmt_inplace.

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

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

* stor-layout.c (layout_type): Use size_binop for array size
calculations.

c-family/
* c-common.c (complete_array_type): Use ssize_int (-1) instead
of integer_minus_one_node for empty array upper bounds.

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

12 years ago * config/avr/avr.h (progmem_section): Remove Declaration.
gjl [Mon, 5 Sep 2011 08:30:17 +0000 (08:30 +0000)]
* config/avr/avr.h (progmem_section): Remove Declaration.
* config/avr/avr.c (progmem_section): Make static and rename to
progmem_swtable_section.
(avr_output_addr_vec_elt): No need to switch sections.
(avr_asm_init_sections): Use output_section_asm_op as section
callback for progmem_swtable_section.
(avr_output_progmem_section_asm_op): Remove Function.
(TARGET_ASM_FUNCTION_RODATA_SECTION): New Define.
(avr_asm_function_rodata_section): New static Function.
* config/avr/elf.h (ASM_OUTPUT_BEFORE_CASE_LABEL): Output
alignment 2**1 for jump tables.

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

12 years ago * ipa-inline-analysis.c (set_cond_stmt_execution_predicate): Check that
hubicka [Mon, 5 Sep 2011 07:39:36 +0000 (07:39 +0000)]
* ipa-inline-analysis.c (set_cond_stmt_execution_predicate): Check that
parameter is SSA name.

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

12 years ago2011-09-05 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 5 Sep 2011 07:32:37 +0000 (07:32 +0000)]
2011-09-05  Richard Guenther  <rguenther@suse.de>

        Revert
        2011-08-31  Richard Guenther  <rguenther@suse.de>

* fold-const.c (extract_muldiv_1): Remove bogus TYPE_IS_SIZETYPE
special-casing.

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

12 years ago PR c++/49267
jason [Mon, 5 Sep 2011 04:33:57 +0000 (04:33 +0000)]
PR c++/49267
* call.c (reference_binding): Don't set is_lvalue for an rvalue
reference rfrom.

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

12 years ago PR c++/49267
jason [Mon, 5 Sep 2011 04:33:48 +0000 (04:33 +0000)]
PR c++/49267
PR c++/49458
DR 1328
* call.c (reference_binding): Set rvaluedness_matches_p properly
for reference to function conversion ops.
(compare_ics): Adjust.

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

12 years ago * class.c (trivial_default_constructor_is_constexpr): Rename from
jason [Mon, 5 Sep 2011 04:33:40 +0000 (04:33 +0000)]
* class.c (trivial_default_constructor_is_constexpr): Rename from
synthesized_default_constructor_is_constexpr.
(type_has_constexpr_default_constructor): Adjust.
(add_implicitly_declared_members): Call it instead.
(explain_non_literal_class): Explain about non-constexpr default ctor.
* cp-tree.h: Adjust.
* method.c (synthesized_method_walk): Adjust.
* semantics.c (explain_invalid_constexpr_fn): Handle defaulted
functions, too.

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

12 years ago PR c++/50248
jason [Mon, 5 Sep 2011 04:33:08 +0000 (04:33 +0000)]
PR c++/50248
Core 1358
* init.c (perform_member_init): Don't diagnose missing inits here.
(emit_mem_initializers): Or here.
* method.c (process_subob_fn): Don't instantiate constexpr ctors.
* semantics.c (cx_check_missing_mem_inits): New.
(explain_invalid_constexpr_fn): Call it.
(register_constexpr_fundef): Likewise.  Leave
DECL_DECLARED_CONSTEXPR_P set when the body is unsuitable.
(cxx_eval_call_expression): Adjust diagnostics.
(cxx_eval_constant_expression): Catch use of 'this' in a constructor.

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

12 years agoDaily bump.
gccadmin [Mon, 5 Sep 2011 00:18:52 +0000 (00:18 +0000)]
Daily bump.

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

12 years ago * gnat.dg/specs/debug1.ads: Tweak pattern.
ebotcazou [Sun, 4 Sep 2011 20:56:12 +0000 (20:56 +0000)]
* gnat.dg/specs/debug1.ads: Tweak pattern.

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

12 years ago PR libffi/49594
iains [Sun, 4 Sep 2011 19:19:39 +0000 (19:19 +0000)]
PR libffi/49594
* src/powerpc/darwin_closure.S (stubs): Make the stub binding
helper reference track the architecture pointer size.

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

12 years ago PR debug/49901
iains [Sun, 4 Sep 2011 18:50:09 +0000 (18:50 +0000)]
PR debug/49901
* config/darwin.h (DEBUG_MACRO_SECTION): New macro.

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

12 years ago2011-09-04 Janus Weil <janus@gcc.gnu.org>
janus [Sun, 4 Sep 2011 10:49:13 +0000 (10:49 +0000)]
2011-09-04  Janus Weil  <janus@gcc.gnu.org>

PR fortran/50227
* trans-types.c (gfc_sym_type): Check for proc_name.

2011-09-04  Janus Weil  <janus@gcc.gnu.org>

PR fortran/50227
* gfortran.dg/class_45a.f03: New.
* gfortran.dg/class_45b.f03: New.

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

12 years ago PR tree-optimization/50208
irar [Sun, 4 Sep 2011 09:22:38 +0000 (09:22 +0000)]
    PR tree-optimization/50208
        * tree-vect-patterns.c (vect_handle_widen_mult_by_const): Add an
        argument.  Check that def_stmt is inside the loop.
        (vect_recog_widen_mult_pattern): Update calls to
        vect_handle_widen_mult_by_cons.
        (vect_operation_fits_smaller_type): Check that def_stmt is
        inside the loop.

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

12 years ago * tree-vectorizer.c (vect_print_dump_info): Print line
irar [Sun, 4 Sep 2011 08:53:43 +0000 (08:53 +0000)]
    * tree-vectorizer.c (vect_print_dump_info): Print line
        number when dumping to a file.
        (vectorize_loops): Add new messages to dump file.

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

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

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

12 years ago2011-09-03 Martin Jambor <mjambor@suse.cz>
jamborm [Sat, 3 Sep 2011 19:48:39 +0000 (19:48 +0000)]
2011-09-03  Martin Jambor  <mjambor@suse.cz>

* ipa-prop.h (ipa_jump_func_t): New typedef.
(struct ipa_edge_args): Removed field argument_count, field
jump_functions turned into a vector.
(ipa_set_cs_argument_count): Removed.
(ipa_get_cs_argument_count): Updated to work on vectors.
(ipa_get_ith_jump_func): Likewise.
* ipa-prop.c (ipa_count_arguments): Removed.
(compute_scalar_jump_functions): Use ipa_get_ith_jump_func to access
jump functions.  Update caller.
(compute_pass_through_member_ptrs): Likewise.
(compute_cst_member_ptr_arguments): Likewise.
(ipa_compute_jump_functions_for_edge): Get number of arguments from
the statement, allocate vector.
(ipa_compute_jump_functions): Do not call ipa_count_arguments.
(duplicate_ipa_jump_func_array): Removed.
(ipa_edge_duplication_hook): Use VEC_copy, do not copy argument count.
(ipa_read_node_info): Allocate vector.

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

12 years ago PR middle-end/50232
danglin [Sat, 3 Sep 2011 16:30:32 +0000 (16:30 +0000)]
PR middle-end/50232
Correct log entry for last change.

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

12 years ago PR Bug middle-end/50232
danglin [Sat, 3 Sep 2011 16:21:27 +0000 (16:21 +0000)]
PR Bug middle-end/50232
* config/pa/pa.md (return): Define "return" insn pattern.
(epilogue): Use it when no epilogue is needed.
* config/pa/pa.c (pa_can_use_return_insn): New function.
* config/pa/pa-protos.h (pa_can_use_return_insn): Declare.

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

12 years ago * cfgexpand.c (add_stack_var): Assert that the alignment is not zero.
ebotcazou [Sat, 3 Sep 2011 14:56:53 +0000 (14:56 +0000)]
* cfgexpand.c (add_stack_var): Assert that the alignment is not zero.
* tree-ssa-ccp.c (fold_builtin_alloca_for_var): Revert latest change.
Force at least BITS_PER_UNIT alignment on the new variable.

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

12 years agoDaily bump.
gccadmin [Sat, 3 Sep 2011 00:18:53 +0000 (00:18 +0000)]
Daily bump.

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

12 years ago2011-09-02 Gary Funck <gary@intrepid.com>
gfunck [Fri, 2 Sep 2011 21:19:17 +0000 (21:19 +0000)]
2011-09-02  Gary Funck <gary@intrepid.com>

* opts.c (print_specific_help): Fix off-by-one compare in
assertion check.
* opts.h (CL_PARAMS, CL_WARNING, CL_OPTIMIZATION, CL_DRIVER,
CL_TARGET, CL_COMMON, CL_JOINED, CL_SEPARATE, CL_UNDOCUMENTED):
Increase by +5 to allow for more languages.
* optc-gen.awk: Generate #if that ensures that the number of
languages is within the implementation-defined limit.

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

12 years ago PR middle-end/50260
matz [Fri, 2 Sep 2011 18:31:47 +0000 (18:31 +0000)]
PR middle-end/50260
* ipa-split.c (split_function): Call add_referenced_var.

* tree-ssa-phiopt.c (cond_store_replacement): Don't call get_var_ann.
(cond_if_else_store_replacement_1): Ditto.
* tree-ssa-pre.c (get_representative_for): Ditto.
(create_expression_by_pieces): Ditto.
(insert_into_preds_of_block): Ditto.
* tree-sra.c (create_access_replacement): Ditto.
(get_replaced_param_substitute): Ditto.

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

12 years ago * config/c6x/c6x.md (collapse-ndfa, no-comb-vect): New
bernds [Fri, 2 Sep 2011 17:53:54 +0000 (17:53 +0000)]
* config/c6x/c6x.md (collapse-ndfa, no-comb-vect): New
automata_options.
(d1, l1, s1, m1, d2, l2, s2, m2): Changed to define_query_cpu_unit.
(l1w, s1w, l2w, s2w): Define in the main automaton.
(fps1, fpl1, adddps1, adddpl1, fps2, fpl2, adddps2, adddpl2): New
units.
* config/c6x/c6x.c (c6x_sched_insn_info): Add unit_mask member.
(c6x_unit_names): Add the new units.
(c6x_unit_codes): New static array.
(UNIT_QID_D1, UNIT_QID_L1, UNIT_QID_S1, UNIT_QID_M1, UNIT_QID_FPS1,
UNIT_QID_FPL1, UNIT_QID_ADDDPS1, UNIT_QID_ADDDPL1,
UNIT_QID_SIDE_OFFSET): New macros.
(RESERVATION_S2): Adjust value.
(c6x_option_override): Compute c6x_unit_codes.
(assign_reservations): Take the unit_mask of the last instruction
into account.  Detect floating point reservations by looking for
the new units.  Don't assign reservations if the field is already
nonzero.
(struct c6x_sched_context): Add member prev_cycle_state_ctx.
(init_sched_state): Initialize it.
(c6x_clear_sched_context): Free it.
(insn_set_clock): Clear reservation.
(prev_cycle_state): New static variable.
(c6x_init_sched_context): Save it.
(c6x_sched_init): Allocate space for it and clear it.
(c6x_sched_dfa_pre_cycle_insn): New static function.
(c6x_dfa_new_cycle): Save state at the start of a new cycle.
(c6x_variable_issue): Only record units in the unit_mask that
were not set at the start of the cycle.
(c6x_variable_issue): Compute and store the unit_mask from the
current state.
(reorg_split_calls): Ensure the new information remains correct.
(TARGET_SCHED_DFA_NEW_CYCLE, TARGET_SCHED_CLEAR_SCHED_CONTEXT,
TARGET_SCHED_DFA_PRE_CYCLE_INSN): Define.
* config/c6x/c6x.h (CPU_UNITS_QUERY): Define.
* config/c6x/c6x-sched.md.in (fp4_ls_N__CROSS_, adddp_ls_N__CROSS_):
Add special reservations.
* config/c6x/c6x-sched.md: Regenerate.

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

12 years ago2011-09-02 François Dumont <fdumont@gcc.gnu.org>
paolo [Fri, 2 Sep 2011 15:54:16 +0000 (15:54 +0000)]
2011-09-02  François Dumont  <fdumont@gcc.gnu.org>

* testsuite/util/testsuite_allocator.h (tracker_allocator_counter::
allocate): Update allocation count only if allocation succeeded.

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

12 years ago2011-09-02 Martin Jambor <mjambor@suse.cz>
jamborm [Fri, 2 Sep 2011 15:37:38 +0000 (15:37 +0000)]
2011-09-02  Martin Jambor  <mjambor@suse.cz>

* ipa-prop.h (ipa_node_params): Removed fields
called_with_var_arguments and node_versionable.
(ipa_set_called_with_variable_arg): Removed.
(ipa_is_called_with_var_arguments): Likewise.
* ipa-cp.c (ipa_get_lattice): Fixed index check in an assert.
(determine_versionability): Do not check for type attributes and va
builtins.  Record versionability into inline summary.
(initialize_node_lattices): Do not check
ipa_is_called_with_var_arguments.
(propagate_constants_accross_call): Likewise, ignore arguments we do
not have PARM_DECLs for, set variable flag for parameters that were
not passed a value.
(create_specialized_node): Dump info that we cannot change signature.
* ipa-prop.c (ipa_compute_jump_functions): Do not care about variable
number of arguments.
(ipa_make_edge_direct_to_target): Likewise.
(ipa_update_after_lto_read): Likewise.
(ipa_node_duplication_hook): Do not copy called_with_var_arguments flag.
* tree-inline.c (copy_arguments_for_versioning): Copy PARM_DECLs if
they were remapped.

* testsuite/gcc.dg/ipa/ipcp-3.c: New test.

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

12 years ago2011-09-02 Richard Guenther <rguenther@suse.de>
rguenth [Fri, 2 Sep 2011 13:53:32 +0000 (13:53 +0000)]
2011-09-02  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/27460
PR middle-end/29269
* doc/md.texi (vcond): Document.
* genopinit.c (optabs): Turn vcond{,u}_optab into a conversion
optab with two modes.
* optabs.h (enum convert_optab_index): Add COI_vcond, COI_vcondu.
(enum direct_optab_index): Remove DOI_vcond, DOI_vcondu.
(vcond_optab): Adjust.
(vcondu_optab): Likewise.
(expand_vec_cond_expr_p): Adjust prototype.
* optabs.c (get_vcond_icode): Adjust.
(expand_vec_cond_expr_p): Likewise.
(expand_vec_cond_expr): Likewise.
* tree-vect-stmts.c (vect_is_simple_cond): Return the comparison
vector type.
(vectorizable_condition): Allow differing types for comparison
and result.

* config/i386/i386.c (ix86_expand_sse_cmp): Use proper mode
for the comparison.
* config/i386/sse.md (vcond<mode>): Split to
vcond<V_256:mode><VF_256:mode>, vcond<V_128:mode><VF_128:mode>,
vcond<V_128:mode><VI124_128:mode> and
vcondu<V_128:mode><VI124_128:mode>.
(vcondv2di): Change to vcond<VI8F_128:mode>v2di.
(vconduv2di): Likewise.
* config/arm/neon.md (vcond<mode>): Change to vcond*<mode><mode>.
(vcondu<mode>): Likewise.
* config/ia64/vect.md (vcond<mode>): Likewise.
(vcondu<mode>): Likewise.
(vcondv2sf): Likewise.
* config/mips/mips-ps-3d.md (vcondv2sf): Likewise.
* config/rs6000/paired.md (vcondv2sf): Likewise.
* config/rs6000/vector.md (vcond<mode>): Likewise.
(vcondu<mode>): Likewise.
* config/spu/spu.md (vcond<mode>): Likewise.
(vcondu<mode>): Likewise.

* gcc.dg/vect/vect-cond-7.c: New testcase.

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

12 years ago2011-09-02 Richard Guenther <rguenther@suse.de>
rguenth [Fri, 2 Sep 2011 13:52:12 +0000 (13:52 +0000)]
2011-09-02  Richard Guenther  <rguenther@suse.de>

* pretty-print.h (pp_unsigned_wide_integer): New.
* tree-pretty-print.c (dump_generic_node): Print unsigned
host-wide-int fitting INTEGER_CSTs with pp_unsigned_wide_integer.

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

12 years ago2011-09-02 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Fri, 2 Sep 2011 13:49:10 +0000 (13:49 +0000)]
2011-09-02  Paolo Carlini  <paolo.carlini@oracle.com>

* include/std/bitset: Trivial formatting fixes.

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

12 years ago * ja.po: Update.
jsm28 [Fri, 2 Sep 2011 13:45:31 +0000 (13:45 +0000)]
* ja.po: Update.

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

12 years agogcc/
rsandifo [Fri, 2 Sep 2011 13:32:10 +0000 (13:32 +0000)]
gcc/
PR target/49987
* config/rs6000/rs6000.c (paired_expand_vector_init): Check for
valid CONST_VECTOR operands.
(rs6000_expand_vector_init): Likewise.

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

12 years ago2011-09-02 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Fri, 2 Sep 2011 13:30:32 +0000 (13:30 +0000)]
2011-09-02  Paolo Carlini  <paolo.carlini@oracle.com>
    Marc Glisse  <marc.glisse@normalesup.org>

* include/std/bitset (_Base_bitset<>::_M_are_all_aux): Remove.
(_Base_bitset<>::_M_are_all): Add.
(bitset<>::all): Use the latter, improve implementation.

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

12 years ago2011-09-02 Martin Jambor <mjambor@suse.cz>
jamborm [Fri, 2 Sep 2011 13:26:30 +0000 (13:26 +0000)]
2011-09-02  Martin Jambor  <mjambor@suse.cz>

* cgraph.h (cgraph_indirect_call_info): Removed field thunk_delta.
* gimple-fold.c (gimple_get_virt_method_for_binfo): Rewritten to use
BINFO_VTABLE.  Parameter delta removed, all callers updated.
* tree.c (free_lang_data_in_binfo): Clear BINFO_VIRTUALs instead
BINFO_VTABLE.
* cgraph.c (cgraph_make_edge_direct): Removed parameter delta, updated
all calls.
* cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Removed
handling of thunk_delta.
* ipa-cp.c (get_indirect_edge_target): Removed parameter delta.
(devirtualization_time_bonus): Do not handle thunk deltas.
(ipcp_discover_new_direct_edges): Likewise.
* ipa-prop.c (ipa_make_edge_direct_to_target): Likewise.
(try_make_edge_direct_simple_call): Likewise.
(try_make_edge_direct_virtual_call): Likewise.
* lto-cgraph.c (output_cgraph_opt_summary_p): Likewise.  Mark
parameter set as unused.
(output_edge_opt_summary): Likewise.  Mark both parameters as unused.
* lto-cgraph.c (output_cgraph_opt_summary_p): Likewise.  Mark
parameter set as unused.
(output_edge_opt_summary): Likewise.  Mark both parameters as unused.
(input_edge_opt_summary): Likewise.
* lto-streamer-out.c (lto_output_ts_binfo_tree_pointers): Do not stream
BINFO_VIRTUALS at all.
* lto-streamer-in.c (lto_input_ts_binfo_tree_pointers): Likewise.

* testsuite/g++.dg/ipa/devirt-3.C: Added a distraction method.
* testsuite/g++.dg/ipa/ivinline-7.C: Added a test for direct call
discovery, xfailed test for inlining.
* testsuite/g++.dg/ipa/ivinline-9.C: Likewise.

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

12 years ago2011-09-02 Richard Guenther <rguenther@suse.de>
rguenth [Fri, 2 Sep 2011 11:53:55 +0000 (11:53 +0000)]
2011-09-02  Richard Guenther  <rguenther@suse.de>

* tree-ssa-ccp.c (fold_builtin_alloca_for_var): Do not
fold alloca (0).
(ccp_fold_stmt): Continue replacing args when folding
alloca fails.

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

12 years ago2011-09-02 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Fri, 2 Sep 2011 10:28:36 +0000 (10:28 +0000)]
2011-09-02  Paolo Carlini  <paolo.carlini@oracle.com>
    Marc Glisse  <marc.glisse@normalesup.org>

PR libstdc++/50268
* include/std/bitset (struct _Sanitize_val): Add.
(bitset<>::bitset(unsigned long long)): Fix.
* testsuite/23_containers/bitset/cons/50268.cc: New.

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

12 years ago2011-09-02 Robert Dewar <dewar@adacore.com>
charlet [Fri, 2 Sep 2011 10:10:35 +0000 (10:10 +0000)]
2011-09-02  Robert Dewar  <dewar@adacore.com>

* sem_ch4.adb, sem_ch6.adb: Minor reformatting.
* gcc-interface/Make-lang.in: Update dependencies.

2011-09-02  Marc Sango  <sango@adacore.com>

* sem_ch3.adb (Analyze_Object_Declaration): Change
comment and add additional check to differentiate constant of
type string from others unconstrained type.

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

12 years ago2011-09-02 Ed Schonberg <schonberg@adacore.com>
charlet [Fri, 2 Sep 2011 10:07:35 +0000 (10:07 +0000)]
2011-09-02  Ed Schonberg  <schonberg@adacore.com>

* sinfo.ads, sinfo.adb: New semantic attribute Premature_Use,
present in incomplete type declarations to refine the error
message the full declaration is in the same unit.
* sem_ch4.adb (Analyze_Selected_Component): If the prefix is of
an incomplete type, set the Premature_Use for additional message.
* sem_ch3.adb (Find_Type_Name): If partial view is incomplete
and Premature_Use is set, place additional information at the
point of premature use.

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

12 years ago2011-09-02 Bob Duff <duff@adacore.com>
charlet [Fri, 2 Sep 2011 09:59:32 +0000 (09:59 +0000)]
2011-09-02  Bob Duff  <duff@adacore.com>

* sem_ch6.adb: (Check_Post_State): Suppress warning
"postcondition refers only to pre-state" when the expression has not
yet been analyzed, because it causes false alarms. This can happen when
the postcondition contains a quantified expression, because those are
analyzed later. This is a temporary/partial fix.
(Process_Post_Conditions): Minor: change wording of warning.

2011-09-02  Marc Sango  <sango@adacore.com>

* sem_ch3.adb (Analyze_Object_Declaration): Detect the violation of
illegal use of unconstrained string type in SPARK mode.
* sem_res.adb (Analyze_Operator_Symbol): Set the
right place where the string operand of concatenation should be
violate in SPARK mode.

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

12 years ago2011-09-02 Robert Dewar <dewar@adacore.com>
charlet [Fri, 2 Sep 2011 09:57:21 +0000 (09:57 +0000)]
2011-09-02  Robert Dewar  <dewar@adacore.com>

* sem_prag.adb, sem_util.adb, sem_ch6.adb, prj-nmsc.adb,
exp_ch3.adb: Minor reformatting.

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

12 years ago2011-09-02 Vincent Celier <celier@adacore.com>
charlet [Fri, 2 Sep 2011 09:52:36 +0000 (09:52 +0000)]
2011-09-02  Vincent Celier  <celier@adacore.com>

* prj-conf.adb (Add_Default_GNAT_Naming_Scheme): Declare "gcc"
as the compiler driver so Is_Compilable returns True for sources.
* prj-nmsc.adb (Override_Kind): When Kind is Sep, set the source
for the body.

2011-09-02  Ed Schonberg  <schonberg@adacore.com>

* sem_prag.adb (Analyze_PPC_In_Decl_Part): for a class-wide
condition, a reference to a controlling formal must be interpreted
as having the class-wide type (or an access to such) so that the
inherited condition can be properly applied to any overriding
operation (see ARM12 6.6.1 (7)).

2011-09-02  Tristan Gingold  <gingold@adacore.com>

* init.c (__gnat_is_vms_v7): Fix case and add prototype
for LIB$GETSYI.

2011-09-02  Javier Miranda  <miranda@adacore.com>

* exp_ch3.adb (Expand_N_Object_Declaration): Do not copy the
initializing expression of a class-wide interface object declaration
if its type is limited.

2011-09-02  Johannes Kanig  <kanig@adacore.com>

* sem_util.adb (Unique_Name): To obtain a unique name for enumeration
literals, take into account the type name; the type is *not*
the scope for an enumeration literal.

2011-09-02  Ed Schonberg  <schonberg@adacore.com>

* sem_ch6.adb (Check_Overriding_Indicator): add special check
to reject an overriding indicator on a user-defined Adjust
subprogram for a limited controlled type.

2011-09-02  Ed Schonberg  <schonberg@adacore.com>

* sem_res.adb (Resolve_Actuals): add missing call to Resolve
for an actual that is a function call returning an unconstrained
limited controlled type.

2011-09-02  Tristan Gingold  <gingold@adacore.com>

* g-socthi-vms.adb (c_sendmsg, c_recvmsg): Use unpacked msg if on vms 7

2011-09-02  Johannes Kanig  <kanig@adacore.com>

* alfa.ads (Name_Of_Heap_Variable): Change value of the HEAP variable
from "HEAP" to __HEAP Change comment that refers to that variable
* put_alfa.adb: Change comment that refers to that variable

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