Commit Graph

117841 Commits

Author SHA1 Message Date
Joseph Myers 6d8b8153de * README: Document use of ranges of years in copyright notices.
From-SVN: r189537
2012-07-16 15:01:34 +01:00
Tristan Gingold b15062a82d decl.c (intrin_return_compatible_p): Map Address to void *.
2012-07-16  Tristan Gingold  <gingold@adacore.com>

	* decl.c (intrin_return_compatible_p): Map Address to void *.

From-SVN: r189536
2012-07-16 15:10:02 +02:00
Thomas Quinot 9d08a38d3b exp_ch9.adb (Ensure_Statement_Present): New subprogram.
2012-07-16  Thomas Quinot  <quinot@adacore.com>

	* exp_ch9.adb (Ensure_Statement_Present): New subprogram.
	(Expand_N_Asynchronous_Select,
	Expand_N_Selective_Accept.Process_Accept_Alternative,
	Expand_N_Selective_Accept.Process_Delay_Alternative,
	Expand_N_Timed_Entry_Call): For an alternative with no trailing
	statements, introduce a null statement to carry the sloc of
	the initial special statement (accept, delay, or entry call)
	in the alternative, for coverage analysis purposes.

2012-07-16  Thomas Quinot  <quinot@adacore.com>

	* sem_eval.adb (In_Subrange_Of): Fix typo in test for scalar
	arguments.

From-SVN: r189535
2012-07-16 15:03:26 +02:00
Arnaud Charlet 70805b8834 [multiple changes]
2012-07-16  Robert Dewar  <dewar@adacore.com>

	* a-exexpr.adb, freeze.adb, a-exexpr-gcc.adb, a-except-2005.adb,
	sem_eval.adb, s-fileio.adb: Minor reformatting.

2012-07-16  Javier Miranda  <miranda@adacore.com>

	* sem_prag.adb (Analyze_Pragma): Remove support for obsolescent
	pragma CPP_Class.
	* sem_ch13.adb (Analyze_Freeze_Entity): Add missing error on Ada
	derivations of CPP types.  Found updating the tests affected by
	the removal of pragma CPP_Class.

2012-07-16  Thomas Quinot  <quinot@adacore.com>

	* back_end.adb: Minor reformatting.

2012-07-16  Thomas Quinot  <quinot@adacore.com>

	* exp_ch9.adb (Expand_N_Selective_Accept.Process_Accept_Alternative):
	Remove junk test that was always true. For the case of no statements
	following the ACCEPT, jump directly to End_Lab instead of
	introducing an intermediate jump.
	(Expand_N_Selective_Accept.Process_Delay_Alternative): Fix
	predicate testing for presence of statements following the DELAY.
	that was always true. For the case of no statements following
	the ACCEPT, jump directly to End_Lab instead of introducing an
	intermediate jump.
	(Expand_N_Selective_Accept): Fix incorrect insertion point for
	end label.

From-SVN: r189534
2012-07-16 15:00:24 +02:00
Arnaud Charlet be93c38658 [multiple changes]
2012-07-16  Thomas Quinot  <quinot@adacore.com>

	* gnat_rm.texi: Minor documentation improvements.

2012-07-16  Yannick Moy  <moy@adacore.com>

	* sem_ch13.adb (Analyze_Aspect_Specifications): Allow Pre
	and Pre'Class aspects on the same declaration.
	* sem_prag.adb (Chain_PPC): Allow Pre and Pre'Class aspects on the
	same hierarchy of primitive operations.

From-SVN: r189533
2012-07-16 14:57:45 +02:00
Arnaud Charlet 5df1266a05 [multiple changes]
2012-07-16  Thomas Quinot  <quinot@adacore.com>

	* freeze.adb (Check_Component_Storage_Order): Do not reject a
	nested composite with different scalar storage order if it is
	byte aligned.

2012-07-16  Thomas Quinot  <quinot@adacore.com>

	* gnat_rm.texi: Update documentation for Scalar_Storage_Order.

2012-07-16  Tristan Gingold  <gingold@adacore.com>

	* a-exexpr.adb (Propagate_Exception): Adjust call to
	Exception_Traces procedures.
	* a-exexpr-gcc.adb (Setup_Current_Excep): Now a
	function that returns an access to the Ada occurrence.
	(Propagate_GCC_Exception): Adjust calls.
	* raise.h (struct Exception_Occurrence): Declare.
	* a-exextr.adb: Remove useless pragma.	(Notify_Handled_Exception,
	Notify_Unhandled_Exception) (Unhandled_Exception_Terminate):
	Add Excep parameter.
	* a-except.adb (Notify_Handled_Exception,
	Notify_Unhandled_Exception) (Unhandled_Exception_Terminate):
	Add Excep parameter.
	(Process_Raise_Exception): Adjust calls.
	* a-except-2005.adb (Notify_Handled_Exception,
	Notify_Unhandled_Exception) (Unhandled_Exception_Terminate): Add
	Excep parameter.
	(Raise_Exception): Calls Raise_Exception_Always.
	* raise-gcc.c (__gnat_setup_current_excep,
	__gnat_notify_handled_exception)
	(__gnat_notify_unhandled_exception): Adjust declarations.
	(PERSONALITY_FUNCTION): Adjust calls.
	(__gnat_personality_seh0): Remove warning.

2012-07-16  Javier Miranda  <miranda@adacore.com>

	* sem_eval.adb (Test_Expression_Is_Foldable): Adding documentation.
	(Eval_Relational_Op): Adding documentation.

From-SVN: r189532
2012-07-16 14:55:50 +02:00
Arnaud Charlet e187fa72fb [multiple changes]
2012-07-16  Robert Dewar  <dewar@adacore.com>

	* freeze.adb, g-debpoo.adb, exp_ch3.adb: Minor reformatting.

