1. 28 Aug, 1997 1 commit
    • flags.h (flag_move_all_movables): Declare. · e5eb27e5
              * flags.h (flag_move_all_movables): Declare.
              (flag_reduce_all_givs): Likewise.
              * loop.c (move_movables): Handle flag_move_all_movables.
              (strength_reduce): Handle flag_reduce_all_givs.
              * toplev.c (flag_move_all_movables): Define.
              (flag_reduce_all_givs): Likewise.
              (f_options): Add -fmove-all-movables and -freduce-all-givs.
              * invoke.texi: Document new options, including alias stuff that
              wasn't included last time.
      Two of the "Tooning" options :-)
      
      From-SVN: r14987
      Jeffrey A Law committed
  2. 15 Aug, 1997 1 commit
  3. 12 Aug, 1997 1 commit
  4. 11 Aug, 1997 1 commit
    • * 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
  5. 02 Aug, 1997 1 commit
  6. 01 Aug, 1997 1 commit
  7. 29 Jul, 1997 1 commit
  8. 28 Jul, 1997 1 commit
  9. 18 Jul, 1997 1 commit
  10. 17 Jul, 1997 1 commit
  11. 14 Jul, 1997 2 commits
  12. 19 Jun, 1997 1 commit
  13. 23 Apr, 1997 1 commit
  14. 21 Apr, 1997 1 commit
  15. 13 Apr, 1997 1 commit
  16. 28 Mar, 1997 1 commit
    • toplev.c (branch_prob_dump, [...]): New variables. · 0d332add
      	* toplev.c (branch_prob_dump, profile_arc_flag, flag_test_coverage,
      	flag_branch_probabilities, branch_prob_dump_file, branch_prob_time):
      	New variables.
      	(f_options): Add profile-arcs, test-coverage, and
      	branch-probabilities.
      	(compile_file): Set branch_prob_time.  Pass flag_test_coverage to
      	init_emit_once.  Handle branch_prob_dump.  Call init_branch_prob.
      	Call end_branch_prob. Call output_func_start_profiler.
      	(rest_of_compilation): Handle branch_prob_dump.  Call new
      	branch_prob pass.
      	(main): Set branch_prob_dump.
      
      From-SVN: r13823
      Doug Evans committed
  17. 16 Feb, 1997 1 commit
  18. 07 Feb, 1997 1 commit
  19. 20 Jan, 1997 1 commit
  20. 19 Jan, 1997 2 commits
  21. 14 Dec, 1996 1 commit
  22. 12 Dec, 1996 1 commit
  23. 09 Dec, 1996 1 commit
  24. 07 Dec, 1996 1 commit
  25. 20 Nov, 1996 1 commit
  26. 15 Nov, 1996 2 commits
    • sdbout.c (current_file): New global. · cc694a81
      	* sdbout.c (current_file): New global.
      	(PUT_SDB_SRC_FILE): New PUT_SDB_FOO macro.
      	(sdbout_init): Initialize current_file ifdef MIPS_DEBUGGING_INFO.
      	(sdbout_{start_new,resume_previous}_source_file): New functions.
      	* toplev.c (debug_{start,end}_source_file): Call them if SDB_DEBUG.
      	* mips/mips.h (PUT_SDB_SRC_FILE): Define.
      
      From-SVN: r13179
      Doug Evans committed
    • x · 9a666dda
      From-SVN: r13160
      Jason Merrill committed
  27. 09 Nov, 1996 1 commit
  28. 15 Oct, 1996 1 commit
  29. 12 Oct, 1996 1 commit
  30. 11 Oct, 1996 1 commit
  31. 05 Oct, 1996 1 commit
  32. 03 Oct, 1996 2 commits
  33. 24 Sep, 1996 1 commit
  34. 28 Aug, 1996 2 commits
  35. 18 Aug, 1996 1 commit