Commit Graph

24418 Commits

Author SHA1 Message Date
Bernd Schmidt 57850c857c reload1.c (reload_reg_free_for_value_p): RELOAD_OTHER reloads with an earlyclobbered output conflict with RELOAD_INPUT...
* reload1.c (reload_reg_free_for_value_p):  RELOAD_OTHER reloads with
        an earlyclobbered output conflict with RELOAD_INPUT reloads.

From-SVN: r29935
1999-10-13 00:47:15 -06:00
Jason Merrill c7847bc8f5 I get blanket write
From-SVN: r29934
1999-10-13 01:54:18 -04:00
Alexandre Petit-Bianco b5edd13335 (RELOCATION_VALUE_1): Fixed integer value from 0 to 1.
Tue Oct 12 22:28:10 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>

        * (RELOCATION_VALUE_1): Fixed integer value from 0 to 1.

From-SVN: r29933
1999-10-12 22:37:30 -07:00
Alexandre Petit-Bianco cacc154ecc jcf-write.c: (RELOCATION_VALUE_0): New macro.
Tue Sep 14 16:24:19 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>

        * jcf-write.c: (RELOCATION_VALUE_0): New macro.
        (RELOCATION_VALUE_1): Likewise.
        (emit_iinc, emit_reloc, push_constant1, push_constant2,
        push_in_const, push_long_const): Prototyped.
        (push_constant1): Argument `index' is of type HOST_WIDE_INT.
        (push_constant2): Likewise.
        (push_int_const): Cast find_constant1's integer arguments to `jword'.
        (find_constant_wide): Cast find_constant2's integer arguments to
        `jword'.
        (find_constant_index): Cast find_constant2's and find_constant2's
        integer arguments to `jword'.
        (emit_pop): Argument `value' is of type HOST_WIDE_INT.
        (emit_switch_reloc): Use RELOCATION_VALUE_0.
        (emit_if): Use RELOCATION_VALUE_1.
        (emit_goto): Likewise.
        (emit_jsr): Likewise.
        (generate_bytecode_insns): Use RELOCATION_VALUE_0. Cast second
        argument to push_long_const to HOST_WIDE_INT.

(This is a forgotten patch.)

From-SVN: r29932
1999-10-12 19:52:08 -07:00
Tom Tromey 006d4a9b37 configure: Rebuilt.
* configure: Rebuilt.
	* configure.in: Fixed test for --disable-java-net.

From-SVN: r29931
1999-10-13 00:00:35 +00:00
J"orn Rennecke eafcc3d34a * sh.h (BOOL_TYPE_SIZE): Don't use INT_TYPE_SIZE / CHAR_TYPE_SIZE.
From-SVN: r29930
1999-10-12 23:31:26 +01:00
J"orn Rennecke 4bdf538422 * sh.h (REGISTER_MOVE_COST): Change PR_REG to PR_REGS.
From-SVN: r29929
1999-10-12 23:23:37 +01:00
David Edelsohn 72c06938c8 * collect2.c (main): Do prelimnary link on AIX if rflag.
From-SVN: r29927
1999-10-12 17:13:13 -04:00
Greg McGary e780ca1d84 Add myself
From-SVN: r29926
1999-10-12 19:20:45 +00:00
Jonathan Larmour ac1389b705 eabi-ctors.c (__do_global_ctors): Run through __CTOR_LIST__ in opposite order...
* config/rs6000/eabi-ctors.c (__do_global_ctors): Run through
        __CTOR_LIST__ in opposite order, which is the correct order for sorted
        constructors.
        (__do_global_dtors): similarly for __DTOR_LIST__.

From-SVN: r29925
1999-10-12 12:47:08 -04:00
Bruce Korb 9ffe22f9f2 merging from no_bogosity
From-SVN: r29924
1999-10-12 16:02:39 +00:00
Bruce Korb bf66d77aa5 Protect the definitions of the t_bool enum
[[Split portion of a mixed commit.]]

From-SVN: r29923.2
1999-10-12 15:57:47 +00:00
J"orn Rennecke 8988641b74 sh.h (REGISTER_MOVE_COST): Handle moves from T_REGS to FPUL_REGS.
* config/sh/sh.h (REGISTER_MOVE_COST): Handle moves from T_REGS to
	FPUL_REGS.

Co-Authored-By: Diego Novillo <dnovillo@cygnus.com>

From-SVN: r29921
1999-10-12 11:28:17 -04:00
Craig Burley 8538ac5ea7 move 19990905-1.f into noncompile/ from compile/
From-SVN: r29920
1999-10-12 11:27:12 -04:00
Bruce Korb f878ebdbe0 Merge from no_bogosity
From-SVN: r29919
1999-10-12 14:44:55 +00:00
Bruce Korb 5abc1f741e Merge from no_bogosity
From-SVN: r29918
1999-10-12 14:44:18 +00:00
Dave Love 9e15ef0520 aclocal.m4: Re-write, defining LIBU77_GETTIMEOFDAY, not LIBU77_HAVE_STRUCT_TIMEZONE.
* libU77/aclocal.m4: Re-write, defining LIBU77_GETTIMEOFDAY, not
        LIBU77_HAVE_STRUCT_TIMEZONE.

        * libU77/configure.in: Use LIBU77_GETTIMEOFDAY, not
        LIBU77_HAVE_STRUCT_TIMEZONE.  Don't check for gettimeofday
        separately.

        * libU77/datetime_.c (G77_date_and_time_0): Use
        GETTIMEOFDAY_ONE_ARGUMENT.

From-SVN: r29917
1999-10-12 02:39:35 -06:00
Jeff Law 6c7318be0f Daily bump.
From-SVN: r29916
1999-10-12 01:45:06 -06:00
Jim Wilson c3fc86c9c1 Make fatal_insn calls in md file work.
* genoutput.c: Include toplev.h.

From-SVN: r29908
1999-10-11 20:28:42 -07:00
Jim Wilson 4239024fe3 ChangeLog entry for last sparc*-*-elf constructor change.
From-SVN: r29907
1999-10-11 19:04:13 -07:00
Jim Wilson 6eccdc8137 Fix sparc*-*-elf constructor problems; from Jason Merrill via Jonathan Larmour.
* config/sparc/liteelf.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP):
	Undef.
	* configure.in (sparclite-*-elf, sparc86x-*-elf): Don't use libgloss.h.
	* configure: Regenerate.

From-SVN: r29906
1999-10-11 19:03:39 -07:00
Jason Merrill 8418192195 * class.c (fixed_type_or_null): Always set *nonnull.
From-SVN: r29905
1999-10-11 21:15:02 -04:00
Richard Henderson 5f537f6c86 * gcse.c (delete_null_pointer_checks): Returns void.
From-SVN: r29904
1999-10-11 16:22:41 -07:00
Jeff Law cb469a0a12 Daily bump.
From-SVN: r29903
1999-10-11 13:35:32 -06:00
Bernd Schmidt e63db8f67d Bring copy_insn_1 and copy_rtx in sync and simplify them
From-SVN: r29902
1999-10-11 18:42:36 +00:00
Mark Mitchell 7c56a6cef7 cplus-dem.c (do_type): Handle pointer to member types whose enclosing classes have namespace scope.
* cplus-dem.c (do_type): Handle pointer to member types whose
	enclosing classes have namespace scope.

From-SVN: r29901
1999-10-11 08:32:10 +00:00
Martin v. Löwis ba33cb50d6 * newcvsroot: New file.
From-SVN: r29900
1999-10-11 07:07:39 +00:00
Martin v. Löwis f4ae3f9bf1 New script to replace CVS/Root and CVS/Repository
From-SVN: r29899
1999-10-11 07:01:38 +00:00
Geoff Keating b5d6a85051 mips.c (mips_build_va_list): Correct TREE_CHAIN setting when hard-float.
* config/mips/mips.c (mips_build_va_list): Correct
TREE_CHAIN setting when hard-float.
(mips_va_start): Use corrected setting.
(mips_va_arg): Likewise.  Also pass a tree to build of
POSTINCREMENT_EXPR rather than a naked 'int'.

From-SVN: r29898
1999-10-11 03:35:14 +00:00
Mark Mitchell 74c937ca61 ggc.h (ggc_push_context): Fix comment.
* ggc.h (ggc_push_context): Fix comment.
	(ggc_pop_context): Likewise.
	(mark_string_if_gcable): Likewise.
	* ggc-common.c (ggc_mark_rtx_children): Use
	ggc_mark_string_if_gcable.
	* ggc-page.c (ggc_lookup_page_table): New function.
	(ggc_allocated_p): Likewise.
	(mark_obj): Fix formatting.
	(ggc_mark_string_if_gcable): New function.
	* ggc-simple.c (ggc_allocated_strings): New variable.
	(ggc_strings_used): Likewise.
	(ggc_compare_addresses): New function.
	(ggc_pop_context): Pop the `any' memory too.
	(ggc_mark_string_if_gcable): New function.
	(ggc_collect): Initialize and tear down ggc_allocated_strings.

