Commit Graph

108895 Commits

Author SHA1 Message Date
Dodji Seketeli
bae14a373c re PR c++/48574 (ICE)
Fix PR c++/48574

gcc/cp/

	PR c++/48574
	* class.c (fixed_type_or_null): Use type_dependent_p_push to test
	if the instance has a dependent initializer.

gcc/testsuite/

	PR c++/48574
	* g++.dg/template/dependent-expr8.C: New test case.

From-SVN: r173570
2011-05-09 14:32:06 +02:00
Uros Bizjak
fb55d62e53 sse.md (*vec_concatv4si): Merge from *vec_concatv4si_1 and *vec_concatv4si_1_avx.
* config/i386/sse.md (*vec_concatv4si): Merge from *vec_concatv4si_1
	and *vec_concatv4si_1_avx.

From-SVN: r173569
2011-05-09 14:16:07 +02:00
Uros Bizjak
eb1485a68b re PR rtl-optimization/48927 (Issues with "enable" attribute and IRA register preferences)
PR rtl-optimization/48927
	* ira-conflicts.c (commutative_constraint_p): Use
	recog_data.alternative_enabled_p to disable alternatives where
	"enabled" attribute is false.
	(get_dup_num): Ditto.
	* ira-lives.c (single_reg_class): Ditto.
	(ira_implicitly_set_insn_hard_regs): Ditto.

From-SVN: r173568
2011-05-09 14:11:25 +02:00
Eric Botcazou
c46d001a91 var-tracking.c (find_mem_expr_in_1pdv): Fix thinko.
* var-tracking.c (find_mem_expr_in_1pdv): Fix thinko.
	(dataflow_set_preserve_mem_locs): Likewise.

From-SVN: r173565
2011-05-09 11:29:26 +00:00
Philipp Thomas
6d9e7c4139 Don't translate syntax example.
From-SVN: r173564
2011-05-09 10:42:23 +00:00
Nick Clifton
61d6def5f8 re PR target/48899 (enum conversion initializing global_options_init.x_iq2000_tune)
PR target/48899
	* config/iq2000/iq2000.opt (iq2000_tune): Initialise to
	PROCESSOR_DEFAULT.

From-SVN: r173562
2011-05-09 10:04:36 +00:00
Joseph Myers
d371df6f10 gcc_update (gcc/config/mips/mips-tables.opt): New dependencies.
contrib:
	* gcc_update (gcc/config/mips/mips-tables.opt): New dependencies.

gcc:
	* config/mips/genopt.sh, config/mips/mips-cpus.def: New files.
	* config/mips/mips-tables.opt: New file (generated).
	* config.gcc (mips*-*-*): Add mips/mips-tables.opt to
	extra_options.
	* config/mips/mips-opts.h (MIPS_ARCH_OPTION_FROM_ABI,
	MIPS_ARCH_OPTION_NATIVE): Define.
	* config/mips/mips.c (mips_cpu_info_table): Move contents to
	mips-cpus.def.
	(mips_strict_matching_cpu_name_p, mips_matching_cpu_name_p,
	mips_parse_cpu): Remove.
	(mips_cpu_info_from_opt, mips_default_arch): New.
	(mips_handle_option): Don't assert that global structures are in
	use.  Don't handle OPT_march_, OPT_mtune_ and OPT_mips here.
	(mips_option_override): Use new variables and functions to set
	state of these options.  Use strcmp to check for individual CPU
	names.
	* config/mips/mips.h (MIPS_CPU_STRING_DEFAULT): Remove default
	definition.
	* config/mips/mips.opt (march=): Use ToLower and Enum.
	(mips): Use ToLower, Enum and Var.
	(mtune=): Use ToLower and Enum.
	* config/mips/t-mips ($(srcdir)/config/mips/mips-tables.opt): New.

From-SVN: r173561
2011-05-09 10:40:19 +01:00
Jan Hubicka
4fc07af967 gimple.c (type_pair_hash, [...]): Arrange type pairs to be UID ordered.
* gimple.c (type_pair_hash, type_pair_eq, lookup_type_pair):
	Arrange type pairs to be UID ordered.
	(gimple_lookup_type_leader): Make inline.

