Commit Graph

72710 Commits

Author SHA1 Message Date
Jerry DeLisle
b5918dea9c re PR libfortran/25550 (file data corrupted after reading end of file)
2005-12-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/25550
	* io/file_pos.c (st_rewind): Reset bytes left so no error occurs in
	next_record_r.

From-SVN: r109101
2005-12-28 07:20:19 +00:00
Jerry DeLisle
f55be19d7b re PR libfortran/25419 (gfortran read does not take comma for default on one entry)
2005-12-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/25419
	* gfortran.dg/comma.f: New test.

From-SVN: r109100
2005-12-28 07:00:47 +00:00
Jerry DeLisle
93f006d8e3 re PR libfortran/25419 (gfortran read does not take comma for default on one entry)
2005-12-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/25419
	* io/list_read.c (list_formatted_read_scalar): Allow comma to return a
	null value (default).

From-SVN: r109099
2005-12-28 06:59:35 +00:00
Tobias Schlüter
618f4a9487 gfortran-dg.exp: Remove trailing whitespace.
* lib/gfortran-dg.exp: Remove trailing whitespace. ChangeLog lib/gfortran-dg.exp lib/fortran-torture.exp
* lib/fortran-torture.exp: Test with -fbounds-check instead of
-funroll-all-loops.

From-SVN: r109098
2005-12-28 02:28:35 +01:00
Kazu Hirata
c71070ab83 global.c, [...]: Move DEF_VEC_P(basic_block) and DEF_VEC_ALLOC_P(basic_block,{gc,heap}) to ...
* global.c, tree-ssa-pre.c: Move DEF_VEC_P(basic_block) and
	DEF_VEC_ALLOC_P(basic_block,{gc,heap}) to ...
	* basic-block.h: ... here.

From-SVN: r109097
2005-12-28 01:13:19 +00:00
GCC Administrator
420ab68e18 Daily bump.
From-SVN: r109094
2005-12-28 00:17:38 +00:00
Roger Sayle
fd6c76f462 fold-const.c (int_const_binop): Return NULL_TREE when an expression can't be evaluated at compile-time (instead...
* fold-const.c (int_const_binop): Return NULL_TREE when an expression
	can't be evaluated at compile-time (instead of calling abort).
	Return NULL_TREE for division (and modulus) by zero.
	(const_binop):  Return NULL_TREE for floating point operators that
	aren't handled by real_arithmetic.
	(fold_binary):  Eliminate "wins" variable, and "binary" label, by
	folding operators with constant operands early.  Assert that
	operands are non-NULL.

From-SVN: r109088
2005-12-27 23:27:34 +00:00
Alan Modra
5156c0c3a7 fp-int-convert-timode.c: Don't test IBM Extended Double long doubles or repeat tests when...
* gcc.dg/torture/fp-int-convert-timode.c: Don't test IBM
	Extended Double long doubles or repeat tests when long double is
	the same size as double.

From-SVN: r109087
2005-12-28 09:20:06 +10:30
Kaveh R. Ghazi
0772236136 re PR testsuite/25442 (-fpic/-fPIC failures in gcc.dg/ipa/ipa-1.c ipa-2.c ipa-3.c ipa-4.c ipa-5.c)
* g++.dg/rtti/tinfo1.C: Scan for ".global" also.

	PR testsuite/25442
	* gcc.dg/ipa/ipa-1.c, gcc.dg/ipa/ipa-2.c, gcc.dg/ipa/ipa-3.c,
	gcc.dg/ipa/ipa-4.c, gcc.dg/ipa/ipa-5.c: Skip if -fpic/-fPIC.

	PR testsuite/25441
	* gcc.dg/pr23911.c: Make test variable static.

	PR testsuite/25444
	* gcc.dg/tree-ssa/pr14841.c: Likewise.