From-SVN: r29897
1999-10-11 02:11:21 +00:00
David Edelsohn f9562f27ff rs6000.md (movstrsi_?reg): Use preferred rD/rS = r5 form.
* rs6000.md (movstrsi_?reg): Use preferred rD/rS = r5 form.
        (scc patterns): Disable most SImode variants if TARGET_POWERPC64.
        * rs6000.c (expand_block_move): Match movstrsi_?reg register
        changes.

From-SVN: r29895
1999-10-10 20:39:30 -04:00
Richard Henderson c46a37c417 haifa-sched.c (sched_reg_n_calls_crossed): Delete.
* haifa-sched.c (sched_reg_n_calls_crossed): Delete.
        (sched_reg_live_length, sched_reg_basic_block): Delete.
        (current_block_num, bb_live_regs, old_live_regs): Delete.
        (dead_notes, struct sometimes): Delete.
        (sched_note_set, birthing_insn_p): Delete.
        (adjust_priority): Gut useless reg lifetime code.
        (create_reg_dead_note, attach_deaths): Delete.
        (attach_deaths_insn, new_sometimes_live): Delete.
        (finish_sometimes_live): Delete.
        (find_pre_sched_live, find_post_sched_live): Delete.
        (update_reg_usage): Delete.
        (find_insn_reg_weight): New, from corpse of find_pre_sched_live.
        (schedule_insns): Delete reg lifetime code.
        (sched_analyze): Use REG_SAVE_NOTE to stuff NOTE_INSN notes away.
        (unlink_other_notes): Adjust REG_NOTE commentary.
        (reemit_notes): Use REG_SAVE_NOTE.
        (schedule_block): Likewise.
        (schedule_region): Allocate bitmap of blocks in region.  Use
        count_or_remove_death_notes.  Use update_life_info.

        * rtl.h (REG_SAVE_NOTE): New.
        * rtl.c (reg_note_name): Update.

