Commit graph

100071 commits

Author SHA1 Message Date
Rainer Orth
ed1041376a sfp-machine.h (FP_HANDLE_EXCEPTIONS): Support Sun assembler syntax.
libgcc:
	* config/i386/32/sfp-machine.h (FP_HANDLE_EXCEPTIONS): Support Sun
	assembler syntax.

	gcc:
	* config.gcc (i[34567]86-*-solaris2*): Default with_arch_32 to
	pentiumpro on Solaris 8/x86 with Sun as.
	* configure.ac (gcc_cv_as_hidden): Check for Solaris 9/x86 as
	hidden alias bug.
	(gcc_cv_as_ix86_quad): Check for .quad directive.
	* configure: Regenerate.
	* config.in: Regenerate.
	* config/i386/sol2.h (ASM_QUAD): Change guard to !HAVE_AS_IX86_QUAD.

From-SVN: r159569
2010-05-19 15:31:00 +00:00
Daniel Franke
16e520b612 re PR fortran/42360 (intent(out)-dummy-not-set warning for types depends on order of component initializers)
gcc/fortran/:
2010-05-19  Daniel Franke  <franke.daniel@gmail.com>

	PR fortran/42360
	* gfortran.h (gfc_has_default_initializer): New.
	* expr.c (gfc_has_default_initializer): New.
	* resolve.c (has_default_initializer): Removed, use
	gfc_has_default_initializer() instead. Updated all callers.
	* trans-array.c (has_default_initializer): Removed, use
	gfc_has_default_initializer() instead. Updated all callers.
	* trans-decl.c (generate_local_decl): Do not check the
	first component only to check for initializers, but use
	gfc_has_default_initializer() instead.

gcc/testsuite/:
2010-05-19  Daniel Franke  <franke.daniel@gmail.com>

	PR fortran/42360
	* gfortran.dg/warn_intent_out_not_set.f90: New.

From-SVN: r159562
2010-05-19 09:07:25 -04:00
Daniel Franke
66faed7643 re PR fortran/38404 (Warning message identifies incorrect line)
gcc/fortran/:
2010-05-19  Daniel Franke  <franke.daniel@gmail.com>

	PR fortran/38404
	* primary.c (match_string_constant): Move start_locus just inside 
	the string.
	* data.c (create_character_intializer): Clarified truncation warning.

gcc/testsuite/:
2010-05-19  Daniel Franke  <franke.daniel@gmail.com>

	PR fortran/38404
	* gfortran.dg/data_char_1.f90: Updated warning message.
	* gfortran.dg/data_array_6.f: New.

From-SVN: r159561
2010-05-19 08:55:26 -04:00
Martin Jambor
749aa96dab ipa-prop.c (ipa_print_node_jump_functions): Print jump functions also for indirect edges.
2010-05-19  Martin Jambor  <mjambor@suse.cz>

	* ipa-prop.c (ipa_print_node_jump_functions): Print jump functions
	also for indirect edges.  Actual printing moved...
	(ipa_print_node_jump_functions_for_edge): ...here.
	(ipa_compute_jump_functions): Renamed to
	ipa_compute_jump_functions_for_edge and made static.
	(ipa_compute_jump_functions): New function.
	(make_edge_direct_to_target): Check if the number of arguments on
	the newly direct edge is the same as the number of parametrs of
	the callee.
	* ipa-cp.c (ipcp_init_stage): Most functionality moved to new
	ipa_compute_jump_functions.  Call ipa_analyze_params_uses.
	* ipa-inline.c (inline_indirect_intraprocedural_analysis): Call
	analysis functions unconditionally, call the new
	ipa_analyze_params_uses on the node instead of every edge.

	* testsuite/g++.dg/ipa/ivinline-8.C: New test.
	* testsuite/gcc.dg/ipa/iinline-2.c: New test.

