Commit Graph

30 Commits

Author SHA1 Message Date
Daniel Berlin 97508a6b31 sbitmap.c (BITMAP_DEBUGGING): New macro.
2006-12-27  Daniel Berlin  <dberlin@dberlin.org>

	* sbitmap.c (BITMAP_DEBUGGING): New macro.
	(do_popcount): Ditto.
	(sbitmap_verify_popcount): New function.
	(sbitmap_alloc): Set popcount to NULL, remove set of bytes
	member.
	(sbitmap_alloc_with_popcount): New function.
	(sbitmap_resize): Remove uses of bytes member and update
	popcount.
	(sbitmap_realloc): Remove uses of bytes member.
	(sbitmap_copy): Copy popcount.
	(sbitmap_copy_n): New function.
	(sbitmap_zero): Update popcount cache.
	(sbitmap_ones): Ditto.
	(sbitmap_a_and_b): Ditto.
	(sbitmap_a_or_b): Ditto.
	(sbitmap_a_xor_b): Ditto.
	(sbitmap_union_of_diff_cg): Assert non-existence of popcount
	cache.
	(sbitmap_union_of_diff): Ditto.
	(sbitmap_not): Ditto.
	(sbitmap_difference): Ditto.
	(sbitmap_a_and_b_cg): Ditto.
	(sbitmap_a_xor_b_cg): Ditto.
	(sbitmap_a_or_b_cg): Ditto.
	(sbitmap_a_or_b_and_c_cg): Ditto.
	(sbitmap_a_and_b_or_c_cg): Ditto.
	(sbitmap_intersection_of_succs): Ditto.
	(sbitmap_intersection_of_preds): Ditto.
	(sbitmap_union_of_succs): Ditto.
	(sbitmap_union_of_preds): Ditto.
	(popcount_table): New.
	(sbitmap_elt_popcount): New function.
	(sbitmap_popcount): Ditto.

	* sbitmap.h (sbitmap): Remove bytes member.
	Add popcount member.
	(SET_BIT): Macro turned into function.
	(RESET_BIT): Ditto.
	(SBITMAP_SIZE_BYTES): New macro.
	(sbitmap_free): Free popcount too.
	(sbitmap_alloc_with_popcount): New prototype.
	(sbitmap_copy_n): Ditto.
	(sbitmap_verify_popcount): Ditto.

From-SVN: r120237
2006-12-28 06:23:06 +00:00
Kelley Cook 366ccddb2b Update FSF address.
From-SVN: r101317
2005-06-25 02:02:01 +00:00
Kazu Hirata 108267cd56 sbitmap.h (sbitmap_iter_init): Consistently treat bit_num as the current bit index with no modulo.
* sbitmap.h (sbitmap_iter_init): Consistently treat bit_num as
	the current bit index with no modulo.

From-SVN: r100720
2005-06-07 20:45:08 +00:00
Kazu Hirata b6e7e9af04 sbitmap.h (sbitmap_iterator, [...]): New.
* sbitmap.h (sbitmap_iterator, sbitmap_iter_init,
	sbitmap_iter_cond, sbitmap_iter_next): New.
	* bt-load.c, cfganal.c, combine.c, ddg.c, flow.c,
	modulo-sched.c, sbitmap.c, sched-rgn.c, tree-into-ssa.c,
	tree-outof-ssa.c, tree-ssa-alias.c, tree-ssa-live.c: Update
	uses of EXECUTE_IF_SET_IN_SBITMAP to the new style.

From-SVN: r100709
2005-06-07 14:30:25 +00:00
Jeff Law 874437bca0 sbitmap.c (sbitmap_any_common_bits): New function.
* sbitmap.c (sbitmap_any_common_bits): New function.
        * sbitmap.h (sbitmap_any_common_bits): Prototype.
        * modulo-sched.c (sms_schedule_by_order): Use sbitmap_any_common_bits
        No longer allocate/free "psp", "pss" sbitmaps.
        * tree-ssa-alias.c (compute_flow_insensitive_aliasing): Similarly for
        the "res" sbitmap.
        (group_aliases): Similarly.

From-SVN: r91550
2004-11-30 17:33:05 -07:00
Kazu Hirata eb84665417 sbitmap.h (EXECUTE_IF_SET_IN_SBITMAP): Don't access PTR beyond its end.
* sbitmap.h (EXECUTE_IF_SET_IN_SBITMAP): Don't access PTR
	beyond its end.

