platform/upstream/linaro-gcc.git
12 years agoDaily bump.
gccadmin [Fri, 15 Jun 2012 00:18:49 +0000 (00:18 +0000)]
Daily bump.

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

12 years agoUpdate sysdep/sh/locks.h with atomic builtins
kkojima [Thu, 14 Jun 2012 22:58:05 +0000 (22:58 +0000)]
Update sysdep/sh/locks.h with atomic builtins
* sysdep/sh/locks.h (__cas_lock): Remove.
(__cas_start_atomic, __cas_end_atomic): Likewise.
(compare_and_swap): Call __sync_bool_compare_and_swap.

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

12 years ago * config/tilegx/sync.md (atomic_fetch_sub<mode>): Fix typo.
mkuvyrkov [Thu, 14 Jun 2012 22:46:03 +0000 (22:46 +0000)]
* config/tilegx/sync.md (atomic_fetch_sub<mode>): Fix typo.

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

12 years ago PR libstdc++/53270
redi [Thu, 14 Jun 2012 22:20:52 +0000 (22:20 +0000)]
PR libstdc++/53270
* include/ext/concurrence.h (__mutex, __recursive_mutex, __cond): Use
NSDMI in C++11 mode.
* include/ext/rope (_Refcount_Base): Likewise. Destroy mutex in
destructor when initialized by function.

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

12 years ago PR libstdc++/53648
redi [Thu, 14 Jun 2012 22:07:33 +0000 (22:07 +0000)]
PR libstdc++/53648
* include/std/tuple (__empty_not_final): Do not use EBO for tuples.
* testsuite/20_util/tuple/53648.cc: New.
* testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error line
number.

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

12 years ago * doc/xml/manual/status_cxx2011.xml: Correct C++11 status table.
redi [Thu, 14 Jun 2012 20:32:11 +0000 (20:32 +0000)]
* doc/xml/manual/status_cxx2011.xml: Correct C++11 status table.

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

12 years agoFix my previous commit to:
uros [Thu, 14 Jun 2012 19:38:12 +0000 (19:38 +0000)]
Fix my previous commit to:

* config/i386/i386.md (*zero_extendsidi2): Remove x,x alternative.
(*zero_extendsidi2_rex64): Ditto.

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

12 years ago PR target/53568
olegendo [Thu, 14 Jun 2012 19:33:10 +0000 (19:33 +0000)]
PR target/53568
* config/sh/sh.md: Add peephole for swapbsi2.
(*swapbisi2_and_shl8, *swapbhisi2): New insns and splits.

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

12 years ago * config/i386/i386.md (*zero_extendsidi2): Mark movd alternatives
uros [Thu, 14 Jun 2012 18:51:36 +0000 (18:51 +0000)]
* config/i386/i386.md (*zero_extendsidi2): Mark movd alternatives
SSE2 only.  Remove x,x alternative.
(*zero_extendsidi2_rex64): Ditto.

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

12 years ago PR target/53639
jakub [Thu, 14 Jun 2012 18:26:53 +0000 (18:26 +0000)]
PR target/53639
* config/i386/i386.md (*anddi_1 into *andsi_1_zext splitter): New.

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

12 years ago * arm.c (arm_cirrus_insn_p): Delete.
rearnsha [Thu, 14 Jun 2012 16:00:55 +0000 (16:00 +0000)]
* arm.c (arm_cirrus_insn_p): Delete.
(cirrus_reorg): Delete.
(arm_reorg): Don't call cirrus_reorg.
(arm_final_prescan_insn_p): Don't check for cirrus insns.
* arm.md (define_attr "type"): Remove mav_farith and mav_dmult.
(adddi3, subdi3): Remove Maverick support.
(arm_adddi3): Likewise.
(adddi_sesidi_di, adddi_zesidi_di): Likewise.
(addsf3, adddf3): Likewise.
(subsf3, subdf3): Likewise.
(mulsf3, muldf3): Likewise.
(ashldi3, ashrdi3, lshrdi3): Likewise.
(floatsisf2, floatsidf2): Likewise.
(fix_truncsfsi2, fix_truncdfsi2): Likewise.
(arm_movdi, thumb1_movdi_insn): Likewise.
(arm_cmpdi_insn): Likewise.
(cirrus_cmpsf, cirrus_cmpdf, cirrus_cmpdi): Likewise.
(cirrus.md): Don't include.
* cirrus.md: Delete file.
* t-arm (MD_INCLUDES): Remove cirrus.md.

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

12 years ago * dwarf2out.c (function_possibly_abstracted_p): New static function.
ebotcazou [Thu, 14 Jun 2012 14:09:05 +0000 (14:09 +0000)]
* dwarf2out.c (function_possibly_abstracted_p): New static function.
(gen_subprogram_die): Use it function_possibly_abstracted_p in lieu of
cgraph_function_possibly_inlined_p.
(gen_inlined_subroutine_die): Return if the origin is to be ignored.
(process_scope_var): Do not emit concrete instances of abstracted
nested functions from here.
(gen_decl_die): Emit the abstract instance if the function is possibly
abstracted and not only possibly inlined.
(dwarf2out_finish): Find the first non-abstract parent instance and
attach concrete instances on the limbo list to it.

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

12 years ago * arm.md (divsf3, divdf3): Remove FPA support.
rearnsha [Thu, 14 Jun 2012 13:02:52 +0000 (13:02 +0000)]
* arm.md (divsf3, divdf3): Remove FPA support.
(negsf2, negdf2): Likewise.
(sqrtsf2, sqrtdf2): Likewise.
(movdfcc): Likewise.
(modsf3, moddf3, movxf): Delete.
(push_fp_multi): Delete.
(fpa.md): Don't include it.
* fpa.md: Delete file.
* t-arm (MD_INCLUDES): Remove fpa.md.

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

12 years ago2012-06-14 Jose Ruiz <ruiz@adacore.com>
charlet [Thu, 14 Jun 2012 12:48:22 +0000 (12:48 +0000)]
2012-06-14  Jose Ruiz  <ruiz@adacore.com>

* gcc-interface/Make-lang.in (ada.install-common, ada.uninstall):
Use the prefix specified with the --program-prefix configure option
to determine the install name of the Ada tools.
(ada.all.cross): Use a for loop to iterate over the set of Ada tools
instead of duplicate the same processing.
Update dependencies.

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

12 years ago2012-06-14 Bill Schmidt <wschmidt@linux.ibm.com>
wschmidt [Thu, 14 Jun 2012 12:21:36 +0000 (12:21 +0000)]
2012-06-14  Bill Schmidt  <wschmidt@linux.ibm.com>

* tree-vectorizer.h (vect_get_stmt_cost): Move from tree-vect-stmts.c.
(cost_for_stmt): Remove decl.
(vect_get_single_scalar_iteration_cost): Correct typo in name.
* tree-vect-loop.c (vect_get_cost): Remove.
(vect_get_single_scalar_iteration_cost): Correct typo in name; use
vect_get_stmt_cost rather than vect_get_cost.
(vect_get_known_peeling_cost): Use vect_get_stmt_cost rather than
vect_get_cost.
(vect_estimate_min_profitable_iters): Correct typo in call to
vect_get_single_scalar_iteration_cost; use vect_get_stmt_cost rather
than vect_get_cost.
(vect_model_reduction_cost): Use vect_get_stmt_cost rather than
vect_get_cost.
(vect_model_induction_cost): Likewise.
* tree-vect-data-refs.c (vect_peeling_hash_get_lowest_cost): Correct
typo in call to vect_get_single_scalar_iteration_cost.
* tree-vect-stmts.c (vect_get_stmt_cost): Move to tree-vectorizer.h.
(cost_for_stmt): Remove unnecessary function.
* Makefile.in (TREE_VECTORIZER_H): Update dependencies.

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

12 years ago2012-06-14 Vincent Pucci <pucci@adacore.com>
charlet [Thu, 14 Jun 2012 10:56:22 +0000 (10:56 +0000)]
2012-06-14  Vincent Pucci  <pucci@adacore.com>

* exp_ch6.adb (Expand_Call): Expand_Put_Call_With_Dimension_Symbol
call replaced by Expand_Put_Call_With_Symbol call.
* sem_dim.adb: New fields Unit_Names, Unit_Symbols
and Dim_Symbols for record type System_Type.
(From_Dimension_To_String_Of_Symbols): Removed.
(From_Dim_To_Str_Of_Dim_Symbols): Renames previous
routine From_Dimension_To_String_Of_Symbols.
(From_Dim_To_Str_Of_Unit_Symbols): New routine.
(Analyze_Aspect_Dimension): argument Symbol in aspect
Dimension aggregate is optional. Named association implemented.
(Has_Compile_Time_Known_Expressions): Removed.
(Analyze_Aspect_Dimension_System): New
component Dim_Symbol in each Dimension aggregate in
aspect Dimension_System. Named associations implemented.
(Add_Dimension_Vector_To_Buffer): Removed.
(Add_Whole_To_Buffer): Removed.
(Expand_Put_Call_With_Dimension_Symbol.): Removed.
(Expand_Put_Call_With_Symbol): Renames previous routine
Expand_Put_Call_With_Dimension_Symbol.
(Has_Dimension_Symbols): Removed.
(Has_Symbols): Renames previous routine
Has_Dimension_Symbols. (Store_String_Oexpon): New routine.
* sem_dim.ads (Expand_Put_Call_With_Dimension_Symbol.): Removed.
(Expand_Put_Call_With_Symbol): Renames previous routine
Expand_Put_Call_With_Dimension_Symbol.
* s-diflio.adb, s-diinio.adb (Put): Symbol renames Symbols.
(Put_Dim_Of): New routines.
* s-diflio.ads, s-diinio.ads: documentation updated.
(Put): Symbol renames Symbols.
(Put_Dim_Of): New routines.
* s-dim.ads: documentation updated.
* s-dimmks.ads: dimensioned type and subtypes updated.
* snames.ads-tmpl: Name_Dim_Symbol, Name_Put_Dim_Of, Name_Symbol,
and Name_Unit_Symbol added. Name_Symbols removed.