From-SVN: r109083
2005-12-27 19:58:28 +00:00
Mark Mitchell
d85d3d578a re PR c++/25439 ("template<> int A<0>" accepted)
PR c++/25439
	* decl.c (grokdeclarator): Remove dead code.
	* ptree.c (cxx_print_xnode): Handle BASELINK.
	* parser.c (make_id_declarator): Add sfk parameter.  
	(cp_parser_direct_declarator): Do not pass TYPE_DECLs to
	make_id_declarator.
	(cp_parser_declarator_id): Simplify BASELINKs here.
	(cp_parser_member_declaration): Adjust calls to
	make_id_declarator.
	PR c++/25439
	* g++.dg/parse/crash17.C: Adjust error markers.
	* g++.dg/template/error20.C: New test.

From-SVN: r109079
2005-12-27 09:05:17 +00:00
Kazu Hirata
dec2f8810b tree-vrp.c (extract_range_from_binary_expr): Use build_int_cst instead of fold_convert.
* tree-vrp.c (extract_range_from_binary_expr): Use
	build_int_cst instead of fold_convert.

From-SVN: r109078
2005-12-27 08:16:12 +00:00
Mark Mitchell
3b2db49f36 PR c++/23171, c++/23172, c++/25417.
* c-decl.c (compound_literal_number): Remove.
	(build_compound_literal): Use set_compound_literal_name.
	* c-common.c (compound_literal_number): New variable.
	(set_compound_literal_name): New function.
	* c-common.h (set_compound_literal_name): Declare.

	PR c++/23171, c++/23172, c++/25417.
	* typeck.c (build_unary_op): Create temporary variables for
	compound literals whose addresses are taken.
	* init.c (expand_aggr_init_1): Use COMPOUND_LITERAL_P.
	* decl.c (reshape_init_vector): Likewise.
	(reshape_init): Give it external linkage.
	(check_initializer): Use COMPOUND_LITERAL_P.
	(initialize_artificial_var): Allow the initializer to be a
	CONSTRUCTOR.
	* call.c (make_temporary_var_for_ref_to_temp): Use
	create_temporary_var.
	* cp-tree.h (COMPOUND_LITERAL_P): New macro.
	(rehape_init): Declare.
	* typeck2.c (digest_init): Use COMPOUND_LITERAL_P.
	* semantics.c (finish_compound_literal): Use reshape_init.

	PR c++/23172
	* g++.dg/ext/complit4.C: New test.

	PR c++/25417
	* g++.dg/ext/complit5.C: Likewise.

From-SVN: r109075
2005-12-27 06:09:13 +00:00
Steven Bosscher
103a4b39c2 * MAINTAINERS: Update my email address.
From-SVN: r109074
2005-12-27 02:00:26 +00:00
GCC Administrator
e004b9191a Daily bump.
From-SVN: r109071
2005-12-27 00:17:30 +00:00
Kazu Hirata
4a2ab19287 re PR middle-end/25125 ((short) ((int)(unsigned short) + (int)) is done in the wrong type)
gcc/
	PR tree-optimization/25125
	* convert.c (convert_to_integer): Don't narrow the type of a
	PLUX_EXPR or MINUS_EXPR if !flag_wrapv and the unwidened type
	is signed.

gcc/testsuite/
	PR tree-optimization/25125
	* gcc.dg/vect/vect-7.c, gcc.dg/vect/vect-reduc-2char.c,
	gcc.dg/vect/vect-reduc-2short.c: XFAIL.
	* gcc.c-torture/execute/pr25125.c: New.

From-SVN: r109065
2005-12-26 23:00:18 +00:00
Graham Stott
01a097e8ec re PR middle-end/25568 (RTL checking bootstrap failure on i686-unknown-linux-gnu)
PR middle-end/25568
       * combine.c (simplify_shift_const_1 <case PLUS>):Fix enable-checking
       rtl bootstrap failure.

From-SVN: r109064
2005-12-26 18:58:56 +00:00
Chris Jefferson
8b5bc374b1 mt_allocator.h (__mt_alloc::__mt_alloc): Remove name of unused parameter.
2005-12-26  Chris Jefferson  <chris@bubblescope.net>

	* include/ext/mt_allocator.h (__mt_alloc::__mt_alloc): Remove
	name of unused parameter.
	* include/bits/stream_iterator.h (istream_iterator::istream_iterator):
	Construct _M_value.
	* include/debug/functions.h (__check_valid_range): Add
	__attribute__((unused)).
	* include/tr1/hashtable (hashtable::end): Remove name of unused
	parameter.
	* include/tr1/tuple_iterate.h (tuple::tuple): Likewise.
	(tuple::operator=): Add __attribute__((unused)).
	* include/tr1/functional (Fnv_hash<4>::hash): Add static_cast.
	(Fnv_hash<8>::hash): Likewise.

	* testsuite/25_algorithms/iter_swap/20577.cc (swap): Remove name of
	unused parameter.
	* testsuite/25_algorithms/unique_copy/check_type.cc (S2::S2,X2::X2):
	Likewise.
	* testsuite/22_locale/ctype/narrow/char/19955.cc (do_narrow): Likewise.
	* testsuite/22_locale/ctype/is/char/9858.cc (Derived::do_is, 
	Derived::do_scan_is, Derived::do_scan_not, Derived2::do_is,
	Derived2::do_scan_is, Derived2::do_scan_not): Likewise.
	* testsuite/22_locale/time_put/put/wchar_t/12439_1.cc (TP::do_put):
	Likewise.
	* testsuite/22_locale/time_put/put/wchar_t/12439_3.cc (TP::do_put):
	Likewise.
	* testsuite/22_locale/time_put/put/char/12439_1.cc (TP::do_put):
	Likewise.
	* testsuite/22_locale/time_put/put/char/12439_3.cc (TP::do_put):
	Likewise.
	* testsuite/testsuite_io.h (fail_num_get::do_get, fail_num_put::do_put):
	Likewise.
	* testsuite/25_algorithms/find/17441.cc (find): Likewise.
	* testsuite/23_containers/vector/cons/clear_allocator.cc
	(clear_alloc::clear_alloc): Likewise.
	* testsuite/23_containers/vector/bool/clear_allocator.cc
	(clear_alloc::clear_alloc): Likewise.
	* testsuite/23_containers/list/cons/clear_allocator.cc
	(clear_alloc::clear_alloc): Likewise.
	* testsuite/23_containers/set/modifiers/16728.cc (test_container):
	Likewise.
	* testsuite/27_io/basic_ios/cons/char/3.cc (char_traits::to_char_type,
	to_int_type): Likewise.
	* testsuite/27_io/basic_filebuf/imbue/12206.cc (codecvt::do_out, do_in,
	do_unshift, do_length): Likewise.
	* testsuite/21_strings/basic_string/capacity/1.cc 
	(operator==(A<T>,A<T>), operator<(A<T>,A<T>),
	char_traits::to_char_type, char_traits::to_int_type): Likewise
	* testsuite/testsuite_character.h (ctype::do_is, ctype::do_scan_is,
	ctype::do_scan_not, do_toupper, do_tolower): Likewise.
	* testsuite/25_algorithms/replace_copy/check_type.cc (Z::operator=):
	Add missing return statement.
	* testsuite/25_algorithms/replace_copy_if/check_type.cc (Z::operator=):
	Likewise.
	* testsuite/testsuite_iterators.h (output_iterator_wrapper::operator=,
	random_access_iterator_wrapper::operator==): Likewise.
	* testsuite/20_util/functional/binders/1.cc (s::f_int_int_const,
	s::f_int_int, s::f_int_void_const, s::f_int_void): Likewise.
	* testsuite/27_io/types/1.cc (test01): Likewise.
	* testsuite/27_io/basic_ostream/write/wchar_t/1.cc (test01): Likewise.
	* testsuite/27_io/basic_ostream/write/char/1.cc (test01): Likewise.
	* testsuite/21_strings/c_strings/wchar_t/24559.cc (main): Likewise.
	* testsuite/27_io/basic_istream/ignore/wchar_t/2.cc (check): Add static
	cast.
	* testsuite/27_io/basic_istream/ignore/char/2.cc (check): Likewise.
	* testsuite/27_io/basic_istream/getline/wchar_t/5.cc (check): Likewise.
	* testsuite/27_io/basic_istream/getline/char/5.cc (check): Likewise.
	* testsuite/testsuite_allocator.h (check_new): Likewise.
	(check_deallocate_null): Add missing return value.
	* testsuite/ext/pool_allocator/allocate_chunk.cc (test01):
	Make variable unsigned.
	* testsuite/23_containers/vector/modifiers/erase/1.cc (N,N1,N2,N3,N4,
	N5,test01): Likewise.
	* testsuite/26_numerics/valarray/valarray_subset_assignment.cc
	(check_array): Likewise.
	(main): Removed unused variable.
	* testsuite/27_io/basic_streambuf/in_avail/wchar_t/1.cc (test05):
	Removed unused variable.
	* testsuite/27_io/basic_ostream/flush/wchar_t/1.cc (test01): Likewise.
	* testsuite/27_io/basic_ostream/flush/char/1.cc (test01): Likewise.
	* testsuite/27_io/basic_ostream/endl/wchar_t/1.cc (test01): Likewise.
	* testsuite/27_io/basic_ostream/endl/char/1.cc (test01): Likewise.
	* testsuite/27_io/basic_ostream/ends/wchar_t/1.cc (test01): Likewise.
	* testsuite/27_io/basic_ostream/ends/char/1.cc (test01): Likewise.
	* testsuite/tr1/2_general_utilities/memory/shared_ptr/
	assign/shared_ptr.cc (test01): Correct return type.	
	* testsuite/27_io/basic_filebuf/close/char/2.cc (test_02):
	Add default value to close_num.