From-SVN: r29894
1999-10-10 16:45:27 -07:00
Richard Henderson 715e7fbc83 combine.c (refresh_blocks, [...]): New.
* combine.c (refresh_blocks, need_refresh): New.
        (combine_instructions): Allocate refresh_blocks.  Invoke
        update_life_info if needed.
        (distribute_notes): Mark refresh_blocks instead of installing
        USE insns.
        * flow.c (update_life_info): Remove notes if GLOBAL_RM_NOTES.
        * basic_block.h (enum update_life_extent): Add GLOBAL_RM_NOTES.

        * Makefile.in (recog.o): Depend on basic-block.h.

From-SVN: r29893
1999-10-10 16:34:17 -07:00
Jason Merrill 07b983cd71 checked in wrong version
From-SVN: r29892
1999-10-10 15:23:38 -04:00
Richard Henderson c3693cb121 genrecog.c (add_to_sequence): Thinko last change: delete shadowing allow_const_int variable.
* genrecog.c (add_to_sequence): Thinko last change: delete
        shadowing allow_const_int variable.

From-SVN: r29891
1999-10-10 12:04:29 -07:00
Kaveh R. Ghazi b30bce6b52 ansidecl.h (HAVE_GCC_VERSION): New macro.
include:
	* ansidecl.h (HAVE_GCC_VERSION): New macro.  Use instead of
	explicitly testing __GNUC__ and __GNUC_MINOR__.

	(ATTRIBUTE_PRINTF): Use `__format__', not `format'.