2012-07-16  Thomas Quinot  <quinot@adacore.com>

	* s-oscons-tmplt.c: Add definitions of E2BIG and EILSEQ.

2012-07-16  Tristan Gingold  <gingold@adacore.com>

	* a-exexpr.adb (Propagate_Continue): New function replacing
	Raise_Current_Excep.
	(Allocate_Occurrence): New function.
	(Propagate_Exception): Add Excep parameter, remove call to Call_Chain.
	* a-exexpr-gcc.adb (GNAT_GCC_Exception): Occurrence component
	is now aliased.
	(To_GCC_Exception): Convert from Address.
	(Allocate_Occurrence): Allocate an Unwind exception occurrence.
	(Setup_Current_Excep): Fill the machine occurrence in case of
	foreign exception.
	(Propagate_Exception): Add Excep parameter, remove call to Call_Chain.
	* a-except.adb (Set_Exception_C_Msg, Set_Exception_Msg): add
	Excep parameter.
	(Raise_Exception, Raise_Exception_Always,
	Raise_Exception_No_Defer): Adjust calls to the above procedures.
	(Raise_From_Signal_Handler, Raise_With_Location_And_Msg)
	(Rcheck_PE_Finalize_Raised_Exception): Likewise.
	* a-except-2005.adb (Set_Exception_C_Msg, Set_Exception_Msg):
	add Excep parameter.
	(Propagate_Exception): Likewise.
	(Allocate_Occurrence): New function.
	(Raise_Current_Excep): Removed.
	(Complete_Occurrence): New function to save the call chain.
	(Complete_And_Propagate_Occurrence): New procedure.
	(Create_Occurrence_From_Signal_Handler): New function to build an
	occurrence without propagating it.
	(Create_Machine_Occurrence_From_Signal_Handler): Likewise, but
	return the machine occurrence.
	(Raise_From_Signal_Handler): Use Create_Occurrence_From_Signal_Handler.
	(Raise_Exception, Raise_Exception_Always, Raise_Exception_No_Defer):
	Adjust calls to the above procedures. Allocate the occurrence at
	the beginning.
	(Raise_With_Location_And_Msg, Raise_With_Msg)
	(Rcheck_PE_Finalize_Raised_Exceptionm Reraise): Likewise.
	(Reraise_Occurrence): Use Reraise_Occurrence_Always.
	(Reraise_Occurrence_Always): Use Reraise_Occurrence_No_Defer.
	(Reraise_Occurrence_No_Defer): Preserve machine occurrence.
	(Save_Occurrence): Do not save machine occurrence.
	* a-except-2005.ads (Exception_Occurrence): Add Machine_Occurrence
	component.
	(Null_Occurrence): Consider it.
	* a-exexda.adb (Set_Exception_C_Msg, Set_Exception_Msg): add
	Excep parameter.

2012-07-16  Tristan Gingold  <gingold@adacore.com>

	* seh_init.c (__gnat_map_SEH): New function extracted from
	__gnat_SEH_error_handler.
	* raise-gcc.c: __gnat_personality_seh0: Directly transforms
	Windows system exception into GCC one when possible, in order
	to save stack room (particularly useful when Storage_Error will
	be propagated).

From-SVN: r189530
2012-07-16 14:51:41 +02:00
H.J. Lu 59a6c9d565 Restore type attribute comparison
PR middle-end/53959
	PR bootstrap/53963
	* gimple.c (gimple_types_compatible_p_1): Restore type attribute
	comparison.

From-SVN: r189528
2012-07-16 05:35:10 -07:00
Bill Schmidt a75a89ebaa opts.c (default_option): Add -fvect-cost-model to default options at -O3 and above.
2012-07-16  Bill Schmidt  <wschmidt@linux.ibm.com>

	* opts.c (default_option): Add -fvect-cost-model to default options
	at -O3 and above.

From-SVN: r189527
2012-07-16 12:32:25 +00:00
Arnaud Charlet 673369608c [multiple changes]
2012-07-16  Robert Dewar  <dewar@adacore.com>

	* a-direct.adb, g-dirope.adb: Minor reformatting.

2012-07-16  Tristan Gingold  <gingold@adacore.com>

	* a-except.ads, a-except-2005.ads: Remove outdated comment.

2012-07-16  Robert Dewar  <dewar@adacore.com>

	* sem_ch6.adb (Subprogram_Name_Greater): Fix algorithm to
	conform to documentation.

2012-07-16  Ed Schonberg  <schonberg@adacore.com>

	* gnat1drv.adb (Check_Library_Items): Removed, no longer used.

2012-07-16  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch3.adb (Array_Type_Declaration): if component type has
	invariants, the array type itself requires an invariant procedure.
	* exp_ch3.ads, exp_ch3.adb (Build_Array_Invariant_Proc): new
	procedure, to build a checking procedure that applies the
	invariant check on some type T to each component of an array
	of T's.  Code is similar to the construction of the init_proc
	for an array, and handles multidimensional arrays by recursing
	over successive dimensions.

2012-07-16  Hristian Kirtchev  <kirtchev@adacore.com>

	* g-debpoo.adb: Revert previous change.

2012-07-16  Hristian Kirtchev  <kirtchev@adacore.com>

	* freeze.adb (Freeze_Entity): Insert the itype reference to a
	library-level class-wide subtype after the freeze node of the
	equivalent record type.

From-SVN: r189526
2012-07-16 14:26:58 +02:00
Pascal Obry e01934b794 s-crtl.ads (mkdir): New routine, support encoding.
2012-07-16  Pascal Obry  <obry@adacore.com>

	* s-crtl.ads (mkdir): New routine, support encoding.
	* adaint.h (__gnat_mkdir): Update spec to pass encoding.
	* mkdir.c (__gnat_mkdir): Add encoding parameter.
	* a-direct.adb (Create_Directory): Use CRTL.mkdir, parse encoding
	in form parameter.
	* g-dirope.adb (Make_Dir): Update to pass encoding parameter.

