Commit f754c4a1 by Jeffrey A Law Committed by Jeff Law

rtl.def (CODE_LABEL): Use separate fields for LABEL_NUSES and LABEL_REFS fields.

        * rtl.def (CODE_LABEL): Use separate fields for LABEL_NUSES
        and LABEL_REFS fields.
        * rtl.h (LABEL_REFS): Update.

From-SVN: r16333
parent 4911814e
Tue Nov 4 18:49:42 1997 Jeffrey A Law (law@cygnus.com)
* rtl.def (CODE_LABEL): Use separate fields for LABEL_NUSES
and LABEL_REFS fields.
* rtl.h (LABEL_REFS): Update.
Tue Nov 4 16:55:11 1997 Jim Wilson <wilson@cygnus.com> Tue Nov 4 16:55:11 1997 Jim Wilson <wilson@cygnus.com>
* mips.md (insv, extzv, extv): Add change_address call. * mips.md (insv, extzv, extv): Add change_address call.
......
...@@ -368,8 +368,8 @@ DEF_RTL_EXPR(BARRIER, "barrier", "iuu", 'x') ...@@ -368,8 +368,8 @@ DEF_RTL_EXPR(BARRIER, "barrier", "iuu", 'x')
3: is a number that is unique in the entire compilation. 3: is a number that is unique in the entire compilation.
4: is the user-given name of the label, if any. 4: is the user-given name of the label, if any.
5: is used in jump.c for the use-count of the label. 5: is used in jump.c for the use-count of the label.
and in flow.c to point to the chain of label_ref's to this label. */ 6: is used in flow.c to point to the chain of label_ref's to this label. */
DEF_RTL_EXPR(CODE_LABEL, "code_label", "iuuis0", 'x') DEF_RTL_EXPR(CODE_LABEL, "code_label", "iuuis00", 'x')
/* Say where in the code a source line starts, for symbol table's sake. /* Say where in the code a source line starts, for symbol table's sake.
Contains a filename and a line number. Line numbers <= 0 are special: Contains a filename and a line number. Line numbers <= 0 are special:
...@@ -385,7 +385,7 @@ DEF_RTL_EXPR(NOTE, "note", "iuusn", 'x') ...@@ -385,7 +385,7 @@ DEF_RTL_EXPR(NOTE, "note", "iuusn", 'x')
it contains helps to build the mapping function between the rtx's of it contains helps to build the mapping function between the rtx's of
the function to be inlined and the current function being expanded. */ the function to be inlined and the current function being expanded. */
DEF_RTL_EXPR(INLINE_HEADER, "inline_header", "iuuuiiiiiieeiiEeEss", 'x') DEF_RTL_EXPR(INLINE_HEADER, "inline_header", "iuuuiiiiiieeiiEeEsse", 'x')
/* ---------------------------------------------------------------------- /* ----------------------------------------------------------------------
Top level constituents of INSN, JUMP_INSN and CALL_INSN. Top level constituents of INSN, JUMP_INSN and CALL_INSN.
...@@ -571,6 +571,15 @@ DEF_RTL_EXPR(SYMBOL_REF, "symbol_ref", "s", 'o') ...@@ -571,6 +571,15 @@ DEF_RTL_EXPR(SYMBOL_REF, "symbol_ref", "s", 'o')
pretend to be looking at the entire value and comparing it. */ pretend to be looking at the entire value and comparing it. */
DEF_RTL_EXPR(CC0, "cc0", "", 'o') DEF_RTL_EXPR(CC0, "cc0", "", 'o')
/* Reference to the address of a register. Removed by purge_addressof after
CSE has elided as many as possible.
1st operand: the register we may need the address of.
2nd operand: the original pseudo regno we were generated for.
3rd operand: the decl for the object in the register, for
put_reg_in_stack. */
DEF_RTL_EXPR(ADDRESSOF, "addressof", "ei0", 'o')
/* ===================================================================== /* =====================================================================
A QUEUED expression really points to a member of the queue of instructions A QUEUED expression really points to a member of the queue of instructions
to be output later for postincrement/postdecrement. to be output later for postincrement/postdecrement.
......
...@@ -464,7 +464,7 @@ extern char *note_insn_name[]; ...@@ -464,7 +464,7 @@ extern char *note_insn_name[];
each CODE_LABEL starts a chain that goes through each CODE_LABEL starts a chain that goes through
all the LABEL_REFs that jump to that label. all the LABEL_REFs that jump to that label.
The chain eventually winds up at the CODE_LABEL; it is circular. */ The chain eventually winds up at the CODE_LABEL; it is circular. */
#define LABEL_REFS(LABEL) ((LABEL)->fld[5].rtx) #define LABEL_REFS(LABEL) ((LABEL)->fld[6].rtx)
/* This is the field in the LABEL_REF through which the circular chain /* This is the field in the LABEL_REF through which the circular chain
of references to a particular label is linked. of references to a particular label is linked.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment