Commit Graph

98248 Commits

Author SHA1 Message Date
Steve Ellcey
65c0a517d9 Makefile.in (tree-sra.o): Add $(EXPR_H) dependency.
2010-01-22  Steve Ellcey  <sje@cup.hp.com>

	* Makefile.in (tree-sra.o): Add $(EXPR_H) dependency.
	* tree-sra.c: Add include of expr.h.

From-SVN: r156181
2010-01-22 22:22:51 +00:00
Joern Rennecke
45bbb86d51 * gcc-plugin.h (plugin_init): Use "C" likage for c++.
From-SVN: r156179
2010-01-22 21:01:49 +00:00
Daniel Frey
0d9709e1bf functional (_Index_tuple, [...]): Simplify and speed-up.
2010-01-22  Daniel Frey  <d.frey@gmx.de>

	* include/std/functional (_Index_tuple, _Build_index_tuple):
	Simplify and speed-up.

From-SVN: r156178
2010-01-22 20:50:15 +00:00
Jakub Jelinek
c47987fa5b tree-into-ssa.c (maybe_register_def): If stmt ends the bb, insert the debug stmt on the single non-EH edge from the stmt.
* tree-into-ssa.c (maybe_register_def): If stmt ends the bb,
	insert the debug stmt on the single non-EH edge from the stmt.

From-SVN: r156177
2010-01-22 20:20:51 +01:00
Richard Henderson
002cda0a8b re PR tree-optimization/42833 (sra miscompiles qemu)
PR tree-opt/42833
	* tree-sra.c (sra_modify_assign): Delay re-gimplification of
	the RHS until after generate_subtree_copies has insertted its
	code before the current statement.

From-SVN: r156176
2010-01-22 10:52:01 -08:00
Joern Rennecke
728d406cd7 * doc/tm.texi (TARGET_MIN_DIVISIONS_FOR_RECIP_MUL): Fix return type.
From-SVN: r156175
2010-01-22 17:00:27 +00:00
Joern Rennecke
aae29963cf PR libstdc++/36101, PR libstdc++/42813
PR libstdc++/36101, PR libstdc++/42813
[toplevel]:
	* configure.ac (target_configdirs): Substitute.
	* Makefile.def: Bootstrap target module libgomp.
	Add dependency of all-target-libstdc++-v3 on configure-target-libgomp.
	* Makefile.tpl (TARGET_CONFIGDIRS): New makefile variable.
	(BASE_TARGET_EXPORTS): Export TARGET_CONFIGDIRS.
	* configure, Makefile.in: Regenerate.
libstdc++-v3:
	* acinclude.m4: (enable_parallel): Test ${TARGET_CONFIGDIRS} instead of
	loking for omp.h .
	* configure: Regenerate.

From-SVN: r156172
2010-01-22 13:35:38 +00:00
Michael Matz
addb239cd3 fast-math-mgrid-resid.f: Limit to x86, add -msse2.
* gfortran.dg/vect/fast-math-mgrid-resid.f: Limit to x86, add
        -msse2.

From-SVN: r156170
2010-01-22 13:13:18 +00:00
Eric Botcazou
ca6b063db1 system-linux-armel.ads (Stack_Check_Probes): Set to True.
* system-linux-armel.ads (Stack_Check_Probes): Set to True.
	* system-linux-armeb.ads (Stack_Check_Probes): Likewise.

From-SVN: r156169
2010-01-22 11:55:45 +00:00
Shujing Zhao
d3c375f58f exgettext: Handle the functions and the macro definitions that the arguments are broken...
2010-01-22  Shujing Zhao  <pearly.zhao@oracle.com>

        * exgettext: Handle the functions and the macro definitions that the
        arguments are broken into more than one line.

From-SVN: r156168
2010-01-22 02:50:44 +00:00
GCC Administrator
c4d188d54a Daily bump.
From-SVN: r156164
2010-01-22 00:16:46 +00:00
Paul Thomas
3c3b62d1a5 re PR fortran/42736 (Wrong-code with allocatable or pointer components in elemental functions)
2010-01-21  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/42736
	* trans-stmt.c (gfc_conv_elemental_dependencies): If temporary
	is required, turn any trailing array elements after a range
	into ranges so that offsets can be calculated.

