diff options
Diffstat (limited to 'gcc-4.2.1-5666.3/gcc/reg-notes.def')
-rw-r--r-- | gcc-4.2.1-5666.3/gcc/reg-notes.def | 170 |
1 files changed, 0 insertions, 170 deletions
diff --git a/gcc-4.2.1-5666.3/gcc/reg-notes.def b/gcc-4.2.1-5666.3/gcc/reg-notes.def deleted file mode 100644 index 4206674a3..000000000 --- a/gcc-4.2.1-5666.3/gcc/reg-notes.def +++ /dev/null @@ -1,170 +0,0 @@ -/* Register note definitions. - Copyright (C) 2004, 2005 Free Software Foundation, Inc. - -This file is part of GCC. - -GCC is free software; you can redistribute it and/or modify it under -the terms of the GNU General Public License as published by the Free -Software Foundation; either version 2, or (at your option) any later -version. - -GCC is distributed in the hope that it will be useful, but WITHOUT ANY -WARRANTY; without even the implied warranty of MERCHANTABILITY or -FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details. - -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, 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_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 (DEAD) - -/* The REG is autoincremented or autodecremented in this insn. */ -REG_NOTE (INC) - -/* Describes the insn as a whole; it says that the insn sets a - register to a constant value or to be equivalent to a memory - address. If the register is spilled to the stack then the constant - value should be substituted for it. The contents of the REG_EQUIV - is the constant value or memory address, which may be different - from the source of the SET although it has the same value. A - REG_EQUIV note may also appear on an insn which copies a register - parameter to a pseudo-register, if there is a memory address which - could be used to hold that pseudo-register throughout the function. */ -REG_NOTE (EQUIV) - -/* Like REG_EQUIV except that the destination is only momentarily - equal to the specified rtx. Therefore, it cannot be used for - substitution; but it can be used for cse. */ -REG_NOTE (EQUAL) - -/* This insn copies the return-value of a library call out of the hard - reg for return values. This note is actually an INSN_LIST and it - points to the first insn involved in setting up arguments for the - call. flow.c uses this to delete the entire library call when its - result is dead. */ -REG_NOTE (RETVAL) - -/* The inverse of REG_RETVAL: it goes on the first insn of the library - call and points at the one that has the REG_RETVAL. This note is - also an INSN_LIST. */ -REG_NOTE (LIBCALL) - -/* The register is always nonnegative during the containing loop. - This is used in branches so that decrement and branch instructions - terminating on zero can be matched. There must be an insn pattern - in the md file named `decrement_and_branch_until_zero' or else this - will never be added to any instructions. */ -REG_NOTE (NONNEG) - -/* There is no conflict *after this insn* between the register in the - note and the destination of this insn. */ -REG_NOTE (NO_CONFLICT) - -/* Identifies a register set in this insn and never used. */ -REG_NOTE (UNUSED) - -/* REG_CC_SETTER and REG_CC_USER link a pair of insns that set and use - CC0, respectively. Normally, these are required to be consecutive - insns, but we permit putting a cc0-setting insn in the delay slot - of a branch as long as only one copy of the insn exists. In that - case, these notes point from one to the other to allow code - generation to determine what any require information and to - properly update CC_STATUS. These notes are INSN_LISTs. */ -REG_NOTE (CC_SETTER) -REG_NOTE (CC_USER) - -/* Points to a CODE_LABEL. Used by non-JUMP_INSNs to say that the - CODE_LABEL contained in the REG_LABEL note is used by the insn. - This note is an INSN_LIST. */ -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. */ -REG_NOTE (DEP_OUTPUT) -REG_NOTE (DEP_ANTI) - -/* REG_BR_PROB is attached to JUMP_INSNs and CALL_INSNs. It has an - integer value. For jumps, it is the probability that this is a - taken branch. For calls, it is the probability that this call - won't return. */ -REG_NOTE (BR_PROB) - -/* REG_VALUE_PROFILE is attached when the profile is read in to an - insn before that the code to profile the value is inserted. It - contains the results of profiling. */ -REG_NOTE (VALUE_PROFILE) - -/* Attached to a call insn; indicates that the call is malloc-like and - that the pointer returned cannot alias anything else. */ -REG_NOTE (NOALIAS) - -/* 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 - branch in the same format as REG_BR_PROB note uses. */ -REG_NOTE (BR_PRED) - -/* Attached to insns that are RTX_FRAME_RELATED_P, but are too complex - for DWARF to interpret what they imply. The attached rtx is used - instead of intuition. */ -REG_NOTE (FRAME_RELATED_EXPR) - -/* Indicates that REG holds the exception context for the function. - This context is shared by inline functions, so the code to acquire - the real exception context is delayed until after inlining. */ -REG_NOTE (EH_CONTEXT) - -/* Indicates what exception region an INSN belongs in. This is used - to indicate what region to which a call may throw. REGION 0 - indicates that a call cannot throw at all. REGION -1 indicates - that it cannot throw, nor will it execute a non-local goto. */ -REG_NOTE (EH_REGION) - -/* Used by haifa-sched to save NOTE_INSN notes across scheduling. */ -REG_NOTE (SAVE_NOTE) - -/* Indicates that this insn (which is part of the prologue) computes a - value which might not be used later, and if so it's OK to delete - the insn. Normally, deleting any insn in the prologue is an error. - At present the parameter is unused and set to (const_int 0). */ -REG_NOTE (MAYBE_DEAD) - -/* Indicates that a call does not return. */ -REG_NOTE (NORETURN) - -/* Indicates that an indirect jump is a non-local goto instead of a - computed goto. */ -REG_NOTE (NON_LOCAL_GOTO) - -/* Indicates that a jump crosses between hot and cold sections in a - (partitioned) assembly or .o file, and therefore should not be - reduced to a simpler jump by optimizations. */ -REG_NOTE (CROSSING_JUMP) - -/* This kind of note is generated at each to `setjmp', and similar - functions that can return twice. */ -REG_NOTE (SETJMP) - -/* APPLE LOCAL begin ObjC direct dispatch */ -/* Indicate calls to a hard-coded address in memory. */ -REG_NOTE (ABSCALL) -/* APPLE LOCAL end ObjC direct dispatch */ |