- Oct 20, 2010
-
-
Johnny Chen authored
after running the program. llvm-svn: 116873
-
Sean Callanan authored
Christopher for pointing it out. llvm-svn: 116871
-
Sean Callanan authored
that occur while they run. This means that they clean up after themselves even when they crash. llvm-svn: 116870
-
- Oct 19, 2010
-
-
Johnny Chen authored
llvm-svn: 116865
-
Sean Callanan authored
did not return a result. The result is nonexistent (or void), not NULL. llvm-svn: 116855
-
Johnny Chen authored
llvm-svn: 116850
-
Johnny Chen authored
Add a little helper function SETTING_MSG(setting) to be used from TestSettings.test_set_output_path(). llvm-svn: 116847
-
Johnny Chen authored
llvm-svn: 116844
-
Greg Clayton authored
We now spawn a thread to accept a unix socket connection from the inferior when it spawns in the terminal, then we launch the process, then we get the pid back through the unix socket, and then wait for it to SIGSTOP. darwin-debug now clears the terminal screen and prints out the program and arguments that are about to be launched. llvm-svn: 116841
-
Johnny Chen authored
It's an in-progress snapshot, and not complete. llvm-svn: 116822
-
Greg Clayton authored
is being run is visible in the terminal as opposed to just seeing a path to a .command file. llvm-svn: 116814
-
Johnny Chen authored
Change the environment variable name to be more descriptive from LLDB_TIME_WAIT to LLDB_TIME_WAIT_NEXT_LAUNCH. llvm-svn: 116809
-
Greg Clayton authored
sockets so the driver doesn't just crash. Added support for connecting to named sockets (unix IPC sockets) in ConnectionFileDescriptor. Modified the Host::LaunchInNewTerminal() for MacOSX to return the process ID of the inferior process instead of the process ID of the Terminal.app. This was done by modifying the "darwin-debug" executable to connect to lldb through a named unix socket which is passed down as an argument. This allows a quick handshake between "lldb" and "darwin-debug" so we can get the process ID of the inferior and then attach by process ID and avoid attaching to the inferior by process name since there could be more than one process with that name. This still has possible race conditions, those will be fixed in the near future. This fixes the SIGPIPE issues that were sometimes being seen when task_for_pid was failing. llvm-svn: 116792
-
Johnny Chen authored
to 'expression' to avoid cases where 'expr' has been unaliased. llvm-svn: 116780
-
Johnny Chen authored
now goes into a timestamp-specific directory instead of the previous .session-* files. [17:24:34] johnny:/Volumes/data/lldb/svn/trunk $ ls -l test/2010-10-18-16:56:12.935342 total 48 -rw-r--r-- 1 johnny admin 1695 Oct 18 16:56 TestArrayTypes.ArrayTypesTestCase.test_with_dsym_and_run_command.log -rw-r--r-- 1 johnny admin 1652 Oct 18 16:56 TestArrayTypes.ArrayTypesTestCase.test_with_dwarf_and_run_command.log -rw-r--r-- 1 johnny admin 2967 Oct 18 16:56 TestBreakpointCommand.BreakpointCommandTestCase.test_with_dsym.log -rw-r--r-- 1 johnny admin 1648 Oct 18 16:56 TestClassTypes.ClassTypesTestCase.test_with_dwarf_and_run_command.log -rw-r--r-- 1 johnny admin 1665 Oct 18 16:56 TestClassTypesDisassembly.IterateFrameAndDisassembleTestCase.test_with_dsym_and_python_api.log -rw-r--r-- 1 johnny admin 3873 Oct 18 16:58 TestFloatTypesExpr.FloatTypesTestCase.test_float_types_with_dsym.log [17:24:37] johnny:/Volumes/data/lldb/svn/trunk $ Also, the dumping happens when a test errored in additioned to when it failed. llvm-svn: 116778
-
Johnny Chen authored
llvm-svn: 116775
-
Caroline Tice authored
script, so it can keep track of dependencies accurately (for knowing when to re-build LLDBWrapPython.cpp). llvm-svn: 116765
-
Caroline Tice authored
argument type, eArgTypeUnixSignal. llvm-svn: 116764
-
Johnny Chen authored
llvm-svn: 116763
-
Caroline Tice authored
take raw input). llvm-svn: 116760
-
- Oct 18, 2010
-
-
Johnny Chen authored
llvm-svn: 116748
-
Caroline Tice authored
executing properly. llvm-svn: 116735
-
Caroline Tice authored
the termios settings on the debugger's input handle. llvm-svn: 116725
-
Johnny Chen authored
Also add a more useful assert message for test_set_output_path(), which is currently decorated with @expectedFailure. llvm-svn: 116718
-
Johnny Chen authored
Also change the utility functions in lldbutil.py, too, to correspond to the StateType representation change. llvm-svn: 116706
-
Johnny Chen authored
llvm-svn: 116705
-
Greg Clayton authored
but something is still killing our inferior. Fixed an issue with darwin-debug where it wasn't passing all needed arguments to the inferior. Fixed a race condition with the attach to named process code. llvm-svn: 116697
-
Greg Clayton authored
"vAttachName;<PROCNAME>" packet, and wait for a new process by name to launch with the "vAttachWait;<PROCNAME>". Fixed a few issues with attaching where if DoAttach() returned no error, yet there was no valid process ID, we would deadlock waiting for an event that would never happen. Added a new "process launch" option "--tty" that will launch the process in a new terminal if the Host layer supports the "Host::LaunchInNewTerminal(...)" function. This currently works on MacOSX and will allow the debugging of terminal applications that do complex operations with the terminal. Cleaned up the output when the process resumes, stops and halts to be consistent with the output format. llvm-svn: 116693
-
Greg Clayton authored
static bool Host::GetLLDBPath (lldb::PathType path_type, FileSpec &file_spec); This will fill in "file_spec" with an appropriate path that is appropriate for the current Host OS. MacOSX will return paths within the LLDB.framework, and other unixes will return the paths they want. The current PathType enums are: typedef enum PathType { ePathTypeLLDBShlibDir, // The directory where the lldb.so (unix) or LLDB mach-o file in LLDB.framework (MacOSX) exists ePathTypeSupportExecutableDir, // Find LLDB support executable directory (debugserver, etc) ePathTypeHeaderDir, // Find LLDB header file directory ePathTypePythonDir // Find Python modules (PYTHONPATH) directory } PathType; All places that were finding executables are and python paths are now updated to use this Host call. Added another new host call to launch the inferior in a terminal. This ability will be very host specific and doesn't need to be supported on all systems. MacOSX currently will create a new .command file and tell Terminal.app to open the .command file. It also uses the new "darwin-debug" app which is a small app that uses posix to exec (no fork) and stop at the entry point of the program. The GDB remote plug-in is almost able launch a process and attach to it, it currently will spawn the process, but it won't attach to it just yet. This will let LLDB not have to share the terminal with another process and a new terminal window will pop up when you launch. This won't get hooked up until we work out all of the kinks. The new Host function is: static lldb::pid_t Host::LaunchInNewTerminal ( const char **argv, // argv[0] is executable const char **envp, const ArchSpec *arch_spec, bool stop_at_entry, bool disable_aslr); Cleaned up FileSpec::GetPath to not use strncpy() as it was always zero filling the entire path buffer. Fixed an issue with the dynamic checker function where I missed a '$' prefix that should have been added. llvm-svn: 116690
-
- Oct 16, 2010
-
-
Greg Clayton authored
we don't need to. llvm-svn: 116676
-
Greg Clayton authored
suspended, we would call "int ::task_resume (task_t task);" as many times as it took to resume the task which isn't what we want to do. llvm-svn: 116674
-
Johnny Chen authored
facilitate session recording. This happens inside an instance method where the test instance is well known. llvm-svn: 116649
-
Johnny Chen authored
pass in a 'sender' arg to the buildDefault(), buildDsym(), buildDwarf(), and cleanup() functions. The sender arg will be the test instance itself (i.e., an instance of TestBase). This is so that the relevant command execution can be recorded in the TestBase.session object if sender is available. The lldbtest.system() command has been modified to pop the 'sender' arg out of the keyword arguments dictionary and use it as the test instance to facilitate seesion recordings. An example is in test/types/AbstractBase.py: def generic_type_tester(self, atoms, quotedDisplay=False): """Test that variables with basic types are displayed correctly.""" # First, capture the golden output emitted by the oracle, i.e., the # series of printf statements. go = system("./a.out", sender=self) There are cases when sender is None. This is the case when the @classmethod is involved in the use of these APIs. When this happens, there is no recording into a session object, but printing on the sys.stderr is still honored if the trace flag is ON. An example is in test/settings/TestSettings.py: @classmethod def classCleanup(cls): system(["/bin/sh", "-c", "rm -f output.txt"]) system(["/bin/sh", "-c", "rm -f stdout.txt"]) llvm-svn: 116648
-
Johnny Chen authored
instead of using hard-coded line number. llvm-svn: 116646
-
rdar://problem/8542091Johnny Chen authored
Also change the expected matching pattern of the 'expr -o -- my' output. llvm-svn: 116645
-
Johnny Chen authored
llvm-svn: 116643
-
Greg Clayton authored
Fixed the UnixSignals class to be able to get a signal by name, short name, or signal number when using: int32_t UnixSignals::GetSignalNumberFromName (const char *name) const; llvm-svn: 116641
-
Jim Ingham authored
llvm-svn: 116638
-
Greg Clayton authored
Changed all of our synthesized "___clang" functions, types and variables that get used in expressions over to have a prefix of "$_lldb". Now when we do name lookups we can easily switch off of the first '$' character to know if we should look through only our internal (when first char is '$') stuff, or when we should look through program variables, functions and types. Converted all of the clang expression code over to using "const ConstString&" values for names instead of "const char *" since there were many places that were converting the "const char *" names into ConstString names and them throwing them away. We now avoid making a lot of ConstString conversions and benefit from the quick comparisons in a few extra spots. Converted a lot of code from LLVM coding conventions into LLDB coding conventions. llvm-svn: 116634
-
Jim Ingham authored
Mark a ValueObjectConstResult as valid if it is created with some data, don't wait till it gets updated. llvm-svn: 116633
-