Commit Graph

97540 Commits

Author SHA1 Message Date
Joseph Myers
5edddef681 * es.po: Update.
From-SVN: r155145
2009-12-10 22:32:34 +00:00
Eric Botcazou
0cf1a41a2f s-linux-sparc.ads: New file.
* s-linux-sparc.ads: New file.
	* gcc-interface/Makefile.in (SPARC/Linux): Use it.

From-SVN: r155144
2009-12-10 22:26:20 +00:00
Jakub Jelinek
b66887e4d0 re PR c++/42317 (Issues with comdat virtual dtors)
PR c++/42317
	* cgraph.h (struct cgraph_node): Add same_comdat_group field.
	* cgraph.c (cgraph_remove_node): Unchain node from same_comdat_group
	circular list.
	(cgraph_node_can_be_local_p): Return false for DECL_COMDAT with
	node->same_comdat_group.
	* ipa.c (cgraph_remove_unreachable_nodes): For any reachable node
	mark all its same_comdat_group nodes as also reachable.
	(cgraph_externally_visible_p): Return true even if any of
	same_comdat_group nodes has address taken.
	* lto-cgraph.c (lto_output_node): Stream out same_comdat_group.
	(output_cgraph): Ensure other same_comdat_group nodes are also
	included.
	(input_node): Stream in same_comdat_group.
	(input_cgraph_1): Fix up same_comdat_group fields from references
	to pointers.
	* cgraphunit.c (cgraph_analyze_functions): Mark all other
	same_comdat_group nodes as reachable.
	(cgraph_mark_functions_to_output): For each node->process process
	also other same_comdat_group nodes.
	* ipa-inline.c (cgraph_clone_inlined_nodes): Don't reuse nodes
	with same_comdat_group non-NULL.
	(cgraph_mark_inline_edge): Likewise.

	* decl2.c (cp_write_global_declarations): Clear DECL_EXTERNAL
	also on all other functions in the same comdat group.
	* optimize.c (maybe_clone_body): Also optimize virtual implicit
	dtors.  For virtual comdat dtors tell cgraph that base and deleting
	dtor are in the same comdat group.

	* config/abi/pre/gnu.ver: Don't export certain base dtors that
	weren't previously exported.

	* g++.dg/opt/dtor2.C: New test.
	* g++.dg/opt/dtor2.h: New file.
	* g++.dg/opt/dtor2-aux.cc: New file.

From-SVN: r155143
2009-12-10 22:58:49 +01:00
Daniel Franke
63bcb71f99 re PR fortran/40287 (Spurious warnings with -Wconversion and COUNT())
2009-12-10  Daniel Franke  <franke.daniel@gmail.com>

        PR fortran/40287
        * iresolve.c (resolve_mask_arg): Disabled warning on conversion
        to LOGICAL(1).

From-SVN: r155142
2009-12-10 16:57:49 -05:00
Daniel Franke
b94e5176d7 re PR fortran/41369 (Empty derived-type wrongly rejected as function return type)
2009-12-10  Daniel Franke  <franke.daniel@gmail.com>

	PR fortran/41369
	* parse.c (match_deferred_characteristics): Removed check for empty
	types in function return values.

2009-12-10  Daniel Franke  <franke.daniel@gmail.com>

	PR fortran/41369
	* gfortran.dg/func_derived_5.f90: New.

From-SVN: r155141
2009-12-10 16:03:40 -05:00
Jan Hubicka
47cb0d7da1 re PR middle-end/42228 (verify_cgraph_node failed:node has wrong clone_of)
PR middle-end/42228
	PR middle-end/42110
	* cgraph.c (cgraph_create_edge_including_clones): Add old_stmt parameter;
	update edge if it already exists.
	(cgraph_remove_node): Handle correctly cases where we are removing node having
	clones.
	* cgraph.h (cgraph_create_edge_including_clones): Declare.
	(verify_cgraph_node): Add missing error_found = true code.
	(cgraph_materialize_all_clones): Remove call edges of dead nodes.
	* ipa.c (cgraph_remove_unreachable_nodes): Correctly look for master
	clone; fix double linked list removal.
	* tree-inline.c (copy_bb): Update cgraph_create_edge_including_clones call;
	fix frequency of newly created edge.

	* g++.dg/torture/pr42110.C: new file.

