Commit Graph

118379 Commits

Author SHA1 Message Date
Sandra Loosemore b6f1f6eaed clear-cache-1.c: Test for alternate cache flush function names too.
2012-08-04  Sandra Loosemore  <sandra@codesourcery.com>
	    Catherine Moore  <clm@codesourcery.com>

	gcc/testsuite/
	* gcc.target/mips/clear-cache-1.c: Test for alternate cache
	flush function names too.
	* gcc.target/mips/clear-cache-1.c: Likewise.

Co-Authored-By: Catherine Moore <clm@codesourcery.com>

From-SVN: r190145
2012-08-04 18:05:55 -04:00
Thomas Koenig 57bdf399d4 Fix PR 54033, problems with -I, with test cases
PR fortran/54033
	 * scanner.c (add_path_to_list):  New argument warn.  Don't
	 warn if it is true.
	 (gfc_add_include_path):  Warn if directory is missing.
	 (gfc_add_intrinsic_modules_path):  Do not warn if directory
	 is missing.
	 * optinons.c (gfc_handle_option):  Do not add directory
	 for intrinsic modules to normal include path.

From-SVN: r190144
2012-08-04 11:26:56 -07:00
Richard Earnshaw 6f34864a43 arm.c (arm_gen_constant): Use SImode when preparing operands for gen_extzv_t2.
* arm.c (arm_gen_constant): Use SImode when preparing operands for
	gen_extzv_t2.

From-SVN: r190143
2012-08-04 14:02:56 +00:00
Paolo Carlini 75235f0597 revert: stl_map.h (operator[](key_type&&)): Replace std::make_pair with value_type.
2012-08-04  Paolo Carlini  <paolo.carlini@oracle.com>

	Revert:
	2012-08-03  Ollie Wild  <aaw@google.com>
		    Richard Smith  <richardsmith@google.com>

	* include/bits/stl_map.h (operator[](key_type&&)): Replace
	std::make_pair with value_type.
	* testsuite/23_containers/map/operators/2.cc: New test.

From-SVN: r190142
2012-08-04 11:44:28 +00:00
Uros Bizjak fc27f749af i386.h (QI_REGNO_P): New define.
* config/i386/i386.h (QI_REGNO_P): New define.
	(ANY_QI_REGNO_P): Ditto.
	(GENERAL_REGNO_P): Use IN_RANGE macro.
	(QI_REG_P): Use QI_REGNO_P.
	(ANY_QI_REG_P): Use GENERAL_REGNO_P and QI_REGNO_P.
	(HARD_REGNO_CALLER_SAVE_MODE): Use QI_REGNO_P.
	* config/i386/i386.c (ix86_hard_regno_mode_ok): Ditto.
	(x86_extended_QIreg_mentioned_p): Ditto.  Also check if
	register is a general register.

From-SVN: r190141
2012-08-04 10:37:50 +02:00
H.J. Lu cd25dea0f4 Replace top_srcdir with srcdir
PR driver/54171
	* Makefile.in (version): Replace top_srcdir with srcdir.

From-SVN: r190140
2012-08-03 22:33:27 -07:00
GCC Administrator 11d2ed2412 Daily bump.
From-SVN: r190139
2012-08-04 00:18:21 +00:00
Jonathan Yong a3dda30be1 * Makefile.in (version): set to BASE-VER file from gcc directory.
From-SVN: r190136
2012-08-03 23:42:20 +00:00
François Dumont 4d02a6956b functions.h (__check_partition_lower_aux): Remove redundant comparison with pivot value.
2012-08-03  François Dumont  <fdumont@gcc.gnu.org>

	* include/debug/functions.h (__check_partition_lower_aux): Remove
	redundant comparison with pivot value.
	(__check_partition_upper_aux): Likewise.

From-SVN: r190134
2012-08-03 19:34:49 +00:00
Uros Bizjak a6de48da4d sync.md (*atomic_fetch_add_cmp<mode>): Use incdec_operand predicate to return INC or DEC insn mnemonic.
* config/i386/sync.md (*atomic_fetch_add_cmp<mode>): Use
	incdec_operand predicate to return INC or DEC insn mnemonic.
	Add %K operand modifier.
	(atomic_add<mode>): Use incdec_operand predicate to
	return INC or DEC insn mnemonic.
	(atomic_dec<mode>): Ditto.

From-SVN: r190132
2012-08-03 19:40:34 +02:00
Bill Schmidt d97577ed2c re PR target/54156 (New fail on AVX target: gcc.dg/vect/pr53773.c. 190010 vs revision 189996)
2012-08-03  Bill Schmidt  <wschmidt@linux.ibm.com>

	PR target/54156
	* testsuite/gcc.dg/vect/pr53773.c: Change to use optimized dump.

From-SVN: r190131
2012-08-03 16:12:22 +00:00
Mikael Morin 8f96b84460 re PR fortran/54166 (ICE rank-1 assignment to rank-2 array section)
fortran/
	PR fortran/54166
	* trans-array.c (set_loop_bounds): Access specinfo using spec_dim.