From-SVN: r89475
2004-10-22 19:48:43 +00:00
Kazu Hirata 193d7268a8 sbitmap.h (EXECUTE_IF_SET_IN_SBITMAP): Speed up by shifting the currently visited word to right.
* sbitmap.h (EXECUTE_IF_SET_IN_SBITMAP): Speed up by shifting
	the currently visited word to right.

From-SVN: r89259
2004-10-18 23:56:18 +00:00
Kazu Hirata f30278e8b4 bitmap.c, [...]: Update copyright.
* bitmap.c, bitmap.h, builtin-attrs.def, cfglayout.h,
	collect2.h, conflict.c, coretypes.h, coverage.h, errors.h,
	gcc.h, gcov-dump.c, gen-protos.c, gencheck.c, gencodes.c,
	genconstants.c, gengenrtl.c, genmodes.c, genpeep.c,
	gensupport.h, graph.h, gthr-gnat.c, gthr-gnat.h, gthr-posix.c,
	gthr-posix.h, hard-reg-set.h, hwint.h, integrate.h, libgcc2.c,
	lists.c, machmode.def, mips-tdump.c, opts.h, params.c,
	predict.def, predict.h, protoize.c, reload.h, resource.h,
	rtl-error.c, sbitmap.c, sbitmap.h, sreal.c, tlink.c,
	tree-dump.h, tree-inline.h, unwind-dw2-fde.c, unwind-dw2.c,
	unwind-sjlj.c, value-prof.h: Update copyright.

From-SVN: r89097
2004-10-15 14:47:12 +00:00
Andrew Pinski 99fa891149 re PR rtl-optimization/13987 (compile time regression while compile fold-const.i)
2004-08-30  Andrew Pinski  <apinski@apple.com>

        PR rtl-opt/13987
        * config.host (use_long_long_for_widest_fast_int): New, default is
        off.
        (ia64-*-hpux*): Enable use_long_long_for_widest_fast_int.
        * configure.ac: If use_long_long_for_widest_fast_int, then
        define USE_LONG_LONG_FOR_WIDEST_FAST_INT.
        * configure: Regenerate.
        * config.in: Regenerate.
        * hwint.h (HOST_WIDEST_FAST_INT, HOST_BITS_PER_WIDEST_FAST_INT):
        New: widest integer type supported efficiently in hardware for the
        host.
        * sbitmap.h (SBITMAP_ELT_BITS): Define based on
        HOST_BITS_PER_WIDEST_FAST_INT.
        (SBITMAP_ELT_TYPE): Define based on HOST_WIDEST_FAST_INT.
        * hard-reg-set.h (HARD_REG_ELT_TYPE): Define based on
        HOST_WIDEST_FAST_INT
        instead of HOST_WIDE_INT.
        (HARD_REG_SET_LONGS): Likewise.
        (UHOST_BITS_PER_WIDE_INT): Likewise.
        Change the checks for the fast cases to be based on
        HOST_BITS_PER_WIDES_FAST_INT instead of HOST_BITS_PER_WIDE_INT.

From-SVN: r86816
2004-08-30 17:29:04 -07:00
Diego Novillo 6de9cd9a88 Merge tree-ssa-20020619-branch into mainline.
From-SVN: r81764
2004-05-13 02:41:07 -04:00
Andreas Jaeger 46c5ad278b sbitmap.c: Convert prototypes to ISO C90.
* sbitmap.c: Convert prototypes to ISO C90.
	* sbitmap.h: Likewise.
	* scan-decls.c: Likewise.
	* scan.c: Likewise.
	* sched-deps.c: Likewise.
	* sched-ebb.c: Likewise.
	* sched-int.h: Likewise.
	* sched-rgn.c: Likewise.
	* sched-vis.c: Likewise.
	* sibcall.c: Likewise.
	* simplify-rtx.c: Likewise.
	* sreal.c: Likewise.
	* sreal.h: Likewise.
	* ssa-ccp.c: Likewise.
	* ssa-dce.c: Likewise.
	* ssa.c: Likewise.
	* ssa.h: Likewise.
	* stack.h: Likewise.
	* stmt.c: Likewise.
	* stor-layout.c: Likewise.
	* stringpool.c: Likewise.
	* target.h: Likewise.
	* timevar.c: Likewise.
	* timevar.h: Likewise.
	* tlink.c: Likewise.
	* tracer.c: Likewise.
	* tree-inline.c: Likewise.
	* tree-inline.h: Likewise.
	* tree.c: Likewise.
	* tree.h: Likewise.

From-SVN: r69002
2003-07-06 14:35:56 +02:00
Roger Sayle e360ab394f sbitmap.c (sbitmap_resize): New function.
* sbitmap.c (sbitmap_resize): New function.
	* sbitmap.h (sbitmap_resize): Prototype here.
	* recog.c (split_all_insns): Use sbitmap_resize.

From-SVN: r63058
2003-02-18 19:35:08 +00:00
Michael Matz ed8d29205b [multiple changes]
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
2002-07-15 14:07:06 +00:00
Richard Henderson b47374fa9b sbitmap.c (sbitmap_union_of_diff, [...]): Do not return changed status.
* sbitmap.c (sbitmap_union_of_diff, sbitmap_a_and_b, sbitmap_a_xor_b,
        sbitmap_a_or_b, sbitmap_a_or_b_and_c, sbitmap_a_and_b_or_c):
        Do not return changed status.
        (sbitmap_union_of_diff_cg, sbitmap_a_and_b_cg, sbitmap_a_xor_b_cg,
        sbitmap_a_or_b_cg, sbitmap_a_or_b_and_c_cg, sbitmap_a_and_b_or_c_cg):
        New functions that do return changed status.
        * sbitmap.h: Update decls.
        * gcse.c, lcm.c: Use _cg functions as needed.

From-SVN: r52094
2002-04-09 14:15:38 -07:00
Kazu Hirata cf40364820 predict.c: Fix formatting.
* predict.c: Fix formatting.
	* print-tree.c: Likewise.
	* protoize.c: Likewise.
	* real.h: Likewise.
	* rtl.h: Likewise.
	* sbitmap.h: Likewise.
	* scan.c: Likewise.
	* sched-deps.c: Likewise.
	* sched-vis.c: Likewise.
	* sdbout.c: Likewise.
	* sibcall.c: Likewise.
	* ssa.c: Likewise.
	* ssa-ccp.c: Likewise.
	* ssa-dce.c: Likewise.
	* stmt.c: Likewise.
	* stor-layout.c: Likewise.
	* system.h: Likewise.

From-SVN: r49074
2002-01-22 14:33:35 +00:00
Lars Brinkhoff 1322177dbd Makefile.in, [...]: replace "GNU CC" with "GCC".
* Makefile.in, alias.c, basic-block.h, bb-reorder.c, bitmap.c,
	bitmap.h, builtin-types.def, builtins.c, builtins.def,
	c-aux-info.c, c-common.c, c-common.def, c-common.h,
	c-convert.c, c-decl.c, c-dump.c, c-dump.h, c-errors.c,
	c-format.c, c-lang.c, c-lex.c, c-lex.h, c-parse.in,
	c-pragma.c, c-pragma.h, c-semantics.c, c-tree.h, c-typeck.c,
	caller-save.c, calls.c, collect2.c, collect2.h, combine.c,
	conditions.h, config.gcc, configure.frag, configure.in,
	conflict.c, convert.c, convert.h, cppspec.c, crtstuff.c,
	cse.c, cselib.c, cselib.h, dbxout.c, dbxout.h, defaults.h,
	dependence.c, df.c, df.h, diagnostic.c, diagnostic.h,
	doloop.c, dominance.c, dwarf.h, dwarf2.h, dwarf2asm.c,
	dwarf2asm.h, dwarf2out.c, dwarf2out.h, dwarfout.c,
	emit-rtl.c, errors.c, errors.h, except.c, except.h,
	exgettext, explow.c, expmed.c, expr.c, expr.h, final.c,
	fixproto, flags.h, flow.c, fold-const.c, fp-test.c,
	function.c, function.h, gbl-ctors.h, gcc.c, gcc.h, gcc.hlp,
	gccspec.c, gcov-io.h, gcse.c, genattr.c, genattrtab.c,
	gencheck.c, gencodes.c, genconfig.c, genemit.c,
	genextract.c, genflags.c, gengenrtl.c, genmultilib,
	genopinit.c, genoutput.c, genpeep.c, genrecog.c,
	gensupport.c, gensupport.h, ggc-callbacks.c, ggc-common.c,
	ggc-none.c, ggc-page.c, ggc-simple.c, ggc.h, global.c,
	graph.c, graph.h, gthr-aix.h, gthr-dce.h, gthr-posix.h,
	gthr-rtems.h, gthr-single.h, gthr-solaris.h, gthr-vxworks.h,
	gthr-win32.h, gthr.h, haifa-sched.c, halfpic.c, halfpic.h,
	hard-reg-set.h, hwint.h, ifcvt.c, input.h, insn-addr.h,
	integrate.c, integrate.h, jump.c, lcm.c, libgcc2.c,
	libgcc2.h, lists.c, local-alloc.c, loop.c, loop.h,
	machmode.def, machmode.h, main.c, mbchar.c, mbchar.h,
	mips-tdump.c, mips-tfile.c, mklibgcc.in, mkmap-flat.awk,
	mkmap-symver.awk, optabs.c, output.h, params.c, params.def,
	params.h, predict.c, predict.def, predict.h, prefix.c,
	prefix.h, print-rtl.c, print-tree.c, profile.c, protoize.c,
	read-rtl.c, real.c, real.h, recog.c, recog.h, reg-stack.c,
	regclass.c, regmove.c, regrename.c, regs.h, reload.c,
	reload.h, reload1.c, reorg.c, resource.c, resource.h, rtl.c,
	rtl.def, rtl.h, rtlanal.c, sbitmap.c, sbitmap.h,
	sched-deps.c, sched-ebb.c, sched-int.h, sched-rgn.c,
	sched-vis.c, sdbout.c, sdbout.h, sibcall.c, simplify-rtx.c,
	ssa-ccp.c, ssa-dce.c, ssa.c, ssa.h, stmt.c, stor-layout.c,
	stringpool.c, system.h, timevar.c, timevar.def, timevar.h,
	tlink.c, toplev.c, toplev.h, tree.c, tree.def, tree.h,
	tsystem.h, unroll.c, unwind-dw2-fde.c, unwind-dw2-fde.h,
	unwind-dw2.c, unwind-pe.h, unwind-sjlj.c, unwind.h,
	unwind.inc, varasm.c, varray.c, varray.h, xcoffout.c,
	xcoffout.h: replace "GNU CC" with "GCC".

From-SVN: r45105
2001-08-22 14:35:51 +00:00
Daniel Berlin b2d5779326 [multiple changes]
2001-07-27  Daniel Berlin  <dan@cgsoftware.com>

	* regclass.c (reg_scan_mark_refs): Increment REG_N_REFS when we
	increment REG_N_SETS.

2001-07-26  Daniel Berlin  <dan@cgsoftware.com>

	* sbitmap.h: New prototype for sbitmap_a_xor_b.

	* sbitmap.c (sbitmap_a_xor_b): New function.
	#ifdef the basic block stuff on the define IN_GCC.

From-SVN: r44460
2001-07-29 18:21:08 +00:00
Richard Henderson 88657302b7 Standardize header guards.
From-SVN: r42615
2001-05-25 18:31:47 -07:00
Kaveh R. Ghazi 362440248c bb-reorder.c (get_next_bb_note, [...]): Prototype.
* bb-reorder.c (get_next_bb_note, get_prev_bb_note): Prototype.

	* diagnostic (vbuild_message_string, build_message_string,
	build_location_prefix, output_get_prefix, init_output_buffer,
	output_notice, vline_wrapper_message_with_location,
	v_message_with_decl, default_print_error_function): De-constify.
	(set_real_maximum_length): Prototype.

	* diagnostic.h (struct output_buffer, init_output_buffer,
	output_get_prefix, output_set_prefix): De-constify.

	* function.c (init_function_start): Constify.

	* gensupport.c (remove_constraints, process_rtx): Prototype.

	* gthr-posix.h: Indent uses of #pragma.

	* objc/objc-act.c (ggc_mark_imp_list, ggc_mark_hash_table):
	Prototype.

	* predict.c (find_expected_value): Delete prototype.
	(expected_value_to_br_prob): Initialize variable `ev_reg'.

	* sbitmap.h (debug_sbitmap): Prototype.

	* ssa.c (compute_coalesced_reg_partition): Prototype.

	* stor-layout.c (debug_rli): Prototype.

	* tree.h (round_down): Prototype.
	(init_function_start): Constify.

ch:
	* ch-tree.h (init_function_start): Constify.

From-SVN: r33675
2000-05-04 17:58:40 +00:00
Richard Kenner e0bf4f7b16 * sbitmap.h (EXECUTE_IF_SET_IN_SBITMAP): Revert last change.
From-SVN: r33153
2000-04-14 17:59:52 -04:00
Richard Kenner 08158df35a sbitmap.h: Whitespace changes and use upper-case macro args.
* sbitmap.h: Whitespace changes and use upper-case macro args.
	(struct simple_bitmap_def): All sizes now unsigned.
	(EXECUTE_IF_SET_IN_SBITMAP): Internal vars now _X instead of X_.
	* sbitmap.c (sbitmap_alloc): N_ELMS now unsigned; also local vars.
	(sbitmap_vector_alloc): Parms and local vars now unsigned.
	(sbitmap_zero): Cast bzero arg to PTR.
	(sbitmap_vector_zero, sbitmap_vector_one): Parm and Local var unsigned.
	(sbitmap_union_of_diffs): Change loop index to unsigned and rework
	loop to make structure clearer.
	(sbitmap_not, sbitmap_difference, sbitmap_a_and_b): Likewise.
	(sbitmap_a_or_b, sbitmap_a_subset_b_p, sbitmap_a_or_b_and_c): Likewise.
	(sbitmap_a_and_b_or_c): Likewise.
	(sbitmap_intersection_of_succs): Minor cleanups.
	(sbitmap_intersection_of_preds, sbitmap_union_of_succs): Likewise.
	(sbitmap_union_of_preds): Likewise.
	(sbitmap_first_set_bit, dump_sbitmap): Local variables now unsigned.
	(debug_sbitmap): New function.

From-SVN: r33059
2000-04-10 08:31:19 -04:00
Brad Lucier be200dff75 * sbitmap.h: Make SBITMAP_ELT_BITS unsigned.
From-SVN: r31912
2000-02-11 02:49:40 -07:00
Kaveh R. Ghazi 7025bf1981 gansidecl.h (PROTO, [...]): Delete macros.
* gansidecl.h (PROTO, VPROTO, PVPROTO): Delete macros.

        * sbitmap.h (sbitmap_first_set_bit, sbitmap_last_set_bit):
        PROTO -> PARAMS.

From-SVN: r31716
2000-01-31 16:39:49 +00:00
Jason Eckhardt 65169dcfc2 [multiple changes]
Fri Jan  7 19:48:04 CET 2000  Jan Hubicka  <jh@suse.cz>
	* sbitmap.c (sbitmap_first_set_bit, sbitmap_last_set_bit): New
	function.
	* sbitmap.h (sbitmap_first_set_bit, sbitmap_last_set_bit): Declare.
	* basic_block.h (FLOW_LOOP_FIRST_BLOCK): New macro.
	(FLOW_LOOP_LAST_BLOCK): Likewise.

2000-01-21  Michael Hayes  <m.hayes@elec.canterbury.ac.nz>

	* basic-block.h (struct loop): New fields 'first' and 'last'.
	* flow.c (flow_loops_find): Compute loop->first and loop->last.
	(flow_loops_dump): Use loop->first to check for NOTE_INSN_LOOP_BEG
	and loop->last to check for NOTE_INSN_LOOP_END.

Fri Jan 28 10:57:58 2000  Jason Eckhardt  <jle@cygnus.com>

	* predict.c (estimate_probability): Use the new FIRST and LAST fields
	of the loop descriptor rather than HEADER and LATCH. Also added
	missing break statements as well making some coding style modifications
	as suggested by Michael Hayes.

From-SVN: r31679
2000-01-29 01:41:22 +00:00
Kaveh Ghazi 9311a396bc Update copyrights
From-SVN: r31465
2000-01-17 17:16:21 +00:00
Kaveh R. Ghazi cdadb1dda0 reload.c: PROTO -> PARAMS.
* reload.c: PROTO -> PARAMS.
        * reload.h: Likewise.
        * reload1.c: Likewise.
        * reorg.c: Likewise.
        * resource.h: Likewise.
        * rtl.c: Likewise.
        * rtl.h: Likewise.
        * rtlanal.c: Likewise.
        * sbitmap.h: Likewise.
        * sdbout.c: Likewise.
        * stack.h: Likewise.
        * stmt.c: Likewise.
        * system.h: Likewise.

From-SVN: r31461
2000-01-17 15:47:29 +00:00
Michael Hayes 4dc9341c04 flow.c (flow_nodes_print, [...]): New functions.
* flow.c (flow_nodes_print, flow_loops_cfg_dump): New functions.
	(flow_loop_nested_p, flow_loops_dump, flow_loops_free): Likewise.
	(flow_loop_exits_find, flow_loop_nodes_find): Likewise.
	(flow_depth_first_order_compute, flow_loop_pre_header_find): Likewise.
	(flow_loop_tree_node_add, flow_loops_tree_build): Likewise.
	(flow_loop_level_compute, low_loops_level_compute): Likewise.
	(flow_loops_find, flow_loop_outside_edge_p): Likewise.
	* basic-block.h: Protect from multiple inclusion.
	(flow_loops_find, flow_loops_free, flow_loop_dump): Add protoypes.
	(struct loops, struct loop): Define structures.
	* sbitmap.c (sbitmap_a_subset_b_p): New function.
	* sbitmap.h: Protect from multiple inclusion.
	(sbitmap_a_subset_b_p): Add prototype.
	* Makefile.in (LOOP_H): New macro.
	(stmt.o, integrate.o, loop.o, unroll.o): Replace loop.h with LOOP_H.

From-SVN: r30720
1999-11-30 10:42:29 +00:00
Andrew MacLeod 36349f8be4 sbitmap.h (sbitmap_intersection_of_succs): Add prototype.
Wed Aug 25 13:55:47 EDT 1999  Andrew MacLeod  <amacleod@cygnus.com>

	* sbitmap.h (sbitmap_intersection_of_succs): Add prototype.
	(sbitmap_intersection_of_preds, sbitmap_union_of_succs,
	sbitmap_union_of_preds): Add prototypes.
	* sbitmap.c (sbitmap_intersection_of_succs): New function to compute
	the intersection of successors with the new flow graph structures.
	(sbitmap_intersection_of_preds): New function to compute the
	intersection of predecessors with the new flow graph structures.
	(sbitmap_union_of_succs): New function to compute the union of
	successors with the new flow graph structures.
	(sbitmap_union_of_preds): New function to compute the union of
	predecessors with the new flow graph structures.
	* gcse.c (compute_rdm, compute_available): Use new sbitmap routines.
	(expr_reaches_here_p): Use edge and basic_block structures instead
	of s_preds and s_succs.
	(compute_cprop_avinout): Use new sbitmap routines.
	(pre_expr_reaches_here_p): Use edge and basic_block structures instead
	of s_preds and s_succs.
	* flow.c (compute_flow_dominators): Compute dominators using
	edges and basic blocks instead of s_preds and s_succs.

From-SVN: r28866
1999-08-25 18:01:48 +00:00
Kaveh R. Ghazi dff01034e5 c-aux-info.c (data_type, [...]): Qualify a char* with the `const' keyword.
* c-aux-info.c (data_type, affix_data_type, gen_decl,
        gen_formal_list_for_type, gen_formal_list_for_func_def, gen_type):
        Qualify a char* with the `const' keyword.
        * c-common.c (declare_hidden_char_array, add_attribute, if_elt,
        declare_function_name, decl_attributes, format_char_info,
        check_format_info, binary_op_error): Likewise.
        * cexp.y (yyerror, error, pedwarn, warning, token): Likewise.
        * gcse.c (dump_hash_table): Likewise.
        * integrate.c (function_cannot_inline_p): Likewise
        * optabs.c: Include insn-config.h earlier.
        (init_libfuncs, init_integral_libfuncs, init_floating_libfuncs):
        Qualify a char* with the `const' keyword.
        * real.c (asctoe24, asctoe53, asctoe64, asctoe113, asctoe,
        asctoeg, mtherr, ereal_atof): Likewise.
        * real.h (ereal_atof): Likewise.
        * sbitmap.c (dump_sbitmap_vector): Likewise.
        * sbitmap.h (dump_sbitmap_vector): Likewise.
        * stmt.c (nesting, n_occurrences, expand_start_case): Likewise.
        * toplev.c (rest_of_compilation): Likewise.
        * tree.h (function_cannot_inline_p, expand_start_case): Likewise.

From-SVN: r25614
1999-03-06 05:34:26 +00:00
Richard Henderson 5f6c11d6e5 Makefile.in (OBJECTS): Add sbitmap.o.
* Makefile.in (OBJECTS): Add sbitmap.o.
        (BASIC_BLOCK_H): Add sbitmap.h.
        * basic-block.h: Move simple bitmap code to sbitmap.h.
        * flow.c: Move simple bitmap code to sbitmap.c
        * sbitmap.h, sbitmap.c: New files.

From-SVN: r24628
1999-01-11 16:07:36 -08:00