aboutsummaryrefslogtreecommitdiff
path: root/gcc/df.h
AgeCommit message (Collapse)AuthorFilesLines
2005-12-22df.c (df_bitmaps_free): Only work for bbs for that structures are allocated.Zdenek Dvorak1-0/+2
* df.c (df_bitmaps_free): Only work for bbs for that structures are allocated. (df_bb_modify): Realloc tables to the new index. (df_find_use): New function. (df_find_def, df_reg_used): Handle subregs. * df.h (df_find_use): Declare. * loop-invariant.c: Include hashtab.h. (struct invariant): Remove processed field, add eqto and reg fields. (struct invariant_expr_entry): New. (invariant_for_use, hash_invariant_expr_1, invariant_expr_equal_p, hash_invariant_expr, eq_invariant_expr, find_or_insert_inv, find_identical_invariants, merge_identical_invariants): New functions. (create_new_invariant): Return the new invariant. Initialize new fields. (find_invariants): Call merge_identical_invariants. (get_inv_cost, best_gain_for_invariant, set_move_mark, move_invariant_reg): Handle equivalent invariants. * Makefile.in (loop-invariant.o): Add HASHTAB_H dependency. Co-Authored-By: Steven Bosscher <stevenb@suse.de> From-SVN: r108949
2005-12-17basic-block.h: Changed basic block numbering so that the entry block is 0 ↵Daniel Berlin1-3/+0
and the exit block is 1. 2005-12-17 Danny Berlin <dberlin@dberlin.org> Kenneth Zadeck <zadeck@naturalbridge.com> * basic-block.h: Changed basic block numbering so that the entry block is 0 and the exit block is 1. Changed insn iterators so that they are tolerant of blocks with no insns. * regrename.c (copyprop_hardreg_forward): Changed basic block numbering so that the entry block is 0 and the exit block is 1. * sched-ebb.c (sehedule_ebbs): Ditto. * tracer.c (branch_ratio_cutoff): Ditto. * cfgloopmanip.c (fix_loop_structure): Ditto. * cfghooks.c (verify_flow_info): Ditto. * cfg.c (compact_blocks): Ditto. * reorg.c (dbr_schedule): Ditto. * flow.c (calculate_global_regs_live, libcall_dead_p): Ditto. * dominance.c (calc_dfs_tree_nonrec, calc_dfs_tree, calculate_dominance_info): Ditto. * cfganal.c (create_edge_list, print_edge_list, flow_depth_first_order_compute, flow_dfs_compute_reverse_init, flow_dfs_compute_reverse_add_bb, flow_dfs_compute_reverse_execute, dfs_enumerate_from): Ditto. * global.c (global_alloc, set_up_bb_rts_numbers): Ditto. * ifcvt.c (find_if_case_2): Ditto. * cfgbuild.c (control_flow_insn_p, count_basic_blocks, find_basic_blocks): Ditto. * predict.c (predict_loops, tree_bb_level_predictions, predict_paths_leading_to, propagate_freq): Ditto. * lcm.c (compute_antinout_edge, compute_laterin, compute_available): Ditto. * function.c (thread_prologue_and_epilogue_insns): Ditto. * gcse.c (gcse_main, bypass_jumps): Ditto. * profile.c (compute_branch_probabilities, compute_value_histograms, branch_prob): Ditto. * tree-flow-inline.h (bsi_start, bsi_after_labels, bsi_last): Ditto. * tree-ssa-phiopt.c (tree_ssa_phiopt, blocks_in_phiopt_order): Ditto. * bt-load.c (compute_defs_uses_and_gen, compute_kill, compute_out, link_btr_uses, migrate_btr_defs): Ditto. * tree-dfa.c (collect_dfa_stats): Ditto. * cfgcleanup.c (try_forward_edges, try_optimize_cfg): Ditto. * cfglayout.c (fixup_reorder_chain): Ditto. * bb-reorder.c (reorder_basic_blocks, duplicate_computed_gotos, partition_hot_cold_basic_blocks): Ditto. * var-tracking.c (vt_find_locations): Ditto. * cfgloop.c (flow_loops_cfg_dump, flow_loops_find, get_loop_body): Ditto. * sched-rgn.c (compute_trg_info, init_regions, schedule_insns): Ditto. * tree-cfg.c (init_empty_tree_cfg, build_tree_cfg, make_edges label_to_block_fn, print_loop_ir, tree_flow_call_edges_add): Ditto. * tree-ssa-reassoc.c (init_reassoc): Ditto. * cfgrtl.c (entry_of_function, rtl_verify_flow_info, rtl_flow_call_edges_add, rtl_flow_call_edges_add): Ditto. * df.c (df_analyze_1, hybrid_search, iterative_dataflow): Ditto and removed unused reverse orders. * df.h (): Ditto. * combine.c: Fix document typo. Co-Authored-By: Kenneth Zadeck <zadeck@naturalbridge.com> From-SVN: r108713
2005-06-25Update FSF address.Kelley Cook1-2/+2
From-SVN: r101317
2005-05-26df.h (DF_SUBREGS, [...]): New.Paolo Bonzini1-4/+7
2005-05-26 Paolo Bonzini <bonzini@gnu.org> * df.h (DF_SUBREGS, df_local_def_available_p, df_insn_modified_p): New. * df.c (DF_SUBREGS, df_local_def_available_p, df_insn_modified_p): New. From-SVN: r100197
2005-02-10* df.h (DF_REF_MODE_CHANGE, DF_REF_MEM_OK): Remove.Kazu Hirata1-14/+1
From-SVN: r94839
2005-02-07cfgcleanup.c, [...]: Update copyright.Kazu Hirata1-1/+2
* cfgcleanup.c, df.h, diagnostic.c, rtl.c, tree-vectorizer.h, config/darwin7.h, config/mips/mips.c, config/rs6000/altivec.md, config/rs6000/darwin-tramp.asm: Update copyright. From-SVN: r94704
2005-02-02df.c (df_def_record_1, [...]): Don't use DF_FOR_REGALLOC.Kazu Hirata1-1/+0
* df.c (df_def_record_1, df_uses_record): Don't use DF_FOR_REGALLOC. * df.h (DF_FOR_REGALLOC): Remove. From-SVN: r94608
2004-11-17basic-block.h, [...]: Remove unused prototypes.Kazu Hirata1-2/+0
* basic-block.h, c-common.h, df.h, expr.h, output.h, rtl.h, tree-chrec.h, tree-flow.h, tree-scalar-evolution.h, tree-ssa-live.h, tree.h: Remove unused prototypes. From-SVN: r90821
2004-06-10Makefile.in (df.o): Remove fibheap dependency.Zdenek Dvorak1-20/+33
* Makefile.in (df.o): Remove fibheap dependency. * df.h: Do not include sbitmap.h. (struct ref): New field "data". (DF_REF_DATA): New accessor macro. (struct df): Field "dom" removed. (df_analyze_subcfg): New function. (transfer_function_sbitmap, transfer_function_bitmap): Replaced by ... (transfer_function): ... new type. (iterative_dataflow_sbitmap, iterative_dataflow_bitmap): Replaced by ... (iterative_dataflow): ... new function. (enum set_representation, struct dataflow): New. * df.c: Do not include fibheap.h. (df_reg_def_chain_clean, df_reg_use_chain_clean, (df_bb_table_realloc, df_analyse_subcfg, free_reg_ref_chain, prune_to_subcfg, df_bb_modify): New functions. (df_bitmaps_alloc, df_reg_def_chain_create, df_reg_use_chain_create, df_refs_update, df_reg_table_realloc, df_ref_create, df_bb_reg_def_chain_create, df_bb_reg_use_chain_create, df_bb_rd_local_compute, df_bb_ru_local_compute, df_bb_lr_local_compute, df_analyse_1, df_insn_modify): Support analysing only a part of the cfg. (dataflow_set_a_op_b, dataflow_set_copy): New functions. (df_rd_transfer_function, df_ru_transfer_function, df_lr_transfer_function): Type of bitmaps changed to void *. (hybrid_search_bitmap, hybrid_search_sbitmap): Merge into ... (hybrid_search): ... new function. (iterative_dataflow_bitmap, iterative_dataflow_sbitmap): Merge into ... (iterative_dataflow): ... new function. Avoid use of fibheaps for a worklist. Do not process basic blocks unnecessarily. From-SVN: r82921
2004-06-03Makefile.in (RA_H, [...]): New.Jerry Quinn1-0/+9
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
2004-05-30c-common.c, [...]: Fix comment typos.Kazu Hirata1-1/+1
* c-common.c, calls.c, cfgcleanup.c, cgraph.c, cgraphunit.c, ddg.c, ddg.h, df.c, df.h, except.c, expr.c, flags.h, fold-const.c, gcc.c, gimplify.c, haifa-sched.c, modulo-sched.c, tree-inline.c, tree-into-ssa.c, tree-nested.c, tree-nrv.c, tree-ssa-ccp.c, tree-ssa-dom.c, tree-ssa-live.c, tree-ssa-loop.c, tree-ssa-pre.c, tree-tailcall.c, tree.h: Fix comment typos. Follow spelling conventions. From-SVN: r82439
2004-05-25ddg.h, [...]: New files.Ayal Zaks1-0/+9
* ddg.h, ddg.c, modulo-sched.c: New files. * cfglayout.c (duplicate_insn_chain): Remove "static" and push internals to "dupicate_insn". (duplicate_insn): New function. * cfglayout.h (duplicate_insn_chain, duplicate_insn): New declarations. * common.opt (fmodulo-sched): New flag. * df.c (df_bb_regno_last_use_find, df_bb_regno_first_def_find): Remove static and forward declaration. (df_find_def, df_reg_used, df_bb_regno_last_def_find): New functions. * df.h (df_bb_regno_last_use_find, df_bb_regno_first_def_find, df_bb_regno_last_def_find, df_find_def, df_reg_used): New declarations. * flags.h (flag_modulo_sched): New flag. * opts.c (common_handle_option): Handle modulo-sched flag. * params.def (max-sms-loop-number, sms-max-ii-factor, sms-dfa-history, sms-loop-average-count-threshold): New parameters. * params.h (MAX_SMS_LOOP_NUMBER, SMS_MAX_II_FACTOR, SMS_DFA_HISTORY, SMS_LOOP_AVERAGE_COUNT_THRESHOLD): New parameters. * passes.c ("sms", "sms-vcg"): New dumps. (rest_of_handle_sched): Call sms_schedule. * rtl.h (sms_schedule): New declaration. * timevar.def (TV_SMS): New. * toplev.c (flag_modulo_sched): Initialize. (f_options): Handle -fmodulo-sched option. * docs/invoke.texi: Document -fmodulo-sched & -dm options. * docs/passes.texi: Document new SMS pass.f toplev.c doc/invoke.texi doc/passes.texi Co-Authored-By: Mostafa Hagog <mustafa@il.ibm.com> From-SVN: r82235
2004-04-04* df.h: Tidy up whitespace in the definitions of the DF_ flags.Roger Sayle1-10/+10
From-SVN: r80399
2004-02-24df.c, [...]: Replace df_analyse with df_analyze.Kazu Hirata1-1/+1
* df.c, df.h, ra-build.c, ra-rewrite.c, ra.c, web.c: Replace df_analyse with df_analyze. From-SVN: r78363
2004-02-04alloc-pool.h, [...]: Update copyright.Kazu Hirata1-1/+1
gcc/ * alloc-pool.h, c-convert.c, c-lang.c, c-tree.h, caller-save.c, df.h, genconfig.c, global.c, lcm.c, ra-rewrite.c, ra.c, regclass.c, regs.h, resource.c, sched-rgn.c, config/arm/aof.h, config/arm/cirrus.md, config/arm/fpa.md, config/arm/iwmmxt.md, config/arm/netbsd-elf.h, config/arm/netbsd.h, config/m68hc11/m68hc11.md, config/mips/iris5.h, config/mn10300/mn10300.md, config/rs6000/altivec.md, config/sparc/netbsd-elf.h: Update copyright. cp/ * error.c, search.c: Update copyright. java/ * typeck.c: Update copyright. From-SVN: r77265
2004-01-31alloc-pool.c: Fix comment typos.Kazu Hirata1-1/+1
* alloc-pool.c: Fix comment typos. * builtin-types.def: Likewise. * builtins.def: Likewise. * c-pretty-print.c: Likewise. * df.h: Likewise. * reload1.c: Likewise. From-SVN: r77043
2003-07-01basic-block.h: Fix comment typos.Kazu Hirata1-1/+1
* 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
2003-06-29cse.c: Convert prototypes to ISO C90.Andreas Jaeger1-67/+57
* cse.c: Convert prototypes to ISO C90. * cselib.c: Likewise. * cselib.h: Likewise. * dbxout.c: Likewise. * debug.c: Likewise. * df.c: Likewise. * df.h: Likewise. * dojump.c: Likewise. * doloop.c: Likewise. * dominance.c: Likewise. * dwarf2asm.c: Likewise. * dwarf2out.c: Likewise. * dwarf2out.h: Likewise. * dwarfout.c: Likewise. From-SVN: r68673
2003-03-202003-03-20 Daniel Berlin <dberlin@dberlin.org>Daniel Berlin1-1/+6
Merge changes from new-regalloc-branch From Michael Matz <matz@suse.de> * df.c (df_ref_record_1): Move init of loc to safe point. Only recurse on interesting things in parallels. Handle CLASS_CANNOT_CHANGE_MODE smarter. (df_uses_record): Ditto. * df.h (DF_REF_MEM_OK): New enum member, used to mark ref's which it's already okay to use memory operands in (IE doesn't require adding another insn or anything). From-SVN: r64629
2003-03-11df.c (read_modify_subreg_p): Change from static to global.Hartmut Penner1-0/+1
* df.c (read_modify_subreg_p): Change from static to global. * df.h (read_modify_subreg_p): Add prototype. * sched-deps.c (sched_analyze_1): Generate true dependency for strict_low_part, certain subregs and zero/sign_extract. From-SVN: r64164
2003-03-07df.h (enum df_ref_flags.DF_REF_STRIPPED): New.Michael Matz1-3/+8
* 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
2003-01-26df.h: Update comments, tidy formatting.Michael Hayes1-42/+47
* df.h: Update comments, tidy formatting. (DF_FORWARD, DF_REVERSE, DF_UNION, DF_INTERSECTION): Rename from FORWARD, REVERSE, UNION, INTERSECTION. All uses updated. (OLD_DF_INTERFACE): Remove. (struct insn_info): Remove commented out insn field. * df.c: Update comments, tidy formatting. (df_def_table_realloc): Remove. From-SVN: r61819
2003-01-18alias.c: Fix comment typos.Kazu Hirata1-2/+2
* alias.c: Fix comment typos. * basic-block.h: Likewise. * c-common.c: Likewise. * c-common.h: Likewise. * c-decl.c: Likewise. * c-opts.c: Likewise. * c-pragma.c: Likewise. * c-pretty-print.h: Likewise. * cfg.c: Likewise. * cfganal.c: Likewise. * cfgbuild.c: Likewise. * cfgcleanup.c: Likewise. * cfglayout.c: Likewise. * cfgrtl.c: Likewise. * convert.c: Likewise. * cpphash.h: Likewise. * cpplex.c: Likewise. * cpplib.h: Likewise. * df.h: Likewise. * diagnostic.c: Likewise. * diagnostic.h: Likewise. * dwarf2.h: Likewise. From-SVN: r61462
2002-07-15[multiple changes]Michael Matz1-2/+11
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-05-16Revert "Basic block renumbering removal", and two followup patches.Richard Henderson1-2/+2
From-SVN: r53537
2002-05-16Basic block renumbering removal.Zdenek Dvorak1-2/+2
From-SVN: r53522
2002-01-25df.c (df_ref_create, [...]): Kill BB argument.Jan Hubicka1-3/+2
* df.c (df_ref_create, df_ref_record_1, df_ref_record): Kill BB argument. * df.h (struct ref): Kill B. (DF_REF_BB, DF_REF_BBNO): Use BLOCK_FOR_INSN. * basic-block.h (PROP_EQUAL_NOTES): New flag. * flow.c (propagate_one_insn): Use it. (mark_used_regs): Handle NIL. From-SVN: r49220
2001-11-26df.h (transfer_function_sbitmap): Use PARAMS around argument list in ↵Jeffrey A Law1-4/+4
function prototypes. * df.h (transfer_function_sbitmap): Use PARAMS around argument list in function prototypes. (transfer_function_bitmap): Likewise. From-SVN: r47350
2001-11-19gcse.c (try_replace_reg): Copy RTX before creating note.Jan Hubicka1-0/+6
* gcse.c (try_replace_reg): Copy RTX before creating note. * df.h (df_ref_flags): New uenum. (DF_REF_FLAGS): New macro. (struct ref): Add field "flags". * df.c (HANDLE_SUBREG): Remove. (df_ref_create): Likewise; set flags field of ref. (df_def_record_1): Strip down read_write subreg; remove commented out code; set READ_WRITE flag. (read_modify_subreg_p): New static function. (df_uses_record): Cleanup SET handling; set READ_WRITE flag; new argument "flags". (df_insn_refs_record): Update call of df_uses_record. (df_insn_modify): Avoid #if 0 around comment. (df_dump): Dump the read/write flag. * predict.c (propagate_freq): Make cyclic_probability and frequency volatile * i386.c (ix86_cc_mode): Accept USE. * cfgrtl.c (purge_dead_edges): Cleanup EDGE_ABNORMAL flag if computed jump is turned into simplejump. From-SVN: r47175
2001-11-07Makefile.in (df.o): Add fibheap.h to dependencies.Daniel Berlin1-6/+38
2001-11-07 Daniel Berlin <dan@cgsoftware.com> * Makefile.in (df.o): Add fibheap.h to dependencies. * df.h: Add prototypes for transfer functions, iterative_dataflow functions. (enum df_flow_dir): New enum. (enum df_confluence_op): New enum. (struct df): Add inverse_rts_map. * df.c: Add sbitmap.h to the list of includes. (df_rd_global_compute): Removed. (df_ru_global_compute): Removed. (df_lr_global_compute): Removed. (df_rd_transfer_function): New function. (df_ru_transfer_function): New function. (df_lr_transfer_function): New function. (df_analyse_1): allocate/compute/free df->inverse_rts_map. Use iterative_dataflow_bitmap instead of df_*_global_compute. (iterative_dataflow_sbitmap): New function. (iterative_dataflow_bitmap): New function. From-SVN: r46827
2001-10-30lcm.c (optimize_mode_switching): Do not rebuild liveness information when no ↵Jan Hubicka1-0/+1
changes has been made. * lcm.c (optimize_mode_switching): Do not rebuild liveness information when no changes has been made. * gcse.c (reg_set_bitmap): Turn into reg_set. (modify_mem_list_set, canon_modify_mem_list_set) (clear_modify_mem_tables, free_modify_mem_tables): New. (gcse_main); Use free_modify_mem_tables. (free_gcse_mem): Likewise; free the bitmaps. (alloc_gcse_main): Initialize the bitmaps. (canon_list_insert): Set canon_modify_mem_list_set. (record_last_mem_set_info): Likewise; set modify_mem_list_set. (compute_hash_table): Use clear_modify_mem_tables. (reset_opr_set_tables): Likewise. (oprs_not_set_p): reg_set_bitmap is regset. (mark_set, mark_clobber): Likewise. * df.h (DF_EQUIV_NOTES): New constant. (df_insn_refs_record): Record uses inside or REG_EQUIV/EQUAL notes when asked for. * sched-rgn.c (CHECK_DEAD_NOTES): New constant. (init_regions, schedule_insns): Conditionalize the checking code by CHECK_DEAD_NOTES; avoid multiple calls to update_life_info. From-SVN: r46634
2001-10-28ChangeLog.0, [...]: Fix spelling errors.Joseph Myers1-1/+1
* ChangeLog.0, ChangeLog.1, ChangeLog.2, ChangeLog.3, ChangeLog.4, ChangeLog.5, ChangeLog, ChangeLog.lib, FSFChangeLog.10, ONEWS, c-common.c, caller-save.c, cfg.c, cfgcleanup.c, cfgrtl.c, collect2.c, df.h, diagnostic.h, final.c, gcse.c, gthr.h, haifa-sched.c, jump.c, local-alloc.c, profile.c, protoize.c, regmove.c, reload1.c, rtlanal.c, sched-vis.c, ssa.c, stmt.c, system.h, toplev.c: Fix spelling errors. From-SVN: r46580
2001-08-28df.h (struct df): Add rts_order variable.Daniel Berlin1-0/+1
2001-08-28 Daniel Berlin <dan@cgsoftware.com> * df.h (struct df): Add rts_order variable. * df.c (df_visit_next_rts): New function. (df_visit_next): Renamed to df_visit_next_rc (df_analyse_1): Allocate/compute/free rts_order as well. (df_rd_global_compute): Use df_visit_next_rc instead of df_visit_next. (df_ru_global_compute): Use df_visit_next_rts instead of df_visit_next. * flow.c (flow_reverse_top_sort_order_compute): New function. * basic-block.h: Add prototype. From-SVN: r45246
2001-08-22Makefile.in, [...]: replace "GNU CC" with "GCC".Lars Brinkhoff1-12/+12
* 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-06-28Makefile.in (OBJS): Add df.oJeff Law1-0/+297
* Makefile.in (OBJS): Add df.o (df.o): Add dependencies. * basic-block.h (flow_depth_first_order_compute): Declare. * flow.c (flow_depth_first_order_compute): No longer declare. Make external. * df.c, df.h: New files. * po/POTFILES.in: Update for new files. From-SVN: r43647