Commit Graph

27476 Commits

Author SHA1 Message Date
Jan Hubicka 5e787f078d loop.c (check_insn_for_bivs, [...]): Break out from ...
* loop.c (check_insn_for_bivs, for_every_insn_in_loop,
	check_insn_for_givs): Break out from ...
	(strength_reduce) ... here; use for_every_insn_in_loop to call
	check_insn_for_givs.
	* loop.h (for_every_insn_in_loop): Declare.
	(loop_insn_callback): New type.

From-SVN: r33250
2000-04-19 10:08:22 +00:00
Greg McGary 21c076f989 20000419-1.c: New test for arg clobbering with sibling-call optimizations.
* execute/20000419-1.c: New test for arg clobbering with
	sibling-call optimizations.

From-SVN: r33249
2000-04-19 08:32:43 +00:00
Jeff Law 0a3fcd9a90 Daily bump.
From-SVN: r33248
2000-04-19 01:45:07 -06:00
Zack Weinberg 6a832d4240 cpplib.c (do_pragma_poison): Strings in the token buffer are not nul-terminated.
* cpplib.c (do_pragma_poison):  Strings in the token buffer are
	not nul-terminated.

From-SVN: r33247
2000-04-19 05:37:03 +00:00
Bryce McKinlay 56293c2be2 This commit was generated by cvs2svn to compensate for changes in r33244,
which included commits to RCS files with non-trunk default branches.

From-SVN: r33245
2000-04-19 03:29:16 +01:00
Bryce McKinlay 0eebf9e5c7 Initial revision
From-SVN: r33241
2000-04-19 03:29:14 +01:00
Alexandre Petit-Bianco 48a840d910 [multiple changes]
2000-04-18  Alexandre Petit-Bianco  <apbianco@cygnus.com>

	* parse.y (maybe_make_nested_class_name): Use `obstack_grow0'.

2000-04-14  Alexandre Petit-Bianco  <apbianco@cygnus.com>

	* parse.y (java_expand_classes): Reverse the package list once.
	(java_complete_lhs): PLUS_EXPR: don't try rhs and lhs at string
	reduction.
	(patch_binop): New temp `cn'. Call patch_string on LHS/RHS of
	the `==' and `!=' operators.

From-SVN: r33240
2000-04-18 18:53:47 -07:00
Jim Wilson 20c8a6c293 Fix problem with relocs in read-only sections for C++ code.
* config/ia64/sysv4.h (SELECT_SECTION): Use data_section if
	flag_pic and RELOC.

From-SVN: r33239
2000-04-18 16:05:34 -07:00
Zack Weinberg 86702e3134 cccp.c, [...]: Removed.
* cccp.c, cexp.y, cexp.c, cccp.1: Removed.

	* configure.in: Delete --disable-cpplib option and all
	references to cpp_main.
	* configure: Regenerate.
	* Makefile.in: Remove all references to CCCP, CCCP_OBJS,
	@cpp_main@, cccp.c, cexp.c, cexp.y, cexp.output, cexp.o,
	cccp.o, cccp, or cppmain.  Link cppmain.o straight to
	cpp$(exeext).  Add --no-headers to makeinfo command line when
	generating INSTALL.  Install and uninstall cpp.1 manpage, not
	cccp.1.
	* install.texi: Delete all references to cexp.y/cexp.c.
	Delete ancient instructions for compiling GCC on 3b1.
	* INSTALL: Regenerate.

	* cppfiles.c, cpplib.h, jump.c, protoize.c, c-lex.c,
	ch/decl.c, ch/lex.c, cp/lex.c, f/lex.c, mips/t-ecoff,
	mips/t-elf, mips/t-r3900: Remove references to cccp.c.
	* convex.h, fx80.h, m68k.h, pdp11.h, contrib/gcc_update,
	f/g77install.texi: Remove references to	cexp.c/cexp.y.
	* xm-linux.h, xm-os2.h, romp.h: Remove definition of BSTRING,
	which is no longer tested anywhere.

	* po/POTFILES.in: Remove cccp.c and cexp.c.  Comment out
	alpha/vms-tramp.asm.

From-SVN: r33238
2000-04-18 22:34:13 +00:00
Zack Weinberg d88b89e506 cppinit.c (handle_option): Don't run error message through gettext twice.
* cppinit.c (handle_option): Don't run error message through
	gettext twice.

