Commit Graph

116361 Commits

Author SHA1 Message Date
Richard Sandiford 9fc37b2b7b rtl.def (ADDRESS): Turn operand into a HOST_WIDE_INT.
gcc/
	* rtl.def (ADDRESS): Turn operand into a HOST_WIDE_INT.
	* alias.c (reg_base_value): Expand and update comment.
	(arg_base_value): New variable.
	(unique_id): Move up file.
	(unique_base_value, unique_base_value_p, known_base_value_p): New.
	(find_base_value): Use arg_base_value and known_base_value_p.
	(record_set): Document REG_NOALIAS handling.  Use unique_base_value.
	(find_base_term): Use known_base_value_p.
	(base_alias_check): Use unique_base_value_p.
	(init_alias_target): Initialize arg_base_value.  Use unique_base_value.
	(init_alias_analysis): Use 1 as the first id for REG_NOALIAS bases.

From-SVN: r186540
2012-04-17 17:01:02 +00:00
Benjamin Kosnik ac9ce934ed 808590.cc: New.
2012-04-17  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/20_util/specialized_algorithms/uninitialized_copy/
	808590.cc: New.

From-SVN: r186539
2012-04-17 16:41:40 +00:00
Pat Haugen 9f89e66ec3 rs6000.h (SLOW_UNALIGNED_ACCESS): Remove DImode.
* config/rs6000/rs6000.h (SLOW_UNALIGNED_ACCESS): Remove DImode.

From-SVN: r186534
2012-04-17 15:38:10 +00:00
Michael Matz 7d75abc8ea re PR tree-optimization/18437 (vectorizer failed for matrix multiplication)
PR tree-optimization/18437

	* tree-vectorizer.h (_stmt_vec_info.stride_load_p): New member.
	(STMT_VINFO_STRIDE_LOAD_P): New accessor.
	(vect_check_strided_load): Declare.
	* tree-vect-data-refs.c (vect_check_strided_load): New function.
	(vect_analyze_data_refs): Use it to accept strided loads.
	* tree-vect-stmts.c (vectorizable_load): Ditto and handle them.

testsuite/
	* gfortran.dg/vect/rnflow-trs2a2.f90: New test.

From-SVN: r186530
2012-04-17 13:54:26 +00:00
Richard Guenther efa26eaae3 re PR rtl-optimization/53011 (ice in verify_loop_structure: bad sizes)
2012-04-17  Richard Guenther  <rguenther@suse.de>

	PR middle-end/53011
	* tree-eh.c (cleanup_empty_eh_merge_phis): Properly discard
	loops when redirecting an entry or latch edge.

	* g++.dg/torture/pr53011.C: New testcase.

From-SVN: r186529
2012-04-17 13:42:48 +00:00
Bernd Schmidt d51e8a2df2 sel-sched.c (sel_global_init): Revert previous change.
* sel-sched.c (sel_global_init): Revert previous change.
his line, and those below, will be ignored--

M    ChangeLog
M    sel-sched.c

From-SVN: r186528
2012-04-17 13:40:01 +00:00
Richard Guenther d8279b12d8 tree-flow.h (array_at_struct_end_p): Move declaration ...
2012-04-17  Richard Guenther  <rguenther@suse.de>

	* tree-flow.h (array_at_struct_end_p): Move declaration ...
	* tree.h (array_at_struct_end_p): ... here.
	* tree-ssa-loop-niter.c (array_at_struct_end_p): Move ...
	* expr.c (array_at_struct_end_p): ... here.  Rewrite.

From-SVN: r186527
2012-04-17 13:33:41 +00:00
Steven Bosscher c5c20c556b stmt.c (cost_table_, [...]): Remove.
* stmt.c (cost_table_, use_cost_table, cost_table_initialize,
	COST_TABLE): Remove.
	(estimate_case_costs): Remove.
	(expand_case): Do not call estimate_case_costs
	to set use_cost_table.
	(balance_case_nodes): Do not use use_cost_table.