2010-01-21  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/42736
	* gfortran.dg/dependency_25.f90 : New test.

From-SVN: r156161
2010-01-21 20:38:51 +00:00
Martin Jambor
7744b697eb re PR tree-optimization/42585 (SRA is not good for structure copies with one replacement any more)
2010-01-21  Martin Jambor  <mjambor@suse.cz>

	PR tree-optimization/42585
	* tree-sra.c (struct access): New field grp_total_scalarization.
	(dump_access): Dump the new field.
	(should_scalarize_away_bitmap): New variable.
	(cannot_scalarize_away_bitmap): Likewise.
	(sra_initialize): Allocate new bitmaps.
	(sra_deinitialize): Free new bitmaps.
	(create_access_1): New function.
	(create_access): Parts moved to create_access_1.
	(type_consists_of_records_p): New function.
	(completely_scalarize_record): Likewise.
	(build_access_from_expr): Set bit in cannot_scalarize_away_bitmap.
	(build_accesses_from_assign): Set bits in should_scalarize_away_bitmap.
	(sort_and_splice_var_accesses): Hint groups with a total_scalarization
	access.
	(analyze_all_variable_accesses): Completely scalarize small eligible
	records.

	* testsuite/gcc.dg/tree-ssa/pr42585.c: New test.

From-SVN: r156156
2010-01-21 17:18:06 +01:00
Martin Jambor
fff08961d5 tree-sra.c (build_ref_for_offset_1): Allow for zero size fields.
2010-01-21  Martin Jambor  <mjambor@suse.cz>

	* tree-sra.c (build_ref_for_offset_1): Allow for zero size fields.

From-SVN: r156155
2010-01-21 17:04:12 +01:00
Andrew Haley
a288b14325 gcc.c (process_command): Move lang_specific_driver before setting cc_libexec_prefix.
2010-01-21  Andrew Haley  <aph@redhat.com>

        * gcc.c (process_command): Move lang_specific_driver before
        setting cc_libexec_prefix.

From-SVN: r156154
2010-01-21 15:29:30 +00:00
Richard Guenther
4e62a0175b re PR middle-end/19988 (pessimizes fp multiply-add/subtract combo)
2010-01-21  Richard Guenther  <rguenther@suse.de>

	PR middle-end/19988
	* fold-const.c (negate_expr_p): Pretend only negative
	real constants are easily negatable.

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

From-SVN: r156152
2010-01-21 12:15:40 +00:00
Eric B. Weddington
ebfe4897fc MAINTAINERS (CPU Port Maintainers): Add myself for avr port.
2010-01-20  Eric B. Weddington  <eric.weddington@atmel.com>

	* MAINTAINERS (CPU Port Maintainers): Add myself for avr port.

From-SVN: r156107
2010-01-21 05:51:35 +00:00
Janis Johnson
ebf0bf7f49 tree.h (TYPE_TRANSPARENT_UNION): Replace with ...
* tree.h (TYPE_TRANSPARENT_UNION): Replace with ...
	(TYPE_TRANSPARENT_AGGR): this, for union and record.
	* calls.c (initialize argument_information): Handle it.
	* c-common.c (handle_transparent_union_attribute): Use new name.
	* c-decl.c (finish_struct): Ditto.
	* c-typeck.c (type_lists_compatible_p): Ditto.
	(convert_for_assignment): Use new name and also handle record.
	* function.c (aggregate_value_p): Handle it.
	(pass_by_reference): Ditto.
	(assign_parm_data_types): Ditto.
	* print-tree.c (print_node): Ditto.
	* lto-streamer-in.c (unpack_ts_type_value_fields): Ditto.
	* lto-streamer-out.c (pack_ts_type_value_fields): Ditto.
	* tree.c (first_field): New fn.

gcc/cp/
	* mangle.c (write_type): Mangle transparent record as member type.
	* semantics.c (begin_class_definition): Recognize decimal classes
	and set TYPE_TRANSPARENT_AGGR.