From-SVN: r159559
2010-05-19 13:49:36 +02:00
Daniel Franke
c9018c71d3 re PR fortran/34505 (FLOAT/SNGL: Not accepted as actual argument; diagnostics problems)
gcc/fortran/:
2010-05-19  Daniel Franke  <franke.daniel@gmail.com>

	PR fortran/34505
	* intrinsic.h (gfc_check_float): New prototype.
	(gfc_check_sngl): New prototype.
	* check.c (gfc_check_float): New.
	(gfc_check_sngl): New.
	* intrinsic.c (add_functions): Moved DFLOAT from aliasing DBLE
	to be a specific for REAL. Added check routines for FLOAT, DFLOAT
	and SNGL.
	* intrinsic.texi: Removed individual nodes of FLOAT, DFLOAT and SNGL,
	added them to the list of specifics of REAL instead.

gcc/testsuite/:
2010-05-19  Daniel Franke  <franke.daniel@gmail.com>

	PR fortran/34505
	* gfortran.dg/dfloat_1.f90: Add warnings for non-default kind
	arguments; add check for return value kind.
	* gfortran.dg/float_1.f90: Likewise.

From-SVN: r159558
2010-05-19 07:43:53 -04:00
Christian Borntraeger
81f3232690 tree-ssa-loop-prefetch.c (mem_ref_group, ar_data): Change step to tree.
2010-05-19  Christian Borntraeger  <borntraeger@de.ibm.com>

        * tree-ssa-loop-prefetch.c (mem_ref_group, ar_data): Change step
	to tree.
        (dump_mem_ref): Adopt debug code to handle a tree as step.  This
	also checks for a constant int vs.  non-constant but
	loop-invariant steps.
        (find_or_create_group): Change the sort algorithm to only consider
	steps that are constant ints.
        (idx_analyze_ref): Adopt code to handle a tree instead of a
	HOST_WIDE_INT for step.
        (gather_memory_references_ref): Handle tree instead of int and be
	prepared to see a NULL_TREE.
        (prune_ref_by_self_reuse, prune_ref_by_group_reuse): Do not prune
	prefetches if the step cannot be calculated at compile time.
        (issue_prefetch_ref): Issue prefetches for non-constant but
	loop-invariant steps.

From-SVN: r159557
2010-05-19 10:36:40 +00:00
Nathan Froyd
8abd2cbee2 * expr.c (pop_arguments): Fix use of undeclared variable.
From-SVN: r159555
2010-05-19 01:15:43 +00:00
Nathan Froyd
39b27b3a47 Revert:
2010-05-18  Nathan Froyd  <froydnj@codesourcery.com>

	* tree.h (build_call_list): Remove.
	* tree.c (build_call_list): Remove.

From-SVN: r159554
2010-05-19 00:43:27 +00:00
GCC Administrator
0a9f28e7fd Daily bump.
From-SVN: r159553
2010-05-19 00:18:01 +00:00
Eelis van der Weegen
ddc962a4c1 re PR libstdc++/44190 (Debug vector resize does not update capacity)
2010-05-18  Eelis van der Weegen  <gcc-bugzilla@contacts.eelis.net>

	PR libstdc++/44190
	* include/debug/vector (vector<>::resize): Call
	_M_update_guaranteed_capacity.
	* testsuite/23_containers/vector/capacity/44190.cc: New.

From-SVN: r159549
2010-05-18 23:58:50 +00:00
Nathan Froyd
3fcb9d1bfa tree.h (build_call_list): Remove.
gcc/
	* tree.h (build_call_list): Remove.
	* tree.c (build_call_list): Remove.

gcc/ada/
	* gcc-interface/trans.c (call_to_gnu): Use build_call_vec instead of
	build_call_list.
	* gcc-interface/utils.c (build_function_stub): Likewise.

gcc/cp/
	* tree.c (build_min_non_dep_call_vec): Update comment.

gcc/java/
	* expr.c (expand_java_multianewarray): Use build_call_vec instead of
	build_call_list.
	(pop_arguments): Return a VEC instead of a tree.  Take a method type
	rather than a list of argument types.
	(rewrite_rule): Change signature. of rewrite_arglist member.
	(rewrite_arglist_getcaller): Update signature.
	(rewrite_arglist_getclass): Likewise.
	(maybe_rewrite_invocation): Update for rewrite_arglist change.
	(build_known_method_ref): Take a VEC instead of a tree.
	(invoke_build_dtable): Likewise.
	(expand_invoke): Update calls to pop_arguments.  Use build_call_vec
	instead of build_call_list.
	(build_jni_stub): Use build_call_vec instead of build_call_list.
	* java-tree.h (maybe_rewrite_invocation): Update declaration.
	(build_known_method_ref): Likewise.
	(invoke_build_dtable): Likewise.