From-SVN: r186526
2012-04-17 12:02:30 +00:00
Jan Hubicka 1ab24192d5 cgraph.c (cgraph_hash, [...]): Remove.
* cgraph.c (cgraph_hash, assembler_name_hash): Remove.
	(hash_node, eq_node): Remove.
	(cgraph_create_node): Do not handle hashtable.
	(cgraph_get_node): Remove.
	(cgraph_insert_node_to_hashtable): Remove.
	(hash_node_by_assembler_name): Remove.
	(eq_assembler_name): Remove.
	(cgraph_node_for_asm): Rewrite.
	(cgraph_find_replacement_node): Break out from ...
	(cgraph_remove_node): ... here; do not maintain hashtables.
	(change_decl_assembler_name): Remove.
	(cgraph_clone_node): Do not maintain hashtables.
	* cgraph.h (const_symtab_node): New typedef.
	(cgraph_insert_node_to_hashtable): Remove.
	(symtab_get_node, symtab_node_for_asm,
	symtab_insert_node_to_hashtable): Declare.
	(cgraph_find_replacement_node): Declare.
	(cgraph_get_node, varpool_get_node): Turn into inlines.
	(cgraph, varpool): Work sanely on NULL pointers.
	(FOR_EACH_SYMBOL): New walker.
	* ipa-inline-transform.c (save_inline_function_body): Use
	symtab_insert_node_to_hashtable.
	* symtab.c: Include ggc.h and diagnostics.h
	(symtab_hash, assembler_name_hash): New static vars;
	(hash_node, eq_node, hash_node_by_assembler_name,
	eq_assembler_name, insert_to_assembler_name_hash,
	unlink_from_assembler_name_hash): New.
	(symtab_register_node): Update hashtables.
	(symtab_insert_node_to_hashtable): New.
	(symtab_unregister_node): Update hashtables.
	(symtab_get_node): New.
	(symtab_node_for_asm): New.
	(change_decl_assembler_name): New.
	* Makefile.in (symtab.o): Needs GTY.
	* varpool.c (varpool_hash): Remove.
	(hash_varpool_node, eq_varpool_node, varpool_get_node): Remove.
	(varpool_node): Rewrite using varpool_get_node.
	(varpool_remove_node): DO not maintain hashtables.
	(varpool_node_for_asm); Rewrite.

From-SVN: r186525
2012-04-17 10:53:22 +00:00
Rainer Orth 332781bba5 Fix merging default libstdc++.log
* testsuite/util/testsuite_abi.cc (compare_symbols): Change
	summary header to avoid confusion with DejaGnu header.

From-SVN: r186524
2012-04-17 10:21:25 +00:00
Sandra Loosemore 0d63b6432c invoke.texi: Copy-edit to put verbs in the present tense when...
2012-04-16  Sandra Loosemore  <sandra@codesourcery.com>

	gcc/
	* doc/invoke.texi:  Copy-edit to put verbs in the present tense
	when describing the current behavior of GCC.

From-SVN: r186523
2012-04-16 22:34:20 -04:00
Jason Merrill 1561ad74c1 re PR c++/38543 ([C++0x] Cannot specialize variadic template function)
PR c++/38543
	* pt.c (determine_specialization): Instead of comparing the number
	of parms, check that tsubst gives the right answer.

From-SVN: r186522
2012-04-16 22:29:51 -04:00
Jason Merrill 54aa834f49 re PR c++/52008 ([Core/1495] ICE when adding partial specialization for variadic-templated structure)
PR c++/52008
	* pt.c (process_partial_specialization): Complain about a partial
	specialization with fewer args than primary template parms.

From-SVN: r186521
2012-04-16 22:29:43 -04:00
Jason Merrill 3ab97d92fc re PR c++/50830 ([c++0x] Variadic template, inner class error)
PR c++/50830
	* pt.c (convert_template_argument): Handle template template
	argument packs.

