/* Register note definitions.
- Copyright (C) 2004 Free Software Foundation, Inc.
+ Copyright (C) 2004, 2005 Free Software Foundation, Inc.
This file is part of GCC.
You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING. If not, write to the Free
-Software Foundation, 59 Temple Place - Suite 330, Boston, MA
-02111-1307, USA. */
+Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301, USA. */
/* This file defines all the codes that may appear on individual
EXPR_LIST rtxes in the REG_NOTES chain of an insn. The codes are
stored in the mode field of the EXPR_LIST. Source files define
- DEF_INSN_NOTE appropriately before including this file. */
+ DEF_REG_NOTE appropriately before including this file. */
/* Shorthand. */
#define REG_NOTE(NAME) DEF_REG_NOTE (REG_##NAME)
+/* REG_DEP_TRUE is used in LOG_LINKS to represent a read-after-write
+ dependency (i.e. a true data dependency). This is here, not
+ grouped with REG_DEP_ANTI and REG_DEP_OUTPUT, because some passes
+ use a literal 0 for it. */
+REG_NOTE (DEP_TRUE)
+
/* The value in REG dies in this insn (i.e., it is not needed past
this insn). If REG is set in this insn, the REG_DEAD note may,
but need not, be omitted. */
REG_NOTE (LABEL)
/* REG_DEP_ANTI and REG_DEP_OUTPUT are used in LOG_LINKS to represent
- write-after-read and write-after-write dependencies respectively.
- Data dependencies, which are the only type of LOG_LINK created by
- flow, are represented by a 0 reg note kind. */
+ write-after-read and write-after-write dependencies respectively. */
REG_NOTE (DEP_ANTI)
REG_NOTE (DEP_OUTPUT)
that the pointer returned cannot alias anything else. */
REG_NOTE (NOALIAS)
-/* Used to optimize rtl generated by dynamic stack allocations for
- targets where SETJMP_VIA_SAVE_AREA is true. */
-REG_NOTE (SAVE_AREA)
-
/* REG_BR_PRED is attached to JUMP_INSNs and CALL_INSNSs. It contains
CONCAT of two integer value. First specifies the branch predictor
that added the note, second specifies the predicted hitrate of
/* This kind of note is generated at each to `setjmp', and similar
functions that can return twice. */
REG_NOTE (SETJMP)
-
-/* Indicate calls that always returns. */
-REG_NOTE (ALWAYS_RETURN)