re PR target/31768 (Invalid code or ICE for %z constraint)
authorUros Bizjak <ubizjak@gmail.com>
Thu, 3 May 2007 14:32:25 +0000 (16:32 +0200)
committerUros Bizjak <uros@gcc.gnu.org>
Thu, 3 May 2007 14:32:25 +0000 (16:32 +0200)
        PR target/31768
        * config/i386/i386.c (print_operand) ['z']: Output 'w' for
        operands of size 2 when operand is not MEM_P.

From-SVN: r124379

gcc/ChangeLog
gcc/config/i386/i386.c

index bfbde545dd20e621984a262cca298e2cd3f615f9..8f1c3f48c02671ff0b6b33a44e6306c95d471e4e 100644 (file)
@@ -1,3 +1,9 @@
+2007-05-03  Uros Bizjak  <ubizjak@gmail.com>
+
+       PR target/31768
+       * config/i386/i386.c (print_operand) ['z']: Output 'w' for
+       operands of size 2 when operand is not MEM_P.
+
 2007-05-03  Zdenek Dvorak  <dvorakz@suse.cz>
 
        PR tree-optimization/30565
index 138f605935188f3ee76f73d94f2864289ee5c6d4..a3936546d7b01998c556e77578e67019fcd4fa32 100644 (file)
@@ -8372,9 +8372,15 @@ print_operand (FILE *file, rtx x, int code)
              return;
 
            case 2:
+             if (MEM_P (x))
+               {
 #ifdef HAVE_GAS_FILDS_FISTS
-             putc ('s', file);
+                 putc ('s', file);
 #endif
+                 return;
+               }
+             else
+               putc ('w', file);
              return;
 
            case 4: