1. 17 Jan, 2008 1 commit
  2. 16 Jan, 2008 1 commit
    • re PR rtl-optimization/31396 (Inline code performance much worse than out-of-line) · a03c6d64
      	PR rtl-optimization/31396
      	* regstat.c (regstat_bb_compute_ri): Compute FREQ_CALLS_CROSSED.
      	* cfg.c (dump_reg_info): Print it.
      	* regs.h (struct reg_info_t): add freq_calls_crossed.
      	(REG_FREQ_CALLS_CROSSED): New macro.
      	* global.c (global_alloc): Compute freq_calls_crossed for allocno.
      	(find_reg): Update call of CALLER_SAVE_PROFITABLE.
      	* regmove.c (optimize_reg_copy_1, optimize_reg_copy_2, fixup_match_2,
      	regmove_optimize): Update call crossed frequencies.
      	* local-alloc.c (struct qty): Add freq_calls_crossed.
      	(alloc_qty): Copute freq_calls_crossed.
      	(update_equiv_regs, combine_regs): Update REG_FREQ_CALLS_CROSSED.
      	(find_free_reg): Update call of CALLER_SAVE_PROFITABLE.
      	* ra.h (struct allocno): Add freq_calls_crossed.
      
      From-SVN: r131576
      Jan Hubicka committed
  3. 10 Oct, 2007 1 commit
  4. 05 Oct, 2007 1 commit
    • ra-conflict.c: Include "sparseset.h". · b4da855a
      	* ra-conflict.c: Include "sparseset.h".
      	(conflicts): Change to HOST_WIDEST_FAST_INT.
      	(allocnos_live): Redefine variable as a sparseset.
      	(SET_ALLOCNO_LIVE, CLEAR_ALLOCNO_LIVE, GET_ALLOCNO_LIVE): Delete macros.
      	(allocno_row_words): Removed global variable.
      	(partial_bitnum, max_bitnum, adjacency_pool, adjacency): New variables.
      	(CONFLICT_BITNUM, CONFLICT_BITNUM_FAST): New defines.
      	(conflict_p, set_conflict_p, set_conflicts_p): New functions.
      	(record_one_conflict_between_regnos): Cache allocno values and reuse.
      	Use set_conflict_p.
      	(record_one_conflict): Update uses of allocnos_live to use
      	the sparseset routines.  Use set_conflicts_p.
      	(mark_reg_store): Likewise.
      	(set_reg_in_live): Likewise.
      	(global_conflicts): Update uses of allocnos_live.
      	Use the new adjacency list to visit an allocno's neighbors
      	rather than iterating over all possible allocnos.
      	Call set_conflicts_p to setup conflicts rather than adding
      	them manually.
      	* global.c: Comments updated.  
      	(CONFLICTP): Delete define.
      	(regno_compare): New function.  Add prototype.
      	(global_alloc): Sort the allocno to regno mapping according to
      	which basic blocks the regnos are referenced in.  Modify the
      	conflict bit matrix to a compressed triangular bitmatrix.
      	Only allocate the conflict bit matrix and adjacency lists if
      	we are actually going to allocate something.
      	(expand_preferences): Use conflict_p.  Update uses of allocnos_live.
      	(prune_preferences): Use the FOR_EACH_CONFLICT macro to visit an
      	allocno's neighbors rather than iterating over all possible allocnos.
      	(mirror_conflicts): Removed function.
      	(dump_conflicts): Iterate over regnos rather than allocnos so
      	that all dump output will be sorted by regno number.
      	Use the FOR_EACH_CONFLICT macro.
      	* ra.h: Comments updated.
      	(conflicts): Update prototype to HOST_WIDEST_FAST_INT.
      	(partial_bitnum, max_bitnum, adjacency, adjacency_pool): Add prototypes.
      	(ADJACENCY_VEC_LENGTH, FOR_EACH_CONFLICT): New defines.
      	(adjacency_list_d, adjacency_iterator_d): New types.
      	(add_neighbor, adjacency_iter_init, adjacency_iter_done,
      	adjacency_iter_next, regno_basic_block): New static inline functions.
      	(EXECUTE_IF_SET_IN_ALLOCNO_SET): Removed define.
      	(conflict_p): Add function prototype.
      	* sparseset.h, sparseset.c: New files.
      	* Makefile.in (OBJS-common): Add sparseset.o.
      	(sparseset.o): New rule.
      
      From-SVN: r129037
      Peter Bergner committed
  5. 02 Oct, 2007 1 commit
    • ra-conflict.c: New file. · ba49cb7b
      2007-09-02  Kenneth Zadeck <zadeck@naturalbridge.com>
      
      	* ra-conflict.c: New file.
      	* ra.h: New file.
      	* reload.c (push_reload, find_dummy_reload): Change DF_RA_LIVE
      	usage to DF_LIVE usage.
      	* rtlanal.c (subreg_nregs_with_regno): New function.  
      	* df-scan.c (df_def_record_1, df_uses_record): Add code to set
      	DF_REF_EXTRACT, DF_REF_STRICT_LOWER_PART, and DF_REF_SUBREG flags.
      	(df_has_eh_preds): Removed.
      	(df_bb_refs_collect, df_bb_refs_collect, df_bb_refs_collect,
      	df_exit_block_uses_collect): Changed call from df_has_eh_preds to
      	bb_has_eh_pred.
      	* global.c (allocno, max_allocno, conflicts, allocno_row_words,
      	reg_allocno, EXECUTE_IF_SET_IN_ALLOCNO_SET): Moved to ra.h
      	(SET_ALLOCNO_LIVE, CLEAR_ALLOCNO_LIVE): Moved to ra-conflicts.c.
      	(regs_set, record_one_conflict, record_conflicts, mark_reg_store,
      	mark_reg_clobber, mark_reg_conflicts, mark_reg_death): Deleted.
      	(global_alloc): Turn off rescanning insns after call to
      	global_conflicts and added call to set_preferences.
      	(global_conflicts): Moved to ra-alloc.c.
      	(set_preferences_1, set_preferences): New function.
      	(mirror_conflicts): Changed types for various variables.
      	(mark_elimination): Change DF_RA_LIVE
      	usage to DF_LIVE usage.
      	(build_insn_chain): Rewritten from scratch and made local.
      	(print_insn_chain, print_insn_chains): New functions.
      	(dump_conflicts): Do not print conflicts for fixed_regs.
      	(rest_of_handle_global_alloc): Turn off insn rescanning.
      	* hard-reg-set.h: Fixed comment.
      	* local-alloc.c (update_equiv_regs): Change DF_RA_LIVE
      	usage to DF_LIVE usage and delete refs to TOP sets.
      	(block_alloc): Mark regs as live if they are in the artificial
      	defs at top of block.
      	(find_stack_regs): New function.
      	(rest_of_handle_local_alloc): Changed urec problem to live
      	problem and do not turn off df rescanning.
      	* df.h (DF_UREC, DF_UREC_BB_INFO, DF_LIVE_TOP, DF_RA_LIVE_IN,
      	DF_RA_LIVE_TOP, DF_RA_LIVE_OUT, df_urec_bb_info, df_urec,
      	df_urec_add_problem, df_urec_get_bb_info, df_has_eh_preds): Removed.
      	(DF_CHAIN, DF_NOTE, DF_CHAIN): Renumbered.
      	(DF_REF_EXTRACT, DF_REF_STRICT_LOWER_PART, DF_REF_SUBREG): New
      	fields in df_ref_flags.  The rest have been renumbered.  
      	* init-regs.c (initialize_uninitialized_regs): Enhanced debugging
      	at -O1.
      	* rtl.h (subreg_nregs_with_regno): New function.
      	* df-problems.c: (df_get_live_out, df_get_live_in,
      	df_get_live_top): Removed reference to DF_RA_LIVE.
      	(df_lr_reset, df_lr_transfer_function, df_live_free_bb_info,
      	df_live_alloc, df_live_reset, df_live_local_finalize,
      	df_live_free): Make top set only if different from in set.
      	(df_lr_top_dump, df_live_top_dump): Only print top set if
      	different from in set.
      	(df_lr_bb_local_compute): Removed unnecessary check.
      	(df_urec_problem_data, df_urec_set_bb_info, df_urec_free_bb_info, 
      	df_urec_alloc, df_urec_mark_reg_change, earlyclobber_regclass, 
      	df_urec_check_earlyclobber, df_urec_mark_reg_use_for_earlyclobber,
      	df_urec_mark_reg_use_for_earlyclobber_1, df_urec_bb_local_compute,
      	df_urec_local_compute, df_urec_init, df_urec_local_finalize, 
      	df_urec_confluence_n, df_urec_transfer_function, df_urec_free, 
      	df_urec_top_dump, df_urec_bottom_dump, problem_UREC,
      	df_urec_add_problem): Removed.
      	(df_simulate_fixup_sets): Changed call from df_has_eh_preds to
      	bb_has_eh_pred. 
      	* Makefile.in (ra-conflict.o, ra.h): New dependencies.
      	* basic_block.h (bb_has_abnormal_pred): New function.
      	* reload1.c (compute_use_by_pseudos): Change DF_RA_LIVE
      	usage to DF_LIVE usage.
      
      From-SVN: r128957
      Kenneth Zadeck committed
  6. 17 Jan, 2005 1 commit
    • common.opt (-fnew-ra): Remove. · cd280abb
      2005-01-17  Paolo Bonzini  <bonzini@gnu.org>
      
      	* common.opt (-fnew-ra): Remove.
      	* ra*.*: Remove.
      	* toplev.h (flag_new_regalloc): Remove.
      	* Makefile.in (ra*.*): Don't mention.
      	* passes.c (rest_of_handle_new_regalloc): Remove.
      	(rest_of_handle_combine, rest_of_compilation): Always consider
      	flag_new_regalloc as false.
      	* doc/invoke.texi: Don't document -fnew-ra.
      
      From-SVN: r93759
      Paolo Bonzini committed
  7. 29 Jul, 2004 1 commit
    • ra.h (single_reg_in_regclass): Declare. · 727d709b
      2004-07-29  Pat Haugen  <pthaugen@us.ibm.com>
      
              * ra.h (single_reg_in_regclass): Declare.
              * ra.c (single_reg_in_regclass): Define.
              (first_hard_reg): New.
              (init_ra): Initialize single_reg_in_regclass.
              * ra-colorize.c (ok_class): New.
              (coalesce, aggressive_coalesce, extended_coalesce_2): Use it.
      
      From-SVN: r85300
      Pat Haugen committed
  8. 26 Jul, 2004 1 commit
  9. 03 Jun, 2004 1 commit
    • Makefile.in (RA_H, [...]): New. · 59587b18
      2004-06-03  Jerry Quinn  <jlquinn@optonline.net>
      
      	* Makefile.in (RA_H, RESOURCE_H, SCHED_INT_H, CFGLAYOUT_H,
      	CFGLOOP_H, DF_H, DDG_H, TREE_SSA_LIVE_H): New.
      	(TARGET_H): Add insn-modes.h.
      	(tree-ssa.o, tree-cfg.o, tree-ssa-loop.o, toplev.o, passes.o,
      	loop.o, loop-doloop.o, unroll.o, cfgloop.o, cfgloopanal.o,
      	loop-iv.o, cfgloopmanip.o, loop-init.o, loop-unswitch.o,
      	loop-unroll.o, ddg.o, modulo-sched.o, predict.o,
      	cfglayout.o, ifcvt.o): Replace cfgloop.h with CFGLOOP_H.
      	(toplev.o, passes.o, cfghooks.o, cfgloopmanip.o, loop-init.o,
      	loop-unswitch.o, loop-unroll.o, ddg.o, modulo-sched.o,
      	bb-reorder.o, tracer.o, cfglayout.o): Replace cfglayout.h with
      	CFGLAYOUT_H.
      	(ra.o, ra-build.o, ra-colorize.o, ra-debug.o, ra-rewrite.o):
      	Replace ra.h with RA_H.
      	(resource.o, regrename.o, insn-conditions.o, insn-emit.o,
      	insn-recog.o): Replace resource.h with RESOURCE_H.
      	(ddg.o, modulo-sched.o, haifa-sched.o, sched-deps.o, sched-rgn.o,
      	sched-ebb.o, sched-vis.o, out_object_file):  Replace sched-int.h
      	with SCHED_INT_H.
      	(web.o, lcm.o, df.o, ra.o, ra-build.o, ra-colorize.o, ra-debug.o,
      	ra-rewrite.o): Replace df.h with DF_H.
      	(ddg.o, modulo-sched.o): Replace ddf.h with DDG_H.
      	(tree-outof-ssa.o, tree-ssa-live.o, tree-ssa-copyrename.o):
      	Replace tree-ssa-live.h with TREE_SSA_LIVE_H.
      	(insn-conditions.o): Remove unused reload.h.
      	* cfglayout.h: Add include guard.  Include basic-block.h.
      	* cfgloop.h: Add include guard.  Include basic-block.h, rtl.h.
      	* ddg.h: Include sbitmap.h, basic-block.h, df.h.
      	* df.h: Add include guard.  Include bitmap.h, sbitmap.h,
      	basic-block.h.
      	* genconditions.c:  Remove reload.h.
      	* ra.h: Add include guard.  Include bitmap.h, sbitmap.h,
      	hard-reg-set.h, insn-modes.h.
      	* resource.h: Add include guard.  Include hard-reg-set.h.
      	* sched-int.h:  Add include guard.  Include insn-attr.h,
      	basic-block.h, rtl.h.
      	* target.h: Add include guard.  Include insn-modes.h.
      	* tree-ssa-live.h: Include partition.h.
      
      From-SVN: r82600
      Jerry Quinn committed
  10. 21 Jan, 2004 1 commit
    • alias.c, [...]: Update copyright. · d9221e01
      	* alias.c, basic-block.h, c-common.c, c-common.h,
      	c-cppbuiltin.c, c-opts.c, c-pragma.c, c-pretty-print.c,
      	calls.c, cfg.c, cfgcleanup.c, cfgrtl.c, cgraph.h, collect2.c,
      	combine.c, cppcharset.c, cpphash.h, cppinit.c, cpplib.c,
      	cpplib.h, cppmacro.c, crtstuff.c, cselib.c, cselib.h,
      	defaults.h, df.c, dominance.c, et-forest.c, expmed.c, expr.c,
      	expr.h, fix-header.c, function.h, gcc.c, gcse.c, genattrtab.c,
      	genautomata.c, genconditions.c, genemit.c, genflags.c,
      	gengtype.c, gengtype.h, genopinit.c, genrecog.c, gensupport.c,
      	ggc-zone.c, graph.c, haifa-sched.c, input.h, integrate.c,
      	langhooks-def.h, langhooks.c, langhooks.h, line-map.c,
      	line-map.h, local-alloc.c, optabs.c, optabs.h, postreload.c,
      	ra.h, recog.c, reg-stack.c, regmove.c, reload.c, reorg.c,
      	rtl.c, sched-deps.c, sched-ebb.c, sdbout.c, system.h,
      	target.h, targhooks.c, toplev.h, tree-inline.c, unwind-pe.h,
      	unwind.h, varray.c, varray.h: Update copyright.
      
      From-SVN: r76302
      Kazu Hirata committed
  11. 16 Jan, 2004 1 commit
    • re PR target/13608 (Incorrect code with -O3 -ffast-math) · 965514bd
      	* i386.md (load_tp_di): Fix pasto.
      
      	PR opt/13608
      	* i386.c (ix86_compute_frame_layout): Fix for alloca on leaf function.
      
      	* c-pretty-print.c (pp_c_type_cast, pp_c_abstract_declarator,
      	pp_c_character_constant, pp_c_floating_constant,
      	pp_c_additive_expression, pp_c_shift_expression,
      	pp_c_equality_expression, pp_c_and_expression,
      	pp_c_exclusive_or_expression, pp_c_inclusive_or_expression,
      	pp_c_logical_and_expression): Remove inline modifier.
      	* dwarf2out.c (get_AT): Likewise.
      	* et-forest.c (et_splay): Likewise.
      	* ra.h (ra_alloc, ra_calloc): Likewise
      
      	* mangle.c (write_mangled_name): Remove inline modifier.
      
      From-SVN: r75988
      Jan Hubicka committed
  12. 12 Jul, 2003 1 commit
  13. 01 Jul, 2003 1 commit
    • basic-block.h: Fix comment typos. · e0bb17a8
      	* basic-block.h: Fix comment typos.
      	* bb-reorder.c: Likewise.
      	* c-format.c: Likewise.
      	* cfgcleanup.c: Likewise.
      	* cfghooks.h: Likewise.
      	* cfgloop.c: Likewise.
      	* cfgloopmanip.c: Likewise.
      	* cfgrtl.c: Likewise.
      	* cgraph.h: Likewise.
      	* cgraphunit.c: Likewise.
      	* combine.c: Likewise.
      	* convert.c: Likewise.
      	* dbxout.c: Likewise.
      	* df.c: Likewise.
      	* df.h: Likewise.
      	* diagnostic.c: Likewise.
      	* dwarf2out.c: Likewise.
      	* et-forest.h: Likewise.
      	* flow.c: Likewise.
      	* fold-const.c: Likewise.
      	* function.h: Likewise.
      	* gcov-io.h: Likewise.
      	* gcov.c: Likewise.
      	* gcse.c: Likewise.
      	* genautomata.c: Likewise.
      	* ggc-common.c: Likewise.
      	* ggc-page.c: Likewise.
      	* loop-unroll.c: Likewise.
      	* loop-unswitch.c: Likewise.
      	* loop.c: Likewise.
      	* mips-tfile.c: Likewise.
      	* optabs.c: Likewise.
      	* ra-build.c: Likewise.
      	* ra-colorize.c: Likewise.
      	* ra-rewrite.c: Likewise.
      	* ra.h: Likewise.
      	* regmove.c: Likewise.
      	* reload.c: Likewise.
      	* rtlanal.c: Likewise.
      	* sched-ebb.c: Likewise.
      	* sched-int.h: Likewise.
      	* sched-vis.c: Likewise.
      	* sreal.c: Likewise.
      	* ssa-ccp.c: Likewise.
      	* ssa.c: Likewise.
      	* toplev.c: Likewise.
      	* tree-inline.c: Likewise.
      	* value-prof.c: Likewise.
      	* value-prof.h: Likewise.
      
      From-SVN: r68770
      Kazu Hirata committed
  14. 07 Mar, 2003 1 commit
    • df.h (enum df_ref_flags.DF_REF_STRIPPED): New. · 50aac998
              * df.h (enum df_ref_flags.DF_REF_STRIPPED): New.
              (DF_FOR_REGALLOC): New.
              * df.c (df_ref_record): Set DF_REF_STRIPPED.
              (read_modify_subreg_p): Simplify.
              (df_def_record_1, df_uses_record): Set DF_REF_MODE_CHANGE more often.
              Use DF_FOR_REGALLOC.
              * ra.h (struct web): New member subreg_stripped.
              (invalid_mode_change_regs): Declare.
              * ra.c (invalid_mode_change_regs): New.
              (init_ra): Initialize it.
              * ra-build.c (init_one_web_common, remember_web_was_spilled): Use it.
              Use CANNOT_CHANGE_MODE_CLASS as ifdef guard.
              (reinit_one_web, parts_to_web_1): Deal with subreg_stripped.
              * ra-colorize.c (colorize_one_web): Use invalid_mode_change_regs.
              Use CANNOT_CHANGE_MODE_CLASS as ifdef guard.
      
      From-SVN: r63952
      Michael Matz committed
  15. 17 Jan, 2003 1 commit
    • ifcvt.c: Fix comment typos. · 3d042e77
      	* ifcvt.c: Fix comment typos.
      	* lcm.c: Likewise.
      	* libgcc2.c: Likewise.
      	* local-alloc.c: Likewise.
      	* loop.c: Likewise.
      	* predict.c: Likewise.
      	* ra-build.c: Likewise.
      	* ra.c: Likewise.
      	* ra-colorize.c: Likewise.
      	* ra.h: Likewise.
      	* ra-rewrite.c: Likewise.
      	* regmove.c: Likewise.
      	* reload.h: Likewise.
      	* rtlanal.c: Likewise.
      	* toplev.c: Likewise.
      	* tree.h: Likewise.
      	* unwind-dw2-fde-glibc.c: Likewise.
      	* vmsdbgout.c: Likewise.
      
      From-SVN: r61421
      Kazu Hirata committed
  16. 25 Dec, 2002 1 commit
    • output.h: Fix comment typos. · d55d8fc7
      	* output.h: Fix comment typos.
      	* predict.c: Likewise.
      	* print-tree.c: Likewise.
      	* profile.c: Likewise.
      	* ra-build.c: Likewise.
      	* ra-colorize.c: Likewise.
      	* ra-debug.c: Likewise.
      	* ra-rewrite.c: Likewise.
      	* ra.c: Likewise.
      	* ra.h: Likewise.
      	* real.c: Likewise.
      	* recog.c: Likewise.
      	* reg-stack.c: Likewise.
      	* regclass.c: Likewise.
      
      From-SVN: r60502
      Kazu Hirata committed
  17. 13 Dec, 2002 1 commit
    • c-decl.c: Fix a comment typo. · 09da1532
      	* c-decl.c: Fix a comment typo.
      	* cfg.c: Likewise.
      	* cfgcleanup.c: Likewise.
      	* cfglayout.c: Likewise.
      	* cfgrtl.c: Likewise.
      	* c-typeck.c: Likewise.
      	* dominance.c: Likewise.
      	* dwarf2asm.c: Likewise.
      	* dwarfout.c: Likewise.
      	* expmed.c: Likewise.
      	* expr.c: Likewise.
      	* final.c: Likewise.
      	* flow.c: Likewise.
      	* function.c: Likewise.
      	* gcc.c: Likewise.
      	* genautomata.c: Likewise.
      	* integrate.c: Likewise.
      	* loop.c: Likewise.
      	* loop.h: Likewise.
      	* output.h: Likewise.
      	* profile.c: Likewise.
      	* ra.h: Likewise.
      	* reload1.c: Likewise.
      	* reload.c: Likewise.
      	* sched-rgn.c: Likewise.
      	* stmt.c: Likewise.
      	* tree.h: Likewise.
      	* vmsdbgout.c: Likewise.
      
      From-SVN: r60085
      Kazu Hirata committed
  18. 15 Jul, 2002 1 commit
    • [multiple changes] · ed8d2920
      2002-07-15  Michael Matz  <matz@suse.de>,
                  Daniel Berlin  <dberlin@dberlin.org>,
      	    Denis Chertykov  <denisc@overta.ru>
      
      	Add a new register allocator.
      
      	* ra.c: New file.
      	* ra.h: New file.
      	* ra-build.c: New file.
      	* ra-colorize.c: New file.
      	* ra-debug.c: New file.
      	* ra-rewrite.c: New file.
      
      	* Makefile.in (ra.o, ra-build.o, ra-colorize.o, ra-debug.o,
      	(ra-rewrite.o): New .o files for libbackend.a.
      	(GTFILES): Add basic-block.h.
      
      	* toplev.c (flag_new_regalloc): New.
      	(f_options): New option "new-ra".
      	(rest_of_compilation): Call initialize_uninitialized_subregs()
      	only for the old allocator.  If flag_new_regalloc is set, call
      	new allocator, instead of local_alloc(), global_alloc() and
      	friends.
      
      	* doc/invoke.texi: Document -fnew-ra.
      	* basic-block.h (FOR_ALL_BB): New.
      	* config/rs6000/rs6000.c (print_operand): Write small constants
      	as @l+80.
      
      	* df.c (read_modify_subreg_p): Narrow down cases for a rmw subreg.
      	(df_reg_table_realloc): Make size at least as large as max_reg_num().
      	(df_insn_table_realloc): Size argument now is absolute, not relative.
      	Changed all callers.
      
      	* gengtype.c (main): Add the pseudo-type "HARD_REG_SET".
      	* regclass.c (reg_scan_mark_refs): Ignore NULL rtx's.
      
      	2002-06-20  Michael Matz  <matz@suse.de>
      
      	* df.h (struct ref.id): Make unsigned.
      	* df.c (df_bb_reg_def_chain_create): Remove unsigned cast.
      
      	2002-06-13  Michael Matz  <matz@suse.de>
      
      	* df.h (DF_REF_MODE_CHANGE): New flag.
      	* df.c (df_def_record_1, df_uses_record): Set this flag for refs
      	involving subregs with invalid mode changes, when
      	CLASS_CANNOT_CHANGE_MODE is defined.
      
      	2002-05-07  Michael Matz  <matz@suse.de>
      
      	* reload1.c (fixup_abnormal_edges): Don't insert on NULL edge.
      
      	2002-05-03  Michael Matz  <matz@suse.de>
      
      	* sbitmap.c (sbitmap_difference): Accept sbitmaps of different size.
      
      	Sat Feb  2 18:58:07 2002  Denis Chertykov  <denisc@overta.ru>
      
      	* regclass.c (regclass): Work with all regs which have sets or
      	refs.
      	(reg_scan_mark_refs): Count regs inside (clobber ...).
      
      	2002-01-04  Michael Matz  <matzmich@cs.tu-berlin.de>
      
      	* df.c (df_ref_record): Correctly calculate SUBREGs of hardregs.
      	(df_bb_reg_def_chain_create, df_bb_reg_use_chain_create): Only
      	add new refs.
      	(df_bb_refs_update): Don't clear insns_modified here, ...
      	(df_analyse): ... but here.
      
      	* sbitmap.c (dump_sbitmap_file): New.
      	(debug_sbitmap): Use it.
      
      	* sbitmap.h (dump_sbitmap_file): Add prototype.
      
      	2001-08-07  Daniel Berlin  <dan@cgsoftware.com>
      
      	* df.c (df_insn_modify): Grow the UID table if necessary, rather
      	than assume all emits go through df_insns_modify.
      
      	2001-07-26  Daniel Berlin  <dan@cgsoftware.com>
      
      	* regclass.c (reg_scan_mark_refs): When we increase REG_N_SETS,
      	increase REG_N_REFS (like flow does), so that regclass doesn't
      	think a reg is useless, and thus, not calculate a class, when it
      	really should have.
      
      	2001-01-28  Daniel Berlin  <dberlin@redhat.com>
      
      	* sbitmap.h (EXECUTE_IF_SET_IN_SBITMAP_REV): New macro, needed for
      	dataflow analysis.
      
      From-SVN: r55458
      Michael Matz committed