diff --git a/sim/sh/ChangeLog b/sim/sh/ChangeLog index 0975e9ed1a..afdbe170a7 100644 --- a/sim/sh/ChangeLog +++ b/sim/sh/ChangeLog @@ -1,3 +1,9 @@ +Fri Apr 18 18:57:04 1997 Stu Grossman (grossman@critters.cygnus.com) + + * interp.c: Include float.h and define SIGTRAP if _WIN32. + WIN32 -> _WIN32. + * (trap): Do do SYS_chown for _WIN32. + Fri Apr 18 13:33:09 1997 Doug Evans * interp.c (sim_resume): Fix argument to poll_quit. diff --git a/sim/sh/interp.c b/sim/sh/interp.c index 5a68dc9df3..97c95dccc6 100644 --- a/sim/sh/interp.c +++ b/sim/sh/interp.c @@ -35,6 +35,11 @@ #include +#ifdef _WIN32 +#include /* Needed for _isnan() */ +#define isnan _isnan +#endif + #ifndef SIGBUS #define SIGBUS SIGSEGV #endif @@ -43,6 +48,10 @@ #define SIGQUIT SIGTERM #endif +#ifndef SIGTRAP +#define SIGTRAP 5 +#endif + #define O_RECOMPILE 85 #define DEFINE_TABLE #define DISASSEMBLER_TABLE @@ -341,7 +350,7 @@ int empty[16]; #define TL(x) if ((x) == prevlock) stalls++; #define TB(x,y) if ((x) == prevlock || (y)==prevlock) stalls++; -#if defined(__GO32__) || defined(WIN32) +#if defined(__GO32__) || defined(_WIN32) int sim_memory_size = 19; #else int sim_memory_size = 24; @@ -479,7 +488,7 @@ trap (i, regs, memory, maskl, maskw, little_endian) switch (regs[4]) { -#if !defined(__GO32__) && !defined(WIN32) +#if !defined(__GO32__) && !defined(_WIN32) case SYS_fork: regs[0] = fork (); break; @@ -578,9 +587,11 @@ trap (i, regs, memory, maskl, maskw, little_endian) } break; +#ifndef _WIN32 case SYS_chown: regs[0] = chown (ptr (regs[5]), regs[6], regs[7]); break; +#endif /* _WIN32 */ case SYS_chmod: regs[0] = chmod (ptr (regs[5]), regs[6]); break;