diff options
Diffstat (limited to 'Plan9')
| -rw-r--r-- | Plan9/386/include/emu.h | 22 | ||||
| -rw-r--r-- | Plan9/arm/include/emu.h | 22 | ||||
| -rw-r--r-- | Plan9/mips/include/emu.h | 23 | ||||
| -rw-r--r-- | Plan9/power/include/emu.h | 30 | ||||
| -rw-r--r-- | Plan9/sparc/include/emu.h | 22 |
5 files changed, 119 insertions, 0 deletions
diff --git a/Plan9/386/include/emu.h b/Plan9/386/include/emu.h new file mode 100644 index 00000000..1cc25b1c --- /dev/null +++ b/Plan9/386/include/emu.h @@ -0,0 +1,22 @@ +/* + * system- and machine-specific declarations for emu: + * floating-point save and restore, signal handling primitive, and + * implementation of the current-process variable `up'. + */ + +extern Proc** Xup; +#define up (*Xup) + +typedef struct FPU FPU; + +/* + * This structure must agree with FPsave and FPrestore asm routines + */ +struct FPU +{ + uchar env[28]; +}; + +typedef jmp_buf osjmpbuf; +#define ossetjmp(buf) setjmp(buf) + diff --git a/Plan9/arm/include/emu.h b/Plan9/arm/include/emu.h new file mode 100644 index 00000000..a2fac73a --- /dev/null +++ b/Plan9/arm/include/emu.h @@ -0,0 +1,22 @@ +/* + * system- and machine-specific declarations for emu: + * floating-point save and restore, signal handling primitive, and + * implementation of the current-process variable `up'. + */ + +extern Proc** Xup; +#define up (*Xup) + +typedef struct FPU FPU; + +/* + * This structure must agree with FPsave and FPrestore asm routines + */ +struct FPU +{ + int dummy[1]; /* XXX what goes here? */ +}; + +typedef jmp_buf osjmpbuf; +#define ossetjmp(buf) setjmp(buf) + diff --git a/Plan9/mips/include/emu.h b/Plan9/mips/include/emu.h new file mode 100644 index 00000000..b0babc4f --- /dev/null +++ b/Plan9/mips/include/emu.h @@ -0,0 +1,23 @@ +/* + * system- and machine-specific declarations for emu: + * floating-point save and restore, signal handling primitive, and + * implementation of the current-process variable `up'. + */ + +extern Proc** Xup; +#define up (*Xup) + +typedef struct FPU FPU; + + +/* + * This structure must agree with FPsave and FPrestore asm routines + */ +struct FPU +{ + uchar env[28]; +}; + +typedef jmp_buf osjmpbuf; +#define ossetjmp(buf) setjmp(buf) + diff --git a/Plan9/power/include/emu.h b/Plan9/power/include/emu.h new file mode 100644 index 00000000..79a5c56e --- /dev/null +++ b/Plan9/power/include/emu.h @@ -0,0 +1,30 @@ +/* + * system- and machine-specific declarations for emu: + * floating-point save and restore, signal handling primitive, and + * implementation of the current-process variable `up'. + */ + +extern Proc** Xup; +#define up (*Xup) + +typedef struct FPU FPU; + +/* + * This structure must agree with FPsave and FPrestore asm routines + */ +typedef struct FPU FPU; +struct FPU +{ + double fpreg[32]; + union { + double fpscrd; + struct { + ulong pad; + ulong fpscr; + }; + }; +}; + +typedef jmp_buf osjmpbuf; +#define ossetjmp(buf) setjmp(buf) + diff --git a/Plan9/sparc/include/emu.h b/Plan9/sparc/include/emu.h new file mode 100644 index 00000000..c1758d0e --- /dev/null +++ b/Plan9/sparc/include/emu.h @@ -0,0 +1,22 @@ +/* + * system- and machine-specific declarations for emu: + * floating-point save and restore, signal handling primitive, and + * implementation of the current-process variable `up'. + */ + +extern Proc** Xup; +#define up (*Xup) + +typedef struct FPU FPU; + +/* + * This structure must agree with FPsave and FPrestore asm routines + */ +struct FPU +{ + ulong fsr; +}; + +typedef jmp_buf osjmpbuf; +#define ossetjmp(buf) setjmp(buf) + |
