1. 20 Jan, 2014 21 commits
    • sem_aggr.adb, [...]: Minor reformatting. · 1f0b1e48
      2014-01-20  Robert Dewar  <dewar@adacore.com>
      
      	* sem_aggr.adb, exp_prag.adb, sem_aux.adb, sinfo.ads, sem_ch10.adb,
      	checks.adb, sem_prag.adb, sem_ch12.adb, freeze.adb, g-arrspl.adb,
      	expander.adb, gnat1drv.adb, exp_ch4.adb, sem_ch6.adb,
      	sem_ch8.adb, exp_dist.adb: Minor reformatting.
      
      From-SVN: r206813
      Robert Dewar committed
    • [multiple changes] · c093d3cc
      2014-01-20  Yannick Moy  <moy@adacore.com>
      
      	* gnat1drv.adb (Gnat1drv): Call Write_ALI with Object=True in GNATprove
      	mode.
      
      2014-01-20  Pascal Obry  <obry@adacore.com>
      
      	* g-arrspl.ads (Slice_Set): New definition (will use a copy on
      	write scheme).
      	* g-arrspl.adb: Adapt all routine to this new implementation.
      	(Set): Copy the Slice_Set definition before reusing it.
      
      From-SVN: r206812
      Arnaud Charlet committed
    • sem_prag.adb (Process_Import_Or_Interface): In Relaxed_RM_Semantics, support old… · 0bd75e44
      sem_prag.adb (Process_Import_Or_Interface): In Relaxed_RM_Semantics, support old Ada 83 style of pragma Import.
      
      2014-01-20  Arnaud Charlet  <charlet@adacore.com>
      
      	* sem_prag.adb (Process_Import_Or_Interface): In
      	Relaxed_RM_Semantics, support old Ada 83 style of pragma Import.
      	(Analyze_Pragma): Ditto for pragma Export.
      	* exp_prag.adb (Expand_Pragma_Import_Or_Interface): Handle old pragma
      	Import style.
      
      From-SVN: r206810
      Arnaud Charlet committed
    • [multiple changes] · aca90db9
      2014-01-20  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* einfo.ads: E_Abstract_State is now part of the entities that
      	can be overloaded. Update type Overloadable_Kind to reflect the
      	inclusion of abstract states.
      	* sem_ch6.adb (New_Overloaded_Entity): A function can now
      	overload an abstract state.
      	* sem_prag.adb (Analyze_Constituent): Handle the overloading
      	of states by functions. Use Entity_Of to obtain the entity of
      	a constituent.	(Analyze_Global_Item): Handle the overloading of
      	states by functions.
      	(Analyze_Initialization_Item): Handle the
      	overloading of states by functions.  Use Entity_Of to obtain the
      	entity of an item.
      	(Analyze_Input_Item): Handle the overloading
      	of states by functions. Use Entity_Of to obtain the entity of an item.
      	(Analyze_Input_Output): Handle the overloading of states by functions.
      	(Analyze_Refinement_Clause): Handle the overloading
      	of states by functions.  Use Entity_Of to obtain the entity of an item.
      	(Appears_In): Use Entity_Of to obtain the entity of an element.
      	(Check_Usage): Use Entity_Of to obtain the entity of
      	an item. Add a guard to prevent a crash due to a previous error.
      	(Resolve_State): New routine.
      
      2014-01-20  Yannick Moy  <moy@adacore.com>
      
      	* spark_xrefs.ads, debug.adb, gnat1drv.adb, errout.adb, errout.ads,
      	opt.ads: Minor comments updates.
      
      From-SVN: r206809
      Arnaud Charlet committed
    • einfo.adb (Non_Limited_View): Applies to abstract states. · dc726757
      2014-01-20  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* einfo.adb (Non_Limited_View): Applies to abstract states.
      	(Set_From_Limited_With): Applies to abstract states.
      	(Set_Non_Limited_View): Applies to abstract states.
      	(Write_Field17): Output the non-limited view of an abstract state.
      	* einfo.ads: Update the comment on usage and occurrences in
      	nodes for attributes From_Limited_With and Non_Limited_View.
      	* sem_aux.adb (Available_View): This routine can now handle
      	abstract states.
      	* sem_aux.ads (Available_View): This routine can now handle
      	abstract states. Update the comment on usage.
      	* sem_ch8.adb (Find_Expanded_Name): Handle abstract views
      	of states and variables.
      	(In_Pragmas_Depends_Or_Global): New routine.
      	* sem_ch10.adb (Build_Limited_Views): Implement
      	abstract (limited) views of variables and states.
      	(Build_Shadow_Entity): This routine is now a procedure. Add
      	formal parameter Shadow. Update the comment on usage. Add
      	context-specific decoration for states and variables.
      	(Decorate_State): New routine.	(Decorate_Variable): New routine.
      	(Find_And_Process_States): New routine.
      	(Process_Declarations): Renamed to Process_Declarations_And_States.
      	(Process_Declarations_And_States): Add formal parameters
      	Pack and Create_Abstract_Views. Update the comment on usage.
      	(Process_States): New routine.
      	* sem_prag.adb (Check_Dependency_Clause): Handle abstract
      	views of states and variables. Match the abstract view of a state
      	against its corresponding non-abstract view.
      	(Is_Matching_Input):
      	Handle abstract views of states and variables. Match the abstract
      	view of a state against its corresponding non-abstract view.
      	(Process_Global_Item): Handle abstract views of states and
      	variables.
      
      From-SVN: r206808
      Hristian Kirtchev committed
    • sem_ch10.adb (Expand_With_Clause): Don't recurse on the prefix if the current… · 3a5de596
      sem_ch10.adb (Expand_With_Clause): Don't recurse on the prefix if the current with-ed name refers to a package...
      
      2014-01-20  Bob Duff  <duff@adacore.com>
      
      	* sem_ch10.adb (Expand_With_Clause): Don't
      	recurse on the prefix if the current with-ed name refers to a
      	package that renames its own parent, eg "package P.Q renames P;".
      
      From-SVN: r206807
      Bob Duff committed
    • exp_spark.adb (Expand_SPARK_Call): Remove procedure. · 4460a9bc
      2014-01-20  Yannick Moy  <moy@adacore.com>
      
      	* exp_spark.adb (Expand_SPARK_Call): Remove procedure.
      	* opt.adb, opt.ads (Full_Expander_Active): Remove function.
      	* checks.adb, exp_ch6.adb, exp_ch9.adb, exp_disp.adb, sem_aggr.adb,
      	* sem_ch10.adb, sem_ch5.adb, sem_ch6.adb, sem_ch8.adb, sem_ch9.adb,
      	* sem_disp.adb, sem_res.adb Replace Full_Expander_Active by
      	Expander_Active.
      
      2014-01-20  Yannick Moy  <moy@adacore.com>
      
      	* sinfo.ads Update documentation of GNATprove mode.
      
      From-SVN: r206806
      Yannick Moy committed
    • 2014-01-20 Yannick Moy <moy@adacore.com> · f5da7a97
      	* adabkend.adb, ali-util.adb, errout.adb, exp_ch7.adb,
      	* exp_dbug.adb, freeze.adb, lib-xref.adb, restrict.adb,
      	* sem_attr.adb, sem_ch4.adb, sem_ch5.adb, sem_ch6.adb, sem_ch8.adb,
      	* sem_prag.adb, sem_res.adb, sem_util.adb Rename SPARK_Mode into
      	GNATprove_Mode.
      	* sem_ch13.adb: Remove blank.
      	* exp_spark.adb, exp_spark.ads (Expand_SPARK_Call): Only replace
      	subprograms by alias for renamings, not for inherited primitive
      	operations.
      	* exp_util.adb (Expand_Subtype_From_Expr): Apply the expansion
      	in GNATprove mode.
      	(Remove_Side_Effects): Apply the removal in
      	GNATprove mode, for the full analysis of expressions.
      	* expander.adb (Expand): Call the light SPARK expansion in GNATprove
      	mode.
      	(Expander_Mode_Restore, Expander_Mode_Save_And_Set): Ignore
      	save/restore actions for Expander_Active flag in GNATprove mode,
      	similar to what is done in ASIS mode.
      	* frontend.adb (Frontend): Generic bodies are instantiated in
      	GNATprove mode.
      	* gnat1drv.adb (Adjust_Global_Switches): Set operating
      	mode to Check_Semantics in GNATprove mode, although a light
      	expansion is still performed.
      	(Gnat1drv): Set Back_End_Mode to
      	Declarations_Only in GNATprove mode, and later on special case
      	the GNATprove mode to continue analysis anyway.
      	* lib-writ.adb (Write_ALI): Always generate ALI files in
      	GNATprove mode.
      	* opt.adb, opt.ads (Full_Expander_Active): Make it equivalent to
      	Expander_Active.
      	(SPARK_Mode): Renamed as GNATprove_Mode.
      	* sem_aggr.adb (Aggregate_Constraint_Checks): Add checks in the
      	tree in GNATprove_Mode.
      	* sem_ch12.adb (Analyze_Package_Instantiation): Always instantiate
      	body in GNATprove mode.
      	(Need_Subprogram_Instance_Body): Always instantiate body in GNATprove
      	mode.
      	* sem_ch3.adb (Constrain_Index, Process_Range_Expr_In_Decl):
      	Make sure side effects are removed in GNATprove mode.
      
      From-SVN: r206805
      Yannick Moy committed
    • [AArch64] Relax CANNOT_CHANGE_MODE_CLASS · 69675d50
      gcc/
      	* config/aarch64/aarch64-protos.h
      	(aarch64_cannot_change_mode_class_ptr): Declare.
      	* config/aarch64/aarch64.c (aarch64_cannot_change_mode_class,
      	aarch64_cannot_change_mode_class_ptr): New.
      	* config/aarch64/aarch64.h (CANNOT_CHANGE_MODE_CLASS): Change to call
      	backend hook aarch64_cannot_change_mode_class.
      
      From-SVN: r206804
      Tejas Belagod committed
    • [AArch64] Fix behaviour of -mcpu option to match ARM. · ffee7aa9
      gcc/
      
      	* common/config/aarch64/aarch64-common.c
      	(aarch64_handle_option): Don't handle any option order logic here.
      	* config/aarch64/aarch64.c (aarch64_parse_arch): Do not override
      	selected_cpu, warn on architecture version mismatch.
      	(aarch64_override_options): Fix parsing order for option strings.
      
      From-SVN: r206803
      James Greenhalgh committed
    • re PR bootstrap/59496 (Bootstrap fails on powerpc-apple-darwin9 after r205685) · c7169779
      gcc:
      
      	PR bootstrap/59496
      	* config/rs6000/darwin.h (ADJUST_FIELD_ALIGN): Fix unused variable
      	warning.  Amend comment to reflect current functionality.
      
      
      Co-Authored-By: Iain Sandoe <iain@codesourcery.com>
      
      From-SVN: r206802
      Jan-Benedict Glaw committed
    • re PR tree-optimization/59860 (ICE in compute_may_aliases, at tree-ssa-structalias.c:6843) · 409b6ac1
      2014-01-20  Richard Biener  <rguenther@suse.de>
      
      	PR middle-end/59860
      	* builtins.c (fold_builtin_strcat): Remove case better handled
      	by tree-ssa-strlen.c.
      
      	* gcc.dg/pr59860.c: New testcase.
      
      From-SVN: r206799
      Richard Biener committed
    • decl.c (gnat_to_gnu_entity): Robustify tests for aliased objects with an… · fd6e497e
      decl.c (gnat_to_gnu_entity): Robustify tests for aliased objects with an unconstrained nominal subtype.
      
      	* gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Robustify tests
      	for aliased objects with an unconstrained nominal subtype.
      	* gcc-interface/trans.c (Call_to_gnu): Likewise.
      	(gnat_to_gnu) <case N_Op_Not>: Robustify test for private type.
      	<case N_Op_Minus>: Remove useless code.
      	(Exception_Handler_to_gnu_zcx): Minor tweaks.
      
      From-SVN: r206798
      Eric Botcazou committed
    • [AArch64] Make -mcpu, -march and -mtune case-insensitive. · 608df31f
      gcc/
      
      	* config/aarch64/aarch64.opt
      	(mcpu, march, mtune): Make case-insensitive.
      
      From-SVN: r206797
      Alan Lawrence committed
    • decl.c (gnat_to_gnu_entity): Tidy up. · 44e9e3ec
      	* gcc-interface/decl.c (gnat_to_gnu_entity) <case E_Record_Subtype>:
      	Tidy up.  For a subtype with discriminants and variant part, if a
      	variant is statically selected and the fields all have a constant
      	position, put them in order of increasing position.  Likewise if
      	no variant part but representation clause is present.
      	* gcc-interface/utils.c (make_packable_type): Robustify.
      	(maybe_pad_type): Use local variable and tidy up condition.  If no
      	alignment is specified, use the original one.
      	(create_type_stub_decl): Minor tweak.
      	(convert) <case VECTOR_CST>: Fix typo.
      	<case CONSTRUCTOR>: Deal with padding types around the same type.
      	Do not punt on missing fields.
      	(unchecked_convert): Call finish_record_type to lay out the special
      	record types made for conversions from/to problematic integer types.
      	Bump the alignment of CONSTRUCTORs before converting them to a more
      	aligned type.
      
      From-SVN: r206796
      Eric Botcazou committed
    • decl.c (gnat_to_gnu_entity): Remove obsolete code for type_annotate_only mode... · 59f5c969
      	* gcc-interface/decl.c (gnat_to_gnu_entity) <case E_Component>: Remove
      	obsolete code for type_annotate_only mode, simplify code and slightly
      	improve wording of comments.
      
      From-SVN: r206794
      Eric Botcazou committed
    • c-ada-spec.h (dump_ada_specs): Revert prototype change. · 621955cb
      c-family/
      	* c-ada-spec.h (dump_ada_specs): Revert prototype change.
      	* c-ada-spec.c (dump_ads): Likewise.
      	(cpp_check): Likewise.
      	(dump_ada_specs): Likewise.
      cp/
      	* decl2.c (cpp_check): Revert prototype change.
      
      From-SVN: r206793
      Eric Botcazou committed
    • re PR target/59880 (ix86_avoid_lea_for_addr is buggy) · 0fabe5f3
      	PR target/59880
      	* config/i386/i386.c (ix86_avoid_lea_for_addr): Return false
      	if operands[1] is a REG or ZERO_EXTEND of a REG.
      
      	* gcc.target/i386/pr59880.c: New test.
      
      From-SVN: r206792
      Jakub Jelinek committed
    • * gcc.dg/pr44194-1.c: Tweak regexp. · 6fc00404
      From-SVN: r206791
      Renlin Li committed
    • MAINTAINERS: Convert to UTF-8. · 493b8af8
      	* MAINTAINERS: Convert to UTF-8.
      	Properly sort Xinliang David Li's entry.
      
      From-SVN: r206790
      Gerald Pfeifer committed
    • Daily bump. · 0cb61616
      From-SVN: r206789
      GCC Administrator committed
  2. 19 Jan, 2014 13 commits
  3. 18 Jan, 2014 6 commits