From-SVN: r33237
2000-04-18 21:49:16 +00:00
Richard Kenner e38992e8d3 conflict.c (conflict_graph_add): Pass enum type to htab_find_slot.
* gcc/conflict.c (conflict_graph_add): Pass enum type to
	htab_find_slot.
	* gcc/cpperror.c (hashtab.h): Now include.
	* gcc/cppexp.c (hashtab.h): Likewise.
	* gcc/cpplex.c (hashtab.h): Likewise.
	* gcc/cppfiles.c (hashtab.h): Likewise.
	(find_include_file, _cpp_calc_hash, cpp_read_file): Pass enum type
	to htab_find_slot_with_hash.
	* gcc/cpphash.c (hashtab.h): Now include.
	(_cpp_lookup_slot): INSERT is now enum insert_option.
	* gcc/cpphash.h (_cpp_lookup_slot): Likewise.
	* gcc/cppinit.c (hashtab.h): Include earlier.
	(initialize_builtins): Pass enum to htab_find_slot.
	* gcc/cpplib.c (hashtab.h): Now include.
	(do_define, do_undef): Pass enum type to _cpp_lookup_slot.
	(do_pragma_poison, do_assert): Likewise.
	* gcc/emit-rtl.c (gen_rtx_CONST_INT): Pass enum to
	htab_find_slot_with_hash.
	* gcc/simplify-rtx.c (cselib_lookup_mem, cselib_lookup): Likewise.
	* gcc/tree.c (type_hash_add): Likewise.
	(build1): Minor cleanup.
	* include/hashtab.h (enum insert_option): New type.
	(htab_find_slot, htab_find_slot_with_hash): Use it.
	* libiberty/hashtab.c: Various minor cleanups.
	(htab_find_slot_with_hash): INSERT is now enum insert_option.
	(htab_find_slot): Likewise.

From-SVN: r33236
2000-04-18 16:42:00 -04:00
Mark Mitchell 0d9eb3ba29 cp-tree.h (lang_decl_flags): Remove const_memfunc and volatile_memfunc.
* cp-tree.h (lang_decl_flags): Remove const_memfunc and
	volatile_memfunc.  Add destructor_attr.  Adjust dummy.
	(DECL_DESTRUCTOR_P): Use destructor_attr.
	(DECL_CONST_MEMFUNC_P): Reimplement.
	(DECL_VOLATILE_MEMFUNC_P): Remove.
	* class.c (finish_struct_methods): Use CLASSTYPE_DESTRUCTORS.
	(overrides): Use DECL_DESTRUCTOR_P.
	(check_for_override): Likewise.
	* decl.c (start_function): Likewise.
	* decl2.c (grokfclassfn): Likewise.
	(check_classfn): Likewise.
	(grok_function_init): Likewise.

From-SVN: r33235
2000-04-18 20:21:39 +00:00
Stan Cox 616ce8db91 * gengenrtl.c (genlegend): Fix misspelling.
From-SVN: r33234
2000-04-18 20:04:26 +00:00
Robert Lipe c149cc37c8 configure.in (ENUM_BITFIELDS_ARE_UNSIGNED): Added.
* configure.in (ENUM_BITFIELDS_ARE_UNSIGNED): Added.  Check that
        bitfields of the host compiler are not signed quantities.
        * config.in: Regenerate.
        * configure: Regenerate.
        * system.h (USE_ENUM_BITFIELDS): Added.
        (ENUM_BITFIELDS): Added.
        * rtl.h (rtx_def): Members `code', `mode', now ENUM_BITFIELD.
        (SHORT_ENUM_BUG): Deleted.
        * tree.h (tree_common): Members `code', `mode', `built_in_class',
        now ENUM_BITFIELD.
        * config/i386/xm-sco.h (ONLY_INT_FIELDS): Deleted.
        (CODE_FIELD_BUG): Likewise.
        * config/m68k/x-apollo68 (CC): Deleted SHORT_ENUM_BUG.
        (OLD_CC): Likewise.
        * config/m68k/x-ccur (X_CFLAGS): Likewise.

From-SVN: r33233
2000-04-18 19:42:30 +00:00
Richard Kenner aa4661f823 ggc-common.c: Add missing blanks.
* ggc-common.c: Add missing blanks.
	* print-tree.c (print_node): Print DECL_OFFSET_ALIGN.
	* tree.h (DECL_OFFSET_ALIGN): Fix typo in comment.

