Commit Graph

101210 Commits

Author SHA1 Message Date
Nathan Froyd
3fc7cd185f re PR bootstrap/44713 (Revision 161530 failed bootstrap)
PR bootstrap/44713
	* config/i386/i386.c (type_natural_mode): Const-ify CUM parameter.
	(function_arg_advance_32): Const-ify TYPE parameter.
	(function_arg_advance_64): Likewise.  Change type of NAMED to bool.
	(ix86_function_arg_advance): Change type of NAMED to bool.
	(function_arg_32): Const-ify CUM and TYPE parameters.
	(function_arg_64): Likewise.  Change type of NAMED to bool.
	(function_arg_ms_64): Const-ify CUM parameter. Change type of NAMED
	to bool.
	(ix86_function_arg): Change type of NAMED to bool.
	(ix86_setup_incoming_varargs): Call ix86_function_arg_advance.  Pass
	last argument as a bool.

From-SVN: r161540
2010-06-29 15:57:06 +00:00
Joern Rennecke
9afcc09dee ChangeLog typo fix.
From-SVN: r161539
2010-06-29 16:03:06 +01:00
Joern Rennecke
74f7912ac8 tm.texi (TARGET_OPTION_OVERRIDE): Document.
* doc/tm.texi (TARGET_OPTION_OVERRIDE): Document.
        (OVERRIDE_OPTIONS): Add note of obsolescence.
        Replace references with references to TARGET_OPTION_OVERRIDE.
        (Except for C_COMMON_OVERRIDE_OPTIONS, which remains similar to
         the macro).
        * targhooks.c (default_target_option_override): New function.
        * targhooks.h (default_target_option_override): Declare.
        * target.h (struct gcc_target): Add override member to
        target_option emmber.
        * toplev.c (process_options): Replace OVERRIDE_OPTIONS use with
        targetm.target_option.override call.
        * target-def.h (TARGET_OPTION_OVERRIDE): Define.
        (TARGET_OPTION_HOOKS): Add TARGET_OPTION_OVERRIDE.

From-SVN: r161538
2010-06-29 15:38:13 +01:00
Jan Hubicka
20a6bb5820 * tree-inline.c: Replace incomming by incomin and clonning by cloning.
From-SVN: r161537
2010-06-29 14:26:00 +00:00
Jan Hubicka
b35366ce42 predict.c (propagate_freq): Clear EXIT_BLOCK_PTR frequency if it is unreachable.
* predict.c (propagate_freq): Clear EXIT_BLOCK_PTR frequency if it is
	unreachable.
	(rebuild_frequencies): New function.
	* predict.h (rebuild_frequencies): Declare.
	* tree-inline.c (copy_cfg_body): Compute properly count & frequency of
	entry block and edge reaching new_entry.
	(tree_function_versioning): When doing partial cloning, rebuild frequencies
	when done.
	* passes.c (execute_function_todo): Use rebild_frequencies.

From-SVN: r161536
2010-06-29 14:14:15 +00:00
Richard Guenther
50b56694bb tree-dfa.c (dump_variable): Remove noalias_state dumping.
2010-06-29  Richard Guenther  <rguenther@suse.de>

	* tree-dfa.c (dump_variable): Remove noalias_state dumping.
	* tree-flow.h (enum noalias_state): Remove.
	(struct var_ann_d): Remove noalias_state member.

From-SVN: r161535
2010-06-29 14:02:23 +00:00
Bernd Schmidt
3df41baf91 Revert parts of the change for PR25130.
* cse.c (exp_equiv_p): For MEMs, if for_gcse, only compare
	MEM_ALIAS_SET.

From-SVN: r161534
2010-06-29 13:51:37 +00:00
Bernd Schmidt
810c4bf4f0 re PR target/43902 (suboptimal MIPS widening multiply accumulate)
PR target/43902
	* config/arm/arm.md (maddsidi4, umaddsidi4): New expanders.
	(maddhisi4): Renamed from mulhisi3addsi.  Operands renumbered.
	(maddhidi4): Likewise.

testsuite/
	PR target/43902
	* gcc.target/arm/wmul-1.c: Test for smlabb instead of smulbb.
	* gcc.target/arm/wmul-3.c: New test.
	* gcc.target/arm/wmul-4.c: New test.

