Commit Graph

27912 Commits

Author SHA1 Message Date
Zack Weinberg d44725ebf5 new test - traditional token paste
From-SVN: r33732
2000-05-06 19:07:34 +00:00
Richard Earnshaw 0616531fb5 Use new tail-calling mechanism on ARM.
* arm.md (sibcall, sibcall_value): New expands.
(sibcall_insn, sibcall_value_insn, sibcall_epilogue): New insns.
(tailcalling peepholes): Delete.
(push_multi): Simplify.
* arm.c (lr_save_eliminated): Delete definition.
(pattern_really_clobbers_lr, function_really_clobbers_lr): Delete.
(output_return_instruction): Remove checks on lr_save_eliminated.
(output_arm_prologue): Remove old tail-calling code.
(arm_output_epilogue): New parameter, really_return.  All callers
changed.  Handle tail-calling epilogues.
* arm.h (lr_save_eliminated): Delete declaration.
(frame_pointer_needed): Delete declaration.
* arm-protos.h (arm_output_epilogue): Adjust prototype.

* arm.md (is_thumb): Examine symbol thumb_code, not expression
TARGET_ARM.
* arm.c (thumb_code): Define it.
(arm_override_options): Set it.
* arm.h (thumb_code): Declare it.

From-SVN: r33731
2000-05-06 18:13:35 +00:00
Zack Weinberg 76fa6b3b73 com.c (ffecom_overlap_): Set source_offset to bitsize_zero_node.
* com.c (ffecom_overlap_): Set source_offset to
	bitsize_zero_node.
	(ffecom_tree_canonize_ptr_): Use size_binop.  Convert to
	bitsizetype before multiplying by TYPE_SIZE.
	(ffecom_tree_canonize_ref_) [case ARRAY_REF]: Break up offset
	calculation.  Convert to bitsizetype before multiplying by
	TYPE_SIZE.

From-SVN: r33730
2000-05-06 17:29:59 +00:00
Richard Earnshaw ac670723c8 * arm-protos.h (arm_dllexport_name_p, arm_dllimport_name_p): Constify.
From-SVN: r33729
2000-05-06 16:55:17 +00:00
Tom Tromey fad163ed2f Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (libgcj.zip): Don't pass -L to javac.

From-SVN: r33728
2000-05-06 16:25:13 +00:00
Nathan Sidwell 846cf1223e * g++.old-deja/g++.abi/ptrflags.C: Correct and extend.
From-SVN: r33727
2000-05-06 15:53:16 +00:00
Nathan Sidwell 1b846cccc6 rtti.c (ptmd_initializer): Set non-public, if class is incomplete.
* rtti.c (ptmd_initializer): Set non-public, if class is
	incomplete.

	* inc/cxxabi.h (__dynamic_cast): Explicitly say extern "C++".
	(__cxa_vec_new, __cxa_vec_ctor, __cxa_vec_dtor,
	__cxa_vec_delete): Likewise.
	* tinfo.cc (__dynamic_cast): Likewise.
	* vec.cc (__cxa_vec_new, __cxa_vec_ctor, __cxa_vec_dtor,
	__cxa_vec_delete): Likewise.

From-SVN: r33726
2000-05-06 15:52:11 +00:00
Richard Kenner a47fed553c Fix error in previous change
From-SVN: r33725
2000-05-06 07:30:43 -04:00
Richard Earnshaw ad027eaed9 * arm.h (SPECIAL_MODE_PREDICATES): Define.
From-SVN: r33724
2000-05-06 11:14:18 +00:00
Richard Earnshaw 41e3f998a3 arm.c (arm_gen_load_multiple, [...]): Don't add bogus clobber to insns.
* arm.c (arm_gen_load_multiple, arm_gen_store_mulitple): Don't add
bogus clobber to insns.
(load_multiple_operation, store_mulitple_operation): Don't check
for it.
* arm.md (ldmsi_postinc, stmsi_postinc): Adjust accordingly.

* arm.md (and_scc, ior_scc): Add missing mode.

* arm.md (call_value_symbol): Remove predicate from op2.

From-SVN: r33723
2000-05-06 11:10:44 +00:00
Richard Kenner 296b4ed9cb expr.c (get_subtarget): New function.
* expr.c (get_subtarget): New function.
	(force_operand, expand_expr, do_store_flag): Use it.

	* toplev.c (compile_file): Don't take strlen of NAME if null.

From-SVN: r33722
2000-05-06 06:17:11 -04:00
Jeff Law 593ca8d432 Daily bump.
From-SVN: r33721
2000-05-06 01:45:07 -06:00
David Edelsohn 53cd5d6c50 xcoffout.c (xcoff_current_include_file, [...]): Constify char *.
* xcoffout.c (xcoff_current_include_file,
        xcoff_current_function_file, xcoff_lastfile): Constify char *.
        (xcoffout_source_file, xcoffout_source_line): Make filename 'const
        char *'.
        (xcoffout_declare_function): Make name 'const char *'.
        (xcoffout_end_epilogue): Make fname 'const char *'
        * xcoffout.h (xcoff_current_include_file, xcoff_lastfile,
        xcoffout_declare_function, xcoffout_source_line): Match above.

        * aix43.h (SUBTARGET_OVERRIDE_OPTIONS): -mpowerpc64 without
        -maix64 is error.
        * rs6000.c (print_operand): Fix lossage typo.
        (output_cbranch): Remove "cr" decoration for now.
        * rs6000.h (ASM_OUTPUT_DEF_FROM_DECLS): Make alias 'const char *'.

From-SVN: r33720
2000-05-06 00:31:16 -04:00
Denis Chertykov 042575e947 avr.c (out_shift_with_cnt): Bugfix for shift by constant count.
* config/avr/avr.c (out_shift_with_cnt): Bugfix for shift by
	constant count.

From-SVN: r33719
2000-05-06 07:06:46 +04:00
Bruce Korb b1a0b75db5 Improve the matching for make target names
From-SVN: r33718
2000-05-05 20:34:12 +00:00
Mark Elbrecht 4ebe197a38 * gcc.c (set_input) [HAVE_DOS_STYLE_FILE_SYSTEM]: Skip drive name.
From-SVN: r33717
2000-05-05 13:03:45 -06:00
Catherine Moore d20a70b4f6 c-common.c (decl_attributes): For TYPE_DECLs attach the attribute to the decl.
* c-common.c (decl_attributes):  For TYPE_DECLs attach the
        attribute to the decl.
        * c-decl.c (pushdecl): Propagate the USED attribute to the
        type copy.

From-SVN: r33716
2000-05-05 14:16:49 -04:00
Richard Henderson 37ceff9dc3 rtlanal.c (reg_overlap_mentioned_p): Treat parallels in the same way emit_group_load does.
* rtlanal.c (reg_overlap_mentioned_p): Treat parallels in the
	same way emit_group_load does.

From-SVN: r33715
2000-05-05 09:48:24 -07:00
Jeff Law 1a8bb3dd20 toplev.c (output_file_directive): Use IS_DIR_SEPARATOR.
* toplev.c (output_file_directive): Use IS_DIR_SEPARATOR.
        (main): Likewise.

From-SVN: r33714
2000-05-05 10:37:01 -06:00
Rodney Brown d8bea1c60d * pa.h (FUNCTION_ARG_ADVANCE): Warning removal.
From-SVN: r33713
2000-05-05 10:34:06 -06:00
David Billinghurst 7d76ae5622 * g77.f-torture/execute/20000503-1.f: New test.
From-SVN: r33712
2000-05-05 10:31:25 -06:00
Marc Espie 6a0177c5b9 openbsd.h (LINK_SPEC): pass correct flags to ld to support -shared, on platforms with dynamic libraries.
* config/openbsd.h (LINK_SPEC): pass correct flags to ld
        to support -shared, on platforms with dynamic libraries.

From-SVN: r33711
2000-05-05 10:30:23 -06:00
Philippe De Muyter be3dad6f75 * system.h (S_ISBLK): Provide fallback definition.
From-SVN: r33710
2000-05-05 10:27:45 -06:00
Geoff Berry eda3fbbe7a extend.texi (Extended Asm): Document inability to give asm statements access to condition codes.
* extend.texi (Extended Asm): Document inability to give asm
        statements access to condition codes.

From-SVN: r33709
2000-05-05 10:26:12 -06:00
Marek Michalkiewicz 4edee0e6a1 varasm.c (asm_emit_uninitialised): Use 0, not NULL as arg 2 of UNIQUE_SECTION.
* varasm.c (asm_emit_uninitialised): Use 0, not NULL
        as arg 2 of UNIQUE_SECTION.

From-SVN: r33708
2000-05-05 10:16:57 -06:00
Jeffrey A Law cde9b87dfb predict.c: Remove May 4 change.
* predict.c: Remove May 4 change.
        * bb-reorder.c (make_reorder_chain): Do not perform block movement
        if we have predicted the branch at 50-50 probability.

From-SVN: r33707
2000-05-05 10:13:46 -06:00
Tom Tromey 327f248083 re GNATS libgcj/220 (build fails with "only absolute run-paths are allowed" error during linking)
Fix for PR libgcj/220:
	* Makefile.in: Rebuilt.
	* Makefile.am (gij_LDFLAGS): Don't use libstdc++.
	(jv_convert_LDFLAGS): Likewise.
	(libgcj_la_LDFLAGS): Likewise.
	(GCJLINK): New macro.
	(jv_convert_LINK): Use it.
	(gij_LINK): Likewise.
	(libgcj_la_LINK): New macro.
	(libgcjawt_la_LINK): Likewise.

From-SVN: r33706
2000-05-05 16:11:36 +00:00
Richard Henderson ad3958e7db flow.c (init_propagate_block_info): Fix merge error in HAVE_conditional_execution code.
* flow.c (init_propagate_block_info): Fix merge error
        in HAVE_conditional_execution code.

From-SVN: r33705
2000-05-05 03:53:47 -07:00
Andreas Jaeger 07d787fdd2 noreturn-2.c: New test.
2000-05-04  Andreas Jaeger  <aj@suse.de>

	* gcc.dg/noreturn-2.c: New test.

From-SVN: r33704
2000-05-05 10:44:09 +02:00
Jeff Law a467853843 Daily bump.
From-SVN: r33703
2000-05-05 01:45:15 -06:00
Tom Tromey a52dee2f36 field.h (JvFieldIsRef): Return false for gnu.gcj.RawData field.
* gcj/field.h (JvFieldIsRef): Return false for gnu.gcj.RawData
	field.
	* boehm.cc (_Jv_MarkObj): Removed dead code.  Use `STATIC', not
	`0x0008'.
	Include Modifier.h.

From-SVN: r33702
2000-05-05 04:46:26 +00:00
Tom Tromey 652f25043a boehm.c (mark_reference_fields): Don't mark RawData fields.
* boehm.c (mark_reference_fields): Don't mark RawData fields.
	Keep track of when we've seen a reference field after a
	non-reference field.
	(get_boehm_type_descriptor): Handle case where we see
	non-reference fields but no trailing reference field.
	* decl.c (rawdata_ptr_type_node): Define.
	(init_decl_processing): Initialize rawdata_ptr_type_node.
	* java-tree.h (rawdata_ptr_type_node): Declare.

