- Sep 16, 2011
-
-
Johnny Chen authored
llvm-svn: 139863
-
- Sep 15, 2011
-
-
Johnny Chen authored
llvm-svn: 139857
-
Johnny Chen authored
llvm-svn: 139855
-
Johnny Chen authored
llvm-svn: 139847
-
Johnny Chen authored
llvm-svn: 139802
-
- Sep 09, 2011
-
-
Enrico Granata authored
--show-aliases (-a) shows aliases for commands, as well as built-in commands --hide-user-defined (-u) hides user defined commands by default 'help' without arguments does not show aliases anymore. to see them, add --show-aliases to have only built-in commands appear, use 'help --hide-user-defined' ; there is currently no way to hide built-in commands from the help output 'help command' is not changed by this commit, and help is shown even if command is an alias and -a is not specified llvm-svn: 139377
-
Jim Ingham authored
Move the SourceManager from the Debugger to the Target. That way it can store the per-Target default Source File & Line. Set the default Source File & line to main (if it can be found.) at startup. Selecting the current thread & or frame resets the current source file & line, and "source list" as well as the breakpoint command "break set -l <NUM>" will use the current source file. llvm-svn: 139323
-
- Sep 06, 2011
-
-
Johnny Chen authored
llvm-svn: 139174
-
Enrico Granata authored
- introduced two new classes ValueObjectConstResultChild and ValueObjectConstResultImpl: the first one is a ValueObjectChild obtained from a ValueObjectConstResult, the second is a common implementation backend for VOCR and VOCRCh of method calls meant to read through pointers stored in frozen objects ; now such reads transparently move from host to target as required - as a consequence of the above, removed code that made target-memory copies of expression results in several places throughout LLDB, and also removed code that enabled to recognize an expression result VO as such - introduced a new GetPointeeData() method in ValueObject that lets you read a given amount of objects of type T from a VO representing a T* or T[], and doing dereferences transparently in private layer it returns a DataExtractor ; in public layer it returns an instance of a newly created lldb::SBData - as GetPointeeData() does the right thing for both frozen and non-frozen ValueObject's, reimplemented ReadPointedString() to use it en lieu of doing the raw read itself - introduced a new GetData() method in ValueObject that lets you get a copy of the data that backs the ValueObject (for pointers, this returns the address without any previous dereferencing steps ; for arrays it actually reads the whole chunk of memory) in public layer this returns an SBData, just like GetPointeeData() - introduced a new CreateValueFromData() method in SBValue that lets you create a new SBValue from a chunk of data wrapped in an SBData the limitation to remember for this kind of SBValue is that they have no address: extracting the address-of for these objects (with any of GetAddress(), GetLoadAddress() and AddressOf()) will return invalid values - added several tests to check that "p"-ing objects (STL classes, char* and char[]) will do the right thing Solved a bug where global pointers to global variables were not dereferenced correctly for display New target setting "max-string-summary-length" gives the maximum number of characters to show in a string when summarizing it, instead of the hardcoded 128 Solved a bug where the summary for char[] and char* would not be shown if the ValueObject's were dumped via the "p" command Removed m_pointers_point_to_load_addrs from ValueObject. Introduced a new m_address_type_of_children, which each ValueObject can set to tell the address type of any pointers and/or references it creates. In the current codebase, this is load address most of the time (the only notable exception being file addresses that generate file address children UNLESS we have a live process) Updated help text for summary-string Fixed an issue in STL formatters where std::stlcontainer::iterator would match the container's synthetic children providers Edited the syntax and help for some commands to have proper argument types llvm-svn: 139160
-
- Aug 27, 2011
-
-
Johnny Chen authored
Update the test case in light of recent change of LLDB-Info.plist to track Apple Generic Version number from the Xcode project file. llvm-svn: 138677
-
- Aug 26, 2011
-
-
Johnny Chen authored
built locally from the source tree. This is distinguished from self.lldbExec, which can be used by test/benchmarks to measure the performances against other debuggers. You can use environment variable LLDB_EXEC to specify self.lldbExec to the dotest.py test driver, otherwise it is going to be populated with self.lldbHere. Modify the regular tests under test dir, i.e., not test/benchmarks, to use self.lldbHere. Also modify the benchmarks tests to use self.lldbHere when it needs an 'lldb' executable with debug info to do the performance measurements. llvm-svn: 138608
-
- Aug 25, 2011
-
-
Johnny Chen authored
Modify the loggings output oracle to fix test suite failure, after the recent change to CommandInterpreter.cpp. llvm-svn: 138590
-
Johnny Chen authored
Fix a compie warning for main.cpp. llvm-svn: 138503
-
- Aug 24, 2011
-
-
Johnny Chen authored
llvm-svn: 138466
-
Johnny Chen authored
llvm-svn: 138465
-
Johnny Chen authored
llvm-svn: 138458
-
Johnny Chen authored
llvm-svn: 138454
-
Johnny Chen authored
llvm-svn: 138452
-
Enrico Granata authored
Moved the test code for Python commands out of the test case for aliases, into its own dedicated test case (one fill was still lurking in the old folder) llvm-svn: 138446
-
Enrico Granata authored
Moved the test code for Python commands out of the test case for aliases, into its own dedicated test case llvm-svn: 138444
-
Johnny Chen authored
./dotest.py -v -f DataFormatterTestCase.test_with_dsym_and_run_command will not end up running 14 tests. llvm-svn: 138399
-
Johnny Chen authored
Skip these two cases temporarily while investigating the crash on OSX Lion with clang as the compiler. llvm-svn: 138393
-
- Aug 23, 2011
-
-
Johnny Chen authored
llvm-svn: 138391
-
Enrico Granata authored
Renamed format "signed decimal" to be "decimal". "unsigned decimal" remains unchanged: - the name "signed decimal" was interfering with symbol %S (use summary) in summary strings. because of the way summary strings are implemented, this did not really lead to a bug, but simply to performing more steps than necessary to display a summary. this is fixed. Documentation improvements (more on synthetic children, some information on filters). This is still a WIP. llvm-svn: 138384
-
Sean Callanan authored
expression parser. You can use a persistent type like this: (lldb) expr struct $foo { int a; int b; }; (lldb) struct $foo i; i.a = 2; i.b = 3; i ($foo) $0 = { (int) a = 2 (int) b = 3 } typedefs work similarly. This patch affects the following files: test/expression_command/persistent_types/* A test case for persistent types, in particular structs and typedefs. ClangForward.h Added TypeDecl, needed to declare some functions in ASTResultSynthesizer.h ClangPersistentVariables.[h,cpp] Added a list of persistent types to the persistent variable store. ASTResultSynthesizer.[h,cpp] Made the AST result synthesizer iterate across TypeDecls in the expression, and record any persistent types found. Also made a minor documentation fix. ClangUserExpression.[h,cpp] Extended the user expression class to keep the state needed to report the persistent variable store for the target to the AST result synthesizers. Also introduced a new error code for expressions that executed normally but did not return a result. CommandObjectExpression.cpp Improved output for expressions (like declarations of new persistent types) that don't return a result. This is no longer treated as an error. llvm-svn: 138383
-
Enrico Granata authored
Short option for --summary-string in 'type summary add' is now -s. This might be a breaking change for those who have summaries defined. llvm-svn: 138331
-
Johnny Chen authored
llvm-svn: 138316
-
Enrico Granata authored
Additional code cleanups ; Short option name for --python-script in type summary add moved from -s to -o (this is a preliminary step in moving the short option for --summary-string from -f to -s) ; Accordingly updated the test suite llvm-svn: 138315
-
Sean Callanan authored
rolled back, and the testcase that the rollback broke. The new LLVM has a new ARM disassembler, which may cause instability. Keeping the old one would force us into a contorted position vis-a-vis the LLVM sources we bring in, so we will address issues on the new one rather than keeping the old one around. llvm-svn: 138284
-
Johnny Chen authored
Add a simple test case for that. llvm-svn: 138281
-
- Aug 22, 2011
-
-
Johnny Chen authored
llvm-svn: 138247
-
Enrico Granata authored
If you have a Python module foo, in order to use its contained objects in LLDB you do not need to use 'from foo import *'. You can use 'import foo', and then refer to items in foo as 'foo.bar', and LLDB will know how to resolve bar as a member of foo. Accordingly, GNU libstdc++ formatters have been moved from the global namespace to gnu_libstdcpp and a few test cases are also updated to reflect the new convention. Python docs suggest using a plain 'import' en lieu of 'from-import'. llvm-svn: 138244
-
- Aug 19, 2011
-
-
Enrico Granata authored
Taking care of an issue with using lldb_private types in SBCommandInterpreter.cpp ; Making NSString test case work on Snow Leopard ; Removing an unused variable warning llvm-svn: 138105
-
Enrico Granata authored
- Now using ${var} as the summary for an aggregate type will produce "name-of-type @ object-location" instead of giving an error e.g. you may get "foo_class @ 0x123456" when typing "type summary add -f ${var} foo_class" - Added a new special formatting token %T for summaries. This shows the type of the object. Using it, the new "type @ location" summary could be manually generated by writing ${var%T} @ ${var%L} - Bits and pieces required to support "frame variable array[n-m]" The feature is not enabled yet because some additional design and support code is required, but the basics are getting there - Fixed a potential issue where a ValueObjectSyntheticFilter was not holding on to its SyntheticChildrenSP Because of the way VOSF are being built now, this has never been an actual issue, but it is still sensible for a VOSF to hold on to the SyntheticChildrenSP as well as to its FrontEnd llvm-svn: 138080
-
Sean Callanan authored
revision and adding a patch that fixes an AsmParser crash on ARM. One feature that we unfortunately lost (for the moment!) is the ability to cast unknown code symbols to arbitrary function types and put the resulting function pointer in a result variable. This feature will be back, though. llvm-svn: 138036
-
Enrico Granata authored
llvm-svn: 138026
-
Johnny Chen authored
the exception to get more stack trace information. llvm-svn: 138021
-
Enrico Granata authored
- reorganizing the PTS (Partial Template Specializations) in FormatManager.h - applied a patch by Filipe Cabecinhas to make LLDB compile with GCC Functional changes: - fixed an issue where command type summary add for type "struct Foo" would not match any types. currently, "struct" will be stripped off and type "Foo" will be matched. similar behavior occurs for class, enum and union specifiers. llvm-svn: 138020
-
Johnny Chen authored
Add a decorator for marking clang only expectedFailure. Use it for the test_step_over_3_times_with_dsym/dwarf() test cases in TestThreadAPI.py by decorating it with @expectedFailureClang. Example: @expectedFailureClang @python_api_test def test_step_over_3_times_with_dwarf(self): """Test Python SBThread.StepOver() API.""" # We build a different executable than the default buildDwarf() does. d = {'CXX_SOURCES': 'main2.cpp', 'EXE': self.exe_name} self.buildDwarf(dictionary=d) self.setTearDownCleanup(dictionary=d) self.step_over_3_times(self.exe_name) llvm-svn: 138019
-
Johnny Chen authored
llvm-svn: 138013
-