From-SVN: r186520
2012-04-16 22:29:35 -04:00
Jason Merrill 99d4f8f704 re PR c++/50303 ([C++0x] Segfault with variadic template template parameters)
PR c++/50303
	* pt.c (tsubst_pack_expansion): Use tsubst_expr for template
	template parameters.

From-SVN: r186519
2012-04-16 22:29:27 -04:00
GCC Administrator a49870d5b2 Daily bump.
From-SVN: r186516
2012-04-17 00:18:00 +00:00
Ian Lance Taylor 2dfc736cc7 compiler: fix infinite recursion in string constant evaluation.
Fixes compilation of incorrect code:
    const f, g = g, f
    func S() []byte { return []byte(f) }

The problem was already handled for numerical constants.

Part of issue 3186 (go).

From-SVN: r186511
2012-04-16 23:05:40 +00:00
Tobias Burnus 4a1016814c [multiple changes]
2012-04-12  Tobias Burnus  <burnus@net-b.de>

        PR fortran/52864
        * expr.c (gfc_check_vardef_context): Fix assignment check for
        pointer components.

2012-04-16  Tobias Burnus  <burnus@net-b.de>

        PR fortran/52864
        * gfortran.dg/pointer_intent_6.f90: New.

From-SVN: r186507
2012-04-16 23:47:35 +02:00
Tobias Burnus de86e0a5d3 re PR fortran/52916 (481.wrf in SPEC CPU 2006 failed to build)
2012-04-16  Tobias Burnus  <burnus@net-b.de>

        PR fortran/52916
        * gfortran.dg/public_private_module_3.f90: Use dg-additional-sources
        to include public_private_module_4.f90.
        * gfortran.dg/public_private_module_4.f90: Skip this test on all
        targets

From-SVN: r186506
2012-04-16 23:38:49 +02:00
Richard Sandiford 6b338d0ac4 genemit.c (gen_exp): Remove ADDRESS handling.
gcc/
	* genemit.c (gen_exp): Remove ADDRESS handling.
	* genoutput.c (scan_operands): Likewise.
	* genpeep.c (match_rtx): Likewise.
	* genrecog.c (add_to_sequence): Likewise.

From-SVN: r186503
2012-04-16 18:52:05 +00:00
David Edelsohn a0bc8f9c28 install.texi (Specific, *-ibm-aix*): Update assembler bug status.
* doc/install.texi (Specific, *-ibm-aix*): Update assembler bug
        status.

From-SVN: r186502
2012-04-16 14:43:00 -04:00
Martin Jambor 36e57e16d9 tree-sra.c (build_ref_for_model): Create COMPONENT_REFs only for bit-fields.
2012-04-16  Martin Jambor  <mjambor@suse.cz>

	* tree-sra.c (build_ref_for_model): Create COMPONENT_REFs only for
	bit-fields.

From-SVN: r186501
2012-04-16 18:04:45 +02:00
Paolo Carlini 051b40ff6b re PR c++/49152 (pretty printer cannot handle iterators and other complex expressions)
/cp
2012-04-16  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/49152
	* call.c (op_error): Print types; when flag_diagnostics_show_caret
	is false print expressions too.
	(op_error_string): Add.

/testsuite
2012-04-16  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/49152
	* g++.dg/diagnostic/operator1.C: New.
	* g++.dg/ext/label5.C: Adjust.
	* g++.dg/ext/va-arg1.C: Likewise.
	* g++.dg/other/error20.C: Likewise.
	* g++.dg/other/error20.C: Likewise.
	* g++.dg/other/error16.C: Likewise.
	* g++.dg/other/error10.C: Likewise.
	* g++.dg/parse/error30.C: Likewise.
	* g++.dg/cpp0x/lambda/lambda-err1.C: Likewise.