Co-Authored-By: Jason Merrill <jason@redhat.com>

From-SVN: r156106
2010-01-21 00:49:35 -05:00
Dave Korn
907c6efdbc re PR target/42818 (Static C++ linking breakage "undefined reference to ___real__Znwj" and others in libcygwin.a(_cygwin_crt0_common.o))
PR target/42818
	* config/i386/cygwin.h (CXX_WRAP_SPEC_LIST): Always apply wrappers,
	even when linking statically, for now.

From-SVN: r156105
2010-01-21 04:56:38 +00:00
Dave Korn
d8fe889592 MAINTAINERS: Adjust my details.
* MAINTAINERS: Adjust my details.

From-SVN: r156104
2010-01-21 04:34:02 +00:00
Jason Merrill
4d43dcdeb5 re PR c++/42338 ([c++0x] ICE on decltype usage with templates)
PR c++/42338
	* mangle.c (write_expression): Handle tree codes that have extra
	arguments in the middle-end.
	* cp-demangle.c (d_print_comp): Fix array index printing.

From-SVN: r156103
2010-01-20 20:58:53 -05:00
Alexandre Oliva
f827f65933 re PR other/42715 (output_operand: invalid expression as operand)
PR debug/42715
	* var-tracking.c (use_type): Choose MO_VAL_SET for REGs set
	without a cselib val.
	(count_uses): Accept MO_VAL_SET with no val on stores.
	(add_stores): Likewise.

	* gcc.dg/pr42715.c: New.

From-SVN: r156102
2010-01-21 01:42:02 +01:00
Jakub Jelinek
a85caf9e0b var-tracking.c (check_value_val): Add a compile time assertion.
* var-tracking.c (check_value_val): Add a compile time assertion.
	(dv_is_decl_p): Simplify.
	(dv_as_decl, dv_as_value, dv_from_decl, dv_from_value): Only use
	gcc_assert if ENABLE_CHECKING.

