#include "config.h"#include "system.h"#include "rtl.h"#include "tm_p.h"#include "insn-config.h"#include "recog.h"#include "function.h"#include "regs.h"#include "obstack.h"#include "hard-reg-set.h"#include "basic-block.h"#include "sbitmap.h"#include "bitmap.h"#include "df.h"#include "fibheap.h"

Go to the source code of this file.
| #define FOR_EACH_BB_IN_BITMAP | ( | BITMAP, | |||
| MIN, | |||||
| BB, | |||||
| CODE | ) |
Value:
do \ { \ unsigned int node_; \ EXECUTE_IF_SET_IN_BITMAP (BITMAP, MIN, node_, \ {(BB) = BASIC_BLOCK (node_); CODE;}); \ } \ while (0)
Definition at line 172 of file df.c.
Referenced by df_analyze_subcfg(), df_bitmaps_alloc(), df_du_chain_create(), df_lr_local_compute(), df_luids_set(), df_rd_local_compute(), df_refs_record(), df_refs_update(), df_reg_def_chain_create(), df_reg_info_compute(), df_reg_use_chain_create(), df_ru_local_compute(), and df_ud_chain_create().
Definition at line 515 of file df.c.
References bitmap_set_bit(), BITMAP_XMALLOC, bitmap_zero, df_insn_table_realloc(), df_ref_obstack, df_reg_table_realloc(), FOR_EACH_BB, gcc_obstack_init, get_max_uid(), basic_block_def::index, last_basic_block, n_insns, xcalloc(), and xmalloc().
Referenced by df_analyse(), df_analyze(), and df_analyze_subcfg().
Definition at line 2326 of file df.c.
References abort, bitmap_zero, df_alloc(), df_analyse_1(), df_free(), df_modified_p(), last_basic_block, and max_reg_num().
Referenced by reg_alloc(), ssa_const_prop(), and ssa_fast_dce().
Definition at line 1974 of file df.c.
References BACKWARD, DF_BB_INFO, df_bitmaps_alloc(), df_bitmaps_free(), DF_DU_CHAIN, df_du_chain_create(), DF_LR, df_lr_local_compute(), df_lr_transfer_function(), df_luids_set(), DF_RD, DF_RD_CHAIN, df_rd_local_compute(), df_rd_transfer_function(), df_refs_process(), df_refs_queue(), df_refs_record(), df_refs_update(), df_reg_def_chain_create(), DF_REG_INFO, df_reg_info_compute(), df_reg_use_chain_create(), DF_RU, DF_RU_CHAIN, df_ru_local_compute(), df_ru_transfer_function(), DF_UD_CHAIN, df_ud_chain_create(), flow_depth_first_order_compute(), flow_reverse_top_sort_order_compute(), FOR_EACH_BB, FORWARD, free(), in, basic_block_def::index, iterative_dataflow_bitmap(), kill, last_basic_block, n_basic_blocks, NULL, out, UNION, and xmalloc().
Referenced by df_analyse().
| static void df_bb_du_chain_create | ( | struct df * | df, | |
| basic_block | bb, | |||
| bitmap | ru | |||
| ) | [static] |
Definition at line 1467 of file df.c.
References bitmap_bit_p(), bitmap_clear_bit(), bitmap_copy(), bitmap_set_bit(), DF_BB_INFO, df_link_create(), DF_REF_CHAIN, DF_REF_ID, DF_REF_REGNO, basic_block_def::end, basic_block_def::head, insn, INSN_P, INSN_UID, df_link::next, PREV_INSN, df_link::ref, and bb_info::ru_out.
Referenced by df_du_chain_create().
| static struct ref* df_bb_insn_regno_first_def_find | ( | struct df * | df, | |
| bb | , | |||
| rtx | insn, | |||
| unsigned int | regno | |||
| ) | [static, read] |
Definition at line 3207 of file df.c.
References DF_REF_REGNO, INSN_UID, df_link::next, and df_link::ref.
Referenced by df_bb_def_use_swap(), and df_bb_single_def_use_insn_find().
| static struct ref* df_bb_insn_regno_last_use_find | ( | struct df * | df, | |
| bb | , | |||
| rtx | insn, | |||
| unsigned int | regno | |||
| ) | [static, read] |
Definition at line 3182 of file df.c.
References DF_REF_REGNO, INSN_UID, df_link::next, and df_link::ref.
Referenced by df_bb_def_use_swap().
| static void df_bb_lr_local_compute | ( | struct df * | df, | |
| basic_block | bb | |||
| ) | [static] |
Definition at line 1805 of file df.c.
References bitmap_clear_bit(), bitmap_set_bit(), DF_BB_INFO, DF_REF_REGNO, basic_block_def::end, basic_block_def::head, insn, INSN_P, INSN_UID, bb_info::lr_def, bb_info::lr_use, bb_info::lr_valid, df_link::next, PREV_INSN, and df_link::ref.
Referenced by df_lr_local_compute().
| static int df_bb_luids_set | ( | struct df * | df, | |
| basic_block | bb | |||
| ) | [static] |
Definition at line 1933 of file df.c.
References DF_INSN_LUID, basic_block_def::end, basic_block_def::head, ref::insn, INSN_P, and NEXT_INSN.
Referenced by df_luids_set().
| static void df_bb_rd_local_compute | ( | struct df * | df, | |
| basic_block | bb | |||
| ) | [static] |
Definition at line 1670 of file df.c.
References bitmap_clear_bit(), bitmap_set_bit(), DF_BB_INFO, DF_REF_ID, DF_REF_REGNO, basic_block_def::end, basic_block_def::head, insn, INSN_P, INSN_UID, df_link::next, NEXT_INSN, bb_info::rd_gen, bb_info::rd_kill, bb_info::rd_valid, and df_link::ref.
Referenced by df_rd_local_compute().
| static void df_bb_refs_record | ( | struct df * | df, | |
| basic_block | bb | |||
| ) | [static] |
Definition at line 1318 of file df.c.
References df_insn_refs_record(), basic_block_def::end, basic_block_def::head, ref::insn, INSN_P, and NEXT_INSN.
Referenced by df_refs_record().
| static int df_bb_refs_update | ( | struct df * | df, | |
| basic_block | bb | |||
| ) | [static] |
Definition at line 2239 of file df.c.
References bitmap_bit_p(), count, df_insn_refs_record(), df_insn_refs_unlink(), basic_block_def::end, basic_block_def::head, ref::insn, INSN_UID, and NEXT_INSN.
Referenced by df_refs_update().
| static void df_bb_reg_def_chain_create | ( | struct df * | df, | |
| basic_block | bb | |||
| ) | [static] |
Definition at line 1358 of file df.c.
References df_link_create(), DF_REF_ID, DF_REF_REGNO, basic_block_def::end, basic_block_def::head, ref::insn, INSN_P, INSN_UID, df_link::next, PREV_INSN, and df_link::ref.
Referenced by df_reg_def_chain_create().
| static void df_bb_reg_info_compute | ( | struct df * | df, | |
| basic_block | bb, | |||
| bitmap | live | |||
| ) | [static] |
Definition at line 1861 of file df.c.
References bitmap_clear_bit(), bitmap_copy(), bitmap_set_bit(), DF_BB_INFO, DF_REF_REGNO, basic_block_def::end, EXECUTE_IF_SET_IN_BITMAP, basic_block_def::head, insn, INSN_P, INSN_UID, reg_info::lifetime, bb_info::lr_out, reg_info::n_defs, reg_info::n_uses, df_link::next, PREV_INSN, and df_link::ref.
Referenced by df_reg_info_compute().
| int df_bb_reg_live_end_p | ( | df | , | |
| basic_block | bb, | |||
| rtx | reg | |||
| ) |
Definition at line 3076 of file df.c.
References abort, bitmap_bit_p(), DF_BB_INFO, bb_info::lr_in, bb_info::lr_out, and REGNO.
| int df_bb_reg_live_start_p | ( | df | , | |
| basic_block | bb, | |||
| rtx | reg | |||
| ) |
Definition at line 3058 of file df.c.
References abort, bitmap_bit_p(), DF_BB_INFO, bb_info::lr_in, and REGNO.
| static void df_bb_reg_use_chain_create | ( | struct df * | df, | |
| basic_block | bb | |||
| ) | [static] |
Definition at line 1414 of file df.c.
References df_link_create(), DF_REF_ID, DF_REF_REGNO, basic_block_def::end, basic_block_def::head, ref::insn, INSN_P, INSN_UID, df_link::next, NEXT_INSN, and df_link::ref.
Referenced by df_reg_use_chain_create().
| static struct ref* df_bb_regno_first_def_find | ( | struct df * | df, | |
| bb | , | |||
| unsigned int | regno | |||
| ) | [static, read] |
Definition at line 3158 of file df.c.
References DF_REF_BB, df_link::next, and df_link::ref.
Referenced by add_deps_for_def(), add_deps_for_use(), and df_bb_regs_lives_compare().
| static struct ref* df_bb_regno_last_use_find | ( | struct df * | df, | |
| bb | , | |||
| unsigned int | regno | |||
| ) | [static, read] |
Definition at line 3134 of file df.c.
References DF_REF_BB, df_link::next, and df_link::ref.
Referenced by df_bb_regs_lives_compare().
| int df_bb_regs_lives_compare | ( | struct df * | df, | |
| basic_block | bb, | |||
| rtx | reg1, | |||
| rtx | reg2 | |||
| ) |
| static void df_bb_ru_local_compute | ( | struct df * | df, | |
| basic_block | bb | |||
| ) | [static] |
Definition at line 1733 of file df.c.
References bitmap_clear_bit(), bitmap_set_bit(), DF_BB_INFO, DF_REF_ID, DF_REF_REGNO, basic_block_def::end, basic_block_def::head, insn, INSN_P, INSN_UID, df_link::next, PREV_INSN, df_link::ref, bb_info::ru_gen, bb_info::ru_kill, and bb_info::ru_valid.
Referenced by df_ru_local_compute().
| static void df_bb_ud_chain_create | ( | struct df * | df, | |
| basic_block | bb | |||
| ) | [static] |
Definition at line 1548 of file df.c.
References bitmap_bit_p(), DF_BB_INFO, df_link_create(), DF_REF_CHAIN, DF_REF_ID, DF_REF_REGNO, basic_block_def::end, basic_block_def::head, ref::insn, INSN_P, INSN_UID, memset, df_link::next, NEXT_INSN, bb_info::rd_in, and df_link::ref.
Referenced by df_ud_chain_create().
Definition at line 390 of file df.c.
References BITMAP_XMALLOC, bitmap_zero, DF_BB_INFO, df_bitmaps_free(), DF_LR, DF_RD, DF_RU, FOR_EACH_BB, bb_info::lr_def, bb_info::lr_in, bb_info::lr_out, bb_info::lr_use, bb_info::lr_valid, max_reg_num(), bb_info::rd_gen, bb_info::rd_in, bb_info::rd_kill, bb_info::rd_out, bb_info::rd_valid, bb_info::ru_gen, bb_info::ru_in, bb_info::ru_kill, bb_info::ru_out, and bb_info::ru_valid.
Referenced by df_analyse_1(), and df_analyze_1().
Definition at line 457 of file df.c.
References BITMAP_XFREE, DF_BB_INFO, DF_LR, DF_RD, DF_RU, FOR_EACH_BB, bb_info::lr_def, bb_info::lr_in, bb_info::lr_out, bb_info::lr_use, NULL, bb_info::rd_gen, bb_info::rd_in, bb_info::rd_kill, bb_info::rd_out, bb_info::ru_gen, bb_info::ru_in, bb_info::ru_kill, and bb_info::ru_out.
Referenced by df_analyse_1(), df_analyze_1(), df_bitmaps_alloc(), and df_free().
Definition at line 3271 of file df.c.
References DF_REF_ID, DF_REF_REG_DEF_P, and fprintf().
Referenced by debug_df_chain(), df_chains_dump(), df_dump(), df_insn_debug(), df_ref_debug(), df_refs_chain_dump(), and df_regno_debug().
Definition at line 3286 of file df.c.
References DF_REF_ID, DF_REF_REG_DEF_P, DF_REF_REGNO, and fprintf().
Referenced by df_insn_debug_regno().
Definition at line 2914 of file df.c.
References DF_REF_CHAIN, df_link::next, and df_link::ref.
Referenced by df_insn_dominates_all_uses_p().
Definition at line 2961 of file df.c.
References bitmap_bit_p(), DF_REF_BBNO, DF_REF_CHAIN, df_link::next, and df_link::ref.
Referenced by df_insn_dominates_uses_p().
Definition at line 925 of file df.c.
References CLASS_CANNOT_CHANGE_MODE_P, DF_REF_MODE_CHANGE, DF_REF_READ_WRITE, df_ref_record(), DF_REF_REG_DEF, dst, flags, GET_CODE, GET_MODE, ref::loc, read_modify_subreg_p(), REG, SET_DEST, SUBREG_REG, XEXP, XVECEXP, and XVECLEN.
Referenced by df_def_record_1(), and df_defs_record().
Definition at line 723 of file df.c.
References DF_REF_CHAIN, DF_REF_ID, DF_REF_REGNO, df_ref_unlink(), df_link::next, and df_link::ref.
Referenced by df_insn_refs_unlink(), and df_ref_remove().
Definition at line 986 of file df.c.
References df_def_record_1(), GET_CODE, RTX_CODE, SET, XVECEXP, and XVECLEN.
Referenced by df_defs_record(), and df_insn_refs_record().
Definition at line 1528 of file df.c.
References BITMAP_XFREE, BITMAP_XMALLOC, df_bb_du_chain_create(), and FOR_EACH_BB_IN_BITMAP.
Referenced by df_analyse_1(), and df_analyze_1().
Definition at line 3303 of file df.c.
Referenced by reg_alloc(), see_initialize_data_structures(), and web_main().
Definition at line 565 of file df.c.
References BITMAP_XFREE, DF_ALL, df_bitmaps_free(), df_ref_obstack, free(), NULL, and obstack_free.
Referenced by df_analyse(), df_analyze(), and df_finish().
Definition at line 2179 of file df.c.
Referenced by iv_analysis_loop_init(), move_loop_invariants(), reg_alloc(), see_initialize_data_structures(), ssa_const_prop(), and web_main().
Definition at line 2457 of file df.c.
References abort, delete_insn(), df_insn_modify(), and NEXT_INSN.
Referenced by delete_moves(), ssa_ccp_df_delete_unreachable_insns(), and ssa_fast_dce().
Definition at line 2936 of file df.c.
References df_def_dominates_all_uses_p(), INSN_UID, df_link::next, and df_link::ref.
Definition at line 2992 of file df.c.
References bitmap_bit_p(), df_def_dominates_uses_p(), DF_REF_BBNO, INSN_UID, df_link::next, and df_link::ref.
| void df_insn_modify | ( | struct df * | df, | |
| basic_block | bb, | |||
| rtx | insn | |||
| ) |
Definition at line 2483 of file df.c.
Referenced by delete_useless_defs(), df_analyze_subcfg(), df_insn_delete(), df_insn_mem_replace(), df_insns_modify(), df_ref_reg_replace(), emit_loads(), insert_stores(), move_invariant_reg(), optimize_unexecutable_edges(), rewrite_program(), spill_coalescing(), and ssa_ccp_substitute_constants().
| rtx df_insn_move_before | ( | struct df * | df, | |
| basic_block | bb, | |||
| rtx | insn, | |||
| basic_block | before_bb, | |||
| rtx | before_insn | |||
| ) |
| static void df_insn_refs_record | ( | struct df * | df, | |
| basic_block | bb, | |||
| rtx | insn | |||
| ) | [static] |
Definition at line 1224 of file df.c.
References CALL_INSN_FUNCTION_USAGE, df_defs_record(), DF_EQUIV_NOTES, DF_HARD_REGS, DF_REF_REG_USE, df_reg_clobber_gen(), df_reg_use_gen(), df_uses_record(), FIRST_PSEUDO_REGISTER, GET_CODE, global_regs, INSN_P, PATTERN, REG_EQUAL, REG_EQUIV, REG_NOTE_KIND, REG_NOTES, regs_invalidated_by_call, SET_DEST, STACK_POINTER_REGNUM, TEST_HARD_REG_BIT, USE, x, and XEXP.
Referenced by df_bb_refs_record(), and df_bb_refs_update().
Definition at line 2382 of file df.c.
References df_def_unlink(), df_use_unlink(), INSN_UID, df_link::next, and df_link::ref.
Referenced by df_bb_refs_update().
Definition at line 2890 of file df.c.
References DF_REF_REGNO, INSN_UID, df_link::next, and df_link::ref.
Definition at line 303 of file df.c.
References BITMAP_XMALLOC, bitmap_zero, memset, and xrealloc().
Referenced by df_alloc(), df_insn_modify(), and df_insns_modify().
| static void df_insns_modify | ( | struct df * | df, | |
| basic_block | bb, | |||
| rtx | first_insn, | |||
| rtx | last_insn | |||
| ) | [static] |
Definition at line 2755 of file df.c.
References abort, CONST_OR_PURE_CALL_P, df_insn_modify(), df_insn_table_realloc(), GET_CODE, INSN_UID, and NEXT_INSN.
Referenced by df_jump_pattern_emit_after(), df_pattern_emit_after(), and df_pattern_emit_before().
Definition at line 643 of file df.c.
References df_ref_obstack, df_link::next, obstack_alloc, and df_link::ref.
Referenced by df_bb_du_chain_create(), df_bb_reg_def_chain_create(), df_bb_reg_use_chain_create(), df_bb_ud_chain_create(), and df_refs_process().
Definition at line 1845 of file df.c.
References df_bb_lr_local_compute(), and FOR_EACH_BB_IN_BITMAP.
Referenced by df_analyse_1(), and df_analyze_1().
| static void df_lr_transfer_function | ( | bb | , | |
| int * | changed, | |||
| bitmap | in, | |||
| bitmap | out, | |||
| bitmap | use, | |||
| bitmap | def, | |||
| data | ||||
| ) | [static] |
Definition at line 1658 of file df.c.
References bitmap_union_of_diff().
Referenced by df_analyse_1(), and df_analyze_1().
Definition at line 1957 of file df.c.
References df_bb_luids_set(), and FOR_EACH_BB_IN_BITMAP.
Referenced by df_analyse_1(), and df_analyze_1().
Definition at line 2300 of file df.c.
References bitmap_bit_p(), FOR_EACH_BB, and basic_block_def::index.
Referenced by df_analyse(), and df_analyze().
| rtx df_pattern_emit_before | ( | df | , | |
| rtx | pattern, | |||
| basic_block | bb, | |||
| rtx | insn | |||
| ) |
Definition at line 2790 of file df.c.
References abort, df_insns_modify(), emit_insn_before(), basic_block_def::head, NEXT_INSN, PREV_INSN, and prev_insn.
Referenced by df_insn_move_before().
Definition at line 1717 of file df.c.
References df_bb_rd_local_compute(), and FOR_EACH_BB_IN_BITMAP.
Referenced by df_analyse_1(), and df_analyze_1().
| static void df_rd_transfer_function | ( | bb | , | |
| int * | changed, | |||
| bitmap | in, | |||
| bitmap | out, | |||
| bitmap | gen, | |||
| bitmap | kill, | |||
| data | ||||
| ) | [static] |
Definition at line 1639 of file df.c.
References bitmap_union_of_diff().
Referenced by df_analyse_1(), and df_analyze_1().
| static struct ref* df_ref_create | ( | struct df * | df, | |
| rtx | reg, | |||
| rtx * | loc, | |||
| rtx | insn, | |||
| enum df_ref_type | ref_type, | |||
| enum df_ref_flags | ref_flags | |||
| ) | [static, read] |
Definition at line 778 of file df.c.
References DF_REF_CHAIN, DF_REF_FLAGS, DF_REF_ID, DF_REF_INSN, DF_REF_LOC, df_ref_obstack, DF_REF_REG, DF_REF_REG_DEF, DF_REF_TYPE, INSN_UID, obstack_alloc, and xrealloc().
Referenced by df_ref_record_1().
Definition at line 3551 of file df.c.
References df_chain_dump(), DF_INSN_LUID, DF_REF_BBNO, DF_REF_CHAIN, DF_REF_ID, DF_REF_INSN, DF_REF_REG_DEF_P, DF_REF_REGNO, fprintf(), and INSN_UID.
Referenced by debug_df_defno(), debug_df_ref(), debug_df_useno(), df_create_unused_note(), df_ri_bb_compute(), df_set_dead_notes_for_mw(), and df_set_unused_notes_for_mw().
| static void df_ref_record | ( | struct df * | df, | |
| rtx | reg, | |||
| rtx * | loc, | |||
| rtx | insn, | |||
| enum df_ref_type | ref_type, | |||
| enum df_ref_flags | ref_flags | |||
| ) | [static] |
Definition at line 845 of file df.c.
References abort, DF_HARD_REGS, df_ref_record_1(), FIRST_PSEUDO_REGISTER, GET_CODE, GET_MODE, GET_MODE_SIZE, HARD_REGNO_NREGS, REG, REGNO, regno_reg_rtx, SUBREG_BYTE, SUBREG_REG, subreg_regno_offset(), and word_mode.
Referenced by df_bb_refs_record(), df_def_record_1(), df_insn_refs_record(), df_record_entry_block_defs(), and df_uses_record().
| static void df_ref_record_1 | ( | struct df * | df, | |
| rtx | reg, | |||
| rtx * | loc, | |||
| rtx | insn, | |||
| enum df_ref_type | ref_type, | |||
| enum df_ref_flags | ref_flags | |||
| ) | [static] |
Definition at line 659 of file df.c.
References abort, df_link::next, NULL, and df_link::ref.
Referenced by df_bb_def_use_swap(), df_def_unlink(), df_ref_remove(), and df_use_unlink().
Definition at line 2207 of file df.c.
References df_link_create(), and DF_REF_INSN_UID.
Referenced by df_analyse_1(), and df_analyze_1().
Definition at line 2194 of file df.c.
Referenced by df_analyse_1(), df_analyze_1(), and df_refs_update().
Definition at line 1340 of file df.c.
References df_bb_refs_record(), and FOR_EACH_BB_IN_BITMAP.
Referenced by df_analyse_1(), df_analyze_1(), and df_rescan_blocks().
Definition at line 2276 of file df.c.
References count, df_bb_refs_update(), df_refs_queue(), df_reg_table_realloc(), FOR_EACH_BB_IN_BITMAP, and max_reg_num().
Referenced by df_analyse_1(), df_analyze_1(), and df_analyze_subcfg().
| static rtx df_reg_clobber_gen | ( | unsigned int | regno | ) | [static] |
Definition at line 627 of file df.c.
References gen_rtx_CLOBBER, GET_MODE, and regno_reg_rtx.
Referenced by df_insn_refs_record().
Definition at line 1398 of file df.c.
References df_bb_reg_def_chain_create(), and FOR_EACH_BB_IN_BITMAP.
Referenced by df_analyse_1(), and df_analyze_1().
Definition at line 1913 of file df.c.
References BITMAP_XFREE, BITMAP_XMALLOC, df_bb_reg_info_compute(), and FOR_EACH_BB_IN_BITMAP.
Referenced by df_analyse_1(), and df_analyze_1().
Definition at line 333 of file df.c.
References max_reg_num(), memset, and xrealloc().
Referenced by df_alloc(), and df_refs_update().
Definition at line 1452 of file df.c.
References df_bb_reg_use_chain_create(), and FOR_EACH_BB_IN_BITMAP.
Referenced by df_analyse_1(), and df_analyze_1().
| static rtx df_reg_use_gen | ( | unsigned int | regno | ) | [static] |
Definition at line 613 of file df.c.
References gen_rtx_USE, GET_MODE, and regno_reg_rtx.
Referenced by df_insn_refs_record().
| basic_block df_regno_bb | ( | struct df * | df, | |
| unsigned int | regno | |||
| ) |
Definition at line 3019 of file df.c.
Referenced by df_bb_regs_lives_compare(), df_dump(), and df_reg_global_p().
Definition at line 3533 of file df.c.
References df_chain_dump(), and fprintf().
Referenced by debug_df_reg(), and debug_df_regno().
Definition at line 2518 of file df.c.
References args, GET_CODE, replace_args::insn, replace_args::match, mem, MEM, replace_args::modified, NULL_RTX, replace_args::replacement, rtx_equal_p(), and validate_change().
Referenced by df_insn_mem_replace().
Definition at line 2589 of file df.c.
References args, replace_args::insn, replace_args::match, replace_args::modified, NULL_RTX, replace_args::replacement, validate_change(), and x.
Referenced by df_refs_reg_replace().
Definition at line 1790 of file df.c.
References df_bb_ru_local_compute(), and FOR_EACH_BB_IN_BITMAP.
Referenced by df_analyse_1(), and df_analyze_1().
| static void df_ru_transfer_function | ( | bb | , | |
| int * | changed, | |||
| bitmap | in, | |||
| bitmap | out, | |||
| bitmap | gen, | |||
| bitmap | kill, | |||
| data | ||||
| ) | [static] |
Definition at line 1648 of file df.c.
References bitmap_union_of_diff().
Referenced by df_analyse_1(), and df_analyze_1().
Definition at line 1624 of file df.c.
References df_bb_ud_chain_create(), and FOR_EACH_BB_IN_BITMAP.
Referenced by df_analyse_1(), and df_analyze_1().
Definition at line 749 of file df.c.
References DF_REF_CHAIN, DF_REF_ID, DF_REF_REGNO, df_ref_unlink(), df_link::next, and df_link::ref.
Referenced by df_bb_def_use_swap(), df_insn_refs_unlink(), and df_ref_remove().
| static void df_uses_record | ( | struct df * | df, | |
| rtx * | loc, | |||
| enum df_ref_type | ref_type, | |||
| basic_block | bb, | |||
| rtx | insn, | |||
| enum df_ref_flags | flags | |||
| ) | [static] |
Definition at line 1016 of file df.c.
References abort, ASM_OPERANDS_INPUT, ASM_OPERANDS_INPUT_LENGTH, CLASS_CANNOT_CHANGE_MODE_P, CONST, DF_REF_MODE_CHANGE, DF_REF_READ_WRITE, df_ref_record(), DF_REF_REG_DEF, DF_REF_REG_MEM_LOAD, DF_REF_REG_MEM_STORE, DF_REF_REG_USE, dst, GET_CODE, GET_MODE, GET_RTX_FORMAT, GET_RTX_LENGTH, MEM, PC, read_modify_subreg_p(), REG, RETURN, RTX_CODE, SET, SET_DEST, SET_SRC, SUBREG_REG, x, XEXP, XVECEXP, and XVECLEN.
Referenced by df_bb_refs_record(), df_insn_refs_record(), df_record_exit_block_uses(), and df_uses_record().
| static void hybrid_search_bitmap | ( | basic_block | block, | |
| bitmap * | in, | |||
| bitmap * | out, | |||
| bitmap * | gen, | |||
| bitmap * | kill, | |||
| enum df_flow_dir | dir, | |||
| enum df_confluence_op | conf_op, | |||
| transfer_function_bitmap | transfun, | |||
| sbitmap | visited, | |||
| sbitmap | pending, | |||
| void * | data | |||
| ) | [static] |
Definition at line 3629 of file df.c.
References bitmap_a_and_b, bitmap_a_or_b, bitmap_zero, changed, edge::dest, ENTRY_BLOCK_PTR, EXIT_BLOCK_PTR, FORWARD, INTERSECTION, basic_block_def::pred, edge::pred_next, RESET_BIT, SET_BIT, edge::src, basic_block_def::succ, edge::succ_next, TEST_BIT, and UNION.
Referenced by hybrid_search_bitmap(), and iterative_dataflow_bitmap().
| static void hybrid_search_sbitmap | ( | basic_block | block, | |
| sbitmap * | in, | |||
| sbitmap * | out, | |||
| sbitmap * | gen, | |||
| sbitmap * | kill, | |||
| enum df_flow_dir | dir, | |||
| enum df_confluence_op | conf_op, | |||
| transfer_function_sbitmap | transfun, | |||
| sbitmap | visited, | |||
| sbitmap | pending, | |||
| void * | data | |||
| ) | [static] |
Definition at line 3740 of file df.c.
References changed, edge::dest, ENTRY_BLOCK_PTR, EXIT_BLOCK_PTR, FORWARD, INTERSECTION, basic_block_def::pred, edge::pred_next, RESET_BIT, sbitmap_a_and_b(), sbitmap_a_or_b(), sbitmap_zero(), SET_BIT, edge::src, basic_block_def::succ, edge::succ_next, TEST_BIT, and UNION.
Referenced by hybrid_search_sbitmap(), and iterative_dataflow_sbitmap().
| void iterative_dataflow_bitmap | ( | bitmap * | in, | |
| bitmap * | out, | |||
| bitmap * | gen, | |||
| bitmap * | kill, | |||
| bitmap | blocks, | |||
| enum df_flow_dir | dir, | |||
| enum df_confluence_op | conf_op, | |||
| transfer_function_bitmap | transfun, | |||
| int * | order, | |||
| void * | data | |||
| ) |
Definition at line 3931 of file df.c.
References BASIC_BLOCK, bitmap_copy(), EXECUTE_IF_SET_IN_BITMAP, fibheap_delete(), fibheap_empty(), fibheap_extract_min(), fibheap_insert(), fibheap_new(), FORWARD, hybrid_search_bitmap(), basic_block_def::index, last_basic_block, sbitmap_alloc(), sbitmap_first_set_bit(), sbitmap_free, sbitmap_zero(), SET_BIT, size_t, TEST_BIT, visited, and worklist.
Referenced by df_analyse_1().
| void iterative_dataflow_sbitmap | ( | sbitmap * | in, | |
| sbitmap * | out, | |||
| sbitmap * | gen, | |||
| sbitmap * | kill, | |||
| bitmap | blocks, | |||
| enum df_flow_dir | dir, | |||
| enum df_confluence_op | conf_op, | |||
| transfer_function_sbitmap | transfun, | |||
| int * | order, | |||
| void * | data | |||
| ) |
Definition at line 3872 of file df.c.
References BASIC_BLOCK, EXECUTE_IF_SET_IN_BITMAP, fibheap_delete(), fibheap_empty(), fibheap_extract_min(), fibheap_insert(), fibheap_new(), FORWARD, hybrid_search_sbitmap(), basic_block_def::index, last_basic_block, sbitmap_alloc(), sbitmap_copy(), sbitmap_first_set_bit(), sbitmap_free, sbitmap_zero(), SET_BIT, size_t, TEST_BIT, visited, and worklist.
| static void hybrid_search_sbitmap PARAMS | ( | (basic_block, sbitmap *, sbitmap *, sbitmap *, sbitmap *, enum df_flow_dir, enum df_confluence_op, transfer_function_sbitmap, sbitmap, sbitmap, void *) | ) | [static] |
| static void hybrid_search_bitmap PARAMS | ( | (basic_block, bitmap *, bitmap *, bitmap *, bitmap *, enum df_flow_dir, enum df_confluence_op, transfer_function_bitmap, sbitmap, sbitmap, void *) | ) | [static] |
| static void df_rd_transfer_function PARAMS | ( | (int, int *, bitmap, bitmap, bitmap, bitmap, void *) | ) | [static] |
| static struct ref* df_bb_insn_regno_last_use_find PARAMS | ( | (struct df *, basic_block, rtx, unsigned int) | ) | [static, read] |
| static struct ref* df_bb_regno_last_use_find PARAMS | ( | (struct df *, basic_block, unsigned int) | ) | [static, read] |
| static int df_bb_luids_set PARAMS | ( | (struct df *df, basic_block) | ) | [static] |
| static void df_bb_du_chain_create PARAMS | ( | (struct df *, basic_block, bitmap) | ) | [static] |
| static void df_bb_refs_record PARAMS | ( | (struct df *, basic_block) | ) | [static] |
| static void df_uses_record PARAMS | ( | (struct df *, rtx *, enum df_ref_type, basic_block, rtx, enum df_ref_flags) | ) | [static] |
| static struct ref* df_ref_create PARAMS | ( | (struct df *, rtx, rtx *, rtx, enum df_ref_type, enum df_ref_flags) | ) | [static, read] |
| static void df_insn_refs_unlink PARAMS | ( | (struct df *, basic_block, rtx) | ) | [static] |
| static rtx df_reg_clobber_gen PARAMS | ( | (unsigned int) | ) | [static] |
Definition at line 906 of file df.c.
References GET_CODE, GET_MODE, GET_MODE_SIZE, SUBREG_REG, and UNITS_PER_WORD.
Referenced by df_def_record_1(), df_uses_record(), and sched_analyze_1().
struct obstack df_ref_obstack [static] |
Definition at line 181 of file df.c.
Referenced by df_alloc(), df_free(), df_link_create(), and df_ref_create().
1.5.6