From-SVN: r173560
2011-05-09 08:45:16 +00:00
Nick Clifton
2cf320a89d re PR target/48897 (mn10300.c:extract_bundle’: error: variable ‘s’ set but not used)
PR target/48897
	* config/mn10300/mn10300.c (extract_bundle): Remove spurious local
	variable 's'.

From-SVN: r173559
2011-05-09 08:38:50 +00:00
Doug Kwan
6f57bdf6d6 configure.ac: Propagate LDFLAGS_FOR_TARGET.
2011-05-08  Doug Kwan  <dougkwan@google.com>

	* configure.ac: Propagate LDFLAGS_FOR_TARGET.
	* configure: Regenerated.
	* Makefile.tpl (LDFLAGS_FOR_TARGET): Use LDFLAGS_FOR_TARGET
	value from configure.
	* Makefile.in: Regenerated.

From-SVN: r173558
2011-05-09 07:39:45 +00:00
GCC Administrator
40a7123311 Daily bump.
From-SVN: r173557
2011-05-09 00:19:13 +00:00
Chung-Lin Tang
4f82319dc9 combine.c (simplify_comparison): Abstract out parts into...
2011-05-08  Chung-Lin Tang  <cltang@codesourcery.com>

	* combine.c (simplify_comparison): Abstract out parts into...
	(simplify_compare_const): ... new function.
	(try_combine): Generalize parallel arithmetic/compare combining
	to call simplify_compare_const() and CANONICALIZE_COMPARE().

From-SVN: r173552
2011-05-08 19:30:36 +00:00
Jan Hubicka
74605a11f3 cgraph.c (cgraph_clone_node): Add call_duplication_hook parameter.
* cgraph.c (cgraph_clone_node): Add call_duplication_hook parameter.
	(cgraph_create_virtual_clone): Call hooks once virtual clone is finished.
	* cgraph.h (cgraph_clone_node): Update prototype.
	* ipa-cp.c (ipcp_estimate_growth): Use estimate_ipcp_clone_size_and_time.
	* ipa-inline-transform.c (clone_inlined_nodes): Update.
	* lto-cgraph.c (input_node): Update.
	* ipa-inline.c (recursive_inlining): Update.
	* ipa-inline.h (estimate_ipcp_clone_size_and_time): New function.
	(evaluate_conditions_for_known_args): Break out from ...
	(evaluate_conditions_for_edge): ... here.
	(evaluate_conditions_for_ipcp_clone): New function.
	(inline_node_duplication_hook): Update clone summary based
	on parameter map.
	(estimate_callee_size_and_time): Rename to ...
	(estimate_node_size_and_time): take NODE instead of EDGE;
	take POSSIBLE_TRUTHS as argument.
	(estimate_callee_size_and_time): Update.
	(estimate_ipcp_clone_size_and_time): New function.
	(do_estimate_edge_time): Update.

From-SVN: r173551
2011-05-08 19:14:24 +00:00
Richard Guenther
5c04950727 re PR middle-end/48908 (build fails on cris-elf in libiberty:md5.c, shift-related)
2011-05-08  Richard Guenther  <rguenther@suse.de>

	PR middle-end/48908
	PR middle-end/48905
	* expmed.c (expand_shift_1): Compute adjusted constant shift
	amount manually.

From-SVN: r173550
2011-05-08 15:46:06 +00:00
Paolo Carlini
03a7c1de31 re PR c++/48816 (possible pointless code in file cxx-pretty-print.c, line 2136)
2011-05-08  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/48816
	* cxx-pretty-print.c (pp_cxx_template_declaration): Remove
	effectively unused variable.

From-SVN: r173549
2011-05-08 13:55:07 +00:00
Eric Botcazou
f64c36badc * config/avr/avr.c (print_operand_address): Fix invalid RTL access.
From-SVN: r173548
2011-05-08 09:15:34 +00:00
Eric Botcazou
c461a95732 * config/rs6000/rs6000.c (output_profile_hook): Fix thinko.
From-SVN: r173547
2011-05-08 09:09:34 +00:00
Eric Botcazou
a9bcb3f0ef Fix long lines
From-SVN: r173546
2011-05-08 08:37:58 +00:00
GCC Administrator
1a8058a5f2 Daily bump.
From-SVN: r173543
2011-05-08 00:19:20 +00:00
Jonathan Wakely
7c74e5567b invoke.texi (-fuse-linker-plugin): Improve grammar.
2011-05-08  Jonathan Wakely  <jwakely.gcc@gmail.com>

	* doc/invoke.texi (-fuse-linker-plugin): Improve grammar.