From-SVN: r33701
2000-05-05 04:23:23 +00:00
Denis Chertykov 0db7ad3a43 avr.c (out_shift_with_cnt): Genetare a more optimal shift cycle for unknown shift count.
* config/avr/avr.c (out_shift_with_cnt): Genetare a more optimal
	shift cycle for unknown shift count. Also generates dec + brpl.
	(ashlqi3_out): Don't generate dec + brpl which now generates by
	`out_shift_with_cnt'.
	(ashlhi3_out): Likewise.
	(ashlsi3_out): Likewise.
	(ashrqi3_out): Likewise.
	(ashrhi3_out): Likewise.
	(ashrsi3_out): Likewise.
	(lshrqi3_out): Likewise.
	(lshrhi3_out): Likewise.
	(lshrsi3_out): Likewise.

From-SVN: r33700
2000-05-05 08:00:51 +04:00
Mark Mitchell 6462c441e1 cp-tree.h (DELTA_FROM_VTABLE_ENTRY): Remove.
* cp-tree.h (DELTA_FROM_VTABLE_ENTRY): Remove.
	(SET_FNADDR_FROM_VTABLE_ENTRY): Likewise.
	(lang_decl_flags): Add vcall_offset.
	(THUNK_VCALL_OFFSET): Use it.
	* decl.c (lang_mark_tree): Don't mark DECL_ACCESS for a thunk.
	* method.c (make_thunk): Create the lang_decl here, not in
	emit_thunk.
	(emit_thunk): Make generic thunks into ordinary functions once
	they have been fed to expand_body.
	* semantics.c (expand_body): Set current_function_is_thunk here.

From-SVN: r33699
2000-05-05 03:10:42 +00:00
Bryce McKinlay 9d4c21486c natClass.cc (isInstance): Use __builtin_expect.
2000-05-05  Bryce McKinlay  <bryce@albatross.co.nz>

	* java/lang/natClass.cc (isInstance): Use __builtin_expect.
	(_Jv_IsAssignableFrom): Ditto.
	(_Jv_IsInstanceOf): Ditto.
	(_Jv_CheckCast): Ditto.
	(_Jv_CheckArrayStore): Ditto.
	* java/lang/Class.h (_Jv_InitClass): Ditto.
	* java/lang/natObject.cc (_Jv_MonitorEnter): __builtin_expect `false',
	not `0'.
	(notify): Ditto.
	(notifyAll): Ditto.
	(wait): Ditto.
	(_Jv_MonitorExit): Ditto.
	* boehm.cc (_Jv_MarkObj): Ditto.
	(_Jv_MarkObj): Ditto.
	(_Jv_MarkArray): Ditto.
	* prims.cc (_Jv_AllocObject): Ditto.
	(_Jv_NewObjectArray): Ditto.
	(_Jv_NewPrimArray): Ditto.
	(_Jv_Malloc): Ditto.
	(_Jv_Realloc): Ditto.
	(_Jv_MallocUnchecked): Ditto.
	(_Jv_divI): Ditto.
	(_Jv_remI): Ditto.
	(_Jv_divJ): Ditto.
	(_Jv_remJ): Ditto.

From-SVN: r33698
2000-05-05 03:56:14 +01:00
Neil Booth 59b30ca6dd *** empty log message ***
From-SVN: r33697
2000-05-05 02:50:47 +00:00
Richard Henderson 5f97a7dcfd Move old ChangeLog out of the way.
From-SVN: r33696
2000-05-04 19:06:33 -07:00
Richard Henderson beaf61f5d3 * gcc.c-torture/execute/20000503-1.c: Fix typo.
From-SVN: r33695
2000-05-04 19:05:56 -07:00
Richard Henderson 83f1c55d95 Merge all post c-torture-1.45 entries to the main testsuite ChangeLog.
From-SVN: r33694
2000-05-04 18:56:18 -07:00
Mark Elbrecht ba40970f51 gcc.c (free_split_directories): Correct typo in explanation of make_relative_prefix.
* gcc.c (free_split_directories): Correct typo in explanation
        of make_relative_prefix.

From-SVN: r33693
2000-05-04 18:15:02 -06:00
Geoff Keating fce9182047 rs6000.h (PREDICATE_CODES): Add floating-point comparison codes to branch_comparison_operator.
* config/rs6000/rs6000.h (PREDICATE_CODES): Add floating-point
comparison codes to branch_comparison_operator.

From-SVN: r33692
2000-05-05 00:06:34 +00:00
Richard Henderson f63c134b33 20000504-1.c: New test.
* gcc.c-torture/compile/20000504-1.c: New test.  Derived from
        OpenSSL by Jason R Thorpe.

From-SVN: r33691
2000-05-04 16:27:15 -07:00
Richard Henderson 8eeb31597b * ifcvt.c (noce_process_if_block): Always reset X in the A == B case.
From-SVN: r33690
2000-05-04 16:23:45 -07:00
Richard Henderson 0927ce96c9 ifcvt.c (noce_process_if_block): Fail if A or B modified between condition and jump.
* ifcvt.c (noce_process_if_block): Fail if A or B modified
        between condition and jump.

From-SVN: r33689
2000-05-04 16:22:26 -07:00
Richard Henderson 00447f7d40 Makefile.in (FPBIT_FUNCS): Remove _df_to_usi.
* Makefile.in (FPBIT_FUNCS): Remove _df_to_usi.
        (DPBIT_FUNCS): Remove _sf_to_usi.
        (stmp-multilib): Pass LIB1ASMSRC to libgcc.mk.

From-SVN: r33688
2000-05-04 16:21:48 -07:00
Richard Henderson 7efe41a9d9 libgcc2.c (near eh_context_specific): Comment #endif string.
* libgcc2.c (near eh_context_specific): Comment #endif string.
        * longlong.h: Don't use strings with embedded newlines.

From-SVN: r33687
2000-05-04 16:21:33 -07:00
Geoff Keating 12a4e8c50d rs6000-protos.h: Add output_cbranch.
* config/rs6000/rs6000-protos.h: Add output_cbranch.
* config/rs6000/rs6000.c (ccr_bit_negated_p): Delete.
(print_operand): Delete %t and %T codes.
(output_cbranch): New function.  Support branch prediction.
* config/rs6000/rs6000.md: Use output_cbranch for
conditional branches and returns.

From-SVN: r33686
2000-05-04 22:15:23 +00:00
Jason Merrill 233844c0ea remove accidental -pipe checkin
From-SVN: r33685
2000-05-04 17:17:57 -04:00
Jason Merrill f9e158c377 simplify-rtx.c (simplify_ternary_operation): Cast to unsigned.
* simplify-rtx.c (simplify_ternary_operation): Cast to unsigned.
        * stor-layout.c (place_field): Likewise.
        * integrate.h (struct inline_remap): Make regno_pointer_align unsigned.
        * expr.c (store_expr): Make align unsigned.
        * explow.c (plus_constant_wide): Make low words unsigned.
        * expmed.c (choose_multiplier): Likewise.
        * fold-const.c (fold):  Likewise.
        * tree.h (build_int_2): Likewise.
        * tree.c (build_int_2_wide, tree_int_cst_msb): Likewise.
        * emit-rtl.c (gen_reg_rtx): Add cast to unsigned char*.
        (init_emit): Change cast to unsigned char*.
        * varasm.c (compare_constant_1): Add cast to char*.
        * gcse.c (delete_null_pointer_checks): Change cast to unsigned int*.
        * reload1.c (reload): Likewise.

        * rtl.h (MEM_SET_IN_STRUCT_P): Use do { } while (0).

From-SVN: r33684
2000-05-04 17:15:05 -04:00
Jeffrey A Law 926fd2e161 predict.c (estimate_probability): If no prediction was found...
* predict.c (estimate_probability): If no prediction was found, then
        predict the successor that is the next physical block (if such a
        successor exists).

From-SVN: r33683
2000-05-04 14:40:17 -06:00