Commit Graph

93609 Commits

Author SHA1 Message Date
Eric Botcazou
e913423f2c Fix more formatting
From-SVN: r147314
2009-05-09 06:51:31 +00:00
Eric Botcazou
20acb8a2a2 Fix formatting
From-SVN: r147313
2009-05-09 06:47:29 +00:00
GCC Administrator
7acee3505b Daily bump.
From-SVN: r147304
2009-05-09 00:16:39 +00:00
Michael Meissner
ece48253c5 Update test to use __BIGGEST_ALIGNMENT__
From-SVN: r147299
2009-05-08 23:02:35 +00:00
Michael Meissner
ad6c0864ef Fix PR 40049
From-SVN: r147298
2009-05-08 22:38:49 +00:00
Joseph Myers
c94f9067af fold-const.c (fold_binary): Do not fold multiplication by 1 or -1 for complex floating-point types if...
* fold-const.c (fold_binary): Do not fold multiplication by 1 or
	-1 for complex floating-point types if honoring signed zeros.

testsuite:
	* gcc.dg/torture/complex-sign-mul-minus-one.c,
	gcc.dg/torture/complex-sign-mul-one.c: New tests.

From-SVN: r147295
2009-05-08 21:58:26 +01:00
Jan Hubicka
9187e02deb cgraphbuild.c (compute_call_stmt_bb_frequency): Accept function argument; handle correctly when profile is absent.
* cgraphbuild.c (compute_call_stmt_bb_frequency): Accept function argument;
	handle correctly when profile is absent.
	(build_cgraph_edges): Update.
	(rebuild_cgraph_edges): Update.
	* cgraph.c: Do not include varrau.h 
	(cgraph_set_call_stmt_including_clones, cgraph_create_edge_including_clones):
	New function
	(cgraph_update_edges_for_call_stmt_node): New stati cfunction.
	(cgraph_update_edges_for_call_stmt): Handle clones.
	(cgraph_remove_node): Handle clone tree.
	(cgraph_remove_node_and_inline_clones): New function.
	(dump_cgraph_node): Dump clone tree.
	(cgraph_clone_node): Handle clone tree.
	(clone_function_name): Bring here from tree-inline.c
	(cgraph_create_virtual_clone): New function.
	* cgraph.h (ipa_replace_map): Move ehre from ipa.h
	(cgraph_clone_info): New function
	(strut cgraph_node): Add clone_info and new clone tree pointers.
	(cgraph_remove_node_and_inline_clones, cgraph_set_call_stmt_including_clones,
	cgraph_create_edge_including_clones, cgraph_create_virtual_clone): Declare.
	(cgraph_function_versioning): Use VEC argument.
	(compute_call_stmt_bb_frequency): Update prototype.
	(cgraph_materialize_all_clones): New function.
	* ipa-cp.c (ipcp_update_cloned_node): Remove.
	(ipcp_create_replace_map): Update to VECtors.
	(ipcp_update_callgraph): Use virtual clones.
	(ipcp_update_bb_counts, ipcp_update_edges_counts): Remove.
	(ipcp_update_profiling): Do not update local profiling.
	(ipcp_insert_stage): Use VECtors and virtual clones.
	* cgraphunit.c (verify_cgraph_node): Verify clone tree.
	(clone_of_p): New function.
	(cgraph_preserve_function_body_p): Use clone tree.
	(cgraph_optimize): Materialize clones.
	(cgraph_function_versioning): Update for VECtors.
	(save_inline_function_body): Use clone tree.
	(cgraph_materialize_clone, cgraph_materialize_all_clones): New functions.
	* ipa-inline.c (cgraph_default_inline_p): Use analyzed flags.
	* ipa.c: Include gimple.h.
	(cgraph_remove_unreachable_nodes): Use clone tree.
	* ipa-prop.c (ipa_note_param_call): Update call of compute_call_stmt_bb_frequency.
	* ipa-prop.h (ipa_replace_map): Move to cgraph.h.
	* tree-inline.c: Do not include varray.h; do not include gt-tree-inline.h
	(copy_bb): Handle updating of clone tree; add new edge when new call
	appears.
	(expand_call_inline): Be strict about every call having edge.
	(clone_fn_id_num, clone_function_name): Move to cgraph.c.
	(delete_unreachable_blocks_update_callgraph): New function.
	(tree_function_versioning): Use VECtors; always remove unreachable blocks
	and fold conditionals.
	* tree-inline.h: Do not include varray.h
	(tree_function_versioning): Remove.
	* Makefile.in (GTFILES): Remove tree-inline.c
	* passes.c (do_per_function): Do only functions having body.
	* ipa-struct-reorg.c (do_reorg_1, collect_data_accesses): Handle cone tree.

