aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Sandiford <rdsandiford@googlemail.com>2012-01-25 19:04:44 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2012-01-25 19:04:44 +0000
commite906c889182f1385ef48374e87e8ae7323b58848 (patch)
tree5414dff4ea454f9565410e70a08cf2810ea382af
parenta76be469fcc0d5a2669cc1aef531920dfa1d5b17 (diff)
downloadgcc-e906c889182f1385ef48374e87e8ae7323b58848.zip
gcc-e906c889182f1385ef48374e87e8ae7323b58848.tar.gz
gcc-e906c889182f1385ef48374e87e8ae7323b58848.tar.bz2
mips.c: Don't process ASM_OPERANDS.
gcc/ * config/mips/mips.c: Don't process ASM_OPERANDS. From-SVN: r183532
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/config/mips/mips.c5
2 files changed, 8 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index fc98fb4..b3914be 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+2012-01-25 Richard Sandiford <rdsandiford@googlemail.com>
+
+ * config/mips/mips.c: Don't process ASM_OPERANDS.
+
2012-01-25 Georg-Johann Lay <avr@gjlay.de>
PR target/49868
diff --git a/gcc/config/mips/mips.c b/gcc/config/mips/mips.c
index 4a64ff2..e4231a5 100644
--- a/gcc/config/mips/mips.c
+++ b/gcc/config/mips/mips.c
@@ -3101,7 +3101,10 @@ mips_small_data_pattern_1 (rtx *loc, void *data)
{
enum mips_symbol_context context;
- if (GET_CODE (*loc) == LO_SUM)
+ /* Ignore things like "g" constraints in asms. We make no particular
+ guarantee about which symbolic constants are acceptable as asm operands
+ versus which must be forced into a GPR. */
+ if (GET_CODE (*loc) == LO_SUM || GET_CODE (*loc) == ASM_OPERANDS)
return -1;
if (MEM_P (*loc))