From-SVN: r159548
2010-05-18 23:45:21 +00:00
Jan Hubicka
58efc3ac59 * ipa-reference.c (propagate): Walk all nodes in the cleanup stage.
From-SVN: r159546
2010-05-18 22:37:32 +00:00
Vladimir Makarov
0495bafc27 re PR rtl-optimization/43332 (valgrind warns about using uninitialized variable with -fsched-pressure -fschedule-insns)
2010-05-18  Vladimir Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/43332
	* haifa-sched.c (setup_insn_max_reg_pressure): Check barrier.

From-SVN: r159545
2010-05-18 22:09:19 +00:00
Anatoly Sokolov
abdbbf16d4 tree.h (build_int_cstu): Implement as static inline.
* tree.h (build_int_cstu): Implement as static inline.
	* tree.c (build_int_cstu): Remove function.
	(double_int_to_tree, double_int_fits_to_tree_p): Handle size types as
	sign extended.

From-SVN: r159544
2010-05-19 00:54:59 +04:00
Rainer Orth
f8a02aacf1 20011009-1.c (COMMENT): Define.
* gcc.target/i386/20011009-1.c (COMMENT): Define.
	(main): Use it.
	* gcc.target/i386/pr25993.c [__sun__]: Use .globl.
	* lib/lto.exp (lto_prune_warns): Fix location line regex.
	Prune another location line format.
	(lto-obj): Call lto_prune_warns on comp_output.

From-SVN: r159538
2010-05-18 19:05:09 +00:00
Richard Guenther
cf96bae709 re PR lto/44143 (-fdump-tree-all for lto does not work as expected)
2010-05-18  Richard Guenther  <rguenther@suse.de>

	PR lto/44143
	* lto-wrapper.c (verbose): New variable.  Initialize from -v.
	(debug): Initialize from -save-temps.
	(collect_execute): Print command-line when verbose.
	(run_gcc): Always use COLLECT_GCC_OPTIONS.  Use fork_execute
	for ltrans invocation.  Produce -dumpbase flag again.
	(process_args): Remove.
	(main): Simplify.
	* collect2.c (maybe_run_lto_and_relink): Only pass object
	files to lto-wrapper.
	* gcc.c (LINK_COMMAND_SPEC): Likewise.

From-SVN: r159536
2010-05-18 15:11:01 +00:00
Jan Hubicka
80e2a014c8 ipacp_0.c: New test.
* gcc.dg/lto/ipacp_0.c: New test.
	* gcc.dg/lto/ipacp_1.c: New test.

	* opts.c (decode_options): Do not disable whopr at ipa_cp.
	* ipa-prop.c (ipa_detect_param_modifications): Walk PHI nodes too.

From-SVN: r159535
2010-05-18 14:37:30 +00:00
Steven Bosscher
26195ca5a2 fix broken checkin, test should be link not assemble
From-SVN: r159533
2010-05-18 14:13:10 +00:00
Steven Bosscher
174f391c12 re PR lto/44184 ("asm goto" does not work with LTO)
gcc/
	PR lto/44184
	* lto-streamer-out.c (output_gimple_stmt): Output number of labels
	in a GIMPLE_ASM.
	* lto-streamer-in.c (input_gimple_stmt): Read number of labels
	in a GIMPLE_ASM.

testsuite/
	PR lto/44184
	* gcc.dg/lto/20100518_0.c: New test.

From-SVN: r159531
2010-05-18 13:51:50 +00:00
Jakub Jelinek
1307793110 re PR debug/41371 (var-tracking is slow and memory hungry)
PR debug/41371
	* var-tracking.c (find_loc_in_1pdv): Add a few checks from
	rtx_equal_p inline.

From-SVN: r159528
2010-05-18 11:35:52 +02:00
Steven Bosscher
02540df4e6 add lto to powerpc-*darwin and enable for 32bit darwin
Steven Bosscher  <steven@gcc.gnu.org>
ChangeLog:
	* configure.ac (--enable-lto): All *-apple-darwin* now support LTO.
	* configure: Regenerate.

