- Jan 24, 2011
-
-
Sean Callanan authored
it to interpret a "this" variable that was merely a pointer -- that is, not a class pointer -- as meaning that the current context was inside a C++ method. This bug would prevent expressions from evaluating correctly in regular C code if there was a pointer variable named "this" in scope. llvm-svn: 124117
-
Greg Clayton authored
llvm-svn: 124116
-
Greg Clayton authored
they may be in sensitive areas and we set breakpoints on the thread creation routines if we are running expressions, so the threads should quickly get to a safe spot. llvm-svn: 124115
-
Jim Ingham authored
llvm-svn: 124114
-
Jim Ingham authored
Be sure to clear out the base plan's m_report_run and m_report_stop each time we resume so we don't use stale values. llvm-svn: 124113
-
Greg Clayton authored
llvm-svn: 124112
-
Greg Clayton authored
been known to make threads for us while our process/task is suspended. llvm-svn: 124111
-
Greg Clayton authored
existence if the "thread" log bit is enabled right before we resume. llvm-svn: 124110
-
Greg Clayton authored
llvm-svn: 124109
-
Jim Ingham authored
Some useful logging. Also don't stuff the temporary thread into a shared pointer for no apparent reason. llvm-svn: 124108
-
Jim Ingham authored
Add a method to StreamFile to line buffer the file. Use that in "log enable -f file" to line buffer the log output. llvm-svn: 124107
-
Jim Ingham authored
llvm-svn: 124103
-
- Jan 23, 2011
-
-
Jim Ingham authored
llvm-svn: 124086
-
Jim Ingham authored
Add some more logging of broadcaster and Process. Also, protect the event broadcasting against hijacking in mid-event delivery. llvm-svn: 124084
-
Greg Clayton authored
llvm-svn: 124080
-
Greg Clayton authored
SWIG renaming done to work around deprecated APIs. llvm-svn: 124075
-
Johnny Chen authored
provision for specifying a working directory with the name LaunchWithCWD in our target language (Python) for now. This fixes the test suite failures due to the overloading. llvm-svn: 124069
-
Greg Clayton authored
due to overloaded SBTarget::Launch() calls. Bumping Xcode project versions: lldb-42 and debugserver-127. llvm-svn: 124063
-
Greg Clayton authored
takes separate file handles for stdin, stdout, and stder and also allows for the working directory to be specified. Added support to "process launch" to a new option: --working-dir=PATH. We can now set the working directory. If this is not set, it defaults to that of the process that has LLDB loaded. Added the working directory to the host LaunchInNewTerminal function to allows the current working directory to be set in processes that are spawned in their own terminal. Also hooked this up to the lldb_private::Process and all mac plug-ins. The linux plug-in had its API changed, but nothing is making use of it yet. Modfied "debugserver" and "darwin-debug" to also handle the current working directory options and modified the code in LLDB that spawns these tools to pass the info along. Fixed ProcessGDBRemote to properly pass along all file handles for stdin, stdout and stderr. After clearing the default values for the stdin/out/err file handles for process to be NULL, we had a crasher in UserSettingsController::UpdateStringVariable which is now fixed. Also fixed the setting of boolean values to be able to be set as "true", "yes", "on", "1" for true (case insensitive) and "false", "no", "off", or "0" for false. Fixed debugserver to properly handle files for STDIN, STDOUT and STDERR that are not already opened. Previous to this fix debugserver would only correctly open and dupe file handles for the slave side of a pseudo terminal. It now correctly handles getting STDIN for the inferior from a file, and spitting STDOUT and STDERR out to files. Also made sure the file handles were correctly opened with the NOCTTY flag for terminals. llvm-svn: 124060
-
Greg Clayton authored
llvm-svn: 124051
-
Greg Clayton authored
nice to know about the issue, but we shouldn't crash. llvm-svn: 124050
-
Greg Clayton authored
checking the validity of the shared pointer prior to using it. Fixed the GDB remote plug-in to once again watch for a reply from the "k" packet, and fixed the logic to make sure the thread requesting the kill and the async thread play nice (and very quickly) by synchronizing the packet sending and reply. I also tweaked some of the shut down packet ("k" kill, "D" detach, and the halt packet) to make sure they do the right thing. Fixed "StateType Process::WaitForProcessStopPrivate (...)" to correctly pass the timeout along to WaitForStateChangedEventsPrivate() and made the function behave correctly with respect to timing out. Added separate STDIN, STDOUT, and STDERR support to debugserver. Also added the start of being able to set the working directory for the inferior process. llvm-svn: 124049
-
- Jan 22, 2011
-
-
Greg Clayton authored
Avoid the race condition Stephen Wilson was worried about in revision 123465 by making a local copy. We need to be able to have the private state thread let the lldb_private::Process class that it has exited, otherwise we end up with a timeout when the process destructor or DoDestroy is called where the private state thread has already exited and then StopPrivateStateThread() will wait for the thread which has already existed to respond to it. llvm-svn: 124038
-
Greg Clayton authored
threads that we spawn let us know when they are going away and that we don't timeout waiting for a message from threads that have gone away. We also now don't expect the "k" packet (kill) to send a response. This greatly speeds up debugger shutdown performance. The test suite now runs quite a bit faster. Added a fix to the variable display code that fixes the display of base classes. We were assuming the virtual or normal base class offsets were being given in bit sizes, but they were being given as character sizes, so we needed to multiply the offset by 8. This wasn't affecting the expression parser, but it was affecting the correct display of C++ class base classes and all of their children. llvm-svn: 124024
-
Jim Ingham authored
we are requesting a single thread to run. May seem like a silly thing to do, but the kernel on MacOS X will inject new threads into a program willy-nilly, and I would like to keep them from running if I can. llvm-svn: 124018
-
Jim Ingham authored
Add more logging. Try to handle the case where "Halt" fails. This is kind of a losing game in the end, if we can't halt the target, it is not clear what we can do but keep trying... llvm-svn: 124017
-
Jim Ingham authored
llvm-svn: 124016
-
Jim Ingham authored
Make sure DoTakedown gets called only once by adding a dedicated m_takedown_done bool. Add a little more useful logging. llvm-svn: 124015
-
Jim Ingham authored
llvm-svn: 124014
-
Jim Ingham authored
Make "log enable -v" work. We were only checking the log's stream's verbosity, not the log's verbosity... llvm-svn: 124013
-
Jim Ingham authored
Add a (currently disabled) bear trap where instead of deallocating pages, we remove all permissions. llvm-svn: 124012
-
Caroline Tice authored
llvm-svn: 124011
-
Johnny Chen authored
llvm-svn: 124010
-
Johnny Chen authored
the EmulateCallback routine without too much duplication. Add an entry for emulating ARM PUSH with encoding A2. llvm-svn: 124009
-
Jim Ingham authored
llvm-svn: 124008
-
- Jan 21, 2011
-
-
Johnny Chen authored
llvm-svn: 124003
-
Sean Callanan authored
Added a safeguard to ensure that the user does not create variables that override persistent result variables. llvm-svn: 124001
-
Jim Ingham authored
The code to check whether the number of arguments was 0 was not necessary, VerifyBreakpointIDs will turn an empty argument into the last specified breakpoint. llvm-svn: 124000
-
Greg Clayton authored
to be fed 4 callbacks: read/write memory, and read/write registers. After this, you can tell the object to read an instruction. This will cause the class to read the PC, and read and instruction. Then you can emulate the instruction by calling EvaluateInstruction. This will cause the class to figure out exactly what an opcode does, and call the read/write mem/regs functions with actual values which allows one to emulate an instruction without running a process, or it allows one to watch the context information (the memory write is a pushing register 3 onto the stack at offset 12) so it can be used for generating call frame information. This way, in the future, we will have one class that can be used to emulate instructions and generate our unwind info from assembly. llvm-svn: 123998
-
Johnny Chen authored
then doing a thread step-out. This should lead us to the caller frame of the frame we just selected. llvm-svn: 123984
-