Raymond Toy pushed to branch master at cmucl / cmucl
Commits:
-
f4ccaa45
by Raymond Toy at 2022-06-26T22:07:54+00:00
-
00907500
by Raymond Toy at 2022-06-26T22:07:54+00:00
4 changed files:
- src/lisp/Config.x86_linux
- src/lisp/Config.x86_linux_clang
- src/lisp/Linux-os.c
- src/lisp/x86-lispregs.h
Changes:
| ... | ... | @@ -2,7 +2,7 @@ |
| 2 | 2 | include Config.x86_common
|
| 3 | 3 | |
| 4 | 4 | CFLAGS += $(COPT)
|
| 5 | -CPPFLAGS += -m32 -D__NO_CTYPE -D_GNU_SOURCE
|
|
| 5 | +CPPFLAGS += -m32 -D__NO_CTYPE
|
|
| 6 | 6 | CFLAGS += -rdynamic -march=pentium4 -mfpmath=sse -mtune=generic
|
| 7 | 7 | |
| 8 | 8 | UNDEFSYMPATTERN = -Xlinker -u -Xlinker &
|
| ... | ... | @@ -2,7 +2,7 @@ |
| 2 | 2 | include Config.x86_common
|
| 3 | 3 | |
| 4 | 4 | CC = clang
|
| 5 | -CPPFLAGS += -m32 -D__NO_CTYPE -D_GNU_SOURCE
|
|
| 5 | +CPPFLAGS += -m32 -D__NO_CTYPE
|
|
| 6 | 6 | CFLAGS += $(COPT)
|
| 7 | 7 | |
| 8 | 8 | # Allow sse2 instructions (-msse2); and tune for pentium4
|
| ... | ... | @@ -17,6 +17,8 @@ |
| 17 | 17 | *
|
| 18 | 18 | */
|
| 19 | 19 | |
| 20 | +#define _GNU_SOURCE /* for reg_* constants in uc_mcontext.gregs */
|
|
| 21 | +#include <signal.h>
|
|
| 20 | 22 | #include <stdio.h>
|
| 21 | 23 | #include <sys/param.h>
|
| 22 | 24 | #include <sys/file.h>
|
| ... | ... | @@ -198,6 +200,8 @@ os_sigcontext_reg(ucontext_t *scp, int offset) |
| 198 | 200 | return (unsigned long *) &scp->uc_mcontext.gregs[REG_ESI];
|
| 199 | 201 | case 14:
|
| 200 | 202 | return (unsigned long *) &scp->uc_mcontext.gregs[REG_EDI];
|
| 203 | + case 16:
|
|
| 204 | + return (unsigned long*) &scp->uc_mcontext.gregs[REG_EFL];
|
|
| 201 | 205 | }
|
| 202 | 206 | return NULL;
|
| 203 | 207 | }
|
| ... | ... | @@ -30,6 +30,7 @@ |
| 30 | 30 | #define reg_EBP REG(10)
|
| 31 | 31 | #define reg_ESI REG(12)
|
| 32 | 32 | #define reg_EDI REG(14)
|
| 33 | +#define reg_EFL REG(16)
|
|
| 33 | 34 | |
| 34 | 35 | #define reg_SP reg_ESP
|
| 35 | 36 | #define reg_FP reg_EBP
|
| ... | ... | @@ -60,7 +61,7 @@ |
| 60 | 61 | #define SC_EFLAGS(sc) ((sc)->uc_mcontext->ss.eflags)
|
| 61 | 62 | #endif
|
| 62 | 63 | #elif defined(__linux__)
|
| 63 | -#define SC_EFLAGS(sc) ((sc)->uc_mcontext.gregs[REG_EFL])
|
|
| 64 | +#define SC_EFLAGS(sc) SC_REG(sc, reg_EFL)
|
|
| 64 | 65 | #elif defined(__NetBSD__)
|
| 65 | 66 | #define SC_EFLAGS(sc) ((sc)->uc_mcontext.__gregs[_REG_EFL])
|
| 66 | 67 | #elif defined(SOLARIS)
|