[kaffe] CVS kaffe (robilad): jit fixes for cygwin
Kaffe CVS
cvs-commits at kaffe.org
Tue Aug 7 17:35:00 PDT 2007
PatchSet 7524
Date: 2007/08/08 00:33:52
Author: robilad
Branch: HEAD
Tag: (none)
Log:
jit fixes for cygwin
Members:
ChangeLog:1.5022->1.5023
config/i386/cygwin32/jit-md.h:1.1->1.2
config/i386/cygwin32/md.h:1.6->1.7
kaffe/kaffevm/jit/stackTrace-impl.h:1.1->1.2
Index: kaffe/ChangeLog
diff -u kaffe/ChangeLog:1.5022 kaffe/ChangeLog:1.5023
--- kaffe/ChangeLog:1.5022 Tue Aug 7 20:21:44 2007
+++ kaffe/ChangeLog Wed Aug 8 00:33:52 2007
@@ -1,3 +1,17 @@
+2007-08-07 Kazuyuki Shudo <2006 at shudo.net>
+
+ Down to 19 failures from 25 in jit mode with jthreads
+ and kaffe gc.
+
+ * config/i386/cygwin32/jit-md.h (EXCEPTIONPROTO,
+ EXCEPTIONFRAME): Updated.
+
+ * config/i386/cygwin32/md.h (SIGNAL_ARGS,
+ SIGNAL_CONTEXT_POINTER): Updated.
+
+ * kaffe/kaffevm/jit/stackTrace-impl.h (STACKTRACEINIT):
+ Adapted for Cygwin.
+
2007-08-07 Dalibor Topic <robilad at kaffe.org>
* configure.ac, kaffe/kaffe/version.c (printShortVersion): Updated
Index: kaffe/config/i386/cygwin32/jit-md.h
diff -u kaffe/config/i386/cygwin32/jit-md.h:1.1 kaffe/config/i386/cygwin32/jit-md.h:1.2
--- kaffe/config/i386/cygwin32/jit-md.h:1.1 Fri Aug 28 15:47:20 1998
+++ kaffe/config/i386/cygwin32/jit-md.h Wed Aug 8 00:33:52 2007
@@ -25,10 +25,10 @@
* No signal handler support yet!!
*/
#define EXCEPTIONPROTO \
- int sig
+ int sig, siginfo_t *ctx, void *uc0
#define EXCEPTIONFRAME(f, c) \
(f).retbp = 0; \
- (f).retpc = 0
+ (f).retpc = c->si_addr + 1
#endif
Index: kaffe/config/i386/cygwin32/md.h
diff -u kaffe/config/i386/cygwin32/md.h:1.6 kaffe/config/i386/cygwin32/md.h:1.7
--- kaffe/config/i386/cygwin32/md.h:1.6 Sat Mar 18 17:40:20 2006
+++ kaffe/config/i386/cygwin32/md.h Wed Aug 8 00:33:52 2007
@@ -31,8 +31,8 @@
#undef SP_OFFSET
#define SP_OFFSET 7
-#define SIGNAL_ARGS(sig, sc) int sig
-#define SIGNAL_CONTEXT_POINTER(scp) int scp
+#define SIGNAL_ARGS(sig, sc) int sig, siginfo_t *sc, void *uc0
+#define SIGNAL_CONTEXT_POINTER(scp) siginfo_t **scp
#define GET_SIGNAL_CONTEXT_POINTER(sc) (NULL)
#define SIGNAL_PC(scp) (0)
Index: kaffe/kaffe/kaffevm/jit/stackTrace-impl.h
diff -u kaffe/kaffe/kaffevm/jit/stackTrace-impl.h:1.1 kaffe/kaffe/kaffevm/jit/stackTrace-impl.h:1.2
--- kaffe/kaffe/kaffevm/jit/stackTrace-impl.h:1.1 Sun Jul 27 16:53:48 2003
+++ kaffe/kaffe/kaffevm/jit/stackTrace-impl.h Wed Aug 8 00:33:52 2007
@@ -8,6 +8,14 @@
struct _exceptionFrame* frame;
} stackTrace;
+#ifdef __CYGWIN__
+#define STACKTRACEINIT(S, I, O, R) \
+ { \
+ FIRSTFRAME((S).nframe, O); \
+ (S).frame = &((S).nframe); \
+ (R) = *(S).frame; \
+ }
+#else
#define STACKTRACEINIT(S, I, O, R) \
{ \
if ((I) == NULL) { \
@@ -18,6 +26,7 @@
} \
(R) = *(S).frame; \
}
+#endif
#ifdef STACK_NEXT_FRAME
#define STACKTRACESTEP(S) (STACK_NEXT_FRAME((S).frame))
More information about the kaffe
mailing list