diff options
Diffstat (limited to 'limbo/dtocanon.c')
| -rw-r--r-- | limbo/dtocanon.c | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/limbo/dtocanon.c b/limbo/dtocanon.c new file mode 100644 index 00000000..8a23283c --- /dev/null +++ b/limbo/dtocanon.c @@ -0,0 +1,35 @@ +#include "limbo.h" + +void +dtocanon(double f, ulong v[]) +{ + union { double d; ulong ul[2]; } a; + + a.d = 1.; + if(a.ul[0]){ + a.d = f; + v[0] = a.ul[0]; + v[1] = a.ul[1]; + }else{ + a.d = f; + v[0] = a.ul[1]; + v[1] = a.ul[0]; + } +} + +double +canontod(ulong v[2]) +{ + union { double d; unsigned long ul[2]; } a; + + a.d = 1.; + if(a.ul[0]) { + a.ul[0] = v[0]; + a.ul[1] = v[1]; + } + else { + a.ul[1] = v[0]; + a.ul[0] = v[1]; + } + return a.d; +} |