From-SVN: r186499
2012-04-16 15:32:22 +00:00
Ulrich Weigand d6cb05db2e re PR target/51819 (Neon wrong code generation, Error: unsupported alignment for instruction -- `vst1.32 {d2[0]},[r0:64]')
2012-04-16  Ulrich Weigand  <ulrich.weigand@linaro.org>

	PR target/51819
	* config/arm/arm.c (arm_print_operand): Fix invalid alignment
	hints for 'A' operand types.

From-SVN: r186498
2012-04-16 15:19:43 +00:00
Rainer Orth 034a3fcd14 Use target_alias in validate_failures.py
* testsuite-management/validate_failures.py (GetBuildData): Use
	target_alias.

From-SVN: r186497
2012-04-16 14:49:00 +00:00
Jan Hubicka 2aae768068 cgraph.h (symtab_node_base): Add next and previous pointers.
* cgraph.h (symtab_node_base): Add next and previous pointers.
	(cgraph_node): Remove next and preivous pointers.
	(varpool_node): Likewise; remove next/previous GTY marker;
	it is not type safe.
	(symtab_node_def): Update GTY marker
	(x_cgraph_nodes, cgraph_nodes): Remove.
	(symtab_nodes): New function.
	(cgraph_order): Rename to ...
	(symtab_order): ... this one.
	(symtab_register_node, symtab_unregister_node, symtab_remove_node):
	Declare.
	(x_varpool_nodes, varpool_nodes): Remove.
	(FOR_EACH_STATIC_VARIABLE): Update.
	(symtab_function_p, symtab_variable_p): New function.
	(FOR_EACH_VARIABLE): Update.
	(varpool_first_variable, varpool_next_variable): New functions.
	(FOR_EACH_VARIABLE): Update.
	(cgraph_first_defined_function): Update.
	(cgraph_next_defined_function, cgraph_next_defined_function): Update.
	(FOR_EACH_DEFINED_FUNCTION, FOR_EACH_FUNCTION): Update.
	(cgraph_first_function, cgraph_next_function): New.
	(FOR_EACH_FUNCTION): Update.
	(cgraph_first_function_with_gimple_body,
	cgraph_next_function_with_gimple_body): Update.
	* symtab.c: New file.
	* cgraph.c: Update copyright dates.
	(x_cgraph_nodes, cgraph_order): Remove.
	(NEXT_FREE_NODE): Update.
	(SET_NEXT_FREE_NODE): New.
	(cgraph_create_node_1): Remove common code.
	(cgraph_create_node); Remove common code; call symtab_register_node.
	(cgraph_remove_node): Remove common code; call symtab_unregister-node.
	(cgraph_add_asm_node); update.
	(cgraph_clone_node): Register new node.
	* cgraphunit.c (process_function_and_variable_attributes): Update.
	(cgraph_analyze_functions): Update.
	(cgraph_analyze_functions): Update.
	(cgraph_output_in_order): Update.
	* lto-cgraph.c (input_node, input_varpool_node, input_cgraph_1): Update.
	* ipa-inline.c (recursive_inlining); update.
	* lto-streamer-in.c (lto_input_toplevel_asms); Update.
	* ipa.c (cgraph_remove_unreachable_nodes): Update.
	* Makefile.in: Add symtab.o
	* varpool.c (x_varpool_nodes): Remove
	(varpool_node): Remove common code; call symtab_register_node.
	(varpool_remove_node); Remove common code; call symtab_unregister_node.

From-SVN: r186496
2012-04-16 14:34:22 +00:00
Jason Merrill 1c4010c6d6 re PR c++/51148 ([C++0x] Unexpanded template param packs wrongly accepted in friend class declarations)
PR c++/51148
	* friend.c (make_friend_class): Call check_for_bare_parameter_packs.

From-SVN: r186495
2012-04-16 10:15:36 -04:00
Richard Guenther ac9a074c72 re PR c/52977 (internal compiler error: Segmentation fault with `-x c-header' or `-x cxx-header' option)
2012-04-16  Richard Guenther  <rguenther@suse.de>

	PR middle-end/52977
	* tree.h (VECTOR_CST_NELTS): Adjust.
	(struct tree_vector): Add explicit length field.
	(make_vector_stat): Declare.
	(make_vector): Define.
	* tree.c (make_vector_stat): New function.
	(build_vector_stat): Use it.
	* tree-streamer-in.c (streamer_alloc_tree): Likewise.

