History log of /external/lldb/include/lldb/Interpreter/OptionGroupWatchpoint.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
1e0e73a403ffbbeafa7a98e958909b56be929cf0 04-Jun-2012 Johnny Chen <johnny.chen@apple.com> Give more explicit error messages when watchpoint creation command (watchpoint set) fails,
like number of supported hardware watchpoints reached or the watch size is not allowed.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@157948 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Interpreter/OptionGroupWatchpoint.h
42404d284b22750851b26ae9a4ab42101f673089 08-Feb-2012 Johnny Chen <johnny.chen@apple.com> After discussions with Jim and Greg, modify the 'watchpoint set' command to become a mutiword command
with subcommand 'expression' and 'variable'. The first subcommand is for supplying an expression to
be evaluated into an address to watch for, while the second is for watching a variable.

'watchpoint set expression' is a raw command, which means that you need to use the "--" option terminator
to end the '-w' or '-x' option processing and to start typing your expression.

Also update several test cases to comply and add a couple of test cases into TestCompletion.py,
in particular, test that 'watchpoint set ex' completes to 'watchpoint set expression ' and that
'watchpoint set var' completes to 'watchpoint set variable '.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@150109 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Interpreter/OptionGroupWatchpoint.h
1b4525213621b2179f0841edd54842eebecd28cd 30-Sep-2011 Johnny Chen <johnny.chen@apple.com> Add an accompanying option to the 'frame variable -w' command to, instead of watching the variable,
watch the location pointed to by the variable. An example,

(lldb) frame variable -w write -x 1 -g g_char_ptr
(char *) g_char_ptr = 0x0000000100100860 ""...
Watchpoint created: WatchpointLocation 1: addr = 0x100100860 size = 1 state = enabled type = w
declare @ '/Volumes/data/lldb/svn/trunk/test/functionalities/watchpoint/hello_watchlocation/main.cpp:21'

...

(lldb) c
Process 3936 resuming

...

rocess 3936 stopped
* thread #2: tid = 0x3403, 0x00000001000009b7 a.out`do_bad_thing_with_location(char*, char) + 23 at main.cpp:27, stop reason = watchpoint 1
frame #0: 0x00000001000009b7 a.out`do_bad_thing_with_location(char*, char) + 23 at main.cpp:27
24 do_bad_thing_with_location(char *char_ptr, char new_val)
25 {
26 *char_ptr = new_val;
-> 27 }
28
29 uint32_t access_pool (uint32_t flag = 0);
30
(lldb)

Also add TestWatchLocation.py test to exercise this functionality.


git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@140836 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Interpreter/OptionGroupWatchpoint.h
69b6ec840171ef30af4ed7646155bffc225002ca 14-Sep-2011 Johnny Chen <johnny.chen@apple.com> Watchpoint WIP:

o WatchpointLocationList:
Add a GetListMutex() method.
o WatchpointLocation:
Fix Dump() method where there was an extra % in the format string.
o Target.cpp:
Add implementation to CreateWatchpointLocation() to create and enable a watchpoint.

o DNBArchImplX86_64.cpp:
Fix bugs in SetWatchpoint()/ClearWatchpoint() where '==' was used, instead of '=',
to assign/reset the data break address to a debug register.

Also fix bugs where a by reference debug_state should have been used, not by value.


git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@139666 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Interpreter/OptionGroupWatchpoint.h
34bbf85e60949752de9c8272a70d59383e523cc5 13-Sep-2011 Johnny Chen <johnny.chen@apple.com> Watchpoint WIP:

o Rename from OptionGroupWatchpoint::WatchMode to OptionGroupWatchpoint::WatchType,
and CommandArgumentType::eArgTypeWatchMode to CommandArgumentType::eArgTypeWatchType.
Update the sources to reflect the change.

o Add a CreateWatchpointLocation() method to Target class, which is currently not implmeneted
(returns an empty WatchpointLocationSP object). Add logic to CommandObjectFrame::Execute()
to exercise the added API for creating a watchpoint location.


git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@139560 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Interpreter/OptionGroupWatchpoint.h
439d0337a6515cb1dfca8843ff7164bbd5f47df1 10-Sep-2011 Johnny Chen <johnny.chen@apple.com> A little bit of cleanup; set watch_mode to eWatchInvalid at the OptionParsingStarting() lifecycle point.


git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@139467 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Interpreter/OptionGroupWatchpoint.h
58dba3ce82715249c068abb7bf99f0d43dfbe8f9 10-Sep-2011 Johnny Chen <johnny.chen@apple.com> Add OptionGroupWatchpoint.cpp/.h (preparatory work) for hooking up watchpoint to the 'frame variable' comand.
To watch a variable for read/write, issue:

frame variable -w read_write

Note that '-w' option is not working yet. :-)


git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@139434 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Interpreter/OptionGroupWatchpoint.h