1. 12 Aug, 1997 1 commit
  2. 11 Aug, 1997 4 commits
    • * Integrate tlink patch from jason@cygnus.com · aa32d841
              * gcc.c (SWITCH_TAKES_ARG): Add 'V', 'B' and 'b'.
              (process_command): Increment n_switches for them.  Don't discard
              their args.  Validate them.
              (main): Escape " marks when creating COLLECT_GCC_OPTIONS.
              From Rohan Lenard.
              (process_command): Set include_prefixes from COMPILER_PATH.
              (main): Set COLLECT_GCC_OPTIONS sooner.
              * confiugre.in: Link ../ld/ld.new to collect-ld rather than real-ld.
              * tlink.c, hash.c, hash.h: New files.
              * Makefile.in (USE_COLLECT2): Always use collect2.
              (collect2): Depend on and link in hash.o and tlink.o.
              (tlink.o, hash.o): Add dependencies.
      
      tlink patches from Jason.
      
      From-SVN: r14769
      Jeffrey A Law committed
    • * Integrate alias analysis changes from jfc@mit.edu · 9ae8ffe7
              * 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
      Jeffrey A Law committed
    • * Integrate reload bugfix from Wilson which enables the PA port · 5fa39bfe
              to bootstrap again.
              * reload1.c (reload): Sum needs for both OPADDR_ADDR and and
              OPERAND_ADDRESS when computing how many registers an insn needs.
              (reload_reg_free_p): OPADDR_ADDR and OPERAND_ADDRESS reloads do
              conflict.
              (reload_reg_free_before_p): Treat OPERAND_ADDRESS reloads just like
              OPADDR_ADDR reload.
              (reload_reg_reaches_end_p): For RELOAD_FOR_OPADDR_ADDR insns, registers
              in reload_reg_use_in_op_addr do not reach the end.
              do not reach the end.
              (reloads_conflict): RELOAD_FOR_OPADDR_ADDR conflicts with
              RELOAD_FOR_OPERAND_ADDRESS.
      
      
      
      Start a new ChangeLog for gcc3.
      
      From-SVN: r14767
      Jeff Law committed
    • Initial revision · 861bb6c1
      From-SVN: r14764
      Jeff Law committed
  3. 07 Aug, 1997 1 commit
  4. 06 Aug, 1997 1 commit
  5. 05 Aug, 1997 1 commit
  6. 02 Aug, 1997 32 commits