From-SVN: r156101
2010-01-21 01:39:57 +01:00
GCC Administrator
a22d08aabf Daily bump.
From-SVN: r156100
2010-01-21 00:16:45 +00:00
Jonathan Wakely
b3eed6fe78 re PR libstdc++/42201 ([C++0x] std::vector<std::unique_future<T>>::push_back fails)
2010-01-21  Jonathan Wakely  <jwakely.gcc@gmail.com>

        PR libstdc++/42201
	* include/std/future: Update to latest WP.
	* src/functexcept.cc (__throw_future_error): Use make_error_code.
	* testsuite/30_threads/async/any.cc: New.
	* testsuite/30_threads/async/async.cc: New.
	* testsuite/30_threads/async/sync.cc: New.
	* testsuite/30_threads/packaged_task/cons/alloc.cc: New.
	* testsuite/30_threads/packaged_task/cons/assign_neg.cc: Adjust.
	* testsuite/30_threads/packaged_task/cons/copy_neg.cc: Adjust.
	* testsuite/30_threads/packaged_task/members/get_future.cc: Adjust.
	* testsuite/30_threads/packaged_task/members/get_future2.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/invoke.cc: Adjust.
	* testsuite/30_threads/packaged_task/members/invoke2.cc: Adjust.
	* testsuite/30_threads/packaged_task/members/invoke3.cc: Adjust.
	* testsuite/30_threads/packaged_task/members/invoke4.cc: Adjust.
	* testsuite/30_threads/packaged_task/members/reset.cc: Adjust.
	* testsuite/30_threads/packaged_task/members/reset2.cc: Adjust.
	* testsuite/30_threads/shared_future/cons/assign_neg.cc: Remove.
	* testsuite/30_threads/shared_future/cons/default_neg.cc: Remove.
	* testsuite/30_threads/shared_future/cons/default.cc: New.
	* testsuite/30_threads/shared_future/cons/assign.cc: New.
	* testsuite/30_threads/shared_future/cons/copy.cc: Adjust.
	* testsuite/30_threads/shared_future/cons/move.cc: Adjust.
	* testsuite/30_threads/shared_future/cons/move_assign.cc: New.
	* testsuite/30_threads/shared_future/members/is_ready.cc: Remove.
	* testsuite/30_threads/shared_future/members/has_value.cc: Remove.
	* testsuite/30_threads/shared_future/members/has_exception.cc: Remove.
	* testsuite/30_threads/shared_future/members/valid.cc: New.
	* testsuite/30_threads/unique_future/cons/default_neg.cc: Remove.
	* testsuite/30_threads/unique_future/cons/default.cc: New.
	* testsuite/30_threads/unique_future/cons/move_assign.cc: New.
	* testsuite/30_threads/unique_future/cons/assign_neg.cc: Adjust.
	* testsuite/30_threads/unique_future/cons/copy_neg.cc: Adjust.
	* testsuite/30_threads/unique_future/cons/move.cc: Adjust.
	* testsuite/30_threads/unique_future/requirements/
        explicit_instantiation.cc: Adjust.
	* testsuite/30_threads/unique_future/members/is_ready.cc: Remove.
	* testsuite/30_threads/unique_future/members/has_value.cc: Remove.
	* testsuite/30_threads/unique_future/members/has_exception.cc: Remove.
	* testsuite/30_threads/unique_future/members/valid.cc: New.
	* testsuite/30_threads/unique_future/members/get.cc: Adjust.
	* testsuite/30_threads/unique_future/members/get2.cc: Adjust.
	* testsuite/30_threads/unique_future/members/wait.cc: Adjust.
	* testsuite/30_threads/unique_future/members/wait_for.cc: Adjust.
	* testsuite/30_threads/unique_future/members/wait_until.cc: Adjust.
	* testsuite/30_threads/headers/future/types_std_c++0x.cc: Adjust.
	* testsuite/30_threads/promise/cons/alloc.cc: New.
	* testsuite/30_threads/promise/cons/assign_neg.cc: Adjust.
	* testsuite/30_threads/promise/cons/copy_neg.cc: Adjust.
	* testsuite/30_threads/promise/cons/move.cc: Adjust.
	* testsuite/30_threads/promise/cons/move_assign.cc: Adjust.
	* testsuite/30_threads/promise/members/get_future.cc: Adjust.
	* testsuite/30_threads/promise/members/set_value.cc: Adjust.
	* testsuite/30_threads/promise/members/set_exception.cc: Adjust.
	* testsuite/30_threads/promise/members/set_exception2.cc: Adjust.
	* testsuite/30_threads/promise/members/set_value2.cc: Adjust.
	* testsuite/30_threads/promise/members/set_value3.cc: Adjust.
	* testsuite/30_threads/promise/members/swap.cc: Adjust.

From-SVN: r156097
2010-01-21 00:01:47 +00:00
Paolo Carlini
4227d4a1a5 re PR c++/42038 (ICE: tree check: expected class 'type', have 'exceptional' (error_mark) in useless_type_conversion_p)
/cp
2010-01-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/42038
	* except.c (expand_start_catch_block): Deal correctly with
	do_begin_catch returning error_mark_node.

/testsuite
2010-01-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/42038
	* g++.dg/parse/crash55.C: New.

From-SVN: r156094
2010-01-20 23:12:25 +00:00
Alexandre Oliva
4a4d4c08ed re PR debug/42782 (VTA missed location: parameter via stack)
PR debug/42782
	* var-tracking.c: Include tree-flow.h.
	(mem_dies_at_call): New.
	(dataflow_set_preserve_mem_locs): Use it.
	(dataflow_set_remove_mem_locs): Likewise.
	(dump_var): Renamed from dump_variable.  Adjust all callers.
	(dump_var_slot): Renamed from dump_variable_slot.  Likewise.
	* Makefile.in (var-tracking.o): Adjust deps.

	* gcc.dg/guality/pr42782.c: New.