From-SVN: r109062
2005-12-26 10:53:42 +00:00
GCC Administrator
0a1a11b29e Daily bump.
From-SVN: r109058
2005-12-26 00:17:15 +00:00
Kazu Hirata
65727068ea final.c (compute_alignments): Make it static.
* final.c (compute_alignments): Make it static.
	* gcse.c (gcse_main, bypass_jumps): Likewise.
	* web.c (web_main): Likewise.
	* output.h: Remove the prototype for compute_alignments.
	* rtl.h: Remove the prototypes for web_main, gcse_main, and
	bypass_jumps.

From-SVN: r109051
2005-12-25 16:59:51 +00:00
GCC Administrator
b6c69918de Daily bump.
From-SVN: r109048
2005-12-25 00:17:18 +00:00
Roger Sayle
72a10effc6 expr.c (force_operand): Use expand_fix and expand_float to implement integer <-> FP conversions instead...
* expr.c (force_operand): Use expand_fix and expand_float to
	implement integer <-> FP conversions instead of convert_to_mode.

From-SVN: r109041
2005-12-24 18:35:02 +00:00
Paul Thomas
4fe70c9b0d re PR fortran/25029 (Assumed size array can be associated with array pointer without upper bound of last dimension)
2005-12-24  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/25029
	PR fortran/21256
	* resolve.c (check_assumed_size_reference, resolve_assumed_size_actual):
	Remove because of regressions caused by patch.
	(resolve_function, resolve_call, resolve_variable): Remove assumed size
	checks because of regressionscaused by patch.

	PR fortran/25029
	PR fortran/21256
	* gfortran.dg/initialization_1.f90: Remove tests of intrinsic functions
	with incorrect assumed size references.

From-SVN: r109039
2005-12-24 12:05:36 +00:00
Paolo Carlini
5f5c25d99d stl_algobase.h (fill(const _Deque_iterator&, const _Deque_iterator&, const _Tp&)): Deal, correctly, only with iterators (leave const_iterators alone).
2005-12-24  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_algobase.h (fill(const _Deque_iterator&,
	const _Deque_iterator&, const _Tp&)): Deal, correctly, only
	with iterators (leave const_iterators alone).

2005-12-24  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_algobase.h (fill(const _Deque_iterator<>&,
	const _Deque_iterator<>&, const _Tp&)): Add.

	* testsuite/23_containers/deque/cons/assign/1.cc: New.

From-SVN: r109038
2005-12-24 10:01:45 +00:00
Mark Mitchell
125f2a50c9 re PR c++/23171 (ICE on pointer initialization with C99 initializer)
PR c++/23171
	* varasm.c (initializer_constant_valid_p): An ADDR_EXPR of a
	CONSTRUCTOR is invalid.

	PR c++/23171
	* g++.dg/opt/init1.C: New test.