From-SVN: r186494
2012-04-16 13:21:30 +00:00
Bill Schmidt fba621209f re PR tree-optimization/52976 (Revision 186384 breaks the polyhedron tests aermod.f90 and doduc.f90 at -O3 -ffast-math)
2012-04-16  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	PR tree-optimization/52976
	* tree-ssa-reassoc.c (add_to_ops_vec_max_rank): New function.
	(undistribute_ops_list): Ops with repeat counts aren't eligible for
	undistribution.
	(attempt_builtin_powi): Call add_to_ops_vec_max_rank.

From-SVN: r186493
2012-04-16 12:15:50 +00:00
Jan Hubicka 65c70e6b03 cgraph.h (FOR_EACH_VARIABLE, [...]): New macros.
* cgraph.h (FOR_EACH_VARIABLE, FOR_EACH_VARIABLE, FOR_EACH_FUNCTION):
	New macros.
	* lto-symtab.c (lto_symtab_merge_cgraph_nodes): Use FOR_EACH
	walkers to walk cgraph and varpool.
	* cgraph.c (cgraph_node_for_asm): Likewise.
	(dump_cgraph): Likewise.
	* value-prof.c (init_node_map): Likewise.
	* tree.c (free_lang_data_in_cgraph): Likewise.
	* tree-emutls.c: (ipa_lower_emutls): Likewise.
	* ipa-reference.c (generate_summary, propagate): Likewise.
	* cgraphunit.c (verify_cgraph, cgraph_process_same_body_aliases,
	cgraph_mark_functions_to_output, cgraph_output_in_order,
	output_weakrefs, cgraph_materialize_all_clones,
	cgraph_optimize): Likewise.
	* lto-cgraph.c (merge_profile_summaries): Likewise.
	(input_cgraph): Likewise.
	* ipa-pure-const.c (generate_summary): Likewise.
	(propagate): Likwise.
	* ipa-utils.c (ipa_reduced_postorder): Likewise.
	(ipa_free_postorder_info): Likewise.
	(ipa_reverse_postorder): Likewise.
	* ipa-inline.c (ipa_inline): Likewise.
	* matrix-reorg.c (find_matrices_decl): Likewise.
	(matrix_reorg): Likewise.
	* tree-vectorizer.c (increase_alignment): Likewise.
	* ipa.c (cgraph_remove_unreachable_nodes): Likewise.
	(function_and_variable_visibility): Likewise.
	(whole_program_function_and_variable_visibility): Likewise.
	(ipa_cdtor_merge): Likewise.
	* trans-mem.c (ipa_tm_execute): Likewise.
	* ipa-inline-analysis.c (dump_inline_summaries): Likewise.
	* ipa-prop.c (ipa_print_all_jump_functions): Likewise.
	(ipa_print_all_params): Likewise.
	(ipa_update_after_lto_read): Likewise.
	* tree-profie.c (tree_profiling): Likewise.
	* tree-ssa-structalias.c (ipa_pta_execute): Likewise.
	* passes.c (dump_passes): Likewise.
	(do_per_function): Likewise.
	(ipa_write_summaries): Likewise.
	* varpool.c (dump_varpool): Likewise.
	(varpool_node_for_asm): Likewise.
	(varpool_assemble_pending_decls): Likewise.


	* decl2.c (collect_candidates_for_java_method_alias): Use FOR_EACH
        walkers to walk cgraph and varpool.

	* lto.c (read_cgraph_and_symbols): Use FOR_EACH
        walkers to walk cgraph and varpool.
	(materialize_cgraph): Likewise.
	* lto-partition.c (lto_1_to_1_map): Likewise.
	(lto_balanced_map): Likewise.
	(lto_promote_cross_file_statics): Likewise.