2012-07-16  Pascal Obry  <obry@adacore.com>

	* adaint.c: Minor reformatting.

From-SVN: r189525
2012-07-16 14:08:15 +02:00
Steven Bosscher 7a1c57d3cd graphite-clast-to-gimple.c, [...]: Include tree-pass.h instead of dumpfile.h for pass TODO flags.
* graphite-clast-to-gimple.c, graphite-dependences.c,
	graphite-sese-to-poly.c: Include tree-pass.h instead of dumpfile.h
	for pass TODO flags.
	* Makefile.in: Fix dependencies.

From-SVN: r189524
2012-07-16 12:01:34 +00:00
Steven Bosscher ee44c28d39 haifa-sched.c (init_before_recovery): Do not set EDGE_CAN_FALLTHRU.
* haifa-sched.c (init_before_recovery): Do not set EDGE_CAN_FALLTHRU.
	* cfgrtl.c (force_nonfallthru_and_redirect): Likewise.

From-SVN: r189523
2012-07-16 11:50:29 +00:00
Steven Bosscher b3c144a3a7 function.c (stack_protect_epilogue): Use expand_call to expand targetm.stack_protect_fail.
* function.c (stack_protect_epilogue): Use expand_call to expand
	targetm.stack_protect_fail.
	* stmt.c (expand_expr_stmt): Remove now-unused function.
	* tree.h (expand_expr_stmt): Remove prototype.
	* doc/tm.texi.in (TARGET_STACK_PROTECT_FAIL): Document that this
	hook must return a CALL_EXPR.
	* doc/tm.texi: Regenerate.

From-SVN: r189522
2012-07-16 11:47:59 +00:00
Steven Bosscher 468660d358 emit-rtl.c (emit_label_before): Do not allow the same label to be emitted twice.
* emit-rtl.c (emit_label_before): Do not allow the same label
	to be emitted twice.
	(emit_label_after): Likewise.
	(emit_label): Likewise.

From-SVN: r189521
2012-07-16 11:43:47 +00:00
Steven Bosscher 89ca6d794e flags.h (TYPE_OVERFLOW_WRAPS, [...]): Move to tree.h.
* flags.h (TYPE_OVERFLOW_WRAPS, TYPE_OVERFLOW_UNDEFINED,
	TYPE_OVERFLOW_TRAPS, POINTER_TYPE_OVERFLOW_UNDEFINED): Move to tree.h.
	* tree.h (TYPE_OVERFLOW_WRAPS, TYPE_OVERFLOW_UNDEFINED,
	TYPE_OVERFLOW_TRAPS, POINTER_TYPE_OVERFLOW_UNDEFINED): New home.

