Added English Language description for stdu instruction
[openpower-isa.git] / openpower / isafunctions / fpfromint.mdwn
index 208a2940cd646992e7b6c67929a4f11d3c4f2a9a..67ae7583140d70c8a8d35df37dd95f012eac372d 100644 (file)
@@ -36,14 +36,14 @@ Convert From Integer instructions.
             tmp        <- [0]*25
             tmp[1:24]  <- frac[0:23]
             tmp[0:24]  <- tmp[0:24] + inc
-            carry_out  <- tmp[24]
+            carry_out  <- tmp[0]
             frac[0:23] <- tmp[1:24]
         else # tgt_precision = 'double-precision'
             tmp        <- [0]*54
             tmp[1:53]  <- frac[0:52]
             tmp[0:53]  <- tmp[0:53] + inc
-            carry_out  <- tmp[53]
-            frac[0:52] <- tmp[1:54]
+            carry_out  <- tmp[0]
+            frac[0:52] <- tmp[1:53]
         if carry_out = 1 then exp <- exp + 1
         # TODO, later
         # FPSCR[FR] <- inc
@@ -84,7 +84,8 @@ Convert From Integer instructions.
                 frac[0:63] <- frac[1:63] || 0b0
                 exp <- exp - 1
             # round to nearest
-            Round_Float( tgt_precision, sign, exp, frac, 0b00 )
+            RN <- 0b00 # TODO, FPSCR[RN]
+            Round_Float( tgt_precision, sign, exp, frac, RN )
             # TODO, FPSCR
             #if sign = 0 then FPSCR[FPRF] <- '+normal number'
             #if sign = 1 then FPSCR[FPRF] <- '-normal number'