Commit Graph

11 Commits

Author SHA1 Message Date
Michael Meissner
0dfa18604b Makefile.in (HOST_RTL): Add $(HOST_PREFIX)bitmap.o.
* Makefile.in (HOST_RTL): Add $(HOST_PREFIX)bitmap.o.
        (rtl.o, emit-rtl.o): Add dependency on bitmap.h.
        ($(HOST_PREFIX_1)rtl.o): Likewise.
        ($(HOST_PREFIX_1)bitmap.o): New host object.
        * emit-rtl.c (toplevel): Include bitmap.h.
        (gen_rtx): Handle 't' and 'b' nodes.
        * print-rtl.c (print_rtx): Handle printing NOTE_INSN_LIVE notes.
        Print block number for block begin/end notes.  Print 't' type
        nodes as a pointer.  Know that the 3rd argument of live range
        start/stop notes is really a range_info rtx.  If type is 'b', print
        out argument as a bitmap.
        * rtl.c: Include bitmap.c.
        (copy_rtx): Copy tree nodes as is.  Copy bitmaps if type is 'b'.
        (note_insn_name): Add NOTE_INSN_RANGE_{START,END}, NOTE_INSN_LIVE.
        * rtl.def (RANGE_LIVE): New node to hold live information while we
        recalculate the basic blocks.
        (RANGE_REG, RANGE_INFO): New rtl types for live range splitting.
        (RANGE_VAR): New node, to hold information saved in symbol node for New
        communicating live range information to the debug output functions.
        * rtl.h (rtunion_def): Add rttree and rtbit fields.
        (XBITMAP, XTREE): New accessor macros.
        (NOTE_LIVE_INFO): Overload NOTE_SOURCE_FILE for NOTE_INSN_LIVE notes.
        (NOTE_RANGE_INFO): Similarly for NOTE_INSN_RANGE_{START,END} notes.
        (NOTE_BLOCK_LIVE_RANGE_BLOCK): Define.
        (NOTE_INSN_RANGE_START, NOTE_INSN_RANGE_END, NOTE_INSN_LIVE): New notes.
        (RANGE_LIVE_{BITMAP,ORIG_BLOCK}): New accessor macros.
        (RANGE_REG_{SYMBOL,BLOCK}_NODE, RANGE_VAR_*): New accessor macros.
        (RANGE_INFO_*): Likewise.
        * sched.c (sched_analyze): Keep live range start/stop notes.
        (unlink_other_notes): Likewise.
        * haifa-sched.c (sched_analyze): Keep live range start/stop notes.
        (unlink_other_notes): Likewise.
        * tree.h (BLOCK_LIVE_RANGE_{START,END,VAR_FLAG}): New accessor macros.
        (BLOCK_LIVE_RANGE_FLAG): Likewise.
        (DECL_LIVE_RANGE_RTL): Likewise.
        (struct tree_block): Add live_range_flag, live_range_var_flag,
        live_range_start and live_range_end.
        (struct tree_decl): Add live_range_rtl field.
        * gengenrtl.c (type_from_format): Handle 'b' and 't'.
        (accessor_from_format): Likewise.

Co-Authored-By: Jeffrey A Law <law@cygnus.com>

From-SVN: r19727
1998-05-13 15:13:47 -06:00
Kaveh R. Ghazi
d6f4ec5199 Warning fixes:
* Makefile.in (c-lang.o): Depend on c-tree.h, c-lex.h and toplev.h.
	(c-lex.o): Depend on output.h.
	(c-common.o): Likewise.
	(stmt.o): Likewise.
	(calls.o): Likewise.
	(integrate.o): Depend on toplev.h.
	(regclass.o): Depend on output.h.
	(final.o): Depend on reload.h.
	* c-common.c: Include output.h.
	(check_format_info): Remove unused variable `integral_format'.
	* c-decl.c (print_lang_decl): Mark parameters `file', `node' and
	`indent' with ATTRIBUTE_UNUSED.
	(print_lang_type): Likewise.
	(maybe_build_cleanup): Likewise for parameter `decl'.
	(copy_lang_decl): Likewise for parameter `node'.
	* c-lang.c: Include c-tree.h, c-lex.h and toplev.h.
	(lang_print_xnode): Mark parameters `file', `node' and `indent'
 	with ATTRIBUTE_UNUSED.
	(lookup_interface): Likewise for parameter `arg'.
	(is_class_name): Likewise.
	(maybe_objc_check_decl): Likewise for parameter `decl'.
	(maybe_objc_comptypes): Likewise for parameters `lhs', `rhs' and
	`reflexive'.
	(maybe_objc_method_name): Likewise for parameter `decl'.
	(build_objc_string): Likewise for parameters `len' and `str'.
	* c-lex.c: Include output.h.
	* c-lex.h (position_after_white_space): Correct typo in prototype.
	* c-tree.h (finish_file, c_expand_start_cond, c_expand_start_else,
 	c_expand_end_cond, init_iterators): Add prototypes.
	* caller-save.c (set_reg_live): Mark parameters `reg' and `setter'
	with ATTRIBUTE_UNUSED.
	* calls.c: Include output.h.
	* cccp.c (pipe_closed): Mark parameter `signo' with
 	ATTRIBUTE_UNUSED.
	* combine.c: Move inclusion of expr.h to after insn-config.h.
	* iris6.h (ASM_IDENTIFY_GCC, ASM_IDENTIFY_LANGUAGE): Don't define
	as empty, rather define as ((void)0).
	* sparc.c (sparc_check_64): Add braces around ambiguous `else'.
	Add parentheses around assignment used as truth value.
	* cplus-dem.c (squangle_mop_up): Change return type to void.
	(internal_cplus_demangle): Remove unused parameter `options'.
	All callers changed.
	(cplus_demangle_opname): Remove function wide variable `int i' and
 	replace with `size_t i' at each location where it is used.
	(cplus_demangle_opname): change type of `i' from int to size_t.
	* cppexp.c (right_shift): Mark parameter `pfile' with
	ATTRIBUTE_UNUSED.
	* cpphash.c (cpp_lookup): Likewise.
	(cpp_hash_cleanup): Likewise.
	* cpplib.c (parse_name): Add a prototype and make it static.
	(null_underflow): Mark parameter `pfile' with ATTRIBUTE_UNUSED.
	(null_cleanup): Likewise for parameters `pbuf' and `pfile'.
	(macro_cleanup): Likewise for parameter `pfile'.
	(file_cleanup): Likewise.
	* cpplib.h (cpp_reader_init, cpp_options_init, cpp_start_read,
 	cpp_read_check_assertion, skip_rest_of_line): Add prototypes.
	* crtstuff.c (force_to_data, __CTOR_LIST__, force_to_data,
	__DTOR_END__, __FRAME_END__): Mark with ATTRIBUTE_UNUSED.
	* cse.c (cse_check_loop_start): Mark parameter `set' with
 	ATTRIBUTE_UNUSED.
	* dbxout.c (flag_minimal_debug, have_used_extensions,
	source_label_number): Move inside macro wrapper check against
	defined (DBX_DEBUGGING_INFO) || defined (XCOFF_DEBUGGING_INFO).
	* dwarf2out.c (gen_entry_point_die): Hide prototype and definition.
	* except.h (doing_eh): Provide prototype.
	* expr.c: Move inclusion of expr.h to after insn-config.h.
	* final.c: Include reload.h.
	(shorten_branches): Cast the first argument of bzero to char *.
	* fix-header.c (cpp_print_containing_files): Mark parameter
 	`pfile' with ATTRIBUTE_UNUSED.
	(cpp_fatal): Likewise.
	* flow.c (find_basic_blocks_1): Cast the first argument of bzero
	to char *.
	* genattrtab.c (make_length_attrs): Change the type of variable
	`i' from int to size_t.
	(zero_fn): Mark parameter `exp' with ATTRIBUTE_UNUSED.
	(one_fn): Likewise.
	* genextract.c (main): When generating insn-extract.c, mark
	variable `junk' with ATTRIBUTE_UNUSED.
	* gengenrtl.c (gencode): When generating genrtl.c, cast the first
	argument of bzero to char*.
	* integrate.c: Include toplev.h.
	* libgcc2.c: Wrap `struct exception_table' and
	`find_exception_handler' in macro DWARF2_UNWIND_INFO.
	* objc/Make-lang.in (objc-act.o): Depend on toplev.h.
	* objc/objc-act.c: Include toplev.h.
	(lang_print_xnode): Mark parameters `file', `node' and `indent'
	with ATTRIBUTE_UNUSED.
	(finish_protocol): Likewise for parameter `protocol'.
	* output.h (declare_weak): Add prototype.
	(decode_reg_name): Don't wrap with TREE_CODE macro.
	(assemble_alias): Add prototype.
	* regclass.c: Include output.h.
	* reload.h (reloads_conflict): Add prototype.
	* rtl.h (print_rtl_single, mark_elimiation, reg_class_subset_p,
	output_func_start_profiler): Add prototypes.
	* rtlanal.c (reg_set_p_1): Mark parameters `x' and `pat' with
 	ATTRIBUTE_UNUSED.
	* scan-decls.c: Include scan.h.
	* scan.h (recognized_function, recognized_extern): Add prototypes.
	* stmt.c: Include output.h.
	* toplev.c (error_for_asm, warning_for_asm): Remove prototypes.
	(output_lang_identify): Hide prototype and definition.
	(float_signal): Mark parameter `signo' with ATTRIBUTE_UNUSED.
	(pipe_closed): Likewise.
	* toplev.h (count_error, strip_off_ending, error_for_asm,
 	warning_for_asm): Add prototypes.

From-SVN: r19712
1998-05-13 12:40:39 +00:00
Kaveh R. Ghazi
d4ba0ead26 Consolidate support for "String-ification" into system.h:
* system.h: Define the STRINGIFY macro here.
        * protoize.c: Not here.
        * gengenrtl.c (DEF_RTL_EXPR): Use the STRINGIFY macro.

From-SVN: r19696
1998-05-12 07:36:02 +00:00
Kaveh R. Ghazi
560bd19e94 Another minor system.h cutover:
* Makefile.in (genrtl.o): Depend on system.h.
        * gengenrtl.c (gencode): When creating genrtl.c, have it
        include system.h.

From-SVN: r19632
1998-05-08 06:51:04 +00:00
Bernd Schmidt
56c0e996b8 c-lex.c (is_class_name): Delete declaration.
* c-lex.c (is_class_name): Delete declaration.
        (whitespace_cr): Make static and add prototype.
        * c-lex.h (make_pointer_declarator, reinit_parse_for_function,
        yylex, get_directive_line): Turn declarations into prototypes.
        (position_after_whitespace, check_newline, yyerror,, is_class_name,
        forget_protocol_qualifiers, remember_protocol_qualifiers): Add
        prototypes.
        * genattr.c (extend_range, write_upcase, gen_attr, write_units): Add
        prototypes.
        * gencodes.c (gen_insn): Add prototype.
        * genconfig.c (walk_insn, gen_insn, gen_expand, gen_split,
        gen_peephole): Add prototypes.
        * genflags.c (num_operands, gen_proto, gen_nonproto, gen_insn): Add
        prototypes.
        * gengenrtl.c (type_from_format, accessor_from_format, special_rtx,
        special_format, find_formats, gendecl, genmacro, gendef, genlegend,
        genheader, gencode): Add prototypes.
        * genopinit.c (gen_insn): Add prototype.
        * genoutput.c (output_prologue, output_epilogue, scan_operands,
        process_template, validate_insn_alternatives, gen_insn, gen_peephole,
        gen_expand, gen_split, n_occurrences): Add prototypes.
        * genpeep.c (gen_peephole): Add prototype.
        * loop.c (find_and_verify_loops, mark_loop_jump, prescan_loop,
        reg_in_basic_block_p, consec_sets_invariant_p, libcall_other_reg,
        labels_in_range_p, count_loop_regs_set, note_addr_stored,
        loop_reg_used_before_p, scan_loop, replace_call_address,
        skip_consec_insns, libcall_benefit, ignore_some_movables,
        force_movables, combine_movables, rtx_equal_for_loop_p, move_movables,
        strength_reduce, valid_initial_value_p, find_mem_givs, record_biv,
        check_final_value, record_giv, update_giv_derive, basic_induction_var,
        simplify_giv_expr, general_induction_var, consec_sets_giv,
        check_dbra_loop, express_from, combine_givs_p, combine_givs,
        product_cheap_p, maybe_eliminate_biv, maybe_eliminate_biv_1,
        last_use_this_basic_block, record_initial, update_reg_last_use,
        iteration_info, analyze_loop_iterations, insert_bct,
        instrument_loop_bct, indirect_jump_in_function_p): Turn declarations
        into prototypes.

From-SVN: r19038
1998-04-07 17:47:11 -06:00
Kaveh R. Ghazi
b04cd50711 More cutover to system.h:
* Makefile.in (cppalloc.o, cpperror.o, cppexp.o, cpphash.o,
        cpplib.o, cppmain.o, fix-header.o, gcov.o, gen-protos.o,
        gengenrtl.o, halfpic.o, hash.o, scan-decls.o, scan.o): Depend on
        system.h.
        * cpphash.c: Include config.h.
        * cppalloc.c: Include system.h.  Add parameters to various
        function prototypes.
        * cpperror.c: Likewise.
        * cppexp.c: Likewise.
        * cpphash.c: Likewise.
        * cpplib.c: Likewise.
        * cppmain.c: Likewise.
        * fix-header.c: Likewise.
        * gcov.c: Likewise.
        * gen-protos.c: Likewise.
        * gengenrtl.c: Likewise.
        * halfpic.c: Likewise.
        * hash.c: Likewise.
        * scan-decls.c: Likewise.
        * scan.c: Likewise.

From-SVN: r18911
1998-03-30 12:05:54 +00:00
Richard Henderson
7684433709 configure.in: Add cpp stringify test.
* configure.in: Add cpp stringify test.
        * acconfig.h (HAVE_CPP_STRINGIFY): New tag.
        * gengenrtl.c: Use it.
        * configure, config.in: Rebuild.

From-SVN: r17419
1998-01-19 02:09:47 -08:00
Kaveh R. Ghazi
982255c878 gengenrtl.c (type_from_format): De-ANSIfy function signature.
* gengenrtl.c (type_from_format): De-ANSIfy function signature.
        (accessor_from_format): Likewise.
        (xmalloc): New function for use when linking with alloca.o.

From-SVN: r17386
1998-01-17 13:09:09 -07:00
Richard Henderson
5d483f6374 * gengenrtl.c (DEF_RTL_EXPR): Provide a K&R compliant version.
From-SVN: r17380
1998-01-16 08:21:54 -08:00
John Carr
4b8140a62f gengenrtl.c (gencode): Emit new function obstack_alloc_rtx to allocate rtx.
* gengenrtl.c (gencode): Emit new function obstack_alloc_rtx
to allocate rtx.
(gendef): Call obstack_alloc_rtx.

From-SVN: r17327
1998-01-13 01:06:31 -08:00
Richard Henderson
3b80f6ca69 Makefile.in (OBJ, GEN, RTL_H): Add genrtl.[oh] bits.
* 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
1998-01-08 13:17:05 -08:00