]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
m68k.c (print_operand): Mask off extra extension bits when writing out the representa...
authorAndreas Schwab <schwab@suse.de>
Wed, 12 Nov 2008 16:34:14 +0000 (16:34 +0000)
committerAndreas Schwab <schwab@gcc.gnu.org>
Wed, 12 Nov 2008 16:34:14 +0000 (16:34 +0000)
* config/m68k/m68k.c (print_operand): Mask off extra extension
bits when writing out the representation of real values.

From-SVN: r141787

gcc/ChangeLog
gcc/config/m68k/m68k.c

index 5e45a04b6f54fb335c8220b9eeadeb80c727b228..7617fa7eaf0170f184952023576aa6bf4780f6d0 100644 (file)
@@ -1,3 +1,8 @@
+2008-11-12  Andreas Schwab  <schwab@suse.de>
+
+       * config/m68k/m68k.c (print_operand): Mask off extra extension
+       bits when writing out the representation of real values.
+
 2008-11-12  Ira Rosen  <irar@il.ibm.com>
 
        PR tree-optimization/38079
index 46647ea9b972618047138a6326498e86e9cf0d4c..c762a8ffb9e5e354b7b11c92cc47841820e55d54 100644 (file)
@@ -3888,7 +3888,7 @@ print_operand (FILE *file, rtx op, int letter)
       long l;
       REAL_VALUE_FROM_CONST_DOUBLE (r, op);
       REAL_VALUE_TO_TARGET_SINGLE (r, l);
-      asm_fprintf (file, "%I0x%lx", l);
+      asm_fprintf (file, "%I0x%lx", l & 0xFFFFFFFF);
     }
   else if (GET_CODE (op) == CONST_DOUBLE && GET_MODE (op) == XFmode)
     {
@@ -3896,7 +3896,8 @@ print_operand (FILE *file, rtx op, int letter)
       long l[3];
       REAL_VALUE_FROM_CONST_DOUBLE (r, op);
       REAL_VALUE_TO_TARGET_LONG_DOUBLE (r, l);
-      asm_fprintf (file, "%I0x%lx%08lx%08lx", l[0], l[1], l[2]);
+      asm_fprintf (file, "%I0x%lx%08lx%08lx", l[0] & 0xFFFFFFFF,
+                  l[1] & 0xFFFFFFFF, l[2] & 0xFFFFFFFF);
     }
   else if (GET_CODE (op) == CONST_DOUBLE && GET_MODE (op) == DFmode)
     {
@@ -3904,7 +3905,7 @@ print_operand (FILE *file, rtx op, int letter)
       long l[2];
       REAL_VALUE_FROM_CONST_DOUBLE (r, op);
       REAL_VALUE_TO_TARGET_DOUBLE (r, l);
-      asm_fprintf (file, "%I0x%lx%08lx", l[0], l[1]);
+      asm_fprintf (file, "%I0x%lx%08lx", l[0] & 0xFFFFFFFF, l[1] & 0xFFFFFFFF);
     }
   else
     {