sv_binutils_fptrans: fix registers generation
authorDmitry Selyutin <ghostmansd@gmail.com>
Wed, 19 Oct 2022 20:23:29 +0000 (23:23 +0300)
committerLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Fri, 2 Jun 2023 18:51:15 +0000 (19:51 +0100)
src/openpower/sv/sv_binutils_fptrans.py

index d0e83460411b73e3abe2b9f05c84bb08cd0d06b0..d6aec3afe82cc416c50a3dd77de860fc103b43ee 100644 (file)
@@ -139,12 +139,16 @@ def asm(entry, binutils=False, regex=False):
     for (idx, operand) in enumerate(operands):
         values = []
         for each in operands:
-            if binutils and each.name in ("RT", "RA", "RB"):
+            if binutils and each.name in ("FRT", "FRA", "FRB"):
+                values.append("f0")
+            elif binutils and each.name in ("RT", "RA", "RB"):
                 values.append("r0")
             else:
                 values.append("0")
         value = str((1 << len(operand.span)) - 1)
-        if binutils and operand.name in ("RT", "RA", "RB"):
+        if binutils and operand.name in ("FRT", "FRA", "FRB"):
+            value = f"f{value}"
+        elif binutils and operand.name in ("RT", "RA", "RB"):
             value = f"r{value}"
         values[idx] = value
         sep = "\s+" if regex else " "