diff options
| author | Charles.Forsyth <devnull@localhost> | 2008-07-03 13:47:22 +0000 |
|---|---|---|
| committer | Charles.Forsyth <devnull@localhost> | 2008-07-03 13:47:22 +0000 |
| commit | af3b6167bf93b1526982d7adfc2d48b8f06432ae (patch) | |
| tree | ba056c6d0cf02838741fba1834b680584159893e /emu | |
| parent | fb67f84de5f6afd71842d1609df0f26d4c16f798 (diff) | |
20080703-1447
Diffstat (limited to 'emu')
| -rw-r--r-- | emu/Nt/vlrt.c | 21 |
1 files changed, 4 insertions, 17 deletions
diff --git a/emu/Nt/vlrt.c b/emu/Nt/vlrt.c index c9ef9c9a..43313a29 100644 --- a/emu/Nt/vlrt.c +++ b/emu/Nt/vlrt.c @@ -13,21 +13,8 @@ typedef struct Vlong Vlong; struct Vlong { - union - { - struct - { - ulong lo; - ulong hi; - }; - struct - { - ushort lols; - ushort loms; - ushort hils; - ushort hims; - }; - }; + ulong lo; + ulong hi; }; void abort(void); @@ -102,11 +89,11 @@ _mulv(Vlong *r, Vlong a, Vlong b) void _d2v(Vlong *y, double d) { - union { double d; struct Vlong; } x; + Vlong x; ulong xhi, xlo, ylo, yhi; int sh; - x.d = d; + *(double*)&x = d; xhi = (x.hi & 0xfffff) | 0x100000; xlo = x.lo; |
