From: Richard Sandiford Date: Wed, 25 Jan 2012 19:04:44 +0000 (+0000) Subject: mips.c: Don't process ASM_OPERANDS. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=e906c889182f1385ef48374e87e8ae7323b58848;p=gcc.git mips.c: Don't process ASM_OPERANDS. gcc/ * config/mips/mips.c: Don't process ASM_OPERANDS. From-SVN: r183532 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index fc98fb42afb..b3914bedd9a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2012-01-25 Richard Sandiford + + * config/mips/mips.c: Don't process ASM_OPERANDS. + 2012-01-25 Georg-Johann Lay PR target/49868 diff --git a/gcc/config/mips/mips.c b/gcc/config/mips/mips.c index 4a64ff234ca..e4231a59c49 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))