Commit Graph

27610 Commits

Author SHA1 Message Date
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
Richard Henderson
acfc08f774 Fix typo in recent entry.
From-SVN: r33194
2000-04-16 18:51:52 -07:00
Richard Henderson
3af841832d Fix date on last entry.
From-SVN: r33193
2000-04-16 17:59:29 -07:00
Dave Pitts
5f6d382330 Makefile.in ($(srcdir)/c-parse.y: c-parse.in): Enclose the whole message in quotes.
* Makefile.in ($(srcdir)/c-parse.y: c-parse.in): Enclose the whole
        message in quotes. Otherwise, IBM's make program treats the '#' as the
        start of a comment and ignores the remainder of the line.

        * c-lex.c (yylex): Change for EBCDIC, lower case characters preceed
        upper case.
        * cccp.c (initialize_char_syntax): Allow for holes in EBCDIC.
        * cexp.y (initialize_random_junk): Likewise.
        * cppfiles.c (find_include_file): Cast alloca return value.
        * cppinit.c (initialize_standard_includes): Likewise.
        * cpplib.c (cpp_define, cpp_undef): Likewise.
        * defaults.h (ASM_OUTPUT_ASCII): Use ISPRINT.
        * final.c (output_asm_insn): Allow for holes in EBCDIC.
        * fold-const.c (CHARMASK): New.
        (real_hex_to_f): Use it.
        * real.c (CHARMASK): New.
        (etoasc, asctoeg): Use it.
        (asctoeg): EBCDIC lower case characters preceed upper case.

From-SVN: r33192
2000-04-16 17:54:25 -07:00
Richard Henderson
e13f6154af i370.c (mvs_add_label): Change spacing for coding conventions.
* i370.c (mvs_add_label): Change spacing for coding conventions.
        * i370.h (ASM_OUTPUT_CASE_LABEL): Change to the data CSECT for the
        outputing case vectors.
        (ASM_OUTPUT_CASE_END): New, put assembler back into code CSECT.
        (ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT): Remove page check,
        since vector in in the data CSECT.
        (ASM_OUTPUT_REG_POP, ASM_OUTPUT_REG_PUSH): Restore to correct operation.        * i370.md (Many patterns): Put the length in the XL directives.
        (movdi): Put back STM and MVC in definition.
        (floatsidf2): Correct TARGET_ELF_ABI pattern and add back the LE370
        pattern using the TCA.
        * oe.h (CPP_SPEC): Added to allow trigraphs.
        * xm-oe.h (HOST_BITS_PER_LONGLONG): Change to 32. IBM's compiler does
        not support the "long long" type.

From-SVN: r33191
2000-04-16 17:52:30 -07:00
Dave Pitts
954869eb3b config.sub (case $basic_machine): Change default for "ibm-*" to "openedition".
* config.sub (case $basic_machine): Change default for "ibm-*"
        to "openedition".

From-SVN: r33190
2000-04-16 17:51:57 -07:00
Dave Pitts
498e1ab148 * cplus-dem.c (cplus_demangle_opname): Changed to use islower.
From-SVN: r33189
2000-04-16 17:51:19 -07:00
Mark Mitchell
c94c981720 mips-protos.h (mips_legitimate_address_p): New function.
* config/mips/mips-protos.h (mips_legitimate_address_p): New
	function.
	(mips_reg_mode_ok_for_base_p): Likewise.
	* config/mips/mips.h (REG_OK_STRICT_P): Don't define.
	(REG_OK_FOR_INDEX_P): Define unconditionally.
	(REG_MODE_OK_FOR_BASE_P): Use mips_reg_mode_ok_for_base_p.
	(GO_IF_LEGITIMATE_ADDRESS): Use mips_legitimate_address_p.
	* config/mips/mips.c (mips16_simple_memory_operand): Adjust now
	that GET_MODE_SIZE is unsigned.
	(mips_reg_mode_ok_for_base_p): Define.
	(mips_legitimate_address_p): Likewise.  Adjust now
	that GET_MODE_SIZE is unsigned.
	(block_move_loop): Make the number of bytes unsigned.
	(expand_block_move): Likewise.
	(function_arg): Make the loop counter unsigned to match the
	boundary condition.

