Commit Graph

70360 Commits

Author SHA1 Message Date
Josh Conner bf460b19f0 re PR rtl-optimization/23241 (Invalid code generated for comparison of uchar to 255)
PR rtl-optimization/23241
	* gcc.dg/char-compare.c: New test.

From-SVN: r102868
2005-08-08 18:28:46 +00:00
Volker Reichelt a85cb0d7f0 re PR c++/22508 (ICE after invalid operator new)
PR c++/22508
	* init.c (build_new_1): Check for empty candidate list.

	* g++.dg/init/new13.C: New test.

From-SVN: r102863
2005-08-08 17:03:33 +00:00
David Edelsohn 7a4eca6648 re PR target/18506 (Altivec definitions of vec_init)
PR target/18506
	* config/rs6000/altivec.md (vec_init<mode>): New.
	(vec_set<mode>): New.
	(vec_extract<mode>): New.
	* config/rs6000/rs6000.c (rs6000_expand_vector_init): New.
	(rs6000_expand_vector_set): New.
	(rs6000_expand_vector_extract): New.
	(rs6000_legitimate_offset_address_p): Offset addresses are valid
	for Altivec modes before reload.
	(altivec_expand_vec_init_builtin): New.
	(get_element_number): New.
	(altivec_expand_vec_set_builtin): New.
	(altivec_expand_vec_ext_builtin): New.
	(altivec_expand_builtin): Expand vec_init, vec_set, and vec_ext
	builtins.
	(altivec_init_builtins): Init vec_init, vec_set, and vec_ext
	builtins.
	* config/rs6000/rs6000.h (rs6000_builtins): Add
	ALTIVEC_BUILTIN_VEC_INIT_<mode>, ALTIVEC_BUILTIN_VEC_SET_<mode>,
	ALTIVEC_BUILTIN_VEC_EXT_<mode>.
	* config/rs6000/rs6000-protos.h: Declare new functions.

From-SVN: r102861
2005-08-08 12:36:26 -04:00
Jan Hubicka 47efdea45e i386.c (legitimate_pic_address_disp_p): Refuse GOTOFF in 64bit mode.
* i386.c (legitimate_pic_address_disp_p): Refuse GOTOFF in 64bit mode.
	(legitimate_address_p): Refuse GOT and GOTOFF in 64bit mode.
	* i386.md (movdi*): Use pic_32bit_operand.
	* predicates.md (pic_32bit_operand): New.

From-SVN: r102860
2005-08-08 16:29:51 +00:00
Nathan Sidwell 063fb392d2 class.c (build_class_ref): Wrap the primary class type in a NOP_EXPR.
* class.c (build_class_ref): Wrap the primary class type in a
	NOP_EXPR.
	* parse.y (java_complete_lhs) <COMPONENT_REF case>: Extract the
	primary class type from the NOP_EXPR in which it was placed.

From-SVN: r102859
2005-08-08 14:56:18 +00:00
Nathan Sidwell f303a99631 re PR c++/21166 (g++ gives error on reference to packed structure elements)
.:	PR c++/21166
	* stor-layout.c (finalize_type_size): Undo DECL_PACKED when possible.
testsuite:
	PR c++/21166
	* g++.dg/other/crash-4.C: Adjust
	* g++/dg/ext/packed9.C: New.