From-SVN: r186492
2012-04-16 12:04:17 +00:00
Richard Guenther 8b7db2596e re PR tree-optimization/52975 (Ofast produces not optimized code for vectorized "converted if")
2012-04-16  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/52975
	* tree-if-conv.c (predicate_bbs): Do not simplify inverted
	condition but always mark it with TRUTH_NOT_EXPR.

From-SVN: r186491
2012-04-16 11:03:16 +00:00
Rainer Orth 3be7407913 Fix plugin testsuite, remove uses of TODO_dump_func (PR testsuite/52948)
* lib/plugin-support.exp (plugin-test-execute): Properly determine
	testcase name.
	Use fail, pass instead of unresolved.
	Don't log $optstr.

	PR testsuite/52948
	* g++.dg/plugin/dumb_plugin.c (pass_dumb_plugin_example): Remove
	TODO_dump_func.
	* g++.dg/plugin/selfassign.c (pass_warn_self_assign): Likewise.
	* gcc.dg/plugin/one_time_plugin.c (one_pass): Likewise.
	* gcc.dg/plugin/selfassign.c (pass_warn_self_assign): Likewise.

From-SVN: r186490
2012-04-16 10:14:40 +00:00
Richard Guenther 2515d91645 re PR tree-optimization/52975 (Ofast produces not optimized code for vectorized "converted if")
2012-04-16  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/52975
	* tree-ssa-forwprop.c (combine_cond_exprs): New function.
	(ssa_forward_propagate_and_combine): Call it for COND_EXPRs
	and VEC_COND_EXPRs.  Also combine into VEC_COND_EXPRs condition.
	* fold-const.c (operand_equal_p): Handle TARGET_MEM_REF.

From-SVN: r186488
2012-04-16 09:25:14 +00:00
Janus Weil 42ff605a7b re PR fortran/52968 ([OOP] Call to type-bound procedure wrongly rejected)
2012-04-16  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/52968
	* class.c (gfc_build_class_symbol): Make sure the 'f2k_derived'
	namespace is present.


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

	PR fortran/52968
	* gfortran.dg/typebound_call_23.f03: New test case.

From-SVN: r186486
2012-04-16 10:48:11 +02:00
Jason Merrill 56992a7883 re PR c++/47220 ([C++0x] no error on unterminated template argument list for variadic parameter)
PR c++/47220
	* pt.c (coerce_template_parameter_pack): Check for error_mark_node.

From-SVN: r186480
2012-04-15 23:18:17 -04:00
Jason Merrill f905751487 re PR c++/52292 ([C++11] Variadic template expansion into fixed template causes constructor to not match)
PR c++/52292
	PR c++/52380
	* pt.c (coerce_template_parms): Even if we aren't converting we
	want to expand argument packs.

From-SVN: r186479
2012-04-15 23:18:06 -04:00
GCC Administrator 51c8ebb3fb Daily bump.
From-SVN: r186478
2012-04-16 00:18:34 +00:00
Paolo Carlini 6a9ecd3492 re PR libstdc++/52702 ([C++11] std::is_trivially_destructible is missing)
2012-04-15  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/52702
	* include/std/type_traits (is_trivially_destructible): Add.
	(has_trivial_destructor): Remove.
	* testsuite/util/testsuite_common_types.h: Adjust.
	* testsuite/20_util/tuple/requirements/dr801.cc: Likewise.
	* testsuite/20_util/pair/requirements/dr801.cc: Likewise.
	* testsuite/20_util/is_trivially_destructible/value.cc: New.
	* testsuite/20_util/is_trivially_destructible/requirements/
	typedefs.cc: Likewise.
	* testsuite/20_util/is_trivially_destructible/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
	Adjust dg-error line numbers.
	* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
	Likewise.
	* testsuite/20_util/declval/requirements/1_neg.cc: Likewise.

From-SVN: r186474
2012-04-15 23:35:27 +00:00
Jason Merrill a3ddb73883 re PR c++/52706 ([C++11] Demangling of templates with std::nullptr_t as non-type parameter)
PR c++/52706
	* mangle.c (write_type): nullptr_t is a builtin type.