From-SVN: r189520
2012-07-16 11:42:47 +00:00
Steven Bosscher 7ee2468b92 system.h (dump_file): Do not define.
gcc/
	* system.h (dump_file): Do not define.
	* tree-pass.h: Include dumpfile.h, which is a new file containing...
	(enum tree_dump_index, TDF_*, get_dump_file_name, dump_enabled_p,
	dump_initialized_p, dump_begin, dump_end, dump_node, dump_switch_p,
	dump_flag_name, dump_file, dump_flags, dump_file_name,
	get_dump_file_info, struct dump_file_info): all of this, moved to...
	* dumpfile.h: Here, new file.
	* tree-dump.h: Include dumpfile.h, but not tree-pass.h.
	(dump_stmt): Remove prototype for C++ specific function.
	(dump_enumerated_decls): Move prototype from here...
	* tree-flow.h (dump_enumerated_decls): ... to here.
	(get_ref_base_and_extent) Move prototype from here ...
	* tree.h (get_ref_base_and_extent) ... to here.
	* tree-ssa-live.c: Do not inclde tree-pretty-print.h, because
	gimple-pretty-print.h is enough.  Do not include tree-dump.h,
	include timevar.h and dumpfile.h instead.
	(struct numbered_tree_d, compare_decls_by_uid,
	dump_enumerated_decls_push, dump_enumerated_decls): Move from here ...
	* tree-dfa.c:(struct numbered_tree_d, compare_decls_by_uid,
	dump_enumerated_decls_push, dump_enumerated_decls):... to here.
	Do not include timevar.h.
	* tree.c: Do not include timevar.h.
	* tree-cfg.c: Do not include langhooks.h, tree-pretty-print.h, and
	timevar.h.
	(dump_cfg_stats): Use current_function_name.
	(gimple_cfg2vcg): Likewise.
	(dump_function_to_file): Likewise.
	* df-scan.c: Do not include tree-pass.h and timevar.h.
	Include dumpfile.h.
	(df_entry_block_bitmap_verify, df_exit_block_bitmap_verify): Do not
	use print_current_pass.
	* df-problems.c: Include dumpfile.h.
	Always define REG_DEAD_DEBUGGING, avoid #ifdef code, because it
	leads to errors in the code not selected.
	(df_note_compute): Do not print_rtl_with_bb here.  Fix compilation
	bug if REG_DEAD_DEBUGGING is not 0, get_insns is not available here.
	* lcm.c: Include dumpfile.h.
	Remove obsolete include of insn-attr.h.
	* dojump.c (do_compare_rtx_and_jump): Remove failure printing for
	missing probability notes.
	* stmt.c: Include dumpfile.h.
	(emit_case_decision_tree): Re-enable printing expand details only
	if TDF_DETAILS.
	* alias.c, auto-inc-dec.c, bb-reorder.c, caller-save.c, cfg.c, 
	cfgcleanup.c, cfgexpand.c, cfgloop.c, cfgloopmanip.c, cgraph.c, 
	cgraphclones.c, cgraphunit.c, combine.c, combine-stack-adj.c, 
	coverage.c, cprop.c, cse.c, cselib.c, dbgcnt.c, dce.c, df-core.c, 
	dse.c, dwarf2out.c, emit-rtl.c, except.c, expr.c, final.c, 
	function.c, fwprop.c, gcse.c, gimple-fold.c, 
	gimple-pretty-print.c, gimple-ssa-strength-reduction.c, 
	gimplify.c, graphite-blocking.c, graphite-clast-to-gimple.c, 
	graphite-dependences.c, graphite-interchange.c, 
	graphite-optimize-isl.c, graphite-poly.c, 
	graphite-sese-to-poly.c, haifa-sched.c, hw-doloop.c, ifcvt.c, 
	ipa.c, ipa-cp.c, ipa-inline-analysis.c, ipa-inline.c, 
	ipa-inline-transform.c, ipa-prop.c, ipa-pure-const.c, 
	ipa-reference.c, ipa-split.c, ipa-utils.c, ira.c, ira-emit.c, 
	jump.c, loop-doloop.c, loop-init.c, loop-invariant.c, loop-iv.c, 
	loop-unroll.c, loop-unswitch.c, lower-subreg.c, 
	lto-section-out.c, lto-streamer-in.c, matrix-reorg.c, mcf.c, 
	mode-switching.c, modulo-sched.c, omega.c, omp-low.c, passes.c, 
	plugin.c, postreload.c, postreload-gcse.c, predict.c, print-rtl.c, 
	print-tree.c, profile.c, recog.c, ree.c, regcprop.c, reginfo.c, 
	regmove.c, regrename.c, reg-stack.c, reload1.c, reorg.c, 
	sched-rgn.c, sched-vis.c, sel-sched.c, sel-sched-ir.c, 
	store-motion.c, tracer.c, trans-mem.c, tree-affine.c, 
	tree-call-cdce.c, tree-cfgcleanup.c, tree-chrec.c, 
	tree-data-ref.c, tree-diagnostic.c, tree-dump.c,
	tree-eh.c, tree-flow-inline.h, tree-if-conv.c, tree-into-ssa.c, 
	tree-mudflap.c, tree-nrv.c, tree-object-size.c, 
	tree-optimize.c, tree-outof-ssa.c, tree-predcom.c, 
	tree-pretty-print.c, tree-profile.c, tree-scalar-evolution.c, 
	tree-sra.c, tree-ssa-address.c, tree-ssa-alias.c, tree-ssa.c, 
	tree-ssa-ccp.c, tree-ssa-coalesce.c, tree-ssa-copy.c, 
	tree-ssa-copyrename.c,, tree-ssa-dce.c, tree-ssa-dom.c, 
	tree-ssa-dse.c, tree-ssa-forwprop.c, tree-ssa-ifcombine.c, 
	tree-ssa-loop.c, tree-ssa-loop-ch.c, tree-ssa-loop-im.c, 
	tree-ssa-loop-ivcanon.c, tree-ssa-loop-ivopts.c, 
	tree-ssa-loop-manip.c, tree-ssa-loop-niter.c, 
	tree-ssa-loop-prefetch.c, tree-ssa-loop-unswitch.c, 
	tree-ssa-math-opts.c, tree-ssa-operands.c, tree-ssa-phiopt.c, 
	tree-ssa-phiprop.c, tree-ssa-pre.c, tree-ssa-propagate.c, 
	tree-ssa-reassoc.c, tree-ssa-sccvn.c, tree-ssa-sink.c, 
	tree-ssa-structalias.c, tree-ssa-tail-merge.c, tree-ssa-ter.c, 
	tree-ssa-threadedge.c, tree-ssa-threadupdate.c, 
	tree-ssa-uncprop.c, tree-ssa-uninit.c, 
	tree-switch-conversion.c, tree-tailcall.c, 
	tree-vect-data-refs.c, tree-vect-loop.c, 
	tree-vect-loop-manip.c, tree-vectorizer.c, 
	tree-vect-patterns.c, tree-vect-slp.c, tree-vect-stmts.c, 
	tree-vrp.c, value-prof.c, var-tracking.c, web.c: Include tree-pass.h
	only if needed.  If tree-pass.h is included, do not include timevar.h
	and dumpfile.h.  If tree-pass.h is not included but dump_file, or
	dump_flags, or the TDF_* flags are used, include dumpfile.h.
	If gimple-pretty-print.h is included, don't include tree-pretty-print.h.
	Remove assorted unnecessary includes.

	* config/mn10300/mn10300.c, config/c6x/c6x.c, config/ia64/ia64.c,
	config/arm/arm.c, config/bfin/bfin.c, config/frv/frv.c,
	config/spu/spu.c, config/mep/mep.c, config/i386/i386.c:
	Include dumpfile.h.
	* config/rl78/rl78.c: Include dumpfile.h instead of tree-pass.h.
	* arm/t-arm, avr/t-avr, i386/t-i386, ia64/t-ia64, mep/t-mep,
	spu/t-spu-elf: Fix dependencies.

c-family/
	* c-gimplify.c: Include dumpfile.h instead of tree-dump.h.
	* c-ada-spec.c: Likewise.
	* c-dump.c (dump_stmt): Move to cp/dump.c, the only user.

c/
	* c-decl.c: Include dumpfile.h instead of tree-dump.h.
	* Make-lang.in: Fix dependencies.

cp/
	* dump.c (dump_stmt): Moved here from c-dump.c.
	* optimize.c: Include dumpfile.h instead of tree-dump.h.
	* class.c: Likewise.
	* decl2.c: Likewise.
	* Make-lang.in: Fix dependencies.

fortran/
	* f95-lang.c: Include dumpfile.h instead of tree-dump.h.
	* Make-lang.in: Fix dependencies.

java/
	* java-gimplify.c Include dumpfile.h instead of tree-dump.h
	* Make-lang.in: Fix dependencies.