2012-06-14  Vincent Pucci  <pucci@adacore.com>

* freeze.adb (In_Exp_Body): Expression function case added.
(Freeze_Expression): Insert the Freeze_Nodes
list before the correct current scope in case of a quantified
expression.

2012-06-14  Pascal Obry  <obry@adacore.com>

* projects.texi: Document the Install package for gprinstall.
2012-06-14  Ed Schonberg  <schonberg@adacore.com>

* sem_elim.adb (Check_For_Eliminated_Subprogram): Do not check within
a default expression.
* sem_res.adb (Resolve_Call): simplify code.

2012-06-14  Ed Schonberg  <schonberg@adacore.com>

* sem_case.adb (Check, Issue_Msg): within an instance, non-other
values in a variant part or a case expression do not have to
belong to the actual subtype.

2012-06-14  Ed Schonberg  <schonberg@adacore.com>

* sem_ch12.adb (Validate_Derived_Type_Instance): If parent is
an interface type, check whether it is itself a previous formal
already instantiated in the current list of actuals.

2012-06-14  Ed Schonberg  <schonberg@adacore.com>

* sem_ch13.adb (Check_Aspect_At_End_Of_Declarations): The
expression for a stream attribute is a name that may be overloaded
with other declarations. To determine whether it matches the
aspect at the freeze point, it is necessary to verify that one
of its interpretations matches.

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

12 years ago2012-06-14 Robert Dewar <dewar@adacore.com>
charlet [Thu, 14 Jun 2012 10:49:59 +0000 (10:49 +0000)]
2012-06-14  Robert Dewar  <dewar@adacore.com>

* exp_ch7.adb, exp_util.adb, sem_aux.ads, exp_ch9.adb,
sem_ch10.adb, freeze.adb, sem_util.adb, exp_ch4.adb,
s-taprop-dummy.adb: Minor reformatting.

2012-06-14  Vincent Pucci  <pucci@adacore.com>

* exp_attr.adb (Expand_N_Attribute_Reference): Lock_Free
attribute case added.
* par-prag.adb (Prag): Lock_Free pragma case added.
* sem_attr.adb (Analyze_Attribute_Reference): Lock_Free attribute
case added.
* sem_ch13.adb (Analyze_Aspect_Specifications): Record_Rep_Item
call added for Aspect_Lock_Free.
* sem_ch9.adb (Allows_Lock_Free_Implementation): New Lock_Free
error messages for subprogram bodies.
(Lock_Free_Disabled): New routine.
(Analyze_Protected_Body): Call to Lock_Free_Disabled added.
* sem_prag.adb (Analyze_Pragma): Lock_Free pragma case added.
* snames.adb-tmpl (Get_Pragma_Id): Name_Lock_Free case added.
(Is_Pragma_Name): Name_Lock_Free case added.
* snames.ads-tmpl: Attribute_Lock_Free and Pragma_Lock_Free added.

2012-06-14  Ed Schonberg  <schonberg@adacore.com>

* a-coorma.adb, a-cborma.adb, a-cbhama.adb, a-ciorma.adb: Add missing
aliased keyword.

2012-06-14  Bob Duff  <duff@adacore.com>

* lib.ads, lib.adb, sem.adb (Write_Unit_Info): Move this
procedure from Sem body to Lib spec, so it can be used for
debugging elsewhere.

2012-06-14  Ed Schonberg  <schonberg@adacore.com>

* sem_ch6.adb (Check_Conformance): Add Ada 2012 check on mode
conformance: "aliased" must apply to both or neither formal
parameters.

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

12 years ago2012-06-14 Gary Dismukes <dismukes@adacore.com>
charlet [Thu, 14 Jun 2012 10:46:14 +0000 (10:46 +0000)]
2012-06-14  Gary Dismukes  <dismukes@adacore.com>

* exp_ch9.adb: Minor reformatting.

2012-06-14  Thomas Quinot  <quinot@adacore.com>

* freeze.adb (Freeze_Record_Type): Warn about useless bit order
specification [when there's no component clause] regardless
of whether the specified bit order is reversed or not.

2012-06-14  Tristan Gingold  <gingold@adacore.com>

* raise-gcc.c (__gnat_personality_seh0): New function.

2012-06-14  Tristan Gingold  <gingold@adacore.com>

* gnatname.adb (Gnatname): Make sure that dynamic table
argument_data is initialized.

2012-06-14  Robert Dewar  <dewar@adacore.com>

* sem_aux.adb: Minor code reorganization.

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

12 years ago2012-06-14 Vincent Pucci <pucci@adacore.com>
charlet [Thu, 14 Jun 2012 10:43:53 +0000 (10:43 +0000)]
2012-06-14  Vincent Pucci  <pucci@adacore.com>

* einfo.adb einfo.ads (Get_Rep_Item): Removed.
(Get_Rep_Item_For_Entity): Removed.
(Get_Rep_Pragma): Removed.
(Get_Rep_Pragma_For_Entity): Removed.
(Has_Rep_Item): Removed.
(Has_Rep_Pragma): Removed.
(Has_Rep_Pragma_For_Entity): Removed.
* exp_ch9.adb (Expand_N_Task_Type_Declaration):
Has_Rep_Pragma_For_Entity replaced by Has_Rep_Pragma
and Get_Rep_Pragma_For_Entity replaced by Get_Rep_Pragma.
(Make_Task_Create_Call): Has_Rep_Pragma_For_Entity replaced
by Has_Rep_Pragma and Get_Rep_Pragma_For_Entity replaced by
Get_Rep_Pragma.
* exp_intr.adb: Dependency to Sem_Aux added for call to Get_Rep_Pragma.
* sem_aux.adb (Get_Rep_Item): New routine.
(Get_Rep_Pragma): New routine.
(Has_Rep_Item): New routine.
(Has_Rep_Pragma): New routine.
(Nearest_Ancestor): Minor reformatting.
* sem_aux.ads (Get_Rep_Item): New routine.
(Get_Rep_Pragma): New routine.
(Has_Rep_Item): New routine.
(Has_Rep_Pragma): New routine.
* sem_ch13.adb (Duplicate_Clause): Restore original error messages.
* sem_eval.adb (Subtypes_Statically_Match): Get_Rep_Item_For_Entity
replaced by Get_Rep_Item.
* sem_prag.adb (Analyze_Pragma): Restore original error messages.
(Check_Duplicate_Pragma): Restore original error messages.

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

12 years ago2012-06-14 Ed Schonberg <schonberg@adacore.com>
charlet [Thu, 14 Jun 2012 10:39:51 +0000 (10:39 +0000)]
2012-06-14  Ed Schonberg  <schonberg@adacore.com>

* sem_util.adb (Is_Object_Reference): in Ada 2012, qualified
expressions are valid names.

2012-06-14  Ed Schonberg  <schonberg@adacore.com>

* sem_ch10.adb (Analyze_Compilation_Unit): If the unit is an
instantiation do not emit warnings for obsolescent units. The
warnings belong on the corresponding generic.

2012-06-14  Hristian Kirtchev  <kirtchev@adacore.com>

* einfo.adb: Update the usage of Node15.
(Return_Flag_Or_Transient_Decl): Removed.
(Set_Return_Flag_Or_Transient_Decl): Removed.
(Set_Status_Flag_Or_Transient_Decl): New routine.
(Status_Flag_Or_Transient_Decl): New routine.
(Write_Field15_Name): Update the output for variables and constants.
* einfo.ads: Remove attribute
Return_Flag_Or_Transient_Decl along with occurrences in nodes.
(Return_Flag_Or_Transient_Decl): Removed along with pragma Inline.
(Set_Return_Flag_Or_Transient_Decl): Removed along with pragma Inline.
(Set_Status_Flag_Or_Transient_Decl): New routine along with pragma
Inline.
(Status_Flag_Or_Transient_Decl): New routine along with pragma Inline.
* exp_ch4.adb (Create_Alternative): New routine.
(Expand_N_Conditional_Expression): Handle the case
where at least one of the conditional expression
alternatives prodices a controlled temporary by means of a function
call.
(Is_Controlled_Function_Call): New routine.
(Process_Transient_Object): Update the call to
Set_Return_Flag_Or_Transient_Decl.
* exp_ch6.adb (Enclosing_Context): New routine.
(Expand_N_Extended_Return_Statement): Update all calls to
Set_Return_Flag_Or_Transient_Decl.
(Expand_Ctrl_Function_Call): Prohibit the finalization of a controlled
function result when the context is a conditional expression.
* exp_ch7.adb (Process_Declarations): Update all calls to
Return_Flag_Or_Transient_Decl. Add processing for intermediate
results of conditional expressions where one of the alternatives
uses a controlled function call.
(Process_Object_Declaration): Update all calls to
Return_Flag_Or_Transient_Decl and rearrange the logic to process
"hook" objects first.
(Process_Transient_Objects): Update the call to
Set_Return_Flag_Or_Transient_Decl.
* exp_util.adb (Requires_Cleanup_Actions (List_Id, Boolean,
Boolean)): Update all calls to Return_Flag_Or_Transient_Decl. Add
detection for intermediate results of conditional expressions
where one of the alternatives uses a controlled function call.

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

12 years ago2012-06-14 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 14 Jun 2012 09:38:47 +0000 (09:38 +0000)]
2012-06-14  Richard Guenther  <rguenther@suse.de>