From-SVN: r109035
2005-12-24 08:51:05 +00:00
Daniel Berlin
097d5d18f0 tree-pass.h (pass_eliminate_useless_stores): Remove.
2005-12-23  Daniel Berlin  <dberlin@dberlin.org>

	* tree-pass.h (pass_eliminate_useless_stores): Remove.
	* tree-ssa-pre.c (is_copy_stmt): Ditto.
	(follow_copies_till_vuse): Ditto.
	(do_eustore): Ditto.
	(gate_eustores): Ditto.
	(pass_eliminate_useless_stores): Ditto.
	* passes.c (init_optimization_passes): Ditto.

From-SVN: r109034
2005-12-24 04:42:48 +00:00
GCC Administrator
3961348422 Daily bump.
From-SVN: r109031
2005-12-24 00:17:23 +00:00
Mark Mitchell
6b6b60aff2 re PR c++/24671 (ICE with zero-sized arrays)
PR c++/24671
	* pt.c (instantiate_template): Handle SFINAE.
	PR c++/24671
	* g++.dg/template/sfinae3.C: New test.

From-SVN: r109022
2005-12-23 23:16:12 +00:00
Volker Reichelt
59e7c84ca1 decl.c (grokdeclarator): Improve diagnostic for friend declarations of class members.
* decl.c (grokdeclarator): Improve diagnostic for friend
	declarations of class members.

	* g++.dg/other/friend4.C: New test.

From-SVN: r109017
2005-12-23 17:10:37 +00:00
Paolo Bonzini
41e8659ef1 combine.c (simplify_shift_const): Fix typo.
2005-12-23  Paolo Bonzini  <bonzini@gnu.org>

        * combine.c (simplify_shift_const): Fix typo.  Use, whenever
	applicable, simplify_const_binary_operation.

        (simplify_shift_const): Leave only the fallback
        case when no simplification is possible.  Extract to...
        (simplify_shift_const_1): ... here.  Always create a new
        RTX instead of substituting.  Remove the signed_count variable.
        Return NULL_RTX if no substitution is possible.

        (simplify_and_const_int): Leave only the fallback
        case when no simplification is possible.  Extract to...
        (simplify_and_const_int_1): ... here.  Always create a new
        RTX instead of substituting.  Return NULL_RTX if no substitution
        is possible.

        (force_to_mode, simplify_comparison): Don't pass a non-NULL first
        parameter to simplify_and_const_int and simplify_shift_const,
        unless it is equal to the expected non-simplified result.

From-SVN: r109016
2005-12-23 16:07:53 +00:00
Jakub Jelinek
cb29234501 re PR target/25005 (ICE in extract_constrain_insn_cached, at recog.c:2002)
PR target/25005
	* regrename.c (replace_oldest_value_reg): Use validate_change with
	IN_GROUP set to 1 instead of doing direct modifications.
	(copyprop_hardreg_forward_1): Likewise.  If any replace_oldest_*
	replacements have been performed on an instruction, use
	apply_change_group ().

	* g++.dg/opt/pr25005.C: New test.

From-SVN: r109013
2005-12-23 10:43:36 +01:00
Mark Mitchell
7eab6e7b91 re PR c++/25369 (use of inline function in template class leads to undefined reference)
PR c++/25369
	* g++.dg/template/ptrmem16.C: New test.
	PR c++/25369
	* tree.c (really_overloaded_fn): Tweak comment.
	* pt.c (tsubst_call_declarator_parms): Remove.
	(tsubst_copy): Call mark_used on the member referenced by an
	OFFSET_REF.
	* semantics.c (finish_qualified_id_expr): Simplify.
	* decl2.c (mark_used): Accept BASELINKs.

From-SVN: r109010
2005-12-23 07:40:04 +00:00
Paul Thomas
dd55e286d4 re PR fortran/25029 (Assumed size array can be associated with array pointer without upper bound of last dimension)
2005-12-23  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/25029
	PR fortran/21256
	*resolve.c(resolve_function): Remove assumed size checking for SIZE
	and UBOUND and rely on their built-in checking.

