Hi!

This last hunk is wrong, for sprintf you need to use %% instead of %.

On Wed, Sep 07, 2011 at 09:23:36PM +0200, Bernd Schmidt wrote:
> @@ -10631,7 +10633,7 @@ (define_insn "*push_fp_multi"
>    {
>      char pattern[100];
>  
> -    sprintf (pattern, \"sfmfd\\t%%1, %d, [%%m0]!\", XVECLEN (operands[2], 
> 0));
> +    sprintf (pattern, \"sfm%(fd%)\\t%%1, %d, [%%m0]!\", XVECLEN 
> (operands[2], 0));
>      output_asm_insn (pattern, operands);
>      return \"\";
>    }"

Committed as obvious:

2011-09-12  Jakub Jelinek  <ja...@redhat.com>

        PR bootstrap/50352
        * config/arm/arm.md (*push_fp_multi): Add % before %( and %) in the
        sprintf format string.

--- gcc/config/arm/arm.md       (revision 178777)
+++ gcc/config/arm/arm.md       (revision 178778)
@@ -10633,7 +10633,7 @@ (define_insn "*push_fp_multi"
   {
     char pattern[100];
 
-    sprintf (pattern, \"sfm%(fd%)\\t%%1, %d, [%%m0]!\", XVECLEN (operands[2], 
0));
+    sprintf (pattern, \"sfm%%(fd%%)\\t%%1, %d, [%%m0]!\", XVECLEN 
(operands[2], 0));
     output_asm_insn (pattern, operands);
     return \"\";
   }"

        Jakub

Reply via email to