* gcc.dg/tree-ssa/vrp.h: New testcase.
* gcc.dg/tree-ssa/vrp68.c: Likewise.

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

12 years ago * arm.opt (mfp=2, mfp=3, mfpe, mfpe=2, mfpe=3): Delete options.
rearnsha [Thu, 14 Jun 2012 09:24:51 +0000 (09:24 +0000)]
* arm.opt (mfp=2, mfp=3, mfpe, mfpe=2, mfpe=3): Delete options.
        * arm-fpus.def (fpa, fpe2, fpe3, maverick): Delete FPU types.
* arm-tables.opt: Regenerated.
        * doc/invoke.texi: Remove references to deleted options.

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

12 years agoAdded offset bits of MOVA/Sz assembly instruction for memory access
jayants [Thu, 14 Jun 2012 09:08:49 +0000 (09:08 +0000)]
Added offset bits of MOVA/Sz assembly instruction for memory access

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

12 years agoAdded offset bits of MOVA/Sz assembly instruction for memory access
jayants [Thu, 14 Jun 2012 08:47:28 +0000 (08:47 +0000)]
Added offset bits of MOVA/Sz assembly instruction for memory access

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

12 years agoPR target/53621
chrbr [Thu, 14 Jun 2012 08:38:22 +0000 (08:38 +0000)]
PR target/53621
* config/sh/sh.c (sh_option_override): Don't force
flag_omit_frame_pointer and maccumulate_outgoing_args.
* config/sh/sh.opt (maccumulate-outgoing-args): Init as Var.

* gcc.dg/stack-usage-1.c: Force -fomit-frame-pointer on SH.

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

12 years ago2012-06-14 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 14 Jun 2012 07:52:32 +0000 (07:52 +0000)]
2012-06-14  Richard Guenther  <rguenther@suse.de>

* tree-vrp.c (VR_INITIALIZER): New define.
(ranges_from_anti_range): New function.
(extract_range_from_binary_expr_1): Decompose operations on
VR_ANTI_RANGEs to operations on VR_RANGE.
(extract_range_from_unary_expr_1): Likewise.
(extract_range_from_binary_expr_1, extract_range_from_binary_expr,
extract_range_from_unary_expr_1, extract_range_from_unary_expr,
extract_range_from_cond_expr, adjust_range_with_scev,
vrp_visit_assignment_or_call, vrp_visit_phi_node,
simplify_bit_ops_using_ranges): Use VR_INITIALIZER.

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

12 years agogcc/testsuite/
rsandifo [Thu, 14 Jun 2012 07:05:25 +0000 (07:05 +0000)]
gcc/testsuite/
* gcc.target/mips/mips.exp (mips-dg-options): Handle -msynci.

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

12 years agocompiler, reflect: Quote package path with tabs.
ian [Thu, 14 Jun 2012 05:04:04 +0000 (05:04 +0000)]
compiler, reflect: Quote package path with tabs.

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

12 years agolibgo: Make the subdirectory in the CHECK target.
ian [Thu, 14 Jun 2012 04:47:45 +0000 (04:47 +0000)]
libgo: Make the subdirectory in the CHECK target.

From Andreas Schwab.

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

12 years agocompiler: Avoid unnecessary interface conversions.
ian [Thu, 14 Jun 2012 00:47:38 +0000 (00:47 +0000)]
compiler: Avoid unnecessary interface conversions.

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

12 years agoDaily bump.
gccadmin [Thu, 14 Jun 2012 00:18:01 +0000 (00:18 +0000)]
Daily bump.

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

12 years ago PR testsuite/20771
janis [Wed, 13 Jun 2012 22:55:56 +0000 (22:55 +0000)]
PR testsuite/20771
* lib/dg-pch.exp (dg-flags-pch): Add flags to make compile lines in
test summary unique.

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

