aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKaz Kojima <kkojima@rr.iij4u.or.jp>2001-03-11 02:24:17 +0000
committerAlexandre Oliva <aoliva@gcc.gnu.org>2001-03-11 02:24:17 +0000
commit2cef831c1291de3493651195aed2a56cbd38f6c8 (patch)
tree7a705f2055f62dfe9dbb7bc465b4cf2acc66c028
parente9a9e960c0b6e24ad4bc3b8955022d62931da852 (diff)
downloadgcc-2cef831c1291de3493651195aed2a56cbd38f6c8.zip
gcc-2cef831c1291de3493651195aed2a56cbd38f6c8.tar.gz
gcc-2cef831c1291de3493651195aed2a56cbd38f6c8.tar.bz2
* config/sh/sh.h (LEGITIMATE_PIC_OPERAND_P): Defined.
From-SVN: r40384
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/config/sh/sh.h7
2 files changed, 11 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 767be09..972a5c6 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+2001-03-10 kaz Kojima <kkojima@rr.iij4u.or.jp>
+
+ * config/sh/sh.h (LEGITIMATE_PIC_OPERAND_P): Defined.
+
2001-03-10 Toshiyasu Morita <toshiyasu.morita@hsa.hitachi.com>
* config/sh/sh.md (umulhisi3_i, mulhisi3_i): Fix mnemonics.
diff --git a/gcc/config/sh/sh.h b/gcc/config/sh/sh.h
index 5e18291..60f6319 100644
--- a/gcc/config/sh/sh.h
+++ b/gcc/config/sh/sh.h
@@ -1792,6 +1792,13 @@ do \
} \
while (0)
+/* We can't directly access anything that contains a symbol,
+ nor can we indirect via the constant pool. */
+#define LEGITIMATE_PIC_OPERAND_P(X) \
+ (! nonpic_symbol_mentioned_p (X) \
+ && (! CONSTANT_POOL_ADDRESS_P (X) \
+ || ! nonpic_symbol_mentioned_p (get_pool_constant (X))))
+
#define SYMBOLIC_CONST_P(X) \
((GET_CODE (X) == SYMBOL_REF || GET_CODE (X) == LABEL_REF) \
&& nonpic_symbol_mentioned_p (X))