From-SVN: r173538
2011-05-08 00:17:44 +01:00
Jan Hubicka
b4c0a88402 ipa-inline-transform.c (inline_call): Account when program size decreases.
* ipa-inline-transform.c (inline_call): Account when program size decreases.
	* ipa-inline.c (relative_time_benefit): New function.
	(edge_badness): Reorganize to be power 2 based; fix
	thinko when computing badness for negative growth; update
	comments to match reality; better dumps.

From-SVN: r173537
2011-05-07 20:31:37 +00:00
Eric Botcazou
f620bd21a1 * gcc-interface/decl.c (intrin_arglists_compatible_p): Remove spaces.
From-SVN: r173536
2011-05-07 20:20:25 +00:00
Eric Botcazou
c99c002630 langhooks.h (lang_hooks_for_types): Change global_bindings_p's return type to bool and adjust comment.
2011-05-07  Eric Botcazou  <ebotcazou@adacore.com>

	* langhooks.h (lang_hooks_for_types): Change global_bindings_p's return
	type to bool and adjust comment.
	* fold-const.c (fold_range_test): Adjust call to global_bindings_p.
	(fold_mathfn_compare): Remove calls to global_bindings_p.
	(fold_inf_compare): Likewise.
	* stor-layout.c (variable_size): Adjust call to global_bindings_p.
	* c-tree.h (global_bindings_p): Adjust prototype.
	* c-decl.c (global_bindings_p): Return bool and simplify.
ada/
	* gcc-interface/gigi.h (global_bindings_p): Adjust prototype.
	* gcc-interface/utils.c (global_bindings_p): Return bool and simplify.
cp/
	* name-lookup.h (global_bindings_p): Adjust prototype.
	* name-lookup.c (global_bindings_p): Return bool.
fortran/
	* f95-lang.c (global_bindings_p): Return bool and simplify.
go/
	* go-lang.c (global_bindings_p): Return bool and simplify.
java/
	* java-tree.h (global_bindings_p): Adjust prototype.
	* decl.c (global_bindings_p): Return bool.
lto/
	* lto-lang.c (global_bindings_p): Return bool.

From-SVN: r173535
2011-05-07 19:58:29 +00:00
Zdenek Dvorak
1400c8e501 re PR tree-optimization/48837 (Wrong optimization of recursive function calls)
PR tree-optimization/48837
	* tree-tailcall.c (tree_optimize_tail_calls_1): Do not mark tailcalls
	when accumulator transformation is performed.

	* gcc.dg/pr48837.c: New testcase.

From-SVN: r173534
2011-05-07 19:43:18 +00:00
Jan Hubicka
5d0878e70d i386.h (ix86_tune_indices): Add X86_TUNE_SOFTWARE_PREFETCHING_BENEFICIAL.
* i386.h (ix86_tune_indices): Add X86_TUNE_SOFTWARE_PREFETCHING_BENEFICIAL.
	(TARGET_SOFTWARE_PREFETCHING_BENEFICIAL): New macor.
	* i386.c (initial_ix86_tune_features): Add X86_SOFTARE_PREFETCHING_BENEFICIAL.
	(software_prefetching_beneficial_p): Remove predicate.
	(ix86_option_override_internal): Use new macro.