12 years ago * lib/scanasm.exp (scan-assembler, scan-assembler-not, scan-hidden,
janis [Wed, 13 Jun 2012 22:55:15 +0000 (22:55 +0000)]
* lib/scanasm.exp (scan-assembler, scan-assembler-not, scan-hidden,
scan-not-hiddent, scan-file, scan-file-not, scan-stack-usage,
scan-stack-usage-not): Don't strip torture options from test name.

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

12 years ago * lib/scandump.exp (scan-dump-times): Use printable version of
janis [Wed, 13 Jun 2012 22:54:24 +0000 (22:54 +0000)]
* lib/scandump.exp (scan-dump-times): Use printable version of
regexp in test summary line.

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

12 years ago * gcc.dg/di-longlong64-sync-1.c: Add comments to checks for multiple
janis [Wed, 13 Jun 2012 22:53:42 +0000 (22:53 +0000)]
* gcc.dg/di-longlong64-sync-1.c: Add comments to checks for multiple
messages reported for one line of source code.
* gcc.dg/format/few-1.c: Likewise.
* gcc.dg/ia64-sync-2.c: Likewise.
* gcc.dg/sync-2.c: Likewise.
* gcc.dg/noncompile/pr44517.c: Likewise.

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

12 years agoAdd and use HOST_WIDEST_INT_C, HOST_WIDE_INT_C.
rth [Wed, 13 Jun 2012 21:52:47 +0000 (21:52 +0000)]
Add and use HOST_WIDEST_INT_C, HOST_WIDE_INT_C.

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

12 years ago * gcc.pot: Regenerate.
jsm28 [Wed, 13 Jun 2012 21:49:11 +0000 (21:49 +0000)]
* gcc.pot: Regenerate.

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

12 years ago * cpplib.pot: Regenerate.
jsm28 [Wed, 13 Jun 2012 21:48:00 +0000 (21:48 +0000)]
* cpplib.pot: Regenerate.

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

12 years agogcc/ChangeLog:
aoliva [Wed, 13 Jun 2012 21:43:51 +0000 (21:43 +0000)]
gcc/ChangeLog:
PR debug/49888
* var-tracking.c: Include alias.h.
(overlapping_mems): New struct.
(drop_overlapping_mem_locs): New.
(clobber_overlapping_mems): New.
(var_mem_delete_and_set, var_mem_delete): Call it.
(val_bind): Likewise, but only if modified.
(compute_bb_dataflow, emit_notes_in_bb): Call it on MEMs.
* Makefile.in (var-tracking.o): Depend in $(ALIAS_H).
gcc/testsuite/ChangeLog:
PR debug/49888
* gcc.dg/guality/pr49888.c: New.

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

12 years agoPR debug/47624
aoliva [Wed, 13 Jun 2012 21:43:19 +0000 (21:43 +0000)]
PR debug/47624
* var-tracking.c (loc_exp_dep_pool): New.
(vt_emit_notes): Create and release the pool.
(compute_bb_dataflow): Use value-based locations in MO_VAL_SET.
(emit_notes_in_bb): Likewise.
(loc_exp_dep_insert): Deal with NOT_ONEPART vars.
(notify_dependents_of_changed_value): Likewise.
(notify_dependents_of_resolved_value): Check that NOT_ONEPART
variables don't have a VAR_LOC_DEP_LST.
(emit_note_insn_var_location): Expand NOT_ONEPART locs that are
VALUEs or MEMs of VALUEs.

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

12 years ago * sr.po: New.
jsm28 [Wed, 13 Jun 2012 21:39:19 +0000 (21:39 +0000)]
* sr.po: New.

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

12 years agoPR debug/52983
aoliva [Wed, 13 Jun 2012 20:41:55 +0000 (20:41 +0000)]
PR debug/52983
PR debug/48866
* dce.c (word_dce_process_block): Insert debug temps only if the
insn is not marked.
(dce_process_block): Likewise, and if debug.used is not empty,
and only after iterating over all DEFs that might mark the insn.

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

12 years agogcc/ChangeLog:
aoliva [Wed, 13 Jun 2012 20:41:41 +0000 (20:41 +0000)]
gcc/ChangeLog:
* common.opt (ftree-coalesce-inlined-vars): New.
(ftree-coalesce-vars): New.
* doc/invoke.texi: Document them.
* tree-ssa-copyrename.c (copy_rename_partition_coalesce):
Implement them.
gcc/testsuite/ChangeLog:
* g++.dg/tree-ssa/ivopts-2.C: Adjust for coalescing.
* gcc.dg/tree-ssa/forwprop-11.c: Likewise.
* gcc.dg/tree-ssa/ssa-fre-1.c: Likewise.

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

12 years agogcc/
rsandifo [Wed, 13 Jun 2012 19:38:11 +0000 (19:38 +0000)]
gcc/
* read-rtl.c (mapping): Remove index field.  Add current_value field.
Define heap vectors.
(iterator_group): Fix long line.  Remove num_builtins field and
uses_iterator fields.  Make apply_iterator take a void * parameter.
(iterator_use, atttribute_use): New structures.
(iterator_traverse_data, BELLWETHER_CODE, bellwether_codes): Delete.
(current_iterators, iterator_uses, attribute_uses): New variables.
(uses_mode_iterator_p, uses_code_iterator_p): Delete.
(apply_mode_iterator, apply_code_iterator): Take a void * parameter.
(map_attr_string, apply_iterator_to_string): Remove iterator
and value parameters.  Look through all current iterator values
for a matching attribute.
(mode_attr_index, apply_mode_maps): Delete.
(apply_iterator_to_rtx): Replace with...
(copy_rtx_for_iterators): ...this new function.
(uses_iterator_p, apply_iterator_traverse): Delete.
(apply_attribute_uses, add_current_iterators, apply_iterators): New
functions.
(add_mapping): Remove index field.  Set current_value field.
(initialize_iterators): Don't set num_builtins and uses_iterator_p
fields.
(find_iterator): Delete.
(record_iterator_use, record_attribute_use): New functions.
(record_potential_iterator_use): New function.
(check_code_iterator): Remove handling of bellwether codes.
(read_rtx): Remove mode maps.  Truncate iterator and attribute uses.
(read_rtx_code, read_nested_rtx, read_rtx_variadic): Remove mode_maps
parameter.  Use the first code iterator value instead of the
bellwether_codes array.  Use record_potential_iterator_use
for modes.

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

12 years ago PR target/53568
olegendo [Wed, 13 Jun 2012 18:45:17 +0000 (18:45 +0000)]
PR target/53568
* config/sh/sh.md (bswapsi2): New expander.
(swapbsi2): New insn.

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

12 years agoSet cache values from -mtune
hjl [Wed, 13 Jun 2012 17:46:59 +0000 (17:46 +0000)]
Set cache values from -mtune

PR target/53647
* config/i386/i386.c (ix86_tune_cost): New variable.
(ix86_option_override_internal): Set ix86_tune_cost.  Use
ix86_tune_cost for simultaneous_prefetches, prefetch_block,
l1_cache_size and l2_cache_size.

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

12 years ago * ChangeLog: Fix whitespace.
uros [Wed, 13 Jun 2012 15:59:15 +0000 (15:59 +0000)]
* ChangeLog: Fix whitespace.

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

12 years ago * config/ia64/sfp-machine.h (__sfp_handle_exceptions): New
uros [Wed, 13 Jun 2012 15:56:55 +0000 (15:56 +0000)]
* config/ia64/sfp-machine.h (__sfp_handle_exceptions): New
function declaration.
(FP_HANDLE_EXCEPTIONS): Use __sfp_handle_exceptions.
(FP_RND_MASK): New.
* config/ia64/sfp-exceptions.c: New.
* config/ia64/t-softfp (LIB2ADD): Add sfp-exceptions.c.

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

12 years ago * config/i386/32/sfp-machine.h (_FP_NANSIGN_S, _FP_NANSIGN_D,
uros [Wed, 13 Jun 2012 15:23:12 +0000 (15:23 +0000)]
* config/i386/32/sfp-machine.h (_FP_NANSIGN_S, _FP_NANSIGN_D,
_FP_NANSIGN_E, _FP_NANSIGN_Q): Move ...
* config/i386/64/sfp-machine: ... (delete here) ...
* config/i386/sfp-machine.h: ... to here.
(FP_EX_MASK): Remove.
(FP_RND_MASK): New.
(FP_INIT_ROUNDMODE): Declare asm as volatile.

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

12 years ago2012-06-13 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 13 Jun 2012 15:12:02 +0000 (15:12 +0000)]
2012-06-13  Richard Guenther  <rguenther@suse.de>

* tree-vrp.c (vrp_meet): Properly meet equivalent ranges.
Handle meeting two VR_RANGE to an VR_ANTI_RANGE.  Implement
all possible meetings of VR_RANGE with VR_ANTI_RANGE and
VR_ANTI_RANGE with VR_ANTI_RANGE.

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

12 years ago Revert
ebotcazou [Wed, 13 Jun 2012 13:30:29 +0000 (13:30 +0000)]
Revert
2012-05-19  Eric Botcazou  <ebotcazou@adacore.com>

* gcc-interface/decl.c (Has_Thiscall_Convention): New macro.
(gnat_to_gnu_entity) <E_Subprogram_Type>: Test it to set the thiscall
calling convention
(get_minimal_subprog_decl): Likewise.
(gnat_first_param_is_class): New predicate.

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

12 years ago * config.gcc (unsupported): Move obsoleted FPA-based configurations
rearnsha [Wed, 13 Jun 2012 12:45:27 +0000 (12:45 +0000)]
* config.gcc (unsupported): Move obsoleted FPA-based configurations
here from ...
(obsolete): ... here.
(arm*-*-freebsd*): Remove.
(arm*-*-linux*): Only accept EABI variants.  Simplify logic.
(arm*-*-uclinux*): Likewise.
(arm*-*-ecos-elf): Remove.
(arm*-*-rtems*): Remove.
(arm*-*-elf): Remove.
(arm*-wince-pe*): Remove.
(arm, --with-fpu): Remove support for fpa and Maverick variants.
* arm/ecos-elf.h: Delete.
* arm/t-strongarm-elf: Delete.
* arm/rtems-elf.h: Delete.
* arm/wince-pe.h: Delete.
* arm/pe.c: Delete.
* arm/pe.h: Delete.
* arm/t-wince-pe: Delete.

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

12 years ago2012-06-13 Bill Schmidt <wschmidt@linux.ibm.com>
wschmidt [Wed, 13 Jun 2012 12:33:55 +0000 (12:33 +0000)]
2012-06-13  Bill Schmidt  <wschmidt@linux.ibm.com>

PR tree-optimization/53647
* tree-ssa-phiopt.c (gate_hoist_loads): Skip transformation for
targets with no defined cache line size.

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

12 years ago2012-06-13 Bill Schmidt <wschmidt@linux.ibm.com>
wschmidt [Wed, 13 Jun 2012 12:27:57 +0000 (12:27 +0000)]
2012-06-13  Bill Schmidt  <wschmidt@linux.ibm.com>

* targhooks.c (default_builtin_vectorized_conversion): Handle
vec_construct, using vectype to base cost on subparts.
* target.h (enum vect_cost_for_stmt): Add vec_construct.
* tree-vect-stmts.c (vect_model_load_cost): Use vec_construct
instead of scalar_to-vec.
* config/spu/spu.c (spu_builtin_vectorization_cost): Handle
vec_construct in same way as default for now.
* config/i386/i386.c (ix86_builtin_vectorization_cost): Likewise.
* config/rs6000/rs6000.c (rs6000_builtin_vectorization_cost):
Handle vec_construct, including special case for 32-bit loads.

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

12 years ago2012-06-13 Tobias Burnus <burnus@net-b.de>
burnus [Wed, 13 Jun 2012 11:57:45 +0000 (11:57 +0000)]
2012-06-13  Tobias Burnus  <burnus@net-b.de>

        PR fortran/53643
        * trans-decl.c (init_intent_out_dt): Fix for polymorphic arrays.
        * trans-array.c (structure_alloc_comps): Don't loop for
        scalar coarrays.

2012-06-13  Tobias Burnus  <burnus@net-b.de>

        PR fortran/53643
        * gfortran.dg/intent_out_7.f90: New.

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

12 years ago2012-06-13 Tobias Burnus <burnus@net-b.de>
burnus [Wed, 13 Jun 2012 11:56:08 +0000 (11:56 +0000)]
2012-06-13  Tobias Burnus  <burnus@net-b.de>

        PR fortran/53597
        * decl.c (match_attr_spec): Only mark module variables
        as SAVE_IMPLICIT for Fortran 2008 and later.

2012-06-13  Tobias Burnus  <burnus@net-b.de>

        PR fortran/53597
        * gfortran.dg/save_4.f90: New.

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

12 years ago * ChangeLog: Fix whitespace.
uros [Wed, 13 Jun 2012 10:43:26 +0000 (10:43 +0000)]
* ChangeLog: Fix whitespace.

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

12 years ago * ChangeLog: Fix whitespace.
uros [Wed, 13 Jun 2012 10:39:27 +0000 (10:39 +0000)]
* ChangeLog: Fix whitespace.

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

12 years ago * config/arm/arm.c (FL_IWMMXT2): New define.
nickc [Wed, 13 Jun 2012 07:28:51 +0000 (07:28 +0000)]
* config/arm/arm.c (FL_IWMMXT2): New define.
(arm_arch_iwmmxt2): New variable.
(arm_option_override): Enable use of iWMMXt with VFP.
Disable use of iWMMXt with NEON. Disable use of iWMMXt under
Thumb mode. Set arm_arch_iwmmxt2.
(arm_expand_binop_builtin): Accept VOIDmode op.
(enum arm_builtins): Revise built-in fcode.
(IWMMXT2_BUILTIN): New define.
(IWMMXT2_BUILTIN2): Likewise.
(iwmmx2_mbuiltin): Likewise.
(builtin_description bdesc_2arg): Revise built in declaration.
(builtin_description bdesc_1arg): Likewise.
(arm_init_iwmmxt_builtins): Revise built in initialization.
(arm_expand_builtin): Revise built in expansion.
(arm_output_iwmmxt_shift_immediate): New function.
(arm_output_iwmmxt_tinsr): Likewise.
* config/arm/arm-protos.h (arm_output_iwmmxt_shift_immediate): Declare.
(arm_output_iwmmxt_tinsr): Likewise.
* config/arm/iwmmxt.md (WCGR0, WCGR1, WCGR2, WCGR3): New constant.
(iwmmxt_psadbw, iwmmxt_walign, iwmmxt_tmrc, iwmmxt_tmcr): Delete.
(rorv4hi3, rorv2si3, rordi3): Likewise.
(rorv4hi3_di, rorv2si3_di, rordi3_di): Likewise.
(ashrv4hi3_di, ashrv2si3_di, ashrdi3_di): Likewise.
(lshrv4hi3_di, lshrv2si3_di, lshrdi3_di): Likewise.
(ashlv4hi3_di, ashlv2si3_di, ashldi3_di): Likewise.
(iwmmxt_tbcstqi, iwmmxt_tbcsthi, iwmmxt_tbcstsi): Likewise
(*iwmmxt_clrv8qi, *iwmmxt_clrv4hi, *iwmmxt_clrv2si): Likewise.
(tbcstv8qi, tbcstv4hi, tbsctv2si): New pattern.
(iwmmxt_clrv8qi, iwmmxt_clrv4hi, iwmmxt_clrv2si): Likewise.
(*and<mode>3_iwmmxt, *ior<mode>3_iwmmxt, *xor<mode>3_iwmmxt): Likewise.
(ror<mode>3, ror<mode>3_di): Likewise.
(ashr<mode>3_di, lshr<mode>3_di, ashl<mode>3_di): Likewise.
(ashli<mode>3_iwmmxt, iwmmxt_waligni, iwmmxt_walignr): Likewise.
(iwmmxt_walignr0, iwmmxt_walignr1): Likewise.
(iwmmxt_walignr2, iwmmxt_walignr3): Likewise.
(iwmmxt_setwcgr0, iwmmxt_setwcgr1): Likewise.
(iwmmxt_setwcgr2, iwmmxt_setwcgr3): Likewise.
(iwmmxt_getwcgr0, iwmmxt_getwcgr1): Likewise.
(iwmmxt_getwcgr2, iwmmxt_getwcgr3): Likewise.
(All instruction patterns): Add wtype attribute.
(*iwmmxt_arm_movdi, *iwmmxt_movsi_insn): iWMMXt coexist with vfp.
(iwmmxt_uavgrndv8qi3, iwmmxt_uavgrndv4hi3): Revise the pattern.
(iwmmxt_uavgv8qi3, iwmmxt_uavgv4hi3): Likewise.
(ashr<mode>3_iwmmxt, ashl<mode>3_iwmmxt, lshr<mode>3_iwmmxt): Likewise.
(iwmmxt_tinsrb, iwmmxt_tinsrh, iwmmxt_tinsrw):Likewise.
(eqv8qi3, eqv4hi3, eqv2si3, gtuv8qi3): Likewise.
(gtuv4hi3, gtuv2si3, gtv8qi3, gtv4hi3, gtv2si3): Likewise.
(iwmmxt_wunpckihh, iwmmxt_wunpckihw, iwmmxt_wunpckilh): Likewise.
(iwmmxt_wunpckilw, iwmmxt_wunpckehub, iwmmxt_wunpckehuh): Likewise.
(iwmmxt_wunpckehuw, iwmmxt_wunpckehsb, iwmmxt_wunpckehsh): Likewise.
(iwmmxt_wunpckehsw, iwmmxt_wunpckelub, iwmmxt_wunpckeluh): Likewise.
(iwmmxt_wunpckeluw, iwmmxt_wunpckelsb, iwmmxt_wunpckelsh): Likewise.
(iwmmxt_wunpckelsw, iwmmxt_wmadds, iwmmxt_wmaddu): Likewise.
(iwmmxt_wsadb, iwmmxt_wsadh, iwmmxt_wsadbz, iwmmxt_wsadhz): Likewise.
(iwmmxt2.md): Include.
* config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Define __IWMMXT2__.
(TARGET_IWMMXT2): New define.
(TARGET_REALLY_IWMMXT2): Likewise.
(arm_arch_iwmmxt2): Declare.
* config/arm/mmintrin.h: Use __IWMMXT__ to enable iWMMXt intrinsics.
Use __IWMMXT2__ to enable iWMMXt2 intrinsics.
Use C name-mangling for intrinsics.
(__v8qi): Redefine.
(_mm_cvtsi32_si64, _mm_andnot_si64, _mm_sad_pu8): Revise.
(_mm_sad_pu16, _mm_align_si64, _mm_setwcx, _mm_getwcx): Likewise.
(_m_from_int): Likewise.
(_mm_sada_pu8, _mm_sada_pu16): New intrinsic.
(_mm_alignr0_si64, _mm_alignr1_si64, _mm_alignr2_si64): Likewise.
(_mm_alignr3_si64, _mm_tandcb, _mm_tandch, _mm_tandcw): Likewise.
(_mm_textrcb, _mm_textrch, _mm_textrcw, _mm_torcb): Likewise.
(_mm_torch, _mm_torcw, _mm_tbcst_pi8, _mm_tbcst_pi16): Likewise.
(_mm_tbcst_pi32): Likewise.
(_mm_abs_pi8, _mm_abs_pi16, _mm_abs_pi32): New iWMMXt2 intrinsic.
(_mm_addsubhx_pi16, _mm_absdiff_pu8, _mm_absdiff_pu16): Likewise.
(_mm_absdiff_pu32, _mm_addc_pu16, _mm_addc_pu32): Likewise.
(_mm_avg4_pu8, _mm_avg4r_pu8, _mm_maddx_pi16, _mm_maddx_pu16): Likewise.
(_mm_msub_pi16, _mm_msub_pu16, _mm_mulhi_pi32): Likewise.
(_mm_mulhi_pu32, _mm_mulhir_pi16, _mm_mulhir_pi32): Likewise.
(_mm_mulhir_pu16, _mm_mulhir_pu32, _mm_mullo_pi32): Likewise.
(_mm_qmulm_pi16, _mm_qmulm_pi32, _mm_qmulmr_pi16): Likewise.
(_mm_qmulmr_pi32, _mm_subaddhx_pi16, _mm_addbhusl_pu8): Likewise.
(_mm_addbhusm_pu8, _mm_qmiabb_pi32, _mm_qmiabbn_pi32): Likewise.
(_mm_qmiabt_pi32, _mm_qmiabtn_pi32, _mm_qmiatb_pi32): Likewise.
(_mm_qmiatbn_pi32, _mm_qmiatt_pi32, _mm_qmiattn_pi32): Likewise.
(_mm_wmiabb_si64, _mm_wmiabbn_si64, _mm_wmiabt_si64): Likewise.
(_mm_wmiabtn_si64, _mm_wmiatb_si64, _mm_wmiatbn_si64): Likewise.
(_mm_wmiatt_si64, _mm_wmiattn_si64, _mm_wmiawbb_si64): Likewise.
(_mm_wmiawbbn_si64, _mm_wmiawbt_si64, _mm_wmiawbtn_si64): Likewise.
(_mm_wmiawtb_si64, _mm_wmiawtbn_si64, _mm_wmiawtt_si64): Likewise.
(_mm_wmiawttn_si64, _mm_merge_si64): Likewise.
(_mm_torvscb, _mm_torvsch, _mm_torvscw): Likewise.
(_m_to_int): New define.
* config/arm/arm-cores.def (iwmmxt2): Add FL_IWMMXT2.
* config/arm/arm-arches.def (iwmmxt2): Likewise.
* config/arm/t-arm (MD_INCLUDES): Add marvell-f-iwmmxt.md and
iwmmxt2.md.
* config/arm/arm.md (marvell-f-iwmmxt.md): Include.
(arch): Add "iwmmxt2".
(arch_enabled): Handle "iwmmxt2".
(wtype): New attribute.
(UNSPEC_WMADDS, UNSPEC_WMADDU): Delete.
(UNSPEC_WALIGNI): New unspec.
* config/arm/predicates.md (imm_or_reg_operand): New predicate.
* config/arm/iterators.md (VMMX2): New mode_iterator.
* config/arm/marvell-f-iwmmxt.md: New file.
* config/arm/iwmmxt2.md: New file.

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

12 years agoos/user: Use Entersyscall.
ian [Wed, 13 Jun 2012 05:56:09 +0000 (05:56 +0000)]
os/user: Use Entersyscall.

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

12 years agoos: Use Entersyscall when reading directories.
ian [Wed, 13 Jun 2012 04:47:25 +0000 (04:47 +0000)]
os: Use Entersyscall when reading directories.

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

12 years agoDaily bump.
gccadmin [Wed, 13 Jun 2012 00:18:01 +0000 (00:18 +0000)]
Daily bump.

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

12 years ago2012-06-12 Rafael Ávila de Espíndola <respindola@mozilla.com>
espindola [Tue, 12 Jun 2012 21:35:42 +0000 (21:35 +0000)]
2012-06-12  Rafael Ávila de Espíndola <respindola@mozilla.com>

* plugin-api.h (ld_plugin_output_file_type): Add LDPO_PIE.

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

12 years ago PR c/53532
jakub [Tue, 12 Jun 2012 21:16:20 +0000 (21:16 +0000)]
PR c/53532
PR c/51034
PR c/53196
* c-decl.c (build_compound_literal): Call c_incomplete_type_error
if type isn't complete.

* gcc.dg/pr53532.c: New test.
* gcc.dg/c99-complit-2.c: Add two new dg-error directives,
adjust line numbers.
* gcc.dg/noncompile/950825-1.c: Expect incomplete type error message.
* gcc.dg/Wcxx-compat-8.c: Likewise.
* gcc.dg/pr51034.c: New test.
* gcc.dg/pr53196-1.c: New test.
* gcc.dg/pr53196-2.c: New test.

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

12 years agocompiler, reflect: Handle package path like gc compiler.
ian [Tue, 12 Jun 2012 20:33:22 +0000 (20:33 +0000)]
compiler, reflect: Handle package path like gc compiler.

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

12 years ago * gcc.dg/torture/stackalign/stackalign.exp: Combine stack
janis [Tue, 12 Jun 2012 20:27:49 +0000 (20:27 +0000)]
* gcc.dg/torture/stackalign/stackalign.exp: Combine stack
alignment torture options with usual torture options.
* gcc.dg/torture/stackalign/alloca-2.c: Use dg-additional-options
instead of dg-options.
* gcc.dg/torture/stackalign/alloca-3.c: Likewise.
* gcc.dg/torture/stackalign/alloca-4.c: Likewise.
* gcc.dg/torture/stackalign/alloca-5.c: Likewise.
* gcc.dg/torture/stackalign/alloca-6.c: Likewise.
* gcc.dg/torture/stackalign/push-1.c: Likewise.
* gcc.dg/torture/stackalign/vararg-3.c: Likewise.

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

12 years ago * gcc.target/arm/di-longlong64-sync-withhelpers.c: Add comments
janis [Tue, 12 Jun 2012 20:27:13 +0000 (20:27 +0000)]
* gcc.target/arm/di-longlong64-sync-withhelpers.c: Add comments
to checks for multiple messages reported for one line of source code.
* gcc.target/arm/di-longlong64-sync-withldrexd.c: Likewise.

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

12 years ago * gcc.c-torture/compile/sync-1.c: Add comments to checks for multiple
janis [Tue, 12 Jun 2012 20:25:48 +0000 (20:25 +0000)]
* gcc.c-torture/compile/sync-1.c: Add comments to checks for multiple
messages reported for one line of source code.

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

12 years ago * gcc.dg/20031223-1.c: Add comments to check for multiple
janis [Tue, 12 Jun 2012 20:25:16 +0000 (20:25 +0000)]
* gcc.dg/20031223-1.c: Add comments to check for multiple
messages reported for one line of source code.
* gcc.dg/Wconversion-integer.c: Likewise.
* gcc.dg/Wfatal-2.c: Likewise.
* gcc.dg/Wfatal.c: Likewise.
* gcc.dg/Wobjsize-1.c: Likewise.
* gcc.dg/c99-vla-jump-1.c: Likewise.
* gcc.dg/c99-vla-jump-2.c: Likewise.
* gcc.dg/c99-vla-jump-3.c: Likewise.
* gcc.dg/c99-vla-jump-4.c: Likewise.
* gcc.dg/c99-vla-jump-5.c: Likewise.
* gcc.dg/decl-9.c: Likewise.
* gcc.dg/declspec-10.c: Likewise.
* gcc.dg/declspec-18.c: Likewise.
* gcc.dg/mtune.c: Likewise.
* gcc.dg/parser-pr28152-2.c: Likewise.
* gcc.dg/parser-pr28152.c: Likewise.
* gcc.dg/pr14475.c: Likewise.
* gcc.dg/pr27953.c: Likewise.
* gcc.dg/pr28322-3.c: Likewise.
* gcc.dg/pr30457.c: Likewise.
* gcc.dg/pr30551-2.c: Likewise.
* gcc.dg/pr30551-3.c: Likewise.
* gcc.dg/pr30551-4.c: Likewise.
* gcc.dg/pr30551-5.c: Likewise.
* gcc.dg/pr30551-6.c: Likewise.
* gcc.dg/pr30551.c: Likewise.
* gcc.dg/pr45461.c: Likewise.
* gcc.dg/pr48552-1.c: Likewise.
* gcc.dg/pr48552-2.c: Likewise.
* gcc.dg/redecl-1.c: Likewise.
* gcc.dg/transparent-union-3.c: Likewise.
* gcc.dg/utf-dflt.c: Likewise.
* gcc.dg/utf-dflt2.c: Likewise.
* gcc.dg/vla-8.c: Likewise.
* gcc.dg/vla-init-1.c: Likewise.
* gcc.dg/wtr-int-type-1.c: Likewise.

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

12 years ago * c-c++-common/raw-string-3.c: Add comments to checks for multiple
janis [Tue, 12 Jun 2012 20:24:28 +0000 (20:24 +0000)]
* c-c++-common/raw-string-3.c: Add comments to checks for multiple
messages reported for for one line of source code.
* c-c++-common/raw-string-5.c: Likewise.
* c-c++-common/raw-string-4.c: Likewise.
* c-c++-common/raw-string-6.c: Likewise.
* c-c++-common/pr20000.c: Likewise.

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

12 years ago * gcc.dg/cpp/include2a.c: Add comments to checks for multiple
janis [Tue, 12 Jun 2012 20:23:36 +0000 (20:23 +0000)]
* gcc.dg/cpp/include2a.c: Add comments to checks for multiple
messages reported for one line of source code.
* gcc.dg/cpp/pr30786.c: Likewise.
* gcc.dg/cpp/pr28709.c: Likewise.
* gcc.dg/cpp/missing-header-MD.c: Likewise.
* gcc.dg/cpp/macspace2.c: Likewise.
* gcc.dg/cpp/missing-header-1.c: Likewise.
* gcc.dg/cpp/missing-header-MMD.c: Likewise.
* gcc.dg/cpp/missing-sysheader-MD.c: Likewise.
* gcc.dg/cpp/missing-sysheader-MMD.c: Likewise.

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

12 years ago * config/ia64/sync.md (fetchop_name): Change ior attribute to "or".
uros [Tue, 12 Jun 2012 19:02:09 +0000 (19:02 +0000)]
* config/ia64/sync.md (fetchop_name): Change ior attribute to "or".

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

12 years ago * pt.c (tsubst_expr) [TAG_DEFN]: Instantiate local class.
jason [Tue, 12 Jun 2012 18:32:13 +0000 (18:32 +0000)]
* pt.c (tsubst_expr) [TAG_DEFN]: Instantiate local class.
* class.c (finish_struct): Don't add a TAG_DEFN for a lambda.
* decl2.c (finish_static_data_member_decl): Avoid redundant error.

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

12 years ago PR c++/53599
jason [Tue, 12 Jun 2012 18:32:04 +0000 (18:32 +0000)]
PR c++/53599
* name-lookup.c (pushtag_1): Add a DECL_EXPR for a local class.
* semantics.c (finish_cond): Build a COMPOUND_EXPR.
* pt.c (tsubst_expr) [COMPOUND_EXPR]: Handle.
[DECL_EXPR]: Don't call cp_finish_decl for an implicit typedef.
Don't return the decl.

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

12 years agoutf8
jason [Tue, 12 Jun 2012 18:31:54 +0000 (18:31 +0000)]
utf8

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

12 years ago PR target/53511
olegendo [Tue, 12 Jun 2012 18:25:40 +0000 (18:25 +0000)]
PR target/53511
* gcc.target/sh/pr51340-1.c: Delete obsolete test case.
* gcc.target/sh/pr51340-2.c: Likewise.
* gcc.target/sh/pr51340-3.c: Likewise.

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

12 years ago * config/rs6000/sync.md (atomic_load, atomic_store): Use INT1 mode
rth [Tue, 12 Jun 2012 15:38:21 +0000 (15:38 +0000)]
    * config/rs6000/sync.md (atomic_load, atomic_store): Use INT1 mode
        iterator instead of INT.

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

12 years agoMove Ada specific ChangeLog entry to Ada specific ChangeLog file.
hainque [Tue, 12 Jun 2012 15:09:11 +0000 (15:09 +0000)]
Move Ada specific ChangeLog entry to Ada specific ChangeLog file.

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

12 years ago2012-06-12 Bill Schmidt <wschmidt@linux.ibm.com>
wschmidt [Tue, 12 Jun 2012 13:38:16 +0000 (13:38 +0000)]
2012-06-12  Bill Schmidt  <wschmidt@linux.ibm.com>

* opts.c: Add -fhoist-adjacent-loads to -O2 and above.
* tree-ssa-phiopt.c (tree_ssa_phiopt_worker): Add argument to forward
declaration.
(hoist_adjacent_loads, gate_hoist_loads): New forward declarations.
(tree_ssa_phiopt): Call gate_hoist_loads.
(tree_ssa_cs_elim): Add parm to tree_ssa_phiopt_worker call.
(tree_ssa_phiopt_worker): Add do_hoist_loads to formal arg list; call
hoist_adjacent_loads.
(local_mem_dependence): New function.
(hoist_adjacent_loads): Likewise.
(gate_hoist_loads): Likewise.
* common.opt (fhoist-adjacent-loads): New switch.
* Makefile.in (tree-ssa-phiopt.o): Added dependencies.

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

12 years ago2012-06-12 Robert Dewar <dewar@adacore.com>
charlet [Tue, 12 Jun 2012 13:16:38 +0000 (13:16 +0000)]
2012-06-12  Robert Dewar  <dewar@adacore.com>

        * gcc-interface/Make-lang.in: Update dependencies.
* sem_ch9.ads, einfo.adb, einfo.ads, sem_prag.adb, freeze.adb,
sem_util.adb, sem_ch13.adb, sem_ch13.ads, exp_ch3.adb: Add comments.
Minor reformatting.

2012-06-12  Ed Schonberg  <schonberg@adacore.com>

* sem_ch12.adb (Instantiate_Formal_Subprogram): Remove code that
implements AI05-0296, because the actual may be overloaded.
* sem_ch8.adb (Analyze_Subprogram_Renaming): and move it here,
to be applied once the actual subprogram is properly resolved.

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

12 years ago2012-06-12 Robert Dewar <dewar@adacore.com>
charlet [Tue, 12 Jun 2012 13:01:22 +0000 (13:01 +0000)]
2012-06-12  Robert Dewar  <dewar@adacore.com>

* switch-c.adb, a-exexpr-gcc.adb: Minor reformatting.

2012-06-12  Vincent Pucci  <pucci@adacore.com>

* checks.adb (Tag_Checks_Suppressed): Remove Kill_Tag_Checks check.
* einfo.adb (Universal_Aliasing): Apply to the implementation
base type instead of the base type.
(Get_Rep_Item_For_Entity):
Return a pragma if the pragma node is not present in the Rep
Item chain of the parent.
(Kill_Tag_Checks): Removed (unused flag).
(Set_Kill_Tag_Checks): Removed.
(Get_First_Rep_Item): New routine.
(Get_Rep_Pragma_For_Entity): New routine.
(Has_Rep_Item): New routine.
(Has_Rep_Pragma_For_Entity): New routine.
(Present_In_Rep_Item): New routine.
* einfo.ads (Kill_Tag_Checks): Removed.
(Set_Kill_Tag_Checks): Removed.
(Get_First_Rep_Item): New routine.
(Get_Rep_Pragma_For_Entity): New routine.
(Has_Rep_Item): New routine.
(Has_Rep_Pragma_For_Entity): New routine.
(Present_In_Rep_Item): New routine.
* exp_attr.adb, sem_attr.adb: Attribute_CPU,
Attribute_Dispatching_Domain and Attribute_Interrupt_Priority
case added.
* exp_ch13.adb (Expand_N_Attribute_Definition_Clause): For
attribute Storage_Size, insert the new assignement statement
after the Size variable declaration.
* exp_ch3.adb (Build_Init_Statements): Fill the CPU,
Dispatching_Domain, Priority and Size components with the Rep
Item expression (if any).
* exp_ch9.adb (Expand_N_Task_Type_Declaration): _CPU,
_Priority, _Domain fields are always present in the
corresponding record type.
(Find_Task_Or_Protected_Pragma): Removed.
(Get_Relative_Deadline_Pragma): New routine.
(Make_Initialize_Protection): Find_Task_Or_Protected_Pragma removed.
(Make_Task_Create_Call): Check CPU, Size or
Dispatching_Domain Rep Item is present using new routine Has_Rep_Item.
* freeze.adb (Freeze_All): Push_Scope_And_Install_Discriminants
and Uninstall_Discriminants_And_Pop_Scope calls added.
(Freeze_Entity): Evaluate_Aspects_At_Freeze_Point call added.
* sem_aux.adb (Nearest_Ancestor): Retrieve the nearest ancestor
for private derived types.
* sem_ch13.adb (Analyze_Aspect_Specifications): Clean-up
and reordering. Delay analysis for all aspects (except some
peculiar cases).
(Analyze_Attribute_Definition_Clause):
Attribute_CPU, Attribute_Dispatching_Domain,
Interrupt_Priority and Attribute_Priority cases added.
(Analyze_Freeze_Entity): Push_Scope_And_Install_Discriminants
and Uninstall_Discriminants_And_Pop_Scope calls added.
(Check_Aspect_At_Freeze_Point): Reordering and clean-up.
(Duplicate_Clause): Issue an explicit error msg when the current
clause duplicates an aspect specification, an attribute definition
clause or a pragma.
(Evaluate_Aspects_At_Freeze_Point): New routine.
* sem_ch13.ads (Evaluate_Aspects_At_Freeze_Point): New routine.
* sem_ch9.adb, sem_ch9.ads (Install_Discriminants): New routine.
(Push_Scope_And_Install_Discriminants): New routine.
(Uninstall_Discriminants): New routine.
(Uninstall_Discriminants_And_Pop_Scope): New routine.
* sem_prag.adb (Check_Duplicate_Pragma): Issue an explicit error
msg when the current pragma duplicates an aspect specification,
an attribute definition clause or a pragma.
(Analyze_Pragma): Remove use of flags Has_Pragma_CPU,
Has_Pragma_Priority and Has_Pragma_Dispatching_Domain.
* sem_util.adb (Compile_Time_Constraint_Error): Don't complain
about the type if the corresponding concurrent type doesn't come
from source.
* sinfo.adb, sinfo.ads (Has_Pragma_CPU): Removed.
(Has_Pragma_Dispatching_Domain): Removed.
(Has_Pragma_Priority): Removed.
(Has_Task_Info_Pragma): Removed.
(Has_Task_Name_Pragma): Removed.
(Set_Has_Pragma_CPU): Removed.
(Set_Has_Pragma_Dispatching_Domain): Removed.
(Set_Has_Pragma_Priority): Removed.
(Set_Has_Task_Info_Pragma): Removed.
(Set_Has_Task_Name_Pragma): Removed.
* snames.adb-tmpl (Get_Pragma_Id): Pragma_CPU,
Pragma_Dispatching_Domain and Pragma_Interrupt_Priority added.
(Is_Pragma_Name): Name_CPU, Name_Dispatching_Domain and
Name_Interrupt_Priority added.
* snames.ads-tmpl: Name_Dispatching_Domain, Name_CPU
and Name_Interrupt_Priority moved to the list of
Attribute_Name. Attribute_CPU, Attribute_Dispatching_Domain and
Attribute_Interrupt_Priority added.  Pragma_Dispatching_Domain,
Pragma_CPU and Pragma_Interrupt_Priority moved to the end of
the Pragma_Name list.

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

12 years ago2012-06-12 Arnaud Charlet <charlet@adacore.com>
charlet [Tue, 12 Jun 2012 12:32:29 +0000 (12:32 +0000)]
2012-06-12  Arnaud Charlet  <charlet@adacore.com>

* xref_lib.adb (Get_Full_Type): Add support for 'G'.

2012-06-12  Tristan Gingold  <gingold@adacore.com>

* a-exexpr-gcc.adb (Unwind_Exception): Add 4 more private fields.

2012-06-12  Fedor Rybin  <frybin@adacore.com>

* gnat_ugn.texi: Update doc on gnattest.

2012-06-12  Robert Dewar  <dewar@adacore.com>

* sem_ch12.adb: Add comments.

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

12 years ago2012-06-12 Robert Dewar <dewar@adacore.com>
charlet [Tue, 12 Jun 2012 12:19:14 +0000 (12:19 +0000)]
2012-06-12  Robert Dewar  <dewar@adacore.com>

* switch-c.adb, inline.adb, usage.adb, opt.ads: Minor reformatting.

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

12 years ago2012-06-12 Robert Dewar <dewar@adacore.com>
charlet [Tue, 12 Jun 2012 12:11:50 +0000 (12:11 +0000)]
2012-06-12  Robert Dewar  <dewar@adacore.com>

* sem_ch12.adb: Minor reformatting.

2012-06-12  Eric Botcazou  <ebotcazou@adacore.com>

* opt.ads (Inline_Level): New variable.
* gnat1drv.adb (Adjust_Global_Switches): Set it based on optimization
level if it has not been set by the user.
* switch-c.adb (Scan_Front_End_Switches): Accept -gnatn1 and -gnatn2
and set Inline_Level accordingly.
* inline.adb (Add_Inlined_Body): Declate new Inline_Level_Type type.
(Must_Inline): Return Inline_Level_T instead of Boolean to indicate
whether the package of the inlined subprogram must be compiled.
If Inline_Level is set to 1, only compile packages of subprograms
directly called from the main unit.
* usage.adb (Usage): Adjust line for -gnatn switch.
* gnat_ugn.texi (Switches for gcc): Document -gnatn1 and -gnatn2.

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

12 years ago2012-06-12 Ed Schonberg <schonberg@adacore.com>
charlet [Tue, 12 Jun 2012 12:07:11 +0000 (12:07 +0000)]
2012-06-12  Ed Schonberg  <schonberg@adacore.com>

* sem_ch12.adb (Instantiate_Formal_Subprogram): Do not apply
AI05-296 if the actual is overloaded. In this case The rule must
be applied after resolution, in Analyze_Subprogram_Renaming.

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

12 years ago2012-06-12 Robert Dewar <dewar@adacore.com>
charlet [Tue, 12 Jun 2012 11:59:32 +0000 (11:59 +0000)]
2012-06-12  Robert Dewar  <dewar@adacore.com>

* stringt.adb: Minor reformatting.

2012-06-12  Robert Dewar  <dewar@adacore.com>

* ali-util.adb, stringt.ads: Minor reformatting.

2012-06-12  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch7.adb (Process_Declarations): Handle the case where
the original context has been wrapped in a block to avoid
interference between exception handlers and At_End handlers.
(Wrap_HSS_In_Block): Mark the block which contains the original
statements of the context as being a finalization wrapper.
* sinfo.adb (Is_Finalization_Wrapper): New routine.
(Set_Is_Finalization_Wrapper): New routine.

* sinfo.ads: Add new attribute Is_Finalization_Wrapper applicable
to block statemnts.
(Is_Finalization_Wrapper): New routine with corresponding pragma Inline.
(Set_Is_Finalization_Wrapper): New routine with corresponding pragma
Inline.

2012-06-12  Steve Baird  <baird@adacore.com>

* gnat1drv.adb (Adjust_Global_Switches): No longer need to set
Exception_Extra_Info in CodePeer_Mode.

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

12 years ago * alias.c (nonoverlapping_component_refs_p): Take two rtx arguments.
matz [Tue, 12 Jun 2012 11:52:41 +0000 (11:52 +0000)]
* alias.c (nonoverlapping_component_refs_p): Take two rtx arguments.
(nonoverlapping_memrefs_p): Don't call it here ...
(true_dependence_1): ... but here.

testsuite/
* gcc.dg/torture/alias-1.c: New test.

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

12 years ago2012-06-12 Robert Dewar <dewar@adacore.com>
charlet [Tue, 12 Jun 2012 11:09:10 +0000 (11:09 +0000)]
2012-06-12  Robert Dewar  <dewar@adacore.com>

* sem_dist.adb, exp_ch7.adb, sem_type.adb, exp_attr.adb,
sinfo.ads, sem_ch7.adb, exp_alfa.adb, sem_scil.adb, sem_ch12.adb,
sem_util.adb, sem_res.adb, sem_attr.adb, sem_elab.adb, exp_ch6.adb,
sem_ch4.adb, sem_warn.adb, scil_ll.adb, exp_cg.adb: Minor code
reorganization.

2012-06-12  Eric Botcazou  <ebotcazou@adacore.com>

* s-tasini.ads: Minor fix in comment.

2012-06-12  Thomas Quinot  <quinot@adacore.com>

* freeze.adb (Freeze_Record_Type): Warn on record with
Scalar_Storage_Order if there is no placed component.

2012-06-12  Thomas Quinot  <quinot@adacore.com>

* sem_ch3.adb: Minor comment fix.

2012-06-12  Vincent Celier  <celier@adacore.com>

* ali-util.adb (Time_Stamp_Mismatch): In minimal recompilation
mode, use Stringt Mark and Release to avoid growing the Stringt
internal tables uselessly.
* stringt.adb (Strings_Last): New global variable
(String_Chars_Last): New global variable.
(Mark, Release): New procedures.
* stringt.ads (Mark, Release) New procedures.

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

12 years ago2012-06-12 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Tue, 12 Jun 2012 11:02:08 +0000 (11:02 +0000)]
2012-06-12  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch7.adb (Process_Transient_Objects): Renamed constant
Requires_Hooking to Must_Hook and replace all occurrences of the name.
(Requires_Hooking): New routine. Detect all contexts that require
transient variable export to the outer finalizer due to a potential
exception.

