diff options
Diffstat (limited to 'src/emu')
| -rwxr-xr-x | src/emu/x87emu_private.c | 10 | ||||
| -rwxr-xr-x | src/emu/x87emu_private.h | 10 |
2 files changed, 11 insertions, 9 deletions
diff --git a/src/emu/x87emu_private.c b/src/emu/x87emu_private.c index cd35c116..0393ac01 100755 --- a/src/emu/x87emu_private.c +++ b/src/emu/x87emu_private.c @@ -9,6 +9,16 @@ #include "x87emu_private.h" //#include "x64run_private.h" +void fpu_do_free(x64emu_t* emu, int i) +{ + emu->p_regs[(emu->top+i)&7].tag = 0b11; // empty + // check if all empty + for(int j=0; j<8; ++j) + if(emu->p_regs[j].tag != 0b11) + return; + emu->fpu_stack = 0; +} + void reset_fpu(x64emu_t* emu) { memset(emu->mmx87, 0, sizeof(emu->mmx87)); diff --git a/src/emu/x87emu_private.h b/src/emu/x87emu_private.h index fc71b6d1..333d74c1 100755 --- a/src/emu/x87emu_private.h +++ b/src/emu/x87emu_private.h @@ -50,15 +50,7 @@ static inline void fpu_do_pop(x64emu_t* emu) emu->top = (emu->top+1)&7; } -static inline void fpu_do_free(x64emu_t* emu, int i) -{ - emu->p_regs[(emu->top+i)&7].tag = 0b11; // empty - // check if all empty - for(int j=0; j<8; ++j) - if(emu->p_regs[j].tag != 0b11) - return; - emu->fpu_stack = 0; -} +void fpu_do_free(x64emu_t* emu, int i); void reset_fpu(x64emu_t* emu); |