From-SVN: r147294
2009-05-08 19:19:51 +00:00
H.J. Lu
9b86d6bb25 re PR c/36892 (Support __attribute__((deprecated("text string"))))
gcc/

2009-05-08  H.J. Lu  <hongjiu.lu@intel.com>
	    Andrew Morrow  <acm@google.com>

	PR c/36892
	* c-common.c (c_common_attribute_table): Permit deprecated
	attribute to take an optional argument.
	(handle_deprecated_attribute): If the optional argument to
	__attribute__((deprecated)) is not a string ignore the attribute
	and emit a warning.

	* c-decl.c (grokdeclarator): Updated warn_deprecated_use call.
	* c-typeck.c (build_component_ref): Likewise.
	(build_external_ref): Likewise.

	* toplev.c (warn_deprecated_use): Add an attribute argument.
	Emit the message associated with __attribute__((deprecated)).

	* toplev.h (warn_deprecated_use): Updated.

	* doc/extend.texi: Document new optional parameter to
	__attribute__((deprecated))

gcc/cp/

2009-05-08  H.J. Lu  <hongjiu.lu@intel.com>

	PR c/36892
	* call.c (build_call_a): Updated warn_deprecated_use call.
	(build_over_call): Likewise.
	* decl.c (grokdeclarator): Likewise.
	(grokparms): Likewise.
	* semantics.c (finish_id_expression): Likewise.
	* typeck.c (build_class_member_access_expr): Likewise.
	(finish_class_member_access_expr): Likewise.

gcc/testsuite/

2009-05-08  H.J. Lu  <hongjiu.lu@intel.com>

	PR c/36892
	* g++.dg/warn/deprecated-6.C: New.
	* gcc.dg/deprecated-4.c: Likewise.
	* gcc.dg/deprecated-5.c: Likewise.
	* gcc.dg/deprecated-6.c: Likewise.