From-SVN: r161533
2010-06-29 13:43:57 +00:00
Nathan Froyd
3c07301f6b calls.c, [...]: Call targetm.calls.function_arg...
* calls.c, dse.c, expr.c, function.c: Call targetm.calls.function_arg,
	targetm.calls.function_incoming_arg, and
	targetm.calls.function_arg_advance instead of FUNCTION_ARG,
	FUNCTION_INCOMING_ARG, and FUNCTION_ARG_ADVANCE, respectively.
	* target.h (struct gcc_target): Add function_arg_advance,
	function_arg, and function_incoming_arg fields.
	* target-def.h (TARGET_FUNCTION_ARG_ADVANCE, TARGET_FUNCTION_ARG):
	(TARGET_FUNCTION_INCOMING_ARG): Define.
	(TARGET_CALLS): Add TARGET_FUNCTION_ARG_ADVANCE, TARGET_FUNCTION_ARG,
	and TARGET_FUNCTION_INCOMING_ARG.
	* targhooks.h (default_function_arg_advance): Declare.
	(default_function_arg, default_function_incoming_arg): Declare.
	* targhooks.c (default_function_arg_advance): New function.
	(default_function_arg, default_function_incoming_arg): New function.
	* config/i386/i386.c (function_arg_advance): Rename to...
	(ix86_function_arg_advance): ...this.  Make static.
	(function_arg): Rename to...
	(ix86_function_arg): ...this.  Make static.
	(TARGET_FUNCTION_ARG_ADVANCE): Define.
	(TARGET_FUNCTION_ARG): Define.
	* config/i386/i386.h (FUNCTION_ARG_ADVANCE): Delete.
	(FUNCTION_ARG): Delete.
	* config/i386/i386-protos.h (function_arg_advance): Delete prototype.
	(function_arg): Delete prototype.

From-SVN: r161530
2010-06-29 12:24:04 +00:00
Nathan Froyd
0e228dd907 gigi.h (gnat_build_constructor): Take a VEC instead of a TREE_LIST.
* gcc-interface/gigi.h (gnat_build_constructor): Take a VEC instead
	of a TREE_LIST.  Update comment.
	* gcc-interface/trans.c (gigi): Build a VEC instead of a TREE_LIST.
	Adjust call to gnat_build_constructor.
	(Attribute_to_gnu): Likewise.
	(gnat_to_gnu): Likewise.
	(pos_to_constructor): Likewise.
	(extract_values): Likewise.
	* gcc-interface/utils.c (build_template): Likewise.
	(convert_vms_descriptor64): Likewise.
	(convert_vms_descriptor32): Likewise.
	(convert_to_fat_pointer): Likewise.
	(convert): Likewise.
	(unchecked_convert): Likewise.
	* gcc-interface/decl.c (gnat_to_gnu_entity): Likewise.
	* gcc-interface/utils2.c (build_allocator): Likewise.
	(fill_vms_descriptor): Likewise.
	(gnat_build_constructor): Take a VEC instead of a TREE_LIST.
	(compare_elmt_bitpos): Adjust for parameters being constructor_elts
	instead of TREE_LISTs.