testsuite/
	PR fortran/54166
	* gfortran.dg/array_5.f90: New test.

From-SVN: r190130
2012-08-03 16:00:50 +00:00
Ollie Wild 2222df9f39 stl_map.h (operator[](key_type&&)): Replace std::make_pair with value_type.
2012-08-03  Ollie Wild  <aaw@google.com>
	    Richard Smith  <richardsmith@google.com>

	* include/bits/stl_map.h (operator[](key_type&&)): Replace
	std::make_pair with value_type.
	* testsuite/23_containers/map/operators/2.cc: New test.

Co-Authored-By: Richard Smith <richardsmith@google.com>

From-SVN: r190128
2012-08-03 15:26:36 +00:00
Michael Matz 9b44f5d907 re PR middle-end/54146 (Very slow compile with attribute((flatten)))
PR tree-optimization/54146
	* cfgexpand.c (add_scope_conflicts_1): Use bitmap_ior_into.
	(add_scope_conflicts): Iterate in RPO order.
	(add_stack_protection_conflicts): Iterate over the other triangle.
	(fini_vars_expansion): Clear stack_vars_sorted.

From-SVN: r190126
2012-08-03 14:43:09 +00:00
Marc Glisse 4e7c4b7301 re PR tree-optimization/30318 (VRP does not create ANTI_RANGEs on overflow)
gcc/
2012-08-03 Marc Glisse <marc.glisse@inria.fr>

	PR tree-optimization/30318
	* double-int.c (mul_double_wide_with_sign): New function.
	(mul_double_with_sign): Call the new function.
	* double-int.h (mul_double_wide_with_sign): Declare the new function.
	* tree-vrp.c (extract_range_from_binary_expr_1) [MULT_EXPR]:
	Handle integer types that wrap on overflow.
	(quad_int_cmp): New helper function.
	(quad_int_pair_sort): Likewise.


gcc/testsuite/
2012-08-03 Marc Glisse <marc.glisse@inria.fr>

	PR tree-optimization/30318
	* gcc.dg/tree-ssa/vrp77.c: New testcase.

From-SVN: r190125
2012-08-03 12:21:14 +00:00
Marc Glisse 11f359257e pt.c (tsubst_copy_and_build): Handle VECTOR_TYPE like scalars.
gcc/cp/ChangeLog
2012-08-03  Marc Glisse  <marc.glisse@inria.fr>

	* pt.c (tsubst_copy_and_build): Handle VECTOR_TYPE like scalars.
	* cp-tree.h (scalarish_type_p): Declare.
	* tree.c (scalarish_type_p): Make non-static.


gcc/testsuite/ChangeLog
2012-08-03  Marc Glisse  <marc.glisse@inria.fr>

	* g++.dg/ext/vector17.C: New testcase.

From-SVN: r190123
2012-08-03 12:00:43 +00:00
Richard Guenther b2ec94d440 tree-vect-loop-manip.c (vect_can_advance_ivs_p): Query is_gimple_reg on the SSA name, not its variable.
2012-08-03  Richard Guenther  <rguenther@suse.de>

	* tree-vect-loop-manip.c (vect_can_advance_ivs_p): Query
	is_gimple_reg on the SSA name, not its variable.
	(vect_update_ivs_after_vectorizer): Likewise.
	* tree-ssa-copyrename.c (rename_ssa_copies): Likewise.
	* tree-if-conv.c (if_convertible_phi_p): Likewise.
	(predicate_scalar_phi): Likewise.
	* tree-vect-loop.c (vect_analyze_scalar_cycles_1): Likewise.
	(vect_analyze_scalar_cycles_1): Likewise.
	* tree-ssa-live.c (register_ssa_partition_check): Likewise.
	* tree-outof-ssa.c (eliminate_useless_phis): Likewise.
	* tree-ssa-reassoc.c (phi_rank): Likewise.
	* tree-parloops.c (separate_decls_in_region_name): Use
	replace_ssa_name_symbol.
	* tree-predcom.c (base_names_in_chain_on): Likewise.
	* matrix-reorg.c (update_type_size): Query the type of the SSA name,
	not its variable.
	* gimple-ssa-strength-reduction.c (create_mul_ssa_cand): Likewise.
	(create_mul_imm_cand): Likewise.
	(create_add_ssa_cand): Likewise.
	(create_add_imm_cand): Likewise.
	(slsr_process_add): Likewise.
	* tree-inline.c (remap_ssa_name): Do not set the type of the
	new SSA_NAME.
	* tree-ssa-structalias.c (get_constraint_for_ssa_var): Clarify
	assert.  Check for default def first.

From-SVN: r190116
2012-08-03 08:55:43 +00:00
Steven Bosscher 1b03a96df6 cfgrtl.c (print_rtl_with_bb): Do not print a newline between insns.
* cfgrtl.c (print_rtl_with_bb): Do not print a newline between insns.

From-SVN: r190114
2012-08-03 08:00:24 +00:00
Steven Bosscher 07fd4efacc sched-vis (print_pattern): Handle SEQUENCE also.
* sched-vis (print_pattern): Handle SEQUENCE also.