gcc:
	* cppinit.c: Use HAVE_GCC_VERSION instead of explicitly testing
	__GNUC__ and __GNUC_MINOR__.

	* gansidecl.h: Likewise.

	* rtl.c: Likewise.

	* rtl.h: Likewise.

	* toplev.h: Likewise.

	* tree.c: Likewise.

	* tree.h: Likewise.

	* varray.c: Likewise.

	* varray.h: Likewise.

cp:
	* cp-tree.h: Use HAVE_GCC_VERSION instead of explicitly testing
	__GNUC__ and __GNUC_MINOR__.

f:
	* proj.h: Use HAVE_GCC_VERSION instead of explicitly testing
	__GNUC__ and __GNUC_MINOR__.  Don't define BUILT_WITH_270.
	Define macro UNUSED in terms of ATTRIBUTE_UNUSED.

From-SVN: r29890
1999-10-10 13:02:41 +00:00
Bernd Schmidt 4724334af7 Fix a warning in copy_insn_1
From-SVN: r29889
1999-10-10 12:06:33 +00:00
Bernd Schmidt f0f616824e Fix docs for ADDRESS rtx
From-SVN: r29888
1999-10-10 11:52:53 +00:00
Bernd Schmidt 17bec8eee7 Don't put things between tablejumps and jump tables in loop.c
From-SVN: r29887
1999-10-10 11:37:46 +00:00
Richard Henderson 85c45372dc Lost debug_decision_list from genrecog changelog.
From-SVN: r29886
1999-10-10 02:46:11 -07:00
Richard Henderson ec1c89e60a genrecog.c (add_to_sequence): Move allow_const_int test outside known predicate block...
* genrecog.c (add_to_sequence): Move allow_const_int test outside
        known predicate block; default allow_const_int true.

From-SVN: r29885
1999-10-10 02:43:26 -07:00
Richard Henderson 8015b78d41 * i386.h (CC1_SPEC): Typo -- use cc1_cpu.
From-SVN: r29884
1999-10-10 00:44:13 -07:00
Marc Espie cd32188bd6 * config.table: Provide a backup shell for executing move-if-change.
From-SVN: r29883
1999-10-10 01:27:40 -06:00
Jeffrey A Law 55f7891bb7 gcse.c (gcse_main): Avoid global optimizations if we have a large number of basic blocks and the...
* gcse.c (gcse_main): Avoid global optimizations if we have a
        large number of basic blocks and the ratio of edges to blocks
        is high.
        (delete_null_pointer_checks): Likewise.

From-SVN: r29882
1999-10-09 23:30:28 -06:00
Ken Raeburn ba80674579 c-common.c (check_format_info): Warn if format string isn't a string literal.
* c-common.c (check_format_info): Warn if format string isn't a
        string literal.

From-SVN: r29881
1999-10-09 23:17:41 -06:00
Jonathan Larmour 7805bde9fa configure.in (arm*-*-*): Don't let autoconf remove brackets
* configure.in (arm*-*-*): Don't let autoconf remove brackets
        * configure: regenerate

From-SVN: r29880
1999-10-09 23:06:54 -06:00
Mark Mitchell f301014645 cp-tree.h (make_rtl_for_local_static): New function.
* cp-tree.h (make_rtl_for_local_static): New function.
	* decl.c (make_rtl_for_nonlocal_decl): Move code to create RTL for
	local statics ...
	(make_rtl_for_local_static): Here.
	* semantics.c (expand_stmt): Use make_rtl_for_local_static.

From-SVN: r29879
1999-10-09 21:06:03 +00:00
Richard Henderson ab61414260 alpha.md (extendsidi2): Turn into a splitter.
* alpha.md (extendsidi2): Turn into a splitter.  Allow f/f.
        If TARGET_FIX, allow r/f.  Remove cvtlq unspec pattern.
        (peepholes): Re-enable.