From-SVN: r161529
2010-06-29 12:21:37 +00:00
Nathan Froyd
079e7538c0 reginfo.c (init_reg_sets_1): Adjust comments.
* reginfo.c (init_reg_sets_1): Adjust comments.
	* combine-stack-adj.c (rest_of_handle_stack_adjustments): Likewise.
	* calls.c (prepare_call_address): Likewise.
	(emit_call_1): Use targetm.calls.return_pops_args.
	(expand_call): Likewise.
	* function.c (assign_parms): Likewise.
	* system.h (RETURN_POPS_ARGS): Add to #pragma poison list.
	* target.h (struct gcc_target) [struct calls]: Add
	return_pops_args field.
	* targhooks.h (default_return_pops_args): Declare.
	* targhooks.c (default_return_pops_args): Define.
	* target-def.h (TARGET_RETURN_POPS_ARGS): Define.
	(TARGET_CALLS): Add TARGET_RETURN_POPS_ARGS.
	* doc/tm.texi (RETURN_POPS_ARGS): Rename to...
	(TARGET_RETURN_POPS_ARGS): ...this.  Use deftypefn.  Adjust
	documentation.
	* config/alpha/alpha.h (RETURN_POPS_ARGS): Delete.
	* config/arc/arc.h (RETURN_POPS_ARGS): Likewise.
	* config/arm/arm.h (RETURN_POPS_ARGS): Likewise.
	* config/avr/avr.h (RETURN_POPS_ARGS): Likewise.
	* config/bfin/bfin.h (RETURN_POPS_ARGS): Likewise.
	* config/cris/cris.h (RETURN_POPS_ARGS): Likewise.
	* config/crx/crx.h (RETURN_POPS_ARGS): Likewise.
	* config/fr30/fr30.h (RETURN_POPS_ARGS): Likewise.
	* config/frv/frv.h (RETURN_POPS_ARGS): Likewise.
	* config/h8300/h8300.h (RETURN_POPS_ARGS): Likewise.
	* config/ia64/ia64.h (RETURN_POPS_ARGS): Likewise.
	* config/iq2000/iq2000.h (RETURN_POPS_ARGS): Likewise.
	* config/lm32/lm32.h (RETURN_POPS_ARGS): Likewise.
	* config/m32c/m32c.h (RETURN_POPS_ARGS): Likewise.
	* config/m32r/m32r.h (RETURN_POPS_ARGS): Likewise.
	* config/m68hc11/m68hc11.h (RETURN_POPS_ARGS): Likewise.
	* config/mcore/mcore.h (RETURN_POPS_ARGS): Likewise.
	* config/mep/mep.h (RETURN_POPS_ARGS): Likewise.
	* config/mips/mips.h (RETURN_POPS_ARGS): Likewise.
	* config/mmix/mmix.h (RETURN_POPS_ARGS): Likewise.
	* config/mn10300/mn10300.h (RETURN_POPS_ARGS): Likewise.
	* config/moxie/moxie.h (RETURN_POPS_ARGS): Likewise.
	* config/pa/pa.h (RETURN_POPS_ARGS): Likewise.
	* config/pdp11/pdp11.h (RETURN_POPS_ARGS): Likewise.
	* config/picochip/picochip.h (RETURN_POPS_ARGS): Likewise.
	* config/rs6000/rs6000.h (RETURN_POPS_ARGS): Likewise.
	* config/rx/rx.h (RETURN_POPS_ARGS): Likewise.
	* config/s390/s390.h (RETURN_POPS_ARGS): Likewise.
	* config/score/score.h (RETURN_POPS_ARGS): Likewise.
	* config/sh/sh.h (RETURN_POPS_ARGS): Likewise.
	* config/sparc/sparc.h (RETURN_POPS_ARGS): Likewise.
	* config/spu/spu.h (RETURN_POPS_ARGS): Likewise.
	* config/stormy16/stormy16.h (RETURN_POPS_ARGS): Likewise.
	* config/v850/v850.h (RETURN_POPS_ARGS): Likewise.
	* config/xtensa/xtensa.h (RETURN_POPS_ARGS): Likewise.
	* config/i386/i386-protos.h (ix86_return_pops_args): Delete.
	* config/i386/i386.h (RETURN_POPS_ARGS): Delete.
	* config/i386/i386.c (ix86_return_pops_args): Make static.
	Constify arguments.
	(TARGET_RETURN_POPS_ARGS): Define.
	* config/m68k/m68k.h (RETURN_POPS_ARGS): Move to...
	* config/m68k/m68k.c (m68k_return_pops_args): ...here.  New function.
	(TARGET_RETURN_POPS_ARGS): Define.
	* config/vax/vax.h (RETURN_POPS_ARGS): Move to...
	* config/vax/vax.c (vax_return_pops_args): ...here.  New function.
	(TARGET_RETURN_POPS_ARGS): Define.

From-SVN: r161528
2010-06-29 12:18:36 +00:00
Richard Guenther
ea184343e7 re PR tree-optimization/44667 (ICE: verify_stmts failed: non-trivial conversion at assignment with -fprofile-generate)
2010-06-29  Richard Guenther  <rguenther@suse.de>

	PR middle-end/44667
	* tree-inline.c (initialize_inlined_parameters): Make sure
	to remap the inlined parameter variable substitutions types.

From-SVN: r161527
2010-06-29 12:12:10 +00:00
Paolo Carlini
6ff7e96435 re PR libstdc++/44708 (Enabling -std=c++0x results in ambiguous function overload in <ext/algorithm> header)
2010-06-29  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/44708
	* include/ext/algorithm (copy_n): Qualify __copy_n call with
	__gnu_cxx::
	* testsuite/ext/rope/44708.cc: New.

