Mercurial > hg > CbC > CbC_gcc
diff gcc/sched-int.h @ 145:1830386684a0
gcc-9.2.0
author | anatofuz |
---|---|
date | Thu, 13 Feb 2020 11:34:05 +0900 |
parents | 84e7813d76e9 |
children |
line wrap: on
line diff
--- a/gcc/sched-int.h Thu Oct 25 07:37:49 2018 +0900 +++ b/gcc/sched-int.h Thu Feb 13 11:34:05 2020 +0900 @@ -1,6 +1,6 @@ /* Instruction scheduling pass. This file contains definitions used internally in the scheduler. - Copyright (C) 1992-2018 Free Software Foundation, Inc. + Copyright (C) 1992-2020 Free Software Foundation, Inc. This file is part of GCC. @@ -238,6 +238,8 @@ /* Cached cost of the dependency. Make sure to update UNKNOWN_DEP_COST when changing the size of this field. */ int cost:20; + + unsigned unused:4; }; #define UNKNOWN_DEP_COST ((int) ((unsigned int) -1 << 19)) @@ -454,8 +456,9 @@ }; /* Describe state of dependencies used during sched_analyze phase. */ -struct deps_desc +class deps_desc { +public: /* The *_insns and *_mems are paired lists. Each pending memory operation will have a pointer to the MEM rtx on one list and a pointer to the containing insn on the other list in the same place in the list. */ @@ -570,7 +573,7 @@ BOOL_BITFIELD readonly : 1; }; -typedef struct deps_desc *deps_t; +typedef class deps_desc *deps_t; /* This structure holds some state of the current scheduling pass, and contains some function pointers that abstract out some of the non-generic @@ -1346,14 +1349,14 @@ const rtx_insn *); extern bool sched_insn_is_legitimate_for_speculation_p (const rtx_insn *, ds_t); extern void add_dependence (rtx_insn *, rtx_insn *, enum reg_note); -extern void sched_analyze (struct deps_desc *, rtx_insn *, rtx_insn *); -extern void init_deps (struct deps_desc *, bool); -extern void init_deps_reg_last (struct deps_desc *); -extern void free_deps (struct deps_desc *); +extern void sched_analyze (class deps_desc *, rtx_insn *, rtx_insn *); +extern void init_deps (class deps_desc *, bool); +extern void init_deps_reg_last (class deps_desc *); +extern void free_deps (class deps_desc *); extern void init_deps_global (void); extern void finish_deps_global (void); -extern void deps_analyze_insn (struct deps_desc *, rtx_insn *); -extern void remove_from_deps (struct deps_desc *, rtx_insn *); +extern void deps_analyze_insn (class deps_desc *, rtx_insn *); +extern void remove_from_deps (class deps_desc *, rtx_insn *); extern void init_insn_reg_pressure_info (rtx_insn *); extern void get_implicit_reg_pending_clobbers (HARD_REG_SET *, rtx_insn *); @@ -1376,7 +1379,7 @@ extern void maybe_extend_reg_info_p (void); -extern void deps_start_bb (struct deps_desc *, rtx_insn *); +extern void deps_start_bb (class deps_desc *, rtx_insn *); extern enum reg_note ds_to_dt (ds_t); extern bool deps_pools_are_empty_p (void); @@ -1508,7 +1511,7 @@ extern void free_rgn_deps (void); extern int contributes_to_priority (rtx_insn *, rtx_insn *); extern void extend_rgns (int *, int *, sbitmap, int *); -extern void deps_join (struct deps_desc *, struct deps_desc *); +extern void deps_join (class deps_desc *, class deps_desc *); extern void rgn_setup_common_sched_info (void); extern void rgn_setup_sched_infos (void);