lto/
	* lto.c: Do not include timevar.h.
	* Make-lang.in: Fix dependencies.

ada/
	* gcc-interface/utils.c: Include timevar.h.
	* Make-lang.in: Fix dependencies.

From-SVN: r189519
2012-07-16 11:32:42 +00:00
Dehao Chen 9e227d605e revert: tree.h (phi_arg_d): New field.
2012-07-16  Dehao Chen  <dehao@google.com>

	Revert
	2012-07-10  Dehao Chen  <dehao@google.com>

	* tree.h (phi_arg_d): New field.
	* tree-flow-inline.h (gimple_phi_arg_block): New function.
	(gimple_phi_arg_block_from_edge): New function.
	(gimple_phi_arg_set_block): New function.
	(gimple_phi_arg_has_block): New function.
	(redirect_edge_var_map_block): New function.
	* tree-flow.h (_edge_var_map): New field.
	* tree-ssa-live.c (remove_unused_locals): Mark phi_arg's block as used.
	* tree-eh.c (cleanup_empty_eh_merge_phis): Add block debug info for
	redirect_edge_var_map_add.
	* tree-outof-ssa.c (_elim_graph): New field.
	(insert_partition_copy_on_edge): New parameter.
	(insert_value_copy_on_edge): New parameter.
	(insert_rtx_to_part_on_edge): New parameter.
	(insert_part_to_rtx_on_edge): New parameter.
	(elim_graph_add_edge): New parameter.
	(elim_graph_remove_succ_edge): New parameter.
	(FOR_EACH_ELIM_GRAPH_SUCC): New parameter.
	(FOR_EACH_ELIM_GRAPH_PRED): New parameter.
	(new_elim_graph): Add block debug info.
	(clear_elim_graph): Likewise.
	(delete_elim_graph): Likewise.
	(elim_graph_add_node): Likewise.
	(elim_graph_add_edge): Likewise.
	(elim_graph_remove_succ_edge): Likewise.
	(eliminate_build): Likewise.
	(elim_forward): Likewise.
	(elim_unvisited_predecessor): Likewise.
	(elim_backward): Likewise.
	(elim_create): Likewise.
	(eliminate_phi): Likewise.
	(insert_backedge_copies): Likewise.
	* tree-into-ssa.c (insert_phi_nodes_for): Add block debug info for
	add_phi_arg.
	(rewrite_add_phi_arguments): Likewise.
	* tree-ssa-loop-im.c (execute_sm_if_changed): Likewise.
	* tree-ssa-tail-merge.c (replace_block_by): Likewise.
	* tree-ssa-threadupdate.c (copy_phi_args): Likewise.
	* tree-loop-distribution.c (update_phis_for_loop_copy): Likewise.
	* tree-ssa-loop-manip.c (create_iv): Likewise.
	(add_exit_phis_edge): Likewise.
	(split_loop_exit_edge): Likewise.
	(copy_phi_node_args): Likewise.
	(tree_transform_and_unroll_loop): Likewise.
	* value-prof.c (gimple_ic): Likewise.
	(gimple_stringop_fixed_value): Likewise.
	* tree-tailcall.c (add_successor_phi_arg): Likewise.
	(eliminate_tail_call): Likewise.
	(create_tailcall_accumulator): Likewise.
	(tree_optimize_tail_calls_1): Likewise.
	* tree-phinodes.c (add_phi_arg): Likewise.
	(make_phi_node): Likewise.
	(resize_phi_node): Likewise.
	(remove_phi_arg_num): Likewise.
	* omp-low.c (expand_parallel_call): Likewise.
	(expand_omp_for_static_chunk): Likewise.
	* tree-vect-loop-manip.c (slpeel_update_phis_for_duplicate_loop):
	Likewise.
	(slpeel_update_phi_nodes_for_guard1): Likewise.
	(slpeel_update_phi_nodes_for_guard2): Likewise.
	(slpeel_tree_duplicate_loop_to_edge_cfg): Likewise.
	(set_prologue_iterations): Likewise.
	(slpeel_tree_peel_loop_to_edge): Likewise.
	(vect_loop_versioning): Likewise.
	* tree-parloops.c (create_phi_for_local_result): Likewise.
	(transform_to_exit_first_loop): Likewise.
	(create_parallel_loop): Likewise.
	* ipa-split.c (split_function): Likewise.
	* tree-vect-loop.c (get_initial_def_for_induction): Likewise.
	(vect_create_epilog_for_reduction): Likewise.
	* tree-vect-data-refs.c (vect_setup_realignment): Likewise.
	* graphite-scop-detection.c (canonicalize_loop_closed_ssa): Likewise.
	* tree-ssa-phiopt.c (cond_store_replacement): Likewise.
	(cond_if_else_store_replacement_1): Likewise.
	* tree-cfgcleanup.c (remove_forwarder_block): Likewise.
	(remove_forwarder_block_with_phi): Likewise.
	* tree-ssa-pre.c (insert_into_preds_of_block): Likewise.
	* tree-predcom.c (initialize_root_vars): Likewise.
	(initialize_root_vars_lm): Likewise.
	* sese.c (sese_add_exit_phis_edge): Likewise.
	* tree-ssa-dce.c (forward_edge_to_pdom): Likewise.
	* tree-ssa.c (flush_pending_stmts): Likewise.
	(redirect_edge_var_map_add): Likewise.
	(ssa_redirect_edge): Likewise.
	* gimple-streamer-in.c (input_phi): Likewise.
	* tree-vect-stmts.c (vectorizable_load): Likewise.
	* tree-inline.c (copy_phis_for_bb): Likewise.
	* tree-ssa-phiprop.c (phiprop_insert_phi): Likewise.
	* tree-switch-conversion.c (fix_phi_nodes): Likewise.
	* tree-cfg.c (reinstall_phi_args): Likewise.
	(gimple_make_forwarder_block): Likewise.
	(add_phi_args_after_copy_edge): Likewise.
	(gimple_duplicate_sese_tail): Likewise.

