(print_operand, case 'J'): Write out shift count of 0, not 32 for bit
authorRichard Kenner <kenner@gcc.gnu.org>
Mon, 21 Jun 1993 23:21:04 +0000 (19:21 -0400)
committerRichard Kenner <kenner@gcc.gnu.org>
Mon, 21 Jun 1993 23:21:04 +0000 (19:21 -0400)
31 of CCR.

From-SVN: r4707

gcc/config/rs6000/rs6000.c

index 3f97f44fa38097153e5819f15f2d99f466ed9c58..c92fde81b0643c91961983310ed0dc4bae841f87 100644 (file)
@@ -840,7 +840,8 @@ print_operand (file, x, code)
       if (i == -1)
        output_operand_lossage ("invalid %%J code");
       else
-       fprintf (file, "%d", i + 1);
+       /* If we want bit 31, write a shift count of zero, not 32.  */
+       fprintf (file, "%d", i == 31 ? 0 : i + 1);
       return;
 
     case 'k':