aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Kenner <kenner@gcc.gnu.org>1994-11-21 17:43:56 -0500
committerRichard Kenner <kenner@gcc.gnu.org>1994-11-21 17:43:56 -0500
commit84cf9ddab39f794e8e85ea286fb8f341bd42ff0d (patch)
tree45461939a23dd0120870752e3daa4190772b3341
parent47b34d40242b4606a0451ac03ef53ba60bae1cd2 (diff)
downloadgcc-84cf9ddab39f794e8e85ea286fb8f341bd42ff0d.zip
gcc-84cf9ddab39f794e8e85ea286fb8f341bd42ff0d.tar.gz
gcc-84cf9ddab39f794e8e85ea286fb8f341bd42ff0d.tar.bz2
(input_operand): Allow a SYMBOL_REF referring to a symbol in the TOC.
From-SVN: r8542
-rw-r--r--gcc/config/rs6000/rs6000.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index 4895219..5d6f9c9 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -533,6 +533,10 @@ input_operand (op, mode)
&& GET_CODE (op) == CONST_INT)
return 1;
+ /* A SYMBOL_REF referring to the TOC is valid. */
+ if (GET_CODE (op) == SYMBOL_REF && CONSTANT_POOL_ADDRESS_P (op))
+ return 1;
+
/* Otherwise, we will be doing this SET with an add, so anything valid
for an add will be valid. */
return add_operand (op, mode);