Commit Graph

27850 Commits

Author SHA1 Message Date
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
Ulrich Drepper 422b914d92 Update.
From-SVN: r33175
2000-04-16 00:11:35 +00:00
Ulrich Drepper b8c752c8d3 (ix86_expand_epilogue): Yes, the x86 can pop 64k at once using ret $N.
From-SVN: r33174
2000-04-16 00:08:56 +00:00
David Edelsohn 409f8483d4 toplev.c (display_help): Prefix "f" to "sched-verbose=".
* toplev.c (display_help): Prefix "f" to "sched-verbose=".
        * haifa-sched.c: Update -fsched-verbose comments to use "=".

From-SVN: r33172
2000-04-15 18:27:59 -04:00
David Edelsohn 14d9580da6 target.h (FFETARGET_32bit_longs): Define for 64-bit PowerPC as well.
* f/target.h (FFETARGET_32bit_longs): Define for 64-bit PowerPC
        as well.

From-SVN: r33171
2000-04-15 18:17:00 -04:00
David Edelsohn 39b48e0238 * Object.m (strlen): 64-bit PowerPC is a 64bit platform as well.
From-SVN: r33170
2000-04-15 18:13:49 -04:00
Richard Kenner b9bfacf01c Makefile.in (ggc-page.o): Now includes toplev.h.
* Makefile.in (ggc-page.o): Now includes toplev.h.
	* ggc-page.c (toplev.h): Now included.
	(gc_time): Remove declaration.
	(ggc_collect): TIME now long.
	* toplev.c (parse_time, varasm_time, gc_time): Still global; all
	others static.
	* toplev.h (gc_time, parse_time, gc_time): New declarations.
	* cp/decl2.c (parse_time, varconst_time): Delete declarations.
	(finish_file): Delete LINENO declaration.
	START_TIME and THIS_TIME now long.

From-SVN: r33169
2000-04-15 15:54:26 -04:00
Richard Kenner 77a02dba35 toplev.c: Make *_time variable long to reduce chance of overflow.
* toplev.c: Make *_time variable long to reduce chance of overflow.
	(TIMEVAR): Likewise for `otime'.
	(print_time): Arg is now long; compute percentage in FP and round.
	* toplev.h (print_time): Arg is long.

	* tree.c: Minor whitespace changes.

From-SVN: r33168
2000-04-15 12:59:10 -04:00
Richard Kenner b1a88540d4 configure.in (alpha*-*-*): Aad config/alpha/t-alpha.
* configure.in (alpha*-*-*): Aad config/alpha/t-alpha.
	* configure: Rebuilt.
	* libgcc2.c (__fixunstfDI): Renamed from __fixunstfdi.
	(__fixunsxfDI): Renamed from __fixunsxfdi.
	(__fixunsdfDI): Renamed from __fixunsdfdi.
	(__fixunssfDI): Renamed from __fixunssfdi.
	(__floatdisf): Use proper type in REP_BIT macro.
	(__fixunsxfSI): Renamed from __fixunsxfsi.
	(__fixunsdfSI): Renamed from __fixunsdfsi.
	(__fixunssfSI): Renamed from __fixunssfsi.
	* libgcc2.h: Add cases for MIN_UNITS_PER_WORD > 4.
	Change location of macros and upper-case some names as above.
	* longlong.h ([alpha]): Use PARAMS, not __P in decl of __udiv__qrnnd.
	* config/alpha/t-alpha, config/alpha/qrnnd.asm: New files.

From-SVN: r33167
2000-04-15 12:53:46 -04:00
Richard Kenner 6da9c622a6 configure.in (alpha*-*-*): Aad config/alpha/t-alpha.
* configure.in (alpha*-*-*): Aad config/alpha/t-alpha.
	* configure: Rebuilt.
	* libgcc2.c (__fixunstfDI): Renamed from __fixunstfdi.
	(__fixunsxfDI): Renamed from __fixunsxfdi.
	(__fixunsdfDI): Renamed from __fixunsdfdi.
	(__fixunssfDI): Renamed from __fixunssfdi.
	(__floatdisf): Use proper type in REP_BIT macro.
	(__fixunsxfSI): Renamed from __fixunsxfsi.
	(__fixunsdfSI): Renamed from __fixunsdfsi.
	(__fixunssfSI): Renamed from __fixunssfsi.
	* libgcc2.h: Add cases for MIN_UNITS_PER_WORD > 4.
	Change location of macros and upper-case some names as above.
	* longlong.h ([alpha]): Use PARAMS, not __P in decl of __udiv__qrnnd.
	* config/alpha/t-alpha, config/alpha/qrnnd.asm: New files.

From-SVN: r33166
2000-04-15 12:34:38 -04:00
Richard Kenner 4cf7705a1e varasm.c (assemble_variable): Add cast to remove warning.
* varasm.c (assemble_variable): Add cast to remove warning.
	(immed_real_const_1): Only use CONST[01]_RTX if not in nested function.

From-SVN: r33165
2000-04-15 11:44:19 -04:00