(LINK_COST_ZERO, LINK_COST_FREE): New macros.
authorTom Wood <wood@gnu.org>
Tue, 25 Aug 1992 20:21:53 +0000 (20:21 +0000)
committerTom Wood <wood@gnu.org>
Tue, 25 Aug 1992 20:21:53 +0000 (20:21 +0000)
From-SVN: r1949

gcc/rtl.h

index 7c7edbe59c348a2fc51a08f50ebf0d2795f369c0..7f2bee91389464353defad23092052dc91dcd39c 100644 (file)
--- a/gcc/rtl.h
+++ b/gcc/rtl.h
@@ -481,6 +481,16 @@ extern char *note_insn_name[];
    with the preceding insn.  */
 #define SCHED_GROUP_P(INSN) ((INSN)->in_struct)
 
+/* During sched, for the LOG_LINKS of an insn, these cache the adjusted
+   cost of the dependence link.  The cost of executing an instruction
+   may vary based on how the results are used.  LINK_COST_ZERO is 1 when
+   the cost through the link varies and is unchanged (i.e., the link has
+   zero additional cost).  LINK_COST_FREE is 1 when the cost through the
+   link is zero (i.e., the link makes the cost free).  In other cases,
+   the adjustment to the cost is recomputed each time it is needed.  */
+#define LINK_COST_ZERO(X) ((X)->jump)
+#define LINK_COST_FREE(X) ((X)->call)
+
 /* For a SET rtx, SET_DEST is the place that is set
    and SET_SRC is the value it is set to.  */
 #define SET_DEST(RTX) ((RTX)->fld[0].rtx)