From-SVN: r102858
2005-08-08 14:22:35 +00:00
Paolo Bonzini 4de997d137 configure.in (CC_FOR_TARGET, [...]): Find them with NCN_STRICT_CHECK_TARGET_TOOL, like the other target tools...
2005-08-08  Paolo Bonzini  <bonzini@gnu.org>

	* configure.in (CC_FOR_TARGET, CXX_FOR_TARGET, GCJ_FOR_TARGET,
	GCC_FOR_TARGET, RAW_CXX_FOR_TARGET, GFORTRAN_FOR_TARGET): Find
	them with NCN_STRICT_CHECK_TARGET_TOOL, like the other target
	tools; remove code to manually set them.
	(Target tools): Look in the environment for them.
	* Makefile.tpl (CC_FOR_TARGET, CXX_FOR_TARGET, GCJ_FOR_TARGET,
	GCC_FOR_TARGET, RAW_CXX_FOR_TARGET, GFORTRAN_FOR_TARGET): Redefine.
	(AS_FOR_TARGET, LD_FOR_TARGET, NM_FOR_TARGET): Look into gcc
	build directory.
	(CONFIGURED_CC_FOR_TARGET, CONFIGURED_CXX_FOR_TARGET,
	CONFIGURED_GCJ_FOR_TARGET, CONFIGURED_GCC_FOR_TARGET,
	CONFIGURED_GFORTRAN_FOR_TARGET, USUAL_CC_FOR_TARGET,
	USUAL_CXX_FOR_TARGET, USUAL_GCJ_FOR_TARGET, USUAL_GCC_FOR_TARGET,
	USUAL_RAW_CXX_FOR_TARGET, USUAL_GFORTRAN_FOR_TARGET): New.
	(CXX_FOR_TARGET_FOR_RECURSIVE_MAKE,
	RAW_CXX_FOR_TARGET_FOR_RECURSIVE_MAKE, RECURSE_FLAGS): Delete.
	* configure: Regenerate.
	* Makefile.in: Regenerate.

From-SVN: r102855
2005-08-08 09:19:17 +00:00
Richard Sandiford e6a854210d re PR middle-end/21964 (broken tail call at -O2 or more)
PR middle-end/21964
	* gcc.c-torture/execute/pr21964-1.c: New test.

From-SVN: r102850
2005-08-08 07:45:22 +00:00
Richard Sandiford 7a7c5ab01a re PR c/22458 (ICE on missing brace)
PR c/22458
	* gcc.dg/pr22458-1.c: New test.

From-SVN: r102845
2005-08-08 07:38:30 +00:00
James A. Morrison a5ad726923 tree-vrp.c (simplify_div_or_mod_using_range): Use build2.
2005-08-07  James A. Morrison  <phython@gcc.gnu.org>

        * tree-vrp.c (simplify_div_or_mod_using_range): Use build2.
        (test_for_singularity): Use fold_build2.

From-SVN: r102844
2005-08-08 04:43:23 +00:00
John David Anglin 914a6ee8a5 * pa64-regs.h (CONDITIONAL_REGISTER_USAGE): Fix loop upper bound.
From-SVN: r102841
2005-08-08 02:19:39 +00:00
GCC Administrator f366779337 Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r102838.2
2005-08-08 00:16:16 +00:00
Steven G. Kargl c7877252d4 Forgot to remove and add these files in the previous commit.
* io/backspace.c: File removed, contents moved to ...
	* io/endfile.c: Ditto.
	* io/rewind.c: Ditto.
	* io/file_pos.c: New file, ... here.

From-SVN: r102836
2005-08-07 22:59:00 +00:00
Janne Blomqvist 6403ec5ff6 [multiple changes]
2005-08-07   Janne Blomqvist <jblomqvi@cc.hut.fi>

        PR fortran/22390
        * dump-parse-tree.c (gfc_show_code_node): Add case for FLUSH.
        * gfortran.h: Add enums for FLUSH.
        * io.c (gfc_free_filepos,match_file_element,match_filepos): Modify
        comment appropriately.  (gfc_match_flush): New function.
        * match.c (gfc_match_if): Add match for flush.
        * match.h: Add prototype.
        * parse.c (decode_statement): Add flush to 'f' case.
        (next_statement): Add case for flush. (gfc_ascii_statement): Likewise.
        * resolve.c (resolve_code): Add flush case.
        * st.c (gfc_free_statement): Add flush case.
        * trans-io.c: Add prototype for flush.
        (gfc_build_io_library_fndecls): Build fndecl for flush.
        (gfc_trans_flush): New function.
        * trans-stmt.h: Add prototype.
        * trans.c (gfc_trans_code): Add case for flush.