From-SVN: r173533
2011-05-07 14:39:40 +00:00
Jan Hubicka
58696ce5e4 * ipa-inline.c (update_callee_keys): Don't reset node growth cache.
From-SVN: r173532
2011-05-07 14:30:07 +00:00
François Dumont
f5886803ed macro.h (_GLIBCXX_DEBUG_VERIFY_AT): New.
2011-05-07  François Dumont  <francois.cppdevs@free.fr>

	* include/debug/macro.h (_GLIBCXX_DEBUG_VERIFY_AT): New.
	(_GLICXX_DEBUG_VERIFY): Use latter.
	* include/ext/pb_ds/detail/resize_policy/
	hash_load_check_resize_trigger_imp.hpp: Emit assertion on the line
	containing the original assert call.
	* include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp,
	find_fn_imps.hpp, insert_fn_imps.hpp, binomial_heap_base_.hpp,
	constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
	split_join_fn_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/cc_hash_table_map_/
	erase_store_hash_fn_imps.hpp, insert_no_store_hash_fn_imps.hpp,
	find_fn_imps.hpp, insert_store_hash_fn_imps.hpp, debug_fn_imps.hpp,
	debug_no_store_hash_fn_imps.hpp, cc_ht_map_.hpp, resize_fn_imps.hpp,
	constructor_destructor_fn_imps.hpp, debug_store_hash_fn_imps.hpp,
	erase_no_store_hash_fn_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp,
	insert_join_fn_imps.hpp, pat_trie_/head.hpp, debug_fn_imps.hpp,
	constructors_destructor_fn_imps.hpp, pat_trie_.hpp, split_fn_imps.hpp,
	leaf.hpp, erase_fn_imps.hpp, node_base.hpp, internal_node.hpp:
	Likewise.
	* include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp,
	r_erase_fn_imps.hpp, constructors_destructor_fn_imps.hpp,
	debug_fn_imps.hpp, rotate_fn_imps.hpp, erase_fn_imps.hpp,
	bin_search_tree_.hpp, insert_fn_imps.hpp, split_join_fn_imps.hpp:
	Likewise.
	* include/ext/pb_ds/detail/gp_hash_table_map_/
	erase_store_hash_fn_imps.hpp, insert_no_store_hash_fn_imps.hpp,
	find_fn_imps.hpp, gp_ht_map_.hpp, insert_store_hash_fn_imps.hpp,
	debug_fn_imps.hpp, erase_fn_imps.hpp, debug_no_store_hash_fn_imps.hpp,
	resize_fn_imps.hpp, constructor_destructor_fn_imps.hpp,
	debug_store_hash_fn_imps.hpp, erase_no_store_hash_fn_imps.hpp:
	Likewise.
	* include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp,
	constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
	erase_fn_imps.hpp, insert_fn_imps.hpp, binary_heap_.hpp,
	resize_policy.hpp, split_join_fn_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp,
	find_fn_imps.hpp, insert_fn_imps.hpp,
	constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
	pairing_heap_.hpp, split_join_fn_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/binomial_heap_/
	constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
	binomial_heap_.hpp: Likewise.
	* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
	erase_fn_imps.hpp, left_child_next_sibling_heap_.hpp,
	constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp,
	find_fn_imps.hpp, thin_heap_.hpp, insert_fn_imps.hpp,
	constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
	split_join_fn_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp,
	ov_tree_map_.hpp, constructors_destructor_fn_imps.hpp,
	debug_fn_imps.hpp, split_join_fn_imps.hpp, info_fn_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/debug_map_base.hpp: Likewise.
	* include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp,
	find_fn_imps.hpp, insert_fn_imps.hpp,
	constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
	splay_fn_imps.hpp, split_join_fn_imps.hpp, splay_tree_.hpp: Likewise.
	* include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp,
	find_fn_imps.hpp, lu_map_.hpp, constructor_destructor_fn_imps.hpp,
	insert_fn_imps.hpp, debug_fn_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp,
	rc_binomial_heap_.hpp, insert_fn_imps.hpp,
	constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp, rc.hpp,
	split_join_fn_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp,
	insert_fn_imps.hpp, constructors_destructor_fn_imps.hpp,
	debug_fn_imps.hpp, rb_tree_.hpp, split_join_fn_imps.hpp: Likewise.
	* include/ext/pb_ds/hash_policy.hpp: Likewise.

