| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
ModuleList::FindTypes where the old parameters that existing clients were using would have been compatible, so I renamed ModuleList::FindTypes to ModuleList::FindTypes2. Then I made fixes and verified I updated and fixed all client code, but I forgot to rename the function back to ModuleList::FindTypes(). I am doing that now and also cleaning up the C++ dynamic type code a bit.
llvm-svn: 154182
|
| |
|
|
|
|
| |
more exhaustive comparison.
llvm-svn: 154181
|
| |
|
|
|
|
|
|
| |
the process is stopped by having logging calls that end with "error: process is running".
Also test for the process to be stopped when many SBValue API calls are made to make sure it is safe to evaluate values, children of values and much more.
llvm-svn: 154160
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
exclude tests decorated with
either @dsym_test or @dwarf_test to be executed during the testsuite run. There are still lots of
Test*.py files which have not been decorated with the new decorator.
An example:
# From TestMyFirstWatchpoint.py ->
class HelloWatchpointTestCase(TestBase):
mydir = os.path.join("functionalities", "watchpoint", "hello_watchpoint")
@dsym_test
def test_hello_watchpoint_with_dsym_using_watchpoint_set(self):
"""Test a simple sequence of watchpoint creation and watchpoint hit."""
self.buildDsym(dictionary=self.d)
self.setTearDownCleanup(dictionary=self.d)
self.hello_watchpoint()
@dwarf_test
def test_hello_watchpoint_with_dwarf_using_watchpoint_set(self):
"""Test a simple sequence of watchpoint creation and watchpoint hit."""
self.buildDwarf(dictionary=self.d)
self.setTearDownCleanup(dictionary=self.d)
self.hello_watchpoint()
# Invocation ->
[17:50:14] johnny:/Volumes/data/lldb/svn/ToT/test $ ./dotest.py -N dsym -v -p TestMyFirstWatchpoint.py
LLDB build dir: /Volumes/data/lldb/svn/ToT/build/Debug
LLDB-137
Path: /Volumes/data/lldb/svn/ToT
URL: https://johnny@llvm.org/svn/llvm-project/lldb/trunk
Repository Root: https://johnny@llvm.org/svn/llvm-project
Repository UUID: 91177308-0d34-0410-b5e6-96231b3b80d8
Revision: 154133
Node Kind: directory
Schedule: normal
Last Changed Author: gclayton
Last Changed Rev: 154109
Last Changed Date: 2012-04-05 10:43:02 -0700 (Thu, 05 Apr 2012)
Session logs for test failures/errors/unexpected successes will go into directory '2012-04-05-17_50_49'
Command invoked: python ./dotest.py -N dsym -v -p TestMyFirstWatchpoint.py
compilers=['clang']
Configuration: arch=x86_64 compiler=clang
----------------------------------------------------------------------
Collected 2 tests
1: test_hello_watchpoint_with_dsym_using_watchpoint_set (TestMyFirstWatchpoint.HelloWatchpointTestCase)
Test a simple sequence of watchpoint creation and watchpoint hit. ... skipped 'dsym tests'
2: test_hello_watchpoint_with_dwarf_using_watchpoint_set (TestMyFirstWatchpoint.HelloWatchpointTestCase)
Test a simple sequence of watchpoint creation and watchpoint hit. ... ok
----------------------------------------------------------------------
Ran 2 tests in 1.138s
OK (skipped=1)
Session logs for test failures/errors/unexpected successes can be found in directory '2012-04-05-17_50_49'
[17:50:50] johnny:/Volumes/data/lldb/svn/ToT/test $
llvm-svn: 154154
|
| |
|
|
| |
llvm-svn: 154153
|
| |
|
|
| |
llvm-svn: 154148
|
| |
|
|
| |
llvm-svn: 154147
|
| |
|
|
| |
llvm-svn: 154146
|
| |
|
|
| |
llvm-svn: 154145
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Right now it only works on Mac OS X, but other
platforms would just need to add their own
implementation of AddLLDBToSysPathOn*().
The stress-tester has two modes:
Used with --bytes N --random, the stress-tester
generates random instructions of length N and
runs them through the disassembler. This is
suitable for architectures like Intel where it
is combinatorially infeasible to run through the
entire space of possible instructions.
Used with --bytes N and no arguments (or --start
S --stride T), the stress-tester tests the
disassembler with a monotonically increasing
sequence of instructions.
The --start and --stride arguments are intended
for use in multiprocessing environments. Give
each core an ID from 0 .. T-1, pass the ID in as
the --start, and use T as the stride, and you
can launch one copy of the stress-tester on each
core you have available.
llvm-svn: 154143
|
| |
|
|
|
|
| |
since it can be used for remote debugging.
llvm-svn: 154109
|
| |
|
|
|
|
| |
missing in the dylib.
llvm-svn: 154108
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This abstracts read/write locks on the current host system. It is currently backed by pthread_rwlock_t objects so it should work on all unix systems.
We also need a way to control multi-threaded access to the process through the public API when it is running. For example it isn't a good idea to try and get stack frames while the process is running. To implement this, the lldb_private::Process class now contains a ReadWriteLock member variable named m_run_lock which is used to control the public process state. The public process state represents the state of the process as the client knows it. The private is used to control the actual current process state. So the public state of the process can be stopped, yet the private state can be running when evaluating an expression for example.
Adding the read/write lock where readers are clients that want the process to stay stopped, and writers are clients that run the process, allows us to accurately control multi-threaded access to the process.
Switched the SBThread and SBFrame over to us shared pointers to the ExecutionContextRef class instead of making their own class to track this. This fixed an issue with assigning on SBFrame to another and will also centralize the code that tracks weak references to execution context objects into one location.
llvm-svn: 154099
|
| |
|
|
| |
llvm-svn: 154086
|
| |
|
|
| |
llvm-svn: 154085
|
| |
|
|
|
|
|
|
| |
They are truncated when generating the version
numbers seen in the headers, so for example
lldb-100.1 would have #define LLDB_VERSION=100
llvm-svn: 154074
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
correctly if the setter/getter were not present
in the debug information. The fixes are as follows:
- We not only look for the method by its full name,
but also look for automatically-generated methods
when searching for a selector in an Objective-C
interface. This is necessary to find accessors.
- Extract the getter and setter name from the
DW_TAG_APPLE_Property declaration in the DWARF
if they are present; generate them if not.
llvm-svn: 154067
|
| |
|
|
|
|
| |
class.
llvm-svn: 154055
|
| |
|
|
|
|
|
|
|
|
|
| |
Found an issue where we might still have shared pointer references to lldb_private::Thread objects where the object itself is not valid and has been removed from the Process. When a thread is removed from a process, it will call Thread::DestroyThread() which well set a boolean member variable which is exposed now via:
bool
Thread::IsValid() const;
We then check the thread validity before handing out a shared pointer.
llvm-svn: 154048
|
| |
|
|
|
|
| |
the lldb_private::Address has a weak pointer to the section which has a weak pointer back to the module, so it is safe to have just a lldb_private::Address object now.
llvm-svn: 154045
|
| |
|
|
| |
llvm-svn: 154043
|
| |
|
|
| |
llvm-svn: 154041
|
| |
|
|
| |
llvm-svn: 154028
|
| |
|
|
|
|
| |
while clearing out an SBDebugger which was acquiring input from the interactive interpreter
llvm-svn: 154027
|
| |
|
|
|
|
| |
option allows the user to specify a Python function name instead of a Python oneliner or interactive script input as a breakpoint command
llvm-svn: 154026
|
| |
|
|
|
|
| |
any targets. Then modified the darwin "crashlog.py" to use this agnostic info and the new functionality and classes.
llvm-svn: 153969
|
| |
|
|
| |
llvm-svn: 153947
|
| |
|
|
| |
llvm-svn: 153946
|
| |
|
|
| |
llvm-svn: 153945
|
| |
|
|
| |
llvm-svn: 153944
|
| |
|
|
|
|
| |
of a superfluous 'default' label.
llvm-svn: 153943
|
| |
|
|
| |
llvm-svn: 153942
|
| |
|
|
| |
llvm-svn: 153941
|
| |
|
|
| |
llvm-svn: 153940
|
| |
|
|
| |
llvm-svn: 153932
|
| |
|
|
| |
llvm-svn: 153931
|
| |
|
|
| |
llvm-svn: 153930
|
| |
|
|
| |
llvm-svn: 153929
|
| |
|
|
|
|
| |
wchar_t as distinct from int.
llvm-svn: 153920
|
| |
|
|
|
|
|
|
| |
dsymutil.
This is supposed to succeed even with rdar://problem/11166975.
llvm-svn: 153919
|
| |
|
|
|
|
| |
section.
llvm-svn: 153915
|
| |
|
|
| |
llvm-svn: 153911
|
| |
|
|
| |
llvm-svn: 153910
|
| |
|
|
|
|
| |
Fixed an issue where there were more than one way to get a CompileUnitSP created when using SymbolFileDWARF with SymbolFileDWARFDebugMap. This led to an assertion that would fire under certain conditions. Now there is only one way to create the compile unit and it will "do the right thing".
llvm-svn: 153908
|
| |
|
|
| |
llvm-svn: 153907
|
| |
|
|
| |
llvm-svn: 153899
|
| |
|
|
|
|
| |
symbol was synthetically added to the symbol table (the symbol was not part of the symbol table itself but came from another section).
llvm-svn: 153893
|
| |
|
|
|
|
|
|
| |
file generated by clang.
rdar://problem/11167268
llvm-svn: 153891
|
| |
|
|
| |
llvm-svn: 153878
|
| |
|
|
|
|
| |
with some archs, tweak the way we update PATH to fix that.
llvm-svn: 153868
|