From-SVN: r29878
1999-10-09 13:18:48 -07:00
Richard Henderson d3a923ee2e Makefile.in (flow.o): Depend on TREE_H.
* Makefile.in (flow.o): Depend on TREE_H.
	* basic-block.h (REG_SET_EQUAL_P): New.
	(XOR_REG_SET): New.
	(n_edges): Declare.
	(free_regset_vector): Remove declaration.
	(flow_delete_insn_chain): Declare.
	(enum update_life_extent): New.
	(update_life_info, count_or_remove_death_notes): Declare.
	* combine.c (distribute_notes) [REG_DEAD]: Stop search at bb->head.
	Verify register live at bb->global_live_at_start before adding USE.
	* flow.c (HAVE_epilogue, HAVE_prologue): Provide default.
	(CLEAN_ALLOCA): New.
	(n_edges): New.
	(PROP_*): New flags.
	(find_basic_blocks_1): Use alloc_EXPR_LIST.
	(clear_edges): Zero n_edges.
	(make_edge): Increment n_edges.
	(split_edge): Don't allocate bb->local_set.  Increment n_edges.
	(flow_delete_insn_chain): Export.
	(delete_block): Decrement n_edges.
	(merge_blocks_nomove): Likewise.
	(life_analysis): Give life_analysis_1 PROP flags.
	(verify_wide_reg_1, verify_wide_reg): New.
	(verify_local_live_at_start): New.
	(update_life_info): Rewrite to call into propogate_block.
	(mark_reg): New.
	(mark_regs_live_at_end): After reload, if epilogue as rtl,
	always mark stack pointer.  Conditionally mark PIC register.
	After reload, mark call-saved registers, return regsiters.
	(life_analysis_1): Accept PROP flags not remove_dead_code.
	Call mark_regs_live_at_end before zeroing regs_ever_live.
	Use calculate_global_regs_live.  Copy global_live_at_end before
	calling final propagate_block.  Zero reg_next_use on exit.
	(calculate_global_regs_live): New.
	(allocate_bb_life_data): Don't allocate bb->local_set.
	(init_regset_vector, free_regset_vector): Remove.
	(propagate_block): Accept FLAGS not FINAL or REMOVE_DEAD_CODE.
	Test flags before every operation.  Warn if prologue/epilogue insn
	would have been deleted.
	(mark_set_regs, mark_set_1): Accept and use FLAGS.
	Use alloc_EXPR_LIST.
	(mark_used_regs): Accept and use FLAGS, not FINAL.
	Remove special handling for RETURN.
	(try_pre_increment): Use alloc_EXPR_LIST.
	(dump_flow_info): Dump n_edges.
	(unlink_insn_chain, split_hard_reg_notes): Remove.
	(maybe_add_dead_note, maybe_add_dead_note_use): Remove.
	(find_insn_with_note, new_insn_dead_notes): Remove.
	(update_n_sets, sets_reg_or_subreg_1, sets_reg_or_subreg): Remove.
	(maybe_remove_dead_notes, prepend_reg_notes): Remove.
	(replace_insns): Remove.
	(count_or_remove_death_notes): New.
	(verify_flow_info): Abort on error after all checks.
	(remove_edge): Decrement n_edges.
	(remove_fake_edges): Tweek format.
	* haifa-sched.c (schedule_insns): Use split_all_insns.
	* output.h (update_life_info): Remove declaration.
	* recog.c (split_all_insns): From the corpse of split_block_insns,
	do the whole function block by block.  Use update_life_info.
	(recog_last_allowed_insn): New.
	(recog_next_insn): Mind it.
	(peephole2_optimize): Set it.  Walk backwards through blocks.
	Use update_life_info.
	* rtl.h (update_flow_info, replace_insns): Remove declarations.
	(split_all_insns): Declare.
	* toplev.c (rest_of_compilation): Thread prologue before flow2.
	Use split_all_insns.

	* i386.md (or -1 peep2s): Disable.

From-SVN: r29877
1999-10-09 12:47:18 -07:00
Richard Henderson 1640ef3802 Test commit.
From-SVN: r29876
1999-10-09 12:07:33 -07:00