From-SVN: r173529
2011-05-07 13:45:24 +00:00
Tobias Burnus
6f4d39bb3f re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
2011-05-07  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        PR fortran/48919
        * trans.h: Move gfc_init_coarray_decl prototype ...
        * gfortran.h: ... to here.
        * parse.c (translate_all_program_units): Call
        * gfc_init_coarray_decl.
        (gfc_parse_file): Update translate_all_program_units call.
        * trans-decl.c (gfc_init_coarray_decl): Fix variable
        * declaration,
        new argument whether DECL_EXTERNAL should be used.
        (create_main_function): Update gfc_init_coarray_decl call.
        * trans-intrinsic.c (trans_this_image, trans_image_index,
        conv_intrinsic_cobound): Ditto.

From-SVN: r173528
2011-05-07 07:38:08 +02:00
GCC Administrator
9142588a73 Daily bump.
From-SVN: r173525
2011-05-07 00:19:13 +00:00
Ian Lance Taylor
5b735706d7 Use backend types for all type conversions.
From-SVN: r173520
2011-05-07 00:12:32 +00:00
Jan Hubicka
c47d00347d cgraph.c (cgraph_add_thunk): Create real function node instead of alias node...
* cgraph.c (cgraph_add_thunk): Create real function node instead
	of alias node; finalize it and mark needed/reachale; arrange visibility
	to be right and add it into the corresponding same comdat group list.
	(dump_cgraph_node): Dump thunks.
	* cgraph.h (cgraph_first_defined_function, cgraph_next_defined_function,
	cgraph_function_with_gimple_body_p, cgraph_first_function_with_gimple_body,
	cgraph_next_function_with_gimple_body): New functions.
	(FOR_EACH_FUNCTION_WITH_GIMPLE_BODY, FOR_EACH_DEFINED_FUNCTION):
	New macros.
	* ipa-cp.c (ipcp_need_redirect_p): Thunks can't be redirected.
	(ipcp_generate_summary): Use FOR_EACH_FUNCTION_WITH_GIMPLE_BODY.
	* cgraphunit.c (cgraph_finalize_function): Only look into possible
	devirtualization when optimizing.
	(verify_cgraph_node): Verify thunks.
	(cgraph_analyze_function): Analyze thunks.
	(cgraph_mark_functions_to_output): Output thunks only in combination
	with function they are assigned to.
	(assemble_thunk): Turn thunk into non-thunk; don't try to turn
	alias into normal node.
	(assemble_thunks): New functoin.
	(cgraph_expand_function): Use it.
	* lto-cgraph.c (lto_output_node): Stream thunks.
	(input_overwrite_node): Stream in thunks.
	* ipa-pure-const.c (analyze_function): Thunks do nothing interesting.
	* lto-streamer-out.c (lto_output): Do not try to output thunk's body.
	* ipa-inline.c (inline_small_functions): Use FOR_EACH_DEFINED_FUNCTION.
	* ipa-inline-analysis.c (compute_inline_parameters): "Analyze" thunks.
	(inline_analyze_function): Do not care about thunk jump functions.
	(inline_generate_summary):Use FOR_EACH_DEFINED_FUNCTION.
	* ipa-prop.c (ipa_prop_write_jump_functions): Use cgraph_function_with_gimple_body_p.
	* passes.c (do_per_function_toporder): Use cgraph_function_with_gimple_body_p.
	(execute_one_pass);Use FOR_EACH_FUNCTION_WITH_GIMPLE_BODY.
	(ipa_write_summaries): Use cgraph_function_with_gimple_body_p.
	(function_called_by_processed_nodes_p): Likewise.
	* lto.c (lto_materialize_function): Use cgraph_function_with_gimple_body_p.
	(add_cgraph_node_to_partition): Do not re-add items to partition; handle thunks.
	(add_varpool_node_to_partition): Do not re-add items to partition.

From-SVN: r173517
2011-05-06 23:00:49 +00:00
Jason Merrill
e68dde1f40 decl.c (stabilize_save_expr_r): Set *walk_subtrees as appropriate.
* decl.c (stabilize_save_expr_r): Set *walk_subtrees as
	appropriate.

From-SVN: r173512
2011-05-06 17:57:56 -04:00
Jason Merrill
9e33e3210a re PR c++/48909 ([C++0x] ICE in cxx_eval_conditional_expression, at cp/semantics.c:6213)
PR c++/48909
	* semantics.c (cxx_eval_conditional_expression): Check
	integer_zerop/onep instead.

