Parent Directory | Revision Log
|Links to HEAD:||(view) (annotate)|
|Links to double-double-branch:||(view) (annotate)|
Indent all source files using GNU indent using the config in .indent.pro.
Clean up #ifdef.
Port Helmut's trace/known-return to ppc. Fix some bugs along the way as well. lisp/breakpoint.c: o Enable function-end stuff in compute_offset for DARWIN too. o Lots of printf's so we can see what's happening on ppc since gdb is majorly broken there. lisp/ppc-assem.S: o Actually implement the function-end breakpoint template. Basically copied the sparc version, with appropriate mods. lisp/ppc-arch.c: o Add TWLLEI_R0 macro to create the appropriate trap instructions that we need, and use as appropriate. o arch_install_breakpoint was actually broken and installed a twllgei instruction instead of twllei. o arch_do_displaced_inst was also broken. It didn't install the after-break-point trap after the breakpoint trap. And it also didn't continue running the code and returned instead. That's wrong. o The trap_AfterBreakpoint case in sigill_handler was inserting the wrong instruction back. (Probably too much copying of the sparc port.)
Implement tracing for the known-return convention. This is basically Helmut Eller's patch sent to cmucl-imp on 2005-03-08. This basically means tracing recursive functions will show all recursions during the trace and not just the final call. code/debug-int.lisp: o Apply Helmut's patch. Tweak it so when the known-return convention is being used, we tell MAKE-BOGUS-LRA that we're using the known-return so we can handle it properly. lisp/breakpoint.c: o Add an extra parameter to compute_offset so we know we're handling a function-end breakpoint or not. Needed because reg_CODE isn't pointing to the bogus lra in this case, so the offsets are all wrong. We compute the right offset for the known return and return the offset as negative so we can tell. o Adjust all callers of compute_offset. o Adjust handle_function_end_breakpoint to handle negative offsets from compute_offset so we can get the right code component for the bogus lra.
Finish conversion from hardcoded sigcontext to os_context_t, as initiated by the commit of the NetBSD support, and needed by the upcoming merge of the OS X/Darwin port.
Changes from Robert Swindells to support NetBSD.
Cleanup compiler warnings.
Minor source cleanups.
From Tim Moore; FreeBSD 4.x has new sigcontext code which can be accessed via the POSIX_SIGS conditional. Change the way SA_SIGINFO gets passed to sigaction. It is turned off for FreeBSD and Linux.
Fix recently introduced bugs in the breakpoint handling on non-x86 ports; fake_foreign_function_call must be called before sap_alloc on the non-x86 port so that current_dynamic_space_free_pointer is setup from reg_ALLOC.
For the x86 port store the return code component and the PC offset in bogus LRA code objects rather than a SAP to avoid lossage if the real code object is moved while the real return address has been moved off the stack.
Breakpoint and single stepping support for the x86 port. This has been tested in the experimental code and works on both FreeBSD and Linux. Plus a few improvements to the interrupt safety for the x86 port.
Add RCS header.
Don't call undo_foreign_function_call in breakpoint_do_displaced_inst under hpux.
HP breakpoint support.
Fixed to work.
This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, select a symbolic revision name using the selection box, or choose 'Use Text Field' and enter a numeric revision.
|Powered by ViewVC 1.1.5|