2005-12-23  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/25029
	PR fortran/21256
	*gfortran.dg/initialization_1.f90: Add test of SIZE.

From-SVN: r109009
2005-12-23 06:41:52 +00:00
Hans-Peter Nilsson
01ad6816a1 arit.c (do_31div): Clarify what "31" refers to.
* config/cris/arit.c (do_31div): Clarify what "31" refers to.
	[L_divsi3] (__Udiv): Don't use as inline function.
	[L_modsi3] (__Umod): Ditto.
	(__Div): Rearrange to call do_31div directly instead of __Udiv.
	(__Mod): Similarly regarding __Umod.

From-SVN: r109007
2005-12-23 03:02:30 +00:00
Jerry DeLisle
1c3a47459b re PR libfortran/25307 (internal read with end=label aborts)
2005-12-22  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/25307
	* gfortran.dg/list_read_5.f90: New test.

From-SVN: r109003
2005-12-23 02:56:34 +00:00
Hans-Peter Nilsson
752b602fed re PR target/24342 (testsuite failure:gfortran.fortran-torture/execute/in-pack.f90 exe)
PR target/24342
	* config/cris/cris.c (cris_split_movdx): Add REG_INC notes for
	emitted insns with post-increments.
	(cris_expand_epilogue): Ditto.

From-SVN: r108998
2005-12-23 00:45:36 +00:00
Jakub Jelinek
a0274e3e23 backport: builtins.def: Move all DEF_SYNC_BUILTIN to ...
Merge from gomp-branch.
        * builtins.def: Move all DEF_SYNC_BUILTIN to ...
        * sync-builtins.def: ... new file.
        (BUILT_IN_FETCH_AND_ADD_16,
        BUILT_IN_FETCH_AND_SUB_16, BUILT_IN_FETCH_AND_OR_16,
        BUILT_IN_FETCH_AND_AND_16, BUILT_IN_FETCH_AND_XOR_16,
        BUILT_IN_FETCH_AND_NAND_16, BUILT_IN_ADD_AND_FETCH_16,
        BUILT_IN_SUB_AND_FETCH_16, BUILT_IN_OR_AND_FETCH_16,
        BUILT_IN_AND_AND_FETCH_16, BUILT_IN_XOR_AND_FETCH_16,
        BUILT_IN_NAND_AND_FETCH_16, BUILT_IN_BOOL_COMPARE_AND_SWAP_16,
        BUILT_IN_VAL_COMPARE_AND_SWAP_16, BUILT_IN_LOCK_TEST_AND_SET_16,
        BUILT_IN_LOCK_RELEASE_16): New builtins.
        * builtin-types.def (BT_I16, BT_FN_I16_VPTR_I16,
        BT_FN_BOOL_VPTR_I16_I16, BT_FN_I16_VPTR_I16_I16): Add.
        * builtins.c (expand_builtin): Handle sync BUILT_IN_*_16 builtins.
        * c-common.c (enum c_builtin_type): Move to top-level from
        c_common_nodes_and_builtins enum builtin_type.
        (builtin_types): Move from c_common_nodes_and_builtins.
        (def_fn_type): New.
        (c_common_nodes_and_builtins): Use it.
        (def_builtin_1): Check for error_mark_node.
        (sync_resolve_size): Handle also 128 bit sync builtins.
        * Makefile.in (BUILTINS_DEF): New.  Use it instead of builtins.def.

        * config/i386/i386.h (x86_cmpxchg8b, x86_cmpxchg16b): New decls.
        (TARGET_CMPXCHG8B, TARGET_CMPXCHG16B): Define.
        * config/i386/i386.c (x86_cmpxchg8b, x86_cmpxchg16b): New variables.
        * config/i386/sync.md (CASMODE, DCASMODE): New mode macros.
        (doublemodesuffix, DCASHMODE): New mode attrs.
        (sync_compare_and_swap<mode>): Change into expand, use CASMODE
        instead of IMODE, if mode is wider than a word, expand into
        sync_double_compare_and_swap*.
        (*sync_compare_and_swap<mode>): New insn.
        (sync_double_compare_and_swap<mode>): Likewise.
        (*sync_double_compare_and_swapdi_pic): Likewise.
        (sync_compare_and_swap_cc<mode>): Use CASMODE instead of IMODE, if
        mode is wider than a word, expand into
        sync_double_compare_and_swap_cc*.
        (sync_double_compare_and_swap_cc<mode>): New insn.
        (*sync_double_compare_and_swap_ccdi_pic): Likewise.