2012-06-12  Eric Botcazou  <ebotcazou@adacore.com>

* einfo.ads: Minor correction in comment.

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

12 years ago2012-06-12 Ed Schonberg <schonberg@adacore.com>
charlet [Tue, 12 Jun 2012 10:36:09 +0000 (10:36 +0000)]
2012-06-12  Ed Schonberg  <schonberg@adacore.com>

* sem_ch12.adb: Small adjustment.

2012-06-12  Vincent Celier  <celier@adacore.com>

* vms_cmds.ads (Command_Type): New enumeration value Test
* vms_conv.adb (Initialize): Add component at index Test in
Command_List
* vms_data.ads (Test_Switches): New global variable for the
switches of gnattest, currently empty.

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

12 years ago2012-06-12 Ed Schonberg <schonberg@adacore.com>
charlet [Tue, 12 Jun 2012 10:34:33 +0000 (10:34 +0000)]
2012-06-12  Ed Schonberg  <schonberg@adacore.com>

* sem_ch3.adb (Analyze_Subtype_Declaration): if an incomplete
type is tagged, so is a subtype of it.
* sem_ch12.adb (Validate_Actual_Subprogram): implement AI05-0296,
concerning freeze rules in the presence of formal incomplete
types: a formal abstract subprogram cannot have an incomplete
controlling type, and the profile of the actual subprogram does
not freeze if it includes an incomplete untagged type.

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