From-SVN: r147293
2009-05-08 11:44:50 -07:00
Michael Eager
82ad047f00 Fix bug in movdf_softfloat32.
From-SVN: r147290
2009-05-08 16:18:16 +00:00
H.J. Lu
03f1063fb4 no-vfa-vect-37.c: Replace __aligned__(16) with __aligned__(__BIGGEST_ALIGNMENT__).
2009-05-08  H.J. Lu  <hongjiu.lu@intel.com>

	* gcc.dg/vect/no-vfa-vect-37.c: Replace __aligned__(16) with
	__aligned__(__BIGGEST_ALIGNMENT__).
	* gcc.dg/vect/no-vfa-vect-43.c: Likewise.
	* gcc.dg/vect/no-vfa-vect-49.c: Likewise.
	* gcc.dg/vect/no-vfa-vect-53.c: Likewise.
	* gcc.dg/vect/no-vfa-vect-57.c: Likewise.
	* gcc.dg/vect/no-vfa-vect-61.c: Likewise.
	* gcc.dg/vect/no-vfa-vect-79.c: Likewise.
	* gcc.dg/vect/Os-vect-95.c: Likewise.
	* gcc.dg/vect/pr20122.c: Likewise.
	* gcc.dg/vect/pr36493.c: Likewise.
	* gcc.dg/vect/pr37385.c: Likewise.
	* gcc.dg/vect/slp-7.c: Likewise.
	* gcc.dg/vect/slp-9.c: Likewise.
	* gcc.dg/vect/slp-widen-mult-s16.c: Likewise.
	* gcc.dg/vect/slp-widen-mult-u8.c: Likewise.
	* gcc.dg/vect/vect-35.c: Likewise.
	* gcc.dg/vect/vect-40.c: Likewise.
	* gcc.dg/vect/vect-42.c: Likewise.
	* gcc.dg/vect/vect-44.c: Likewise.
	* gcc.dg/vect/vect-46.c: Likewise.
	* gcc.dg/vect/vect-48.c: Likewise.
	* gcc.dg/vect/vect-52.c: Likewise.
	* gcc.dg/vect/vect-54.c: Likewise.
	* gcc.dg/vect/vect-56.c: Likewise.
	* gcc.dg/vect/vect-58.c: Likewise.
	* gcc.dg/vect/vect-60.c: Likewise.
	* gcc.dg/vect/vect-74.c: Likewise.
	* gcc.dg/vect/vect-75.c: Likewise.
	* gcc.dg/vect/vect-76.c: Likewise.
	* gcc.dg/vect/vect-77-alignchecks.c: Likewise.
	* gcc.dg/vect/vect-77.c: Likewise.
	* gcc.dg/vect/vect-77-global.c: Likewise.
	* gcc.dg/vect/vect-78-alignchecks.c: Likewise.
	* gcc.dg/vect/vect-78.c: Likewise.
	* gcc.dg/vect/vect-78-global.c: Likewise.
	* gcc.dg/vect/vect-80.c: Likewise.
	* gcc.dg/vect/vect-85.c: Likewise.
	* gcc.dg/vect/vect-87.c: Likewise.
	* gcc.dg/vect/vect-88.c: Likewise.
	* gcc.dg/vect/vect-92.c: Likewise.
	* gcc.dg/vect/vect-93.c: Likewise.
	* gcc.dg/vect/vect-95.c: Likewise.
	* gcc.dg/vect/vect-97.c: Likewise.
	* gcc.dg/vect/vect-complex-1.c: Likewise.
	* gcc.dg/vect/vect-complex-4.c: Likewise.
	* gcc.dg/vect/vect-complex-5.c: Likewise.
	* gcc.dg/vect/vect-multitypes-10.c: Likewise.
	* gcc.dg/vect/vect-multitypes-11.c: Likewise.
	* gcc.dg/vect/vect-multitypes-12.c: Likewise.
	* gcc.dg/vect/vect-multitypes-13.c: Likewise.
	* gcc.dg/vect/vect-multitypes-14.c: Likewise.
	* gcc.dg/vect/vect-multitypes-15.c: Likewise.
	* gcc.dg/vect/vect-multitypes-16.c: Likewise.
	* gcc.dg/vect/vect-multitypes-17.c: Likewise.
	* gcc.dg/vect/vect-multitypes-3.c: Likewise.
	* gcc.dg/vect/vect-multitypes-6.c: Likewise.
	* gcc.dg/vect/vect-multitypes-7.c: Likewise.
	* gcc.dg/vect/vect-multitypes-8.c: Likewise.
	* gcc.dg/vect/vect-multitypes-9.c: Likewise.
	* gcc.dg/vect/vect-outer-1a.c: Likewise.
	* gcc.dg/vect/vect-outer-1.c: Likewise.
	* gcc.dg/vect/vect-outer-2a.c: Likewise.
	* gcc.dg/vect/vect-outer-2b.c: Likewise.
	* gcc.dg/vect/vect-outer-2.c: Likewise.
	* gcc.dg/vect/vect-outer-2c.c: Likewise.
	* gcc.dg/vect/vect-outer-2d.c: Likewise.
	* gcc.dg/vect/vect-outer-3a.c: Likewise.
	* gcc.dg/vect/vect-outer-3b.c: Likewise.
	* gcc.dg/vect/vect-outer-3.c: Likewise.
	* gcc.dg/vect/vect-outer-3c.c: Likewise.
	* gcc.dg/vect/vect-outer-5.c: Likewise.
	* gcc.dg/vect/vect-outer-6.c: Likewise.
	* gcc.dg/vect/vect-reduc-dot-s16a.c: Likewise.
	* gcc.dg/vect/vect-reduc-dot-s16b.c: Likewise.
	* gcc.dg/vect/vect-reduc-dot-s8a.c: Likewise.
	* gcc.dg/vect/vect-reduc-dot-s8b.c: Likewise.
	* gcc.dg/vect/vect-reduc-dot-s8c.c: Likewise.
	* gcc.dg/vect/vect-reduc-dot-u16a.c: Likewise.
	* gcc.dg/vect/vect-reduc-dot-u16b.c: Likewise.
	* gcc.dg/vect/vect-reduc-dot-u8a.c: Likewise.
	* gcc.dg/vect/vect-reduc-dot-u8b.c: Likewise.
	* gcc.dg/vect/vect-widen-mult-s16.c: Likewise.
	* gcc.dg/vect/vect-widen-mult-s8.c: Likewise.
	* gcc.dg/vect/vect-widen-mult-u16.c: Likewise.
	* gcc.dg/vect/vect-widen-mult-u8.c: Likewise.
	* gcc.dg/vect/wrapv-vect-reduc-dot-s8b.c: Likewise.

From-SVN: r147286
2009-05-08 06:39:01 -07:00
Richard Guenther
788d3075c5 re PR tree-optimization/40062 (high memory usage and compile time in SCEV cprop with -O3)
2009-05-08  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/40062
	* tree-scalar-evolution.c (follow_ssa_edge_in_condition_phi):
	Avoid exponential behavior.