From-SVN: r161524
2010-06-29 10:03:36 +00:00
Eric Botcazou
5dfebe0a55 re PR rtl-optimization/44659 (Combiner fails to match QI cmp patterns with upper 8bit register)
PR rtl-optimization/44659
	* combine.c (make_compound_operation) <SUBREG>: Do not return the
	result of force_to_mode if it partially re-expanded the compound.

From-SVN: r161523
2010-06-29 09:24:34 +00:00
GCC Administrator
4f036d9b3f Daily bump.
From-SVN: r161521
2010-06-29 00:17:05 +00:00
Jan Hubicka
6b5c2d6c5e re PR middle-end/44671 (Partial inlining breaks C++)
PR middle-end/44671
	* ipa-split.c (test_nonssa_use, mark_nonssa_use): Check also uses of RESULT_DECL.

From-SVN: r161514
2010-06-28 21:16:25 +00:00
Jakub Jelinek
7fd7263dc9 re PR c++/44682 (warning: variable ‘x’ set but not used)
PR c++/44682
	* class.c (build_base_path): If want_pointer, call mark_rvalue_use
	on expr.

	* g++.dg/warn/Wunused-var-14.C: New test.

From-SVN: r161511
2010-06-28 22:12:31 +02:00
Tobias Burnus
83377c6a3f re PR libfortran/43298 (fortran library does not read in NaN -Inf or Inf)
2010-06-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/43298
        * list_read.c (parse_real, read_real): Support NAN(alphanum).

2010-06-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/43298
        * gfortran.dg/nan_6.f90: New.

From-SVN: r161510
2010-06-28 22:04:40 +02:00
Anatoly Sokolov
9589f23ea5 double-int.h (force_fit_type_double): Remove declaration.
* double-int.h (force_fit_type_double): Remove declaration.
	* double-int.c (force_fit_type_double): Move to tree.c.
	* tree.h (force_fit_type_double): Declare.
	* tree.h (force_fit_type_double): Moved from double-int.c. Use
	double_int type for 'cst' argument. Use double_int_fits_to_tree_p and
	double_int_to_tree instead of fit_double_type and build_int_cst_wide.
	* convert.c (convert_to_pointer): Adjust call to
	force_fit_type_double.
	* tree-vrp.c (extract_range_from_assert,
	extract_range_from_unary_expr): Adjust call to force_fit_type_double.
	* fold-const.c: Update comment.
	(int_const_binop, fold_convert_const_int_from_int,
	fold_convert_const_int_from_real, fold_convert_const_int_from_fixed,
	extract_muldiv_1, fold_div_compare, fold_sign_changed_comparison,
	fold_unary_loc, fold_negate_const, fold_abs_const, fold_not_const,
	round_up_loc): Adjust call to force_fit_type_double.
	
/c-family
	* c-common.c (shorten_compare): Adjust call to force_fit_type_double.

From-SVN: r161509
2010-06-28 22:23:16 +04:00
Philipp Tomsich
dfecaf599b * config/rs6000/rs6000.h (PROCESSOR_TITAN): Declare.
From-SVN: r161507
2010-06-28 13:52:59 -04:00
H.J. Lu
f8d9ff4a65 Add a testcase for PR tree-optimization/43781.
2010-06-28  H.J. Lu  <hongjiu.lu@intel.com>

	PR tree-optimization/43781
	* gcc.dg/torture/pr43781.c: New.

From-SVN: r161505
2010-06-28 10:25:49 -07:00
Paul Thomas
a516520c2b re PR fortran/40158 (Misleading error message for passing a scalar to an array)
2010-06-28  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/40158
	* interface.c (argument_rank_mismatch): New function.
	(compare_parameter): Call new function instead of generating
	the error directly.

2010-06-28  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/40158
	* gfortran.dg/actual_rank_check_1.f90: New test.

From-SVN: r161504
2010-06-28 17:16:06 +00:00
Martin Jambor
bb8e5dcaa4 tree-sra.c (convert_callers): New parameter, change fndecls of recursive calls.
2010-06-26  Martin Jambor  <mjambor@suse.cz>

	* tree-sra.c (convert_callers): New parameter, change fndecls of
	recursive calls.
	(modify_function): Pass the old decl to convert_callers.

	* testsuite/gcc.dg/ipa/ipa-sra-6.c: New test.

From-SVN: r161503
2010-06-28 18:47:55 +02:00
Martin Jambor
f5d3b85519 ipa-cp.c (ipcp_init_cloned_node): Replace calls to ipa_check_create_node_params and ipa_initialize_node_params...
2010-06-28  Martin Jambor  <mjambor@suse.cz>

	* ipa-cp.c (ipcp_init_cloned_node): Replace calls to
	ipa_check_create_node_params and ipa_initialize_node_params with
	checking asserts they are not necessary.

