- Aug 03, 2011
-
-
Sean Callanan authored
appropriately between C++ static methods and non-static methods. This bug made it impossible to call most static methods, either because Clang did not recognize that a method could be called without providing a "this" parameter, or because Clang did not properly mangle the name of the method when searching for it in the target. Also added a testcase. llvm-svn: 136733
-
- Aug 02, 2011
-
-
Johnny Chen authored
I did not take the patch for ClangExpressionParser.cpp since there was a recent change by Peter for the same line. Feel free to disagree. :-) Reference: ---------------------------------------------------------------------- r136580 | pcc | 2011-07-30 15:42:24 -0700 (Sat, 30 Jul 2011) | 3 lines Add reloc arg to standard JIT createJIT() Fixes non-__APPLE__ build. Patch by Matt Johnson! ---------------------------------------------------------------------- Also, I ignore the part of the patch to remove the RegisterContextDarwin*.h/.cpp. llvm-svn: 136720
-
Greg Clayton authored
llvm-svn: 136713
-
Enrico Granata authored
Fixed a bug where a variable could not be formatted in a summary if its datatype already had a custom format Fixed a bug where Objective-C variables coming out of the expression parser could crash the Python synthetic providers: - expression parser output has a "frozen data" component, which is a byte-exact copy of the value (in host memory), if trying to read into memory based on the host address, LLDB would crash. we are now passing the correct (target) pointer to the Python code Objective-C "id" variables are now formatted according to their dynamic type, if the -d option to frame variable is used: - Code based on the Objective-C 2.0 runtime is used to obtain this information without running code on the target llvm-svn: 136695
-
Johnny Chen authored
llvm-svn: 136666
-
Johnny Chen authored
Stopwatch (self.swatch) within the BenchBase's setUp() instance method to be available to all the child classes. Use self.swatch to measure elapsed time in TestRepeatedExprs.py, which needs to be modified later on to actually measure repeated expression evaluations within the context of lldb as well as gdb. llvm-svn: 136664
-
- Aug 01, 2011
-
-
-
-
Johnny Chen authored
Modify the example TestRepeatedExprs.py to use BenchBase, instead. llvm-svn: 136649
-
Sean Callanan authored
caused functions that were cast as part of the call to have that cast ignored once their addresses were resolved. Notably, in the case of objc_msgSend(), if the function was cast from something returning i8* to something returning i8, the expression parser was discarding the cast as part of its resolution. This caused crashes later on. llvm-svn: 136648
-
Johnny Chen authored
llvm-svn: 136641
-
Johnny Chen authored
while its API clients remain unchanged. The new lldbtest.Base class is to capture common behaviors when working with the test driver to accomplish things. The clients of lldbtest.Base can be lldb command line and api tests as well as other generic tests like a benchmark test. llvm-svn: 136636
-
Johnny Chen authored
rdar://problem/9673664 llvm-svn: 136633
-
Sean Callanan authored
scratch AST context before attempting to parse. llvm-svn: 136631
-
Sean Callanan authored
treated as externals, causing problems when we tried to look their locations up in the debug info. For example: expr char c[] = "foo"; c[0] would terminate when trying to find c in the debug information, despite the fact that c was defined inside the expression. llvm-svn: 136629
-
Greg Clayton authored
llvm-svn: 136626
-
Greg Clayton authored
plug-in folder. llvm-svn: 136625
-
Sean Callanan authored
llvm-svn: 136622
-
Greg Clayton authored
llvm-svn: 136606
-
- Jul 31, 2011
-
-
Peter Collingbourne authored
Fixes non-__APPLE__ build. Patch by Matt Johnson! llvm-svn: 136580
-
Greg Clayton authored
work to be done. llvm-svn: 136579
-
Greg Clayton authored
llvm-svn: 136578
-
- Jul 30, 2011
-
-
Sean Callanan authored
completes the support in the LLDB expression parser for incomplete types. Clang now imports types lazily, and we complete those types as necessary. Changes include: - ClangASTSource now supports three APIs which it passes to ClangExpressionDeclMap. CompleteType completes a TagDecl or an ObjCInterfaceDecl when needed; FindExternalVisibleDecls finds named entities that are visible in the expression's scope; and FindExternalLexicalDecls performs a (potentially restricted) search for entities inside a lexical scope like a namespace. These changes mean that entities in namespaces should work normally. - The SymbolFileDWARF code for searching a context for a specific name is now more general, and can search arbitrary contexts. - We are continuing to adapt our calls into LLVM from interfaces that take start and end iterators when accepting multiple items to interfaces that use ArrayRef. - I have cleaned up some code, especially our use of namespaces. This change is neutral for our testsuite and greatly improves correctness for large programs (like Clang) with complicated type systems. It should also lay the groundwork for improving the expression parser's performance as we are lazier and lazier about providing type information. llvm-svn: 136555
-
Greg Clayton authored
we have a nil NSString *. Also added blank lines between functions in the CFString.py files. llvm-svn: 136554
-
Johnny Chen authored
The test driver now takes an option "+b" which enables to run just the benchmarks tests. By default, tests decorated with the @benchmarks_test decorator do not get run. Add an example benchmarks test directory which contains nothing for the time being, just to demonstrate the @benchmarks_test concept. For example, $ ./dotest.py -v benchmarks ... ---------------------------------------------------------------------- Collected 2 tests 1: test_with_gdb (TestRepeatedExprs.RepeatedExprssCase) Test repeated expressions with gdb. ... skipped 'benchmarks tests' 2: test_with_lldb (TestRepeatedExprs.RepeatedExprssCase) Test repeated expressions with lldb. ... skipped 'benchmarks tests' ---------------------------------------------------------------------- Ran 2 tests in 0.047s OK (skipped=2) $ ./dotest.py -v +b benchmarks ... ---------------------------------------------------------------------- Collected 2 tests 1: test_with_gdb (TestRepeatedExprs.RepeatedExprssCase) Test repeated expressions with gdb. ... running test_with_gdb benchmarks result for test_with_gdb ok 2: test_with_lldb (TestRepeatedExprs.RepeatedExprssCase) Test repeated expressions with lldb. ... running test_with_lldb benchmarks result for test_with_lldb ok ---------------------------------------------------------------------- Ran 2 tests in 0.270s OK Also mark some Python API tests which are missing the @python_api_test decorator. llvm-svn: 136553
-
Greg Clayton authored
llvm-svn: 136551
-
Enrico Granata authored
changes in the new GetMinimumLanguages() ; robustness improvements in the CFStringSynthProvider object ; made a CFString_SummaryProvider function you can use if all you care about is the summary string for your NSString objects llvm-svn: 136544
-
Greg Clayton authored
llvm-svn: 136536
-
Johnny Chen authored
to find out the tests which failed/errored and need re-running. The dotest.py test driver script is modified to allow specifying multiple -f testclass.testmethod in the command line to accommodate the redo functionality. An example, $ ./redo.py -n 2011-07-29-11_50_14 adding filterspec: TargetAPITestCase.test_find_global_variables_with_dwarf adding filterspec: DisasmAPITestCase.test_with_dsym Running ./dotest.py -v -f TargetAPITestCase.test_find_global_variables_with_dwarf -f DisasmAPITestCase.test_with_dsym ... ---------------------------------------------------------------------- Collected 2 tests 1: test_with_dsym (TestDisasmAPI.DisasmAPITestCase) Exercise getting SBAddress objects, disassembly, and SBAddress APIs. ... ok 2: test_find_global_variables_with_dwarf (TestTargetAPI.TargetAPITestCase) Exercise SBTarget.FindGlobalVariables() API. ... ok ---------------------------------------------------------------------- Ran 2 tests in 15.328s OK llvm-svn: 136533
-
Greg Clayton authored
llvm-svn: 136530
-
- Jul 29, 2011
-
-
Enrico Granata authored
llvm-svn: 136525
-
Enrico Granata authored
- Completely new implementation of SBType - Various enhancements in several other classes Python synthetic children providers for std::vector<T>, std::list<T> and std::map<K,V>: - these return the actual elements into the container as the children of the container - basic template name parsing that works (hopefully) on both Clang and GCC - find them in examples/synthetic and in the test suite in functionalities/data-formatter/data-formatter-python-synth New summary string token ${svar : - the syntax is just the same as in ${var but this new token lets you read the values coming from the synthetic children provider instead of the actual children - Python providers above provide a synthetic child len that returns the number of elements into the container Full bug fix for the issue in which getting byte size for a non-complete type would crash LLDB Several other fixes, including: - inverted the order of arguments in the ClangASTType constructor - EvaluationPoint now only returns SharedPointer's to Target and Process - the help text for several type subcommands now correctly indicates argument-less options as such llvm-svn: 136504
-
-
-
- Jul 28, 2011
-
-
Johnny Chen authored
by specifying your EXE make variable via your Makefile or within the Python test script. llvm-svn: 136394
-
Johnny Chen authored
rdar://problem/9691614. llvm-svn: 136386
-
rdar://problem/8668674Johnny Chen authored
Make the test criteria more stringent with respect to rdar://problem/8668674 to prevent accidental pass. llvm-svn: 136316
-
Enrico Granata authored
llvm-svn: 136293
-
Johnny Chen authored
self.expect("expression -- '(anonymous namespace)::i'", VARIABLES_DISPLAYED_CORRECTLY, substrs = [" = 3"]) to get rid of the '(anonymous namespace)', which is not c++ syntax, thingy fed to the expression parser. According to rdar://problem/8668674. It is still marked expectedFailure since the bug has not been fixed. llvm-svn: 136290
-
- Jul 27, 2011
-
-
Johnny Chen authored
Fix the bug and add a test case. llvm-svn: 136265
-