gcc/ChangeLog:
	* config.gcc (powerpc-*-darwin*, powerpc64-*-darwin*): Add
	lto-macho as lto_binary_reader.

	* darwin.c (darwin_asm_named_section): Do not add assembler comment
	after .section directive; just print it before the directive instead.



M    gcc/config.gcc
M    gcc/config/darwin.c
M    ChangeLog
M    gcc/ChangeLog

From-SVN: r159527
2010-05-18 08:12:56 +00:00
Eric Botcazou
451078b5e0 * gnat.dg/specs/lto3.ads: Add missing dg-options.
From-SVN: r159525
2010-05-18 07:10:11 +00:00
GCC Administrator
1201e82a4c Daily bump.
From-SVN: r159523
2010-05-18 00:17:30 +00:00
Jan Hubicka
36576655d8 cgraph.c (cgraph_create_virtual_clone): Only check versionable_function_p when not in wpa and checking is enabled.
* cgraph.c (cgraph_create_virtual_clone): Only check
	versionable_function_p when not in wpa and checking is enabled.
	* cgrpahunit.c (cgraph_materialize_all_clones): Stabilize after
	there are no more functions to materialize.
	
	* lto/lto.c (lto_1_to_1_map): Partition non-inline clones.
	(lto_promote_cross_file_statics): Deal with non-inline clones.

From-SVN: r159518
2010-05-17 23:12:14 +00:00
Jan Hubicka
922f15c273 cgraph.h (struct ipa_replace_map): Add parm_num parameter.
* cgraph.h (struct ipa_replace_map): Add parm_num parameter.
	* lto-cgraph.c (output_cgraph_opt_summary, input_cgraph_opt_summary):
	New functions.
	(output_cgraph): Call output_cgraph_opt_summary.
	(input_cgrpah): Call input_cgraph_opt_summary.
	(output_cgraph_opt_summary_p, output_node_opt_summary,
	input_node_opt_summary, input_cgraph_opt_section): New functions.
	* lto-section-in.c (lto_section_name): Add cgraphopt.
	* tree-inline.c (tree_function_versioning): Handle parm_num.
	* lto-streamer.c (lto_get_section_name): Handle cgraphopt.
	* lto-streamer.h (lto_section_type): Add LTO_section_cgraph_opt_sum.

From-SVN: r159517
2010-05-17 23:02:47 +00:00
Jan Hubicka
28632d6395 lto.c (lto_materialize_function): Announce function when reading body...
* lto.c (lto_materialize_function): Announce function when
	reading body; allocate_struct_function only when reading body;
	do not finalize local statics; ggc_collect after reading;
	do not mark reachable node.
	(materialize_cgraph): Do not announce function.

From-SVN: r159516
2010-05-17 22:42:02 +00:00
Changpeng Fang
d3a9b459b7 Also apply the insn to prefetch ratio heuristic to loops with known trip count.
2010-05-17  Changpeng Fang  <changpeng.fang@amd.com>

	* doc/invoke.texi: Update documentation for min-insn-to-prefetch-ratio.
	* tree-ssa-loop-prefetch.c (is_loop_prefetching_profitable): Also apply
	the insn to prefetch ratio heuristic to loops with known trip count.

From-SVN: r159515
2010-05-17 22:34:03 +00:00
Changpeng Fang
8532678c05 Define PREFETCH_MOD_TO_UNROLL_FACTOR_RATIO heuristic.
2010-05-17  Changpeng Fang  <changpeng.fang@amd.com>

	* tree-ssa-loop-prefetch.c (PREFETCH_MOD_TO_UNROLL_FACTOR_RATIO): New.
	(schedule_prefetches): Do not generate a prefetch if the unroll factor
	is far from what is required by the prefetch.

From-SVN: r159514
2010-05-17 22:33:53 +00:00
Jan Hubicka
339f49ec21 ipa-cp.c (ipcp_update_callgraph): Use ipa_is_param_used.
* ipa-cp.c (ipcp_update_callgraph): Use ipa_is_param_used.
	(ipcp_estimate_growth): Likewise.
	(ipcp_const_param_count): Likewise.
	(ipcp_insert_stage): Likewise.
	* ipa-prop.c (visit_load_for_mod_analysis): New function.
	(visit_store_addr_for_mod_analysis): Set used flag.
	(ipa_detect_param_modifications): Set used flag for SSE params;
	update use of walk_stmt_load_store_addr_ops.
	(ipa_print_node_params): Print used flag.
	(ipa_write_node_info): Stream used flag.
	(ipa_read_node_info): Likewise.
	* ipa-prop.h (struct ipa_param_descriptor): Add used field.
	(ipa_is_param_used): New function.
	(lto_ipa_fixup_call_notes): Remove unused declaration.

