#include "config.h"#include "system.h"#include "coretypes.h"#include "tm.h"#include "toplev.h"#include "rtl.h"#include "tm_p.h"#include "hard-reg-set.h"#include "regs.h"#include "function.h"#include "flags.h"#include "insn-config.h"#include "insn-attr.h"#include "except.h"#include "recog.h"#include "sched-int.h"#include "params.h"#include "cselib.h"#include "df.h"

Go to the source code of this file.
Definition at line 54 of file sched-deps.c.
Definition at line 194 of file sched-deps.c.
References alloc_INSN_LIST(), anti_dependency_cache, bitmap_bit_p(), bitmap_clear_bit(), bitmap_set_bit(), CALL_P, conditions_mutex_p(), gcc_assert, gcc_unreachable, INSN_LUID, LOG_LINKS, modified_in_p(), NOTE_P, NULL, output_dependency_cache, PUT_REG_NOTE_KIND, REG_DEP_ANTI, REG_DEP_OUTPUT, REG_NOTE_KIND, sched_get_condition(), true_dependency_cache, and XEXP.
Definition at line 357 of file sched-deps.c.
References add_dependence(), free_INSN_LIST_node(), next, NULL, and XEXP.
Definition at line 1397 of file sched-deps.c.
References abort, alloc_INSN_LIST(), bitmap_bit_p(), find_insn_list(), gcc_assert, GET_CODE, INSN_DELETED_P, INSN_DEP_COUNT, INSN_DEPEND, INSN_LUID, NOTE_P, NULL, PUT_REG_NOTE_KIND, SET_BIT, and TEST_BIT.
| static void add_insn_mem_dependence | ( | struct deps * | deps, | |
| rtx * | insn_list, | |||
| rtx * | mem_list, | |||
| rtx | insn, | |||
| rtx | mem | |||
| ) | [static] |
Definition at line 434 of file sched-deps.c.
References alloc_EXPR_LIST(), alloc_INSN_LIST(), canon_rtx(), cselib_subst_to_values(), current_sched_info, deps::pending_lists_length, shallow_copy_rtx, sched_info::use_cselib, and XEXP.
Definition at line 1435 of file sched-deps.c.
References add_forward_dependence(), insn, INSN_P, LOG_LINKS, NEXT_INSN, REG_NOTE_KIND, and XEXP.
Definition at line 177 of file sched-deps.c.
References COMPARISON_P, GET_CODE, NULL, reversed_comparison_code(), and XEXP.
Definition at line 371 of file sched-deps.c.
References anti_dependency_cache, bitmap_clear(), free_INSN_LIST_list(), INSN_LUID, LOG_LINKS, NULL, output_dependency_cache, and true_dependency_cache.
Referenced by fixup_sched_groups().
| static int deps_may_trap_p | ( | rtx | mem | ) | [static] |
Definition at line 106 of file sched-deps.c.
References addr(), FIRST_PSEUDO_REGISTER, get_reg_known_value(), REG_P, REGNO, rtx_addr_can_trap_p(), and XEXP.
Definition at line 1591 of file sched-deps.c.
References FREE_REG_SET, reg_pending_clobbers, reg_pending_sets, and reg_pending_uses.
Definition at line 394 of file sched-deps.c.
References add_dependence(), BLOCK_FOR_INSN, delete_all_dependences(), i, LOG_LINKS, prev_nonnote_insn(), REG_DEP_ANTI, REG_NOTE_KIND, SCHED_GROUP_P, and XEXP.
Referenced by sched_analyze_insn().
| static void flush_pending_lists | ( | struct deps * | deps, | |
| rtx | insn, | |||
| int | for_read, | |||
| int | for_write | |||
| ) | [static] |
Definition at line 458 of file sched-deps.c.
References add_dependence_list_and_free(), alloc_INSN_LIST(), free_EXPR_LIST_list(), deps::last_pending_memory_flush, NULL_RTX, deps::pending_flush_length, deps::pending_lists_length, deps::pending_read_insns, deps::pending_read_mems, deps::pending_write_insns, deps::pending_write_mems, REG_DEP_ANTI, and REG_DEP_OUTPUT.
Definition at line 1548 of file sched-deps.c.
References anti_dependency_cache, bitmap_clear(), cache_size, free(), i, NULL, output_dependency_cache, and true_dependency_cache.
Definition at line 1480 of file sched-deps.c.
References CLEAR_REG_SET, EXECUTE_IF_SET_IN_REG_SET, free(), free_EXPR_LIST_list(), free_INSN_LIST_list(), i, deps::last_pending_memory_flush, deps::pending_read_insns, deps::pending_read_mems, deps::pending_write_insns, deps::pending_write_mems, deps::reg_conditional_sets, deps::reg_last, and deps::reg_last_in_use.
| void init_dependency_caches | ( | int | luid | ) |
Definition at line 1515 of file sched-deps.c.
References anti_dependency_cache, bitmap_head, bitmap_initialize(), cache_size, i, n_basic_blocks, output_dependency_cache, true_dependency_cache, and xmalloc().
Definition at line 1455 of file sched-deps.c.
References FIRST_PSEUDO_REGISTER, deps::in_post_call_group_p, INIT_REG_SET, deps::last_function_call, deps::last_pending_memory_flush, deps::libcall_block_tail_insn, max_reg, deps::max_reg, max_reg_num(), deps::pending_flush_length, deps::pending_lists_length, deps::pending_read_insns, deps::pending_read_mems, deps::pending_write_insns, deps::pending_write_mems, deps::reg_conditional_sets, deps::reg_last, deps::reg_last_in_use, reload_completed, deps::sched_before_next_call, and xcalloc().
Definition at line 1580 of file sched-deps.c.
References ALLOC_REG_SET, NOT_A_BARRIER, reg_obstack, reg_pending_barrier, reg_pending_clobbers, reg_pending_sets, and reg_pending_uses.
Definition at line 1210 of file sched-deps.c.
References add_dependence_list_and_free(), alloc_EXPR_LIST(), alloc_INSN_LIST(), CALL_P, CANT_MOVE, CONST_OR_PURE_CALL_P, cselib_finish(), cselib_init(), cselib_process_insn(), current_sched_info, find_reg_note(), FIRST_PSEUDO_REGISTER, fixed_regs, flush_pending_lists(), frame_pointer_needed, FRAME_POINTER_REGNUM, free_INSN_LIST_list(), gcc_assert, gcc_unreachable, GEN_INT, GET_CODE, global_regs, HARD_FRAME_POINTER_REGNUM, HARD_REGNO_CALL_PART_CLOBBERED, i, deps::in_post_call_group_p, insn, JUMP_P, LABEL_P, deps::last_function_call, deps::last_pending_memory_flush, deps::libcall_block_tail_insn, LOG_LINKS, MAX_PENDING_LIST_LENGTH, MOVE_BARRIER, NEXT_INSN, NONJUMP_INSN_P, NOTE_INSN_EH_REGION_BEG, NOTE_INSN_EH_REGION_END, NOTE_INSN_LOOP_BEG, NOTE_INSN_LOOP_END, NOTE_LINE_NUMBER, NOTE_P, NULL, NULL_RTX, PATTERN, deps::pending_flush_length, prev_nonnote_insn(), r0, REG_DEP_ANTI, REG_EQUAL, REG_LIBCALL, REG_P, reg_pending_barrier, reg_pending_clobbers, reg_pending_sets, reg_pending_uses, reg_raw_mode, REG_RETVAL, REG_SAVE_NOTE, REG_SETJMP, regs_invalidated_by_call, reload_completed, sched_analyze_insn(), deps::sched_before_next_call, SET_DEST, SET_REGNO_REG_SET, SET_SRC, single_set, TEST_HARD_REG_BIT, sched_info::use_cselib, and XEXP.
Definition at line 484 of file sched-deps.c.
References add_dependence(), add_dependence_list(), add_insn_mem_dependence(), anti_dependence(), canon_rtx(), cselib_lookup(), cselib_subst_to_values(), current_sched_info, dest, FIRST_PSEUDO_REGISTER, flush_pending_lists(), gcc_assert, gen_rtx_CLOBBER, GET_CODE, GET_MODE, get_reg_known_equiv_p(), get_reg_known_value(), hard_regno_nregs, i, deps::last_function_call, deps::last_pending_memory_flush, MAX_PENDING_LIST_LENGTH, deps::max_reg, MEM_P, output_dependence(), PATTERN, deps::pending_lists_length, deps::pending_read_insns, deps::pending_read_mems, deps::pending_write_insns, deps::pending_write_mems, Pmode, read_modify_subreg_p(), REG_DEP_ANTI, REG_DEP_OUTPUT, REG_N_CALLS_CROSSED, REG_P, reg_pending_clobbers, reg_pending_sets, REGNO, reload_completed, sched_analyze_1(), sched_analyze_2(), SET, SET_REGNO_REG_SET, SET_SRC, shallow_copy_rtx, USE, sched_info::use_cselib, XEXP, XVECEXP, and XVECLEN.
Definition at line 649 of file sched-deps.c.
References add_dependence(), add_insn_mem_dependence(), alloc_INSN_LIST(), ASM_OPERANDS_INPUT, ASM_OPERANDS_INPUT_LENGTH, canon_rtx(), CANT_MOVE, CONST, cselib_lookup(), cselib_subst_to_values(), current_sched_info, deps_may_trap_p(), FIRST_PSEUDO_REGISTER, flush_pending_lists(), gcc_assert, GET_CODE, GET_MODE, get_reg_known_equiv_p(), get_reg_known_value(), GET_RTX_FORMAT, GET_RTX_LENGTH, hard_regno_nregs, i, JUMP_P, deps::last_pending_memory_flush, deps::max_reg, MEM, MEM_P, MEM_VOLATILE_P, PATTERN, deps::pending_read_insns, deps::pending_read_mems, deps::pending_write_insns, deps::pending_write_mems, Pmode, prev_nonnote_insn(), read_dependence(), REG, REG_DEP_ANTI, REG_N_CALLS_CROSSED, reg_pending_barrier, reg_pending_uses, REGNO, reload_completed, rtx_varies_p(), sched_analyze_1(), sched_analyze_2(), deps::sched_before_next_call, SCHED_GROUP_P, SET_REGNO_REG_SET, shallow_copy_rtx, TRUE_BARRIER, true_dependence(), USE, sched_info::use_cselib, XEXP, XVECEXP, and XVECLEN.
Definition at line 851 of file sched-deps.c.
References add_dependence(), add_dependence_list(), add_dependence_list_and_free(), alloc_INSN_LIST(), BARRIER_P, CALL_INSN_FUNCTION_USAGE, CALL_P, can_throw_internal(), CANT_MOVE, CLEAR_REG_SET, CLEAR_REGNO_REG_SET, sched_info::compute_jump_reg_dependencies, COND_EXEC_CODE, COND_EXEC_TEST, current_sched_info, EXECUTE_IF_SET_IN_REG_SET, find_reg_note(), FIRST_PSEUDO_REGISTER, fixup_sched_groups(), flush_pending_lists(), gcc_assert, GET_CODE, i, deps::in_post_call_group_p, INIT_REG_SET, INTVAL, IOR_REG_SET, JUMP_P, deps::last_function_call, deps::last_pending_memory_flush, deps::libcall_block_tail_insn, MAX_PENDING_LIST_LENGTH, deps::max_reg, MEM_VOLATILE_P, MINUS, MOVE_BARRIER, next, next_nonnote_insn(), NOT_A_BARRIER, NOTE_INSN_LOOP_BEG, NOTE_INSN_LOOP_END, NULL, PATTERN, deps::pending_read_insns, deps::pending_read_mems, deps::pending_write_insns, deps::pending_write_mems, PLUS, deps::reg_conditional_sets, REG_DEP_ANTI, REG_DEP_OUTPUT, deps::reg_last, deps::reg_last_in_use, REG_NOTES, REG_P, reg_pending_barrier, reg_pending_clobbers, reg_pending_sets, reg_pending_uses, REG_SETJMP, REGNO, RTX_CODE, sched_analyze_1(), sched_analyze_2(), SCHED_GROUP_P, SET, SET_DEST, SET_REGNO_REG_SET, SET_SRC, deps::deps_reg::sets, single_set, STACK_POINTER_REGNUM, sub, SUBREG_REG, tmp, TRUE_BARRIER, unsigned, XEXP, XVECEXP, and XVECLEN.
Definition at line 137 of file sched-deps.c.
References any_condjump_p(), cond, COND_EXEC_TEST, gen_rtx_fmt_ee(), GET_CODE, GET_MODE, onlyjump_p(), PATTERN, pc_rtx, pc_set(), reversed_comparison_code(), SET_SRC, src, UNKNOWN, and XEXP.
Referenced by add_dependence(), sched_analyze_insn(), and sched_insns_conditions_mutex_p().
bitmap_head* anti_dependency_cache [static] |
Definition at line 77 of file sched-deps.c.
| int cache_size |
Definition at line 79 of file sched-deps.c.
Referenced by CGTARG_LOOP_Optimize(), extend_dependency_caches(), free_dependency_caches(), init_dependency_caches(), SE_CT_New_Tile_Infos(), and Set_Shackle_Size_Info().
bitmap_head* output_dependency_cache [static] |
Definition at line 78 of file sched-deps.c.
enum reg_pending_barrier_mode reg_pending_barrier [static] |
Definition at line 61 of file sched-deps.c.
regset reg_pending_clobbers [static] |
Definition at line 48 of file sched-deps.c.
regset reg_pending_sets [static] |
Definition at line 47 of file sched-deps.c.
regset reg_pending_uses [static] |
Definition at line 49 of file sched-deps.c.
bitmap_head* true_dependency_cache [static] |
Definition at line 76 of file sched-deps.c.
1.5.6