From-SVN: r189518
2012-07-16 11:08:21 +00:00
Arnaud Charlet f691d19f9e [multiple changes]
2012-07-16  Vasiliy Fofanov  <fofanov@adacore.com>

	* ug_words, vms_data.ads: Document VMS qualifiers for -gnatn1/2
	switches.

2012-07-16  Bob Duff  <duff@adacore.com>

	* sinfo.ads: Minor comment fix.

2012-07-16  Bob Duff  <duff@adacore.com>

	* sem_elab.adb (Within_Elaborate_All): Walk the with clauses to
	find pragmas Elaborate_All that may be found in the transitive
	closure of the dependences.

From-SVN: r189517
2012-07-16 12:52:21 +02:00
Robert Dewar b3408631f7 exp_pakd.adb, [...]: Minor reformatting.
2012-07-16  Robert Dewar  <dewar@adacore.com>

	* exp_pakd.adb, freeze.adb, sem_util.adb, vms_data.ads: Minor
	reformatting.

From-SVN: r189516
2012-07-16 12:49:46 +02:00
Janus Weil 8bae3cefeb re PR fortran/53956 ([F03] PROCEDURE w/ interface: Bogus "EXTERNAL attribute conflicts with FUNCTION attribute")
2012-07-16  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/53956
	* gfortran.h (gfc_copy_formal_args,gfc_copy_formal_args_ppc): Modified
	prototypes.
	* symbol.c (gfc_copy_formal_args): New argument 'if_src'. Copy if_source
	of dummy procedures.
	(gfc_copy_formal_args_ppc): Ditto.
	* resolve.c (resolve_procedure_interface): Pass IFSRC_DECL to
	gfc_copy_formal_args.
	(resolve_fl_derived0): Pass IFSRC_DECL to gfc_copy_formal_args_ppc.


2012-07-16  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/53956
	* gfortran.dg/proc_decl_28.f90: New.

From-SVN: r189514
2012-07-16 12:13:19 +02:00
Sergey Melnikov d923fe0f01 i386.md (stack_protect_set): Disable the pattern for Android since Android libc (bionic) does not provide...
2012-07-16 Sergey Melnikov <sergey.melnikov@intel.com>

        * config/i386/i386.md (stack_protect_set): Disable the pattern
        for Android since Android libc (bionic) does not provide random
        value for stack protection guard at gs:0x14. Guard value
        will be provided from external symbol (default implementation).
        (stack_protect_set_<mode>): Likewise.
        (stack_protect_test): Likewise.
        (stack_protect_test_<mode>): Likewise.

From-SVN: r189513
2012-07-16 10:00:37 +00:00
Andrew Pinski a14c200adc builtins-1.c: New testcase.
2012-07-16  Andrew Pinski  <apinski@cavium.com>

	* gcc.dg/torture/builtins-1.c: New testcase.

From-SVN: r189510
2012-07-16 00:17:49 -07:00
Hans-Peter Nilsson 64e544ef55 Commit hunk missing from last change
From-SVN: r189509
2012-07-16 06:11:09 +00:00
Hans-Peter Nilsson dc7f4baf62 Tweak ChangeLog formatting for my recent entries
From-SVN: r189508
2012-07-16 03:33:35 +00:00
Hans-Peter Nilsson a502bdb636 cris-protos.h (cris_legitimate_address_p): Declare.
* config/cris/cris-protos.h (cris_legitimate_address_p): Declare.
	* config/cris/cris.h (CONSTANT_ADDRESS_P): Define in terms of
	CONSTANT_P and cris_legitimate_address_p.
	* config/cris/cris.c (cris_legitimate_address_p): Make non-static.

From-SVN: r189507
2012-07-16 03:31:12 +00:00
Hans-Peter Nilsson ff57d86657 cris.c (cris_preferred_reload_class): Don't return GENERAL_REGS as preferred to MOF_SRP_REGS.
* config/cris/cris.c (cris_preferred_reload_class):
	Don't return GENERAL_REGS as preferred to MOF_SRP_REGS.

From-SVN: r189506
2012-07-16 03:24:14 +00:00
Hans-Peter Nilsson f0336342c5 sync-2i.c, [...]: For cris*-*-linux*, also pass -mno-unaligned-atomic-may-use-library.
* gcc.target/cris/sync-2i.c, gcc.target/cris/sync-2s.c,
	gcc.target/cris/sync-3i.c, gcc.target/cris/sync-3s.c,
	gcc.target/cris/sync-4i.c, gcc.target/cris/sync-4s.c,
	gcc.target/cris/sync-1-v10.c,
	gcc.target/cris/sync-1-v32.c: For cris*-*-linux*, also
	pass -mno-unaligned-atomic-may-use-library.
	* gcc.target/cris/sync-xchg-1.c: New test.

From-SVN: r189505
2012-07-16 03:21:47 +00:00
Hans-Peter Nilsson dec4306fcb cris.c (cris_init_libfuncs): Handle initialization of library functions for basic atomic compare-and-swap.
* config/cris/cris.c (cris_init_libfuncs): Handle initialization
	of library functions for basic atomic compare-and-swap.
	* config/cris/cris.h (TARGET_ATOMICS_MAY_CALL_LIBFUNCS): New macro.
	* config/cris/cris.opt (munaligned-atomic-may-use-library): New
	option.
	* config/cris/sync.md ("atomic_fetch_<atomic_op_name><mode>")
	("cris_atomic_fetch_<atomic_op_name><mode>_1")
	("atomic_compare_and_swap<mode>")
	("cris_atomic_compare_and_swap<mode>_1"): Make
	conditional on TARGET_ATOMICS_MAY_CALL_LIBFUNCS for
	sizes larger than byte.