From-SVN: r190113
2012-08-03 07:58:49 +00:00
Richard Henderson 34831f3e27 Revert "PR 34548"
This reverts commit 190051.

From-SVN: r190110
2012-08-02 20:28:36 -07:00
Jonathan Wakely 6e48db73ed memory: Include auto_ptr.h later.
* include/std/memory: Include auto_ptr.h later.
	* include/bits/shared_ptr.h (shared_ptr(auto_ptr<_Up>&&): Remove
	definition.
	* include/bits/shared_ptr_base.h (__shared_ptr(auto_ptr<_Up>&&):
	Likewise.
	* include/bits/unique_ptr.h (unique_ptr(auto_ptr<_Up>&&): Likewise.
	* include/backward/auto_ptr.h (unique_ptr(auto_ptr<_Up>&&): Define.
	(shared_ptr(auto_ptr<_Up>&&, __shared_ptr(auto_ptr<_Up>&&): Likewise.
	* include/std/future: Reduce header dependencies.
	* testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error line
	numbers.
	* testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise.
	* testsuite/20_util/unique_ptr/assign/48635_neg.cc: Likewise.

From-SVN: r190109
2012-08-03 01:27:48 +01:00
GCC Administrator cbd782e1af Daily bump.
From-SVN: r190108
2012-08-03 00:17:34 +00:00
Kenneth Zadeck 481755378d cfgexpand.c (expand_debug_locations): Encapsulate test for CONST_DOUBLE in macro.
2012-08-02  Kenneth Zadeck <zadeck@naturalbridge.com>

	* cfgexpand.c (expand_debug_locations):  Encapsulate test for
	CONST_DOUBLE in macro.
	* combine.c (try_combine, gen_lowpart_for_combine): Ditto.
	* cprop.c (implicit_set_cond_p): Ditto.
	* cselib.c (rtx_equal_for_cselib_1): Ditto.
	* expmed.c (expand_mult): Ditto.
	* expr.c (convert_modes): Ditto.
	* ira-costs.c (record_reg_classes): Ditto.
	* ira-lives.c (single_reg_class): Ditto.
	* optabs.c (expand_copysign_absneg, expand_copysign): Ditto.
	* print-rtl.c (print_rtx): Ditto.
	* recog.c (simplify_while_replacing, const_double_operand)
	(asm_operand_ok, constrain_operands): Ditto.
	* reg-stack.c (subst_stack_regs_pat): Ditto.
	* reload.c (find_reloads, find_equiv_reg): Ditto.
	* rtlanal.c (replace_rtx): Remove test.
	* rtlanal.c (constant_pool_constant_p, split_double): Encapsulate test for
	CONST_DOUBLE in macro.
	* simplify-rtx.c (mode_signbit_p, avoid_constant_pool_reference)
	(simplify_unary_operation_1, simplify_const_unary_operation)
	(simplify_binary_operation_1, simplify_const_binary_operation)
	(simplify_relational_operation_1)
	(simplify_const_relational_operations)
	(implify_subreg): Ditto.
	* varasm.c (output_constant_pool_2): Ditto.
	* rtl.h (CONST_DOUBLE_AS_INT_P, CONST_DOUBLE_AS_FLOAT_P): New
	macros.
	* rtl.def (CONST_DOUBLE):  Updated comments.

From-SVN: r190105
2012-08-02 22:39:57 +00:00
Richard Sandiford 36be1dee1d re PR target/51931 (No support for MIPS16 long branches)
gcc/
	PR target/51931
	* config/mips/mips-protos.h (mips_strip_unspec_address): Declare.
	* config/mips/mips.c (mips_strip_unspec_address): Make extern.
	(mips16_rewrite_pool_constant): Make a copy of the pool constant
	before adding to a PC-relative table.
	(mips16_lay_out_constants): Add a SPLIT_P parameter.
	(mips16_load_branch_target, mips16_split_long_branches): New functions.
	(mips_reorg): Update call to mips16_lay_out_constants.
	Call mips16_split_long_branches.
	* config/mips/predicates.md (pc_or_label_operand): Delete.
	* config/mips/mips.md (length): Add a calculation for MIPS16 branches.
	Move the extended_mips16 handling further down.
	(*branch_equality<mode>_mips16): Replace use pc_or_label_operand
	with explicit label_ref and pc.  Follow the usual operand numbering.
	(*branch_equality<mode>_mips16_inverted): New pattern.
	(*jump_mips16): Add length attribute.
	(indirect_jump_and_restore_<mode>): New pattern.
	(consttable_int): Call mips_strip_unspec_address on the operand.

gcc/testsuite/
	PR target/51931
	* gcc.c-torture/compile/20001226-1.c: Remove nomips16 attribute.
	* g++.dg/opt/longbranch1.C: Likewise.

From-SVN: r190104
2012-08-02 21:31:57 +00:00
Richard Sandiford b5b071a568 recog.c (split_insn): Copy the original SET_SRC before using it as a note.
gcc/
	* recog.c (split_insn): Copy the original SET_SRC before using
	it as a note.

From-SVN: r190102
2012-08-02 20:44:38 +00:00
Richard Sandiford 8e6ecdc0ad reorg.c (dbr_schedule): Delete REG_BR_PRED loop.
gcc/
	* reorg.c (dbr_schedule): Delete REG_BR_PRED loop.

From-SVN: r190101
2012-08-02 20:40:10 +00:00
Marc Glisse 77b5132f66 re PR tree-optimization/53805 (combine_comparisons changes trapping behavior)
2012-08-02  Marc Glisse  <marc.glisse@inria.fr>

	PR tree-optimization/53805
	* gcc/fold-const.c (invert_tree_comparison): Invert ORDERED_EXPR and
	UNORDERED_EXPR even for trapping floating point.
	* gcc/testsuite/gcc.dg/fold-notunord.c: New testcase.

From-SVN: r190100
2012-08-02 19:54:43 +00:00
Mikael Morin c2381fb2f0 Add the bug number in the ChangeLog
From-SVN: r190099
2012-08-02 19:50:14 +00:00
Mikael Morin e5a24119f2 re PR fortran/48820 (TR 29113: Implement parts needed for MPI 3)
fortran/
	PR fortran/48820
	* trans-array.c (gfc_conv_ss_startstride): Set the intrinsic
	result's lower and upper bounds according to the rank.
	(set_loop_bounds): Set the loop upper bound in the intrinsic case.

testsuite/
	PR fortran/48820
	* gfortran.dg/assumed_rank_bounds_1.f90:  New test.
	* gfortran.dg/assumed_rank_bounds_2.f90:  New test.

From-SVN: r190098
2012-08-02 19:48:50 +00:00
Mikael Morin c0febbd3cd trans-array.c (set_loop_bounds): Allow non-array-section to be chosen using the stride and lower bound criteria.
* trans-array.c (set_loop_bounds): Allow non-array-section to be
	chosen using the stride and lower bound criteria.

From-SVN: r190097
2012-08-02 19:38:58 +00:00
Mikael Morin 96b2ffe1a1 trans-array.c (set_loop_bounds): Remove useless dimension check.
* trans-array.c (set_loop_bounds): Remove useless dimension check.
	Don't update loopspec if it would loose the wanted stride criterion.

From-SVN: r190096
2012-08-02 19:37:00 +00:00
Mikael Morin 17aa6ab611 trans-array.h (gfc_conv_descriptor_rank): New prototype.
* trans-array.h (gfc_conv_descriptor_rank): New prototype.
	* trans-array.c (gfc_conv_descriptor_rank): New function moved and
	renamed ...
	* trans-intrinsic.c (get_rank_from_desc): ... from this one.
	(gfc_conv_intrinsic_rank, gfc_conv_intrinsic_bound,
	gfc_conv_associated): Also rename function calls.

From-SVN: r190095
2012-08-02 19:20:43 +00:00
Mikael Morin d357d99113 iresolve.c (resolve_bound, [...]): Don't set the shape for assumed rank arrays.
* iresolve.c (resolve_bound, gfc_resolve_shape):
	Don't set the shape for assumed rank arrays.
	* simplify.c (gfc_simplify_shape): Don't try to simplify if the
	argument is assumed rank.

From-SVN: r190094
2012-08-02 19:10:38 +00:00
Jason Merrill 742b0bcd66 PR c++/51213 (again)
/cp
2012-08-02  Jason Merrill  <jason@redhat.com>
	    Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/51213 (again)
	* pt.c (type_unification_real): Call push_deferring_access_checks /
	pop_deferring_access_checks around the substitution of default
	template args.
	(instantiate_template_1): When the specialization returned by
	retrieve_specialization has FNDECL_HAS_ACCESS_ERRORS set and we
	are in a SFINAE context, simply return error_mark_node.
	* cp-tree.h (FNDECL_RECHECK_ACCESS_P): Rename FNDECL_HAS_ACCESS_ERRORS.

/testsuite
2012-08-02  Jason Merrill  <jason@redhat.com>
	    Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/51213 (again)
	* g++.dg/cpp0x/sfinae37.C: Extend.

Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>

From-SVN: r190093
2012-08-02 18:44:58 +00:00
Mikael Morin 328ece7de3 array.c (gfc_copy_array_ref): Don't copy the offset field.
* array.c (gfc_copy_array_ref): Don't copy the offset field.
	* expr.c (find_array_section): Ignore the offset field.
	* trans-expr.c (gfc_find_interface_mapping_to_ref): Don't apply
	any interface mapping to the offset field.
	* gfortran.h (struct gfc_array_ref): Remove the offset field.

From-SVN: r190092
2012-08-02 18:30:02 +00:00
H.J. Lu a8da72b86c Add free inline summary pass after pass_early_local_passes
PR middle-end/53321
	PR middle-end/53865
	* ipa-inline-analysis.c (inline_free_summary): Return if
	inline_edge_summary_vec is NULL.

	* ipa-split.c (execute_split_functions): Check if a function
	is inlinable only if inline_edge_summary_vec != NULL.

	* ipa.c (symtab_remove_unreachable_nodes): Restore
	cgraph_propagate_frequency call when something was changed.
	(free_inline_summary): New function.
	(pass_ipa_free_inline_summary): New pass.

	* passes.c (init_optimization_passes): Add
	pass_ipa_free_inline_summary before pass_ipa_tree_profile.

	* timevar.def (TV_IPA_FREE_INLINE_SUMMARY): New.

	* tree-pass.h (pass_ipa_free_inline_summary): New.

From-SVN: r190090
2012-08-02 09:58:33 -07:00
Richard Earnshaw ca26f665dd arm.c (arm_gen_constant): Use UBFX for some AND operations when available.
* arm.c (arm_gen_constant): Use UBFX for some AND operations when
	available.

From-SVN: r190088
2012-08-02 16:20:22 +00:00
Richard Guenther 8812aab189 tree-into-ssa.c (struct common_info_d): New struct.
2012-08-02  Richard Guenther  <rguenther@suse.de>

	* tree-into-ssa.c (struct common_info_d): New struct.
	(struct var_info_d, struct ssa_name_info): Use it.
	(get_ssa_name_ann): Adjust.
	(get_phi_state, set_phi_state): Remove.
	(get_common_info): New function.
	(get_current_def, set_current_def): Adjust.
	(get_def_blocks_for): Take a common info as param.
	(set_def_block): Call get_common_info once.
	(set_livein_block): Likewise.
	(find_def_blocks_for): Adjust.
	(insert_phi_nodes): Likewise.
	(register_new_def): Call get_common_info once.
	(get_reaching_def): Likewise.
	(rewrite_debug_stmt_uses): Likewise.
	(rewrite_leave_block): Likewise.
	(dump_currdefs): Likewise.
	(debug_var_infos_r): Adjust.
	(register_new_update_single): Call get_common_info once.
	(maybe_replace_use_in_debug_stmt): Likewise.
	(rewrite_update_leave_block): Likewise.
	(mark_use_interesting): Adjust.
	(create_new_def_for): Likewise.
	(update_ssa): Likewise.

From-SVN: r190084
2012-08-02 14:00:29 +00:00
Michael Matz 329df070a9 tree-ssa-live.c (set_is_used): Return a bool.
* tree-ssa-live.c (set_is_used): Return a bool.
	(mark_all_vars_used): Don't take data argument.
	(mark_all_vars_used_1): Adjust calls to above, merge handling
	of local and global vars.
	(remove_unused_scope_block_p): Don't take global_unused_vars,
	merge handling of local and global vars.
	(remove_unused_locals): Don't allocate/fill/pass global_unused_vars,
	use is_used_p for local and global vars.

From-SVN: r190080
2012-08-02 12:24:52 +00:00
Richard Guenther 7cc434a3c1 tree-flow.h (make_rename_temp): Remove.
2012-08-02  Richard Guenther  <rguenther@suse.de>

	* tree-flow.h (make_rename_temp): Remove.
	* tree-dfa.c (make_rename_temp): Likewise.
	* cgraphunit.c (thunk_adjust, assemble_thunk): Use create_tmp_reg
	instead of make_rename_temp.
	* omp-low.c (expand_omp_for_generic, expand_omp_for_static_nochunk,
	expand_omp_atomic_pipeline): Likewise.
	* trans-mem.c (tm_log_emit_save_or_restores, build_tm_load,
	build_tm_store, expand_call_tm, expand_transaction,
	ipa_tm_insert_gettmclone_call): Likewise.
	* tree-complex.c (expand_complex_div_wide): Likewise.
	* tree-mudflap.c (mf_decl_cache_locals, mf_build_check_statement_for):
	Likewise.
	* tree-ssa-loop-im.c (execute_sm_if_changed_flag_set, execute_sm):
	Likewise.
	* tree-ssa-math-opts.c (insert_reciprocals): Likewise.
	* value-prof.c (gimple_divmod_fixed_value, gimple_mod_pow2,
	gimple_mod_subtract): Likewise.

From-SVN: r190074
2012-08-02 11:41:35 +00:00
Richard Guenther 322445530d tree-flow.h (set_default_def): Rename to ...
2012-08-02  Richard Guenther  <rguenther@suse.de>

	* tree-flow.h (set_default_def): Rename to ...
	(set_ssa_default_def): ... this.  Take a struct function argument.
	(gimple_default_def): Rename to ...
	(ssa_default_def): ... this.
	(get_or_create_ssa_default_def): New function.
	* tree-dfa.c: Likewise.
	(dump_variable): Adjust.
	* ipa-prop.c (ipa_analyze_params_uses): Adjust, properly check
	for used parameters.
	* ipa-split.c (consider_split): Adjust, avoid repeated default-def
	lookups.
	(split_function): Likewise.
	* lto-streamer-in.c (input_ssa_names): Adjust.
	* omp-low.c (expand_omp_taskreg): Likewise.
	* tree-cfg.c (replace_ssa_name): Adjust, no need to push/pop cfun.
	* tree-complex.c (init_parameter_lattice_values): Adjust.
	(get_component_ssa_name): Likewise.
	(update_parameter_components): Likewise.
	* tree-inline.c (remap_ssa_name): Likewise.
	(setup_one_parameter): Likewise.
	(initialize_inlined_parameters): Likewise.
	(declare_return_variable): Likewise.
	(expand_call_inline): Likewise.
	(tree_function_versioning): Likewise.
	* tree-into-ssa.c (get_default_def_for): Remove.
	(get_reaching_def): Use get_or_create_ssa_default_def instead.
	* tree-predcom.c (replace_ref_with): Adjust.
	* tree-sra.c (get_repl_default_def_ssa_name): Likewise.
	(is_unused_scalar_param): Likewise.
	(ptr_parm_has_direct_uses): Likewise.
	(sra_ipa_reset_debug_stmts): Likewise.
	* tree-ssa-coalesce.c (create_outofssa_var_map): Adjust.
	* tree-ssa-copyrename.c (copy_rename_partition_coalesce): Likewise.
	* tree-ssa-live.c (verify_live_on_entry): Likewise.
	* tree-ssa-math-opts.c (execute_cse_reciprocals): Likewise,
	avoid repeated default def lookups.
	* tree-ssa-sccvn.c (run_scc_vn): Likewise.
	* tree-tailcall.c (arg_needs_copy_p): Adjust.
	(tree_optimize_tail_calls_1): Likewise.

From-SVN: r190073
2012-08-02 11:40:20 +00:00
Richard Guenther fcddd80e2e re PR tree-optimization/50672 (ice: verify_ssa failed: no immediate_use list)
2012-08-02  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/50672
	Revert
	2012-08-01  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-tail-merge.c (release_last_vdef): Remove.
	(replace_block_by): Adjust.

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

From-SVN: r190070
2012-08-02 09:43:14 +00:00
Janus Weil b6a4560501 re PR fortran/54147 ([F03] Interface checks for PPCs & deferred TBPs)
2012-08-02  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/54147
	* resolve.c (check_proc_interface): New routine for PROCEDURE interface
	checks.
	(resolve_procedure_interface,resolve_typebound_procedure,
	resolve_fl_derived0): Call it.

2012-08-02  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/54147
	* gfortran.dg/abstract_type_6.f03: Modified.
	* gfortran.dg/proc_ptr_comp_3.f90: Modified.
	* gfortran.dg/proc_ptr_comp_35.f90: New.
	* gfortran.dg/typebound_proc_9.f03: Modified.
	* gfortran.dg/typebound_proc_26.f90: New.

From-SVN: r190069
2012-08-02 10:57:58 +02:00
Richard Guenther 46eb666a79 tree-dfa.c (referenced_var_lookup): Remove.
2012-08-02  Richard Guenther  <rguenther@suse.de>

	* tree-dfa.c (referenced_var_lookup): Remove.
	(find_referenced_vars): Remove.
	(pass_referenced_vars): Likewise.
	(make_rename_temp): Do not add referenced vars.
	(dump_referenced_vars): Remove.
	(debug_referenced_vars): Likewise.
	(dump_dfa_stats): Do not dump referenced var stats.
	(find_vars_r): Remove.
	(find_referenced_vars_in): Likewise.
	(referenced_var_check_and_insert): Likewise.
	(add_referenced_var_1): Likewise.
	(remove_referenced_var): Likewise.
	* tree-flow.h (referenced_var_lookup): Likewise.
	(struct gimple_df): Remove referenced_vars member.
	(typedef referenced_var_iterator): Remove.
	(FOR_EACH_REFERENCED_VAR): Likewise.
	(num_referenced_vars): Likewise.
	(debug_referenced_vars, dump_referenced_vars): Likewise.
	(add_referenced_var_1, add_referenced_var): Likewise.
	(remove_referenced_var): Likewise.
	(find_referenced_vars_in): Likewise.
	* tree-flow-inline.h (gimple_referenced_vars): Remove.
	(first_referenced_var): Likewise.
	(end_referenced_vars_p): Likewise.
	(next_referenced_var): Likewise.
	* cfgexpand.c (update_alias_info_with_stack_vars): Remove assert.
	* gimple-pretty-print.c (pp_points_to_solution): Dump UIDs
	unconditionally.
	* tree-into-ssa.c (dump_decl_set): Likewise.
	(pass_build_ssa): Do not require PROP_referenced_vars.
	* tree-ssa.c (target_for_debug_bind): Virtual operands are
	not suitable, but all register type vars are.
	(init_tree_ssa): Do not allocate referenced vars.
	(delete_tree_ssa): Do not free referenced vars.
	* cgraphunit.c (init_lowered_empty_function): Do not set
	PROP_referenced_vars.
	(assemble_thunk): Do not add referenced vars.
	* gimple-fold.c (canonicalize_constructor_val): Likewise.
	(gimplify_and_update_call_from_tree): Likewise.
	* gimple-streamer-in.c (input_bb): Likewise.
	* passes.c (init_optimization_passes): Do not run
	pass_referenced_vars.
	(dump_properties): Do not dump PROP_referenced_vars.
	* tree-inline.c (remap_decl): Do not add referenced vars.
	(remap_gimple_op_r): Likewise.
	(copy_tree_body_r): Likewise.
	(copy_bb): Likewise.
	(setup_one_parameter): Likewise.
	(declare_return_variable): Likewise.
	(copy_decl_for_dup_finish): Likewise.
	(copy_arguments_for_versioning): Likewise.
	(tree_function_versioning): Likewise.
	* tree-pass.h (PROP_referenced_vars): Remove.
	(pass_referenced_vars): Likewise.
	* tree-profile.c (gimple_gen_edge_profiler): Do not add referenced vars.
	(gimple_gen_interval_profiler): Likewise.
	(gimple_gen_pow2_profiler): Likewise.
	(gimple_gen_one_value_profiler): Likewise.
	(gimple_gen_ic_profiler): Likewise.
	(gimple_gen_average_profiler): Likewise.
	(gimple_gen_ior_profiler): Likewise.
	* tree-ssa-live.c (remove_unused_locals): Do not touch referenced vars.
	* tree-cfg.c (replace_ssa_name): Do not add referenced vars.
	(move_stmt_op): Likewise.
	* tree-ssa-operands.c (create_vop_var): Likewise.
	* gimple-low.c (record_vars_into): Likewise.
	* gimplify.c (gimple_regimplify_operands): Likewise.
	(force_gimple_operand_1): Likewise.
	* omp-low.c (expand_omp_for_generic): Likewise.
	(expand_omp_for_static_chunk): Likewise.
	(expand_omp_atomic_pipeline): Likewise.
	* graphite-clast-to-gimple.c (graphite_create_new_loop): Likewise.
	(translate_clast_assignment): Likewise.
	* graphite-sese-to-poly.c (create_zero_dim_array): Likewise.
	(handle_scalar_deps_crossing_scop_limits): Likewise.
	* ipa-prop.c (ipa_modify_formal_parameters): Likewise.
	* ipa-split.c (split_function): Likewise.
	* matrix-reorg.c (transform_access_sites): Likewise.
	* trans-mem.c (tm_log_add): Likewise.
	(ipa_tm_insert_gettmclone_call): Likewise.
	* tree-complex.c (create_one_component_var): Likewise.
	* tree-if-conv.c (ifc_temp_var): Likewise.
	* tree-parloops.c (take_address_of): Likewise.
	(initialize_reductions): Likewise.
	(separate_decls_in_region_name): Likewise.
	(create_call_for_reduction_1): Likewise.
	(separate_decls_in_region): Likewise.
	* tree-predcom.c (predcom_tmp_var): Likewise.
	(reassociate_to_the_same_stmt): Likewise.
	* tree-sra.c (build_ref_for_offset): Likewise.
	(create_access_replacement): Likewise.
	(get_replaced_param_substitute): Likewise.
	(sra_ipa_reset_debug_stmts): Likewise.
	* tree-ssa-loop-im.c (rewrite_reciprocal): Likewise.
	(rewrite_bittest): Likewise.
	* tree-ssa-loop-ivopts.c (create_new_iv): Likewise.
	* tree-ssa-loop-manip.c (create_iv): Likewise.
	(tree_transform_and_unroll_loop): Likewise.
	* tree-ssa-math-opts.c (powi_as_mults): Likewise.
	(build_and_insert_call): Likewise.
	(gimple_expand_builtin_cabs): Likewise.
	(execute_optimize_bswap): Likewise.
	* tree-ssa-phiopt.c (conditional_replacement): Likewise.
	(abs_replacement): Likewise.
	(cond_store_replacement): Likewise.
	(cond_if_else_store_replacement_1): Likewise.
	* tree-ssa-phiprop.c (phiprop_insert_phi): Likewise.
	* tree-ssa-pre.c (get_representative_for): Likewise.
	(create_expression_by_pieces): Likewise.
	(insert_into_preds_of_block): Likewise.
	* tree-ssa-propagate.c (update_call_from_tree): Likewise.
	* tree-ssa-reassoc.c (undistribute_ops_list): Likewise.
	(eliminate_redundant_comparison): Likewise.
	(rewrite_expr_tree_parallel): Likewise.
	(get_reassoc_pow_ssa_name): Likewise.
	* tree-ssa-strlen.c (get_string_length): Likewise.
	* tree-switch-conversion.c (emit_case_bit_tests): Likewise.
	(build_arrays): Likewise.
	* tree-tailcall.c (adjust_return_value_with_ops): Likewise.
	(create_tailcall_accumulator): Likewise.
	* tree-vect-data-refs.c (vect_get_new_vect_var): Likewise.
	(vect_create_addr_base_for_vector_ref): Likewise.
	(vect_permute_store_chain): Likewise.
	(vect_permute_load_chain): Likewise.
	* tree-vect-generic.c (expand_vector_divmod): Likewise.
	* tree-vect-loop-manip.c (set_prologue_iterations): Likewise.
	(vect_build_loop_niters): Likewise.
	(vect_generate_tmps_on_preheader): Likewise.
	(vect_update_ivs_after_vectorizer): Likewise.
	(vect_gen_niters_for_prolog_loop): Likewise.
	(vect_do_peeling_for_alignment): Likewise.
	(vect_create_cond_for_align_checks): Likewise.
	* tree-vect-patterns.c (vect_recog_temp_ssa_var): Likewise.
	(vect_handle_widen_op_by_const): Likewise.
	(vect_operation_fits_smaller_type): Likewise.
	(vect_recog_over_widening_pattern): Likewise.
	* tree-vect-stmts.c (vect_init_vector): Likewise.

	* gcc.dg/torture/pta-callused-1.c: Adjust.
	* gcc.dg/torture/pta-ptrarith-3.c: Likewise.
	* gcc.dg/torture/ssa-pta-fn-1.c: Likewise.
	* gcc.dg/tree-ssa/alias-19.c: Likewise.
	* gcc.dg/tree-ssa/pta-escape-1.c: Likewise.
	* gcc.dg/tree-ssa/pta-escape-2.c: Likewise.
	* gcc.dg/tree-ssa/pta-escape-3.c: Likewise.
	* gcc.dg/tree-ssa/pta-ptrarith-1.c: Likewise.
	* gcc.dg/tree-ssa/pta-ptrarith-2.c: Likewise.

From-SVN: r190067
2012-08-02 08:14:54 +00:00
Alexandre Oliva e7206ab1c3 re PR debug/52983 (internal compiler error: in df_uses_record, at df-scan.c:3243)
PR debug/52983
* valtrack.c (dead_debug_insert_temp): Use cleanup_auto_inc_dec.

From-SVN: r190063
2012-08-02 00:34:41 +00:00
Alexandre Oliva 375e3d0742 re PR debug/52983 (internal compiler error: in df_uses_record, at df-scan.c:3243)
PR debug/52983
* valtrack.c (cleanup_auto_inc_dec): Implement unconditionally,
falling back to copy_rtx on non-autoinc machines.
(propagate_for_debug_subst): Always use cleanup_auto_inc_dec.

From-SVN: r190062
2012-08-02 00:34:26 +00:00
Alexandre Oliva 08df6c0db1 re PR debug/52983 (internal compiler error: in df_uses_record, at df-scan.c:3243)
PR debug/52983
* valtrack.h, valtrack.c: New.
* Makefile.in (VALTRACK_H): New.
(OBJS): Add valtrack.o.
(valtrack.o): New.
(cselib.o, dce.o, df-problems.o, combine.o): Add VALTRACK_H.
* combine.c: Include valtrack.h.
(make_compound_operation): Publish.
(cleanup_auto_inc_dec): Move to valtrack.c.
(struct rtx_subst_pair, propagate_for_debug_subst): Likewise.
(propagate_for_debug): Likewise.  Add this_basic_block parameter.
Adjust all callers.
* cselib.c: Include valtrack.h.
* dce.c: Likewise.
* df-problems.c: Likewise.
(dead_debug_init, dead_debug_reset_uses): Move to valtrack.c.
(dead_debug_finish, dead_debug_add): Likewise.
(dead_debug_insert_temp): Likewise.
* df.h (struct dead_debug_use): Move to valtrack.h.
(struct dead_debug, enum debug_temp_where): Likewise.
(dead_debug_init, dead_debug_reset_uses): Move to valtrack.h.
(dead_debug_finish, dead_debug_add): Likewise.
(dead_debug_insert_temp): Likewise.
* rtl.h (make_compound_operation): Declare.

From-SVN: r190061
2012-08-02 00:34:11 +00:00
GCC Administrator 57e8ecc3ba Daily bump.
From-SVN: r190060
2012-08-02 00:17:20 +00:00
Thomas Koenig ff9e56a94f re PR fortran/54033 (gfortran: Passing file as include directory - add diagnostic and ICE with -cpp)
2012-08-01  Thomas König  <tkoenig@gcc.gnu.org>

	PR fortran/54033
	* scanner.c (add_path_to_list): Emit warning if an error occurs
	for an include path, if it is not present or if it is not a
	directory.  Do not add the path in these cases.

2012-08-01  Thomas König  <tkoenig@gcc.gnu.org>

	PR fortran/54033
	* gfortran.dg/include_6.f90:  New test case.
	* gfortran.dg/include_7.f90:  New test case.
	* gfortran.dg/include_3.f90:  Add dg-warning for missing directory.

From-SVN: r190054
2012-08-01 21:43:50 +00:00
Catherine Moore fdd195f49b mips-cpus.def (34kn): New.
2012-08-01  Catherine Moore  <clm@codesourcery.com>
	    Sandra Loosemore  <sandra@codesourcery.com>

	gcc/
	* config/mips/mips-cpus.def (34kn): New.
	* config/mips/mips.h (MIPS_ARCH_FLOAT_SPEC): Add 34kn.
	(BASE_DRIVER_SELF_SPECS): Do not imply -mdsp for the 34kn.
	* config/mips/mips-tables.opt: Regenerate.
	* doc/invoke.texi (MIPS Options): Document -march=34kn.

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

From-SVN: r190053
2012-08-01 16:59:31 -04:00