102b2c2681c9a830afe25bfea35557421905e42c |
|
19-Apr-2013 |
Greg Clayton <gclayton@apple.com> |
After discussing with Chris Lattner, we require C++11, so lets get rid of the macros and just use C++11. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@179805 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Breakpoint/Breakpoint.h
|
090f83176695d86197b0e86b67dee4160ec5003d |
|
26-Jan-2013 |
Jim Ingham <jingham@apple.com> |
Add "target.process.stop-on-shared-library-events" setting, and make it work. Add the ability to give breakpoints a "kind" string, and have the StopInfoBreakpoint print that in the brief description if set. Also print the kind - if set - in the breakpoint listing. Give kinds to a bunch of the internal breakpoints. We were deleting the Mac OS X dynamic loader breakpoint as though the id we had stored away was a breakpoint site ID, but in fact it was a breakpoint id, so we never actually deleted it. Fixed that. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@173555 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Breakpoint/Breakpoint.h
|
36da2aa6dc5ad9994b638ed09eb81c44cc05540b |
|
25-Jan-2013 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/13069948> Major fixed to allow reading files that are over 4GB. The main problems were that the DataExtractor was using 32 bit offsets as a data cursor, and since we mmap all of our object files we could run into cases where if we had a very large core file that was over 4GB, we were running into the 4GB boundary. So I defined a new "lldb::offset_t" which should be used for all file offsets. After making this change, I enabled warnings for data loss and for enexpected implicit conversions temporarily and found a ton of things that I fixed. Any functions that take an index internally, should use "size_t" for any indexes and also should return "size_t" for any sizes of collections. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@173463 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Breakpoint/Breakpoint.h
|
2753a024a5a314232baa579c0ada87551aa86988 |
|
05-Oct-2012 |
Jim Ingham <jingham@apple.com> |
Add one-shot breakpoints (-o option to "break set") and a tbreak alias for our gdb friends. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@165328 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Breakpoint/Breakpoint.h
|
fdbd10abe4f1f0e97647355823a8e2cd5f50856b |
|
27-Jun-2012 |
Jim Ingham <jingham@apple.com> |
Fix ignore counts on breakpoints so they actually work. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@159233 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Breakpoint/Breakpoint.h
|
03e5e512252fc7971430027d8ea05f64576bcbb3 |
|
17-May-2012 |
Jim Ingham <jingham@apple.com> |
If we notice that a module with a given file path is replaced by another with the same file path on rerunning, evict the old module from the target module list, inform the breakpoints about this so they can do something intelligent as well. rdar://problem/11273043 git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@157008 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Breakpoint/Breakpoint.h
|
b5d55cf7a00d0f9e31a1664d372f8e570d562777 |
|
02-May-2012 |
Jim Ingham <jingham@apple.com> |
Cleanup - removing the ThreadPlanTestCondition and its helper functions. It is not needed, since we now run the condition in the StopInfoBreakpoint's PerformAction, and don't need to refer it to another "continue". Actually, we haven't needed to do this for a year or so, I just hadn't gotten around to deleting the dead wood. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@155967 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Breakpoint/Breakpoint.h
|
598df88bd6fc33c6fb330bc859bdc277795501f3 |
|
14-Mar-2012 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/10434005> Prepare LLDB to be built with C++11 by hiding all accesses to std::tr1 behind macros that allows us to easily compile for either C++. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@152698 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Breakpoint/Breakpoint.h
|
28e23861bedbeb5e46be7d2af4c33bf5132422c6 |
|
08-Feb-2012 |
Jim Ingham <jingham@apple.com> |
Send Breakpoint Changed events for all the relevant changes to breakpoints. Also, provide and use accessors for the thread options on breakpoints so we can control sending the appropriate events. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@150057 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Breakpoint/Breakpoint.h
|
13d24fb1817faa7ccc4cfd799113ba1a2b8968eb |
|
29-Jan-2012 |
Greg Clayton <gclayton@apple.com> |
Switching back to using std::tr1::shared_ptr. We originally switched away due to RTTI worries since llvm and clang don't use RTTI, but I was able to switch back with no issues as far as I can tell. Once the RTTI issue wasn't an issue, we were looking for a way to properly track weak pointers to objects to solve some of the threading issues we have been running into which naturally led us back to std::tr1::weak_ptr. We also wanted the ability to make a shared pointer from just a pointer, which is also easily solved using the std::tr1::enable_shared_from_this class. The main reason for this move back is so we can start properly having weak references to objects. Currently a lldb_private::Thread class has a refrence to its parent lldb_private::Process. This doesn't work well when we now hand out a SBThread object that contains a shared pointer to a lldb_private::Thread as this SBThread can be held onto by external clients and if they end up using one of these objects we can easily crash. So the next task is to start adopting std::tr1::weak_ptr where ever it makes sense which we can do with lldb_private::Debugger, lldb_private::Target, lldb_private::Process, lldb_private::Thread, lldb_private::StackFrame, and many more objects now that they are no longer using intrusive ref counted pointer objects (you can't do std::tr1::weak_ptr functionality with intrusive pointers). git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@149207 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Breakpoint/Breakpoint.h
|
987c7ebe1daa425ba7abfa9643800e3237146fc0 |
|
17-Sep-2011 |
Greg Clayton <gclayton@apple.com> |
Adopt the intrusive pointers in: lldb_private::Breakpoint lldb_private::BreakpointLocations lldb_private::BreakpointSite lldb_private::Debugger lldb_private::StackFrame lldb_private::Thread lldb_private::Target git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@139985 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Breakpoint/Breakpoint.h
|
21f37ad875d4f50d1b4b3d307e120f6d27103730 |
|
09-Aug-2011 |
Jim Ingham <jingham@apple.com> |
Move the handling of breakpoint conditions from the Private event loop to the StopInfoBreakpoint::DoActions, which happens as the event is removed. Also use the return value of asynchronous breakpoint callbacks, they get checked before, and override the breakpoint conditions. Added ProcessModInfo class, to unify "stop_id generation" and "memory modification generation", and use where needed. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@137102 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Breakpoint/Breakpoint.h
|
ac35442b2b1a35ea3100c870214977e3bddb76f6 |
|
15-Jun-2011 |
Jim Ingham <jingham@apple.com> |
Made GetConditionText const everywhere. Made it return NULL when there's no condition like the doc's say it should. Make sure we have a condition before we set up a test whether we have one, so we only present a "could not parse condition" error if we actually have a condition. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@133088 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Breakpoint/Breakpoint.h
|
19a1ab8a1e0c9c66adaa648b5cf5909dac2d667e |
|
05-Feb-2011 |
Greg Clayton <gclayton@apple.com> |
Fixed the BreakpointLocationList to be able to do O(1) lookups on breakpoint locations by ID. It used to be, worst case, O(N). git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@124914 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Breakpoint/Breakpoint.h
|
a62ad7c886252a08d614a2b391d0774a151b7196 |
|
28-Oct-2010 |
Johnny Chen <johnny.chen@apple.com> |
Check in an initial implementation of the "breakpoint clear" command, whose purpose is clear the breakpoint associated with the (filename, line_number) combo when an arrow is pointing to a source position using Emacs Grand Unified Debugger library to interact with lldb. The current implmentation is insufficient in that it only asks the breakpoint whether it is associated with a breakpoint resolver with FileLine type and whether it matches the (filename, line_number) combo. There are other breakpoint resolver types whose breakpoint locations can potentially match the (filename, line_number) combo. The BreakpointResolver, BreakpointResolverName, BreakpointResolverAddress, and BreakpointResolverFileLine classes have extra static classof methods to support LLVM style type inquiry through isa, cast, and dyn_cast. The Breakpoint class has an API method bool GetMatchingFileLine(...) which is invoked from CommandObjectBreak.cpp to implement the "breakpoint clear" command. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@117562 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Breakpoint/Breakpoint.h
|
d168690e51f9020b926d3d0d57dc9a2cfb2095a8 |
|
15-Oct-2010 |
Jim Ingham <jingham@apple.com> |
Added support for breakpoint conditions. I also had to separate the "run the expression" part of ClangFunction::Execute from the "Gather the expression result" so that in the case of the Breakpoint condition I can move the condition evaluation into the normal thread plan processing. Also added support for remembering the "last set breakpoint" so that "break modify" will act on the last set breakpoint. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@116542 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Breakpoint/Breakpoint.h
|
643ee7301b5d4b05c321d906bc0d7ff11f571295 |
|
04-Aug-2010 |
Greg Clayton <gclayton@apple.com> |
Abtracted the old "lldb_private::Thread::StopInfo" into an abtract class. This will allow debugger plug-ins to make any instance of "lldb_private::StopInfo" that can completely describe any stop reason. It also provides a framework for doing intelligent things with the stop info at important times in the lifetime of the inferior. Examples include the signal stop info in StopInfoUnixSignal. It will check with the process to see that the current action is for the signal. These actions include wether to stop for the signal, wether the notify that the signal was hit, and wether to pass the signal along to the inferior process. The StopInfoUnixSignal class overrides the "ShouldStop()" method of StopInfo and this allows the stop info to determine if it should stop at the signal or continue the process. StopInfo subclasses must override the following functions: virtual lldb::StopReason GetStopReason () const = 0; virtual const char * GetDescription () = 0; StopInfo subclasses can override the following functions: // If the subclass returns "false", the inferior will resume. The default // version of this function returns "true" which means the default stop // info will stop the process. The breakpoint subclass will check if // the breakpoint wants us to stop by calling any installed callback on // the breakpoint, and also checking if the breakpoint is for the current // thread. Signals will check if they should stop based off of the // UnixSignal settings in the process. virtual bool ShouldStop (Event *event_ptr); // Sublasses can state if they want to notify the debugger when "ShouldStop" // returns false. This would be handy for breakpoints where you want to // log information and continue and is also used by the signal stop info // to notify that a signal was received (after it checks with the process // signal settings). virtual bool ShouldNotify (Event *event_ptr) { return false; } // Allow subclasses to do something intelligent right before we resume. // The signal class will figure out if the signal should be propagated // to the inferior process and pass that along to the debugger plug-ins. virtual void WillResume (lldb::StateType resume_state) { // By default, don't do anything } The support the Mach exceptions was moved into the lldb/source/Plugins/Process/Utility folder and now doesn't polute the lldb_private::Thread class with platform specific code. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@110184 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Breakpoint/Breakpoint.h
|
c7f5d5c3a3b48869f5ad2a3cdc4b20ca40929ba3 |
|
24-Jul-2010 |
Greg Clayton <gclayton@apple.com> |
Added needed breakpoint functionality to the public API that includes: SBTarget: - get breakpoint count - get breakpoint at index SBBreakpoint: - Extract data from breakpoint events git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@109289 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Breakpoint/Breakpoint.h
|
54e7afa84d945f9137f9372ecde432f9e1a702fc |
|
09-Jul-2010 |
Greg Clayton <gclayton@apple.com> |
Merged Eli Friedman's linux build changes where he added Makefile files that enabled LLVM make style building and made this compile LLDB on Mac OS X. We can now iterate on this to make the build work on both linux and macosx. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@108009 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Breakpoint/Breakpoint.h
|
24943d2ee8bfaa7cf5893e4709143924157a5c1e |
|
08-Jun-2010 |
Chris Lattner <sabre@nondot.org> |
Initial checkin of lldb code from internal Apple repo. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@105619 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Breakpoint/Breakpoint.h
|