diff options
author | Richard Kenner <kenner@gcc.gnu.org> | 1994-05-06 17:40:25 -0400 |
---|---|---|
committer | Richard Kenner <kenner@gcc.gnu.org> | 1994-05-06 17:40:25 -0400 |
commit | e51c6661ff575384cb5e180eacf0b14e6f6d079e (patch) | |
tree | 741957b98622d1b9b033594b1efa1a453b7c6003 /gcc | |
parent | cc8677043873e50d6e7f507e4fb9b6ea514913f5 (diff) | |
download | gcc-e51c6661ff575384cb5e180eacf0b14e6f6d079e.zip gcc-e51c6661ff575384cb5e180eacf0b14e6f6d079e.tar.gz gcc-e51c6661ff575384cb5e180eacf0b14e6f6d079e.tar.bz2 |
(CALL_INSN_FUNCTION_USAGE): New macro.
(find_reg{,no}_fusage): Prototype for new function.
From-SVN: r7234
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/rtl.h | 11 |
1 files changed, 11 insertions, 0 deletions
@@ -358,6 +358,15 @@ enum reg_note { REG_DEAD = 1, REG_INC = 2, REG_EQUIV = 3, REG_WAS_0 = 4, extern char *reg_note_name[]; #define GET_REG_NOTE_NAME(MODE) (reg_note_name[(int)(MODE)]) +/* This field is only present on CALL_INSNs. It holds a chain of EXPR_LIST of + USE and CLOBBER expressions. + USE expressions list the registers filled with arguments that + are passed to the function. + CLOBBER expressions document the registers explicitly clobbered + by this CALL_INSN. + Pseudo registers can not be mentioned in this list. */ +#define CALL_INSN_FUNCTION_USAGE(INSN) ((INSN)->fld[7].rtx) + /* The label-number of a code-label. The assembler label is made from `L' and the label-number printed in decimal. Label numbers are unique in a compilation. */ @@ -693,6 +702,8 @@ extern rtx rtx_alloc PROTO((RTX_CODE)); extern rtvec rtvec_alloc PROTO((int)); extern rtx find_reg_note PROTO((rtx, enum reg_note, rtx)); extern rtx find_regno_note PROTO((rtx, enum reg_note, int)); +extern int find_reg_fusage PROTO((rtx, enum rtx_code, rtx)); +extern int find_regno_fusage PROTO((rtx, enum rtx_code, int)); extern HOST_WIDE_INT get_integer_term PROTO((rtx)); extern rtx get_related_value PROTO((rtx)); extern rtx single_set PROTO((rtx)); |