From-SVN: r173511
2011-05-06 17:57:49 -04:00
Jason Merrill
c80e3e0267 re PR c++/48911 ([C++0x] Error for valid array subscript)
PR c++/48911
	* semantics.c (cxx_eval_array_reference): Handle implicit
	initializers.

From-SVN: r173510
2011-05-06 17:57:41 -04:00
Joseph Myers
d8f426ecc9 rs6000.opt (rs6000_ieeequad, [...]): Remove TargetVariable entries.
* config/rs6000/rs6000.opt (rs6000_ieeequad, rs6000_altivec_abi,
	rs6000_spe_abi, rs6000_darwin64_abi): Remove TargetVariable
	entries.
	(mabi=): Replace with separate entries for mabi=altivec,
	mabi=no-altivec, mabi=spe, mabi=no-spe, mabi=d64, mabi=d32,
	mabi=ieeelongdouble and mabi=ibmlongdouble.
	* config/rs6000/rs6000.c (rs6000_option_override_internal): Move
	check for -mabi=spe without SPE ABI support here.
	(rs6000_handle_option): Replace OPT_mabi_ handling with
	OPT_mabi_altivec and OPT_mabi_spe handling.

From-SVN: r173509
2011-05-06 21:34:13 +01:00
Ian Lance Taylor
4e7e7a49b7 More uses of backend interface for types.
From-SVN: r173507
2011-05-06 20:06:29 +00:00
Tobias Burnus
c81e79b590 re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
2011-05-06  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * trans-array.c (gfc_walk_variable_expr): Continue walking
        for scalar coarrays.
        * trans-intrinsic.c (convert_element_to_coarray_ref): New
        * function.
        (trans_this_image, trans_image_index, conv_intrinsic_cobound): Use it.
        (trans_this_image): Fix algorithm.
        * trans-types.c (gfc_get_element_type,
        * gfc_get_array_descriptor_base,
        gfc_sym_type): Handle scalar coarrays.

2011-05-06  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * gfortran.dg/coarray/this_image_2.f90: New.

From-SVN: r173506
2011-05-06 20:39:08 +02:00
Tobias Burnus
cc9ae24cbe re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
2011-05-06  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * caf/libcaf.h: Cleanup headers.
        (_gfortran_caf_critical, _gfortran_caf_end_critical): Make stub.
        (caf_register_t): New enum.
        (_gfortran_caf_register, _gfortran_caf_deregister): New prototype.
        * caf/single.c (_gfortran_caf_critical,
        _gfortran_caf_end_critical): Remove.
        (_gfortran_caf_register, _gfortran_caf_deregister): New functions.
        * caf/mpi.c (_gfortran_caf_critical,
        _gfortran_caf_end_critical): Remove.
        (_gfortran_caf_register, _gfortran_caf_deregister): New functions.
        (caf_world_window): Remove global variable.
        (_gfortran_caf_init): Fix off-by-one error of this_image.

From-SVN: r173505
2011-05-06 20:35:00 +02:00
Tobias Burnus
7b040949f6 Really commit:
2011-05-06  Tobias Burnus  <burnus@net-b.de>
    
        PR fortran/48858
        PR fortran/48820
        * gfortran.dg/bind_c_usage_24.f90: New.
        * gfortran.dg/bind_c_usage_24_c.c: New.

From-SVN: r173503
2011-05-06 20:33:31 +02:00
Ian Lance Taylor
1f94e0c6f7 Use backend interface for string types.
From-SVN: r173502
2011-05-06 18:30:11 +00:00
Tobias Burnus
2e8d9212da re PR fortran/48858 (Incorrect error for same binding label on two generic interface specifics)
2011-05-06  Tobias Burnus  <burnus@net-b.de>

        PR fortran/48858
        PR fortran/48820
        * lang.opt (std=f2008tr): New.
        * libgfortran.h (GFC_STD_F2008_TR): New macro constant.
        * decl.c (verify_c_interop_param): Allow OPTIONAL in BIND(C)
        procedures for -std=f2008tr/gnu/legacy.