12 years ago2012-06-12 Robert Dewar <dewar@adacore.com>
charlet [Tue, 12 Jun 2012 10:33:06 +0000 (10:33 +0000)]
2012-06-12  Robert Dewar  <dewar@adacore.com>

* a-direct.adb: Minor reformatting.

2012-06-12  Robert Dewar  <dewar@adacore.com>

* gnat_ugn.texi: Add missing documentation for -gnatw.v and
-gnatw.V.

2012-06-12  Thomas Quinot  <quinot@adacore.com>

* sem_ch7.adb, sem_prag.adb, sem_ch12.adb, sem_ch4.adb,
sem_ch13.adb: Minor rewording of error messages for unchecked unions.

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

12 years ago2012-06-12 Robert Dewar <dewar@adacore.com>
charlet [Tue, 12 Jun 2012 10:16:11 +0000 (10:16 +0000)]
2012-06-12  Robert Dewar  <dewar@adacore.com>

* lib-xref.ads: Minor reformatting.

2012-06-12  Pascal Obry  <obry@adacore.com>

* a-direct.adb (Delete_File): Delete symbolic links silently
instead of raising the Name_Error exception when the symbolic
link is pointing to a non existent file.

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

12 years ago2012-06-12 Robert Dewar <dewar@adacore.com>
charlet [Tue, 12 Jun 2012 10:14:44 +0000 (10:14 +0000)]
2012-06-12  Robert Dewar  <dewar@adacore.com>

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