From-SVN: r189504
2012-07-16 03:18:23 +00:00
Hans-Peter Nilsson 24ddb79c2d cris.c (cris_print_operand): New cases.
* config/cris/cris.c (cris_print_operand) <case 'P', 'q'>: New cases.
	* config/cris/sync.md (atomic_op_op_cnstr): New code_attr.
	(atomic_op_op_pred): Ditto.
	(atomic_op_mnem_pre_op2): Renamed from atomic_op_mnem_pre; to
	reflect the change to include %2 in expansion.  All callers changed.
	(qm3): New mode_attr.
	("atomic_fetch_<atomic_op_name><mode>"): Use <atomic_op_op_pred>
	as predicate for operand 2. 
	("cris_atomic_fetch_<atomic_op_name><mode>_1"): Update FIXME.  Use
	"<atomic_op_op_pred>" "<atomic_op_op_cnstr>" for predicate and
	constraint for operand 2.
	("atomic_compare_and_swap<mode>"): Add FIXME.  Change predicate to
	nonmemory_operand for operand 3.
	("cris_atomic_compare_and_swap<mode>_1"): Change operand 3 to
	exclude memory.  Improve emitted sync code for v10 and v32.  Use
	<qm3> instead of <m> for size designator for cmp.

From-SVN: r189503
2012-07-16 03:11:31 +00:00
Hans-Peter Nilsson c3a3b5b55d 20011127-1.c: Adjust to %P being a valid register operand output modifier.
* gcc.target/cris/20011127-1.c: Adjust to %P being a
	valid register operand output modifier.

From-SVN: r189502
2012-07-16 03:09:57 +00:00
Hans-Peter Nilsson 1cdea33b8f sync.md ("atomic_compare_and_swap<mode>"): Change predicate to nonmemory_operand for operand 3.
* config/cris/sync.md ("atomic_compare_and_swap<mode>"): Change
	predicate to nonmemory_operand for operand 3.  Add FIXME.
	("cris_atomic_compare_and_swap<mode>_1"): Change predicates and

From-SVN: r189501
2012-07-16 03:02:47 +00:00
Hans-Peter Nilsson fdb6272c11 * config/cris/sync.md ("atomic_fetch_<atomic_op_name><mode>")
("atomic_compare_and_swap<mode>"): Gate expand_mem_thread_fence
	calls on result of call to need_atomic_barrier_p.

From-SVN: r189500
2012-07-16 02:59:42 +00:00
GCC Administrator 031831d69b Daily bump.
From-SVN: r189499
2012-07-16 00:18:10 +00:00
Richard Sandiford cb00489cc3 mips.md (move_type): Replace mfhilo and mthilo with mflo and mtlo.
gcc/
	* config/mips/mips.md (move_type): Replace mfhilo and mthilo
	with mflo and mtlo.
	(type): Split mfhilo into mfhi and mflo.  Split mthilo into mthi
	and mtlo.  Adjust move_type->type mapping.
	(may_clobber_hilo): Split mthilo into mthi and mtlo.
	(*movdi_32bit, *movdi_32bit_mips16, *movdi_64bit, *movdi_64bit_mips16)
	(*mov<mode>_internal, *mov<mode>_mips16, *movhi_internal)
	(*movhi_mips16, *movqi_internal, *movqi_mips16): Use mtlo and mflo
	instead of mthilo and mfhilo.
	(mfhi<GPR:mode>_<HILO:mode>): Use mfhi instead of mfhilo.
	(mthi<GPR:mode>_<HILO:mode>): Use mthi instead of mthilo.
	* config/mips/mips-dsp.md (mips_extr_w, mips_extr_r_w, mips_extr_rs_w)
	(mips_extr_s_h, mips_extp, mips_extpdp, mips_shilo, mips_mthlip):
	Use mflo instead of mfhilo.
	* config/mips/10000.md (r10k_arith): Split mthilo.
	(r10k_mfhi, r10k_mflo): Use mfhi and mflo directly.
	* config/mips/sb1.md (ir_sb1_mfhi, ir_sb1_mflo): Likewise.
	(ir_sb1_mthilo): Split mthilo into mthi and mtlo.
	* config/mips/20kc.md (r20kc_imthilo, r20kc_imfhilo): Split
	mthilo and mfhilo.
	* config/mips/24k.md (r24k_int_mfhilo, r24k_int_mthilo): Likewise.
	* config/mips/4130.md (vr4130_class, vr4130_mfhilo, vr4130_mthilo):
	Likewise.
	* config/mips/4k.md (r4k_int_mthilo, r4k_int_mfhilo): Likewise.
	* config/mips/5400.md (ir_vr54_hilo): Likewise.
	* config/mips/5500.md (ir_vr55_mthilo, ir_vr55_mfhilo): Likewise.
	* config/mips/5k.md (r5k_int_mthilo, r5k_int_mfhilo): Likewise.
	* config/mips/7000.md (rm7_mthilo, rm7_mfhilo): Likewise.
	* config/mips/74k.md (r74k_int_mfhilo, r74k_int_mthilo): Likewise.
	* config/mips/9000.md (rm9k_mfhilo, rm9k_mthilo): Likewise.
	* config/mips/generic.md (generic_hilo): Likewise.
	* config/mips/loongson2ef.md (ls2_alu): Likewise.
	* config/mips/loongson3a.md (ls3a_mfhilo): Likewise.
	* config/mips/octeon.md (octeon_imul_o1, octeon_imul_o2)
	(octeon_mfhilo_o1, octeon_mfhilo_o2): Likewise.
	* config/mips/sr71k.md (ir_sr70_hilo): Likewise.
	* config/mips/xlr.md (xlr_hilo): Likewise.

