aboutsummaryrefslogtreecommitdiff
path: root/gcc/rtl.h
diff options
context:
space:
mode:
authorFranz Sirl <Franz.Sirl-kernel@lauterbach.com>2001-05-13 21:16:58 +0000
committerFranz Sirl <sirl@gcc.gnu.org>2001-05-13 21:16:58 +0000
commitff0b6b992118d179779efac155b3484d32a1cf0d (patch)
tree944e76343c8f93f43eedc9b683710ba03f0a6739 /gcc/rtl.h
parent6f22140248a891c4cdf46679cc9597f15107c5f3 (diff)
downloadgcc-ff0b6b992118d179779efac155b3484d32a1cf0d.zip
gcc-ff0b6b992118d179779efac155b3484d32a1cf0d.tar.gz
gcc-ff0b6b992118d179779efac155b3484d32a1cf0d.tar.bz2
rtl.h (SYMBOL_REF_WEAK): New macro.
2001-05-13 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> * rtl.h (SYMBOL_REF_WEAK): New macro. * rtlanal.h (rtx_addr_can_trap): Use it, a weak SYMBOL_REF can trap. * varasm.c (make_decl_rtl): Mark SYMBOL_REF weak if necessary. * rtl.texi (SYMBOL_REF_WEAK): Document it. * gcc.texi: Remove wrong description. From-SVN: r42046
Diffstat (limited to 'gcc/rtl.h')
-rw-r--r--gcc/rtl.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/rtl.h b/gcc/rtl.h
index 4b1051c..a925210 100644
--- a/gcc/rtl.h
+++ b/gcc/rtl.h
@@ -162,7 +162,8 @@ typedef struct rtx_def
unsigned int used : 1;
/* Nonzero if this rtx came from procedure integration.
In a REG, nonzero means this reg refers to the return value
- of the current function. */
+ of the current function.
+ 1 in a SYMBOL_REF if the symbol is weak. */
unsigned integrated : 1;
/* 1 in an INSN or a SET if this rtx is related to the call frame,
either changing how we compute the frame address or saving and
@@ -934,6 +935,9 @@ extern unsigned int subreg_regno PARAMS ((rtx));
/* 1 means a SYMBOL_REF has been the library function in emit_library_call. */
#define SYMBOL_REF_USED(RTX) ((RTX)->used)
+/* 1 means a SYMBOL_REF is weak. */
+#define SYMBOL_REF_WEAK(RTX) ((RTX)->integrated)
+
/* Define a macro to look for REG_INC notes,
but save time on machines where they never exist. */