[RFA] Add NormalBreakpoint

Keith Seitz keiths@redhat.com
Fri Jun 15 21:23:00 GMT 2007


Tom Tromey wrote:
> Classic OO would be to put a method on the Breakpoint so the different
> types know how to handle themselves :-)

Yes, that is true, but I thought in this instance that polymorphism 
would make the code a whole lot more difficult to read (we'll have 
interpreter code in three separate files, not including interpret.cc). 
Nonetheless, I have recoded the whole thing using this more standard 
approach.

I'm also attaching a new ChangeLog, since I accidentally omitted all the 
regenerated files: they got lost by the classpath merge mess (forgot to 
commit the class files for the merge??).

Keith

ChangeLog
2007-06-14  Keith Seitz  <keiths@redhat.com>

         * gnu/gcj/jvmti/Breakpoint.java: Make abstract.
         (method): Change from private to protected.
         (location): Likewise.
         (Breakpoint): Change argument list to take only integer type.
         Add default constructor.
         (initialize_native): Renamed to ...
         (_save_insn): ... this to make function more explicit.
         (execute): New method.
         * gnu/gcj/jvmti/Breakpoint.h: Regenerate.
         * gnu/gcj/jvmti/natBreakpoint.cc (initialize_native): Rename to...
         (_save_insn): ... this.
         (install): Save the original instruction.
         * gnu/gcj/jvmti/NormalBreakpoint.java: New file.
         * gnu/gcj/jvmti/NormalBreakpoint.h: New file.
         * gnu/gcj/jvmti/natNormalBreakpoint.cc: New file.
         * gnu/gcj/jvmti/BreakpointManager.java (newBreakpoint):
         Instantiate a NormalBreakpoint instead of Breakpoint.
         * interpret-run.cc (insn_breakpoint): Remove breakpoint actions
         and call Breakpoint.execute to do them.
         * classpath/lib/gnu/gcj/jvmti/Breakpoint.class: Regenerate.
         * classpath/lib/gnu/gcj/jvmti/BreakpointManager.class: Likewise.
         * classpath/lib/gnu/gcj/jvmti/NormalBreakpoint.class: New file.
         * sources.am: Regenerate.
         * Makefile.am (nat_source_files): Add natNormalBreakpoint.cc.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: normalbreakpoint-2.patch
Type: text/x-patch
Size: 6484 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/java-patches/attachments/20070615/3bf89235/attachment.bin>


More information about the Java-patches mailing list