From-SVN: r33232
2000-04-18 15:35:09 -04:00
Richard Kenner 0876ac08ad stmt.c (mark_case_node): New function.
* stmt.c (mark_case_node): New function.
	(mark_case_nesting): Call it.

From-SVN: r33231
2000-04-18 15:23:53 -04:00
Richard Kenner 6912b84bf1 expmed.c (emit_store_flag): If comparing two-word integer with zero, can optimize NE, EQ, GE, and LT.
* expmed.c (emit_store_flag): If comparing two-word integer
	with zero, can optimize NE, EQ, GE, and LT.

From-SVN: r33230
2000-04-18 15:14:58 -04:00
Richard Henderson 60b6e1f5d5 Fix typo.
From-SVN: r33229
2000-04-18 11:59:10 -07:00
Mark Mitchell cbccf5e803 cpplex.c (_cpp_lex_token): Don't call CPP_BUMP_LINE when the mark is active.
* cpplex.c (_cpp_lex_token): Don't call CPP_BUMP_LINE when the
	mark is active.

From-SVN: r33228
2000-04-18 18:52:16 +00:00
Mark Mitchell cd89c29664 Add expected error
From-SVN: r33227
2000-04-18 18:46:18 +00:00
Richard Kenner 749a2da1ba c-decl.c (mark_binding_level): Use 'for' instead of `while'.
* c-decl.c (mark_binding_level): Use 'for' instead of `while'.
	* conflict.c: Minor cleanups.
	* optabs.c: Add blank line
	* simplify-rtx.c:

