Changeset 12985
- Timestamp:
- Oct 9, 2009, 9:56:12 PM (15 years ago)
- File:
-
- 1 edited
-
branches/watchpoints/lisp-kernel/x86-exceptions.c (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branches/watchpoints/lisp-kernel/x86-exceptions.c
r12908 r12985 301 301 } 302 302 303 304 305 306 307 303 void 308 304 push_on_lisp_stack(ExceptionInformation *xp, LispObj value) … … 312 308 xpGPR(xp,Isp) = (LispObj)vsp; 313 309 } 314 315 310 316 311 /* Hard to know if or whether this is necessary in general. For now, … … 842 837 LispObj save_vsp = xpGPR(xp, Isp); 843 838 LispObj save_fp = xpGPR(xp, Ifp); 844 LispObj xcf = create_exception_callback_frame(xp, tcr); 839 LispObj xcf; 840 natural offset = (LispObj)addr - obj; 845 841 int skip; 846 842 847 /* The magic 2 means this was a write to a watchd object */ 848 skip = callback_to_lisp(tcr, cmain, xp, xcf, SIGSEGV, 2, (natural) addr, obj); 843 push_on_lisp_stack(xp, obj); 844 xcf = create_exception_callback_frame(xp, tcr); 845 846 /* The magic 2 means this was a write to a watched object */ 847 skip = callback_to_lisp(tcr, cmain, xp, xcf, SIGSEGV, 2, (natural) addr, offset); 849 848 xpPC(xp) += skip; 850 849 xpGPR(xp, Ifp) = save_fp;
Note:
See TracChangeset
for help on using the changeset viewer.