From-SVN: r189496
2012-07-15 16:26:48 +00:00
Andreas Schwab b7e331f886 pubnames-2.C: Support all known comment characters.
* g++.dg/debug/dwarf2/pubnames-2.C: Support all known comment
characters.

From-SVN: r189494
2012-07-15 10:22:35 +00:00
GCC Administrator 940c7385ed Daily bump.
From-SVN: r189489
2012-07-15 00:18:16 +00:00
Andrew Stubbs 9b02410362 sh.h (SH_ASM_SPEC): Add spaces between options.
2012-07-14  Andrew Stubbs  <ams@codesourcery.com>
	    Sandra Loosemore  <sandra@codesourcery.com>

	gcc/
	* config/sh/sh.h (SH_ASM_SPEC): Add spaces between options.

Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>

From-SVN: r189486
2012-07-14 20:02:47 -04:00
Mike Stump d0db532de1 Add missing pthread requirement.
From-SVN: r189485
2012-07-14 22:38:41 +00:00
Uros Bizjak abc4d4e989 i386.c (ix86_set_reg_reg_cost): Enable TFmode/TCmode for TARGET_SSE.
* config/i386/i386.c (ix86_set_reg_reg_cost): Enable TFmode/TCmode
	for TARGET_SSE.

From-SVN: r189483
2012-07-14 21:33:12 +02:00
Steven Bosscher ee7b28eb21 toplev.c (init_asm_output): Open asm_out_file in 'w' mode.
gcc/
	* toplev.c (init_asm_output): Open asm_out_file in 'w' mode.

c-family/
	* c-pch.c (CHECK_NO_ASM_OUT_DURING_PCH): Do not define.
	Remove code conditional on it.

From-SVN: r189482
2012-07-14 17:28:31 +00:00
Steven Bosscher 659140c86e * config/t-darwin (crt3.0): Remove work-around for fixed PR26840.
From-SVN: r189479
2012-07-14 13:50:59 +00:00
Andrew Pinski 3f245efcff octeon2-pipe-1.c: Use cleanup-rtl-dump rather than cleanup-tree-dump.
2012-07-13  Andrew Pinski  <apinski@cavium.com>

	* gcc.target/mips/octeon2-pipe-1.c: Use cleanup-rtl-dump
	rather than cleanup-tree-dump.
	* gcc.target/mips/octeon-pipe-1.c: Likewise.

tree

From-SVN: r189477
2012-07-13 18:15:59 -07:00
GCC Administrator bf54274fb5 Daily bump.
From-SVN: r189476
2012-07-14 00:17:09 +00:00
Bill Schmidt cf0d4e1501 re PR bootstrap/53955 (Missing prototypes in i386.c, bootstrap failure with --disable-build-poststage1-with-cxx)
2012-07-13  Bill Schmidt  <wschmidt@linux.ibm.com>

	PR bootstrap/53955
	* config/spu/spu.c (spu_init_cost): Mark static.
	(spu_add_stmt_cost): Likewise.
	(spu_finish_cost): Likewise.
	(spu_destroy_cost_data): Likewise.
	* config/i386/i386.c (ix86_init_cost): Mark static.
	(ix86_add_stmt_cost): Likewise.
	(ix86_finish_cost): Likewise.
	(ix86_destroy_cost_data): Likewise.
	* config/rs6000/rs6000.c (rs6000_init_cost): Mark static.
	(rs6000_add_stmt_cost): Likewise.
	(rs6000_finish_cost): Likewise.
	(rs6000_destroy_cost_data): Likewise.

From-SVN: r189473
2012-07-13 22:33:31 +00:00
Doug Evans 69488641ac filenames.h: #include "hashtab.h".
include/
	* filenames.h: #include "hashtab.h".
	(filename_hash, filename_eq): Declare.
	libiberty/
	* filename_cmp.c (filename_hash, filename_eq): New functions.

From-SVN: r189472
2012-07-13 22:12:28 +00:00
Steven Bosscher c8b8af718c ggc.h (ggc_internal_alloc_stat, [...]): Add ATTRIBUTE_MALLOC.
* ggc.h (ggc_internal_alloc_stat, ggc_alloc_typed_stat,
	ggc_internal_cleared_alloc_stat, ggc_cleared_alloc_htab_ignore_args,
	ggc_cleared_alloc_ptr_array_two_args, ggc_splay_alloc): Add
	ATTRIBUTE_MALLOC.
	* alloc-pool.h (pool_alloc): Likewise.

	* final.c (final): Do not loop to find max_uid.

From-SVN: r189470
2012-07-13 17:51:34 +00:00
Steven Bosscher e4da1e17ea emit-rtl.c (make_debug_insn_raw, [...]): Make static.
* emit-rtl.c (make_debug_insn_raw, make_jump_insn_raw): Make static.
	* rtl.h (make_debug_insn_raw, make_jump_insn_raw): Remove prototypes.

From-SVN: r189467
2012-07-13 15:56:04 +00:00
Jason Merrill d1cb1990fb re PR regression/53953 (g++.dg/cpp0x/lambda/lambda-ice2.C (warnings and errors not matching))
PR c++/53953
	* method.c (synthesized_method_walk): Initialize no_implicit_p sooner.

From-SVN: r189465
2012-07-13 11:08:55 -04:00
Richard Guenther 78b4053c6e ctors.exp: Explicitely specify -O0.
2012-07-13  Richard Guenther  <rguenther@suse.de>

	* testsuite/libmudflap.c++/ctors.exp: Explicitely specify -O0.
	* testsuite/libmudflap.c++/c++frags.exp: Likewise.
	* testsuite/libmudflap.cth/cthfrags.exp: Likewise.
	* testsuite/libmudflap.c/cfrags.exp: Likewise.
	* testsuite/libmudflap.c/externs.exp: Likewise.

From-SVN: r189464
2012-07-13 13:25:13 +00:00