From-SVN: r33188
2000-04-16 21:47:17 +00:00
Richard Henderson
d636c18c54 rtl.h (enum insn_note): New enumeration.
* rtl.h (enum insn_note): New enumeration.  Subsume
        NOTE_INSN_DELETED and friends.
        (GET_NOTE_INSN_NAME): Adjust index by NOTE_INSN_BIAS.
        * rtl.c (note_insn_name): Tweek string order.

From-SVN: r33187
2000-04-16 13:23:02 -07:00
Mark Mitchell
aa95639ea8 Fix typo
From-SVN: r33186
2000-04-16 20:06:46 +00:00
Mark Mitchell
4e7512c9d1 cp-tree.def (THUNK_DECL): Add to documentation.
* cp-tree.def (THUNK_DECL): Add to documentation.
	* cp-tree.h (flag_huge_objects): Declare.
	* class.c (modify_vtable_entry): Tidy.
	(update_vtable_entry_for_fn): Split out from dfs_modify_vtables.
	Calculate delta appropriately for the new ABI.
	(dfs_modify_vtables): Use it.
	(modify_all_vtables): Fix thinko in code to add overriding copies
	of functions to primary vtables.
	(build_clone): Fix typo in comment.
	(clone_function_decl): Correct order of destructors in vtable.
	(build_vbase_offset_vtbl_entries): Adjust comment.
	(dfs_vcall_offset_queue_p): Remove.
	(dfs_build_vcall_offset_vtbl_entries): Update BV_VCALL_INDEX.
	(build_vcall_offset_vtbl_entries): Juse use dfs_skip_vbases.
	(build_vtable_entry): Correct check for pure virtual functions.
	Don't declare flag_huge_objects.
	* decl.c (flag_huge_objects): Remove declaration.
	* method.c (make_thunk): Tweak mangling for vcall offset thunks.
	Use int_size_in_bytes.
	(emit_thunk): Handle vcall offset thunks.

From-SVN: r33185
2000-04-16 19:45:32 +00:00
Jeff Law
3268dc00a8 Daily bump.
From-SVN: r33184
2000-04-16 01:45:06 -06:00
Zack Weinberg
1b955cbad5 cpplex.c (_cpp_read_and_prescan): Enlarge len by setting it to offset * 2.
* cpplex.c (_cpp_read_and_prescan): Enlarge len by setting it
	to offset * 2.

From-SVN: r33183
2000-04-16 07:35:39 +00:00
Mark Mitchell
5ead1006da New test
From-SVN: r33182
2000-04-16 04:25:18 +00:00
Bryce McKinlay
8bfecb841a re GNATS java.io/202 (File creation doesn't observe umask)
2000-04-16  Bryce McKinlay  <bryce@albatross.co.nz>

	* java/io/natFileDescriptorPosix.cc (open): Use mode 0666. Fix for
	PR libgcj/202.
	(available): Initialize `Where' to prevent bogus compiler warning.

From-SVN: r33181
2000-04-16 04:09:27 +01:00
Zack Weinberg
f6fab919ba cpplex.c (output_line_command): Remove debugging prints.
* cpplex.c (output_line_command): Remove debugging prints.
	(cpp_output_tokens): Don't write out a zero-length buffer or
	try to see if it has a newline in it.
	(_cpp_expand_to_buffer): Copy the source buffer before pushing.
	(_cpp_read_and_prescan): Move shift-down of pushback bytes to
	the end of the loop.  Use memmove.  Don't read past the end of
	the buffer.  Remove trailing newlines from error messages.

From-SVN: r33180
2000-04-16 02:18:52 +00:00
Neil Booth
d481b69b5e cpphash.h (SYNTAX_INCLUDE, [...]): new.
* cpphash.h (SYNTAX_INCLUDE, SYNTAX_ASSERT, directive_handler): new.
        * cpplib.c: Add new syntax flags to directive table, and
        supporting macros.

From-SVN: r33179
2000-04-16 02:10:34 +00:00