summaryrefslogtreecommitdiff
path: root/gcc/sched-deps.c
diff options
context:
space:
mode:
authordmalcolm <dmalcolm@138bc75d-0d04-0410-961f-82ee72b054a4>2014-08-19 15:31:23 +0000
committerdmalcolm <dmalcolm@138bc75d-0d04-0410-961f-82ee72b054a4>2014-08-19 15:31:23 +0000
commit047ccec44ee1d16eb51f2b54425f132604a4c304 (patch)
tree17b8f96916c163fe24d06c42649a5df0241e6894 /gcc/sched-deps.c
parent39a4a453059d2f49fab18e9b2a788789ecd4f2e0 (diff)
downloadgcc-047ccec44ee1d16eb51f2b54425f132604a4c304.tar.gz
DEP_PRO/DEP_CON scaffolding
gcc/ 2014-08-19 David Malcolm <dmalcolm@redhat.com> * sched-int.h (DEP_PRO): struct _dep's "pro" and "con" fields will eventually be rtx_insn *, but to help with transition, for now, convert from an access macro into a pair of functions: DEP_PRO returning an rtx_insn * and... (SET_DEP_PRO): New function, for use where DEP_PRO is used as an lvalue, returning an rtx&. (DEP_CON): Analogous changes to DEP_PRO above. (SET_DEP_CON): Likewise. * haifa-sched.c (create_check_block_twin): Replace DEP_CON used as an lvalue to SET_DEP_CON. * sched-deps.c (init_dep_1): Likewise for DEP_PRO and DEP_CON. (sd_copy_back_deps): Likewise for DEP_CON. (DEP_PRO): New function, adding a checked cast for now. (DEP_CON): Likewise. (SET_DEP_PRO): New function. (SET_DEP_CON): Likewise. / 2014-08-19 David Malcolm <dmalcolm@redhat.com> * rtx-classes-status.txt (TODO): Add SET_DEP_PRO, SET_DEP_CON. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@214164 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/sched-deps.c')
-rw-r--r--gcc/sched-deps.c26
1 files changed, 23 insertions, 3 deletions
diff --git a/gcc/sched-deps.c b/gcc/sched-deps.c
index 049927fe6e0..eaa2e4e00c6 100644
--- a/gcc/sched-deps.c
+++ b/gcc/sched-deps.c
@@ -103,8 +103,8 @@ dk_to_ds (enum reg_note dk)
void
init_dep_1 (dep_t dep, rtx pro, rtx con, enum reg_note type, ds_t ds)
{
- DEP_PRO (dep) = pro;
- DEP_CON (dep) = con;
+ SET_DEP_PRO (dep) = pro;
+ SET_DEP_CON (dep) = con;
DEP_TYPE (dep) = type;
DEP_STATUS (dep) = ds;
DEP_COST (dep) = UNKNOWN_DEP_COST;
@@ -1416,7 +1416,7 @@ sd_copy_back_deps (rtx to, rtx from, bool resolved_p)
dep_def _new_dep, *new_dep = &_new_dep;
copy_dep (new_dep, dep);
- DEP_CON (new_dep) = to;
+ SET_DEP_CON (new_dep) = to;
sd_add_dep (new_dep, resolved_p);
}
}
@@ -4915,4 +4915,24 @@ find_modifiable_mems (rtx head, rtx tail)
success_in_block);
}
+rtx_insn *DEP_PRO (dep_t dep)
+{
+ return safe_as_a <rtx_insn *> (dep->pro);
+}
+
+rtx_insn *DEP_CON (dep_t dep)
+{
+ return safe_as_a <rtx_insn *> (dep->con);
+}
+
+rtx& SET_DEP_PRO (dep_t dep)
+{
+ return dep->pro;
+}
+
+rtx& SET_DEP_CON (dep_t dep)
+{
+ return dep->con;
+}
+
#endif /* INSN_SCHEDULING */