summaryrefslogtreecommitdiffstats
path: root/lldb
Commit message (Collapse)AuthorAgeFilesLines
* In a prior commit, I changed the parameters around on a ↵Greg Clayton2012-04-067-71/+106
| | | | | | 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
* Check if the two clang opaque type pointers are equal before doing anything ↵Greg Clayton2012-04-061-0/+3
| | | | | | more exhaustive comparison. llvm-svn: 154181
* Added logging when API calls try to do something that shouldn't be done when ↵Greg Clayton2012-04-064-249/+704
| | | | | | | | 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
* Add a new option to the test driver, -N dsym or -N dwarf, in order to ↵Johnny Chen2012-04-0652-1/+184
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Add flag to warn about ivar initialization reordering.Bill Wendling2012-04-061-0/+3
| | | | llvm-svn: 154153
* explicitly cast the value.Bill Wendling2012-04-061-1/+1
| | | | llvm-svn: 154148
* Order ivar initializers to how they're declared in the class.Bill Wendling2012-04-061-2/+2
| | | | llvm-svn: 154147
* Order ivar initializers to how they're declared in the class.Bill Wendling2012-04-061-1/+1
| | | | llvm-svn: 154146
* Silence unused warning.Bill Wendling2012-04-061-2/+2
| | | | llvm-svn: 154145
* Added a stress-tester for LLDB's disassembler.Sean Callanan2012-04-061-0/+131
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Enable building the POSIX-DYLD dynamic loader plug-in in the Makefile build ↵Greg Clayton2012-04-051-3/+4
| | | | | | since it can be used for remote debugging. llvm-svn: 154109
* Revert r154086. It may be needed for Darwin. But the symbols are still ↵Bill Wendling2012-04-051-4/+2
| | | | | | missing in the dylib. llvm-svn: 154108
* Added a new Host class: ReadWriteLockGreg Clayton2012-04-0514-646/+1085
| | | | | | | | | | | | 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
* The DynamicLoaderPOSIXDYLD calls aren't available on Apple systems.Bill Wendling2012-04-051-2/+4
| | | | llvm-svn: 154086
* Add Security framework to the list of frameworks needed for linking.Bill Wendling2012-04-051-1/+1
| | | | llvm-svn: 154085
* Tolerate decimal points in the LLDB version number.Sean Callanan2012-04-051-1/+1
| | | | | | | | 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
* Fixed a problem where we did not read propertiesSean Callanan2012-04-055-25/+153
| | | | | | | | | | | | | | | | 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
* Order the initializations so that they reflect how they're declared in the ↵Bill Wendling2012-04-041-1/+1
| | | | | | class. llvm-svn: 154055
* <rdar://problem/11184458>Greg Clayton2012-04-042-5/+20
| | | | | | | | | | | 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
* Change SBAddress back to using a std::auto_ptr to a lldb_private::Address as ↵Greg Clayton2012-04-043-108/+45
| | | | | | 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
* Use LLDB as the default debugger for launcherXPCService.Greg Clayton2012-04-041-1/+2
| | | | llvm-svn: 154043
* Fixed the C++11 #defines that wrap std::weak_ptr to actually use std::weak_ptr.Greg Clayton2012-04-042-2/+2
| | | | llvm-svn: 154041
* Attempt at fixing a crasher where summary strings where looping endlessly.Enrico Granata2012-04-042-2/+8
| | | | llvm-svn: 154028
* Fixing a potential crasher where Python would assume we have no thread state ↵Enrico Granata2012-04-041-8/+15
| | | | | | while clearing out an SBDebugger which was acquiring input from the interactive interpreter llvm-svn: 154027
* Adding a new --python-function (-F) option to breakpoint command add. The ↵Enrico Granata2012-04-044-6/+65
| | | | | | 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
* Added a platform agnostic symbolication python module that can be used by ↵Greg Clayton2012-04-032-359/+611
| | | | | | any targets. Then modified the darwin "crashlog.py" to use this agnostic info and the new functionality and classes. llvm-svn: 153969
* Initialize ivars in the correct order.Bill Wendling2012-04-031-3/+3
| | | | llvm-svn: 153947
* Possibly too soon for this commit.Bill Wendling2012-04-031-1/+1
| | | | llvm-svn: 153946
* Revert accidental checkin.Bill Wendling2012-04-031-7/+0
| | | | llvm-svn: 153945
* Possibly too soon for this change.Bill Wendling2012-04-031-1/+1
| | | | llvm-svn: 153944
* Use the path to the header file. Use an integer instead of NULL. And get rid ↵Bill Wendling2012-04-031-3/+2
| | | | | | of a superfluous 'default' label. llvm-svn: 153943
* The option is 'NoInlineDefine.'Bill Wendling2012-04-031-1/+1
| | | | llvm-svn: 153942
* Use integers instead of NULL.Bill Wendling2012-04-032-4/+4
| | | | llvm-svn: 153941
* Spell 'DW_TAG_APPLE_property' with the correct capitalization.Bill Wendling2012-04-031-1/+1
| | | | llvm-svn: 153940
* Use the correct class/struct keyword so that they match the declarations.Bill Wendling2012-04-032-2/+9
| | | | llvm-svn: 153932
* Initialize ivars in the order they are defined in the class.Bill Wendling2012-04-031-3/+3
| | | | llvm-svn: 153931
* Return 0 for the size_t return type.Bill Wendling2012-04-031-1/+1
| | | | llvm-svn: 153930
* Use 0 instead of NULL for the integral value.Bill Wendling2012-04-031-12/+12
| | | | llvm-svn: 153929
* Fixed ClangASTContext to correctly recognizeSean Callanan2012-04-031-183/+173
| | | | | | wchar_t as distinct from int. llvm-svn: 153920
* Add a Test case to make sure that __apple_types section does get produced by ↵Johnny Chen2012-04-031-3/+22
| | | | | | | | dsymutil. This is supposed to succeed even with rdar://problem/11166975. llvm-svn: 153919
* Add some more debug prints and retrieve the debug subsections from the DWARF ↵Johnny Chen2012-04-031-6/+14
| | | | | | section. llvm-svn: 153915
* One last syntax error fixEnrico Granata2012-04-021-1/+1
| | | | llvm-svn: 153911
* Fixing syntax typos in Python formattersEnrico Granata2012-04-023-6/+6
| | | | llvm-svn: 153910
* <rdar://problem/11160171>Greg Clayton2012-04-026-154/+178
| | | | | | 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
* Remove unused file as this file is deprecated (use ./crashlog.py instead).Greg Clayton2012-04-021-573/+0
| | | | llvm-svn: 153907
* Removing some instances of str(SBValue)Enrico Granata2012-04-023-6/+6
| | | | llvm-svn: 153899
* Export the ability to see if a symbol is externally visible and also if the ↵Greg Clayton2012-04-023-1/+45
| | | | | | 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
* Add testcase that verifies that __apple_types is a valid section in a .o ↵Johnny Chen2012-04-023-0/+93
| | | | | | | | file generated by clang. rdar://problem/11167268 llvm-svn: 153891
* Logging for data formatters.Enrico Granata2012-04-0217-3/+352
| | | | llvm-svn: 153878
* Building llvm for multiple arches could cause problemsJason Molenda2012-04-021-1/+3
| | | | | | with some archs, tweak the way we update PATH to fix that. llvm-svn: 153868
OpenPOWER on IntegriCloud