From-SVN: r147283
2009-05-08 12:24:22 +00:00
Paolo Bonzini
00952e9784 re PR rtl-optimization/33928 (30% performance slowdown in floating-point code caused by r118475)
2009-05-08  Paolo Bonzini  <bonzini@gnu.org>

	PR rtl-optimization/33928
	PR 26854
	* fwprop.c (use_def_ref, get_def_for_use, bitmap_only_bit_bitween,
	process_uses, build_single_def_use_links): New.
	(update_df): Update use_def_ref.
	(forward_propagate_into): Use get_def_for_use instead of use-def
	chains.
	(fwprop_init): Call build_single_def_use_links and let it initialize
	dataflow.
	(fwprop_done): Free use_def_ref.
	(fwprop_addr): Eliminate duplicate call to df_set_flags.
	* df-problems.c (df_rd_simulate_artificial_defs_at_top, 
	df_rd_simulate_one_insn): New.
	(df_rd_bb_local_compute_process_def): Update head comment.
	(df_chain_create_bb): Use the new RD simulation functions.
	* df.h (df_rd_simulate_artificial_defs_at_top, 
	df_rd_simulate_one_insn): New.
	* opts.c (decode_options): Enable fwprop at -O1.
	* doc/invoke.texi (-fforward-propagate): Document this.

From-SVN: r147282
2009-05-08 12:22:30 +00:00
Joseph Myers
2ca862e9dd re PR c/24581 (Complex arithmetic on special cases is incorrect.)
PR c/24581
	* c-typeck.c (build_binary_op): Handle arithmetic between one real
	and one complex operand specially.
	* tree-complex.c (some_nonzerop): Do not identify a real value as
	zero if flag_signed_zeros.

testsuite:
	* gcc.dg/torture/complex-sign.h: New header.
	* gcc.dg/torture/complex-sign-add.c,
	gcc.dg/torture/complex-sign-mixed-add.c,
	gcc.dg/torture/complex-sign-mixed-div.c,
	gcc.dg/torture/complex-sign-mixed-mul.c,
	gcc.dg/torture/complex-sign-mixed-sub.c,
	gcc.dg/torture/complex-sign-mul.c,
	gcc.dg/torture/complex-sign-sub.c: New tests.

From-SVN: r147281
2009-05-08 11:22:08 +01:00
Janus Weil
cb8e4445ef re PR fortran/39876 (module procedure name that collides with the GNU intrinsic)
2009-05-08  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/39876
	* intrinsic.c (gfc_is_intrinsic): Do not add the EXTERNAL attribute if
	the symbol is a module procedure.


2009-05-08  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/39876
	* gfortran.dg/intrinsic_3.f90: New.

From-SVN: r147279
2009-05-08 11:08:13 +02:00
Paolo Bonzini
3e807ffc9d re PR rtl-optimization/33928 (30% performance slowdown in floating-point code caused by r118475)
2009-05-08  Paolo Bonzini  <bonzini@gnu.org>

	PR rtl-optimization/33928
        * loop-invariant.c (record_use): Fix && vs. || mishap.

From-SVN: r147274
2009-05-08 07:51:46 +00:00
Paolo Bonzini
1bfdbb2922 re PR rtl-optimization/33928 (30% performance slowdown in floating-point code caused by r118475)
2009-05-08  Paolo Bonzini  <bonzini@gnu.org>

	PR rtl-optimization/33928
        * loop-invariant.c (struct use): Add addr_use_p.
        (struct def): Add n_addr_uses.
        (struct invariant): Add cheap_address.
        (create_new_invariant): Set cheap_address.
        (record_use): Accept df_ref.  Set addr_use_p and update n_addr_uses.
        (record_uses): Pass df_ref to record_use.
        (get_inv_cost): Do not add inv->cost to comp_cost for cheap addresses used
	only as such.

From-SVN: r147270
2009-05-08 06:51:12 +00:00
Tobias Burnus
7e79080ad4 invoke.texi: Add do/recursion to the -fcheck= summary.
2009-05-08  Tobias Burnus  <burnus@net-b.de>

       * invoke.texi: Add do/recursion to the -fcheck= summary.

From-SVN: r147268
2009-05-08 08:21:15 +02:00
Kaz Kojima
702cb2a044 sh.c: Do not include c-pragma.h.
* config/sh/sh.c: Do not include c-pragma.h.

From-SVN: r147267
2009-05-08 03:39:09 +00:00
Andrew Pinski
5e8df75396 spu.c: Remove include of c-common.h.
2009-05-07  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        * config/spu/spu.c: Remove include of c-common.h.

From-SVN: r147266
2009-05-07 18:01:34 -07:00
Paolo Carlini
29e357fd7c throw_allocator.h: Remove redundante include.
2009-05-07  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/ext/throw_allocator.h: Remove redundante include.

