summaryrefslogtreecommitdiffstats
path: root/lldb/test/tools
Commit message (Collapse)AuthorAgeFilesLines
...
* Skip few MiStartupOptionsTestCase tests to get Linux build greenIlia K2015-05-071-0/+2
| | | | llvm-svn: 236708
* Implement -target-attach and -target-detachIlia K2015-05-073-0/+151
| | | | | | | | | | | | | | | | | | | | | Summary: This changes add -target-attach and -target-detach. -target-attach allows lldb-mi to attach to an existing process by it's process id, matching gdb mi's syntax of '-target-attach <pid'. Additionally, support has been added for attaching to a process by name using '-target-attach -n <name>'. Combining this with --waitfor will allow lldb mi to attach to a process by name when the process starts. -target-detach simply detaches from the current process Patch from chuckr@microsoft.com Test Plan: I have added three tests, one each for -target-attach <pid>, -target-attach -n <name>, and -target-attach -n <name> --waitfor Reviewers: paulmaybee, abidh, ChuckR Subscribers: greggm, lldb-commits Differential Revision: http://reviews.llvm.org/D9484 llvm-svn: 236705
* Minor changes in the MiStartupOptionsTestCase (MI)Ilia K2015-05-072-7/+7
| | | | llvm-svn: 236704
* Add -s/--source option support (MI)Ilia K2015-05-075-1/+115
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: This patch adds -s/--source option to execute source file with prepared command. For example: ``` $ cat start_script target create ~/p/hello process launch -s continue $ bin/lldb-mi -s start_script (gdb) target create ~/p/hello Current executable set to '~/p/hello' (x86_64). ^done (gdb) process launch -s =shlibs-added,shlib-info=[num="1",name="hello",dyld-addr="-",reason="dyld",path="/Users/IliaK/p/hello",loaded_addr="-",dsym-objpath="/Users/IliaK/p/hello.dSYM/Contents/Resources/DWARF/hello"] Process 33289 launched: '/Users/IliaK/p/hello' (x86_64) ^done (gdb) continue =thread-created,id="1",group-id="i1" =thread-selected,id="1" (gdb) Process 33289 resuming Process 33289 exited with status = 0 (0x00000000) ^done ``` Test Plan: ./dotest.py -v --executable $BUILDDIR/bin/lldb tools/lldb-mi/ Reviewers: abidh Reviewed By: abidh Subscribers: lldb-commits, abidh Differential Revision: http://reviews.llvm.org/D9278 llvm-svn: 236703
* Fix LLDB-MI -data-read-memory-bytes command to comply with GDB/MI specBruce Mitchener2015-05-072-3/+130
| | | | | | | | | | | | | | | | | | | | | | | Summary: - The address argument can now be an expression (e.g. &array), it's no longer restricted to being just a number literal. - The -o (offset) option is now properly handled, not just silently ignored. - The --thread option is now properly handled. - A new --frame option has been added for consistency with GDB. - Added a new test to verify old and new functionality. Patch by Vadim Macagon. Thanks! Test Plan: ./dotest.py -A x86_64 -C clang --executable $BUILDDIR/bin/lldb tools/lldb-mi/data Reviewers: domipheus, abidh, ki.stfu Reviewed By: abidh, ki.stfu Subscribers: brucem, lldb-commits Differential Revision: http://reviews.llvm.org/D9470 llvm-svn: 236694
* Fix adb forward in gdbremote_testcase to support multiple devices.Chaoren Lin2015-05-071-6/+12
| | | | | | | | | | | | | | Summary: Update to D9510. Reviewers: chying, tberghammer, ovyalov Reviewed By: ovyalov Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D9542 llvm-svn: 236688
* Skip additional lldb-mi tests that failed on FreeBSDEd Maste2015-05-061-0/+3
| | | | llvm-svn: 236636
* Update gdbremote_testcase to accomodate new adb:// scheme.Chaoren Lin2015-05-061-1/+2
| | | | | | | | | | | | Reviewers: chying, ovyalov Reviewed By: chying, ovyalov Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D9510 llvm-svn: 236560
* Fix typo. platfrom -> platformChaoren Lin2015-05-051-2/+2
| | | | llvm-svn: 236543
* Fix MiLibraryLoadedTestCase.test_lldbmi_library_loaded test on Linux (MI)Ilia K2015-04-301-2/+4
| | | | llvm-svn: 236229
* Use \d+ pattern instead of hard-coded line number in MiBreakTestCase (MI)Ilia K2015-04-301-5/+5
| | | | llvm-svn: 236228
* Rework =shlibs-added/=shlibs-removedIlia K2015-04-301-0/+33
| | | | | | | | | | | | | | | | | | | | | Summary: This patch includes the following: * Rename =shlibs-added/=shlibs-removed to standard =library-loaded/=library-unloaded * Remove redundant fields * Add extra symbols-loaded/symbols-path and loaded_addr fields * Rename CMICmnMIOutOfBandRecord::eOutOfBand_TargetModulesLoaded/eOutOfBand_TargetModulesUnloaded to CMICmnMIOutOfBandRecord::eOutOfBand_TargetModuleLoaded/eOutOfBand_TargetModuleUnloaded Test Plan: ./dotest.py -v --executable $BUILDDIR/bin/lldb tools/lldb-mi/ Reviewers: jasonmolenda, jingham, abidh Reviewed By: abidh Subscribers: lldb-commits, jingham, jasonmolenda, abidh Differential Revision: http://reviews.llvm.org/D9280 llvm-svn: 236225
* Add -data-info-line command (MI)Ilia K2015-04-302-1/+48
| | | | | | | | | | | | | | | | Summary: Add -data-info-line command + test Test Plan: ./dotest.py -v --executable $BUILDDIR/bin/lldb tools/lldb-mi/ Reviewers: abidh Reviewed By: abidh Subscribers: lldb-commits, abidh Differential Revision: http://reviews.llvm.org/D9276 llvm-svn: 236208
* Add support for -stack-list-variables.Hafiz Abid Qadeer2015-04-292-0/+188
| | | | | | | | This command is able to list both local variables and stack arguments for a specific thread/frame. Args are denoted with 'arg="1"'. Patch from Chuck Ries. llvm-svn: 236090
* [TestMiVar] Enable one of the tests for GCC.Siva Chandra2015-04-281-2/+2
| | | | | | | | | | | | | | | | | | Summary: The "internal" name of vars is different between clang and GCC. All this change does is to use a regex instead of the hardcoded internal name. Test Plan: dotest.py -C <clang|gcc> -p TestMiVar Reviewers: ki.stfu Reviewed By: ki.stfu Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D9128 llvm-svn: 236024
* Add language option in -gdb-show command (MI)Ilia K2015-04-281-0/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: Add language option in -gdb-show command + test: ``` $ bin/lldb-mi ~/p/hello [...] b main [...] r [...] (gdb) -gdb-show language ^done,value="c++" (gdb) quit ``` Test Plan: ./dotest.py -v --executable $BUILDDIR/bin/lldb tools/lldb-mi/ Reviewers: abidh, granata.enrico, jingham, clayborg Reviewed By: clayborg Subscribers: lldb-commits, jingham, granata.enrico, clayborg, abidh Differential Revision: http://reviews.llvm.org/D9279 llvm-svn: 235983
* LLDB-MI: -var-list-children with no children doesn't need a children value ↵Bruce Mitchener2015-04-281-4/+4
| | | | | | | | | | | | | | | | | | | | | | | in the response. Summary: When using GDB with MI, if there aren't children for a variable, it doesn't include a "children" value in the response. LLDB does and sets it to "[]" while variables with children have an unquoted list: children=[...]. This removes the children value entirely when there are no children making this match GDB in behavior. Test Plan: Ran tests on Mac OS X and they passed. Reviewers: abidh, domipheus Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D9320 llvm-svn: 235974
* XFAIL two mi tests on gcc to stabilise build botsPavel Labath2015-04-271-0/+2
| | | | llvm-svn: 235851
* Disable ↵Ilia K2015-04-251-0/+1
| | | | | | MiGdbSetShowTestCase.test_lldbmi_gdb_set_show_print_char_array_as_string test on Linux llvm-svn: 235808
* Add -gdb-set/-gdb-show aggregate-field-names option (MI)Ilia K2015-04-252-0/+69
| | | | | | | | | | | | | | | | | | Use this option to print/skip field names (default is on): ``` -var-create var1 * complx ^done,name="var1",numchild="3",value="{i = 3, inner = {l = 3}, complex_ptr = 0x[0-9a-f]+}",type="complex_type",thread-id="1",has_more="0" -var-create var2 * complx_array ^done,name="var2",numchild="2",value="{[0] = {i = 4, inner = {l = 4}, complex_ptr = 0x[0-9a-f]+}, [1] = {i = 5, inner = {l = 5}, complex_ptr = 0x[0-9a-f]+}}",type="complex_type [2]",thread-id="1",has_more="0" -gdb-set print aggregate-field-names off ^done -var-create var3 * complx ^done,name="var3",numchild="3",value="{3,{3},0x[0-9a-f]+}",type="complex_type",thread-id="1",has_more="0" -var-create var4 * complx_array ^done,name="var4",numchild="2",value="{{4,{4},0x[0-9a-f]+},{5,{5},0x[0-9a-f]+}}",type="complex_type [2]",thread-id="1",has_more="0" ``` llvm-svn: 235807
* Add -gdb-set/-gdb-show expand-aggregates option (MI)Ilia K2015-04-252-0/+65
| | | | | | | | | | | | | | | | | | Use this option to expand complex types always: ``` -var-create var1 * complx ^done,name="var1",numchild="3",value="{...}",type="complex_type",thread-id="1",has_more="0" -var-create var2 * complx_array ^done,name="var2",numchild="2",value="[2]",type="complex_type [2]",thread-id="1",has_more="0" -gdb-set print expand-aggregates on ^done -var-create var3 * complx ^done,name="var3",numchild="3",value="{i = 3, inner = {l = 3}, complex_ptr = 0x[0-9a-f]+}",type="complex_type",thread-id="1",has_more="0" -var-create var4 * complx_array ^done,name="var4",numchild="2",value="{[0] = {i = 4, inner = {l = 4}, complex_ptr = 0x[0-9a-f]+}, [1] = {i = 5, inner = {l = 5}, complex_ptr = 0x[0-9a-f]+}}",type="complex_type [2]",thread-id="1",has_more="0" ``` llvm-svn: 235805
* Add -gdb-set/-gdb-show print char-array-as-string option (MI)Ilia K2015-04-252-0/+79
| | | | llvm-svn: 235804
* Use self.fail() in MiGdbSetShowTestCase.test_lldbmi_gdb_set_target_async_off ↵Ilia K2015-04-241-2/+1
| | | | | | (MI) llvm-svn: 235712
* Fix CMICmnLLDBDebuggerHandleEvents::GetProcessStdout/GetProcessStderr to use ↵Ilia K2015-04-244-14/+14
| | | | | | stream-record (MI) llvm-svn: 235711
* MI fix allowing multiple logging instances of lldb-mi to run simultaneously.Ilia K2015-04-231-0/+73
| | | | | | | | | | | | | | | | | | | | Summary: Currently if two instances of lldb-mi are running with logging enabled using '--log' the log file conflicts. This produces the following error MI: Error: File Handler. Error Permission denied opening 'C:\Users\Ewan\LLVM\build\Debug\bin\lldb-mi-log.txt' Fixed in this patch by renaming lldb-mi-log.txt based on the date, e.g. lldb-mi-log.txt-20150316163631.log, and moving the file into the temp directory by using the --log-dir option. Regrading previous review comments the P_tmpdir macro is defined in Windows but always points to "\", which doesn't help much. Also when using the Windows API for GetTempPath() dynamic memory seems much more messy. Patch from ewan@codeplay.com Reviewers: abidh, EwanCrawford Subscribers: zturner, lldb-commits, deepak2427 Differential Revision: http://reviews.llvm.org/D9054 llvm-svn: 235589
* Skip additional lldb-mi tests that failed on FreeBSDEd Maste2015-04-222-0/+5
| | | | llvm-svn: 235510
* XFAIL tests that are failed on linux with gcc-4.9.2Ying Chen2015-04-211-0/+5
| | | | | | | | | | | | | | | | | | | Summary: - add decorator functions to xfail and skip test on specific os, architecture and version of comipler - xfail failing test with gcc-4.9.2 on linux - add one usage of skipIf function Test Plan: Run tests with different archs, and version of compilers to verify decorator function working as expected Run tests with gcc-4.9.2 and no failure reported Reviewers: sivachandra, ovyalov, vharron, chaoren Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D8851 llvm-svn: 235368
* TestMiBreak - func isn't always ??.Chaoren Lin2015-04-171-1/+1
| | | | | | | | | | | | Summary: Caused a failure because it showed up as `__printf`. Reviewers: ki.stfu Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D9060 llvm-svn: 235214
* Fix the MiVarTestCase.test_lldbmi_var_create_register test to expect 32bit ↵Ilia K2015-04-171-1/+2
| | | | | | value on 32bit systems llvm-svn: 235204
* Fix the MiVarTestCase.test_lldbmi_var_create_register test on 32bit systemsIlia K2015-04-171-1/+4
| | | | llvm-svn: 235197
* MI support for '-var-create $regname' command.Ilia K2015-04-171-0/+36
| | | | | | | | | | | | | | | | | | Summary: This command is currently processed using expression evaluation, meaning the variable binds to the result of the expression not the register. Therefore any subsequent calls to '-var-assign' will not update the register. Fixed by detecting '$' prefix for registers according to specification. Thanks, Ewan Patch from ewan@codeplay.com Reviewers: EwanCrawford Subscribers: lldb-commits, deepak2427 Differential Revision: http://reviews.llvm.org/D8965 llvm-svn: 235195
* Use lazy regex in lldb-mi testsIlia K2015-04-1711-71/+72
| | | | | | This patch also fixes the timing issue in MiBreakTestCase.test_lldbmi_break_insert_function test. llvm-svn: 235189
* XFAIL a test in TestGdbRemoteRegisterState.py on linux to stabilize build botPavel Labath2015-04-161-0/+1
| | | | llvm-svn: 235100
* XFAILing TestGdbRemoteAttach to stabilise linux build botPavel Labath2015-04-161-61/+1
| | | | | | | also, deleting what appears to be a concatenation of a file with itself (How that compiled in the first place?). llvm-svn: 235093
* [TestMiBreak] Print a formatted string via printf in the test case.Siva Chandra2015-04-152-4/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | Summary: If the string is not formatted, these can happen when compiled with GCC: 1. If it is a null string "", then GCC completely removes the call to printf even with -O0. 2. If the string is a single character string, say "\n" for example, then GCC replaces the call to printf with a call to putchar. 3. If the string length is greater than 1, but is not formatted, then GCC replaces the call to printf with a call to puts. All the above will fail the test as we want a breakpoint on "printf" to hit. Test Plan: dotest.py -C gcc -p TestMiBreak Reviewers: chying, ki.stfu Reviewed By: ki.stfu Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D9025 llvm-svn: 235034
* Improve MiBreakTestCase tests to expect =breakpoint-modified event after r234483Ilia K2015-04-151-3/+22
| | | | llvm-svn: 235016
* Bug 23051 - Fix zombie processes after lldb-server testsIlia K2015-04-156-8/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: This patch fixes the following bug: https://llvm.org/bugs/show_bug.cgi?id=23181 For some reason some lldb-server tests should be kicked using SIGHUP and SIGINT before termination, otherwise it will leave a zombie process. I think the reason is that the lldb-server will terminate a slave process if it gets the SIGHUP/SIGINT and if so it should be fixed in lldb-server. The solution is to terminate process like it does the pexpect (including the delayafterterminate interval). Also this patch reverts the following commits: * r234549 - Skip lldb-server tests according to bug 23181 * r234765 - Skip a few tests on OS X according to the bug 23181 * r234803 - Skip the TestGdbRemoteRegisterState.test_grp_register_save_restore_works_no_suffix_debugserver_dsym test on OS X according to the bug 23181 Test Plan: ``` $ ps | grep Z | grep a.out | wc -l 447 $ ./dosep.py --options "-v --executable $INSTALLDIR/bin/lldb" [...] $ ps | grep Z | grep a.out | wc -l 447 ``` Reviewers: jasonmolenda, clayborg, tberghammer Reviewed By: clayborg Subscribers: lldb-commits, dawn, tberghammer, clayborg, jasonmolenda Differential Revision: http://reviews.llvm.org/D9019 llvm-svn: 235008
* Add teardown hook to shutdown an inferior processIlia K2015-04-151-2/+9
| | | | | | | | | | | | | | Summary: Add teardown hook to shutdown an inferior process Reviewers: jasonmolenda, clayborg, tberghammer Reviewed By: clayborg, tberghammer Subscribers: lldb-commits, tberghammer, clayborg, jasonmolenda Differential Revision: http://reviews.llvm.org/D9018 llvm-svn: 235005
* Skip TestMiVar test case to get build greenPavel Labath2015-04-151-0/+1
| | | | | | bug report at <https://llvm.org/bugs/show_bug.cgi?id=23239>. llvm-svn: 235002
* Skip reverse connect test when running remotelyVince Harron2015-04-151-0/+1
| | | | | | | This use case is not supported and may be removed in the future if not needed llvm-svn: 234994
* Fix handling of the executable arg which contains spaces (MI)Ilia K2015-04-141-5/+5
| | | | | | | | | | | | | | * Don't use the CMICmdArgValFile::GetFileNamePath for the CMIDriver::m_strCmdLineArgExecuteableFileNamePath because it wraps path with spaces into quotes what is already being done in CMIDriver::LocalDebugSessionStartupExecuteCommands * Improve the MiSyntaxTestCase.test_lldbmi_specialchars test to catch this error ``` $ bin/lldb-mi "~/p/ hello" (gdb) -file-exec-and-symbols "\"~/p/ hello\"" ^error,msg="Command 'file-exec-and-symbols'. Target binary '\"~/p/ hello\"' is invalid. error: unable to find executable for '/"~/p/ hello/"'" ``` llvm-svn: 234888
* Simplify some lldb-mi tests by using the Base.addTearDownHook()Ilia K2015-04-142-57/+43
| | | | llvm-svn: 234885
* Skip the ↵Ilia K2015-04-131-0/+1
| | | | | | TestGdbRemoteRegisterState.test_grp_register_save_restore_works_no_suffix_debugserver_dsym test on OS X according to the bug 23181 llvm-svn: 234803
* Skip a few tests on OS X according to the bug 23181Ilia K2015-04-131-0/+1
| | | | llvm-svn: 234765
* Skip lldb-server tests according to bug 23181Ilia K2015-04-105-0/+6
| | | | llvm-svn: 234549
* Refactor ↵Ilia K2015-04-092-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CMICmnLLDBDebuggerHandleEvents/CMICmnLLDBDebugSessionInfo/CMICmnLLDBDebugSessionInfoVarObj (MI) Summary: This patch includes the following changes: # Refactor GetVariableInfo/GetValueStringFormatted/GetValue to use the same code (MI) Also it expands the variable value format for strings (aka char*): was: ``` ^done,name="v4",numchild="1",value="0x0000000100000f56",type="const char *",thread-id="1",has_more="0" ``` now: ``` ^done,name="v4",numchild="1",value="0x0000000100000f56 \"ab\"",type="const char *",thread-id="1",has_more="0" ``` # Expand the variable value format for arrays (according to GDB) For example: was: ``` ^done,name="v3",numchild="2",value="{...}",type="char [2]",thread-id="1",has_more="0" ``` now: ``` ^done,name="v3",numchild="2",value="[2]",type="char [2]",thread-id="1",has_more="0" ``` # Rename MiGdbSetShowTestCase.test_lldbmi_gdb_show_process_stopatentry_default to test_lldbmi_gdb_show_process_stopatentry (MI) # Fix a comment in MiGdbSetShowTestCase.test_lldbmi_gdb_show_process_stopatentry (MI) # Refactor CMICmnLLDBUtilSBValue ## Add CMICmnLLDBUtilSBValue::IsPointerType/IsArrayType ## Refactor CMICmnLLDBUtilSBValue::GetValue ## Fix CMICmnLLDBUtilSBValue::IsChildCharType to ignore a number of childs ## Rename CMICmnLLDBUtilSBValue::IsChildCharType to IsFirstChildCharType ## Fix CMICmnLLDBUtilSBValue::GetValueCString to accept char[] # Minor changes in CMICmnLLDBUtilSBValue::GetValue # Refactor CMICmnLLDBDebugSessionInfo::MIResponseFormVariableInfo family functions (MI) # Refactor CMICmnLLDBDebugSessionInfo::MIResponseFormFrameInfo family functions (MI) ## Remove CMICmnLLDBDebugSessionInfo::MIResponseFormFrameInfo2 ## Improve CMICmnLLDBDebugSessionInfo::MIResponseFormFrameInfo to accept args # Refactor CMICmnLLDBDebugSessionInfo::MIResponseFormFrameInfo family functions (MI) ## Add vArgInfo arg to CMICmnLLDBDebugSessionInfo::MIResponseFormFrameInfo ## Move CMICmnLLDBDebugSessionInfo::GetFrameInfo/MIResponseFormFrameInfo to private namespace # Refactor CMICmnLLDBDebugSessionInfo::GetThreadFrames family functions (MI) ## Remove CMICmnLLDBDebugSessionInfo::GetThreadFrames2 ## Improve CMICmnLLDBDebugSessionInfo::GetThreadFrames to accept vnMaxDepth # Fix vnMaxDepth arg name in CMICmnLLDBDebugSessionInfo::MIResponseFormVariableInfo (MI) # Refactor CMICmnLLDBDebugSessionInfo::MIResponseFormFrameInfo family functions (MI) ## Merge CMICmnLLDBDebugSessionInfo::MIResponseFormFrameInfo functions into one # Don't modify fnName in CMICmnLLDBDebugSessionInfo::GetThreadFrames (MI) # Refactor CMICmnLLDBDebugSessionInfo::MIResponseFormThreadInfo family functions (MI) ## Remove CMICmnLLDBDebugSessionInfo::MIResponseFormThreadInfo3 ## Improve -CMICmnLLDBDebugSessionInfo::MIResponseFormThreadInfo to accept vnMaxDepth # Refactor CMICmnLLDBDebugSessionInfo::MIResponseFormThreadInfo family functions (MI) ## Remove CMICmnLLDBDebugSessionInfo::MIResponseFormThreadInfo2 ## Add CMICmnLLDBDebugSessionInfo::ThreadInfoFormat_e enum to specify thread format ## Improve CMICmnLLDBDebugSessionInfo::MIResponseFormThreadInfo to accept veThreadInfoFormat ## Remove vnMaxDepth arg in CMICmnLLDBDebugSessionInfo::MIResponseFormThreadInfo (not needed because veThreadInfoFormat was added) # Move CMICmnLLDBDebugSessionInfo::GetThreadFrames to private namespace (MI) # Refactor CMICmnLLDBDebugSessionInfo::MIResponseFormFrameInfo (MI) ## Add CMICmnLLDBDebugSessionInfo::FrameInfoFormat_e enum to specify frame format ## Improve CMICmnLLDBDebugSessionInfo::MIResponseFormFrameInfo to accept veFrameInfoFormat ## Remove vnMaxDepth arg in CMICmnLLDBDebugSessionInfo::MIResponseFormFrameInfo (not needed because veFrameInfoFormat was added) # Remove duplicated level field in CMICmnLLDBDebugSessionInfo::GetThreadFrames (MI) # Refactor CMICmnLLDBUtilSBValue::GetValue (MI) ## Add CMICmnLLDBUtilSBValue::GetSimpleValue ## Use CMICmnLLDBUtilSBValue::GetSimpleValue in GetVlaue # Fix CMICmnLLDBDebugSessionInfo::GetThreadFrames (MI) ## Add CMICmnLLDBDebugSessionInfo::FrameInfoFormat_e::eFrameInfoFormat_AllArgumentsInSimpleForm which is used to get stack-args in simple form (i.e. show {...} for composite types). It can be done by calling MIResponseFormVariableInfo with vnMaxDepth=0. ## Improve CMICmnLLDBDebugSessionInfo::GetThreadFrames to accept veFrameInfoFormat ## Remove vnMaxDepth from CMICmnLLDBDebugSessionInfo::GetThreadFrames (we should use veFrameInfoFormat instead) # Refactor CMICmnLLDBUtilSBValue::GetValue to expand composite types (MI) ## Add CMICmnLLDBUtilSBValue::GetCompositeValue to expand composite types ## Add CMICmnLLDBUtilSBValue::m_pComposite to avoid multiple {...} in the code ## Improve CMICmnLLDBUtilSBValue::GetValue to accept vbExpandAggregates option (default=false) ## Clean up CMICmnLLDBDebugSessionInfo::GetVariableInfo to use CMICmnLLDBUtilSBValue::GetValue ## Remove the wrapping into {} in CMICmnLLDBDebugSessionInfo::MIResponseFormVariableInfo ## Fix MiStackTestCase.test_lldbmi_stack_list_locals test to expect result without superfluous space ' ' around the '{' or '}' brackets: was: ``` {name=\"var_c\",value=\"{var_a = 10,var_b = 97 'a',inner_ = { var_d = 30 }} ``` now: ``` {name=\"var_c\",value=\"{var_a = 10,var_b = 97 'a',inner_ = {var_d = 30}} ``` ## Fix vwrValue arg name in CMICmnLLDBUtilSBValue::GetSimpleValue (was vrValue) # Refactor CMICmnLLDBDebugSessionInfo::GetVariableInfo (MI) ## Remove vnMaxDepth/vbIsChildValue/vnDepth args in CMICmnLLDBDebugSessionInfo::GetVariableInfo ## Improve CMICmnLLDBDebugSessionInfo::GetVariableInfo to accept vwrStrValue ## Remove vwrMiValueList arg in CMICmnLLDBDebugSessionInfo::GetVariableInfo (we should use vwrStrValue instead) ## Fix CMICmnLLDBDebugSessionInfo::MIResponseFormVariableInfo to Escape values was: ``` {name="p",value="0x0000000000000000 """} ``` now: ``` {name="p",value="0x0000000000000000 \"\""} ``` # Refactor CMICmnLLDBUtilSBValue ## Improve CMICmnLLDBUtilSBValue::GetValue to handle PrintExpandAggregates ## Improve CMICmnLLDBUtilSBValue::GetSimpleValue to handle vbHandleArrayType (use it to specify that array should be represented as simple type, i.e. value="[2]") # Add spacing between fields in CMICmnLLDBUtilSBValue::GetCompositeValue (MI) For example: was: ``` ^done,name="var3",numchild="3",value="{i = 3,inner = {l = 3},complex_ptr = 0x00007fff5fbff848}",type="complex_type",thread-id="1",has_more="0" ``` now: ``` ^done,name="var3",numchild="3",value="{i = 3, inner = {l = 3}, complex_ptr = 0x00007fff5fbff848}",type="complex_type",thread-id="1",has_more="0" ``` # Fix spacing in MiStackTestCase.test_lldbmi_stack_list_locals test (MI) Test Plan: ./dotest.py -v --executable $BUILDDIR/bin/lldb tools/lldb-mi/ Reviewers: abidh Subscribers: lldb-commits, abidh Differential Revision: http://reviews.llvm.org/D8913 llvm-svn: 234476
* implement gdb-set output-radixIlia K2015-04-072-1/+51
| | | | | | | | | | | | | | Summary: Patch from chuckr@microsoft.com Reviewers: abidh, ChuckR Reviewed By: abidh Subscribers: paulmaybee, ki.stfu, greggm, scarroll, lldb-commits Differential Revision: http://reviews.llvm.org/D8430 llvm-svn: 234305
* Ignore IOError from missing child.log.Chaoren Lin2015-04-061-1/+4
| | | | | | | | | | | | | | | | | | | Summary: TestMiCliSupport (among other TestMi*) fails on Linux with ``` IOError: [Errno 2] No such file or directory: 'child.log' ``` Reviewers: clayborg, ki.stfu Reviewed By: ki.stfu Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D8843 llvm-svn: 234191
* Replace sys.platform skips in tests with @skip decorators which check ↵Robert Flack2015-03-304-8/+8
| | | | | | | | | | | | | | | | against remote platform. Adds @skipIfPlatform and @skipUnlessPlatform decorators which will skip if / unless the target platform is in the provided platform list. Test Plan: ninja check-lldb shows no regressions. When running cross platform, tests which cannot run on the target platform are skipped. Differential Revision: http://reviews.llvm.org/D8665 llvm-svn: 233547
* Fix TestGdbRemote* on remote linuxTamas Berghammer2015-03-301-20/+33
| | | | | | Differential revision: http://reviews.llvm.org/D8454 llvm-svn: 233531
OpenPOWER on IntegriCloud