From-SVN: r161502
2010-06-28 18:43:09 +02:00
Jan Hubicka
4021f4a171 re PR tree-optimization/44687 (ICE: in tree_nrv, at tree-nrv.c:155 with -fprofile-generate)
PR tree-optimization/44687
	* gcc.c-torture/compile/pr44687.c
	PR tree-optimization/44687
	* ipa-split.c (split_function): Use DECL_RESULT to store return value.

From-SVN: r161500
2010-06-28 15:51:25 +00:00
Martin Jambor
621f418948 re PR c++/44535 (g++ -O[ 23] generates undefined symbol)
2010-06-28  Martin Jambor  <mjambor@suse.cz>

	PR c++/44535
	* gimple-fold.c (get_first_base_binfo_with_virtuals): New function.
	(gimple_get_relevant_ref_binfo): Use get_first_base_binfo_with_virtuals
	instead of BINFO_BASE_BINFO.

	* testsuite/g++.dg/torture/pr44535.C: New test.

From-SVN: r161498
2010-06-28 17:42:01 +02:00
Michael Matz
fe2ef088e0 re PR middle-end/44592 (wrong code at -O3)
PR middle-end/44592
	* gimple-fold.c (gimplify_and_update_call_from_tree): Maintain
	proper VDEF chain for intermediate stores in the sequence.

testsuite/
	PR middle-end/44592
	* gfortran.dg/pr44592.f90: New test.

From-SVN: r161496
2010-06-28 15:14:31 +00:00
Jan Hubicka
f0cc75e078 re PR tree-optimization/44357 (internal compiler error: in cgraph_decide_inlining_of_small_functions)
PR tree-optimization/44357
	* ipa-inline.c (add_new_edges_to_heap): Do not add edges to uninlinable
	functions.

	PR tree-optimization/44357
	* g++.dg/torture/pr44357.C: New testcase.

From-SVN: r161495
2010-06-28 15:12:11 +00:00
Rainer Orth
1b9503a1f5 ltrans-1.c: Add -march=i486 for i?86-*-* && ilp32.
* gcc.dg/tree-ssa/ltrans-1.c: Add -march=i486 for i?86-*-* && ilp32.
	* gcc.dg/tree-ssa/ltrans-3.c: Likewise.
	* gcc.dg/tree-ssa/ltrans-4.c: Likewise.
	* gcc.dg/tree-ssa/ltrans-5.c: Likewise.
	* gcc.dg/tree-ssa/ltrans-6.c: Likewise.
	* gcc.dg/tree-ssa/ltrans-8.c: Likewise.
	* gcc.dg/tree-ssa/vrp47.c: Add -march=i586 for i?86-*-* && ilp32.
	* gfortran.dg/ltrans-7.f90: Add -march=i486 for i?86-*-* && ilp32.

From-SVN: r161492
2010-06-28 14:02:07 +00:00
Philipp Tomsich
3c005e6c17 config.gcc (powerpc*-*-*): Handle titan.
2010-06-28  Philipp Tomsich <philipp.tomsich@theobroma-systems.com>

        * config.gcc (powerpc*-*-*): Handle titan.
        * config/rs6000/rs6000.c (titan_cost): New costs.
        (rs6000_override_options): Add "titan" to processor_target_table.
        Add Titan to branch alignment logic.
        Correctly set rs6000_cost for titan.
        * config/rs6000/rs6000.md (cpu): Add titan.  Include "titan.md".
        * config/rs6000/titan.md: New file.
        * doc/invoke.texi (RS/6000 and PowerPC Options): Document -mcpu=titan.

From-SVN: r161491
2010-06-28 09:22:47 -04:00
Nathan Froyd
4052358138 tree-browser.c (TB_history_stack): Convert to a VEC.
* tree-browser.c (TB_history_stack): Convert to a VEC.
	(TB_SET_HEAD): Adjust for new type of TB_history_stack.
	(TB_history_prev): Likewise.