From-SVN: r147265
2009-05-08 00:49:35 +00:00
Paolo Carlini
9fcf9c24a1 throw_allocator.h (throw_allocator_base): Avoid out of line member functions definitions.
2009-05-07  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/ext/throw_allocator.h (throw_allocator_base): Avoid
	out of line member functions definitions.
	(throw_allocator_base::_S_g, _S_map, _S_throw_prob, _S_label):
	Remove, use static locals instead.
	(throw_allocator_base::do_check_allocated, print_to_string): Declare.
	* src/throw_allocator.cc: New.
	* src/Makefile.am: Add.
	* config/abi/pre/gnu.ver: Add exports.
	* src/Makefile.in: Regenerate.

From-SVN: r147264
2009-05-08 00:39:28 +00:00
GCC Administrator
c704f737f0 Daily bump.
From-SVN: r147263
2009-05-08 00:16:37 +00:00
Janis Johnson
6ec637a4b8 re PR c/39037 (FLOAT_CONST_DECIMAL64 pragma not supported)
gcc/
	PR c/39037
	* c-common.h (mark_valid_location_for_stdc_pragma,
	valid_location_for_stdc_pragma_p, set_float_const_decimal64,
	clear_float_const_decimal64, float_const_decimal64_p): New.
	* c.opt (Wunsuffixed-float-constants): New.
	* c-lex.c (interpret_float): Use pragma FLOAT_CONST_DECIMAL64 for
	unsuffixed float constant, handle new warning.
	* c-cppbuiltin.c (c_cpp_builtins): Use cast for double constants.
	* c-decl.c (c_scope): New flag float_const_decimal64.
	(set_float_const_decimal64, clear_float_const_decimal64,
	float_const_decimal64_p): New.
	(push_scope): Set new flag.
	* c-parser.c (c_parser_translation_unit): Mark when it's valid
	to use STDC pragmas.
	(c_parser_external_declaration): Ditto.
	(c_parser_compound_statement_nostart): Ditto.
	* c-pragma.c (valid_location_for_stdc_pragma,
	mark_valid_location_for_stdc_pragma,
	valid_location_for_stdc_pragma_p, handle_stdc_pragma,
	handle_pragma_float_const_decimal64): New.
	(init_pragma): Register new pragma FLOAT_CONST_DECIMAL64.
	* cp/semantics.c (valid_location_for_stdc_pragma_p,
	set_float_const_decimal64, clear_float_const_decimal64,
	float_const_decimal64_p): New dummy functions.
	* doc/extend.texi (Decimal Float): Remove statement that the
	pragma, and suffix for double constants, are not supported.
	* doc/invoke.texi (Warning Options): List new option.
	(-Wunsuffixed-float-constants): New.

gcc/testsuite
	PR c/39037
	* gcc.dg/Wunsuffixed-float-constants-1.c: New test.
	* gcc.dg/cpp/pragma-float-const-decimal64-1.c: New test.
	* gcc.dg/dfp/float-constant-double.c: New test.
	* gcc.dg/dfp/pragma-float-const-decimal64-1.c: New test.
	* gcc.dg/dfp/pragma-float-const-decimal64-2.c: New test.
	* gcc.dg/dfp/pragma-float-const-decimal64-3.c: New test.
	* gcc.dg/dfp/pragma-float-const-decimal64-4.c: New test.
	* gcc.dg/dfp/pragma-float-const-decimal64-5.c: New test.
	* gcc.dg/dfp/pragma-float-const-decimal64-6.c: New test.
	* gcc.dg/dfp/pragma-float-const-decimal64-7.c: New test.
	* gcc.dg/dfp/pragma-float-const-decimal64-8.c: New test.
	* g++.dg/cpp/pragma-float-const-decimal64-1.C: New test.

From-SVN: r147259
2009-05-07 22:34:08 +00:00
Francois-Xavier Coudert
2995ed9a27 re PR fortran/38830 (Document lack of "Variable Format Expression" support)
PR fortran/38830
	* gfortran.texi: Document that we don't support variable FORMAT
	expressions.