From-SVN: r33226
2000-04-18 14:14:10 -04:00
Tom Tromey 83c1f6283e re GNATS gcj/211 (gcjh doesn't handle method names that are reserved C++ keywords)
PR gcj/211:
	* gjavah.c (utf8_cmp): Changed return value.
	(cxx_keyword_subst): Handle all C++ keywords.  Allocate new return
	result.
	(cxx_keywords): New global.
	(get_field_name): Handle new result of cxx_keyword_subst.
	(print_method_info): Likewise.

From-SVN: r33225
2000-04-18 16:13:16 +00:00
Jeff Law 44c0139162 Daily bump.
From-SVN: r33224
2000-04-18 01:45:07 -06:00
Zack Weinberg 9cc6e05fdf cppexp.c (lex): Don't assume tokens are NUL terminated.
* cppexp.c (lex): Don't assume tokens are NUL terminated.
	* cpplib.c (do_include, do_import, do_include_next,
	read_line_number, detect_if_not_defined): Likewise.
	* cpphash.c (collect_expansion): Likewise.
	(special_symbol, _cpp_macroexpand): Check return from
	cpp_file_buffer.
	* cpphash.h (CPP_NUL_TERMINATE, CPP_NUL_TERMINATE_Q): Delete
	macros.  Delete all uses.

	* gcc.dg/cpp-mi.c: Add two more test cases.
	* gcc.dg/cpp-mind.h, gcc.dg/cpp-mindp.h: New files.

From-SVN: r33223
2000-04-18 06:43:41 +00:00
Richard Henderson d1bfc5ad46 bb-reorder.c (fixup_reorder_chain): Don't look up new block again.
* bb-reorder.c (fixup_reorder_chain): Don't look up new block again.
        (reorder_basic_blocks): If no epilogue in rtl, force last block last.

From-SVN: r33221
2000-04-17 18:32:43 -07:00
Mark Mitchell 009e98457a decl2.c (grokfield): Issue error on illegal data member declaration.
* decl2.c (grokfield): Issue error on illegal data member
	declaration.

From-SVN: r33220
2000-04-18 01:30:21 +00:00
Mark Mitchell ab36bd3ed4 function.c (expand_function_start): Use hard_function_value to compute the RTL to use for DECL_RESULT.
* function.c (expand_function_start): Use hard_function_value to
	compute the RTL to use for DECL_RESULT.

From-SVN: r33219
2000-04-18 00:23:33 +00:00
Zack Weinberg 43e76f8115 Regen after last change
From-SVN: r33218
2000-04-17 23:59:58 +00:00
Mark Mitchell 82234d29c8 * method.c (make_thunk): Set DECL_CONTEXT for a THUNK_DECL.
From-SVN: r33216
2000-04-17 23:12:07 +00:00
Jan Hubicka 0b5107cf3a i386.c (athlon_cost): Fix lea, divide and XFmode move costs.
* i386.c (athlon_cost): Fix lea, divide and XFmode move costs.
	(x86_integer_DFmode_moves, x86_partial_reg_dependency,
	 x86_memory_mismatch_stall): New global variables.
	(ix86_adjust_cost): Handle MEMORY_BOTH on places MEMORY_STORE was only
	alloved; fix load penalties for Athlon.
	* i386.h (x86_integer_DFmode_moves, x86_partial_reg_dependency,
	x86_memory_mismatch_stall): Declare.
	(TARGET_INTEGER_DFMODE_MOVES, TARGET_PARTIAL_REG_DEPENDENCY,
	 TARGET_MEMORY_MISMATCH_STALL): New.
	* i386.md (athlon scheduling parameters): Fix latencies according to
	Athlon Optimization Manual.
	(sahf, xchg, fldcw, leave instruction patterns): Set athlon_decode to
	vector.
	(fsqrt instruction patterns): Set athlon_decode to direct.
	(movhi_1): Promote for TARGET_PARTIAL_REG_DEPENDENCY and for
	PARTIAL_REGISTER_STALL with !TARGET_HIMODE_MATH machines.
	(movqi_1): Handle promoting correctly for TARGET_PARTIAL_REG_DEPENDENCY
	and TARGET_PARTIAL_REGISTER_STALL machines.
	(pushdf_nointeger): New pattern.
	(pushdf_integer): Rename from pushdf.
	(movdf_nointger): Enable for !TARGET_INTEGER_DFMODE_MOVES machines.
	(movdf_intger): Disable for !TARGET_INTEGER_DFMODE_MOVES machines.

From-SVN: r33215
2000-04-17 21:39:30 +00:00
Richard Henderson 10f1359422 loop.c (canonicalize_condition): Add WANT_REG argument.
* loop.c (canonicalize_condition): Add WANT_REG argument.
        Stop the search if we match it.
        * expr.h (canonicalize_condition): Update decl.
        * predict.c (expected_value_to_br_prob): Use it.  Track last
        expected value note.
        (find_expected_value): Remove.

        * reorg.c (mostly_true_jump): Always use BR_PROB if present.

From-SVN: r33214
2000-04-17 12:21:09 -07:00
Bryce McKinlay a73848406c gjavah.c (print_name_for_stub_or_jni): Don't prefix method names with a newline, for CNI.
2000-04-17  Bryce McKinlay  <bryce@albatross.co.nz>

	* gjavah.c (print_name_for_stub_or_jni): Don't prefix method names
	with a newline, for CNI.
	(print_stub_or_jni): Print a space or newline before method name for
	CNI as well as JNI.
	(print_cxx_classname): Don't write leading "::" in CNI stub method.
	(process_file): Include gcj/cni.h if generating CNI stubs.

From-SVN: r33213
2000-04-17 17:27:45 +00:00
Zack Weinberg 56f02b88c1 aclocal.m4 (AM_GNU_GETTEXT): Don't AC_REQUIRE([AC_FUNC_MMAP]).
* aclocal.m4 (AM_GNU_GETTEXT): Don't AC_REQUIRE([AC_FUNC_MMAP]).
	(AC_FUNC_MMAP_FILE): New macro, tests read-only private map of
	a plain file.
	* configure.in: Call AC_FUNC_MMAP_FILE.
	* configure: Regenerate.
	* config.in: Regenerate.

	* intl/loadmsgcat.c: Test HAVE_MMAP_FILE not HAVE_MMAP.
	* fixinc/fixincl.c: Likewise.

From-SVN: r33212
2000-04-17 17:25:57 +00:00
Richard Henderson 994a57cd28 builtins.c (expand_builtin_expect): New.
* builtins.c (expand_builtin_expect): New.
        (expand_builtin): Call it.
        * builtins.def (BUILT_IN_EXPECT): New.
        * c-common.c (c_common_nodes_and_builtins): Declare __builtin_expect.
        * extend.texi: Document it.

        * predict.c (expected_value_to_br_prob): New.
        (find_expected_value): New.
        * basic-block.h (expected_value_to_br_prob): Declare.
        * toplev.c (rest_of_compilation): Invoke it.

        * rtl.h (NOTE_EXPECTED_VALUE): New.
        (NOTE_INSN_EXPECTED_VALUE): New.
        * rtl.c (note_insn_name): Update.
        * print-rtl.c (print_rtx): Reorg NOTE_LINE_NUMBER special
        cases; handle NOTE_INSN_EXPECTED_VALUE.

From-SVN: r33211
2000-04-17 09:49:00 -07:00
Jakub Jelinek 2be5e524b0 sparc.c (eligible_for_sibcall_delay): Cannot use leaf sibcall delay slot if flag_pic.
* config/sparc/sparc.c (eligible_for_sibcall_delay): Cannot use
	leaf sibcall delay slot if flag_pic.
	(output_sibcall): Always emit call for leaf sibcall if flag_pic.

From-SVN: r33210
2000-04-17 16:49:41 +02:00
Kaveh R. Ghazi 130bfbdd7a symcat.h: Honor autoconf macro HAVE_STRINGIZE.
* symcat.h: Honor autoconf macro HAVE_STRINGIZE.  Add
        comments/caveats with regard to traditional C behavior.

From-SVN: r33209
2000-04-17 14:48:13 +00:00
Kaveh R. Ghazi 01b2995f8b Makefile.in (stmp-fixproto): Acknowledge errors in fixproto.
* Makefile.in (stmp-fixproto): Acknowledge errors in fixproto.

        * fixproto: If fix-header fails, exit with an error.

From-SVN: r33208
2000-04-17 14:40:03 +00:00
Jan Hubicka 2ce6dc2f6a cse.c (struct check_depdendence_data): New.
* cse.c (struct check_depdendence_data): New.
	(check_dependence): New function.
	(invalidate): Use check_depdenence.

From-SVN: r33207
2000-04-17 13:00:44 +00:00
Jeff Law 44ee200728 Daily bump.
From-SVN: r33206
2000-04-17 01:45:07 -06:00
Anthony Green 95fcd5331d Test case for gcj/209
From-SVN: r33205
2000-04-17 06:40:38 +00:00
Anthony Green 7ffcae80d0 Test case for gcj/208
From-SVN: r33204
2000-04-17 05:51:14 +00:00
Anthony Green 7828f83014 More new tests.
From-SVN: r33203
2000-04-17 05:26:42 +00:00
Anthony Green 2b0807d3bc New tests.
From-SVN: r33202
2000-04-17 05:26:20 +00:00
Mark Mitchell 256309e4e9 class.c (build_vtable_entry): Don't build thunks for type-info functions.
* class.c (build_vtable_entry): Don't build thunks for type-info
	functions.

From-SVN: r33201
2000-04-17 04:03:48 +00:00
Mark Mitchell 08cb3d38de dwarf2out.c (DWARF_CIE_DATA_ALIGNMENT): Adjust, now that UNITS_PER_WORD is unsigned.
* dwarf2out.c (DWARF_CIE_DATA_ALIGNMENT): Adjust, now that
	UNITS_PER_WORD is unsigned.

From-SVN: r33200
2000-04-17 04:01:01 +00:00
Mark Mitchell 76c9d22625 * tree.h (struct tree_common): Remove misleading comment.
From-SVN: r33199
2000-04-17 03:20:48 +00:00
Tom Tromey 3e0768f05e re GNATS gcj/205 (gcjh confused about similar method and attribute names)
* gjavah.c (decompile_method): Use print_field_name.
	Fixes PR gcj/205.

From-SVN: r33198
2000-04-17 02:56:52 +00:00
Anthony Green bd66587eed configure: Rebuiltd.
2000-04-16  Anthony Green  <green@redhat.com>

	* configure: Rebuiltd.
	* configure.in: Change i*86-pc-linux* to i*86-*-linux*.

From-SVN: r33197
2000-04-17 02:22:22 +00:00
Jakub Jelinek 3791773c93 Port to sparc 32 and 64 Linux.
From-SVN: r33196
2000-04-17 02:15:32 +00:00
Jason Merrill 11033ba522 decl.c (decls_match): Allow a redeclaration of a builtin to specify args while the builtin did not.
* decl.c (decls_match): Allow a redeclaration of a builtin to
        specify args while the builtin did not.

From-SVN: r33195
2000-04-16 22:00:23 -04:00