From-SVN: r108997
2005-12-22 16:43:34 -08:00
Richard Henderson
c52243fe11 mmintrin.h (_mm_add_si64): Only define for SSE2.
* config/i386/mmintrin.h (_mm_add_si64): Only define for SSE2.
        (_mm_sub_si64): Likewise.
        * config/i386/xmmintrin.h (_mm_shuffle_pi16, _m_pshufw): Likewise.

        * gcc.target/i386/sse-7.c: Use -msse2.

From-SVN: r108996
2005-12-22 16:31:44 -08:00
GCC Administrator
2b2f3077f3 Daily bump.
From-SVN: r108993
2005-12-23 00:17:19 +00:00
Alan Modra
a5ee7cbac4 re PR rtl-optimization/25432 (Reload ICE in gen_add2_insn)
PR rtl-optimization/25432
	* reload1.c (eliminate_regs_in_insn): Update insn code on
	successfully re-recognizing modified insn.

	* gcc.c-torture/compile/20051216-1.c: New test.

From-SVN: r108985
2005-12-23 00:19:49 +01:00
Jakub Jelinek
0c4fc6c9ed re PR objc/25328 (ICE in get_indirect_ref_operands, at tree-ssa-operands.c:1453)
PR objc/25328
	* objc/execute/pr25328.m: New test.

From-SVN: r108984
2005-12-23 00:09:48 +01:00
Mark Mitchell
d4f0f2055b re PR c++/25364 (ICE with function pointer as template parameter)
PR c++/25364
	* typeck.c (build_unary_op): Pass DECLs not names to
	build_offset_refs.
	* init.c (build_offset_ref): Do not do name lookup.  Do not call
	mark_used.
	* call.c (build_call): Simplify and tidy.
	* semantics.c (finish_qualified_id_expr): Call mark_used.
	PR c++/25364
	* g++.dg/template/call4.C: New test.

From-SVN: r108973
2005-12-22 20:08:39 +00:00
Richard Guenther
57decb7e53 tree.c (tree_fold_gcd): Use build_int_cst where appropriate.
2005-12-22  Richard Guenther  <rguenther@suse.de>

	* tree.c (tree_fold_gcd): Use build_int_cst where appropriate.
	* tree-ssa-loop-ivcanon.c (create_canonical_iv): Likewise.
	* varasm.c (array_size_for_constructor): Likewise.
	* fold-const.c (size_diffop, invert_truthvalue,
	optimize_bit_field_compare, make_range, build_range_check,
	fold_cond_expr_with_comparison, fold_truthop,
	fold_single_bit_test_into_sign_test, fold_binary): Likewise.

From-SVN: r108970
2005-12-22 19:40:27 +00:00
Dale Johannesen
42101c23d5 sse.md (sse_movhlps): Reverse operands for 2nd and 3rd alternatives.
2005-12-22  Dale Johannesen  <dalej@apple.com>

	* config/i386/sse.md (sse_movhlps):  Reverse operands for
	2nd and 3rd alternatives.

2005-12-22  Dale Johannesen  <dalej@apple.com>

	* gcc.target/i386/sse-17.c:  New.

From-SVN: r108966
2005-12-22 19:06:09 +00:00
Paul Brook
19b68a48af loop-1.c: Look for jump/branch on m68k.
2005-12-22  Paul Brook  <paul@codesourcery.com>

	* gcc.dg/tree-ssa/loop-1.c: Look for jump/branch on m68k.