From-SVN: r155140
2009-12-10 20:50:47 +00:00
Daniel Franke
604df1167c re PR fortran/34402 (Diagnose illegal initialization of derived type containing allocatable component)
gcc/fortran/:
2009-12-10  Daniel Franke  <franke.daniel@gmail.com>

        PR fortran/34402
        * expr.c (check_alloc_comp_init): New.
        (check_init_expr): Verify that allocatable components
        are not data-initalized.

gcc/testsuite/:
2009-12-10  Daniel Franke  <franke.daniel@gmail.com>

        PR fortran/34402
        * gfortran.dg/alloc_comp_init_expr.f03: New.

From-SVN: r155138
2009-12-10 14:57:16 -05:00
Paolo Carlini
df4d18ad80 PR libstdc++/42261 (take 2)
2009-12-10  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/42261 (take 2)
	* include/bits/basic_string.h (_S_construct_aux_2(size_type, _CharT,
	const _Alloc&)): Add.
	(_S_construct_aux(_Integer, _Integer, const _Alloc&, __true_type)):
	Call it.
	* include/ext/sso_string_base.h (_M_construct_aux_2(size_type,
	_CharT): Add.
	(_M_construct_aux(_Integer, _Integer, std::__true_type)): Call it.
	* include/ext/rc_string_base.h (_S_construct_aux_2(size_type, _CharT,
	const _Alloc&)): Add.
	(_S_construct_aux(_Integer, _Integer, const _Alloc&, __true_type)):
	Call it.
	* config/abi/pre/gnu.ver: Export basic_string::_S_construct_aux_2.
	* testsuite/21_strings/basic_string/cons/char/42261.cc: New.
	* testsuite/21_strings/basic_string/cons/wchar_t/42261.cc: Likewise.

From-SVN: r155137
2009-12-10 19:17:27 +00:00
Bernd Schmidt
d435810e76 re PR rtl-optimization/42216 (changes in scheduling regress 464.h264ref 20%)
PR rtl-opt/42216
	* regrename.c: Error out if MAX_RECOG_OPERANDS is larger than
	HOST_BITS_PER_WIDE_INT.
	(verify_reg_in_set): New function, broken out of verify_reg_tracked.
	(verify_reg_tracked): Use it.
	(scan_rtx_reg): When seeing a use involving a superset of the
	registers in an existing chain, enlarge that chain.  Otherwise,
	allow subsets and set fail_current_block for all other kinds of
	overlap.
	(hide_operands): New argument UNTRACKED_OPERANDS; callers changed.
	Do not modify operands when the bit with the corresponding number
	is set in that bitmap.
	(build_def_use): When we see matching operands with different
	modes, don't set fail_current_block, but keep track of such
	operands in a bitmap if their registers aren't already tracked
	in an open chain.  Pass this bitmap to all hide_operands calls.

From-SVN: r155134
2009-12-10 18:03:05 +00:00
Paolo Carlini
574f366488 revert: re PR libstdc++/42261 (infinite recursion from string(string::size_type(6), string::size_type('f')))
2009-12-10  Paolo Carlini  <paolo.carlini@oracle.com>

	Revert:
        2009-12-03  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/42261
	* include/bits/basic_string.h (_S_construct_aux(_Integer, _Integer,
	const _Alloc&, __true_type)): Cast the second argument to value_type.
	* include/ext/sso_string_base.h (_M_construct_aux(_Integer, _Integer,
	std::__true_type)): Likewise.
	* include/ext/rc_string_base.h (_S_construct_aux(_Integer, _Integer,
	const _Alloc&, std::__true_type)): Likewise.
	* testsuite/21_strings/basic_string/cons/char/42261.cc: New.
	* testsuite/21_strings/basic_string/cons/wchar_t/42261.cc: Likewise.

From-SVN: r155132
2009-12-10 17:17:41 +00:00
Richard Guenther
788d04b2b4 re PR tree-optimization/42337 (GCC ICE in compute_antic, at tree-ssa-pre.c:2534)
2009-12-10  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/42337
	* tree-ssa-pre.c (seen_during_translate): Remove.
	(phi_translate_1): Collapse into ...
	(phi_translate): ... this.  Remove seen parameter and
	adjust recursive calls.

From-SVN: r155131
2009-12-10 16:00:57 +00:00
David Edelsohn
749140af5d bswap64-4.c: Disable on AIX.
* gcc.target/powerpc/bswap64-4.c: Disable on AIX.
        * gcc.target/powerpc/ppc64-double-1.c: Disable on AIX.

From-SVN: r155129
2009-12-10 09:38:48 -05:00
Richard Guenther
b614f27d29 tree-vectorizer.c (vectorize_loops): Properly guard vectorizer verboseness.
2009-12-10  Richard Guenther  <rguenther@suse.de>
	Allan Sandfeld Jensen  <linux@carewolf.com>

	* tree-vectorizer.c (vectorize_loops): Properly guard
	vectorizer verboseness.

Co-Authored-By: Allan Sandfeld Jensen <linux@carewolf.com>

From-SVN: r155128
2009-12-10 14:16:28 +00:00
Paolo Carlini
790ad3b5b4 testsuite_containers.h (populate<>::populate(_Tp&)): Avoid used uninitialized warning.
2009-12-10  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/util/testsuite_containers.h (populate<>::populate(_Tp&)):
	Avoid used uninitialized warning. 
	* include/ext/pb_ds/detail/cc_hash_table_map_/
	constructor_destructor_fn_imps.hpp: Fix typo causing sequence point
	warning.

From-SVN: r155127
2009-12-10 13:17:56 +00:00
Joseph Myers
58b9c1deb8 zh_CN.po: Update.
gcc/po:
	* zh_CN.po: Update.

libcpp/po:
	* zh_CN.po: Update.

From-SVN: r155126
2009-12-10 13:01:59 +00:00
Ben Elliston
8bba68cde7 * fwprop.c (free_load_extend): Initialise `use'.
From-SVN: r155125
2009-12-10 22:05:56 +11:00
Rainer Orth
dcb00f2e8e re PR libffi/40700 (All amd64 libffi execution tests fail on Solaris 10/x86)
PR libffi/40700
	* src/closures.c [X86_64 && __sun__ && __svr4__]
	(FFI_MMAP_EXEC_WRIT): Define.

From-SVN: r155124
2009-12-10 10:09:17 +00:00
Benjamin Kosnik
6b22319107 profiler_container_size.h: Fix include guard, formatting fixes.
2009-12-09  Benjamin Kosnik  <bkoz@redhat.com>

	* include/profile/impl/profiler_container_size.h: Fix include
	guard, formatting fixes.
	* include/profile/impl/profiler_vector_size.h: Same.
	* include/profile/impl/profiler_hash_func.h: Same.
	* include/profile/impl/profiler_trace.h: Same.
	* include/profile/impl/profiler_vector_to_list.h: Same.
	* include/profile/impl/profiler.h: Same.
	* include/profile/impl/profiler_state.h: Same.
	* include/profile/impl/profiler_map_to_unordered_map.h: Same.
	* include/profile/impl/profiler_hashtable_size.h: Same.
	* include/profile/impl/profiler_node.h: Same.

From-SVN: r155123
2009-12-10 06:47:12 +00:00
David Edelsohn
14aa63526a builtins.c (do_mpc_ckconv): Pass the component type to real_from_mpfr().
* builtins.c (do_mpc_ckconv): Pass the component type to
	real_from_mpfr().

From-SVN: r155122
2009-12-09 21:42:40 -05:00
GCC Administrator
2bfaa3d848 Daily bump.
From-SVN: r155121
2009-12-10 00:16:53 +00:00
Roman Odaisky
6ef14ae403 re PR libstdc++/42273 (atomic_2.h:111: = instead of == in if)
2009-12-09  Roman Odaisky  <to.roma.from.bugcc@qwertty.com>

	PR libstdc++/42273
	* include/bits/atomic_2.h: Fix typo.

From-SVN: r155117
2009-12-09 22:06:59 +00:00
John David Anglin
a1a82749ba pa-signal.h: Do not include ucontext.h.
* include/pa-signal.h: Do not include ucontext.h.
	(SIGNAL_HANDLER): Add __attribute__ ((unused)) to signal handler
	arguments.
	(MAKE_THROW_FRAME): Do not adjust program counter.
	* include/hppa-signal.h: Do not include sys/types.h, sys/syscall.h and
	unistd.h.
	(MAKE_THROW_FRAME): Do not adjust program counter.
	(HANDLE_FPE): Define.
	(INIT_SEGV, INIT_FPE): Revise indentation.

From-SVN: r155116
2009-12-09 21:31:49 +00:00
Bryce McKinlay
5df19a915e re PR java/41991 (gcj segfaults on i686-apple-darwin9 and x86_64-apple-darwin9)
2009-12-09  Bryce McKinlay  <bmckinlay@gmail.com>

        PR java/41991  
        * configure.ac (SYSTEMSPEC): Pass -allow_stack_execute to Darwin
        linker.
        * Makefile.am (gij_LDFLAGS): Remove extra_gij_ldflags.
        * configure: Regenerate.  
        * Makefile.in: Regenerate.

From-SVN: r155113
2009-12-09 18:45:13 +00:00
Xinliang David Li
af078bb0cf fixing pr42337
From-SVN: r155111
2009-12-09 17:44:47 +00:00
Nathan Froyd
ab8d273441 vector.md (absv2sf2, [...]): New expanders.
* config/rs6000/vector.md (absv2sf2, negv2sf2, addv2sf3, subv2sf3,
	mulv2sf3, divv2sf3): New expanders.
	* config/rs6000/spe.md (spe_evabs, spe_evand, spe_evaddw, spe_evsubfw,
	spe_evdivws): Rename to use standard GCC names.
	* config/rs6000/paired.md (negv2sf, absv2sf2, addv2sf3, subv2sf3,
	mulv2sf3, divv2sf3): Rename to avoid conflict with the new expanders.
	* config/rs6000/rs6000.c (bdesc_2arg, bdesc_1arg): Use new CODE_FOR_
	names for renamed patterns.

From-SVN: r155110
2009-12-09 16:46:57 +00:00
Sebastian Pop
d505015aa5 re PR tree-optimization/42285 (ICE in Graphite's scan_tree_for_params for 416.gamess)
Fix PR42285.

2009-12-08  Sebastian Pop  <sebpop@gmail.com>

	PR middle-end/42285
	* graphite-scop-detection.c (graphite_can_represent_init): Also
	handle more complex MULT_EXPRs containing parameters by recursion
	on the structure.

	* testsuite/gfortran.dg/graphite/pr42285.f90: New.

From-SVN: r155108
2009-12-09 15:18:22 +00:00
Andreas Krebbel
da8a7529b5 s390.md ("copysign<mode>3"): Pattern removed.
2009-12-09  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* config/s390/s390.md ("copysign<mode>3"): Pattern removed.

From-SVN: r155106
2009-12-09 12:21:08 +00:00
Jakub Jelinek
10ca6198db configure.ac: Compute ld_ver...
* configure.ac: Compute ld_ver, ld_vers, ld_date, ld_vers_major,
	ld_vers_minor and ld_vers_path always, not just when gcc_cv_ld_hidden
	isn't cached.
	* configure: Regenerated.

From-SVN: r155103
2009-12-09 10:13:43 +01:00
GCC Administrator
e34915db75 Daily bump.
From-SVN: r155098
2009-12-09 00:16:43 +00:00
Richard Henderson
3a6a5afb24 combine.c (setup_incoming_promotions): Fix sign-extend of zero-extend case; tidy conditions.
* combine.c (setup_incoming_promotions): Fix sign-extend of
        zero-extend case; tidy conditions.

From-SVN: r155095
2009-12-08 15:39:20 -08:00
David Daney
6c6859a104 stret_medium.c: Remove xfail for mips*-*-*
2009-12-08  David Daney  <ddaney@caviumnetworks.com>

	* testsuite/libffi.call/stret_medium.c: Remove xfail for mips*-*-*
	* testsuite/libffi.call/cls_align_longdouble_split2.c: Same.
	* testsuite/libffi.call/stret_large.c: Same.
	* testsuite/libffi.call/cls_align_longdouble_split.c: Same.
	* testsuite/libffi.call/stret_large2.c: Same.
	* testsuite/libffi.call/stret_medium2.c: Same.

From-SVN: r155093
2009-12-08 22:59:02 +00:00
Eric Botcazou
6b4428ecb6 configure.host (sparc*-sun-solaris2.*): New case.
* configure.host (sparc*-sun-solaris2.*): New case.
	* include/dwarf2-signal.h (MAKE_THROW_FRAME, SPARC case): Make dummy.
	* include/sparc-signal.h: Do not include ucontext.h.
	(SIGNAL_HANDLER): Rename symbol.
	(FLUSH_REGISTER_WINDOWS): Delete.
	(MAKE_THROW_FRAME): Make dummy.
	(INIT_SEGV): Adjust for above renaming.
	(INIT_FPE): Likewise.

From-SVN: r155092
2009-12-08 18:38:23 +00:00
Tobias Burnus
17314cd9eb re PR libfortran/41711 ([F08] BOZ edit-descr does not support reading large kind reals)
2009-12-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/41711
        * io/read.c (set_integer): Support kind=10 for reading
        real/complex BOZ.

2009-12-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/41711
        * gfortran.dg/boz_15.f90: New test.

From-SVN: r155088
2009-12-08 15:12:06 +01:00
Michael Matz
5d7cefe516 re PR middle-end/38474 (compile time explosion in dataflow_set_preserve_mem_locs at -O3)
PR middle-end/38474
	* function.c (free_temp_slots): Only walk the temp slot
	addresses and combine slots if we actually changes something.
	(pop_temp_slots): Ditto.

From-SVN: r155087
2009-12-08 13:56:06 +00:00
Daniel Kraft
41a394bbf8 re PR fortran/41177 (Wrong base-object checks for type-bound procedures)
2008-12-08  Daniel Kraft  <d@domob.eu>

	PR fortran/41177
	* gfortran.dg/typebound_proc_4.f03: Remove check for wrong error.
	* gfortran.dg/typebound_proc_13.f03: New test.

2008-12-08  Daniel Kraft  <d@domob.eu>

	PR fortran/41177
	* gfortran.h (struct symbol_attribute): New flag `class_pointer'.
	* symbol.c (gfc_build_class_symbol): Set the new flag.
	* resolve.c (update_compcall_arglist): Remove wrong check for
	non-scalar base-object.
	(check_typebound_baseobject): Add the correct version here as well
	as some 'not implemented' message check in the old case.
	(resolve_typebound_procedure): Check that the passed-object dummy
	argument is scalar, non-pointer and non-allocatable as it should be.

From-SVN: r155086
2009-12-08 12:39:20 +01:00
Olga Golovanevsky
72d099cb27 [multiple changes]
2009-12-07  Olga Golovanevsky  <olga@il.ibm.com>

	PR middle-end/41843
	* ipa-struct-reorg.c (compare_fields): New function.
	(find_field_in_struct_1): Use compare_fields function.
	(is_equal_types): Likewise.

2009-12-04  Olga Golovanevsky  <olga@il.ibm.com>
	    Jakub Jelinek <jakub@redhat.com>	

	PR midle-end/41843
	* gcc.dg/struct/wo_prof_empty_str.c: New testcase.


Co-Authored-By: Jakub Jelinek <jakub@redhat.com>

From-SVN: r155084
2009-12-08 09:41:13 +00:00
Tobias Burnus
96c4932402 re PR fortran/40961 (Document set_fpe(int))
2009-12-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/40961
        PR fortran/40377
        * gfortran.texi (Non-Fortran Main Program): Add
        _gfortran_set_fpe documentation.
        (Interoperability with C): Mention array storage order.

From-SVN: r155083
2009-12-08 09:52:28 +01:00
Doug Evans
698861dc8d * pex-unix.c (pex_unix_exec_child): Save/restore environ.
From-SVN: r155079
2009-12-08 07:05:35 +00:00
Shujing Zhao
d16a31da53 MAINTAINERS (Write After Approval): Add myself.
2009-12-07  Shujing Zhao  <pearly.zhao@oracle.com>

	* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r155073
2009-12-08 02:21:04 +00:00
DJ Delorie
d2e1a4c294 re PR target/42312 (config/mep/mep.c:2856: (error) Uninitialized variable: frame_size)
PR c/42312
* config/mep/mep.c (mep_expand_prologue): Set
really_need_stack_frame after frame_size is set.

From-SVN: r155072
2009-12-07 19:47:58 -05:00
Richard Henderson
6c0eaee7d2 re PR rtl-optimization/42269 (Extra sign extension instructions generated)
PR rtl-opt/42269
        * combine.c (setup_incoming_promotions): Improve the conditions
        under which we respect the promotions applied.

From-SVN: r155071
2009-12-07 16:44:28 -08:00
David Edelsohn
9e7e65a08b aix_closure.S (libffi_closure_ASM): Fix tablejump typo.
* src/powerpc/aix_closure.S (libffi_closure_ASM): Fix tablejump
        typo.

From-SVN: r155070
2009-12-07 19:41:10 -05:00
GCC Administrator
61961c617d Daily bump.
From-SVN: r155069
2009-12-08 00:16:56 +00:00
Eric Botcazou
1141be7e56 linux.h (ASM_SPEC): Pass -K PIC if -findirect-dispatch.
* config/sparc/linux.h (ASM_SPEC): Pass -K PIC if -findirect-dispatch.
	* config/sparc/linux64.h (ASM_SPEC): Likewise.

From-SVN: r155065
2009-12-07 23:31:01 +00:00
Richard Henderson
74e12783a3 re PR debug/42299 (another verify_ssa failure with -g -O2)
PR debug/42299
	PR debug/42166
	* tree-ssa.c (insert_debug_temp_for_var_def): Skip propagation
	for ssa names already registered for update.

From-SVN: r155063
2009-12-07 14:42:10 -08:00
Jakub Jelinek
aec4e50c21 re PR debug/42244 (var-tracking ICE for 300.twolf)
PR debug/42244
	* ddg.c (add_inter_loop_mem_dep): Use ANTI_DEP if from or to
	is a DEBUG_INSN.

	* gcc.dg/debug/pr42244.c: New test.

From-SVN: r155062
2009-12-07 23:37:21 +01:00
Sebastian Pop
8ad9d49ec9 Check cpuid LWP bit.
* config/i386/driver-i386.c (host_detect_local_cpu): Add -mlwp to the
	options when bit_LWP is set.

From-SVN: r155061
2009-12-07 22:23:16 +00:00
Sebastian Pop
c3d34a7861 Check cpuid ABM bit.
* config/i386/cpuid.h (bit_ABM): New.
	* config/i386/driver-i386.c (host_detect_local_cpu): Add -mabm to the
	options when bit_ABM is set.

From-SVN: r155060
2009-12-07 22:23:10 +00:00
Jakub Jelinek
7fccdfcfb9 Fix ABM.
2009-12-04  Jakub Jelinek  <jakub@redhat.com>

	* config/i386/i386.c (bdesc_special_args): Move __builtin_clzs from
	this array ...
	(bdesc_args): ... here.
	* config.gcc (i[34567]86-*-*): Include abmintrin.h.
	(x86_64-*-*): Likewise.

	* gcc.target/i386/sse-12.c: Add -mabm to dg-options, mention
	abmintrin.h is also tested.
	* gcc.target/i386/sse-13.c: Likewise.

From-SVN: r155059
2009-12-07 22:23:01 +00:00
Sebastian Pop
3bccee0302 Fix _mm_popcnt* intrinsics.
* config.gcc (i[34567]86-*-*, x86_64-*-*): Add popcntintrin.h.
	* config/i386/abmintrin.h (_mm_popcnt_u32, _mm_popcnt_u64): Moved...
	* config/i386/i386-c.c (__POPCNT__): Defined.
	* config/i386/popcntintrin.h: ...here.  New file.
	* config/i386/smmintrin.h (_mm_popcnt_u32, _mm_popcnt_u64): Moved...
	Include popcntintrin.h.
	* config/i386/x86intrin.h: Include popcntintrin.h when __POPCNT__
	is defined.

From-SVN: r155058
2009-12-07 22:22:54 +00:00