diff options
Diffstat (limited to 'arm')
-rw-r--r-- | arm/PrintOp.ml | 4 | ||||
-rw-r--r-- | arm/TargetPrinter.ml | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/arm/PrintOp.ml b/arm/PrintOp.ml index 886f6de3..71e1dfc3 100644 --- a/arm/PrintOp.ml +++ b/arm/PrintOp.ml @@ -66,8 +66,8 @@ let print_condition reg pp = function let print_operation reg pp = function | Omove, [r1] -> reg pp r1 | Ointconst n, [] -> fprintf pp "%ld" (camlint_of_coqint n) - | Ofloatconst n, [] -> fprintf pp "%F" (camlfloat_of_coqfloat n) - | Osingleconst n, [] -> fprintf pp "%Ff" (camlfloat_of_coqfloat32 n) + | Ofloatconst n, [] -> fprintf pp "%.15F" (camlfloat_of_coqfloat n) + | Osingleconst n, [] -> fprintf pp "%.15Ff" (camlfloat_of_coqfloat32 n) | Oaddrsymbol(id, ofs), [] -> fprintf pp "\"%s\" + %ld" (extern_atom id) (camlint_of_coqint ofs) | Oaddrstack ofs, [] -> diff --git a/arm/TargetPrinter.ml b/arm/TargetPrinter.ml index 6536bc55..3ca90ce9 100644 --- a/arm/TargetPrinter.ml +++ b/arm/TargetPrinter.ml @@ -650,7 +650,7 @@ module Target (Opt: PRINTER_OPTIONS) : TARGET = | Pflid(r1, f) -> let f = camlint64_of_coqint(Floats.Float.to_bits f) in if Opt.vfpv3 && is_immediate_float64 f then begin - fprintf oc " vmov.f64 %a, #%F\n" + fprintf oc " vmov.f64 %a, #%.15F\n" freg r1 (Int64.float_of_bits f); 1 (* immediate floats have at most 4 bits of fraction, so they should print exactly with OCaml's F decimal format. *) @@ -702,7 +702,7 @@ module Target (Opt: PRINTER_OPTIONS) : TARGET = | Pflis(r1, f) -> let f = camlint_of_coqint(Floats.Float32.to_bits f) in if Opt.vfpv3 && is_immediate_float32 f then begin - fprintf oc " vmov.f32 %a, #%F\n" + fprintf oc " vmov.f32 %a, #%.15F\n" freg_single r1 (Int32.float_of_bits f); 1 (* immediate floats have at most 4 bits of fraction, so they should print exactly with OCaml's F decimal format. *) |