From-SVN: r161490
2010-06-28 13:06:43 +00:00
Nathan Froyd
9062f848ce java-tree.h (struct lang_type): Change type to a VEC.
* java-tree.h (struct lang_type) [catch_classes]: Change type to a
	VEC.
	* except.c (prepare_eh_table_type): Call CONSTRUCTOR_APPEND_ELT
	instead of tree_cons.
	* class.c (make_class): Add dummy entry to TYPE_CATCH_CLASSES.
	(emit_catch_table): Adjust for new type of TYPE_CATCH_CLASSES.

From-SVN: r161487
2010-06-28 12:06:52 +00:00
Nathan Froyd
04924d6a88 vec.h (vec_heap_free): Add parentheses around free.
gcc/
	* vec.h (vec_heap_free): Add parentheses around free.

gcc/fortran/
	* trans-openmp.c (dovar_init): Define.  Define VECs containing it.
	(gfc_trans_omp_do): Use a VEC to accumulate variables and their
	initializers.

From-SVN: r161486
2010-06-28 12:04:54 +00:00
Steven Bosscher
3b06d37902 system.h: Poison GCC_EXCEPT_H for front-end files.
gcc/ChangeLog:
2010-06-28  Steven Bosscher  <steven@gcc.gnu.org>

	* system.h: Poison GCC_EXCEPT_H for front-end files.

	* langhooks.h (struct lang_hooks): Add eh_protect_cleanup_actions
	langhook.
	* langhooks-def.h (LANG_HOOKS_EH_PROTECT_CLEANUP_ACTIONS) New.
	Define to NULL by default.
	* except.h: Define GCC_EXCEPT_H.
	(doing_eh): Remove prototype.
	(init_eh, init_eh_for_function): Move prototypes to toplev.h.
	(lang_protect_cleanup_actions): Remove.
	* except.c (lang_protect_cleanup_actions): Remove.
	(doing_eh): Remove.
	(gen_eh_region): Don't check doing_eh here.
	* toplev.h (init_eh, init_eh_for_function_): Moved from except.h.
	* tree-eh.c (honor_protect_cleanup_actions): Use new langhook
	instead of lang_protect_cleanup_actions.
	* omp-low.c (maybe_catch_exception): Likewise.
	* Makefile.in: Update dependencies.

gcc/c-family/ChangeLog:
2010-06-28  Steven Bosscher  <steven@gcc.gnu.org>

	* c-cppbuiltin.c: Do not include except.h.

gcc/objc/ChangeLog:
2010-06-28  Steven Bosscher  <steven@gcc.gnu.org>

	* objc-act.c: Do not include except.h.

gcc/cp/ChangeLog:
2010-06-28  Steven Bosscher  <steven@gcc.gnu.org>

	* init.c: Do not include except.h.
	* decl.c: Likewise.
	* expr.c: Likewise.
	* cp-lang.c: Likewise.
	* pt.c: Likewise.
	* semantics.c: Likewise.
	* decl2.c: Likewise.
	* except.c: Likewise.
	(init_exception_processing): Do not set the removed
	lang_protect_cleanup_actions here.
	(cp_protect_cleanup_actions): Make non-static and remove prototype.
	(doing_eh): New, moved from except.c but removed the do_warning flag.
	(expand_start_catch_block): Update doing_eh call.
	(expand_end_catch_block): Likewise.
	(build_throw): Likewise.
	* cp-tree.h: Prototype cp_protect_cleanup_actions.
	* cp-objcp-common.h: Set LANG_HOOKS_EH_PROTECT_CLEANUP_ACTIONS to
	cp_protect_cleanup_actions.
	* Make-lang.in: Update dependencies.

gcc/objcp/ChangeLog:
2010-06-28  Steven Bosscher  <steven@gcc.gnu.org>

	* objcp-lang.c: Do not include except.h.
	* Make-lang.in: Update dependencies.

gcc/java/ChangeLog:
2010-06-28  Steven Bosscher  <steven@gcc.gnu.org>

	* lang.c: Do not include except.h
	* except.c: Likewise.
	(doing_eh): New, moved from except.c (in gcc/) but removed the
	do_warning flag.
	(maybe_start_try): Update doing_eh call.
	* Make-lang.in: Update dependencies.

gcc/ada/ChangeLog:
2010-06-28  Steven Bosscher  <steven@gcc.gnu.org>

	* gcc-interface/misc.c: Do not include except.h.
	* gcc-interface/Make-lang.in: Update dependencies.

gcc/fortran/ChangeLog:
2010-06-28  Steven Bosscher  <steven@gcc.gnu.org>

	* Make-lang.in: Update dependencies.

From-SVN: r161484
2010-06-28 10:52:46 +00:00
Bingfeng Mei
6d41cd0238 cgraph.h (struct varpool_node): new used_from_object_file flag.
2010-06-28  Bingfeng Mei <bmei@broadcom.com>

        * cgraph.h (struct varpool_node): new used_from_object_file flag.
        (struct cgraph_local_info): new used_from_object_file flag.
        * cgraph.c (dump_cgraph_node): dump used_from_object_file flag.
        (cgraph_clone_node): initialize used_from_object_file.
        (cgraph_create_virtual_clone): initialize used_from_object_file.
        * lto-symbtab.c (lto_symtab_merge_decls_1): Set
        used_from_object_file flags for symbols of LDPR_PREVAILING_DEF
        when compiling with -fwhole-program.
        (lto_symtab_resolve_symbols) Use LDPR_PREVAILING_DEF_IRONLY for
	internal resolver.
        * ipa.c (function_and_variable_visibility): Set externally_visible
        flag of varpool_node if used_from_object_file flag is set.
        (cgraph_externally_visible_p): check used_from_object_file flag.
        * doc/invoke.texi (-fwhole-program option): Change description of
        externally_visible attribute accordingly.
        * doc/extend.texi (externally_visible): Ditto.

From-SVN: r161483
2010-06-28 10:39:38 +00:00
Jan Hubicka
7802ca7cfd params.def (max-inline-insns-auto): Default to 40.
* params.def (max-inline-insns-auto): Default to 40.
	* doc/invoke.texi (max-inline-insns-auto): Document the change.

From-SVN: r161481
2010-06-28 00:31:05 +00:00
GCC Administrator
df8410cad6 Daily bump.
From-SVN: r161480
2010-06-28 00:17:06 +00:00
Jan Hubicka
d402c33dc1 re PR middle-end/44671 (Partial inlining breaks C++)
PR middle-end/44671
	PR middle-end/44686
	* tree.c (build_function_decl_skip_args): Clear DECL_BUILT_IN on signature
	change.
	* ipa-split.c (split_function): Always clear DECL_BUILT_IN.
	* ipa-prop.c (ipa_modify_formal_parameters): Likewise.

	* gcc.c-torture/pr44686.c: New file.

From-SVN: r161476
2010-06-28 00:10:34 +00:00
Nathan Froyd
e7041633a5 gfortran.h (gfc_code): Split backend_decl field into cycle_label and exit_label fields.
* gfortran.h (gfc_code): Split backend_decl field into cycle_label
	and exit_label fields.
	* trans-openmp.c (gfc_trans_omp_do): Assign to new fields
	individually.
	* trans-stmt.c (gfc_trans_simple_do): Likewise.
	(gfc_trans_do): Likewise.
	(gfc_trans_do_while): Likewise.
	(gfc_trans_cycle): Use cycle_label directly.
	(gfc_trans_exit): Use exit_label directly.

From-SVN: r161473
2010-06-27 20:00:50 +00:00
Anatoly Sokolov
de8f4b07c0 target.h (struct gcc_target): Add register_move_cost field.
* target.h (struct gcc_target): Add register_move_cost field.
	* target-def.h (TARGET_REGISTER_MOVE_COST): New.
	(TARGET_INITIALIZER): Use TARGET_REGISTER_MOVE_COST.
	* targhooks.c (default_register_move_cost): New function.
	* targhooks.h (default_register_move_cost): Declare function.
	* defaults.h (REGISTER_MOVE_COST): Delete.
	* ira-int.h (ira_register_move_cost): Update comment.
	* ira.c: (ira_register_move_cost): Update comment.
	* reload.h (register_move_cost): Declare.
	* reginfo.c (register_move_cost): New function.
	(move_cost): Update comment.
	(init_move_cost, memory_move_secondary_cost): Replace
	REGISTER_MOVE_COST with register_move_cost.
	* postreload.c (reload_cse_simplify_set): (Ditto.).
	* reload.c (find_valid_class, find_reloads): (Ditto.).
	* reload1.c (choose_reload_regs): (Ditto.).
	* doc/tm.texi (TARGET_REGISTER_MOVE_COST): New.
	(REGISTER_MOVE_COST, TARGET_MEMORY_MOVE_COST): Update documentation.
	* doc/md.texi (can_create_pseudo_p): Update documentation.

	* config/i386/i386.h (MEMORY_MOVE_COST): Remove macro.
	* config/i386/i386-protos.h (int ix86_memory_move_cost): Remove.
	* config/i386/i386.h (ix86_memory_move_cost): Make static.
	(TARGET_MEMORY_MOVE_COST): Define.

	* config/ia64/ia64.h (MEMORY_MOVE_COST): Remove macro.
	* config/ia64/ia64-protos.h (int ia64_memory_move_cost): Remove.
	* config/ia64/ia64.h (ia64_memory_move_cost): Make static.
	(TARGET_MEMORY_MOVE_COST): Define.

