1. 25 Apr, 2013 40 commits
    • * de.po, sv.po, vi.po: Update. · c4400c9e
      From-SVN: r198323
      Joseph Myers committed
    • re PR rtl-optimization/57003 (gcc breaks -O2 optimization with Wine(64) -… · c5a44004
      re PR rtl-optimization/57003 (gcc breaks -O2 optimization with Wine(64) - links/info/bisect of commits included)
      
      	PR rtl-optimization/57003
      	* regcprop.c (copyprop_hardreg_forward_1): If ksvd.ignore_set_reg,
      	call note_stores with kill_clobbered_value callback again after
      	killing regs_invalidated_by_call.
      
      	* gcc.target/i386/pr57003.c: New test.
      
      From-SVN: r198320
      Jakub Jelinek committed
    • PR 57028 Bootstrap regression wrt zlib. · 9c818d13
      2013-04-25  Janne Blomqvist  <jb@gcc.gnu.org>
      
              PR bootstrap/57028
              * Make-lang.in (f951): Link in ZLIB.
              (CFLAGS-fortran/module.o): Add zlib include directory.
      
      From-SVN: r198318
      Janne Blomqvist committed
    • [AArch64] Describe the 'BSL' RTL pattern more accurately. · 09962a4a
      gcc/
      	* config/aarch64/aarch64-simd.md
      	(aarch64_simd_bsl<mode>_internal): Rewrite RTL to not use UNSPEC_BSL.
      	(aarch64_simd_bsl<mode>): Likewise.
      	* config/aarch64/iterators.md (unspec): Remove UNSPEC_BSL.
      
      From-SVN: r198316
      James Greenhalgh committed
    • re PR c++/57064 ([clarification requested] Which overload with ref-qualifier should be called?) · 4cd123ed
      	PR c++/57064
      	* g++.dg/cpp0x/ref-qual9.C: New.
      
      From-SVN: r198311
      Jason Merrill committed
    • re PR c++/56859 (alignas() fails in template) · 17365662
      	PR c++/56859
      	* typeck.c (cxx_alignas_expr): Handle value-dependence properly.
      
      From-SVN: r198310
      Jason Merrill committed
    • re PR c++/50261 ([C++0x] ICE on brace-initialize an array member) · 4794d4b5
      	PR c++/50261
      	* init.c (perform_member_init): Call reshape_init.
      
      From-SVN: r198309
      Jason Merrill committed
    • re PR tree-optimization/57066 (std::logb(-inf) returns wrong value) · ea28bb0b
      	PR tree-optimization/57066
              * builtins.c (fold_builtin_logb): Return +Inf for -Inf.
      
              * gcc.dg/torture/builtin-logb-1.c: Adjust testcase.
      
      From-SVN: r198308
      Marek Polacek committed
    • [AArch64] Change iterator for neg<mode>2 from VDQM to VDQ. · 96659611
      gcc/
      	* config/aarch64/aarch64-simd.md (neg<mode>2): Use VDQ iterator.
      
      From-SVN: r198306
      James Greenhalgh committed
    • [AArch64] Make vabs<q>_f<32, 64> a tree/gimple intrinsic. · 9697e620
      gcc/
      	* config/aarch64/aarch64-builtins.c
      	(aarch64_fold_builtin): New.
      	* config/aarch64/aarch64-protos.h (aarch64_fold_builtin): New.
      	* config/aarch64/aarch64.c (TARGET_FOLD_BUILTIN): Define.
      	* config/aarch64/aarch64-simd-builtins.def (abs): New.
      	* config/aarch64/arm_neon.h
      	(vabs<q>_<f32, 64>): Implement using __builtin_aarch64_fabs.
      
      From-SVN: r198305
      James Greenhalgh committed
    • [AArch64] Implement TARGET_GIMPLE_FOLD_BUILTIN for aarch64 backend. · 0ac198d3
      gcc/
      	* config/aarch64/aarch64-builtins.c
      	(aarch64_gimple_fold_builtin): New.
      	* config/aarch64/aarch64-protos.h (aarch64_gimple_fold_builtin): New.
      	* config/aarch64/aarch64-simd-builtins.def (addv): New.
      	* config/aarch64/aarch64-simd.md (addpv4sf): New.
      	(addvv4sf): Update.
      	* config/aarch64/aarch64.c (TARGET_GIMPLE_FOLD_BUILTIN): Define.
      
      gcc/testsuite/
      	* gcc.target/aarch64/vaddv-intrinsic.c: New.
      	* gcc.target/aarch64/vaddv-intrinsic-compile.c: Likewise.
      	* gcc.target/aarch64/vaddv-intrinsic.x: Likewise.
      
      
      
      Co-Authored-By: Tejas Belagod <tejas.belagod@arm.com>
      
      From-SVN: r198304
      James Greenhalgh committed
    • gcc/ · 58cff58c
      2013-04-25  Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>
      
      	* config/aarch64/aarch64.md 
      	(*cmp_swp_<optab><ALLX:mode>_shft_<GPI:mode>): New pattern.
      
      gcc/testsuite/
      
      2013-04-25  Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>
      
      	* gcc.target/aarch64/cmp.c: New.
      
      From-SVN: r198303
      Naveen H.S committed
    • aarch64.md (*ngc<mode>): New pattern. · 7e0228bf
      gcc/
      
      2013-04-25  Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>
      
      	* config/aarch64/aarch64.md (*ngc<mode>): New pattern.
      	(*ngcsi_uxtw): New pattern.
      
      gcc/testsuite/
      
      2013-04-25  Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>
      
      	* gcc.target/aarch64/ngc.c: New.
      
      From-SVN: r198302
      Naveen H.S committed
    • Minor reformatting. · 23db309f
      From-SVN: r198301
      Arnaud Charlet committed
    • Update dependencies. · 597ecd21
      From-SVN: r198299
      Arnaud Charlet committed
    • arm.c (neon_builtin_type_mode): Add T_V4HF. · 5819f96f
      2013-04-25  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
                  Julian Brown  <julian@codesourcery.com>
      
      	* config/arm/arm.c (neon_builtin_type_mode): Add T_V4HF.
      	(TB_DREG): Add T_V4HF.
      	(v4hf_UP): New macro.
      	(neon_itype): Add NEON_FLOAT_WIDEN, NEON_FLOAT_NARROW.
      	(arm_init_neon_builtins): Handle NEON_FLOAT_WIDEN,
      	NEON_FLOAT_NARROW.
      	Handle initialisation of V4HF. Adjust initialisation of reinterpret
      	built-ins.
      	(arm_expand_neon_builtin): Handle NEON_FLOAT_WIDEN,
      	NEON_FLOAT_NARROW.
      	(arm_vector_mode_supported_p): Handle V4HF.
      	(arm_mangle_map): Handle V4HFmode.
      	* config/arm/arm.h (VALID_NEON_DREG_MODE): Add V4HF.
      	* config/arm/arm_neon_builtins.def: Add entries for
      	vcvtv4hfv4sf, vcvtv4sfv4hf.
      	* config/arm/neon.md (neon_vcvtv4sfv4hf): New pattern.
      	(neon_vcvtv4hfv4sf): Likewise.
      	* config/arm/neon-gen.ml: Handle half-precision floating point
      	features.
      	* config/arm/neon-testgen.ml: Handle Requires_FP_bit feature.
      	* config/arm/arm_neon.h: Regenerate.
      	* config/arm/neon.ml (type elts): Add F16.
      	(type vectype): Add T_float16x4, T_floatHF.
      	(type vecmode): Add V4HF.
      	(type features): Add Requires_FP_bit feature.
      	(elt_width): Handle F16.
      	(elt_class): Likewise.
      	(elt_of_class_width): Likewise.
      	(mode_of_elt): Refactor.
      	(type_for_elt): Handle F16, fix error messages.
      	(vectype_size): Handle T_float16x4.
      	(vcvt_sh): New function.
      	(ops): Add entries for vcvt_f16_f32, vcvt_f32_f16.
      	(string_of_vectype): Handle T_floatHF, T_float16, T_float16x4.
      	(string_of_mode): Handle V4HF.
      	* doc/arm-neon-intrinsics.texi: Regenerate.
      
      2013-04-25  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
      
      	* lib/target-supports.exp
      	(check_effective_target_arm_neon_fp16_ok_nocache): New procedure.
      	(check_effective_target_arm_neon_fp16_ok): Likewise.
      	(add_options_for_arm_neon_fp16): Likewise.
      	* gcc.target/arm/neon/vcvtf16_f32.c: New test. Generated.
      	* gcc.target/arm/neon/vcvtf32_f16.c: Likewise.
      
      Co-Authored-By: Julian Brown <julian@codesourcery.com>
      
      From-SVN: r198298
      Kyrylo Tkachov committed
    • [multiple changes] · fd8b8c01
      2013-04-25  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* checks.adb (Apply_Predicate_Check): Update the comment associated
      	with the call to Check_Expression_Against_Static_Predicate.
      	* sem_ch3.adb (Analyze_Object_Declaration): Update the comment
      	associated with the call to Check_Expression_Against_Static_Predicate.
      	* sem_util.adb (Check_Expression_Against_Static_Predicate):
      	Broaden the check from a static expression to an expression with
      	a known value at compile time.
      	* sem_util.ads (Check_Expression_Against_Static_Predicate): Update
      	comment on usage.
      
      2013-04-25  Thomas Quinot  <quinot@adacore.com>
      
      	* exp_attr.adb (Expand_N_Attribute_Reference, cases Position,
      	First_Bit, and Last_Bit): Fix incorrect test in implementation of
      	RM 2005 13.5.2(3/2).
      
      2013-04-25  Claire Dross  <dross@adacore.com>
      
      	* a-cfhase.adb, a-cfhase.ads, a-cforma.adb, a-cforma.ads, a-cfhama.adb,
      	a-cfhama.ads, a-cforse.adb, a-cforse.ads, a-cofove.adb, a-cofove.ads
      	(Query_Element): Removed.
      	(Update_Element): Removed.
      	(Insert): The version with no New_Item specified is removed.
      	(Iterate): Removed.
      	(Write): Removed.
      	(Read): Removed.
      	Every check of fields Busy and Lock has been removed.
      
      2013-04-25  Robert Dewar  <dewar@adacore.com>
      
      	* sem_prag.adb (Analyze_Pragma, case Contract_Cases): Remove
      	call to S14_Pragma (Find_Related_Subprogram): Require proper
      	placement in subprogram body (Find_Related_Subprogram): Detect
      	duplicates for all cases (Find_Related_Subprogram): Handle case
      	of spec nested inside body.
      
      From-SVN: r198297
      Arnaud Charlet committed
    • [multiple changes] · f197d2f2
      2013-04-25  Arnaud Charlet  <charlet@adacore.com>
      
      	* par-prag.adb: Fix typo.
      
      2013-04-25  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* checks.adb (Apply_Predicate_Check): If the type has a static
      	predicate and the expression is also static, check whether the
      	expression satisfies the predicate.
      	* sem_ch3.adb (Analyze_Object_Declaration): If the type has a
      	static predicate and the expression is also static, see if the
      	expression satisfies the predicate.
      	* sem_util.adb: Alphabetize several routines.
      	(Check_Expression_Against_Static_Predicate): New routine.
      	* sem_util.ads (Check_Expression_Against_Static_Predicate): New routine.
      
      From-SVN: r198296
      Arnaud Charlet committed
    • gnat_rm.texi: Document Reason argument for pragma Warnings. · bbee5cc4
      2013-04-25  Robert Dewar  <dewar@adacore.com>
      
      	* gnat_rm.texi: Document Reason argument for pragma Warnings.
      	* par-prag.adb: Handle Reason parameter for pragma Warnings.
      	* sem_prag.adb (Analyze_Pragma, case Warnings): Allow Reason argument.
      	* snames.ads-tmpl (Name_Reason): New name entry.
      
      From-SVN: r198295
      Robert Dewar committed
    • [multiple changes] · 2995860f
      2013-04-25  Yannick Moy  <moy@adacore.com>
      
      	* exp_spark.adb (Expand_SPARK_N_In): Remove procedure.
      	(Expand_SPARK): Remove special expansion for membership tests.
      
      2013-04-25  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_ch3.adb (Expand_N_Object_Declaration): Update all places
      	that should use constant Base_Typ. When building an invariant
      	check, account for invariants coming from the base type. Prevent
      	the creation of a junk invariant check when the related object
      	is of an array type and it is initialized with an aggregate.
      	* exp_util.adb (Make_Invariant_Call): Typ is now a variable. Use
      	the base type to create an invariant call when the type of the
      	expression is a composite subtype.
      
      2013-04-25  Vasiliy Fofanov  <fofanov@adacore.com>
      
      	* a-cborse.adb: Fix minor typo.
      
      2013-04-25  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch6.adb (Different_Generic_Profile): A spec and body
      	match in an instance if a subtype declaration that renames a
      	generic actual with the same name appears between spec and body.
      
      From-SVN: r198294
      Arnaud Charlet committed
    • [multiple changes] · 49eef89f
      2013-04-25  Robert Dewar  <dewar@adacore.com>
      
      	* sem_util.adb: Minor reformatting.
      
      2013-04-25  Ed Schonberg  <schonberg@adacore.com>
      
      	* exp_aggr.adb (Expand_N_Aggregate): Use special circuitry to
      	fold strings with a single others choice only if there are no
      	expressions in the aggregate.
      
      2013-04-25  Arnaud Charlet  <charlet@adacore.com>
      
      	* gnat_ugn.texi: Update doc on Ada 2012 default mode.
      
      From-SVN: r198293
      Arnaud Charlet committed
    • [multiple changes] · 8b404dac
      2013-04-25  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_ch6.adb: Add with and use clause for Stringt.
      	(Expand_Contract_Cases): Moved from sem_ch6. Add formal parameters
      	Decls and Stmts along with comments on their usage.
      	* exp_ch6.ads (Expand_Contract_Cases): Moved from sem_ch6.
      	* sem_ch6.adb (Expand_Contract_Cases): Moved to exp_ch6.
      	(Process_Contract_Cases): Update the call to Expand_Contract_Cases.
      
      2013-04-25  Ed Schonberg  <schonberg@adacore.com>
      
      	* gnat_rm.texi: Minor editing, to clarify use of dimension aspects.
      	* sem_util.adb (Is_OK_Variable_For_Out_Formal): Reject an
      	aggregate for a packed type, which may be converted into an
      	unchecked conversion of an object.
      
      From-SVN: r198292
      Arnaud Charlet committed
    • sem_prag.adb: Minor code reorganization (correct misspelling Restiction). · 7be8338d
      2013-04-25  Robert Dewar  <dewar@adacore.com>
      
      	* sem_prag.adb: Minor code reorganization (correct misspelling
      	Restiction).
      	* sem_util.adb, aspects.ads, sem_ch6.adb: Minor reformatting.
      	* gnat_rm.texi: Document impl-defined aspects.
      	* sem_dim.adb, sem_dim.ads, gnat_ugn.texi, s-dimmks.ads: Minor
      	reformatting.
      
      From-SVN: r198291
      Robert Dewar committed
    • [multiple changes] · f40f731b
      2013-04-25  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* einfo.adb (Set_Abstract_States): The attribute now applies
      	to generic packages.
      	* sem_ch4.adb (Referenced): Moved to sem_util.
      	* sem_ch7.adb (Unit_Requires_Body): A [generic] package with
      	a non-null abstract state needs a body.
      	* sem_prag.adb (Analyze_Depends_In_Decl_Part): Update the calls
      	to Collect_Subprogram_Inputs_Outputs.
      	(Analyze_Global_Item): Verify the proper usage of an item with mode
      	In_Out or Output relative to the enclosing context.
      	(Analyze_Pragma): Abstract_State can now be applied to a generic
      	package. Do not reset the Analyzed flag for pragmas Depends and Global
      	as this is not needed.
      	(Appears_In): Moved to library level.
      	(Check_Mode_Restiction_In_Enclosing_Context): New routine.
      	(Collect_Subprogram_Inputs_Outputs): Moved to library level. Add
      	formal parameters Subp_Id, Subp_Inputs, Subp_Outputs and Global
      	seen along with comments on usage.
      	* sem_util.ads, sem_util.adb (Referenced): New routine.
      
      2013-04-25  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_ch6.adb (Expand_Contract_Cases): Generate
      	detailed error messages only when switch -gnateE is in effect.
      
      2013-04-25  Yannick Moy  <moy@adacore.com>
      
      	* sem_attr.adb (Analyze_Attribute): Do not issue
      	an error for a possibly misplaced 'Result or 'Old attribute when
      	analyzing the aspect.
      
      From-SVN: r198290
      Arnaud Charlet committed
    • sem_ch12.adb, [...]: Minor reformatting. · d1ec4768
      2013-04-25  Robert Dewar  <dewar@adacore.com>
      
      	* sem_ch12.adb, sem_util.adb, sem_ch4.adb: Minor reformatting.
      
      From-SVN: r198289
      Robert Dewar committed
    • [multiple changes] · 57081559
      2013-04-25  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_ch4.adb (Analyze_Quantified_Expression):
      	Add local variable Loop_Id. Verify that the loop variable
      	is used within the condition of the quantified expression.
      	(Referenced): New routine.
      
      2013-04-25  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_case.adb (Analyze_Choices): Enhance the error message
      	given on a bad use of subtype predicate.
      	* sem_ch5.adb (Analyze_Loop_Parameter_Specification): Enhance
      	the error message given on a bad use of subtype predicate.
      	* sem_util.adb (Bad_Predicated_Subtype_Use): Add formal parameter
      	Suggest_Static. Emit an extra error message advising how to
      	remedy the bad use of the predicate if the context warrants it.
      	* sem_util.ads (Bad_Predicated_Subtype_Use): Add formal parameter
      	Suggest_Static along with a comment explaining its usage.
      
      2013-04-25  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_disp.adb (Check_Dispatching_Operation): Further refinement
      	to checks for AI05-0125: the check for a hidden primitive that
      	may be overridden by the new declaration only applies if the
      	hidden operation is never declared. This is not the case if the
      	operation is declared in a parent unit.
      
      From-SVN: r198288
      Arnaud Charlet committed
    • [multiple changes] · 0812b84e
      2013-04-25  Robert Dewar  <dewar@adacore.com>
      
      	* debug.adb: Remove d.X and d.Y entries and documentation.
      	* exp_ch4.adb (Expand_N_If_Expression): Remove special code used
      	if expression with actions not available (now always available).
      	(Expand_Short_Circuit_Operator): Same change.
      	* gnat1drv.adb (Adjust_Global_Switches) Remove setting
      	Use_Expression_With_Actions flag, since this is now obsolete.
      	* opt.ads (Use_Expression_Actions): Removed (always True now).
      	* sinfo.ads: Minor comment updates.
      
      2013-04-25  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch12.adb (Check_Generic_Actuals): If an actual is an array
      	subtype whose base type is currently private, install full view
      	when compiling instance body.
      
      2013-04-25  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_disp.adb (Check_Dispatching_Operation): Refine checks for
      	AI05-0125: the check for a hidden primitive that may be overridden
      	by the new declaration is only performed if the declaration comes
      	from source, and it must carry an explicit overriding indicator.
      
      2013-04-25  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* einfo.adb (Abstract_States): The attribute now applies to
      	generic packages.
      	* sem_ch3.adb (Analyze_Object_Declaration): Check whether an
      	object declaration introduces an illegal hidden state.
      	* sem_prag.adb (Analyze_Abstract_State): Check whether a state
      	declaration introduces an illegal hidden state.
      	* sem_util.ads, sem_util.adb (Check_No_Hidden_State): New routine.
      
      2013-04-25  Ed Schonberg  <schonberg@adacore.com>
      
      	* exp_ch6.adb (Is_Build_In_Place_Function_Call): The call may
      	be to a protected function, in which case the name in the call
      	is a selected component.
      
      2013-04-25  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_ch4.adb (Analyze_Quantified_Expression):
      	Warn on a suspicious use of quantifier "some" when "all" was meant.
      	(No_Else_Or_Trivial_True): New routine.
      
      From-SVN: r198287
      Arnaud Charlet committed
    • [multiple changes] · 1355d373
      2013-04-25  Robert Dewar  <dewar@adacore.com>
      
      	* einfo.ads, einfo.adb: Put back with/use for Namet.
      	(Get_Pragma): New name (wi new spec) for Find_Pragma.
      	* sem_ch6.adb: Change name Find_Pragma to Get_Pragma with
      	different interface.
      
      2013-04-25  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch3.adb (Is_Visible_Component): In an instance all
      	components are visible.
      
      From-SVN: r198286
      Arnaud Charlet committed
    • [multiple changes] · 7271429c
      2013-04-25  Matthew Heaney  <heaney@adacore.com>
      
      	* a-rbtgbo.adb, a-crbtgo.adb (Generic_Equal): do not test for
      	tampering when container empty.
      	* a-crbtgk.adb (Ceiling, Find, Floor): ditto.
      	(Generic_Conditional_Insert, Generic_Conditional_Insert_With_Hint):
      	ditto.
      
      2013-04-25  Ed Schonberg  <schonberg@adacore.com>
      
      	* par-ch12.adb: Move aspects from package specification to
      	generic package declaration.
      	* sem_ch12.adb: Analyze aspect specifications before building
      	and analyzing the generic copy, so that the generated pragmas
      	are properly taken into account.
      	* sem_ch13.adb: For compilation unit aspects that apply to a
      	generic package declaration, insert corresponding pragmas ahead
      	of visible declarations.
      	* sprint.adb: Display properly the aspects of a generic type
      	declaration.
      
      2013-04-25  Robert Dewar  <dewar@adacore.com>
      
      	* frontend.adb: Minor reformatting.
      
      2013-04-25  Ed Schonberg  <schonberg@adacore.com>
      
      	* einfo.ads: Extend documentation on use of Is_Private_Ancestor
      	for untagged types.
      	* sem_ch3.adb (Is_Visible_Component): Refine predicate for the
      	case of untagged types derived from private types, to reject
      	illegal selected components.
      
      From-SVN: r198285
      Arnaud Charlet committed
    • [multiple changes] · a5226d6c
      2013-04-25  Gary Dismukes  <dismukes@adacore.com>
      
      	* sem_util.adb (Is_Dependent_Component_Of_Mutable_Object): Test
      	for case of selecting from an unexpanded implicit dereference
      	and do not make a recursive call on such a prefix.
      
      2013-04-25  Doug Rupp  <rupp@adacore.com>
      
      	* targparm.adb (VXF{_Str}): New tag for vaxfloat.
      	(Get_Target_Parameters): Handle VXF tag.
      	* targparm.ads (VAX_Float_On_Target): New boolean.
      	* system-vms-ia64.ads (VAX_Float): New boolean.
      	* frontend.adb (Frontend): Handle VAX float boolean.
      
      From-SVN: r198284
      Arnaud Charlet committed
    • einfo.ads, einfo.adb: Remove with and use clauses for Namet. · 42fdc85b
      2013-04-25  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* einfo.ads, einfo.adb: Remove with and use clauses for Namet.
      	(Find_Pragma): New routine.
      	* sem_util.ads, sem_util.adb (Find_Pragma): Moved to einfo.
      
      2013-04-25  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_ch13.adb (Add_Call): Do not capture the nature of the inherited
      	predicate.
      	(Add_Predicates): Save the static predicate for diagnostics and error
      	reporting purposes.
      	(Process_PPCs): Remove local variables Dynamic_Predicate_Present and
      	Static_Predicate_Present. Add local variable Static_Pred. Ensure that
      	the expression of a static predicate is static.
      
      From-SVN: r198283
      Hristian Kirtchev committed
    • [multiple changes] · 99a71c65
      2013-04-25  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* einfo.adb (Is_Ghost_Subprogram): Remove useless code.
      
      2013-04-25  Robert Dewar  <dewar@adacore.com>
      
      	* gnat_rm.texi: Minor addition of index entry.
      
      2013-04-25  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_ch6.adb (Check_Access_Invariants): Test whether an
      	invariant procedure is empty before generating a call to it.
      	(Has_Enabled_Predicate): New routine.
      	(Has_Null_Body): New routine.
      	(Process_PPCs): Test whether an invariant procedure is
      	empty before generating a call to it. Test whether predicates are
      	enabled for a particular type before generating a predicate call.
      	* sem_util.ads, sem_util.adb (Find_Pragma): New routine.
      
      From-SVN: r198282
      Arnaud Charlet committed
    • sem_ch7.adb, [...]: Minor reformatting. · 09a078a1
      2013-04-25  Robert Dewar  <dewar@adacore.com>
      
      	* sem_ch7.adb, einfo.adb, repinfo.adb, snames.adb-tmpl,
      	snames.ads-tmpl: Minor reformatting.
      
      From-SVN: r198281
      Robert Dewar committed
    • sem_ch7.adb: Minor reformatting. · 0d1f9820
      2013-04-25  Thomas Quinot  <quinot@adacore.com>
      
      	* sem_ch7.adb: Minor reformatting.
      
      From-SVN: r198280
      Thomas Quinot committed
    • re PR libstdc++/57065 (incorrect default allocator template for debug and profile unordered_map) · 03d7aff6
      2013-04-25  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR libstdc++/57065
      	* include/debug/unordered_map (unordered_map, unordered_multimap):
      	Fix default allocator type.
      	* include/profile/unordered_map (unordered_map, unordered_multimap):
      	Likewise.
      	* include/bits/unordered_map.h: Fix comments.
      
      From-SVN: r198279
      Paolo Carlini committed
    • [AArch64] Fix printf format warning in aarch64_print_operand · 1ef395e4
      gcc/
      	* config/aarch64/aarch64.c (aarch64_print_operand): Fix asm_fprintf
      	format specifier in 'X' case.
      
      From-SVN: r198278
      James Greenhalgh committed
    • [multiple changes] · 9f6aaa5c
      2013-04-25  Robert Dewar  <dewar@adacore.com>
      
      	* gnat_rm.texi: Minor fix to Loop_Variant doc (Loop_Entry allowed).
      	* s-tarest.adb: Minor reformatting.
      
      2013-04-25  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* aspects.ads, aspects.adb: Remove aspect Ghost from all relevant
      	tables.
      	* einfo.adb: Remove with and use clause for Aspects.
      	(Is_Ghost_Function): Removed.
      	(Is_Ghost_Entity): New routine.
      	(Is_Ghost_Subprogram): New routine.
      	* einfo.ads: Remove synthesized attribute Is_Ghost_Function
      	along with its uses in entities.  Add synthesized attributes
      	Is_Ghost_Entity and Is_Ghost_Subprogram along with uses in related
      	entities.
      	(Is_Ghost_Function): Removed.
      	(Is_Ghost_Entity): New routine.
      	(Is_Ghost_Subprogram): New routine.
      	* par-prag.adb: Remove pragma Ghost from the processing machinery.
      	* repinfo.adb (List_Mechanisms): Add a value for convention Ghost.
      	* sem_attr.adb (Analyze_Access_Attribute): Update the check
      	for ghost subprograms.
      	* sem_ch4.adb (Analyze_Call): Update the check for calls
      	to ghost subprograms.
      	(Check_Ghost_Function_Call): Removed.
      	(Check_Ghost_Subprogram_Call): New routine.
      	* sem_ch6.adb (Check_Convention): Rewritten.
      	(Check_Overriding_Indicator): Remove the check for overriding
      	ghost functions.
      	(Convention_Of): New routine.
      	* sem_ch12.adb (Preanalyze_Actuals): Update the check for ghost
      	generic actual subprograms.
      	* sem_mech.adb (Set_Mechanisms): Add an entry for convention Ghost.
      	* sem_prag.adb: Remove the value for pragma Ghost from
      	table Sig_Flags.
      	(Analyze_Pragma): Remove the processing for pragma Ghost.
      	(Process_Convention): Emit an error when a ghost
      	subprogram attempts to override.
      	(Set_Convention_From_Pragma): Emit an error when a ghost subprogram
      	attempts to override.
      	* sinfo.ads: Clarify the usage of field Label_Construct.
      	* snames.adb-tmpl (Get_Convention_Id): Add an entry for
      	predefined name Ghost.
      	(Get_Convention_Name): Add an entry for convention Ghost.
      	* snames.ads-tmpl: Move predefined name Ghost to the sublist
      	denoting conventions. Add convention id Ghost. Remove pragma
      	id Ghost.
      
      2013-04-25  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch7.adb (Swap_Private_Dependents): Do no recurse on child
      	units if within a generic hierarchy.
      
      From-SVN: r198275
      Arnaud Charlet committed
    • re PR target/57052 (missed optimization with rotate and mask) · 41c34e94
      	PR target/57052
      	* config/rs6000/rs6000.md (rotlsi3_internal7): Rename to
      	rotlsi3_internal7le and condition on !BYTES_BIG_ENDIAN.
      	(rotlsi3_internal8be): New BYTES_BIG_ENDIAN insn.
      	Repeat for many other rotate/shift and mask patterns using subregs.
      	Name lshiftrt insns.
      	(ashrdisi3_noppc64): Rename to ashrdisi3_noppc64be and condition
      	on WORDS_BIG_ENDIAN.
      
      From-SVN: r198274
      Alan Modra committed
    • config.host: Match little-endian powerpc-linux. · b9a7eb5d
      libgcc/
      	* config.host: Match little-endian powerpc-linux.
      gcc/
      	* config.gcc: Support little-endian powerpc-linux targets.
      	* config/rs6000/linux.h (LINK_OS_LINUX_EMUL): Define.
      	(LINK_OS_LINUX_SPEC): Define.
      	* config/rs6000/linuxspe.h (TARGET_DEFAULT):
      	Preserve MASK_LITTLE_ENDIAN.
      	* config/rs6000/default64.h (TARGET_DEFAULT): Likewise.
      	* config/rs6000/linuxaltivec.h (TARGET_DEFAULT): Likewise.
      	* config/rs6000/linux64.h (OPTION_LITTLE_ENDIAN): Don't zero.
      	(LINK_OS_LINUX_EMUL32, LINK_OS_LINUX_EMUL64): Define.
      	(LINK_OS_LINUX_SPEC32, LINK_OS_LINUX_SPEC64): Use above.
      	* config/rs6000/rs6000.c (output_toc): Don't use .tc for TARGET_ELF.
      	Correct fp word order for little-endian.  Don't shift toc entries
      	smaller than a word for little-endian.
      	* config/rs6000/rs6000.md (bswaphi2, bswapsi2 split): Comment.
      	(bswapdi2 splits): Correct low-part subreg for little-endian.
      	Remove wrong BYTES_BIG_ENDIAN tests, and rename vars to remove
      	low/high where such is correct only for be.
      	* config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Allow
      	little-endian for -mcall-aixdesc.
      
      From-SVN: r198273
      Alan Modra committed