--- /dev/null
+\r
+#include <stdbool.h>\r
+#include <stdint.h>\r
+#include "platform.h"\r
+#include "internals.h"\r
+#include "softfloat.h"\r
+\r
+float64_t i64_to_f64( int_fast64_t a )\r
+{\r
+ bool sign;\r
+ union ui64_f64 uZ;\r
+\r
+ sign = ( a < 0 );\r
+ if ( ! ( a & UINT64_C( 0x7FFFFFFFFFFFFFFF ) ) ) {\r
+ uZ.ui = sign ? packToF64UI( 1, 0x43E, 0 ) : 0;\r
+ return uZ.f;\r
+ }\r
+ return softfloat_normRoundPackToF64( sign, 0x43C, sign ? - a : a );\r
+\r
+}\r
+\r