From-SVN: r156092
2010-01-20 23:57:20 +01:00
Joern Rennecke
50e87e30cd * doc/tm.texi (TARGET_SCHED_SET_SCHED_FLAGS): Fix argument list.
From-SVN: r156091
2010-01-20 22:21:27 +00:00
Jason Merrill
ef93ad59d1 * g++.dg/parse/fn-typedef1.C: Add dg-do run.
From-SVN: r156089
2010-01-20 17:15:00 -05:00
Jason Merrill
a402c1b130 re PR c++/41788 (-Wpacked option changes the layout of packed non-POD structs)
PR c++/41788
	* class.c (layout_class_type): Set packed_maybe_necessary for packed
	non-PODs.

From-SVN: r156088
2010-01-20 17:14:51 -05:00
Jason Merrill
1f4a7a481f re PR c++/41920 ([C++0x] Invalid 'unused parameter' warning for parameters used in lambdas)
PR c++/41920
	* semantics.c (build_lambda_object): Call mark_used on captured
	variables.

From-SVN: r156085
2010-01-20 16:30:28 -05:00
Jason Merrill
e4672ccdb3 re PR c++/40750 (Side-effect of member function call not produced in certain circumstances)
PR c++/40750
	* decl.c (grokdeclarator): Clear type_quals for a member function
	declared using a typedef.  Don't complain about adding cv-quals
	to a function typedef in C++0x mode.

From-SVN: r156084
2010-01-20 16:30:20 -05:00
Anthony Green
35b954c12d Testsuite cleanups for moxie.
From-SVN: r156081
2010-01-20 14:17:00 +00:00
Joseph Myers
c04f9611f5 * zh_CN.po: Update.
From-SVN: r156080
2010-01-20 13:15:55 +00:00
Richard Guenther
e9a8afaafc re PR tree-optimization/42717 (ice: verify_ssa failed)
2010-01-20  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/42717
	* tree-ssa-dce.c (get_live_post_dom): Remove.
	(forward_edge_to_pdom): Take an arbitrary edge to copy
	degenerate PHI args from.
	(remove_dead_stmt): Use the first post-dominator even if it
	does not contain live statements as redirection destination.

	* gcc.c-torture/compile/pr42717.c: New testcase.

From-SVN: r156076
2010-01-20 12:30:15 +00:00
Janis Johnson
bd9b2e5379 re PR libstdc++/21769 (per-file control over PCH inclusion)
2010-01-20  Janis Johnson  <janis187@us.ibm.com>
	    Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/21769
	* testsuite/lib/dg-options.exp (add_options_for_no_pch): Add.
	* testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
	Use it.


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

From-SVN: r156075
2010-01-20 11:57:44 +00:00
Richard Guenther
be2fd18721 tree-inline.c (estimate_num_insns): Handle EH builtins.
2010-01-20  Richard Guenther  <rguenther@suse.de>

	* tree-inline.c (estimate_num_insns): Handle EH builtins.

From-SVN: r156073
2010-01-20 11:47:39 +00:00
Jakub Jelinek
1124098bb2 sel-sched.c (create_speculation_check): Remove set but not used variable twin.
* sel-sched.c (create_speculation_check): Remove set but not used
	variable twin.
	(try_transformation_cache): Remove set but not used variable ds.
	(calculate_privileged_insns): Remove set but not used variables
	cur_insn and min_spec_insn.
	(find_best_expr): Remove set but not used variable avail_n.
	* tree-predcom.c (base_names_in_chain_on): Remove set but not used
	variable e.
	* cgraphunit.c (assemble_thunk): Remove set but not used variable
	false_label.
	* haifa-sched.c (remove_notes): Remove set but not used variable prev.
	* graphite-clast-to-gimple.c (gloog): Remove set but not used variable
	new_scop_exit_edge.

	* decl.c (create_array_type_for_decl): Remove set but not used
	variable error_msg.  Remove break stmts after return stmts.

From-SVN: r156072
2010-01-20 12:30:05 +01:00
Felyza Wishbringer
83a5ef25d3 re PR bootstrap/42786 (Athlon SSE3 and Fx processors not supported by configure)
PR bootstrap/42786
	* config.gcc (i[34567]86-*-*): Fix handling of athlon64 and athlon-fx
	cpu types.  Add support for *-sse3 cpu types.
	(x86_64-*-*): Ditto.

