3990c278c5f4f6ce1373ee3e6d5b984883cf4318 |
05-Jun-2013 |
Enrico Granata <egranata@apple.com> |
<rdar://problem/13125225> Adding data formatters for std::set, std::multiset and std::multimap for libc++ The underlying data structure is the same as std::map, so this change is very minimal and mostly consists of test cases git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@183323 91177308-0d34-0410-b5e6-96231b3b80d8
ap/TestDataFormatterLibccMap.py
ultimap/Makefile
ultimap/TestDataFormatterLibccMultiMap.py
ultimap/main.cpp
ultiset/Makefile
ultiset/TestDataFormatterLibcxxMultiSet.py
ultiset/main.cpp
et/Makefile
et/TestDataFormatterLibcxxSet.py
et/main.cpp
|
6bc4dcdfbcdfa455299d2123011b82a77351ee72 |
15-May-2013 |
Daniel Malea <daniel.malea@intel.com> |
Clean up linux test decorators and add links to known bugs - s/skipOnLinux/skipIfLinux/ to match style of every other decorator - linkify bugizilla/PR numbers in comments No intended change in functionality. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@181913 91177308-0d34-0410-b5e6-96231b3b80d8
terator/TestDataFormatterLibccIterator.py
ist/TestDataFormatterLibcxxList.py
ap/TestDataFormatterLibccMap.py
tring/TestDataFormatterLibcxxString.py
bool/TestDataFormatterLibcxxVBool.py
ector/TestDataFormatterLibcxxVector.py
|
8c0c20a43f6231945d2d09d44df57f5516d681cb |
09-May-2013 |
Enrico Granata <egranata@apple.com> |
Changing the std::map test case to use source breakpoints instead of relying on the nexting always "getting it right" to stop at the locations of interest This should make us more robust in the face of changing compiler line tables and other library modifications git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@181497 91177308-0d34-0410-b5e6-96231b3b80d8
ap/TestDataFormatterLibccMap.py
ap/main.cpp
|
32d7ee3d2969211e104a27fcfcd636f249b26559 |
21-Feb-2013 |
Enrico Granata <egranata@apple.com> |
<rdar://problem/4529976> Adding data formatters for iterators for std::map and std::vector (both libc++ and libstdcpp) This does not include reverse iterators since they are both trickier (due to requirements the standard imposes on them) and much less useful git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@175787 91177308-0d34-0410-b5e6-96231b3b80d8
terator/Makefile
terator/TestDataFormatterLibccIterator.py
terator/main.cpp
|
689696c19cbf0fa8a09e2461f0aaa37409782e3b |
04-Feb-2013 |
Enrico Granata <egranata@apple.com> |
<rdar://problem/12953018> Synthetic children and summary for std::vector<bool> (for both libcxx and libstdcpp). std::vector<bool> is a special case and is custom-implemented to be a vector of bits, which means we failed to handle it with the standard std::vector<T> formatter. This checkin provides custom formatters that work correctly git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@174333 91177308-0d34-0410-b5e6-96231b3b80d8
bool/Makefile
bool/TestDataFormatterLibcxxVBool.py
bool/main.cpp
|
b6985793ce97364e6fa86643b942326b218dcb3d |
12-Jan-2013 |
Enrico Granata <egranata@apple.com> |
<rdar://problem/12239827> Providing a data formatter for libc++ std::wstring In the process, refactoring the std::string data formatter to be written in C++ so that commonalities between the two can be exploited Also, providing a new API on the ValueObject to navigate a hierarchy by index-path Lastly, an appropriate test case is included git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@172282 91177308-0d34-0410-b5e6-96231b3b80d8
tring/Makefile
tring/TestDataFormatterLibcxxString.py
tring/main.cpp
|
b3ce032bc514c40442929f5eb982584341dc8119 |
19-Dec-2012 |
Andrew Kaylor <andrew.kaylor@intel.com> |
Skip libc++ data formatter tests on Linux because there is no standard location for the makefile to find libc++. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@170575 91177308-0d34-0410-b5e6-96231b3b80d8
ist/TestDataFormatterLibcxxList.py
ap/TestDataFormatterLibccMap.py
ector/TestDataFormatterLibcxxVector.py
|
6475c42148a8ea1ca86e5db465db7eca742d897d |
04-Dec-2012 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/12798131> Cleaned up the option parsing code to always pass around the short options as integers. Previously we cast this down to "char" and lost some information. I recently added an assert that would detect duplicate short character options which was firing during the test suite. This fix does the following: - make sure all short options are treated as "int" - make sure that short options can be non-printable values when a short option is not required or when an option group is mixed into many commands and a short option is not desired - fix the help printing to "do the right thing" in all cases. Previously if there were duplicate short character options, it would just not emit help for the duplicates - fix option parsing when there are duplicates to parse options correctly. Previously the option parsing, when done for an OptionGroup, would just start parsing options incorrectly by omitting table entries and it would end up setting the wrong option value git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@169189 91177308-0d34-0410-b5e6-96231b3b80d8
ist/TestDataFormatterLibcxxList.py
ap/TestDataFormatterLibccMap.py
|
251729ef30fde23e4b1256690fbb60962390e560 |
24-Oct-2012 |
Enrico Granata <egranata@apple.com> |
<rdar://problem/12523238> Commit 3 of 3 Changed all relevant test cases to verify that MightHaveChildren() works correctly for objects of interest Added a bunch of convenience methods for test cases to use: target(), process(), thread() and frame() which mimic the lldb.X convenience variables As a bonus, edited the documentation on the website to describe the new method available for synthetic children providers writers to implement! That's all folks! git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@166535 91177308-0d34-0410-b5e6-96231b3b80d8
ist/TestDataFormatterLibcxxList.py
ap/TestDataFormatterLibccMap.py
|
431d839a33e9a274e705f7a268a1c9de2ffc2da2 |
22-Sep-2012 |
Jim Ingham <jingham@apple.com> |
Fix all the test case breakages caused by folks writing tests all over the place that depended explicitly on the output of "break set". Please don't do this sort of thing!!!!! git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@164433 91177308-0d34-0410-b5e6-96231b3b80d8
ist/TestDataFormatterLibcxxList.py
ap/TestDataFormatterLibccMap.py
ector/TestDataFormatterLibcxxVector.py
|
79bdaddc38c5d20bf347fe98b4c129746bb66291 |
24-Apr-2012 |
Enrico Granata <egranata@apple.com> |
Removing the @expectedFailurei386 decorator from test cases that now work as a result of the latest changes to Value.cpp git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@155419 91177308-0d34-0410-b5e6-96231b3b80d8
ist/TestDataFormatterLibcxxList.py
ap/TestDataFormatterLibccMap.py
ector/TestDataFormatterLibcxxVector.py
|
67130e42592e68c3055e7ab5b7a368d89a06f05e |
19-Apr-2012 |
Johnny Chen <johnny.chen@apple.com> |
Add expected failure decorators for test cases which are failing for i386 architecture. Plus fix some test cases to skip/succeed for i386. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@155087 91177308-0d34-0410-b5e6-96231b3b80d8
ist/TestDataFormatterLibcxxList.py
ap/TestDataFormatterLibccMap.py
ector/TestDataFormatterLibcxxVector.py
|
a3ed7d834b0e0c6924ac95629e740682bbcd15ba |
06-Apr-2012 |
Johnny Chen <johnny.chen@apple.com> |
Add a new option to the test driver, -N dsym or -N dwarf, in order to 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 $ git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@154154 91177308-0d34-0410-b5e6-96231b3b80d8
ist/TestDataFormatterLibcxxList.py
ap/TestDataFormatterLibccMap.py
ector/TestDataFormatterLibcxxVector.py
|
dba1de8d585f27601162f674d30ab71d9c83ccde |
27-Mar-2012 |
Enrico Granata <egranata@apple.com> |
Synthetic values are now automatically enabled and active by default. SBValue is set up to always wrap a synthetic value when one is available. A new setting enable-synthetic-value is provided on the target to disable this behavior. There also is a new GetNonSyntheticValue() API call on SBValue to go back from synthetic to non-synthetic. There is no call to go from non-synthetic to synthetic. The test suite has been changed accordingly. Fallout from changes to type searching: an hack has to be played to make it possible to use maps that contain std::string due to the special name replacement operated by clang Fixing a test case that was using libstdcpp instead of libc++ - caught as a consequence of said changes to type searching git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@153495 91177308-0d34-0410-b5e6-96231b3b80d8
ap/TestDataFormatterLibccMap.py
ap/main.cpp
|
dc0a38c5a727cae5362b218a3180d0f4265a619d |
27-Mar-2012 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/11113279> Fixed type lookups to "do the right thing". Prior to this fix, looking up a type using "foo::bar" would result in a type list that contains all types that had "bar" as a basename unless the symbol file was able to match fully qualified names (which our DWARF parser does not). This fix will allow type matches to be made based on the basename and then have the types that don't match filtered out. Types by name can be fully qualified, or partially qualified with the new "bool exact_match" parameter to the Module::FindTypes() method. This fixes some issue that we discovered with dynamic type resolution as well as improves the overall type lookups in LLDB. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@153482 91177308-0d34-0410-b5e6-96231b3b80d8
ap/TestDataFormatterLibccMap.py
|
cf09f885c201becf51acc4a5cfac00b3df53f2a8 |
19-Mar-2012 |
Enrico Granata <egranata@apple.com> |
Massive enumeration name changes: a number of enums in ValueObject were not following the naming pattern Changes to synthetic children: - the update(self): function can now (optionally) return a value - if it returns boolean value True, ValueObjectSyntheticFilter will not clear its caches across stop-points this should allow better performance for Python-based synthetic children when one can be sure that the child ValueObjects have not changed - making a difference between a synthetic VO and a VO with a synthetic value: now a ValueObjectSyntheticFilter will not return itself as its own synthetic value, but will (correctly) claim to itself be synthetic - cleared up the internal synthetic children architecture to make a more consistent use of pointers and references instead of shared pointers when possible - major cleanup of unnecessary #include, data and functions in ValueObjectSyntheticFilter itself - removed the SyntheticValueType enum and replaced it with a plain boolean (to which it was equivalent in the first place) Some clean ups to the summary generation code Centralized the code that clears out user-visible strings and data in ValueObject More efficient summaries for libc++ containers git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@153061 91177308-0d34-0410-b5e6-96231b3b80d8
ist/main.cpp
ector/main.cpp
|
66205ce5381ab6db1f9bff83c483a4dc5854afc7 |
12-Mar-2012 |
Enrico Granata <egranata@apple.com> |
Added formatters for libc++ (http://libcxx.llvm.org): std::string has a summary provider std::vector std::list and std::map have both a summary and a synthetic children provider Given the usage of a custom namespace (std::__1::classname) for the implementation of libc++, we keep both libstdcpp and libc++ formatters enabled at the same time since that raises no conflicts and enabled for seamless transition between the two The formatters for libc++ reside in a libcxx category, and are loaded from libcxx.py (to be found in examples/synthetic) The formatters-stl test cases have been divided to be separate for libcxx and libstdcpp. This separation is necessary because (a) we need different compiler flags for libc++ than for libstdcpp (b) libc++ inlines a lot more than libstdcpp and some code changes were required to accommodate this difference git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@152570 91177308-0d34-0410-b5e6-96231b3b80d8
ist/Makefile
ist/TestDataFormatterLibcxxList.py
ist/main.cpp
ap/Makefile
ap/TestDataFormatterLibccMap.py
ap/main.cpp
ector/Makefile
ector/TestDataFormatterLibcxxVector.py
ector/main.cpp
|