From-SVN: r159513
2010-05-17 22:13:07 +00:00
Rainer Orth
2433310da1 re PR target/44074 (Solaris 2.9 x86 Sun assembler doesn't like rep/lock prefixes on same line)
PR target/44074
	* configure.ac (HAVE_AS_IX86_REP_LOCK_PREFIX): New test.
	* configure: Regenerate.
	* config.in: Regenerate.
	* config/i386/i386.c (print_operand) <case ;>: Also print ; if
	!HAVE_AS_IX86_REP_LOCK_PREFIX.
	Don't emit whitespace.
	* config/i386/i386.md (*rep_movdi_rex64): Use {%;} after rep.
	(*rep_movsi): Likewise.
	(*rep_movsi_rex64): Likewise.
	(*rep_movqi): Likewise.
	(*rep_movqi_rex64): Likewise.
	(*rep_stosdi_rex64): Likewise.
	(*rep_stossi): Likewise.
	(*rep_stossi_rex64): Likewise.
	(*rep_stosqi): Likewise.
	(*rep_stosqi_rex64): Likewise.
	(*cmpstrnqi_nz_1): Use {%;} after repz.
	(*cmpstrnqi_nz_rex_1): Likewise.
	(*cmpstrnqi_1): Likewise.
	(*cmpstrnqi_rex_1): Likewise.
	(*strlenqi_1): Use {%;} after repnz.
	(*strlenqi_rex_1): Likewise.
	* config/i386/sync.md (memory_barrier_nosse): Replace {%;| } by {%;} .
	(*sync_compare_and_swap<mode>): Likewise.
	(sync_double_compare_and_swap<mode>): Likewise.
	(*sync_double_compare_and_swapdi_pic): Likewise.
	(sync_old_add<mode>): Likewise.
	(sync_add<mode>): Likewise.
	(sync_sub<mode>): Likewise.
	(sync_<code><mode>): Likewise.

From-SVN: r159512
2010-05-17 20:28:56 +00:00
Janus Weil
94ea69392c re PR fortran/43990 ([OOP] ICE in output_constructor_regular_field, at varasm.c:4995)
2010-05-17  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/43990
	* trans-expr.c (gfc_conv_structure): Remove unneeded and buggy code.
	This is now handled via 'gfc_class_null_initializer'.


2010-05-17  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/43990
	* gfortran.dg/class_21.f03: New.

From-SVN: r159511
2010-05-17 21:58:48 +02:00
Jason Merrill
f18ea1bfdb call.c (struct z_candidate): Add explicit_targs field.
* call.c (struct z_candidate): Add explicit_targs field.
	(add_template_candidate_real): Set it.
	(build_over_call): Use it to control init-list warning.

From-SVN: r159510
2010-05-17 15:54:05 -04:00
Jason Merrill
9d2b7551cd re PR c++/44157 ([C++0x] GCC wrongly takes a std::initializer_list argument as non-deduced context)
PR c++/44157
	* call.c (build_over_call): Limit init-list deduction warning to
	cases where the argument is actually an init-list.

From-SVN: r159509
2010-05-17 15:53:55 -04:00
Jason Merrill
c8361db176 re PR c++/44158 ([C++0x] wrong overload resolution for copy-initialization from an rvalue)
PR c++/44158
	* call.c (build_over_call): Don't do bitwise copy for move ctor.

From-SVN: r159508
2010-05-17 15:53:45 -04:00
Martin Jambor
b258210c50 cgraph.h (cgraph_indirect_call_info): New fields anc_offset, otr_token and polymorphic.
2010-05-17  Martin Jambor  <mjambor@suse.cz>

	* cgraph.h (cgraph_indirect_call_info): New fields anc_offset,
	otr_token and polymorphic.
	* cgraph.c (cgraph_create_indirect_edge): Inilialize the above fields.
	(cgraph_clone_edge): Copy the above fields.
	* tree.c (get_binfo_at_offset): New function.
	* tree.h (get_binfo_at_offset): Declare.
	* ipa-prop.h (enum jump_func_type): Added known_type jump function
	type, reordered items, updated comments.
	(union jump_func_value): Added base_type field, reordered fields.
	(enum ipa_lattice_type): Moved down in the file.
	(struct ipa_param_descriptor): New field polymorphic.
	(ipa_is_param_polymorphic): New function.
	* ipa-prop.c: Include gimple.h and gimple-fold.h.
	(ipa_print_node_jump_functions): Print known type jump functions.
	(compute_complex_pass_through): Renamed to...
	(compute_complex_assign_jump_func): this.
	(compute_complex_ancestor_jump_func): New function.
	(compute_known_type_jump_func): Likewise.
	(compute_scalar_jump_functions): Create known type and complex ancestor
	jump functions.
	(ipa_note_param_call): New parameter polymorphic, set the corresponding
	flag in the call note accordingly.
	(ipa_analyze_call_uses): Renamed to...
	(ipa_analyze_indirect_call_uses): this.  New parameter target, define
	variable var only in the block where it is used.
	(ipa_analyze_virtual_call_uses): New function.
	(ipa_analyze_call_uses): Likewise.
	(combine_known_type_and_ancestor_jfs): Likewise.
	(update_jump_functions_after_inlining): Implemented handling of a
	number of new jump function types combination.
	(print_edge_addition_message): Removed.
	(make_edge_direct_to_target): New function.
	(try_make_edge_direct_simple_call): Likewise.
	(try_make_edge_direct_virtual_call): Likewise.
	(update_call_notes_after_inlining): Renamed to...
	(update_indirect_edges_after_inlining): this.  Moved edge creation for
	indirect calls to try_make_edge_direct_simple_call, also calls
	try_make_edge_direct_virtual_call for virtual calls.
	(ipa_print_node_params): Changed the header message.
	(ipa_write_jump_function): Stream also known type jump functions.
	(ipa_read_jump_function): Likewise.
	(ipa_write_indirect_edge_info): Stream new fields in
	cgraph_indirect_call_info.
	(ipa_read_indirect_edge_info): Likewise.
	* Makefile.in (ipa-prop.o): Add dependency to GIMPLE_H and
	GIMPLE_FOLD_H.

	* testsuite/g++.dg/ipa/ivinline-1.C: New test.
	* testsuite/g++.dg/ipa/ivinline-2.C: New test.
	* testsuite/g++.dg/ipa/ivinline-3.C: New test.
	* testsuite/g++.dg/ipa/ivinline-4.C: New test.
	* testsuite/g++.dg/ipa/ivinline-5.C: New test.
	* testsuite/g++.dg/ipa/ivinline-6.C: New test.

From-SVN: r159507
2010-05-17 21:43:40 +02:00
Janus Weil
d15bac214b class.c (gfc_add_component_ref,gfc_class_null_initializer, [...]): Moved here from other places.
2010-05-17  Janus Weil  <janus@gcc.gnu.org>

	* class.c (gfc_add_component_ref,gfc_class_null_initializer,
	gfc_build_class_symbol,add_proc_component,add_proc_comps, 
	add_procs_to_declared_vtab1,copy_vtab_proc_comps,
	add_procs_to_declared_vtab,add_generic_specifics, 
	add_generics_to_declared_vtab,gfc_find_derived_vtab,
	find_typebound_proc_uop,gfc_find_typebound_proc,
	gfc_find_typebound_user_op,gfc_find_typebound_intrinsic_op, 
	gfc_get_tbp_symtree): Moved here from other places.
	* expr.c (gfc_add_component_ref,gfc_class_null_initializer): Move to
	class.c.
	* gfortran.h (gfc_build_class_symbol,gfc_find_derived_vtab,
	gfc_find_typebound_proc,gfc_find_typebound_user_op,
	gfc_find_typebound_intrinsic_op,gfc_get_tbp_symtree,
	gfc_add_component_ref, gfc_class_null_initializer): Moved to class.c.
	* Make-lang.in: Add class.o.
	* symbol.c (gfc_build_class_symbol,add_proc_component,add_proc_comps,
	add_procs_to_declared_vtab1,copy_vtab_proc_comps,
	add_procs_to_declared_vtab,add_generic_specifics,
	add_generics_to_declared_vtab,gfc_find_derived_vtab,
	find_typebound_proc_uop,gfc_find_typebound_proc,
	gfc_find_typebound_user_op,gfc_find_typebound_intrinsic_op,
	gfc_get_tbp_symtree): Move to class.c.

From-SVN: r159506
2010-05-17 20:45:32 +02:00
Rainer Orth
d5d74497b2 Forgot ChangeLog entry for last commit.
From-SVN: r159504
2010-05-17 18:19:17 +00:00
Rainer Orth
b09fd73a00 * config/i386/sol2.h (TARGET_SUN_TLS): Remove duplicate definition.
From-SVN: r159503
2010-05-17 18:18:08 +00:00
Nathan Froyd
58a1185978 tree.h (CALL_EXPR_ARGS): Delete.
* tree.h (CALL_EXPR_ARGS): Delete.
	(call_expr_arglist): Delete.
	* tree.c (call_expr_arglist): Delete.
	* builtins.c (fold_call_expr): Pass the whole CALL_EXPR to
	targetm.fold_builtin.
	* config/alpha/alpha.c (alpha_fold_builtin): Rename arglist parameter.
	Rewrite iteration to work on call_expr_nargs rather than TREE_CHAIN.
	* config/picochip/picochip.c (picochip_expand_builtin_2op): Rename
	arglist parameter.  Use CALL_EXPR_ARG.
	(picochip_expand_builtin_3op): Likewise.
	(picochip_expand_builtin_2opvoid): Likewise.
	(picochip_expand_array_get): Likewise.
	(picochip_expand_array_put): Likewise.
	(picochip_expand_array_testport): Likewise.
	(picochip_expand_builtin): Don't call CALL_EXPR_ARGS.  Pass exp
	rather than arglist.
	* config/rx/rx.c (rx_expand_builtin): Call call_expr_nargs instead of
	CALL_EXPR_ARGS.
	* config/sparc/sparc.c (sparc_fold_builtin): Use CALL_EXPR_ARG rather
	than TREE_VALUE and TREE_CHAIN.
	* config/xtensa/xtensa.c (xtensa_fold_builtin): Likewise.
	* doc/tm.texi (TARGET_FOLD_BUILTIN): Pass CALL_EXPR tree instead of
	the arglist.

From-SVN: r159502
2010-05-17 18:16:27 +00:00
Dodji Seketeli
ad13f2299c re PR c++/44108 (-Wunused-but-set-variable does not consider array sizing use of a const variable)
PR c++/44108
	* decl.c (compute_array_index_type): Call mark_rvalue_use.

	* c-c++-common/Wunused-var-8.c: New test.

Co-Authored-By: Jason Merrill <jason@redhat.com>

From-SVN: r159497
2010-05-17 19:24:32 +02:00
Jakub Jelinek
f145213fcc re PR bootstrap/42347 (sched-deps.c:3840:1: internal compiler error: in fixup_reorder_chain, at cfglayout.c:796)
PR bootstrap/42347
	* cfglayout.c (fixup_reorder_chain): Allow returnjump_p
	to have no fallthru edge.

	* gcc.c-torture/compile/pr42347.c: New test.

From-SVN: r159496
2010-05-17 19:19:46 +02:00
Jakub Jelinek
f1de5107b0 re PR middle-end/44102 (ICE with asm goto + __builtin_unreachable () in C++)
PR middle-end/44102
	* cfgcleanup.c (try_optimize_cfg): When removing trivially empty
	bb with no successors, move footer whenever in IR_RTL_CFGLAYOUT
	mode, not just when CLEANUP_CFGLAYOUT, and when in IR_RTL_CFGRTL
	add BARRIER after previous bb if needed.

	* g++.dg/ext/asmgoto1.C: New test.

From-SVN: r159495
2010-05-17 19:18:24 +02:00
Nathan Froyd
1eabc6beae fix ChangeLog entries for previous commits
From-SVN: r159494
2010-05-17 16:28:51 +00:00
Nathan Froyd
8341deb535 fix bogus email for myself
From-SVN: r159492
2010-05-17 16:10:31 +00:00
Nathan Froyd
b64fca6369 tree.c (build_function_type_list_1): Remove bogus assert condition.
gcc/
	* tree.c (build_function_type_list_1): Remove bogus assert condition.

gcc/fortran/
	* trans-types.c (gfc_init_types): Use build_function_type_list.
	(gfc_get_ppc_type): Likewise.
	* trans-decl.c (gfc_generate_constructors): Likewise.
	* f95-lang.c (build_builtin_fntypes): Likewise.
	(gfc_init_builtin_functions): Likewise.
	(DEF_FUNCTION_TYPE_0): Likewise.
	(DEF_FUNCTION_TYPE_1): Likewise.
	(DEF_FUNCTION_TYPE_2): Likewise.
	(DEF_FUNCTION_TYPE_3): Likewise.
	(DEF_FUNCTION_TYPE_4): Likewise.
	(DEF_FUNCTION_TYPE_5): Likewise.
	(DEF_FUNCTION_TYPE_6): Likewise.
	(DEF_FUNCTION_TYPE_7): Likewise.  Use ARG7.
	(DEF_FUNCTION_TYPE_VAR_0): Use build_varags_function_type_list.

From-SVN: r159491
2010-05-17 16:09:35 +00:00
Nathan Froyd
8748ad99e9 trans-array.c (gfc_trans_array_constructor_value): Use build_constructor instead of build_constructor_from_list.
* trans-array.c (gfc_trans_array_constructor_value): Use
	build_constructor instead of build_constructor_from_list.
	(gfc_build_constant_array_constructor): Likewise.
	* trans-decl.c (create_main_function): Likewise.
	* trans-stmt.c (gfc_trans_character_select): Likewise.

From-SVN: r159490
2010-05-17 16:03:46 +00:00
Alan Modra
2882bfcc5b rs6000.c (rs6000_emit_allocate_stack): Delete unnecessary prototype.
* config/rs6000/rs6000.c (rs6000_emit_allocate_stack): Delete
	unnecessary prototype.  Replace copy_r12 and copy_r11 flag params
	with copy_reg rtx param.
	(rs6000_emit_prologue): Update rs6000_emit_allocate_stack calls.
	Correct cases where code for ABI_V4 did not initialise the reg
	used to access frame.  Also leave frame_reg_rtx as sp for large
	frames that save no regs.

From-SVN: r159483
2010-05-17 23:04:23 +09:30
Martin Jambor
5feb49f0a6 re PR middle-end/44133 (Uninit warning regression with new SRA)
2010-05-17  Martin Jambor  <mjambor@suse.cz>

	PR middle-end/44133
	* tree-sra.c (create_access_replacement): New parameter rename, mark
	the replaement for renaming only when it is true.
	(get_access_replacement): Pass true in the rename parameter of
	create_access_replacement.
	(get_unrenamed_access_replacement): New function.
	(replace_uses_with_default_def_ssa_name): New parameter racc, get the
	replacement declaration from it.

	* testsuite/gcc.dg/tree-ssa/pr44133.c: New test.
	* testsuite/gcc.dg/tree-ssa/sra-9.c: Make the scan regular
	expression more precise.

From-SVN: r159482
2010-05-17 14:48:34 +02:00
Bernd Schmidt
56731d645e function.c (try_fit_stack_local, [...]): New static functions.
* function.c (try_fit_stack_local, add_frame_space): New static
	functions.
	(assign_stack_local_1): Use them.  Look for opportunities to use
	space previously wasted on alignment.
	* function.h (struct frame_space): New.
	(struct rtl_data): Add FRAME_SPACE_LIST member.
	* reload1.c (something_was_spilled): New static variable.
	(alter_reg): Set it.
	(reload): Test it in addition to testing if the frame size changed.

From-SVN: r159480
2010-05-17 11:16:00 +00:00
Paolo Carlini
1041dabaa2 functional (result_of): Move...
2010-05-17  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/std/functional (result_of): Move...
	* include/std/type_traits: ... here.
	* testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
	line number.

From-SVN: r159478
2010-05-17 10:19:31 +00:00