From-SVN: r186469
2012-04-15 13:07:39 -04:00
Jason Merrill 04b391c164 re PR c++/52818 (printf format %lf is erroneously rejected by C++11)
PR c++/52818
	* c-format.c (CPLUSPLUS_STD_VER): C++11 inherits from C99.
	(C_STD_NAME): Distinguish between C++98 and C++11.

From-SVN: r186468
2012-04-15 13:07:30 -04:00
Thomas Koenig 79617d7e2e re PR libfortran/38199 (missed optimization: I/O performance)
2012-04-15  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR libfortran/38199
	PR libfortran/50673
	* intrinsics/string_intriniscs_inc.c (string_len_trim):
	Remove prototypes for string_len_trim and move to...
	* libgfortran.h (string_len_trim): ... here and
	(string_len_trim_char4): ...here.
	* io/unit.c: For non-array internal arrays where we do reading,
	adjust the record length to the last non-blank character.
	* io/unix.c:  Fix typo.

From-SVN: r186466
2012-04-15 11:52:44 +00:00
Janus Weil 9b63dcab1e re PR fortran/51082 ([F03] Wrong result for a pointer to a proc-pointer component)
2012-04-15  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/51082
	* trans-expr.c (gfc_conv_expr_reference): Check if the expression is a
	simple function call (or a more involved PPC reference).


2012-04-15  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/51082
	* gfortran.dg/proc_ptr_comp_34.f90: New test case.

From-SVN: r186465
2012-04-15 13:47:49 +02:00
Tobias Burnus cdd244b832 re PR fortran/52916 (481.wrf in SPEC CPU 2006 failed to build)
2012-04-14  Tobias Burnus  <burnus@net-b.de>

        PR fortran/52916
        PR fortran/40973
        * gfortran.h (symbol_attribute): Add public_used.
        * interface.c (check_sym_interfaces, check_uop_interfaces,
        gfc_check_interfaces): Set it.
        * resolve.c (resolve_typebound_procedure): Ditto.
        * trans-decl.c (build_function_decl): Use it.

2012-04-14  Tobias Burnus  <burnus@net-b.de>

        PR fortran/52916
        PR fortran/40973
        * gfortran.dg/public_private_module_3.f90: New.
        * gfortran.dg/public_private_module_4.f90: New.

From-SVN: r186464
2012-04-15 07:52:51 +02:00
GCC Administrator 9aad845a63 Daily bump.
From-SVN: r186460
2012-04-15 00:18:22 +00:00
Paolo Carlini f84ca6e7ce re PR libstdc++/52699 (infinite loop generated with -O0)
2012-04-14  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/52699
	* include/bits/random.tcc (independent_bits_engine<>::operator()())
	Avoid various overflows; use common_type on result_type and
	_RandomNumberEngine::result_type; avoid floating point computations;
	other smaller tweaks.

	* include/bits/random.tcc (uniform_int_distribution<>::operator())
	Use common_type; assume _UniformRandomNumberGenerator::result_type
	unsigned; tidy.

	* include/bits/stl_algobase.h (__lg(unsigned), __lg(unsigned long),
	__lg(unsigned long long)): Add.

