- Sep 11, 2012
-
-
Filipe Cabecinhas authored
llvm-svn: 163638
-
rdar://problem/11935492Greg Clayton authored
Fixed an issue where if we call "Process::Destroy()" and the process is running, if we try to stop it and get "exited" back as the stop reason, we will still deliver the exited event. llvm-svn: 163591
-
Jim Ingham authored
llvm-svn: 163576
-
Jim Ingham authored
Shortcut ThreadPlanStepRange::MischiefManaged - if we have pushed new plans and they are not done, then we aren't done either. <rdar://problem/12259124> llvm-svn: 163572
-
- Sep 10, 2012
-
-
Jim Ingham authored
uint32_t size = ThreadList.GetSize(); for (i=0; i < size; ++i) without grabbing the thread list mutex. llvm-svn: 163541
-
- Sep 08, 2012
-
-
Sean Callanan authored
run code when it didn't really need to run. <rdar://problem/12145006> llvm-svn: 163450
-
Jim Ingham authored
Fiddle with the heuristic about where to set the stop point in a nested inline stack when we get there by breakpoint. If we hit a user breakpoint, I set the stop point to the bottom-most frame 'cause that's what we did before. <rdar://problem/12258999> Setting breakpoint in always inline function is stopping in function above it llvm-svn: 163439
-
Greg Clayton authored
Make file + line breakpoints even more efficient by using our SearchFilter objects correctly now that we sometimes don't check for inlined breakpoints. llvm-svn: 163435
-
Jim Ingham authored
llvm-svn: 163433
-
Jim Ingham authored
In GetFramesUpTo, don't adjust the number of frames for the inlined depth if the number of frames in UINT32_MAX. llvm-svn: 163432
-
- Sep 07, 2012
-
-
Jim Ingham authored
llvm-svn: 163366
-
Jim Ingham authored
llvm-svn: 163365
-
- Sep 06, 2012
-
-
Jim Ingham authored
llvm-svn: 163341
-
Jim Ingham authored
llvm-svn: 163340
-
- Sep 05, 2012
-
-
Jim Ingham authored
llvm-svn: 163246
-
Jim Ingham authored
llvm-svn: 163245
-
Jim Ingham authored
Move calculating the CurrentInlinedDepth to AFTER the synchronous breakpoint callback gets a chance to run. If the stopped event comes in with the Restarted bit set, don't try to hand that to the plans, but just return ShouldStop = false. There's nothing useful the plans can do, since the target is already running. llvm-svn: 163244
-
Enrico Granata authored
Implementing an Options class for EvaluateExpression() in order to make the signature more compact and make it easy to 'just run an expression' llvm-svn: 163239
-
Greg Clayton authored
llvm-svn: 163183
-
- Sep 04, 2012
-
-
Greg Clayton authored
Modified patch from Matt Kopec that fixes a process launch issue on linux where we wouldn't acquire the process run lock. llvm-svn: 163163
-
rdar://problem/11485744Enrico Granata authored
<rdar://problem/11485744> Implement important data formatters in C++. Have the Objective-C language runtime plugin expose class descriptors objects akin to the objc_runtime.py Pythonic implementation. Rewrite the data formatters for some core Cocoa classes in C++ instead of Python. llvm-svn: 163155
-
- Sep 01, 2012
-
-
Jim Ingham authored
Initial check-in of "fancy" inlined stepping. Doesn't do anything useful unless you switch LLDB_FANCY_INLINED_STEPPING to true. With that on, basic inlined stepping works, including step-over of inlined functions. But for some as yet mysterious reason i386 debugging gets an assert and dies immediately. So for now its off. llvm-svn: 163044
-
- Aug 30, 2012
-
-
Greg Clayton authored
OptionValueFileSpec had an accessor to read the contents of the file and return the data. This can end up being used to get the string contents of a text file and could end up not being NULL terminated. I added accessors to get the file contents raw, or with a null terminator. Added the needed calls to make this happen in the FileSpec and File classes. llvm-svn: 162921
-
- Aug 29, 2012
-
-
rdar://problem/11757916Greg Clayton authored
Make breakpoint setting by file and line much more efficient by only looking for inlined breakpoint locations if we are setting a breakpoint in anything but a source implementation file. Implementing this complex for a many reasons. Turns out that parsing compile units lazily had some issues with respect to how we need to do things with DWARF in .o files. So the fixes in the checkin for this makes these changes: - Add a new setting called "target.inline-breakpoint-strategy" which can be set to "never", "always", or "headers". "never" will never try and set any inlined breakpoints (fastest). "always" always looks for inlined breakpoint locations (slowest, but most accurate). "headers", which is the default setting, will only look for inlined breakpoint locations if the breakpoint is set in what are consudered to be header files, which is realy defined as "not in an implementation source file". - modify the breakpoint setting by file and line to check the current "target.inline-breakpoint-strategy" setting and act accordingly - Modify compile units to be able to get their language and other info lazily. This allows us to create compile units from the debug map and not have to fill all of the details in, and then lazily discover this information as we go on debuggging. This is needed to avoid parsing all .o files when setting breakpoints in implementation only files (no inlines). Otherwise we would need to parse the .o file, the object file (mach-o in our case) and the symbol file (DWARF in the object file) just to see what the compile unit was. - modify the "SymbolFileDWARFDebugMap" to subclass lldb_private::Module so that the virtual "GetObjectFile()" and "GetSymbolVendor()" functions can be intercepted when the .o file contenst are later lazilly needed. Prior to this fix, when we first instantiated the "SymbolFileDWARFDebugMap" class, we would also make modules, object files and symbol files for every .o file in the debug map because we needed to fix up the sections in the .o files with information that is in the executable debug map. Now we lazily do this in the DebugMapModule::GetObjectFile() Cleaned up header includes a bit as well. llvm-svn: 162860
-
- Aug 24, 2012
-
-
Johnny Chen authored
Previously we put a WatchpointSentry object within StopInfo.cpp to disable-and-then-enable the watchpoint itself while we are performing the actions associated with the triggered watchpoint, which can cause the user-initiated watchpoint disabling action to be negated. Add a test case to verify that a watchpoint can be disabled during the callbacks. llvm-svn: 162483
-
- Aug 22, 2012
-
-
Jim Ingham authored
Rework how the API mutex is acquired when filling out an ExecutionContext from an ExecutionContextRef, particularly in the SBThread & SBFrame interfaces. Instead of filling the whole context & then getting the API mutex, we now get only the target, acquire the API mutex from it, then fill out the rest of the context. This removes a race condition where you get a ThreadSP, then wait on the API mutex while another command Destroy's the Thread you've just gotten. Also fixed the ExecutionContextRef::Get*SP calls so they don't return invalid objects. Also fixed the ExecutionContext::Has*Scope calls so they don't claim to have a scope if the object representing that scope has been destroyed. Also fixed a think-o in Thread::IsValid which was causing it to return the opposite of the desired value. <rdar://problem/11995490> llvm-svn: 162401
-
Jim Ingham authored
llvm-svn: 162400
-
Greg Clayton authored
llvm-svn: 162376
-
Greg Clayton authored
Reimplemented the code that backed the "settings" in lldb. There were many issues with the previous implementation: - no setting auto completion - very manual and error prone way of getting/setting variables - tons of code duplication - useless instance names for processes, threads Now settings can easily be defined like option values. The new settings makes use of the "OptionValue" classes so we can re-use the option value code that we use to set settings in command options. No more instances, just "does the right thing". llvm-svn: 162366
-
Johnny Chen authored
Fix test failures in TestWatchpointIter.py due to http://llvm.org/viewvc/llvm-project?rev=162322&view=rev. llvm-svn: 162328
-
Johnny Chen authored
Remove the process->DisableWatchpoint() and EnableWatchpoint() calls since the sentry object is already doing that. llvm-svn: 162323
-
Johnny Chen authored
Watchpoint conditions were hitting watchpoint, smashing LLDB's stack. Make sure watchpoint is properly disabled and subsequently enabled while performing watchpoint actions. llvm-svn: 162322
-
- Aug 14, 2012
-
-
Johnny Chen authored
When trying to take snapshots of a watched variable, if the frame is unable to evaluate the variable expression, do not take the sanpshot and forget about the stop info. It is possible that the variable expression has gone out of scope, we'll revise the hit count due to the false alarms. llvm-svn: 161892
-
Johnny Chen authored
Change the test case, too. llvm-svn: 161806
-
- Aug 13, 2012
-
-
Johnny Chen authored
llvm-svn: 161787
-
Johnny Chen authored
Record the snapshot of our watched value when the watchpoint is set or hit. And report the old/new values when watchpoint is triggered. Add some test scenarios. llvm-svn: 161785
-
- Aug 11, 2012
-
-
Jim Ingham authored
llvm-svn: 161719
-
- Aug 10, 2012
-
-
Johnny Chen authored
Forgot to check in this file. Oops! llvm-svn: 161639
-
- Aug 09, 2012
-
-
Sean Callanan authored
and instead made us use implicit casts to bool. This generated a warning in C++11. <rdar://problem/11930775> llvm-svn: 161559
-
- Aug 08, 2012
-
-
Sean Callanan authored
suppress all non-error output from the "expression" command. <rdar://problem/11225150> llvm-svn: 161502
-