Bugloo is a source level debugger for the Scheme compiler Bigloo. It aims at helping to debug Bigloo programs compiled into JVM bytecode. It is implemented by means of the JVM Debugging Architecture, a set of standard APIs provided by Sun to make debuggers and profilers. Currently, Bugloo can debug Bigloo programs, Java programs, or a mix of both. It is based on the debugging model used in GDB and provides additional features like debug sessions, traces, memory debugging, programmable breakpoints and embeddable interpreters. It is a command-line debugger. For the sake of simplicity, it includes a graphical user environment for GNU Emacs or XEmacs.
|Tags||Software Development Debuggers Bug Tracking|
Release Notes: A list of connected buffer, a heap inspector view, and a command history view were added. The debugger's stderr outputs were added in the bugloo view. A buggy macro definition that was disturbing gcc 2.95.x was fixed. In Global Code Refactoring, the core debugger is now really independent from the Emacs/Text frontend.
Release Notes: The class layout precalculation needed for the back-references feature is now computed incrementally, and kept between backref calls. The search for a back-references path now has a running time of O(n.log(m)) instead of O(n.m), where n is the number of objects in the JVM, and m is the number of classes. A buffer connection in the Emacs frontend was fixed. A buffer overflow in the computation of incoming references was fixed. A buggy array copy when returning the back references path to the debugger JVM was fixed.
Release Notes: This release successfully builds on Mac OS. Tested with Apple JDK 1.4.1. The code has been rewritten so that it can be run with IBM's latest JDK (1.4.1). There is a huge speed improvement in the back-references feature. The GUI frontend is supported under Win32 with GNU Emacs 21.3 CVS. A displayer for closures has been added which prints the real user function it associated with a Scheme closure. A print command a la GDB has been added to evaluate any S-expression. There are many bugfixes.
Release Notes: Improvements were made to the GNU-Emacs/Xemacs binding. The construction of the back-references graph was fixed. It is now a back-references forest, composed of many directed trees. A mechanism to select arbitrary objects in the JVM heap and to obtain info on them was added. The heap dump feature was greatly improved. Dumping 600000 objs (22Mb heap) and sorting them now takes 5s on a PIII 1Ghz, as opposed to 50s. A new memory debugging feature (incoming) which dumps all JVM objects that are directly referencing a particular object in the JVM heap was added.
Release Notes: Work was made to support the JSR-045 specification for debugger extensions for non-Java programming languages. Bigloo class files now automatically expose a correct source path to the debugger. The startup mechanism was completely rewritten, and the program to be debugged can now be loaded on demand rather than always at startup, and can be changed without restarting. JVM version detection was added, many bugfixes were made, documentation was updated, and the Emacs frontend was improved.