From-SVN: r186456
2012-04-14 22:33:22 +00:00
Uros Bizjak 608dccd7ab * config/i386/sse.md: Fix whitespace and formatting.
From-SVN: r186455
2012-04-14 16:09:11 +02:00
Uros Bizjak 8861ba4daf sse.md (ssse3_plusminus): New code iterator.
2012-04-14  Uros Bizjak  <ubizjak@gmail.com>

	* config/i386/sse.md (ssse3_plusminus): New code iterator.
	(avx2_ph<plusminus_mnemonic>wv16hi3): Macroize insn from
	avx2_ph{add,adds,sub,subs}wv16hi3 using ssse3_plusminus code iterator.
	(ssse3_ph<plusminus_mnemonic>wv8hi3): Macroize insn from
	ssse3_ph{add,adds,sub,subs}wv8hi3 using ssse3_plusminus code iterator.
	(ssse3_ph<plusminus_mnemonic>wv4hi3): Macroize insn from
	ssse3_ph{add,adds,sub,subs}wv4hi3 using ssse3_plusminus code iterator.

	(avx2_ph<plusminus_mnemonic>dv8si3): Macroize insn from
	avx2_ph{add,adds,sub,subs}dv8si3 using plusminus code iterator.
	(ssse3_ph<plusminus_mnemonic>dv4si3): Macroize insn from
	ssse3_ph{add,adds,sub,subs}dv4si3 using plusminus code iterator.
	(ssse3_ph<plusminus_mnemonic>dv2si3): Macroize insn from
	ssse3_ph{add,adds,sub,subs}dv2si3 using plusminus code iterator.

	(xop_plus): New code iterator.
	(macs): New code attribute.
	(macds): Ditto.
	(xop_p<macs><ssemodesuffix><ssemodesuffix>): Macroize insn from
	xop_pmacs{,s}{ww,dd} using xop_plus code iterator and VI24_128 mode
	iterator.
	(xop_p<macs>dql): Macroize insn from xop_pmacs{,s}dql using
	xop_plus code iterator.
	(xop_p<macs>dqh): Macroize insn from xop_pmacs{,s}dqh using
	xop_plus code iterator.
	(xop_p<macs>wd): Macroize insn from xop_pmacs{,s}wd using
	xop_plus code iterator.
	(xop_p<madcs>wd): Macroize insn from xop_pmadcs{,s}wd using
	xop_plus code iterator.

	(xop_phadd<u>bw): Macroize insn from xop_phadd{,u}bw usign
	any_extend code iterator.
	(xop_phadd<u>bd): Macroize insn from xop_phadd{,u}bd usign
	any_extend code iterator.
	(xop_phadd<u>bq): Macroize insn from xop_phadd{,u}bq usign
	any_extend code iterator.
	(xop_phadd<u>wd): Macroize insn from xop_phadd{,u}wd usign
	any_extend code iterator.
	(xop_phadd<u>wq): Macroize insn from xop_phadd{,u}wq usign
	any_extend code iterator.
	(xop_phadd<u>dq): Macroize insn from xop_phadd{,u}dq usign
	any_extend code iterator.

From-SVN: r186454
2012-04-14 15:30:46 +02:00
Alan Modra 531b2c7b74 re PR libstdc++/52839 (double free or corruption running tr1/.../default_weaktoshared.exe)
PR libstdc++/52839
	* acinclude.m4 (_GLIBCXX_ATOMIC_BUILTINS): Do not depend on
	glibcxx_cv_atomic_long_long.
	* configure: Regenerate.

From-SVN: r186453
2012-04-14 22:54:43 +09:30
Tom de Vries 01e3d28cd5 superblock.c: New test.
2012-04-14  Tom de Vries  <tom@codesourcery.com>

	* gcc.dg/superblock.c: New test.

From-SVN: r186452
2012-04-14 12:17:50 +00:00
Tom de Vries 03fbe718cb cfgcleanup.c (try_optimize_cfg): Replace call to delete_insn_chain by call to delete_insn.
2012-04-14  Tom de Vries  <tom@codesourcery.com>

	* cfgcleanup.c (try_optimize_cfg): Replace call to delete_insn_chain by
	call to delete_insn.  Remove code to reorder BASIC_BLOCK note and
	DELETED_LABEL note, and move it to ...
	* cfgrtl.c (delete_insn): ... here.  Change return type to void.
	(delete_insn_and_edges): Likewise.
	(delete_insn_chain): Handle new return type of delete_insn.  Delete
	chain backwards rather than forwards.
	* rtl.h (delete_insn, delete_insn_and_edges): Change return type to
	void.
	* cfglayout.c (fixup_reorder_chain): Delete unused label.

From-SVN: r186451
2012-04-14 12:17:41 +00:00