2011-05-06  Tobias Burnus  <burnus@net-b.de>

        PR fortran/48858
        PR fortran/48820
        * gfortran.dg/bind_c_usage_22.f90: New.
        * gfortran.dg/bind_c_usage_23.f90: New.
        * gfortran.dg/bind_c_usage_24.f90: New.
        * gfortran.dg/bind_c_usage_24_c.c: New.

From-SVN: r173500
2011-05-06 20:12:25 +02:00
Cary Coutant
80bde45b08 dwarf2out.c (contains_subprogram_definition): New function.
* dwarf2out.c (contains_subprogram_definition): New function.
	(should_move_die_to_comdat): Call it.

From-SVN: r173497
2011-05-06 10:34:01 -07:00
Nathan Froyd
7e1352fe55 introduce {class,type}_of_this_parm functions
introduce {class,type}_of_this_parm functions
	* cp-tree.h (type_of_this_parm, class_of_this_parm): New functions.
	* call.c (standard_conversion): Call class_of_this_parm.
	* cxx-pretty-print.c (pp_cxx_implicit_parameter_type): Likewise.
	(pp_cxx_direct_abstract_declarator): Likewise.
	* decl2.c (change_return_type): Likewise.
	(cp_reconstruct_complex_type): Likewise.
	* error.c (dump_type_suffix, dump_function_decl): Likewise.
	* mangle.c (write_function_type): Likewise.
	* pt.c (unify): Likewise.
	* typeck.c (merge_types, type_memfn_quals): Likewise.
	* decl.c (build_this_parm): Call type_of_this_parm.

From-SVN: r173496
2011-05-06 17:03:08 +00:00
Paolo Carlini
54cc9874fd named_equivalence.cc: Fix.
2011-05-06  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/22_locale/messages_byname/named_equivalence.cc: Fix.

From-SVN: r173494
2011-05-06 15:55:39 +00:00
Jeff Law
a91926b9ff tree-ssa-threadupdate.c (create_block_for_threading): Do not call remove_ctrl_stmt_and_useless_edges.
* tree-ssa-threadupdate.c (create_block_for_threading): Do not call
	remove_ctrl_stmt_and_useless_edges.
	(create_duplicates): Call remove_ctrl_stmt_and_useless_edges.
	(fixup_template_block, thread_single_edge): Likewise.
	(mark_threaded_blocks): Use THREAD_TARGET.

From-SVN: r173492
2011-05-06 09:13:35 -06:00
Alan Modra
1fc1b66d4a re PR target/48900 (unnecessary duplicate __tls_get_addr calls)
PR target/48900
	* config/rs6000/rs6000.c (rs6000_legitimize_tls_address): Use
	const0_rtx as the arg to the dummy __tls_get_addr libcall.

From-SVN: r173488
2011-05-06 23:51:16 +09:30
Uros Bizjak
e194de64ac i386.md (*movdf_internal_nointeger): Apply "*" constraint modifier to "r".
* config/i386/i386.md (*movdf_internal_nointeger): Apply "*"
	constraint modifier to "r".

From-SVN: r173485
2011-05-06 13:32:53 +02:00
Joseph Myers
d740dc9ea3 rs6000.c (rs6000_handle_option): Don't handle and fall through for OPT_mcmodel_.
* config/rs6000/rs6000.c (rs6000_handle_option): Don't handle and
	fall through for OPT_mcmodel_.

From-SVN: r173484
2011-05-06 12:19:45 +01:00
Andreas Krebbel
cab78b151c s390.c (s390_asm_trampoline_template): Comment instruction sizes.
2011-05-06  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* config/s390/s390.c (s390_asm_trampoline_template): Comment
	instruction sizes.
	(s390_trampoline_init): Replace UNITS_PER_WORD with
	UNITS_PER_LONG.

From-SVN: r173483
2011-05-06 11:12:27 +00:00
Ramana Radhakrishnan
ee6824ae01 re PR target/47930 (-marm is undocumented; driver accepts -mno-thumb)
2011-05-06  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>

      PR target/47930
      * config/arm/arm.opt (marm): Document it.
      (mthumb): Reject negative variant.

From-SVN: r173481
2011-05-06 10:56:32 +00:00