X-Git-Url: https://git.martlubbers.net/?a=blobdiff_plain;f=real_conv%2Ftest.icl;fp=real_conv%2Ftest.icl;h=7a1efe3430cc66297efe382a2ab066de985d7286;hb=9f05ee89761c00fe033bddc6a4a3c25c21c77a68;hp=0000000000000000000000000000000000000000;hpb=b2a4b7c5c620e9d85bda8afa1c5e804ee98ffd89;p=clean-tests.git diff --git a/real_conv/test.icl b/real_conv/test.icl new file mode 100644 index 0000000..7a1efe3 --- /dev/null +++ b/real_conv/test.icl @@ -0,0 +1,28 @@ +module test + +import StdInt + +Start = convert_float_in_int_to_real + ((convert_real_to_float_in_int 3936146074321813505.0) bitand 0xffffffff ) + +convert_real_to_float_in_int :: !Real -> Int; +convert_real_to_float_in_int r = code { +| cvtsd2ss %xmm0,%xmm0 + instruction 242 + instruction 15 + instruction 90 + instruction 192 +}; + +convert_float_in_int_to_real :: !Int -> Real; +convert_float_in_int_to_real r = code { +.d 0 1 r + jmp _convert_float_in_int_to_real_ +.o 0 1 r + :_convert_float_in_int_to_real_ +| cvtss2ds %xmm0,%xmm0 + instruction 243 + instruction 15 + instruction 90 + instruction 192 +};