2012-06-12  Javier Miranda  <miranda@adacore.com>

* lib-xref.ads Adding missing documentation.

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

12 years ago2012-06-12 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Tue, 12 Jun 2012 10:12:40 +0000 (10:12 +0000)]
2012-06-12  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch7.adb (Create_Finalizer): Add the
exception reraise mechanism at the very end of the finalizer
statements. This placement ensures that all objects are finalized,
the secondary stack mark released and aborts undeferred before
propagating an exception.

2012-06-12  Ed Schonberg  <schonberg@adacore.com>

* sem_ch10.adb (Remove_Unit_From_Visibility): if the unit is a
wrapper package. remove from visibility the original subprogram
instance.

2012-06-12  Javier Miranda  <miranda@adacore.com>

* sem_prag.adb (Process_Convention): Generate reference to entity
exported to foreign language. Needed for GPS navigation.
* xref_lib.adb (Parse_Identifier_Info): Parse exported entities.
* lib-xref (Output_References): Output exported entities.

2012-06-12  Pascal Obry  <obry@adacore.com>

* prj-attr.adb: Add install package and corresponding attributes.
* snames.ads-tmpl (Name_Active): New constant.
(Name_Exec_Subdir): Likewise.
(Name_Install): Likewise.
(Name_Lib_Subdir): Likewise.
(Name_Project_Subdir): Likewise.
(Name_Sources_Subdir): Likewise.

2012-06-12  Bob Duff  <duff@adacore.com>

* sem_res.adb (Check_Infinite_Recursion):
Suppress spurious warning on recursion after "raise with ...".

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

12 years ago2012-06-12 Thomas Quinot <quinot@adacore.com>
charlet [Tue, 12 Jun 2012 10:07:29 +0000 (10:07 +0000)]
2012-06-12  Thomas Quinot  <quinot@adacore.com>

* sem_prag.adb (Analyze_Pragma, case Unchecked_Union): Do
not crash on illegal unchecked union that is a null record.

2012-06-12  Thomas Quinot  <quinot@adacore.com>

* exp_ch4.adb (Has_Inferable_Discriminants): Reorganize code to
treat implicit dereferences with a constrained unchecked union
nominal subtype as having inferable discriminants.

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

12 years ago2012-06-12 Robert Dewar <dewar@adacore.com>
charlet [Tue, 12 Jun 2012 10:05:20 +0000 (10:05 +0000)]
2012-06-12  Robert Dewar  <dewar@adacore.com>

* sem_ch6.adb: Minor reformatting.

2012-06-12  Eric Botcazou  <ebotcazou@adacore.com>

* gnat_ugn.texi: Couple of minor corrections.

2012-06-12  Thomas Quinot  <quinot@adacore.com>

* sem_prag.adb (Check_Variant): An empty component list is not
illegal in an unchecked union variant.

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

12 years ago2012-06-12 Gary Dismukes <dismukes@adacore.com>
charlet [Tue, 12 Jun 2012 10:03:26 +0000 (10:03 +0000)]
2012-06-12  Gary Dismukes  <dismukes@adacore.com>

* projects.texi: Remove comments.

2012-06-12  Thomas Quinot  <quinot@adacore.com>

* back_end.adb (Scan_Back_End_Switches): Treat -fdump-scos as
synonym of -gnateS.
(gnat_post_options): Disable gimple-based SCO generator.
* gnat_ugn.texi: Document that -gnateS is an obsolete synonym
of -fdump-scos.

2012-06-12  Ed Schonberg  <schonberg@adacore.com>

* sem_ch6.adb (Different_Generic_Profile): new predicate for
Find_Corresponding_Spec, to handle a rare case of accidental
overloading in an instance, when the profile of a subprogram body
that depends on a formal type becomes compatible with that of
a homonym whose profile in the generic mentions the actual type.

2012-06-12  Thomas Quinot  <quinot@adacore.com>

* gnat1drv.adb: Minor reformatting.

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

12 years ago2012-06-12 Ed Schonberg <schonberg@adacore.com>
charlet [Tue, 12 Jun 2012 09:56:58 +0000 (09:56 +0000)]
2012-06-12  Ed Schonberg  <schonberg@adacore.com>

* sem_util.adb (Build_Explicit_Dereference): If the expression
is an entity, ensure that the type of the expression is the same
as that of the entity.

2012-06-12  Pat Rogers  <rogers@adacore.com>

* projects.texi: Corrected instances of the word "build" that
should be "built" instead. Other similar changes and minor
punctuation changes.

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

12 years ago2012-06-12 Eric Botcazou <ebotcazou@adacore.com>
charlet [Tue, 12 Jun 2012 09:01:03 +0000 (09:01 +0000)]
2012-06-12  Eric Botcazou  <ebotcazou@adacore.com>

* sem_util.adb (Is_Atomic_Object): Return true for an atomic
component as well as a prefix which is an atomic component.

2012-06-12  Ed Schonberg  <schonberg@adacore.com>

* exp_prag.adb (Expand_Pragma_Import_Or_Interface): revert previous
patch. The processing of interfacing aspects now generates a
proper Ada 2005 pragma.
* sem_prag.adb (Analyze_Pragma, cases Pragma_Export and
Pragma_Import): revert previous patch. The processing of
interfacing aspects now generates a proper Ada 2005 pragma.
* sem_ch13.adb (Analyze_Aspect_Specifications): generate proper
pragam for aspects Convention, Import and Export. Scan list
of aspects to collect link name and external name if present,
and verify that a complete pragma can be generated.

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