summaryrefslogtreecommitdiffstats
path: root/src/jdwp/jdwp.h
Commit message (Collapse)AuthorAgeFilesLines
* Change dex cache to be java object instead of array, add pointer to dex file ↵Mathieu Chartier2012-09-211-1/+1
| | | | | | | | | | | | | | | | in dex cache. Generic clean up to facilitate having GDB macros for Pretty* helper functions. Improved cleanliness of DexCache since having it as an object array was not the best solution. Fixed a bug in InOrderWalk caused by ResolveType sometimes allocating classes. Rename C++ Method to AbstractMethod and add two new classes Constructor, Method which both inherit from AbstractMethod. Rename done to have the C++ code be closer to the java code. Change-Id: I4995b4c5e47a3822192b08afa24a639d3b1f4da9
* Rename GlobalSynchronization to LocksIan Rogers2012-09-051-20/+20
| | | | | | | Also address some review comments in common_throws relating to ToStr<InvokeType> and exception detail messages. Change-Id: Ibf2c0f147689fa236d349bd7f01eed3c2522552b
* Syntax clean up to make clang happy.Ian Rogers2012-08-201-2/+2
| | | | Change-Id: I0984c395bbd1ee4b206eafd19915b6f68781dd16
* Global lock levels.Ian Rogers2012-08-141-26/+55
| | | | | | | | | | | | | | | | | | Introduce the notion of the mutators/GC being a shared-exclusive (aka reader-writer) lock. Introduce globally ordered locks, analysable by annotalysis, statically at compile time. Add locking attributes to methods. More subtly, remove the heap_lock_ and split between various locks that are held for smaller periods (where work doesn't get blocked). Remove buggy Dalvik style thread transitions. Make GC use CMS in all cases when concurrent is enabled. Fix bug where suspend counts rather than debug suspend counts were sent to JDWP. Move the PathClassLoader to WellKnownClasses. In debugger refactor calls to send request and possibly suspend. Break apart different VmWait thread states. Move identity hash code to a shared method. Change-Id: Icdbfc3ce3fcccd14341860ac7305d8e97b51f5c6
* Fix a bunch more lint.Elliott Hughes2012-06-211-26/+20
| | | | | | | (If you ignore the compilers, we've got relatively little lint now. Fits on a single screen.) Change-Id: I51389002894d4fd8cf46f79d2bac57079322a030
* Fix a bunch of lint.Elliott Hughes2012-06-211-13/+12
| | | | | | There are still about 1800 lint warnings, so don't get too excited... Change-Id: I2394bd6e750b94060231378b3a7a88b87f70c757
* Use static thread safety analysis when available, and fix the bugs GCC finds.Elliott Hughes2012-06-181-10/+14
| | | | | | | | It's impossible to express the Heap locking and the ThreadList locking with GCC, but Clang is supposed to be able to do it. This patch does what's possible for now. Change-Id: Ib64a890c9d27c6ce255d5003cb755c2ef1beba95
* Start automatically generating operator<<s for enums.Elliott Hughes2012-04-041-2/+2
| | | | Change-Id: I0f53db089b9a1ba38ce82b75ab22448877be67e0
* Rename JdwpLocation.idx to the more intention-revealing dex_pc.Elliott Hughes2012-02-221-1/+1
| | | | Change-Id: Ie111b1e715b701da528b0e6de87560b1eea793d1
* Fix breakpoints.Elliott Hughes2012-02-171-0/+2
| | | | | | | My manual testing in jdb worked because I only ever set breakpoints at offset 0, which is the same whether you're using bytecode or 16bitcode. Change-Id: I7aae1961d08fc008af275ff0d1ae1f1e4619fa18
* Remove more lint.Elliott Hughes2012-01-241-1/+1
| | | | Change-Id: I48714db4169d9ea0536342809361210910ee2091
* Fix a bunch of uses of 'short'.Elliott Hughes2012-01-171-1/+1
| | | | | | (In particular, port numbers should be unsigned short.) Change-Id: I944eb0f8e97390f1af8094b07ee7f2a00045bd35
* Notify the debugger of class preparation.Elliott Hughes2011-12-071-1/+1
| | | | Change-Id: Ic9863d0cc1176c474df2239a286a01393845d589
* Implement JDWP InvokeMethod and breakpoints on exception throwing.Elliott Hughes2011-12-071-4/+6
| | | | Change-Id: I1142bee843104f0850fd7270752104d5d73a44f0
* Implement local setting.Elliott Hughes2011-12-051-1/+1
| | | | | | | | | I've also worked out how to test CreateString and CreateObject, but not CreateArrayObject yet. Also stop saying "cnt". Change-Id: I26569ff6c4fa356fb91e6c22cbf8ced95094fabd
* Implement field getting and setting.Elliott Hughes2011-12-021-0/+1
| | | | | | This lets you use "dump" and "set <object>.<field> = <value>". Change-Id: I47aee563b26e04f4931ac1cf3de2cd2e38db35a7
* Implement debugger support for getting thread stacks.Elliott Hughes2011-11-171-0/+1
| | | | | | You can now "where all" in jdb. Change-Id: Iccff0427f39b2f2ab3786f05b89850d50b87adb2
* Implement a bit more debugger functionality.Elliott Hughes2011-11-171-0/+25
| | | | | | | | | | | This fixes the deadlock by making SuspendSelfForDebugger not take the thread list lock, making it more like the equivalent code in dalvikvm. There's also some code cleanup, and a few more of the JDWP calls jdb makes on startup. By fixing the deadlock, attaching jdb now causes us to hit unimplemented code relating to thread stacks. That's tomorrow's job... Change-Id: I7eac1b95946228fa60666587ff8766bcabb28bb1
* Implement thread name change notification for DDMS.Elliott Hughes2011-11-071-1/+1
| | | | Change-Id: If63d89991951989f27ee267895244e115661dce9
* Fix orthography of the jdwp_bits.h functions.Elliott Hughes2011-10-271-10/+10
| | | | Change-Id: I31ca68e517bcf44570ab329b55f67b29877deff1
* More debugger support.Elliott Hughes2011-10-251-5/+7
| | | | | | | This gets us as far as the first DDMS-specific message, which means it's time to bring in a bunch more code. Change-Id: I3f9d75706d5ddde0aa21fcca558132282b94eff4
* Turn free functions that take a JdwpState* into member functions.Elliott Hughes2011-10-241-107/+189
| | | | Change-Id: Idf96803c12e160939dbc98be2df41c35a10987da
* Wire up enough of the pieces that we can connect ddms or jdb.Elliott Hughes2011-10-241-2/+1
| | | | | | (And die with an UNIMPLEMENTED as soon as they connect, of course.) Change-Id: I9abb25d581384361c215b3cd96b8278c751e79ea
* Bring across the JDWP implementation.Elliott Hughes2011-10-211-0/+221
This compiles and links, but does nothing until we fill out the 100 or so unimplemented methods in "debugger.cc". Note that I also need to add the extra command-line handling for the JDWP agent stuff, and add calls from the runtime to the various "something interesting is going on" hooks. Change-Id: I477cf3caf9e248c384ce1d739cbfadb60e2008bc