From-SVN: r108963
2005-12-22 18:43:21 +00:00
Andrew Haley
f71d94055a re PR java/25535 (gcj broken on 64-bit big-endian systems)
2005-12-22  Andrew Haley  <aph@redhat.com>

	PR java/25535
	* testsuite/libjava.lang/PR25535.java: New test.

From-SVN: r108961
2005-12-22 18:34:01 +00:00
Andrew Pinski
e814a0d1e0 [multiple changes]
2005-12-22  Andrew Pinski  <pinskia@physics.uc.edu>

        PR tree-opt/25513
        * gcc.c-torture/compile/pr25513.c: New test.
2005-12-22  Andrew Pinski <pinskia@physics.uc.edu>

        PR tree-opt/25513
        * tree-dfa.c (make_rename_temp): Set DECL_COMPLEX_GIMPLE_REG_P complex
        variables.

From-SVN: r108958
2005-12-22 10:06:35 -08:00
Tom Tromey
228366cdd2 natClassLoader.cc (_Jv_NewArrayClass): Don't reference NUM_OBJECT_METHODS.
* java/lang/natClassLoader.cc (_Jv_NewArrayClass): Don't
	reference NUM_OBJECT_METHODS.
	* include/jvm.h (NUM_OBJECT_METHODS): Removed.

From-SVN: r108956
2005-12-22 17:33:05 +00:00
Daniel Berlin
3bfdb124af ipa-reference.c (get_reference_vars_info_from_cgraph): Use function_ann.
2005-12-22  Daniel Berlin  <dberlin@dberlin.org>
	   
	* ipa-reference.c (get_reference_vars_info_from_cgraph): Use 
	function_ann.
	(get_local_reference_vars_info): Ditto.
	(get_global_reference_vars_info): Ditto.
	(analyze_function): Ditto.
	(clean_function): Ditto.
	* tree-dfa.c (create_function_ann): New function.
	* tree-flow-inline.h (var_ann): FUNCTION_DECL's don't have
	var_ann.
	(function_ann): New.
	(get_function_ann): Ditto.
	* tree-flow.h (tree_ann_type): Add FUNCTION_ANN.
	(struct var_ann_d): Move reference_vars_info to function annotation.
	(struct function_ann_d): New.
	(union tree_ann_d): Add function_ann.

From-SVN: r108950
2005-12-22 15:01:02 +00:00
Zdenek Dvorak
1052bd544e df.c (df_bitmaps_free): Only work for bbs for that structures are allocated.
* df.c (df_bitmaps_free): Only work for bbs for that structures are
	allocated.
	(df_bb_modify): Realloc tables to the new index.
	(df_find_use): New function.
	(df_find_def, df_reg_used): Handle subregs.
	* df.h (df_find_use): Declare.

	* loop-invariant.c: Include hashtab.h.
	(struct invariant): Remove processed field, add eqto and reg fields.
	(struct invariant_expr_entry): New.
	(invariant_for_use, hash_invariant_expr_1, invariant_expr_equal_p,
	hash_invariant_expr, eq_invariant_expr, find_or_insert_inv,
	find_identical_invariants, merge_identical_invariants): New functions.
	(create_new_invariant): Return the new invariant.  Initialize new
	fields.
	(find_invariants): Call merge_identical_invariants.
	(get_inv_cost, best_gain_for_invariant, set_move_mark,
	move_invariant_reg): Handle equivalent invariants.
	* Makefile.in (loop-invariant.o): Add HASHTAB_H dependency.


Co-Authored-By: Steven Bosscher <stevenb@suse.de>

From-SVN: r108949
2005-12-22 14:23:40 +00:00
Volker Reichelt
ab84748af1 re PR c++/23333 (accepts invalid pure specifier)
2005-12-22  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>

	PR c++/23333
	* include/cpplib.h: Add PURE_ZERO to flags for the cpp_token structure.

	* c-lex.c (c_lex_with_flags): Add PURE_ZERO to cpp_flags if
	number is a single digit '0'.

	* parser.c (cp_parser_pure_specifier): Check for PURE_ZERO to
	identify a single '0'.

	* g++.dg/parse/error25.C: Add more tests.

From-SVN: r108947
2005-12-22 12:01:44 +00:00