From-SVN: r161470
2010-06-27 15:40:42 +04:00
Richard Guenther
533e50f6ac re PR tree-optimization/44683 (Optimization bug with copysign builtin)
2010-06-27  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/44683
	* tree-ssa-dom.c (record_edge_info): Record equivalences for the
	false edge from the inverted condition.

	* gcc.c-torture/execute/pr44683.c: New testcase.

From-SVN: r161467
2010-06-27 11:16:46 +00:00
Eric Botcazou
41a961e991 Fix typo
From-SVN: r161465
2010-06-27 10:59:55 +00:00
Paolo Carlini
d860c8424c regex_compiler.h: Trivial formatting / stylistic fixes.
2010-06-27  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/regex_compiler.h: Trivial formatting / stylistic fixes.
	* include/bits/regex_grep_matcher.tcc: Likewise.
	* include/bits/regex_cursor.h: Likewise.
	* include/bits/regex.h: Likewise.

From-SVN: r161462
2010-06-27 09:29:25 +00:00
Eric Botcazou
83e279c4c3 trans.c: Include tree-flow.h.
* gcc-interface/trans.c: Include tree-flow.h.
	(gnu_switch_label_stack): Delete.
	(Case_Statement_to_gnu): Do not emit the goto at the end of a case if
	its associated block cannot fall through.  Do not emit the final label
	if no cases branche to it.
	* gcc-interface/Make-lang.in (ada/trans.o): Add $(TREE_FLOW_H).

From-SVN: r161461
2010-06-27 08:47:23 +00:00
Daniel Kraft
7ed979b918 dump-parse-tree.c (show_symbol): Dump target-expression for associate names.
2010-06-27  Daniel Kraft  <d@domob.eu>

	* dump-parse-tree.c (show_symbol): Dump target-expression for
	associate names.
	(show_code_node): Make distinction between BLOCK and ASSOCIATE.
	(show_namespace): Use show_level for correct indentation of
	"inner namespaces" (contained procedures or BLOCK).

From-SVN: r161460
2010-06-27 10:40:40 +02:00
Richard Guenther
11af16ef2c re PR middle-end/44684 (FAIL: g++.dg/opt/pmf1.C)
2010-06-27  Richard Guenther  <rguenther@suse.de>

	PR middle-end/44684
	* tree-ssa-alias.c (refs_may_alias_p_1): Allow SSA name refs.
	(stmt_may_clobber_ref_p_1): Do not bother to call the oracle
	for register LHS.  Or non-store assignments.

From-SVN: r161456
2010-06-27 08:10:45 +00:00
GCC Administrator
641cd7ed2a Daily bump.
From-SVN: r161451
2010-06-27 00:16:50 +00:00
Thomas Koenig
c6c15a14f3 re PR fortran/44678 (ICE with -fdump-parse-tree and select type)
2010-06-27  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/44678
	* dump-parse-tree.c (show_code_node):  Show namespace for
	EXEC_BLOCK.

From-SVN: r161444
2010-06-26 22:54:39 +00:00
Jason Merrill
cef62ad4b8 call.c (add_function_candidate): Set LOOKUP_COPY_PARM for any constructor called with a single argument that...
* call.c (add_function_candidate): Set LOOKUP_COPY_PARM for any
	constructor called with a single argument that takes a reference
	to the constructor's class.
	(BAD_CONVERSION_RANK): New.
	(compare_ics): Use it to compare bad ICSes.

From-SVN: r161443
2010-06-26 17:34:36 -04:00
Eric Botcazou
d9816849ed sparc.c (sparc_emit_set_const32): Make static.
* config/sparc/sparc.c (sparc_emit_set_const32): Make static.
	(sparc_emit_set_const64): Likewise.  Remove disabled code.
	* config/sparc/sparc-protos.h (sparc_emit_set_const32): Delete.
	(sparc_emit_set_const64): Likewise.

From-SVN: r161442
2010-06-26 21:08:46 +00:00