From-SVN: r156071
2010-01-20 12:27:49 +01:00
Jakub Jelinek
b5c0899b50 re PR middle-end/42803 (c++ compilation hang)
PR middle-end/42803
	* varasm.c (narrowing_initializer_constant_valid_p): Add CACHE
	argument, call initializer_constant_valid_p_1 instead of
	initializer_constant_valid_p, pass CACHE to it, return NULL
	immediately if first call returns NULL.
	(initializer_constant_valid_p_1): New function.
	(initializer_constant_valid_p): Use it.

	* g++.dg/parse/limits-initializer1.C: New test.

From-SVN: r156069
2010-01-20 12:08:24 +01:00
Joern Rennecke
21a942d22b * jvspec.c (lang_specific_driver): Constify two variables named "p".
From-SVN: r156068
2010-01-20 10:35:38 +00:00
Thomas Quinot
5f8f3f94ee * tree.def (PLACEHOLDER_EXPR): Fix comment.
From-SVN: r156067
2010-01-20 09:47:41 +00:00
Joern Rennecke
74f24290bd jcf-parse.c (set_source_filename): Constify variable "dot".
* jcf-parse.c (set_source_filename): Constify variable "dot".
	(load_class): Constify variable "separator".
	Use get_identifier_with_length.

From-SVN: r156066
2010-01-20 09:35:05 +00:00
Joern Rennecke
c24ea6672d * lang.c (java_post_options): Constify variable "dot".
From-SVN: r156064
2010-01-20 08:17:00 +00:00
Jakub Jelinek
80c35b40e4 dwarf2out.c (mem_loc_descriptor): Use DW_OP_mod for UMOD instead of MOD...
* dwarf2out.c (mem_loc_descriptor): Use DW_OP_mod for UMOD instead
	of MOD, handle MOD using DW_OP_{over,over,div,mul,minus}.
	(loc_list_from_tree): Don't handle unsigned division.  Handle
	signed modulo using DW_OP_{over,over,div,mul,minus}.
	* unwind-dw2.c (execute_stack_op): Handle DW_OP_mod using unsigned
	modulo instead of signed.

	* gcc.dg/cleanup-13.c: Expect DW_OP_mod to do unsigned modulo instead
	of signed, add a few new tests.

From-SVN: r156063
2010-01-20 09:13:50 +01:00
Joern Rennecke
204803dc83 re PR bootstrap/42812 (--enable-build-with-cxx bootstrap fails on fortran/resolve.c:gfc_resolve)
PR bootstrap/42812
	* gfortran.h  (struct gfc_namespace) <resolved>: Change to signed
	bitfield of width 2.

From-SVN: r156062
2010-01-20 07:52:18 +00:00
DJ Delorie
c72ea08687 h8300.c (F): Add "in_epilogue" flag.
* config/h8300/h8300.c (F): Add "in_epilogue" flag.
(Fpa): Pass it
(h8300_emit_stack_adjustment): Propogate it.
(push): Pass it.
(h8300_expand_prologue): Likewise.
(h8300_expand_epilogue): Likewise.

From-SVN: r156056
2010-01-20 00:58:59 -05:00
Joern Rennecke
e80b7e74ee module.c (mio_f2k_derived): Use enumerator as initializer of enum variable.
* module.c (mio_f2k_derived): Use enumerator as initializer of
	enum variable.

From-SVN: r156055
2010-01-20 05:39:12 +00:00
GCC Administrator
b8b96f2454 Daily bump.
From-SVN: r156053
2010-01-20 00:16:53 +00:00
Janus Weil
63894de2a2 re PR fortran/42804 (ICE with -fcheck=bounds and type bound procedure call on array element)
gcc/fortran/
2010-01-19  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/42804
	* resolve.c (extract_compcall_passed_object): Set locus for
	passed-object argument.
	(extract_ppc_passed_object): Set locus and correctly remove PPC
	reference.

gcc/testsuite/
2010-01-19  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/42804
	* gfortran.dg/proc_ptr_comp_pass_6.f90: New test.
	* gfortran.dg/typebound_call_12.f03: New test.

From-SVN: r156049
2010-01-19 23:21:35 +01:00