sparc.c (print_operand): Handle new codes H/L.
authorDoug Evans <dje@gnu.org>
Wed, 25 Sep 1996 20:39:46 +0000 (20:39 +0000)
committerDoug Evans <dje@gnu.org>
Wed, 25 Sep 1996 20:39:46 +0000 (20:39 +0000)
* sparc.c (print_operand): Handle new codes H/L.
* sparc.md (lo_sum_di_sp32,adddi3_sp32,subdi3_sp32,
mulsidi3_sp32,const_mulsidi3,umulsidi3_sp32,const_umulsidi3,
smacdi,umacdi,anddi3_sp32,iordi3_sp32,xordi3_sp32,negdi2_sp32):
Add little endian support.

From-SVN: r12845

gcc/config/sparc/sparc.c

index 81c291d1bdb32e090d8449806b4c6506bc177311..bd51b32d9f681cd47f0954931d752be60dddbd9f 100644 (file)
@@ -3925,6 +3925,20 @@ print_operand (file, x, code)
       else
        output_operand_lossage ("Invalid %%Y operand");
       return;
+    case 'L':
+      /* Print out the low order register name of a register pair.  */
+      if (WORDS_BIG_ENDIAN)
+       fputs (reg_names[REGNO (x)+1], file);
+      else
+       fputs (reg_names[REGNO (x)], file);
+      return;
+    case 'H':
+      /* Print out the high order register name of a register pair.  */
+      if (WORDS_BIG_ENDIAN)
+       fputs (reg_names[REGNO (x)], file);
+      else
+       fputs (reg_names[REGNO (x)+1], file);
+      return;
     case 'R':
       /* Print out the second register name of a register pair or quad.
         I.e., R (%o0) => %o1.  */