2005-08-07  Janne Blomqvist  <jblomqvi@cc.hut.fi>

        PR fortran/22390
        * io/backspace.c: File removed, contents moved to ...
        * io/endfile.c: Ditto.
        * io/rewind.c: Ditto.
        * io/file_pos.c: New file, ... here.
        * Makefile.am: Add file_pos.c to list, remove obsolete files.
        * Makefile.in: Regenerated.

2005-08-07  Janne Blomqvist <jblomqvi@cc.hut.fi>
            Steven G. Kargl <kargls@comcast.net>

        PR fortran/22390
        * gfortran.dg/flush_1.f90: New test.

Co-Authored-By: Steven G. Kargl <kargls@comcast.net>

From-SVN: r102835
2005-08-07 22:56:19 +00:00
Danny Smith f18faab7c4 cygming.h (SUBTARGET_ENCODE_SECTION_INFO): Define.
* config/i386/cygming.h (SUBTARGET_ENCODE_SECTION_INFO): Define.
	(COMMON_ASM_OP) Define.
	* config/i386/i386.c (ix86_in_large_data_p): Add ATTRIBUTE_UNUSED
	(ix86_encode_section_info): Likewise.
	(TARGET_ENCODE_SECTION_INFO): Conditionally define as
	SUBTARGET_ENCODE_SECTION_INFO.

From-SVN: r102834
2005-08-07 21:13:27 +00:00
Bruce Korb 776c2384b2 Finish checkin of date: 2005/06/14 23:59:47; author: ro;
for rev 1.23 of inclhack.def:  adjust tests/base/math.h for new
content for AAB_darwin7_9_long_double_funcs_2 fix.

From-SVN: r102833
2005-08-07 19:14:12 +00:00
Richard Henderson 455c08cb64 re PR middle-end/21894 (Invalid operand to binary operator with nested function)
PR 21894
        * tree-nested.c (convert_local_reference): Save and restore val_only
        around component_ref and friends.  Clear walk_subtrees by default.