From-SVN: r147258
2009-05-07 22:14:23 +00:00
Francois-Xavier Coudert
13c7a7e5d6 re PR fortran/39576 (gcc/fortran/error.c's error.c missing "break")
PR fortran/39576
	* error.c (error_print): Add missing break statement.

From-SVN: r147257
2009-05-07 22:01:34 +00:00
Francois-Xavier Coudert
6e8cb9bef0 re PR fortran/36382 (Support $ as first character in symbol names and in IMPLICT)
PR fortran/36382
	* invoke.texi: Document that -fdollar-ok does not allow $ to be
	used in IMPLICIT statement.

From-SVN: r147256
2009-05-07 21:48:14 +00:00
François-Xavier Coudert
743460ea82 re PR libfortran/22423 (Warnings when building libgfortran)
PR fortran/22423

	* io/transfer.c (read_block_direct): Avoid warning.
	* runtime/string.c (compare0): Avoid warning.

From-SVN: r147254
2009-05-07 21:42:22 +00:00
Steven Bosscher
45b9b2e927 * config/i386/i386.c: Do not include c-common.h.
From-SVN: r147250
2009-05-07 20:47:24 +00:00
Mark Heffernan
e71da632ea invoke.texi (Debugging Options): Document change of debugging dump location.
2009-05-07  Mark Heffernan  <meheff@google.com>

	* doc/invoke.texi (Debugging Options): Document change of debugging
	dump location.
        * opts.c (decode_options): Make dump_base_name relative to
	aux_base_name directory.

From-SVN: r147249
2009-05-07 19:58:10 +00:00
Hariharan Sandanagobalane
fe4c7bc6ac picochip.h (NO_DOLLAR_IN_LABEL): Added.
* config/picochip/picochip.h (NO_DOLLAR_IN_LABEL): Added.
* config/picochip/libgccExtras/divmod15.asm : Removed redefiniton.

From-SVN: r147248
2009-05-07 17:52:30 +00:00
Rafael Avila de Espindola
3b3e44eb81 Makefile.in (install-plugin): Simplify a bit.
2009-05-07  Rafael Avila de Espindola  <espindola@google.com>

	* Makefile.in (install-plugin): Simplify a bit.

From-SVN: r147244
2009-05-07 15:49:19 +00:00
Paolo Bonzini
fac412383e Makefile.in (OBJS-common): Add regcprop.o.
2009-05-07  Paolo Bonzini  <bonzini@gnu.org>

	* Makefile.in (OBJS-common): Add regcprop.o.
	(regcprop.o): New.
	* timevar.def (TV_CPROP_REGISTERS): New.
	* regrename.c (regrename_optimize): Return 0.
	(rest_of_handle_regrename): Delete.
	(pass_rename_registers): Point to regrename_optimize.
	(struct value_data_entry, struct value_data, 
	kill_value_one_regno, kill_value_regno, kill_value,
	set_value_regno, init_value_data, kill_clobbered_value,
	kill_set_value, kill_autoinc_value, copy_value,
	mode_change_ok, maybe_mode_change, find_oldest_value_reg,
	replace_oldest_value_reg, replace_oldest_value_addr,
	replace_oldest_value_mem, copyprop_hardreg_forward_1,
	debug_value_data, validate_value_data): Move...
	* regcprop.c: ... here.
	(rest_of_handle_cprop): Delete.
	(pass_cprop_hardreg): Point to copyprop_hardreg_forward.

From-SVN: r147243
2009-05-07 15:47:11 +00:00
Jakub Jelinek
472e0df9f0 re PR middle-end/40057 (Incorrect right shift by 31 with long long)
PR middle-end/40057
	* dojump.c (prefer_and_bit_test): Use immed_double_const instead of
	GEN_INT for 1 << bitnum.
	(do_jump) <case BIT_AND_EXPR>: Use build_int_cst_wide_type instead of
	build_int_cst_type.

	* gcc.c-torture/execute/pr40057.c: New test.

From-SVN: r147241
2009-05-07 17:27:40 +02:00
Paolo Carlini
262118b947 configure.ac: Bump libtool_VERSION to 6:12:0.
2009-05-07  Paolo Carlini  <paolo.carlini@oracle.com>

	* configure.ac: Bump libtool_VERSION to 6:12:0.
	* configure: Regenerate.

From-SVN: r147228
2009-05-07 10:22:46 +00:00
Arnaud Charlet
59141a28ca * gcc-interface/Make-lang.in: Update dependencies
From-SVN: r147227
2009-05-07 12:00:43 +02:00
Paolo Bonzini
1cee34299e [multiple changes]
2009-05-07  Paolo Bonzini  <bonzini@gnu.org>

	* config.guess: Sync with src.

config:
2009-05-07  Paolo Bonzini

	Sync from src:
	2009-02-02  Doug Evans  <dje@google.com>

	* tcl.m4 (SC_PATH_TCLCONFIG): Don't exit 0 if tclconfig fails.
	(SC_PATH_TKCONFIG): Don't exit 0 if tkconfig fails.
	(SC_LOAD_TCLCONFIG): Quote all uses of TCL_BIN_DIR, it may contain
	"# no Tcl configs found".
	(SC_LOAD_TKCONFIG): Similarily for TK_BIN_DIR.

From-SVN: r147225
2009-05-07 08:36:43 +00:00
Uros Bizjak
0d50d55aa1 md.texi (Standard Pattern Names For Generation): Remove wrong description of "nand" functionality.
* doc/md.texi (Standard Pattern Names For Generation) [sync_nand]:
	Remove wrong description of "nand" functionality.

From-SVN: r147222
2009-05-07 10:11:04 +02:00
Uros Bizjak
aa016ff75a ChangeLog: Whitespace fixes.
* ChangeLog: Whitespace fixes.
	* testsuite/ChangeLog: Ditto.

From-SVN: r147220
2009-05-07 09:47:35 +02:00
Matthias Klose
76104d42a4 re PR libstdc++/40038 (symbols ceill@GLIBCXX_3.4.3 not exported)
2009-05-07  Matthias Klose  <doko@ubuntu.com>

	PR libstdc++/40038
	* src/math_stubs_long_double.cc: Add ceill.

From-SVN: r147217
2009-05-07 06:55:15 +00:00
Dave Korn
0b70eafda5 configure.ac ($with_ppl): Default to no if not supplied.
* configure.ac ($with_ppl):  Default to no if not supplied.
	($with_cloog):  Likewise.
	configure:  Regenerate.

From-SVN: r147216
2009-05-07 05:23:16 +00:00
Jim Wilson
585be9ef56 Correct changelog from last checkin, cut-n-paste from wrong patch file.
* gcc.c-torture/compile/const-high-part.c: New test.

From-SVN: r147214
2009-05-06 17:26:46 -07:00
James E. Wilson
e289f7a42d * gcc.target/mips/const-high-part.c: New test.
From-SVN: r147213
2009-05-06 17:24:53 -07:00
GCC Administrator
8aa7ac967f Daily bump.
From-SVN: r147212
2009-05-07 00:17:11 +00:00
Richard Guenther
22f597f1ad gimple.def (GIMPLE_ASSIGN): Fix incorrect information in the comment.
* gimple.def (GIMPLE_ASSIGN): Fix incorrect information in the
	comment.  Add that if LHS is not a gimple register, then RHS1 has
	to be a single object (GIMPLE_SINGLE_RHS).

Co-Authored-By: Adam Nemet <anemet@caviumnetworks.com>

From-SVN: r147209
2009-05-06 21:40:10 +00:00
H.J. Lu
2ff2235ced re PR testsuite/40050 (plugin tests don't work with multilib)
2009-05-06  H.J. Lu  <hongjiu.lu@intel.com>

	PR testsuite/40050
	* lib/plugin-support.exp (plugin-test-execute): Use HOSTCC to
	build plugin.

From-SVN: r147208
2009-05-06 14:31:56 -07:00
Laurent GUERBY
e84efdce90 s-linux.ads, [...]: Define sa_handler_pos.
2009-05-06  Laurent GUERBY <laurent@guerby.net>

        * s-linux.ads, s-linux-alpha.ads, s-linux-hppa.ads, 
        osinte-linux.ads: Define sa_handler_pos.
        * s-osinte-linux.ads: Use it.
        * s-linux-mipsel.ads: New.	
        * system-linux-mips64el.ads: New.
        * gcc-interface/Makefile.in: Multilib handling for
        mipsel-linux and mips64el-linux.

From-SVN: r147207
2009-05-06 21:22:56 +00:00
Janus Weil
713485cc67 re PR fortran/39630 ([F03] Procedure Pointer Components)
2009-05-06  Janus Weil  <janus@gcc.gnu.org>
	    Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/39630
	* decl.c (match_procedure_interface): New function to match the
	interface for a PROCEDURE statement.
	(match_procedure_decl): Call match_procedure_interface.
	(match_ppc_decl): New function to match the declaration of a
	procedure pointer component.
	(gfc_match_procedure):  Call match_ppc_decl.
	(match_binding_attributes): Add new argument 'ppc' and handle the
	POINTER attribute for procedure pointer components.
	(match_procedure_in_type,gfc_match_generic): Added new argument to
	match_binding_attributes.
	* dump-parse-tree.c (show_expr,show_components,show_code_node): Handle
	procedure pointer components.
	* expr.c (free_expr0,gfc_copy_expr,gfc_simplify_expr): Handle EXPR_PPC.
	(gfc_check_pointer_assign): Handle procedure pointer components, but no
	full checking yet.
	(is_proc_ptr_comp): New function to determine if an expression is a
	procedure pointer component.
	* gfortran.h (expr_t): Add EXPR_PPC.
	(symbol_attribute): Add new member 'proc_pointer_comp'.
	(gfc_component): Add new member 'formal'.
	(gfc_exec_op): Add EXEC_CALL_PPC.
	(gfc_get_default_type): Changed first argument.
	(is_proc_ptr_comp): Add prototype.
	(gfc_match_varspec): Add new argument.
	* interface.c (compare_actual_formal): Handle procedure pointer
	components.
	* match.c (gfc_match_pointer_assignment,match_typebound_call): Handle
	procedure pointer components.
	* module.c (mio_expr): Handle EXPR_PPC.
	* parse.c (parse_derived): Handle procedure pointer components.
	* primary.c (gfc_match_varspec): Add new argument 'ppc_arg' and handle
	procedure pointer components.
	(gfc_variable_attr): Handle procedure pointer components.
	(gfc_match_rvalue): Added new argument to gfc_match_varspec and changed
	first argument of gfc_get_default_type.
	(match_variable): Added new argument to gfc_match_varspec.
	* resolve.c (resolve_entries,set_type,resolve_fl_parameter): Changed
	first argument of gfc_get_default_type.
	(resolve_structure_cons,resolve_actual_arglist): Handle procedure
	pointer components.
	(resolve_ppc_call): New function to resolve a call to a procedure
	pointer component (subroutine).
	(resolve_expr_ppc): New function to resolve a call to a procedure
	pointer component (function).
	(gfc_resolve_expr): Handle EXPR_PPC.
	(resolve_code): Handle EXEC_CALL_PPC.
	(resolve_fl_derived): Copy the interface for a procedure pointer
	component.
	(resolve_symbol): Fix overlong line.
	* st.c (gfc_free_statement): Handle EXEC_CALL_PPC.
	* symbol.c (gfc_get_default_type): Changed first argument.
	(gfc_set_default_type): Changed first argument of gfc_get_default_type.
	(gfc_add_component): Initialize ts.type to BT_UNKNOWN.
	* trans.h (gfc_conv_function_call): Renamed.
	* trans.c (gfc_trans_code): Handle EXEC_CALL_PPC.
	* trans-expr.c (gfc_conv_component_ref): Ditto.
	(gfc_conv_function_val): Rename to 'conv_function_val', add new
	argument 'expr' and handle procedure pointer components.
	(gfc_conv_operator_assign): Renamed gfc_conv_function_val.
	(gfc_apply_interface_mapping_to_expr): Handle EXPR_PPC.
	(gfc_conv_function_call): Rename to 'gfc_conv_procedure_call', add new
	argument 'expr' and handle procedure pointer components.
	(gfc_get_proc_ptr_comp): New function to get the backend decl for a
	procedure pointer component.
	(gfc_conv_function_expr): Renamed gfc_conv_function_call.
	(gfc_conv_structure): Handle procedure pointer components.
	* trans-intrinsic.c (gfc_conv_intrinsic_funcall,
	conv_generic_with_optional_char_arg): Renamed gfc_conv_function_call.
	* trans-stmt.h (gfc_get_proc_ptr_comp): Add prototype.
	* trans-stmt.c (gfc_trans_call): Renamed gfc_conv_function_call.
	* trans-types.h (gfc_get_ppc_type): Add prototype.
	* trans-types.c (gfc_get_ppc_type): New function to build a tree node
	for a procedure pointer component.
	(gfc_get_derived_type): Handle procedure pointer components.


2009-05-06  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/39630
	* gfortran.dg/proc_decl_1.f90: Modified.
	* gfortran.dg/proc_ptr_comp_1.f90: New.
	* gfortran.dg/proc_ptr_comp_2.f90: New.
	* gfortran.dg/proc_ptr_comp_3.f90: New.
	* gfortran.dg/proc_ptr_comp_4.f90: New.
	* gfortran.dg/proc_ptr_comp_5.f90: New.
	* gfortran.dg/proc_ptr_comp_6.f90: New.


Co-Authored-By: Paul Thomas <pault@gcc.gnu.org>

From-SVN: r147206
2009-05-06 23:17:16 +02:00
Adam Nemet
641cac0b19 expr.c (get_def_for_expr): Move it up in the file.
* expr.c (get_def_for_expr): Move it up in the file.
	(store_field): When expanding a bit-field store, look at the
	defining gimple stmt for the masking conversion.

From-SVN: r147203
2009-05-06 20:46:25 +00:00
Dodji Seketeli
c7cb9f42a8 re PR c++/17395 (Incorrect lookup for parameters)
2009-05-06  Dodji Seketeli  <dodji@redhat.com>

    gcc/cp/ChangeLog:
    	PR c++/17395
    	* pt.c (tsubst_copy) <case PARM_DECL>: We don't want to tsubst the
    	whole list of PARM_DECLs, just the current one.
    
    gcc/testsuite/ChangeLog:
    	PR c++/17395
    	* g++.dg/template/call7.C: New test.

From-SVN: r147201
2009-05-06 22:41:52 +02:00
H.J. Lu
ab3426a775 Remove extra '('.
From-SVN: r147198
2009-05-06 11:18:41 -07:00