aboutsummaryrefslogtreecommitdiff
path: root/gcc/rtl.h
AgeCommit message (Collapse)AuthorFilesLines
1998-05-06The isascii check is needed by system.h.Kaveh R. Ghazi1-3/+0
* configure.in (AC_CHECK_FUNCS): Add isascii. (GCC_NEED_DECLARATIONS): Add atof. * system.h: Provide prototypes for abort, atof, atol and sbrk here. * rtl.c, rtl.h, toplev.c, tree.h: Not here. From-SVN: r19572
1998-05-06toplev.h: New file.Robert Lipe1-16/+0
Wed May 6 06:35:38 1998 Robert Lipe <robertl@dgii.com> * toplev.h: New file. Protypes for functions in toplev.c. * tree.h, rtl.h: Deleted protos for functions in toplev.c. * c-common.c, c-convert.c, c-decl.c, c-iterate.c, c-lex.c, c-parse.in, c-parse.y, c-pragma.c, c-typeck.c, calls.c, convert.c, dwarf2out.c, except.c, expr.c, final.c, fold-const.c, function.c, hash.c, profile.c, real.c, reg-stack.c, regclass.c, reload.c, reload1.c, stmt.c, stor-layout.c, tlink.c, tree.c, varasm.c: include it. From-SVN: r19563
1998-04-27Make args to jump_optimize symbolicMichael Meissner1-0/+5
From-SVN: r19421
1998-04-25alias.c (alias_invariant): New variable.John Carr1-0/+2
* alias.c (alias_invariant): New variable. (record_base_value): New argument INVARIANT. (memrefs_conflict_p): If a register has an entry in the alias_invariant array, try substituting that value for the register. * rtl.h: Declare record_base_value. * loop.c, unroll.c: Update callers of record_base_value. * alias.c (find_base_value, find_base_term): SIGN_EXTEND and ZERO_EXTEND do not affect base values. From-SVN: r19408
1998-04-10cse.c (count_reg_usage): Correctly handle REG_NONNEG notes.Jeffrey A Law1-1/+1
* cse.c (count_reg_usage): Correctly handle REG_NONNEG notes. (delete_trivially_dead_insns): Renamed from delete_dead_from_cse. * toplev.c (rest_of_compilation): Call delete_trivially_dead_insns instead of delete_dead_from_cse. Also call delete_trivially_dead_insns between loop optimization passes. * rtl.h: Updated appropriately. From-SVN: r19100
1998-04-04* Check in merge from gcc2. See ChangeLog.11 and ChangeLog.12Jeff Law1-4/+6
for details. * haifa-sched.c: Mirror recent changes from gcc2. From-SVN: r18984
1998-04-01c-lex.c (yylex): Initialize traditional_type, ansi_type and type.Jeffrey A Law1-2/+3
* c-lex.c (yylex): Initialize traditional_type, ansi_type and type. * caller-save.c (insert_save_restore): Initialize pat, code and numregs. * emit-rtl.c (push_to_sequence): Initialize top. (push_topmost_sequence): Likewise. * genattrtab.c (simplify_by_exploding): Initialize defval. * profile.c (branch_prob): Initialize dest. * rtl.h (note_stores): Remove duplicate prototype. (GEN_INT): Re-instate cast of second arg to HOST_WIDE_INT. Fix some warnings. * cplus-dem.c (gnu_special): Don't get confused by .<digits> strings that are not actually lengths. A change from libiberty that didn't make it into the gcc copy. From-SVN: r18942
1998-03-06rtl.h (addr_diff_vec_flags): New typedef.Joern Rennecke1-0/+21
* rtl.h (addr_diff_vec_flags): New typedef. (union rtunion_def): New member rt_addr_diff_vec_flags. (ADDR_DIFF_VEC_FLAGS): New macro. * sh.c (output_branch): Fix offset overflow problems. * final.c (shorten_branches): Implement CASE_VECTOR_SHORTEN_MODE. (final_scan_insn): New argument BODY for ASM_OUTPUT_ADDR_DIFF_ELT. * rtl.def (ADDR_DIFF_VEC): Three new fields (min, max and flags). * stmt.c (expand_end_case): Supply new arguments to gen_rtx_ADDR_DIFF_VEC. * 1750a.h (ASM_OUTPUT_ADDR_DIFF_ELT): New argument BODY. * alpha.h, arc.h, clipper.h, convex.h : Likewise. * dsp16xx.h, elxsi.h, fx80.h, gmicro.h, h8300.h : Likewise. * i370.h, i386.h, i860.h, i960.h, m32r.h, m68k.h, m88k.h : Likewise. * mips.h, mn10200.h, mn10300.h, ns32k.h, pa.h, pyr.h : Likewise. * rs6000.h, sh.h, sparc.h, spur.h, tahoe.h, v850.h : Likewise. * vax.h, we32k.h, alpha/vms.h, arm/aof.h, arm/aout.h : Likewise. * i386/386bsd.h, i386/freebsd-elf.h : Likewise. * i386/freebsd.h, i386/linux.h : Likewise. * i386/netbsd.h, i386/osfrose.h, i386/ptx4-i.h, i386/sco5.h : Likewise. * i386/sysv4.h, m68k/3b1.h, m68k/dpx2.h, m68k/hp320.h : Likewise. * m68k/mot3300.h, m68k/sgs.h : Likewise. * m68k/tower-as.h, ns32k/encore.h, sparc/pbd.h : Likewise. * sh.h (INSN_ALIGN, INSN_LENGTH_ALIGNMENT): Define. (CASE_VECTOR_SHORTEN_MODE): Define. (short_cbranch_p, align_length, addr_diff_vec_adjust): Don't declare. (med_branch_p, braf_branch_p): Don't declare. (mdep_reorg_phase, barrier_align): Declare. (ADJUST_INSN_LENGTH): Remove alignment handling. * sh.c (uid_align, uid_align_max): Deleted. (max_uid_before_fixup_addr_diff_vecs, branch_offset): Deleted. (short_cbranch_p, med_branch_p, braf_branch_p, align_length): Deleted. (cache_align_p, fixup_aligns, addr_diff_vec_adjust): Deleted. (output_far_jump): Don't use braf_branch_p. (output_branchy_insn): Don't use branch_offset. (find_barrier): Remove checks for max_uid_before_fixup_addr_diff_vecs. Remove paired barrier stuff. Don't use cache_align_p. Take alignment insns into account. (fixup_addr_diff_vecs): Reduce to only fixing up the base label of the addr_diff_vec. (barrier_align, branch_dest): New function. (machine_dependent_reorg, split_branches): Remove infrastructure for branch shortening that is now provided in the backend. * sh.md (short_cbranch_p, med_branch_p, med_cbranch_p): New attributes. (braf_branch_p, braf_cbranch_p): Likewise. (attribute length): Use new attributes. (casesi_worker): Get mode and unsignednedd from ADDR_DIFF_VEC. (addr_diff_vec_adjust): Delete. (align_2): Now a define_expand. (align_log): Now length 0. From-SVN: r18433
1998-02-28Fix warious warnings:Kaveh R. Ghazi1-1/+1
* c-aux-info.c: Include string.h/strings.h. * pa.c: Include stdlib.h. (pa_combine_instructions): Prototype the function. (pa_can_combine_p, forward_branch_p, shadd_constant_p): Likewise. (reloc_needed): Add default case for enumeration switch. (remove_useless_addtr_insns): Remove unused variable `all'. (hppa_expand_prologue): Add explicit braces to avoid ambiguous `else'. (output_function_epilogue): Remove unused variable `i'. (output_millicode_call): Remove unused variable `link'. (shadd_constant_p, forward_branch_p): Make the function static. (following_call): Explicitly declare to return int. (pa_reorg): Declare as void. (pa_combine_instructions): Declare as static void. Add parentheses around && within ||. * pa.h: Add prototypes for pa_reorg, symbolic_operand, following_call, function_label_operand, lhs_lshift_cint_operand and zdepi_cint_p. * pa.md: Add parentheses around && within ||. * cppalloc.c: Include stdlib.h. * cpperror.c (cpp_print_containing_files): Remove unused variable `i'. Fix format specifier in fprintf. * cse.c (cse_around_loop): Add explicit braces to avoid ambiguous `else'. (delete_dead_from_cse): Wrap variable `tem' in macro HAVE_cc0. * expr.c (expand_expr): Add parentheses around && within ||. * final.c (app_enable): Replace fprintf with fputs where there are no format specifiers and no trailing argument after the string. Eg, when printing ASM_APP_ON/ASM_APP_OFF. (app_disable): Likewise. (final_end_function): Likewise. (final_scan_insn): Likewise. Remove unused variable `set'. (profile_function): Wrap empty if-statement body in {} brackets. * function.c: Include stdlib.h. (pad_below): Wrap prototype and definition in ARGS_GROW_DOWNWARD. (reposition_prologue_and_epilogue_notes): Add parentheses around assignment used as truth value. * integrate.c (expand_inline_function): Wrap variable `cc0_insn' in macro HAVE_cc0. * jump.c (jump_optimize): Wrap variable `q' in macro HAVE_cc0. Remove unused variable `prev1'. * libgcc2.c (__bb_exit_trace_func): Add parentheses around && within ||. Fix format specifier in fprintf. (__bb_init_prg): Add parentheses around assignment used as truth value. * local-alloc.c: Include stdlib.h. (requires_inout): Add parentheses around assignment used as truth value. * loop.c (analyze_loop_iterations): Wrap prototype and definition in macro HAVE_decrement_and_branch_on_count. (insert_bct, instrument_loop_bct): Likewise. (move_movables): Add parentheses around assignment used as truth value. (consec_sets_invariant_p): Likewise. (maybe_eliminate_biv_1): Wrap variable `new' in macro HAVE_cc0. * objc/objc-act.c: Include stdlib.h. (lookup_method_in_protocol_list): Wrap empty else-statement body in braces. (lookup_protocol_in_reflist): Likewise. (objc_add_static_instance): Remove unused variables `decl_expr' and `decl_spec'. (get_objc_string_decl): Remove unused variable `decl'. (generate_static_references): Remove unused variables `idecl' and `instance'. (check_protocols): Wrap empty else-statement body in braces. * protoize.c: Include stdlib.h. (substr): Add parentheses around assignment used as truth value. (abspath): Likewise. (shortpath): Likewise. * regmove.c (fixup_match_1): Add parentheses around assignment used as truth value. * reload.c (push_secondary_reload): Remove unused variable `i'. (find_reloads): Add parentheses around assignment used as truth value. * reload1.c: Include stdlib.h. * rtl.h: Correct typo in prototype of offsettable_memref_p. * stmt.c (add_case_node): Add parentheses around assignment used as truth value. (case_tree2list): Likewise. * tree.c (valid_machine_attribute): Wrap variable `decl_attr_list' in macro VALID_MACHINE_DECL_ATTRIBUTE. Wrap variable `type_attr_list' in macro VALID_MACHINE_TYPE_ATTRIBUTE. (merge_attributes): Add explicit braces to avoid ambiguous `else'. * unroll.c (copy_loop_body): Wrap variable `cc0_insn' in macro HAVE_cc0. * varasm.c: Include stdlib.h. From-SVN: r18290
1998-02-17rtl.h (force_line_numbers, [...]): Declare.Joern Rennecke1-0/+5
* rtl.h (force_line_numbers, restore_line_number_status): Declare. * emit-rtl.c (force_line_numbers, restore_line_number_status): New functions. * stmt.c (struct nesting): Replace seenlabel with line_number_status. (expand_start_case): Adjust to this change. (check_seenlabel): New function. (pushcase, pushcase_range, expand_endcase): Use it. From-SVN: r18031
1998-02-05regmove.c: Update.J"orn Rennecke1-4/+0
* regmove.c: Update. * flags.h (flag_regmove): Declare. * rtl.h (optimize_reg_copy_1, optimize_reg_copy_2): Don't declare. * local-alloc.c (optimize_reg_copy_1, optimize_reg_copy_2): Moved into regmove; changed caller. * toplev.c (rest_of_compilation): Call regmove_optimize also for expensive_optimizations. From-SVN: r17669
1998-01-20Makefile.in: Remove all bytecode support.Jeffrey A Law1-16/+0
* Makefile.in: Remove all bytecode support. (OBJS): Make sure last entry is a real object file, not EXTRA_OBJS. * emit-rtl.c: Remove all bytecode support. * expr.c, expr.h function.c, integrate.c: Likewise. * output.h, regclass.c, rtl.h, stmt.c, toplev.c: Likewise. * tree.h, varasm.c: Likewise. * bi-*, bc-*: Delete bytecode related files. Bytecode suppors disappears :-) From-SVN: r17432
1998-01-17emit_rtl.c (init_emit_once): Ensure that potential aliasing between ↵Jeff Law1-1/+1
frame_pointer_rtx... * emit_rtl.c (init_emit_once): Ensure that potential aliasing between frame_pointer_rtx, hard_frame_pointer_rtx, and arg_pointer_rtx is respected in initialization. (init_emit_once): Use gen_rtx_raw_REG() to create return_address_pointer_rtx. * rtl.h: Fix typo. From-SVN: r17409
1998-01-10regmove.c: New implementation of regmove pass.J"orn Rennecke1-1/+5
* regmove.c: New implementation of regmove pass. * local-alloc.c (optimize_reg_copy_1, optimize_reg_copy_2): Remove decls, make them have external linkage. Return a value from optimize_reg_copy_1. * reload.h (count_occurrences): Add decl. * reload1.c (count_occurrences): Delete decl, make it have external linkage. * rtl.h (optimize_reg_copy_1, optimize_reg_copy_2): Declare. Co-Authored-By: Jeffrey A Law <law@cygnus.com> From-SVN: r17316
1998-01-08Makefile.in (OBJ, GEN, RTL_H): Add genrtl.[oh] bits.Richard Henderson1-3/+16
* Makefile.in (OBJ, GEN, RTL_H): Add genrtl.[oh] bits. * emit-rtl.c (gen_rtx): Move special code to ... (gen_rtx_CONST_INT): New function. (gen_rtx_REG): New function. (*): Update all calls to gen_rtx. * genemit.c (gen_exp): Emit calls to gen_rtx_FOO for constant FOO. * rtl.h: Include genrtl.h; prototype CONST_INT & REG generators. (GEN_INT): Call gen_rtx_CONST_INT. * gengenrtl.c: New file. From-SVN: r17312
1997-12-24flags.h, [...]: Remove flag_alias_check; optimization is now always enabled.John Carr1-0/+1
* flags.h, toplev.c, calls.c, alias.c: Remove flag_alias_check; optimization is now always enabled. * calls.c (expand_call): Recognize C++ operator new as malloc-like function. * alias.c (memrefs_conflict_p): Eliminate tests now done by base_alias_check. (*_dependence): Call canon_rtx before base_alias_check. (init_alias_once): New function to precompute set of registers which can hold Pmode function arguments. * rtl.h: Declare init_alias_once. * toplev.c (compile_file): Call init_alias_once. From-SVN: r17226
1997-12-11[multiple changes]Teemu Torma1-1/+1
Thu Dec 11 20:42:18 1997 Teemu Torma <tot@trema.com> Thread-safe EH support for pthreads, DCE threads and Solaris threads. * integrate.c (expand_inline_function): If the inline fn uses eh context, make sure that the current fn has one. * toplev.c (rest_of_compilation): Call emit_eh_context. * except.c (use_eh_context): New fn. (get_eh_context_once): New fn. (call_get_eh_context): New fn. (emit_eh_context): New fn. (get_eh_context): Call either get_eh_context_once or call_get_eh_context, depending on what we have. (get_dynamic_handler_chain): Call get_eh_context_once. * except.h: Prototypes for fns above. * optabs.c (get_eh_context_libfunc): Removed. (init_optabs): Don't initialize it. * expr.h (get_eh_context_libfunc): Removed. * rtl.h, rtl.c: New reg_note REG_EH_CONTEXT. * config/pa/pa.h (CPP_SPEC): Support for -threads. * config/pa/pa-hpux10.h (LIB_SPEC): Ditto. * config/pa/t-pa (MULTILIB_OPTIONS, MULTILIB_DIRNAMES): New multilib for -threads. * config/sparc/t-sol2: Added multilibs for -threads and made -pthreads alias to it. * config/sparc/sol2.h (CPP_SPEC, LIB_SPEC): Added -threads and -pthreads options. * libgcc-thr.h: New file. * libgcc2.c: (__get_cpp_eh_context): Removed. (struct cpp_eh_context): Removed. (struct eh_context): Replaced cpp_eh_context with generic language specific pointer. (__get_eh_info): New function. (__throw): Check eh_context::info. (__sjthrow): Ditto. * libgcc2.c: Include libgcc-thr.h. (new_eh_context, __get_eh_context, eh_pthread_initialize, eh_context_initialize, eh_context_static, eh_context_specific, eh_context_free): New functions. (get_eh_context, eh_context_key): New variables. (__sjthrow, __sjpopnthrow, __eh_pcnthrow, __throw): Use get_eh_context to get the context. (longjmp): Move the declaration inside #ifdef DONT_USE_BUILTIN_SETJMP. * frame.c: Include libgcc-thr.h. (object_mutex): Mutex to protect the object list. (find_fde, __register_frame, __register_frame_table, __deregister_frame): Hold the lock while accessing objects. * except.h (get_eh_context): Declare. * except.c (current_function_ehc): Define. (current_function_dhc, current_function_dcc): Removed. (get_eh_context): New function. (get_dynamic_handler_chain): Use get_eh_context. (get_saved_pc_ref): Ditto. (get_dynamic_cleanup_chain): Removed references to current_function_dcc. (save_eh_status, restore_eh_status): Save and restore current_function_ehc instead. * optabs.c (get_eh_context_libfunc): New variable. (init_optabs): Initialize it. * expr.h: Declare get_eh_context_libfunc. * function.h (struct function): Replaced dhc and dcc with ehc. * except.c (get_saved_pc_ref): New functions. (eh_saved_pc_rtx, eh_saved_pc): Deleted. (expand_internal_throw_indirect): Use get_saved_pc_ref() instead of eh_saved_pc. (end_eh_unwinder): Likewise. (init_eh): Remove initialization of eh_saved_pc. * optabs.c (get_saved_pc_libfunc): New variable. (init_optabs): Initialize it. * expr.h: Declare get_saved_pc_libfunc. * except.h (eh_saved_pc_rtx): Deleted. (get_saved_pc_ref): Declared. From Scott Snyder <snyder@d0sgif.fnal.gov>: * libgcc2.c (__get_saved_pc): New. (__eh_type, __eh_pc): Deleted. (__eh_pcnthrow): Use __get_saved_pc() instead of __eh_pc. (__get_dynamic_handler_chain): Move __dynamic_handler_chain inside this fcn. cp/: Thu Dec 11 20:43:33 1997 Teemu Torma <tot@trema.com> * decl.c (ptr_ptr_type_node): Define. (init_decl_processing): Initialize it. * cp-tree.h: Declare it. * exception.cc (__cp_exception_info): Use __get_eh_info. (__cp_push_exception): Ditto. (__cp_pop_exception): Ditto. From Scott Snyder <snyder@d0sgif.fnal.gov>: * except.c (expand_builtin_throw): Use get_saved_pc_ref instead of saved_pc. (init_exception_processing): Removed saved_pc initialization. From-SVN: r17052
1997-12-11rtl.h (global_rtl): New variable, replacing separate variables for commonly ↵John F. Carr1-16/+50
used rtl. * rtl.h (global_rtl): New variable, replacing separate variables for commonly used rtl. (const_int_rtx): Now array of rtx_def, not rtx. * emit-rtl.c: Update for new rtl data structures. * genattrtab.c: Define global_rtl. From-SVN: r17049
1997-12-09* Partially cleaned up prototyping code from HJ.Jeffrey A Law1-13/+330
* haifa-sched.c (haifa_classify_insn): Renamed from classify_insn. All references changed. * rtl.h: Protect from multiple inclusions. Add many prototypes. * libgcc2.c (string.h): Hoist inclusion to occur before first use of string functions like strlen. More pending patches. From-SVN: r17024
1997-12-06Merge from gcc-2.8Jeff Law1-0/+3
From-SVN: r16987
1997-11-04rtl.def (CODE_LABEL): Use separate fields for LABEL_NUSES and LABEL_REFS fields.Jeffrey A Law1-1/+1
* rtl.def (CODE_LABEL): Use separate fields for LABEL_NUSES and LABEL_REFS fields. * rtl.h (LABEL_REFS): Update. From-SVN: r16333
1997-11-02Update mainline egcs to gcc2 snapshot 971021.Jeff Law1-16/+53
From-SVN: r16278
1997-09-23reorg.c (dbr_schedule): At end of this pass...David S. Miller1-2/+8
* reorg.c (dbr_schedule): At end of this pass, add REG_BR_PRED note holding get_jump_flags() calculation to all JUMP_INSNs. * rtl.h (enum reg_note): New note types REG_BR_PRED and REG_SAVE_AREA. * rtl.c (reg_note_name): Add new note types. From-SVN: r15670
1997-09-21jump.c (jmp_uses_reg_or_mem): Deleted unused function.Jeffrey A Law1-0/+1
* 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
1997-08-28version.c: Bump for latest snapshot.Jeffrey A Law1-1/+0
* version.c: Bump for latest snapshot. * bc-optab.c: Conditionally include stdlib.h. (free): Provide a declaration if NEED_DECLARATION_FREE. * tree.c (free): Provide a declaration if NEED_DECLARATION_FREE. * rtl.h (free): Remove declaration. * tree.h (free): Remvoe declaration. * configure: Rebuilt. From-SVN: r14989
1997-08-11* Integrate Haifa instruction scheduler.Jeffrey A Law1-0/+1
* Integrate regmove pass. See ChangeLog for deatils. From-SVN: r14770
1997-08-11* Integrate alias analysis changes from jfc@mit.eduJeffrey A Law1-1/+20
* Makefile.in (OBJS): Add alias.o (alias.o): Add dependencies. * alias.c: New file. * sched.c: Remove alias analysis code. It lives in alias.c now. (reg_last_uses_size): Declare. (sched_analyze_2): Add new arguments to true_dependence. (sched_analyze_insn): Use reg_last_uses_size instead of max_reg. (schedule_block): Initialize reg_last_uses_size. (schedule_insns): Always call init_alias_analysis. * calls.c (expand_call): Note calls to malloc, calloc, and realloc; mark return value from such functions as a pointer and keep track of them for alias analysis. If a return value from a function is a pointer, mark it as such. * combine.c (distribute_notes): Handle REG_NOALIAS. * cse.c (struct write_data): Delete. No longer needed. (invalidate): Don't call set_nonvarying_address_components anymore. Use true_dependence to decide if an entry should be removed from the hash table. (invalidate_memory): Remove WRITES argument, simplify appropriately. Fix all callers. (note_mem_written): Similarly for WRITE_PTR argument. (invalidate_from_clobbers): Similarly for W argument. (invalidate_for_call): Remove memory elements from the hash table. (refers_to_mem_p, cse_rtx_addr_varies_p): Deleted. (cse_rtx_varies_p): New function. Derived from old cse_rtx_addr_varies_p. (cse_insn): Remove WRITES_MEMORY and INIT variables and all references. Don't call note_mem_written anymore. Stack pushes invalidate the stack pointer if PUSH_ROUNDING is defined. No longer need to call cse_rtx_addr_varies_p to decide if a MEM should be invalidated. (skipped_writes_memory): Remove variable. (invalidate_skipped_set): Simplify and wewrite to use invalidate_memory. (invalidate_skipped_block): Simplify for new alias analysis code. (cse_set_around_loop): Likewise. (cse_main): Call init_alias_analysis. * flags.h (flag_alias_check, flag_argument_noalias): Declare. * toplev.c (flag_alias_check, flag_argument_noalias): Define. (f_options): Add new alias checking arguments. (main): Set flag_alias_check when optimizing. * local_alloc (validate_equiv_mem_from_store): Add new arguments to true_dependence. (memref_referenced_p): Likewise. * loop.c (NUM_STORES): Increase to 30. (prescan_loop): Only non-constant calls set unknown_address_altered. (invariant_p): Add new arguments to true_dependence. (record_giv): Initialize unrolled and shared fields. (emit_iv_add_mult): Call record_base_value as needed. * loop.h (struct induction): Add unrolled and shared fields. * unroll.c (unroll_loop): Call record_base_value as needed. (copy_loop_body): Likewise. (final_biv_value): Likewise. (final_giv_value): Likewise. (find_splittable_regs): Likewise. Only create one new pseudo if we have multiple address GIVs that were combined with the same dst_reg GIV. Note when a new register is created due to unrolling. * rtl.c (reg_note_name): Add REG_NOALIAS. * rtl.h (enum reg_note): Similarly. (rtx_varies_p, may_trap_p, side_effects_p): Declare. (volatile_refs_p, volatile_insn_p, remove_note): Likewise. (note_stores, refers_to_regno_p, reg_overlap_mentioned_p): Likewise. (true_dependence, read_dependence, anti_dependence): Likewise. (output_dependence, init_alias_analysis, end_alias_analysis): Likewise. (mark_user_reg, mark_reg_pointer): Likewise. jfc's alias analysis code. From-SVN: r14768
1997-07-15Declare replace_regsMichael Meissner1-0/+1
From-SVN: r14447
1997-03-28rtl.h (enum reg_note): Add REG_BR_PROB and REG_EXEC_COUNT.Doug Evans1-1/+15
* rtl.h (enum reg_note): Add REG_BR_PROB and REG_EXEC_COUNT. (REG_BR_PROB_BASE): Define. (NOTE_REPEATED_LINE_NUMBER): Define. From-SVN: r13820
1997-03-18Update REG_EQUIV comment for assign_parms changeIan Lance Taylor1-7/+9
From-SVN: r13735
1996-12-13xJason Merrill1-0/+5
From-SVN: r13305
1996-11-15(gen_rtvec_vv): Declare.Richard Kenner1-0/+1
From-SVN: r13168
1996-07-23install EH codeMike Stump1-0/+3
From-SVN: r12548
1996-07-03formatting tweaksMike Stump1-6/+6
From-SVN: r12390
1996-04-15rtl.h: #include "gansidecl.h".Doug Evans1-48/+2
* rtl.h: #include "gansidecl.h". (PROTO,VPROTO,PVPROTO,VPROTO,VA_START,STDIO_PROTO): Delete. (NULL,GENERIC_PTR,NULL_PTR): Delete. From-SVN: r11798
1996-02-12(INLINE_REGNO_POINTER_FLAG, INLINE_REGNO_POINTER_ALIGN):Jim Wilson1-2/+2
Add one to array index. From-SVN: r11248
1996-01-31regs.h (regno_pointer_align, [...]): Delete from here...Richard Earnshaw1-0/+5
* regs.h (regno_pointer_align, REGNO_POINTER_ALIGN): Delete from here... * rtl.h (regno_pointer_align, REGNO_POINTER_ALIGN): ... and put them here. From-SVN: r11140
1995-12-31(assign_temp): Add extra arg.Richard Kenner1-1/+2
From-SVN: r10922
1995-12-29* rtl.h (assign_temp): New declaration.Per Bothner1-0/+1
From-SVN: r10900
1995-12-27(INLINE_REGNO_{RTX,POINTER_FLAG,POINTER_ALIGN}): New macros.Richard Kenner1-1/+7
(gen_inline_header): Add three new parms. From-SVN: r10874
1995-06-15Update FSF address.Richard Kenner1-1/+2
From-SVN: r9964
1995-05-16Fix typos in comments.Richard Kenner1-1/+1
From-SVN: r9712
1995-04-07(convert_memory_address): Add extra arg.Richard Kenner1-0/+1
From-SVN: r9330
1995-03-18(emit_insns_after): Add declaration.Richard Kenner1-0/+1
From-SVN: r9203
1995-03-08(FORCED_LABELS): New field; other fields adjusted.Richard Kenner1-6/+10
(gen_inline_header_rtx): New parm FORCED_LABELS. From-SVN: r9135
1994-09-02Add better error messages than abort to reload1, and print insn involed.Michael Meissner1-0/+4
From-SVN: r8016
1994-05-06(CALL_INSN_FUNCTION_USAGE): New macro.Richard Kenner1-0/+11
(find_reg{,no}_fusage): Prototype for new function. From-SVN: r7234
1994-04-21If TREE_CODE undefined, make an incomplete union for tree.Richard Kenner1-21/+21
(STDIO_PROTO): Define here if not already defined. (read_rtx): Use STDIO_PROTO. (output_constant_def, immed_real_const): Use "union tree_node *". (immed_real_const_1): Move declaration to real.h. (rtx_to_tree_code): Supply prototype. From-SVN: r7106
1994-04-20(choose_hard_reg_mode): Declare.Doug Evans1-0/+1
From-SVN: r7084
1994-03-11(PVPROTO): New macro.Richard Kenner1-2/+5
From-SVN: r6743