From-SVN: r102832
2005-08-07 12:01:09 -07:00
James A. Morrison febfc59a95 tree-convert.c (convert): Use fold_build1 instead of fold (build1.
2005-08-07  James A. Morrison  <phython@gcc.gnu.org>

        * tree-convert.c (convert): Use fold_build1 instead of
        fold (build1.

From-SVN: r102831
2005-08-07 16:36:33 +00:00
Peter O'Gorman 3300bf0737 Make Darwin -bundle option work. Patch from Peter O'Gorman.
PR 21366
* gcc.c (process_command): Check the argument to -b has a dash.
* doc/invoke.texi: Update -b and -V docs.

From-SVN: r102829
2005-08-06 19:39:12 -07:00
James E Wilson e2ba06d66d Delete unused obsolete files for irix5cross64 configure target.
* config/mips/cross64.h, config/mips/t-cross64: Delete.

From-SVN: r102828
2005-08-06 17:26:01 -07:00
GCC Administrator c633f011cb Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r102825.2
2005-08-07 00:17:18 +00:00
Francois-Xavier Coudert e087fdd81c io.h: Change DEFAULT_TEMPDIR to /tmp instead of /var/tmp.
* io/io.h: Change DEFAULT_TEMPDIR to /tmp instead of /var/tmp.
	* io/unix.c (tempfile): Look at the TEMP environment variable
	to find the temporary files directory. Whitespace correction.

From-SVN: r102822
2005-08-06 22:57:46 +00:00
Volker Reichelt 9f6206d9df re PR c++/23191 (ICE on invalid throw in template)
PR c++/23191
	* pt.c (tsubst) <case METHOD_TYPE>: Check for error_mark_node
	before calling build_exception_variant.

	* g++.dg/template/eh2.C: New test.

From-SVN: r102819
2005-08-06 22:38:44 +00:00
Volker Reichelt bf2f7328ff re PR c++/19498 (ICE on invalid reference in template parameter)
PR c++/19498
	* pt.c (tsubst_decl) <case TEMPLATE_DECL>: Return ERROR_MARK_NODE
	if substitution of template args did not succeed.

	* g++.dg/template/instantiate7.C: New test.

From-SVN: r102818
2005-08-06 22:22:47 +00:00
Michael Matz 8402b3e18a * method.c (use_thunk): Call init_insn_lengths.
From-SVN: r102817
2005-08-06 21:25:09 +00:00
Michael Matz 3e0a6ca6ae genattrtab.c (write_attr_get, [...]): Use insn_code member only if only one insn is associated with the value.
* genattrtab.c (write_attr_get, write_attr_case): Use insn_code
	member only if only one insn is associated with the value.

From-SVN: r102816
2005-08-06 21:11:54 +00:00
Francois-Xavier Coudert 9da375252f * primary.c (match_hollerith_constant): Fix typo.
From-SVN: r102814
2005-08-06 19:18:45 +00:00
James A. Morrison b53b1b04f5 re PR treelang/23072 (multiple runs of treelang testsuite does not work...)
2005-08-06  James A. Morrison  <phython@gcc.gnu.org>

        PR treelang/23072
        * Make-lang.in: Remove old testing cruft.

From-SVN: r102813
2005-08-06 18:25:31 +00:00
Francois-Xavier Coudert 2c4a108eec * io/unix.c: Add O_RDWR to open() call.
From-SVN: r102811
2005-08-06 15:38:49 +00:00
Nick Clifton 2f806f3b9b config/stormy16/stormy16.h (SYMBOL_FLAG_XSTORMY16_BELOW100): New define.
(ASM_OUTPUT_LABELREF): Delete - it is no longer needed.
config/stormy16/stormy16.c (xstormy16_below100_symbol): Check symbol flags
    instead of symbol name mangling.
  (xstormy16_asm_output_aligned_common): Likewise.  Also simplify code since
    the bss100_section cass is the only case where the below100 code will be
    triggered.
  (xstormy16_encode_section_info): Encode below100 attribute using the
    SYMBOL_FLAG_XSTORMY16_BELOW100 instead of mangling the name.
  (xstormy16_strip_name_encoding): Delete - this function is no longer needed.
  (TARGET_STRIP_NAME_ENCODING): Undefine.
config/stormy16/stormy16-protos.h: Delete prototype for
    xstormy16_strip_name_encoding.

From-SVN: r102810
2005-08-06 13:50:42 +00:00
Kazu Hirata a4d0554781 Makefile.in, [...]: Fix comment/doc typos.
* Makefile.in, cfgexpand.c, cfgloop.h, cfgloopmanip.c,
	config.gcc, ipa-cp.c, ipa-prop.c, ipa-prop.h, reg-stack.c,
	tree-ssa-structalias.c, tree-vrp.c, value-prof.c, vec.h,
	config/linux.h, config/alpha/alpha.h, config/alpha/linux.h,
	config/alpha/predicates.md, config/arc/arc.h,
	config/arm/arm.h, config/arm/ieee754-df.S,
	config/arm/ieee754-sf.S, config/bfin/bfin.c,
	config/bfin/bfin.h, config/c4x/c4x.h, config/crx/crx.c,
	config/fr30/fr30.h, config/frv/frv.h, config/h8300/h8300.h,
	config/i386/i386.h, config/ia64/ia64.c, config/ia64/ia64.h,
	config/m68hc11/m68hc11.h, config/mips/mips.c,
	config/mips/mips.h, config/mips/openbsd.h,
	config/mn10300/mn10300.h, config/pa/pa.c, config/pa/pa.h,
	config/pdp11/pdp11.h, config/rs6000/linux-unwind.h,
	config/rs6000/rs6000.c, config/rs6000/rs6000.h,
	config/s390/s390.c, config/sh/sh.c, config/sh/sh.h,
	config/sparc/linux.h, config/sparc/linux64.h,
	config/sparc/sparc.h, config/v850/v850.h, config/vax/vax.h,
	doc/extend.texi, doc/gcov.texi, doc/install.texi,
	doc/invoke.texi, doc/rtl.texi, doc/tm.texi: Fix comment/doc
	typos.  Follow spelling conventions.

From-SVN: r102809
2005-08-06 13:26:35 +00:00
Kazu Hirata 49de9e7395 decl.c, [...]: Fix comment/doc typos.
* decl.c, dump-parse-tree.c, gfortran.texi, intrinsic.texi,
	invoke.texi, resolve.c, trans-array.c, trans-array.h,
	trans-common.c, trans-expr.c, trans-io.c, trans.h: Fix
	comment/doc typos.  Follow spelling conventions.

From-SVN: r102806
2005-08-06 12:56:19 +00:00
Joseph Myers 591baeb020 re PR c/23113 (The -Wunused (value computed is not used) option missed an important case)
PR c/23113
	* stmt.c (warn_if_unused_value): Check TREE_NO_WARNING at start.
	Don't handle NOP_EXPR, CONVERT_EXPR and NON_LVALUE_EXPR
	specially.  Check for side effects only for COND_EXPR.
	* c-typeck.c (c_finish_stmt_expr): Mark statement expression
	return with TREE_NO_WARNING.

testsuite:
	* gcc.dg/Wunused-value-1.c: New test.

From-SVN: r102805
2005-08-06 12:31:49 +01:00
Richard Sandiford f7a064b514 re PR rtl-optimization/23233 (Loop optimisation ICE for subreg addresses)
PR rtl-optimization/23233
	* loop.c (combine_movables): Require the modes to be the same.
	(move_movables): Remove handling of cases where the replacement
	had a different mode to the original.

From-SVN: r102804
2005-08-06 11:05:48 +00:00
Jakub Jelinek a8006d0933 re PR fortran/18833 (ICE 'missing spec' on integer/char equivalence)
PR fortran/18833
	PR fortran/20850
	* primary.c (match_varspec): If equiv_flag, don't look at sym's
	attributes, call gfc_match_array_ref up to twice and don't do any
	substring or component processing.
	* resolve.c (resolve_equivalence): Transform REF_ARRAY into
	REF_SUBSTRING or nothing if needed.  Check that substrings
	don't have zero length.

	* gfortran.dg/equiv_1.f90: New test.
	* gfortran.dg/equiv_2.f90: New test.
	* gfortran.fortran-torture/execute/equiv_2.f90: New test.
	* gfortran.fortran-torture/execute/equiv_3.f90: New test.
	* gfortran.fortran-torture/execute/equiv_4.f90: New test.

From-SVN: r102801
2005-08-06 12:00:53 +02:00
James A. Morrison b17775aba4 re PR tree-optimization/23128 (VRP fails for unsigned values)
2005-08-05  James A. Morrison  <phython@gcc.gnu.org>

        PR tree-optimization/23128
        * tree-vrp.c (vrp_int_const_binop): Check if unsigned addition or
        subtraction wrap, and set TREE_OVERFLOW if they do.

From-SVN: r102800
2005-08-06 05:35:31 +00:00
James A. Morrison 099f36ab8c re PR debug/22514 (ICE in force_decl_die with invalid code after error)
2005-08-05  James A. Morrison  <phython@gcc.gnu.org>

        PR c++/22514
        * name-lookup.c (cp_emit_debug_info_for_using): Do nothing if
        sorrycount or errorcount are nonzero.

From-SVN: r102799
2005-08-06 05:18:09 +00:00
GCC Administrator a6a09784ee Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r102792.2
2005-08-06 00:16:13 +00:00
Richard Henderson bb1ecfe8a9 re PR middle-end/21728 (Nonlocal goto from an unused nested function)
PR 21728
        * tree-cfg.c (remove_bb): Transmute DECL_NONLOCAL labels into
        FORCED_LABEL labels.

From-SVN: r102786
2005-08-05 16:01:54 -07:00
Mark Mitchell 0e44ef6254 Correct PR#
From-SVN: r102785
2005-08-05 21:02:57 +00:00
Mark Mitchell d8654d1a75 re PR c++/19063 (ICE on invalid template parameter)
* name-lookup.c (pushtag): Remove accidental commit from:
	2004-12-21  Mark Mitchell  <mark@codesourcery.com>
	PR c++/19063
	* decl.c (grokdeclarator): Return error_mark_node, not
	void_type_node, to indicate errors.
	* parser.c (cp_parser_template_parameter_list): Robustify.
	(cp_parser_template_parameter): Likewise.

From-SVN: r102784
2005-08-05 21:01:47 +00:00
Thomas Koenig eed61baa40 trans-expr.c (gfc_build_builtin_function_decls): Mark stop_numeric and stop_string as non-returning.
2005-08-05  Thomas Koenig  <Thomas.Koenig@online.de>

        * trans-expr.c  (gfc_build_builtin_function_decls):  Mark
        stop_numeric and stop_string as non-returning.

From-SVN: r102782
2005-08-05 20:37:07 +00:00
J"orn Rennecke 50aa8e71b7 re PR middle-end/23135 (find_reloads_toplev -> find_reloads_subreg_address uses wrong reload type)
PR middle-end/23135
	* reload.c (find_reloads_subreg_address): Pass down TYPE
	unchanged.  Change all callers except find_reloads_toplev.

From-SVN: r102772
2005-08-05 17:06:35 +01:00
Joern Rennecke ceb0feb330 intmax_t-1.c: Extend dg-error to cover sh*-*-elf targets.
* gcc.dg/intmax_t-1.c: Extend dg-error to cover sh*-*-elf targets.

	* gcc.dg/tree-ssa/loop-1.c: For sh*-*-*, look for function calls
	instead of constant loads / pool entries.

From-SVN: r102769
2005-08-05 16:53:04 +01:00
Joern Rennecke 00e0b74757 intmax_t-1.c: Extend dg-error to cover sh*-*-elf targets.
* gcc.dg/intmax_t-1.c: Extend dg-error to cover sh*-*-elf targets.

	* gcc.dg/tree-ssa/loop-1.c: FOr sh*-*-*, look for function calls
	instead of constant loads / pool entries.

From-SVN: r102768
2005-08-05 16:51:39 +01:00
David Edelsohn 4c84c58eb9 builtin-wctype-1.c: Use __WINT_TYPE__ for TEST_TO_WCTYPE.
* gcc.dg/torture/builtin-wctype-1.c: Use __WINT_TYPE__ for
        TEST_TO_WCTYPE.

From-SVN: r102767
2005-08-05 11:22:43 -04:00
Joern Rennecke 688ac5b416 * gcc.dg/intmax_t-1.c: Extend dg-error to cover sh*-*-elf targets.
From-SVN: r102766
2005-08-05 16:07:00 +01:00
Michael Matz b01896ccb0 genattrtab.c (current_alternative_string): Remove.
* genattrtab.c (current_alternative_string): Remove.
        (SIMPLIFY_ALTERNATIVE): Ditto.
        (attr_alt_bit_p): Ditto.
        (alternative_name): Make const char *.
        (evaluate_eq_attr): Remove use of above things.
        (simplify_test_exp): Ditto.
        (simplify_test_exp <EQ_ATTR>): Guard for insn_code < 0 .
        (simplify_test_exp <AND>): Correct typo (test 'right' not 'left').

From-SVN: r102765
2005-08-05 09:42:06 +00:00
James E Wilson 3f94bdecbc Fix problem pointed out by Gunther Nikl on gcc list.
* config/ptx4.h, config/sol2.h, config/arm/freebsd.h,
config/arm/linux-elf.h, config/frv/frv.h, config/i386/freebsd.h,
config/i386/freebsd64.h, config/i386/netware.h, config/i386/sco5.h,
config/ia64/freebsd.h, config/rs6000/sysv4.h, config/sparc/freebsd.h
(LINK_SPEC): Delete useless %{Wl,*:%*} item.

From-SVN: r102762
2005-08-04 20:20:12 -07:00
Richard Henderson 460f84ed3d re PR middle-end/21529 (code size regression (+40%) with -Os from GCC-3.4.3 to 4.1)
PR 21529
        * params.def (PARAM_SRA_MAX_STRUCTURE_COUNT): New.
        * params.h (SRA_MAX_STRUCTURE_COUNT): New.
        * tree-sra.c (decide_block_copy): Use it.  Disable element copy
        if we'd have to instantiate too many members.

From-SVN: r102761
2005-08-04 19:42:06 -07:00