aboutsummaryrefslogtreecommitdiff
path: root/gcc/rtlanal.c
AgeCommit message (Collapse)AuthorFilesLines
1999-06-23rtlanal.c (reg_referenced_p): Use reg_overlap_mentioned_p for the parts of ↵J"orn Rennecke1-0/+5
an UNSPEC / UNSPEC_VOLATILE. * rtlanal.c (reg_referenced_p): Use reg_overlap_mentioned_p for the parts of an UNSPEC / UNSPEC_VOLATILE. From-SVN: r27720
1999-04-11flow.c (flow_delete_insn): If we delete a CODE_LABEL...Jeffrey A Law1-0/+30
* flow.c (flow_delete_insn): If we delete a CODE_LABEL, also remove it from the nonlocal_goto_handler_labels list. * jump.c (delete_insn): Likewise. (jump_optimize_1): Also recompute LABEL_NUSES when we are just marking labels. * rtl.h (remove_node_from_expr_list): Declare. * rtlanal.c (remove_node_from_expr_list): New function. From-SVN: r26361
1999-03-28Warning fixes:Kaveh R. Ghazi1-1/+1
* recog.h (insn_outfun, insn_operand_predicate): Add prototype arguments. * rtl.h (note_stores): Likewise. * rtlanal.c (note_stores): Likewise. From-SVN: r26045
1999-03-15rtlanal.c (auto_inc_p): New function.Michael Hayes1-0/+24
* rtlanal.c (auto_inc_p): New function. * rtl.h (auto_inc_p): Prototype it. * reload1.c (add_auto_inc_notes): New function. (reload): Strip REG_INC notes and call add_auto_inc_notes for each insn to restore them correctly. From-SVN: r25774
1999-02-25rtl.h (insn_first_p): Don't declare.J"orn Rennecke1-20/+0
* rtl.h (insn_first_p): Don't declare. * rtlanal.c (insn_first_p): Delete. * loop.c (loop_insn_first_p): Faster implementation. From-SVN: r25436
1999-02-22loop.c (libcall_other_regs): Make extern.Andrew MacLeod1-4/+6
* loop.c (libcall_other_regs): Make extern. * rtl.h (find_last_value): Add parameter to prototype. (libcall_other_reg): Add extern declaration. * rtlanal.c (find_last_value): Add another parameter to allow a definition using a hardware register to be found as well. From-SVN: r25378
1999-02-19rtlanal.c (insn_first_p): Fix return value for insn == reference.J"orn Rennecke1-2/+4
* rtlanal.c (insn_first_p): Fix return value for insn == reference. * loop.c (strength_reduce, check_final_value, check_dbra_loop): Use loop_insn_first_p. From-SVN: r25321
1999-02-10rtlanal.c (for_each_rtx): Fix declaration to conform to GNU coding standards.Mark Mitchell1-2/+2
* rtlanal.c (for_each_rtx): Fix declaration to conform to GNU coding standards. From-SVN: r25125
1999-02-02Missed from last commit.Richard Henderson1-0/+33
From-SVN: r24987
1999-01-28Happy new year.Joern Rennecke1-1/+1
From-SVN: r24896
1999-01-27rtl.h (insn_first_p): Declare.J"orn Rennecke1-0/+31
* rtl.h (insn_first_p): Declare. * rtlanal.c (insn_first_p): New function. * loop.h (varray.h): Include. (struct induction): Change combined_with to unsigned. New members derived, ix and last_use. (reg_iv_type, reg_iv_info): Now varray_type. All references changed. (REG_IV_TYPE, REG_IV_INFO): Define. (first_increment_giv, last_increment_giv): Declare. * loop.c (loop_number_loop_cont): New static variable. (loop_number_cont_dominator): Likewise. (reg_iv_type, reg_iv_info): Now varray_type. (first_increment_giv, last_increment_giv): New variables. (compute_luids, verify_dominator, find_life_end): New functions. (cmp_recombine_givs_stats, recombine_givs): Likewise. (loop_optimize): Allocate loop_number_loop_cont and loop_number_cont_dominator. Use compute_luids. (find_and_verify_loops): Initialize loop_number_loop_cont and loop_number_cont_dominator. (strength_reduce): Try to find bivs that can be expressed as givs of another biv, and to convert biv increments into givs. Call recombine_givs. Handle derived givs. (record_biv): New argument location. All callers changed. (record_giv): Initialize derived and last_use fields. (basic_induction_var): New argument location. All callers changed. (combine_givs): Don't combine a DEST_REG giv with a DEST_ADDR giv. Increment combined_with instead of setting to 1. * unroll.c (derived_regs): New static variable. (unroll_loop): Initialize it. Allocate local_regno according to max_reg_num. (copy_loop_body): Cope with derived givs. (find_splittable_givs): Check for Givs made from biv increments. Set derived_regs for givs. * Makefile.in (stmt.o, loop.o, unroll.o): Depend on loop.h . From-SVN: r24889
1998-12-22Fix obvious typo that produced compile time warning.Nick Clifton1-1/+1
From-SVN: r24397
1998-12-13rtl.h (multiple_sets): Fix prototype.Jeff Law1-1/+1
* rtl.h (multiple_sets): Fix prototype. * rtlanal.c (multiple_sets): Fix return type. From-SVN: r24304
1998-12-12rtlanal.c (multiple_sets): New function.Jeffrey A Law1-0/+32
* rtlanal.c (multiple_sets): New function. * rtl.h (multiple_sets): Declare it. * local-alloc.c (wipe_dead_reg): Use it. * global.c (global_conflicts): Likewise. Should fix the m68k bootstrap problems. From-SVN: r24283
1998-11-25rtlanal.c (regs_set_between_p): New function.Richard Henderson1-0/+46
* rtlanal.c (regs_set_between_p): New function. * rtl.h (regs_set_between_p): Prototype it. * jump.c (jump_optimize): Use it instead of modified_between_p in the Sep 2 change. From-SVN: r23888
1998-10-15flow.c (life_analysis_1): Do not clobber regs_ever_live after reload.Bernd Schmidt1-22/+13
* flow.c (life_analysis_1): Do not clobber regs_ever_live after reload. Never perform rescans of the insn chain after reload. (propagate_block): Do not delete insn or create new autoinc addressing modes after reload. * jump.c (jump_optimize): Unconditionally use the code that was previously conditional on PRESERVE_DEATH_INFO_REGNO_P. * reload1.c (reload): When reloading is finished, delete all REG_DEAD and REG_UNUSED notes. (emit_reload_insns): Delete all code that was conditional on PRESERVE_DEATH_INFO_REGNO_P. (no_longer_dead_regs): Delete variable. (reload_cse_delete_death_notes): Delete function. (reload_cse_no_longer_dead): Delete function. (reload_cse_regs_1): Delete all code to handle deletion of death notes. (reload_cse_noop_set_p): Likewise. (reload_cse_simplify_set): Likewise. (reload_cse_simplify_operands): Likewise. (reload_cse_move2add): Likewise. * reorg.c (used_spill_regs): Delete declaration. (max_label_num_after_reload): Delete declaration. (find_dead_or_set_registers): Don't assume that spill regs are dead at a CODE_LABEL. * rtlanal.c (dead_or_set_regno_p): Death notes are always accurate, even after reload. * sched.c (sched_analyze_insn): Likewise. (update_flow_info): Likewise. * haifa-sched.c (sched_analyze_insn): Likewise. (update_flow_info): Likewise. * tm.texi (PRESERVE_DEATH_INFO_REGNO_P): Delete documentation. * toplev.c (max_label_num_after_reload): Delete variable. (rest_of_compilation): Don't set max_label_num_after_reload. Call life_analysis after reload_cse_regs if optimizing. * config/gmicro/gmicro.h: Delete comment referring to PRESERVE_DEATH_INFO_REGNO_P. * config/i386/i386.h: Likewise. * config/m88k/m88k.h: Likewise. * config/m32r/m32r.h (PRESERVE_DEATH_INFO_REGNO_P): Delete definition. * config/sh/sh.h: Likewise. Accurate REG_DEAD notes after reload. Co-Authored-By: Jeffrey A Law <law@cygnus.com> From-SVN: r23120
1998-10-13rtl.h: Delete duplicate prototypes.Jeffrey A Law1-1/+2
* rtl.h: Delete duplicate prototypes. Add some missing prototypes. * rtlanal.c: (for_each_rtx): Formatting tweak. From-SVN: r23069
1998-09-11More multi-register structure return recognition fixes and:David S. Miller1-0/+12
* config/sparc/sparc.md (movdf_const_intreg_sp64): Disable. From-SVN: r22396
1998-09-11flow.c (mark_set_1): Recognize multi-register structure return values in ↵David S. Miller1-2/+19
CALL insns. * flow.c (mark_set_1): Recognize multi-register structure return values in CALL insns. (mark_used_regs): Likewise. (count_reg_sets_1): Likewise. (count_reg_references): Likewise. * rtlanal.c (note_stores): Likewise. From-SVN: r22395
1998-08-19* rtlanal.c (for_each_rtx): Check in the change mentioned below.Mark Mitchell1-0/+73
From-SVN: r21855
1998-07-28cse.c (cse_insn): Enable subsitution inside libcall only for REG, SUBREG, MEM.Vladimir N. Makarov1-1/+7
� * cse.c (cse_insn): Enable subsitution inside libcall only for REG, SUBREG, MEM. * rtlanal.c (replace_rtx): Prohibit replaces in CONST_DOUBLE. From-SVN: r21435
1998-07-07rtlanal.c (reg_overlap_mentioned_p): Handle STRICT_LOW_PART.Jeffrey A Law1-3/+8
* rtlanal.c (reg_overlap_mentioned_p): Handle STRICT_LOW_PART. If either argument is CONSTANT_P, then return zero. * reload.c (reg_overlap_mentioned_for_reload_p): Similarly. From-SVN: r21005
1998-05-13rtlanal.c (find_reg_note): Ignore notes that are not on on insns of class 'i'.Michael Meissner1-0/+8
* rtlanal.c (find_reg_note): Ignore notes that are not on on insns of class 'i'. (find_regno_note): Likewise. Co-Authored-By: Jeffrey A Law <law@cygnus.com> From-SVN: r19733
1998-05-13Warning fixes:Kaveh R. Ghazi1-1/+2
* Makefile.in (c-lang.o): Depend on c-tree.h, c-lex.h and toplev.h. (c-lex.o): Depend on output.h. (c-common.o): Likewise. (stmt.o): Likewise. (calls.o): Likewise. (integrate.o): Depend on toplev.h. (regclass.o): Depend on output.h. (final.o): Depend on reload.h. * c-common.c: Include output.h. (check_format_info): Remove unused variable `integral_format'. * c-decl.c (print_lang_decl): Mark parameters `file', `node' and `indent' with ATTRIBUTE_UNUSED. (print_lang_type): Likewise. (maybe_build_cleanup): Likewise for parameter `decl'. (copy_lang_decl): Likewise for parameter `node'. * c-lang.c: Include c-tree.h, c-lex.h and toplev.h. (lang_print_xnode): Mark parameters `file', `node' and `indent' with ATTRIBUTE_UNUSED. (lookup_interface): Likewise for parameter `arg'. (is_class_name): Likewise. (maybe_objc_check_decl): Likewise for parameter `decl'. (maybe_objc_comptypes): Likewise for parameters `lhs', `rhs' and `reflexive'. (maybe_objc_method_name): Likewise for parameter `decl'. (build_objc_string): Likewise for parameters `len' and `str'. * c-lex.c: Include output.h. * c-lex.h (position_after_white_space): Correct typo in prototype. * c-tree.h (finish_file, c_expand_start_cond, c_expand_start_else, c_expand_end_cond, init_iterators): Add prototypes. * caller-save.c (set_reg_live): Mark parameters `reg' and `setter' with ATTRIBUTE_UNUSED. * calls.c: Include output.h. * cccp.c (pipe_closed): Mark parameter `signo' with ATTRIBUTE_UNUSED. * combine.c: Move inclusion of expr.h to after insn-config.h. * iris6.h (ASM_IDENTIFY_GCC, ASM_IDENTIFY_LANGUAGE): Don't define as empty, rather define as ((void)0). * sparc.c (sparc_check_64): Add braces around ambiguous `else'. Add parentheses around assignment used as truth value. * cplus-dem.c (squangle_mop_up): Change return type to void. (internal_cplus_demangle): Remove unused parameter `options'. All callers changed. (cplus_demangle_opname): Remove function wide variable `int i' and replace with `size_t i' at each location where it is used. (cplus_demangle_opname): change type of `i' from int to size_t. * cppexp.c (right_shift): Mark parameter `pfile' with ATTRIBUTE_UNUSED. * cpphash.c (cpp_lookup): Likewise. (cpp_hash_cleanup): Likewise. * cpplib.c (parse_name): Add a prototype and make it static. (null_underflow): Mark parameter `pfile' with ATTRIBUTE_UNUSED. (null_cleanup): Likewise for parameters `pbuf' and `pfile'. (macro_cleanup): Likewise for parameter `pfile'. (file_cleanup): Likewise. * cpplib.h (cpp_reader_init, cpp_options_init, cpp_start_read, cpp_read_check_assertion, skip_rest_of_line): Add prototypes. * crtstuff.c (force_to_data, __CTOR_LIST__, force_to_data, __DTOR_END__, __FRAME_END__): Mark with ATTRIBUTE_UNUSED. * cse.c (cse_check_loop_start): Mark parameter `set' with ATTRIBUTE_UNUSED. * dbxout.c (flag_minimal_debug, have_used_extensions, source_label_number): Move inside macro wrapper check against defined (DBX_DEBUGGING_INFO) || defined (XCOFF_DEBUGGING_INFO). * dwarf2out.c (gen_entry_point_die): Hide prototype and definition. * except.h (doing_eh): Provide prototype. * expr.c: Move inclusion of expr.h to after insn-config.h. * final.c: Include reload.h. (shorten_branches): Cast the first argument of bzero to char *. * fix-header.c (cpp_print_containing_files): Mark parameter `pfile' with ATTRIBUTE_UNUSED. (cpp_fatal): Likewise. * flow.c (find_basic_blocks_1): Cast the first argument of bzero to char *. * genattrtab.c (make_length_attrs): Change the type of variable `i' from int to size_t. (zero_fn): Mark parameter `exp' with ATTRIBUTE_UNUSED. (one_fn): Likewise. * genextract.c (main): When generating insn-extract.c, mark variable `junk' with ATTRIBUTE_UNUSED. * gengenrtl.c (gencode): When generating genrtl.c, cast the first argument of bzero to char*. * integrate.c: Include toplev.h. * libgcc2.c: Wrap `struct exception_table' and `find_exception_handler' in macro DWARF2_UNWIND_INFO. * objc/Make-lang.in (objc-act.o): Depend on toplev.h. * objc/objc-act.c: Include toplev.h. (lang_print_xnode): Mark parameters `file', `node' and `indent' with ATTRIBUTE_UNUSED. (finish_protocol): Likewise for parameter `protocol'. * output.h (declare_weak): Add prototype. (decode_reg_name): Don't wrap with TREE_CODE macro. (assemble_alias): Add prototype. * regclass.c: Include output.h. * reload.h (reloads_conflict): Add prototype. * rtl.h (print_rtl_single, mark_elimiation, reg_class_subset_p, output_func_start_profiler): Add prototypes. * rtlanal.c (reg_set_p_1): Mark parameters `x' and `pat' with ATTRIBUTE_UNUSED. * scan-decls.c: Include scan.h. * scan.h (recognized_function, recognized_extern): Add prototypes. * stmt.c: Include output.h. * toplev.c (error_for_asm, warning_for_asm): Remove prototypes. (output_lang_identify): Hide prototype and definition. (float_signal): Mark parameter `signo' with ATTRIBUTE_UNUSED. (pipe_closed): Likewise. * toplev.h (count_error, strip_off_ending, error_for_asm, warning_for_asm): Add prototypes. From-SVN: r19712
1998-04-16varasm.c (asm_output_bss): Add prototype.Jeff Law1-0/+2
* varasm.c (asm_output_bss): Add prototype. (asm_output_aligned_bss): Likewise. * unroll.c (verify_addresses): Add prototype. * toplev.c: Add many prototypes. Too many to mention here. * stmt.c (check_seenlabel): Add prototype. * rtlanal.c (reg_set_p_1): Add prototype. (reg_set_last_1): Likewise. * reorg.c (find_dead_or_set_registers): Add prototype. * regmove (try_auto_increment): Add prototype. * regstack.c (pop_stack): Add prototype. From-SVN: r19254
1998-04-04* Check in merge from gcc2. See ChangeLog.11 and ChangeLog.12Jeff Law1-1/+1
for details. * haifa-sched.c: Mirror recent changes from gcc2. From-SVN: r18984
1998-03-20Major cutover to using system.h:Kaveh R. Ghazi1-1/+1
* Makefile.in (alias.o, bitmap.o, c-aux-info.o, c-common.o, c-decl.o, c-iterate.o, c-lang.o, c-lex.o, c-pragma.o, c-typeck.o, caller-save.o, calls.o, collect2.o, combine.o, cse.o, dbxout.o, dwarf2out.o, dwarfout.o, emit-rtl.o, except.o, explow.o, expmed.o, expr.o, final.o, flow.o, function.o, getpwd.o, global.o, integrate.o, jump.o, local-alloc.o, loop.o, optabs.o, pexecute.o, prefix.o, print-rtl.o, print-tree.o, profile.o, real.o, recog.o, reg-stack.o, regclass.o, regmove.o, reload.o, reload1.o, reorg.o, rtl.o, rtlanal.o, sdbout.o, stmt.o, stor-layout.o, stupid.o, tlink.o, toplev.o, tree.o, unroll.o, varasm.o, xcoffout.o): Depend on system.h. * alias.c, bitmap.c, c-aux-info.c, c-common.c, c-decl.c, c-iterate.c, c-lang.c, c-lex.c, c-pragma.c, c-typeck.c, caller-save.c, calls.c, collect2.c, combine.c, cse.c, dbxout.c, dwarf2out.c, dwarfout.c, emit-rtl.c, except.c, explow.c, expmed.c, expr.c, final.c, flow.c, function.c, gcc.c, getpwd.c, global.c, integrate.c, jump.c, local-alloc.c, loop.c, optabs.c, pexecute.c, prefix.c, print-rtl.c, print-tree.c, profile.c, real.c, recog.c, reg-stack.c, regclass.c, regmove.c, reload.c, reload1.c, reorg.c, rtl.c, rtlanal.c, sched.c, sdbout.c, stmt.c, stor-layout.c, stupid.c, tlink.c, toplev.c, tree.c, unroll.c, varasm.c, xcoffout.c: Include system.h. Organize include ordering so that stdarg/varargs comes before other system headers. Remove spurious casts of functions assured of a prototype in system.h. From-SVN: r18726
1998-02-13Rats. Forgot to change copyrights on the first commit.Robert Lipe1-1/+1
From-SVN: r17902
1998-02-13c-lang.c (finish_file): Bracket declaration of static_ctors, static_dtors.Robert Lipe1-1/+0
* c-lang.c (finish_file): Bracket declaration of static_ctors, static_dtors. * calls.c (expand_call): Bracket declaration of 'rtx_before_call', 'old_stack_arg_under_construction' (emit_library_call): Bracket declaration of 'upper_bound', 'lower_bound', 'i', 'reg_parm_stack_space' (emit_library_call_value): Likewise. (store_one_arg): * collect2.c: include <unistd.h> when appropriate. Bracket declaration of 'exportf' and 'full_real_ld_suffix'. * emit-rtl.c (prev_cc0_setter): Remove unused variable 'link'. * explow.c (plus_constant_for_output_wide): Remove unused variable 'code'. (memory_address): Remove unused variable 'orig_x'. * genattrtab.c (make_canonical): Remove unreferenced label 'cond:'. (write_const_num_delay_slots): Remove unused variable 'i'. * genopinit.c (main): Remove unused variables 'dummy', 'insn_ptr'. (gen_insn): Remove unused variable 'obstack_ptr'. * libgcc2.c (__bb_exit_func): Remove unused variables 'ret', 'j', 'tmp', 'i'. (__bb_exit_trace_func): Remove unused variable 'e'. * optabs.c (expand_binop): remove unused variables 'lhs', 'rhs', 'funexp'. (expand_unop): Remove unused variable 'funexp'. (expand_complex_abs): Remove unused variable 'funexp'. (init_optabs): Bracket declaration of 'j'. (init_complex_libfuncs): Deleted. Dead static function. * profile.c (branch_prob): Remove unused variables 'insn', 'dest'. * reg-stack.c: Fix typo in proto for 'get_asm_operand_lengths' (reg_to_stack): 'initialized', 'before_function_beg' explictly type as ints instead of defaulting. (emit_swap_insn): Remove unused variable 'i2'. (compare_for_stack_reg): Remove unused variable 'src_note'. * rtlanal.c (computed_jump_p): Remove unused variable 'computed_jump'. * sched.c (actual_hazard): Bracket declaration of 'this_cost'. * stmt.c (add_case_node): Add parens for assignment used as truth. (all_cases_count): Remove unused variable 'count_high'. (mark_seen_cases): Remove unused variable 'i'. (check_for_full_enumeration_handling): Remove unused variable 't'. Bracket declaration of 'all_values', 'l'. * tlink.c: Include <stdlib.h>, <unistd.h>, <string.h>/<strings.h>. * varasm.c (assemble_string): Remove unused variable 'i'. (immed_double_const): Remove unused variable 'in_current_obstack'. (immed_real_const_1): Likewise. (output_constant_pool): Remove unreferenced label 'done'. (output_constant): Remove unused variable 'x'. * i386/i386.h (ENCODE_SECTION_INFO): TREE_PUBLIC is an int, not a string. * i386/sco5.h (ASM_OUTPUT_ASCII): Add parens for assignment used as truth. From-SVN: r17901
1998-01-28rtlanal.c (dead_or_set_regno_p): Ignore REG_DEAD notes after reload completes.Mike Stump1-10/+21
* rtlanal.c (dead_or_set_regno_p): Ignore REG_DEAD notes after reload completes. * genattrtab.c (reload_completed): Define. * m32r.md, mips.md, mn10200.md, mn10300.md, pyr.md: Remove obsolete comments. From-SVN: r17542
1997-12-20bitmap.c (bitmap_clear): Ensure `inline' is at the beginning of the declaration.Kaveh R. Ghazi1-0/+3
* bitmap.c (bitmap_clear): Ensure `inline' is at the beginning of the declaration. * c-decl.c (finish_decl): Use parentheses around && within ||. * rtl.c: Include stdlib.h. (read_skip_spaces): Add parentheses around assignments used as truth values. (read_rtx): Initialize list_rtx. * cppexp.c (parse_number): Use || when operands are truth values. * alias.c (find_base_value): Add default case. (memrefs_conflict): Likewise. * combine.c (sets_function_arg_p): Likewise. * genemit.c (gen_exp): Likewise. * local-alloc.c (contains_replace_regs): Likewise. * rtlanal.c (jmp_uses_reg_or_mem): Likewise. * fold-const.c (fold_convert): Use "&&" for truth values. (fold): Add default case. * sdbout.c (sdbout_field_types): Fix typo in declaration. (sdbout_one_type): Add default case. * alpha.c (alpha_sa_mask): Prototype only if OPEN_VMS. (some_operand): Add default case. (input_operand): Likewise. (signed_comparison_operator): Likewise. (divmod_operator): Likewise. (alpha_set_memflags_1): Likewise. * reload1.c (reload_cse_simplify_operands): Ensure function always returns a value. * scan-decls.c (scan_decls): Likewise. * c-lex.c (skip_white_space): Fix typo in declaraion. * c-typeck.c (comp_target_types): Add parentheses around assignment used as truth value. (print_spelling): Likewise. (constructor_implicit, constructor_result): Remove unused variables. * collect2.c (scan_library): Protect prototype with #ifdef SCAN_LIBRARIES. * emit-rtl.c (find_line_note): Fix typo in declaration. * final.c (asm_insn_count): Protect prototype with #ifdef HAVE_ATTR_length. * flow.c (find_auto_inc): Protect prototype with #ifdef AUTO_INC_DEC. (try_pre_increment_1, try_pre_increment): Likewise. * regclass.c (auto_inc_dec_reg_p): Protect prototype with #ifdef FORBIDDEN_INC_DEC_CLASSES. Make return type explicit. * gcov-io.h (__store_long, __write_long, __read_long): Fix unsigned/signed comparisons. * gcov.c (read_files): Remove unused "first_type" variable. (scan _for_source_files): Initialize s_ptr. (function_summary): Eliminate "%lf" formatting, use %ld for longs. (output_data): Initialize branch_probs and last_line_num. Eliminate "%lf" formatting, use "%ld" for longs. Co-Authored-By: Jeffrey A Law <law@cygnus.com> From-SVN: r17158
1997-11-02Update mainline egcs to gcc2 snapshot 971021.Jeff Law1-12/+49
From-SVN: r16278
1997-09-23rtlanal.c (jmp_uses_reg_or_mem): Fix typo in last change.Jeffrey A Law1-1/+1
* rtlanal.c (jmp_uses_reg_or_mem): Fix typo in last change. Fixes various bootstrap problems (hopefully). From-SVN: r15667
1997-09-21jump.c (jmp_uses_reg_or_mem): Deleted unused function.Jeffrey A Law1-0/+96
* jump.c (jmp_uses_reg_or_mem): Deleted unused function. (find_basic_blocks): Use computed_jump_p to determine if a particular JUMP_INSN is a computed jump. * reg-stack.c (find_blocks): Use computed_jump_p to determine if a particular JUMP_INSN is a computed jump. * rtlanal.c (jmp_uses_reg_or_mem): New function. (computed_jump_p): Likewise. * rtl.h (computed_jump_p): Declare. * genattrtab.c (pc_rtx): Define and initialize. * loop.c (loop_optimize): Always determine if the current function has a computed jump. (indirect_jump_in_function_p): Use computed_jump_p to determine if a particular JUMP_INSN is a computed jump. General (and haifa) cleanups. From-SVN: r15615
1996-07-03formatting tweaksMike Stump1-1/+1
From-SVN: r12390
1996-05-06(rtx_addr_varies_p): Scan operands of type `E'.Richard Kenner1-3/+12
From-SVN: r11935
1996-03-10Update comment for rtx_equal_function_value_matters.Richard Kenner1-1/+1
From-SVN: r11507
1995-10-06(reg_set_last): Fix call to reg_set_between_p.Richard Kenner1-1/+1
From-SVN: r10432
1995-06-28(reg_set_p_1): Now static; add extra parm.Richard Kenner1-3/+3
From-SVN: r10070
1995-06-15Update FSF address.Richard Kenner1-1/+2
From-SVN: r9964
1994-08-25(may_trap_p, case EXPR_LIST): New case.Richard Kenner1-0/+4
From-SVN: r7983
1994-05-29(volatile_insn_p): Call ourselves in recursive scan.Richard Kenner1-3/+3
From-SVN: r7383
1994-05-06(reg_used_between_p): Check usage exprs on CALL_INSNs.Richard Kenner1-4/+101
(reg_referenced_between_p, reg_set_p, dead_or_set_regno_p): Likewise. (find_reg{,no}_fusage): New functions. From-SVN: r7235
1993-12-21(replace_regs, case REG): Return copies of SUBREGs, toJim Wilson1-1/+8
avoid invalid sharing. From-SVN: r6253
1993-10-19(volatile_insn_p): New function.Richard Stallman1-0/+65
From-SVN: r5803
1993-09-24rtlanal.c: (rtx_unstable_p): HARD_FRAME_POINTER_REGNUM is not an unstable ↵Doug Evans1-3/+5
register. * rtlanal.c: (rtx_unstable_p): HARD_FRAME_POINTER_REGNUM is not an unstable register. (rtx_varies_p, case REG): hard_frame_pointer_rtx is invariant. (rtx_addr_can_trap_p, case REG): hard_frame_pointer_rtx won't trap. From-SVN: r5465
1993-09-06(modified_between_p): Handle vectors.Richard Kenner1-4/+74
(modified_in_p): New function. (refers_to_regno_p): If setting AP, FP, or SP, we clobber the virtual registers. From-SVN: r5267
1993-03-30(find_regno_note): Find note that overlaps REGNO, not just one thatRichard Kenner1-2/+9
mentions REGNO explicitly. From-SVN: r3929
1993-01-23Comment fix.Richard Stallman1-0/+2
From-SVN: r3311
1992-10-14(single_set): fix typo in REG_UNUSED check.Richard Stallman1-3/+3
From-SVN: r2449