[Lldb-commits] [lldb] r259028 - fixed Xcode gtest build failure
Author: tfiala Date: Thu Jan 28 02:16:18 2016 New Revision: 259028 URL: http://llvm.org/viewvc/llvm-project?rev=259028&view=rev Log: fixed Xcode gtest build failure Modified: lldb/trunk/lldb.xcodeproj/project.pbxproj Modified: lldb/trunk/lldb.xcodeproj/project.pbxproj URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/lldb.xcodeproj/project.pbxproj?rev=259028&r1=259027&r2=259028&view=diff == --- lldb/trunk/lldb.xcodeproj/project.pbxproj (original) +++ lldb/trunk/lldb.xcodeproj/project.pbxproj Thu Jan 28 02:16:18 2016 @@ -7490,7 +7490,7 @@ "$(SYSTEM_LIBRARY_DIR)/Frameworks/CoreServices.framework/Frameworks", ); LLDB_GTESTS_CFLAGS = "-I $(LLVM_SOURCE_DIR)/utils/unittest/googletest/include -I $(LLVM_SOURCE_DIR)/include -I $(LLVM_BUILD_DIR)/x86_64/include -I include -I source -I $(PYTHON_FRAMEWORK_PATH)/Headers"; - LLDB_GTESTS_LDFLAGS = "$(LLVM_BUILD_DIR)/x86_64/$(LLVM_CONFIGURATION)/lib/libgtest.a -L $(PYTHON_FRAMEWORK_PATH)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/lib -l python$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)"; + LLDB_GTESTS_LDFLAGS = "$(LLVM_BUILD_DIR)/x86_64/lib/libgtest.a -L $(PYTHON_FRAMEWORK_PATH)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/lib -l python$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)"; OTHER_CFLAGS = ( "-flimit-debug-info", "-Wparentheses", @@ -7527,7 +7527,7 @@ "$(SYSTEM_LIBRARY_DIR)/Frameworks/CoreServices.framework/Frameworks", ); LLDB_GTESTS_CFLAGS = "-I $(LLVM_SOURCE_DIR)/utils/unittest/googletest/include -I $(LLVM_SOURCE_DIR)/include -I $(LLVM_BUILD_DIR)/x86_64/include -I include -I source -I $(PYTHON_FRAMEWORK_PATH)/Headers"; - LLDB_GTESTS_LDFLAGS = "$(LLVM_BUILD_DIR)/x86_64/$(LLVM_CONFIGURATION)/lib/libgtest.a -L $(PYTHON_FRAMEWORK_PATH)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/lib -l python$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)"; + LLDB_GTESTS_LDFLAGS = "$(LLVM_BUILD_DIR)/x86_64/lib/libgtest.a -L $(PYTHON_FRAMEWORK_PATH)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/lib -l python$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)"; OTHER_CFLAGS = ( "-flimit-debug-info", "-Wparentheses", @@ -7564,7 +7564,7 @@ "$(SYSTEM_LIBRARY_DIR)/Frameworks/CoreServices.framework/Frameworks", ); LLDB_GTESTS_CFLAGS = "-I $(LLVM_SOURCE_DIR)/utils/unittest/googletest/include -I $(LLVM_SOURCE_DIR)/include -I $(LLVM_BUILD_DIR)/x86_64/include -I include -I source -I $(PYTHON_FRAMEWORK_PATH)/Headers"; - LLDB_GTESTS_LDFLAGS = "$(LLVM_BUILD_DIR)/x86_64/$(LLVM_CONFIGURATION)/lib/libgtest.a -L $(PYTHON_FRAMEWORK_PATH)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/lib -l python$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)"; + LLDB_GTESTS_LDFLAGS = "$(LLVM_BUILD_DIR)/x86_64/lib/libgtest.a -L $(PYTHON_FRAMEWORK_PATH)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/lib -l python$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)"; OTHER_CFLAGS = ( "-flimit-debug-info", "-Wparentheses", @@ -7601,7 +7601,7 @@ "$(SYSTEM_LIBRARY_DIR)/Frameworks/CoreServices.framework/Frameworks", ); LLDB_GTESTS_CFLAGS = "-I $(LLVM_SOURCE_DIR)/utils/unittest/googletest/include -I $(LLVM_SOURCE_DIR)/include -I $(LLVM_BUILD_DIR)/x86_64/include -I include -I source -I $(PYTHON_FRAMEWORK_PATH)/Headers"; - LLDB_GTESTS_LDFLAGS = "$(LLVM_BUILD_DIR)/x86_64/$(LLVM_CONFIGURATION)/lib/libgtest.a -L $(PYTHON_FRAMEWORK_PATH)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/lib -l python$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)"; + LLDB_GTESTS_LDFLAGS = "$(LLVM_BUILD_DIR)/x86_64/lib/libgtest.a -L $(PYTHON_FRAMEWORK_PATH)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/lib -l python$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)"; OTHER_CFLAGS = ( "-flimit-debug-info", "-Wparentheses", _
Re: [Lldb-commits] [PATCH] D16107: Fix for Bug 25338
ravitheja added a comment. Hello @ldrumm, I did investigate the issue and my finding is that incorrect values are being passed to the SetDataWithReadMemoryFallback function. Now I suspect the ElfSectionHeader is wrongly parsed in your case and the size and offsets obtained are wrong. To talk briefly about r258122, it just tries to allocate enough memory for Elf files being loaded by lldb and earlier it would not have read the Elf file so you wouldnt have seen this issue because it would have just returned. Could you maybe check the ElfSectionHeader::Parse function, and see the values it obtains for this elf (mainly the sh_offset and sh_size fields), maybe print them in logs ? I currently don't have an Android x86_64 environment. http://reviews.llvm.org/D16107 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [PATCH] D16678: Fix linking of lldb-server with BUILD_SHARED_LIBS
labath created this revision. labath added reviewers: zturner, tfiala. labath added a subscriber: lldb-commits. The BUILD_SHARED_LIBS branch of lldb-server link flags was hopelessly broken, at least since we started restricting the symbols exported by liblldb. lldb-server depends on symbols from the lldb_private namespace, so it cannot link to the public interface of liblldb. Instead I make it link to the individual libraries constituting liblldb, just like it does in the !BUILD_SHARED_LIBS case. This does not make the BUILD_SHARED_LIBS build of lldb fully functional yet, due to the way liblldb dependencies are managed, but it's a step in that direction. http://reviews.llvm.org/D16678 Files: tools/lldb-server/CMakeLists.txt Index: tools/lldb-server/CMakeLists.txt === --- tools/lldb-server/CMakeLists.txt +++ tools/lldb-server/CMakeLists.txt @@ -33,24 +33,19 @@ LLDBServerUtilities.cpp ) -if (BUILD_SHARED_LIBS ) - target_link_libraries(lldb-server liblldb) - target_link_libraries(lldb-server ${LLDB_SYSTEM_LIBS}) +# The Darwin linker doesn't understand --start-group/--end-group. +if (LLDB_LINKER_SUPPORTS_GROUPS) + target_link_libraries(lldb-server +-Wl,--start-group ${LLDB_USED_LIBS} -Wl,--end-group) + target_link_libraries(lldb-server +-Wl,--start-group ${CLANG_USED_LIBS} -Wl,--end-group) else() - # The Darwin linker doesn't understand --start-group/--end-group. - if (LLDB_LINKER_SUPPORTS_GROUPS) -target_link_libraries(lldb-server - -Wl,--start-group ${LLDB_USED_LIBS} -Wl,--end-group) -target_link_libraries(lldb-server - -Wl,--start-group ${CLANG_USED_LIBS} -Wl,--end-group) - else() -target_link_libraries(lldb-server ${LLDB_USED_LIBS}) -target_link_libraries(lldb-server ${CLANG_USED_LIBS}) - endif() - llvm_config(lldb-server ${LLVM_LINK_COMPONENTS}) - - target_link_libraries(lldb-server ${LLDB_SYSTEM_LIBS}) + target_link_libraries(lldb-server ${LLDB_USED_LIBS}) + target_link_libraries(lldb-server ${CLANG_USED_LIBS}) endif() +llvm_config(lldb-server ${LLVM_LINK_COMPONENTS}) + +target_link_libraries(lldb-server ${LLDB_SYSTEM_LIBS}) set_target_properties(lldb-server PROPERTIES VERSION ${LLDB_VERSION}) Index: tools/lldb-server/CMakeLists.txt === --- tools/lldb-server/CMakeLists.txt +++ tools/lldb-server/CMakeLists.txt @@ -33,24 +33,19 @@ LLDBServerUtilities.cpp ) -if (BUILD_SHARED_LIBS ) - target_link_libraries(lldb-server liblldb) - target_link_libraries(lldb-server ${LLDB_SYSTEM_LIBS}) +# The Darwin linker doesn't understand --start-group/--end-group. +if (LLDB_LINKER_SUPPORTS_GROUPS) + target_link_libraries(lldb-server +-Wl,--start-group ${LLDB_USED_LIBS} -Wl,--end-group) + target_link_libraries(lldb-server +-Wl,--start-group ${CLANG_USED_LIBS} -Wl,--end-group) else() - # The Darwin linker doesn't understand --start-group/--end-group. - if (LLDB_LINKER_SUPPORTS_GROUPS) -target_link_libraries(lldb-server - -Wl,--start-group ${LLDB_USED_LIBS} -Wl,--end-group) -target_link_libraries(lldb-server - -Wl,--start-group ${CLANG_USED_LIBS} -Wl,--end-group) - else() -target_link_libraries(lldb-server ${LLDB_USED_LIBS}) -target_link_libraries(lldb-server ${CLANG_USED_LIBS}) - endif() - llvm_config(lldb-server ${LLVM_LINK_COMPONENTS}) - - target_link_libraries(lldb-server ${LLDB_SYSTEM_LIBS}) + target_link_libraries(lldb-server ${LLDB_USED_LIBS}) + target_link_libraries(lldb-server ${CLANG_USED_LIBS}) endif() +llvm_config(lldb-server ${LLVM_LINK_COMPONENTS}) + +target_link_libraries(lldb-server ${LLDB_SYSTEM_LIBS}) set_target_properties(lldb-server PROPERTIES VERSION ${LLDB_VERSION}) ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [PATCH] D16680: Re-submit rL258759: Write the session log file in UTF-8.
tberghammer created this revision. tberghammer added reviewers: zturner, tfiala. tberghammer added a subscriber: lldb-commits. Re-submit rL258759: Write the session log file in UTF-8. Previously we were writing in the default encoding, which depends on the operating system and is not guaranteed to be unicode aware. On Python 3, this would lead to a situation where writing unicode text to the log file generates an exception. The fix here is to write session logs using the proper encoding, which incidentally fixes another test, so xfail is removed from that. http://reviews.llvm.org/D16680 Files: packages/Python/lldbsuite/test/lang/cpp/char1632_t/TestChar1632T.py packages/Python/lldbsuite/test/lldbtest.py Index: packages/Python/lldbsuite/test/lldbtest.py === --- packages/Python/lldbsuite/test/lldbtest.py +++ packages/Python/lldbsuite/test/lldbtest.py @@ -262,7 +262,7 @@ if self.trace: print(self.getvalue(), file=sys.stderr) if self.session: -print(self.getvalue(), file=self.session) +print(self.getvalue().decode('utf8', errors='replace').encode(errors='replace'), file=self.session) self.close() @add_metaclass(abc.ABCMeta) @@ -1843,7 +1843,7 @@ if not self.__unexpected__ and not self.__skipped__: for test, traceback in pairs: if test is self: -print(traceback, file=self.session) +print(traceback.decode('utf8', errors='replace').encode(errors='replace'), file=self.session) # put footer (timestamp/rerun instructions) into session testMethod = getattr(self, self._testMethodName) Index: packages/Python/lldbsuite/test/lang/cpp/char1632_t/TestChar1632T.py === --- packages/Python/lldbsuite/test/lang/cpp/char1632_t/TestChar1632T.py +++ packages/Python/lldbsuite/test/lang/cpp/char1632_t/TestChar1632T.py @@ -25,7 +25,6 @@ line_number(self.source, '// breakpoint2') ] @expectedFailureIcc # ICC (13.1) does not emit the DW_TAG_base_type for char16_t and char32_t. -@expectedFailureWindows("llvm.org/pr24489: Name lookup not working correctly on Windows") def test(self): """Test that the C++11 support for char16_t and char32_t works correctly.""" self.build() Index: packages/Python/lldbsuite/test/lldbtest.py === --- packages/Python/lldbsuite/test/lldbtest.py +++ packages/Python/lldbsuite/test/lldbtest.py @@ -262,7 +262,7 @@ if self.trace: print(self.getvalue(), file=sys.stderr) if self.session: -print(self.getvalue(), file=self.session) +print(self.getvalue().decode('utf8', errors='replace').encode(errors='replace'), file=self.session) self.close() @add_metaclass(abc.ABCMeta) @@ -1843,7 +1843,7 @@ if not self.__unexpected__ and not self.__skipped__: for test, traceback in pairs: if test is self: -print(traceback, file=self.session) +print(traceback.decode('utf8', errors='replace').encode(errors='replace'), file=self.session) # put footer (timestamp/rerun instructions) into session testMethod = getattr(self, self._testMethodName) Index: packages/Python/lldbsuite/test/lang/cpp/char1632_t/TestChar1632T.py === --- packages/Python/lldbsuite/test/lang/cpp/char1632_t/TestChar1632T.py +++ packages/Python/lldbsuite/test/lang/cpp/char1632_t/TestChar1632T.py @@ -25,7 +25,6 @@ line_number(self.source, '// breakpoint2') ] @expectedFailureIcc # ICC (13.1) does not emit the DW_TAG_base_type for char16_t and char32_t. -@expectedFailureWindows("llvm.org/pr24489: Name lookup not working correctly on Windows") def test(self): """Test that the C++11 support for char16_t and char32_t works correctly.""" self.build() ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D16680: Re-submit rL258759: Write the session log file in UTF-8.
tberghammer added a comment. I know that this version is not the cleanest implementation but I think this is a very robust because we don't depend on the system encoding anywhere. Please gave it a try and feel free to commit it if if works. http://reviews.llvm.org/D16680 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r259042 - Fix const cast error for MSVC2015 build.
Author: aidandodds Date: Thu Jan 28 07:05:21 2016 New Revision: 259042 URL: http://llvm.org/viewvc/llvm-project?rev=259042&view=rev Log: Fix const cast error for MSVC2015 build. The Visual Studio 2015 build was failing with the following error: error C2440: 'initializing': cannot convert from 'const char [12]' to 'char *' This should fix the problem by initializing a non const char array, instead of taking a pointer to const static data. Modified: lldb/trunk/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp Modified: lldb/trunk/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp?rev=259042&r1=259041&r2=259042&view=diff == --- lldb/trunk/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp (original) +++ lldb/trunk/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp Thu Jan 28 07:05:21 2016 @@ -146,7 +146,7 @@ private: size_t size = 0; static wchar_t *g_python_home = Py_DecodeLocale(LLDB_PYTHON_HOME, &size); #else -static char *g_python_home = LLDB_PYTHON_HOME; +static char g_python_home[] = LLDB_PYTHON_HOME; #endif Py_SetPythonHome(g_python_home); #endif ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D16680: Re-submit rL258759: Write the session log file in UTF-8.
tfiala added a comment. I can give this a try later today. http://reviews.llvm.org/D16680 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D16680: Re-submit rL258759: Write the session log file in UTF-8.
tfiala accepted this revision. tfiala added a comment. This revision is now accepted and ready to land. Hey Tamas, I haven't tried it yet, but I won't be into the office until later. Why don't you go ahead and submit it, and if it blows up the OS X testbot, you'll get an email and you (or whoever finds it first) can revert it? There may be a better way to address it longer term but if this works, it seems okay for now. -Todd http://reviews.llvm.org/D16680 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D16680: Re-submit rL258759: Write the session log file in UTF-8.
tberghammer added a comment. I am more worried about Windows and python3 and I don't think we have any build bot running the tests on Windows. I don't really know what is the original issue this commit try to address so I plan to wait until Zachary can check it out (the current ToT works on Linux so I am not worried) http://reviews.llvm.org/D16680 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D16680: Re-submit rL258759: Write the session log file in UTF-8.
Python 3.4.3 (v3.4.3:9b73f1c3e601, Feb 24 2015, 22:43:06) [MSC v.1600 32 bit (Intel)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> dir(str) ['__add__', '__class__', '__contains__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__gt__', '__hash__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'capitalize', 'casefold', 'center', 'count', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'format_map', 'index', 'isalnum', 'isalpha', 'isdecimal', 'isdigit', 'isidentifier', 'islower', 'isnumeric', 'isprintable', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'maketrans', 'partition', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill'] >>> No decode method. Which gets to the heart of the problem, I couldn't find a single syntax that worked on all platforms :-/ I think the best thing to do is make a decode_utf8() function that looks like this: def decode_utf8(text): if six.PY2: return text.decode("utf-8", errors="replace") return text and then write print(decode_utf8(traceback), file=self.session) and make sure that the file is opened with io.open(encoding="utf-8") On Thu, Jan 28, 2016 at 7:12 AM Tamas Berghammer wrote: > tberghammer added a comment. > > I am more worried about Windows and python3 and I don't think we have any > build bot running the tests on Windows. I don't really know what is the > original issue this commit try to address so I plan to wait until Zachary > can check it out (the current ToT works on Linux so I am not worried) > > > http://reviews.llvm.org/D16680 > > > > ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D16680: Re-submit rL258759: Write the session log file in UTF-8.
zturner added a comment. On second thought I think the best solution is just to decide that we're always going to use unicode strings everywhere. That means using u"" instead of "" everywhere. It's hard to do this all over the entire codebase, but we can start with this and see what happens. This is what I tried to do in my followup patch the other day, but I think I missed the place where we were writing self.getvalue() and that was still a regular string. So anywhere where we write a string variable and not a string literal, we still have to decode it conditionally if we're on python 2 The place where we print the traceback, what happens if you do this: self.session = io.open(path, mode="w", encoding="utf-8") traceback.print_exc(file=self.session) Does that work? http://reviews.llvm.org/D16680 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D16680: Re-submit rL258759: Write the session log file in UTF-8.
tberghammer added a comment. I don't think using unicode strings everywhere is a good idea because when we compare a string coming from the SB API with a string literal we don't want to do a lot of conversion. Also I think enforcing all string literals to be unicode is something what will break all the time. I tried to change the code to use "self.session = io.open(path, mode="w", encoding="utf-8")" but it was failing with the following stack trace: Traceback (most recent call last): File "./test/dotest.py", line 7, in lldbsuite.test.run_suite() File "/mnt/ssd/ll/git/lldb/packages/Python/lldbsuite/test/dotest.py", line 1089, in run_suite resultclass=test_result.LLDBTestResult).run(configuration.suite) File "/mnt/ssd/ll/git/lldb/third_party/Python/module/unittest2/unittest2/runner.py", line 162, in run test(result) File "/mnt/ssd/ll/git/lldb/third_party/Python/module/unittest2/unittest2/suite.py", line 65, in __call__ return self.run(*args, **kwds) File "/mnt/ssd/ll/git/lldb/third_party/Python/module/unittest2/unittest2/suite.py", line 85, in run self._wrapped_run(result) File "/mnt/ssd/ll/git/lldb/third_party/Python/module/unittest2/unittest2/suite.py", line 115, in _wrapped_run test._wrapped_run(result, debug) File "/mnt/ssd/ll/git/lldb/third_party/Python/module/unittest2/unittest2/suite.py", line 117, in _wrapped_run test(result) File "/mnt/ssd/ll/git/lldb/third_party/Python/module/unittest2/unittest2/case.py", line 433, in __call__ return self.run(*args, **kwds) File "/mnt/ssd/ll/git/lldb/third_party/Python/module/unittest2/unittest2/case.py", line 369, in run self.dumpSessionInfo() File "/mnt/ssd/ll/git/lldb/packages/Python/lldbsuite/test/lldbtest.py", line 1857, in dumpSessionInfo print("Session info generated @", datetime.datetime.now().ctime(), file=self.session) TypeError: must be unicode, not str http://reviews.llvm.org/D16680 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D16680: Re-submit rL258759: Write the session log file in UTF-8.
tberghammer added a comment. I converted the strings it was complaining about but I haven't managed to get the traceback printing working without converting the data to utf-8 manually. We are using traceback.format_exception to collect the stack trace what returns a string, then we store it in a variable and print it later. http://reviews.llvm.org/D16680 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D16680: Re-submit rL258759: Write the session log file in UTF-8.
What if you try traceback.print_exception()? Does it work? Maybe it's smart enough to detect whether it needs to encode the traceback before printing. On Thu, Jan 28, 2016 at 9:13 AM Tamas Berghammer wrote: > tberghammer added a comment. > > I converted the strings it was complaining about but I haven't managed to > get the traceback printing working without converting the data to utf-8 > manually. We are using traceback.format_exception to collect the stack > trace what returns a string, then we store it in a variable and print it > later. > > > http://reviews.llvm.org/D16680 > > > > ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D16508: NetBSD: Define initial RegisterContextNetBSD_x86_64
clayborg added a comment. In http://reviews.llvm.org/D16508#338046, @krytarowski wrote: > 1. I was trying to comment out `DBG` registers (as unsupported by NetBSD) > from `RegisterInfos_x86_64.h` with the following patch: > > But I get this assert being triggered: > > In file included from > /tmp/pkgsrc-tmp/wip/lldb-git/work/lldb/source/Plugins/Process/Utility/RegisterContextNetBSD_x86_64.cpp:59:0: > > /tmp/pkgsrc-tmp/wip/lldb-git/work/lldb/source/Plugins/Process/Utility/RegisterInfos_x86_64.h:271:1: > error: static assertion failed: g_register_infos_x86_64 has wrong number of > register infos >static_assert((sizeof(g_register_infos_x86_64) / > sizeof(g_register_infos_x86_64[0])) == k_num_registers_x86_64, >^ You usually make a sized array that matches your zero based enumerations for your registers. So the number of items in the g_register_infos_x86_64 structure should be the same as your zero based register number enumerations. I prefer to always make an enum like: enum RegisterNumbers { eGPRRegisterRAX, eGPRRegisterRBX, eGPRRegisterRCX, eGPRRegisterRDX, k_num_registers }; Then define the RegisterInfo structure as a constant array that sizes itself: static RegisterInfo g_register_infos_x86_64[] = { ... rax ..., ... rbx ..., ... rcx ..., ... rdx ..., ... rsi ..., }; Note that if we had this definition, that the assert you had would fire because our enumerations in RegisterNumbers has the number of registers as 4, but we have 5 in our g_register_infos_x86_64 structure. I do it this way to ensure that we don't get our enumeration definition off somehow and then access an array item in g_register_infos_x86_64 that is out of bounds. > What's the correct approach to address it? Mirror modified > `RegisterInfos_x86_64.h` in `RegisterContextNetBSD_x86_64.cpp` and > removed/altered `static_assert`? > > 2. I don't understand "marking registers as valid". NetBSD offers > `ptrace`(2) call to with a pair of accessors set or get, one for `REG` and > the other for `FPREG`. Somehow you need to track which registers are valid and which aren't. If someone asks you to read "rax", you will read all GPR registers. The next time someone asks you to read "rbx", if you have already read the GPR registers, you can just grab the value from your local structure. The register context will be asked to invalidate its registers via the pure virtual function: virtual void RegisterContext::InvalidateAllRegisters () = 0; This would make you say "m_gpr_regs_valid = false;" and possible "m_fpu_regs_valid = false;" or something inside your register context to track which registers are valid. We want to avoid multiple ptrace calls to read all registers when they aren't needed. Also, if a registers is written, you will need to invalidate these as needed (if reg comes from GPR registers, then mark all GPRs as invalid, same for FPU reg). The GDB remote servers sometimes can only read single registers, one at a time, so a register context like that needs to track the validity of each register individually. So it really depends on your register context. So just make sure you correctly track when your registers are valid so you can avoid re-reading register sets via ptrace. Repository: rL LLVM http://reviews.llvm.org/D16508 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D15527: Add ability to override JIT expr compiler options.
ldrumm added a comment. Hi Sean If you have the time I'd appreciate it if you could take another look over my latest iteration of this feature. Thanks Luke http://reviews.llvm.org/D15527 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D16680: Re-submit rL258759: Write the session log file in UTF-8.
tberghammer added a comment. The traceback calculation is done inside unittest2 so I think we shouldn't change it and we don't have access to the session variable either. http://reviews.llvm.org/D16680 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D16678: Fix linking of lldb-server with BUILD_SHARED_LIBS
tfiala accepted this revision. tfiala added a comment. This revision is now accepted and ready to land. Seems reasonable to me. http://reviews.llvm.org/D16678 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D16508: NetBSD: Define initial RegisterContextNetBSD_x86_64
tfiala added a comment. > What's the correct approach to address it? Mirror modified > RegisterInfos_x86_64.h in RegisterContextNetBSD_x86_64.cpp and > removed/altered static_assert? I think that's worth trying. That will let you have a contiguous, consistent register set. Repository: rL LLVM http://reviews.llvm.org/D16508 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D16284: Fix Makefile build
hans added a comment. loladiro: Ping? http://reviews.llvm.org/D16284 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D16284: Fix Makefile build
loladiro added a comment. Sorry I've been away. No this didn't make it in before the Makefiles were removed from trunk. What would you prefer we do? http://reviews.llvm.org/D16284 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D16680: Re-submit rL258759: Write the session log file in UTF-8.
I think I have a good idea how to fix this. in lldbsuite.support we can add unicode_file.py. Make it implement the file interface so that it looks just like an io object so it can be used with print(file=), and with the 'with' keyword, etc. Make the open method call io.open() with an encoding, then make the read / write methods do a python version check before sending the read / write call to the underlying io object. Then you basically just do self.session_file = unicode_file.open(path, mode='w', encoding='utf-8') and then you can write however you want. print(u"", self.session_file) print("", self.session_file) will both work in any python version On Thu, Jan 28, 2016 at 10:21 AM Tamas Berghammer wrote: > tberghammer added a comment. > > The traceback calculation is done inside unittest2 so I think we shouldn't > change it and we don't have access to the session variable either. > > > http://reviews.llvm.org/D16680 > > > > ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D16680: Re-submit rL258759: Write the session log file in UTF-8.
tfiala added a comment. That seems very reasonable. http://reviews.llvm.org/D16680 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r259078 - Fix an issue where the type list command would not accept a valid argument and instead error out complaining about a malformed regex
Author: enrico Date: Thu Jan 28 13:21:38 2016 New Revision: 259078 URL: http://llvm.org/viewvc/llvm-project?rev=259078&view=rev Log: Fix an issue where the type list command would not accept a valid argument and instead error out complaining about a malformed regex rdar://problem/24380025 Added: lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/type_summary_list_arg/ lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/type_summary_list_arg/TestTypeSummaryListArg.py Modified: lldb/trunk/source/Commands/CommandObjectType.cpp Added: lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/type_summary_list_arg/TestTypeSummaryListArg.py URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/type_summary_list_arg/TestTypeSummaryListArg.py?rev=259078&view=auto == --- lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/type_summary_list_arg/TestTypeSummaryListArg.py (added) +++ lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/type_summary_list_arg/TestTypeSummaryListArg.py Thu Jan 28 13:21:38 2016 @@ -0,0 +1,26 @@ +""" +Test lldb data formatter subsystem. +""" + +from __future__ import print_function + + + +import os, time +import lldb +from lldbsuite.test.lldbtest import * +import lldbsuite.test.lldbutil as lldbutil + +class TypeSummaryListArgumentTestCase(TestBase): + +mydir = TestBase.compute_mydir(__file__) + +def setUp(self): +# Call super's setUp(). +TestBase.setUp(self) + +@no_debug_info_test +def test_type_summary_list_with_arg(self): +"""Test that the 'type summary list' command handles command line arguments properly""" +self.expect('type summary list Foo', substrs=['Category: default', 'Category: system']) +self.expect('type summary list char', substrs=['char *', 'unsigned char']) Modified: lldb/trunk/source/Commands/CommandObjectType.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Commands/CommandObjectType.cpp?rev=259078&r1=259077&r2=259078&view=diff == --- lldb/trunk/source/Commands/CommandObjectType.cpp (original) +++ lldb/trunk/source/Commands/CommandObjectType.cpp Thu Jan 28 13:21:38 2016 @@ -1384,7 +1384,7 @@ protected: if (argc == 1) { -const char* arg = command.GetArgumentAtIndex(1); +const char* arg = command.GetArgumentAtIndex(0); formatter_regex.reset(new RegularExpression()); if (!formatter_regex->Compile(arg)) { ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D16680: Re-submit rL258759: Write the session log file in UTF-8.
I'm working on getting the MSVC buildbot using VS 2015, but I'll take a stab at this after it's done. Feel free to leave everything as is for now, I dont' think anyone but Windows is broken on this anyway for now. On Thu, Jan 28, 2016 at 11:21 AM Todd Fiala wrote: > tfiala added a comment. > > That seems very reasonable. > > > http://reviews.llvm.org/D16680 > > > > ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D16284: Fix Makefile build
hans added a comment. I've committed the patch to 3.8 in r259081. Please confirm if this fixes the issue there. http://reviews.llvm.org/D16284 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] LLVM buildmaster will go off-line today after 5 PM Pacific for short time
Hello everyone, LLVM buildmaster will be taken off-line today after 5 PM Pacific for short time for maintenance and also will be updated. Thank you for understanding. Thanks Galina ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D16680: Re-submit rL258759: Write the session log file in UTF-8.
tfiala added a comment. Sounds great, Zachary. Thanks! http://reviews.llvm.org/D16680 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D16508: NetBSD: Define initial RegisterContextNetBSD_x86_64
krytarowski added a comment. Thank you @clayborg and @tfiala I'm processing your feedback. In case of further questions I will let you know. Your answers make the things more clear. Repository: rL LLVM http://reviews.llvm.org/D16508 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D16508: NetBSD: Define initial RegisterContextNetBSD_x86_64
tfiala added a comment. Glad to hear it! Repository: rL LLVM http://reviews.llvm.org/D16508 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r259086 - Fix build after rL259070.
Author: chaoren Date: Thu Jan 28 14:25:46 2016 New Revision: 259086 URL: http://llvm.org/viewvc/llvm-project?rev=259086&view=rev Log: Fix build after rL259070. Modified: lldb/trunk/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp Modified: lldb/trunk/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp?rev=259086&r1=259085&r2=259086&view=diff == --- lldb/trunk/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp (original) +++ lldb/trunk/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp Thu Jan 28 14:25:46 2016 @@ -1378,7 +1378,7 @@ FindObjCPropertyAndIvarDeclsWithOrigin ( StringRef name(name_str.c_str()); IdentifierInfo &name_identifier(origin_iface_decl->getASTContext().Idents.get(name)); -DeclFromUser origin_property_decl(origin_iface_decl->FindPropertyDeclaration(&name_identifier, ObjCPropertyDecl::OBJC_PR_query_instance)); +DeclFromUser origin_property_decl(origin_iface_decl->FindPropertyDeclaration(&name_identifier, ObjCPropertyQueryKind::OBJC_PR_query_instance)); bool found = false; ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D16662: [LLDB] Remove autoconf support from source directories
This revision was automatically updated to reflect the committed changes. Closed by commit rL259098: Remove autoconf support from source directories. (authored by eugenezelenko). Changed prior to commit: http://reviews.llvm.org/D16662?vs=46201&id=46312#toc Repository: rL LLVM http://reviews.llvm.org/D16662 Files: lldb/trunk/Makefile lldb/trunk/include/Makefile lldb/trunk/include/lldb/Makefile lldb/trunk/lib/Makefile lldb/trunk/scripts/Makefile lldb/trunk/scripts/Python/Makefile lldb/trunk/scripts/Python/modules/Makefile lldb/trunk/scripts/Python/modules/readline/Makefile lldb/trunk/source/API/Makefile lldb/trunk/source/Breakpoint/Makefile lldb/trunk/source/Commands/Makefile lldb/trunk/source/Core/Makefile lldb/trunk/source/DataFormatters/Makefile lldb/trunk/source/Expression/Makefile lldb/trunk/source/Host/Makefile lldb/trunk/source/Host/netbsd/Makefile lldb/trunk/source/Initialization/Makefile lldb/trunk/source/Interpreter/Makefile lldb/trunk/source/Makefile lldb/trunk/source/Plugins/ABI/MacOSX-arm/Makefile lldb/trunk/source/Plugins/ABI/MacOSX-arm64/Makefile lldb/trunk/source/Plugins/ABI/MacOSX-i386/Makefile lldb/trunk/source/Plugins/ABI/SysV-arm/Makefile lldb/trunk/source/Plugins/ABI/SysV-arm64/Makefile lldb/trunk/source/Plugins/ABI/SysV-hexagon/Makefile lldb/trunk/source/Plugins/ABI/SysV-i386/Makefile lldb/trunk/source/Plugins/ABI/SysV-mips/Makefile lldb/trunk/source/Plugins/ABI/SysV-mips64/Makefile lldb/trunk/source/Plugins/ABI/SysV-ppc/Makefile lldb/trunk/source/Plugins/ABI/SysV-ppc64/Makefile lldb/trunk/source/Plugins/ABI/SysV-x86_64/Makefile lldb/trunk/source/Plugins/Disassembler/llvm/Makefile lldb/trunk/source/Plugins/DynamicLoader/Darwin-Kernel/Makefile lldb/trunk/source/Plugins/DynamicLoader/Hexagon-DYLD/Makefile lldb/trunk/source/Plugins/DynamicLoader/MacOSX-DYLD/Makefile lldb/trunk/source/Plugins/DynamicLoader/POSIX-DYLD/Makefile lldb/trunk/source/Plugins/DynamicLoader/Static/Makefile lldb/trunk/source/Plugins/DynamicLoader/Windows-DYLD/Makefile lldb/trunk/source/Plugins/ExpressionParser/Clang/Makefile lldb/trunk/source/Plugins/ExpressionParser/Go/Makefile lldb/trunk/source/Plugins/Instruction/ARM/Makefile lldb/trunk/source/Plugins/Instruction/ARM64/Makefile lldb/trunk/source/Plugins/Instruction/MIPS/Makefile lldb/trunk/source/Plugins/Instruction/MIPS64/Makefile lldb/trunk/source/Plugins/InstrumentationRuntime/AddressSanitizer/Makefile lldb/trunk/source/Plugins/JITLoader/GDB/Makefile lldb/trunk/source/Plugins/Language/CPlusPlus/Makefile lldb/trunk/source/Plugins/Language/Go/Makefile lldb/trunk/source/Plugins/Language/ObjC/Makefile lldb/trunk/source/Plugins/Language/ObjCPlusPlus/Makefile lldb/trunk/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABI/Makefile lldb/trunk/source/Plugins/LanguageRuntime/Go/Makefile lldb/trunk/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/Makefile lldb/trunk/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/Makefile lldb/trunk/source/Plugins/Makefile lldb/trunk/source/Plugins/MemoryHistory/asan/Makefile lldb/trunk/source/Plugins/ObjectContainer/BSD-Archive/Makefile lldb/trunk/source/Plugins/ObjectContainer/Universal-Mach-O/Makefile lldb/trunk/source/Plugins/ObjectFile/ELF/Makefile lldb/trunk/source/Plugins/ObjectFile/JIT/Makefile lldb/trunk/source/Plugins/ObjectFile/Mach-O/Makefile lldb/trunk/source/Plugins/ObjectFile/PECOFF/Makefile lldb/trunk/source/Plugins/OperatingSystem/Go/Makefile lldb/trunk/source/Plugins/OperatingSystem/Python/Makefile lldb/trunk/source/Plugins/Platform/Android/Makefile lldb/trunk/source/Plugins/Platform/FreeBSD/Makefile lldb/trunk/source/Plugins/Platform/Kalimba/Makefile lldb/trunk/source/Plugins/Platform/Linux/Makefile lldb/trunk/source/Plugins/Platform/MacOSX/Makefile lldb/trunk/source/Plugins/Platform/Makefile lldb/trunk/source/Plugins/Platform/NetBSD/Makefile lldb/trunk/source/Plugins/Platform/POSIX/Makefile lldb/trunk/source/Plugins/Platform/Windows/Makefile lldb/trunk/source/Plugins/Platform/gdb-server/Makefile lldb/trunk/source/Plugins/Process/FreeBSD/Makefile lldb/trunk/source/Plugins/Process/Linux/Makefile lldb/trunk/source/Plugins/Process/MacOSX-Kernel/Makefile lldb/trunk/source/Plugins/Process/POSIX/Makefile lldb/trunk/source/Plugins/Process/Utility/Makefile lldb/trunk/source/Plugins/Process/elf-core/Makefile lldb/trunk/source/Plugins/Process/gdb-remote/Makefile lldb/trunk/source/Plugins/Process/mach-core/Makefile lldb/trunk/source/Plugins/ScriptInterpreter/None/Makefile lldb/trunk/source/Plugins/ScriptInterpreter/Python/Makefile lldb/trunk/source/Plugins/SymbolFile/DWARF/Makefile lldb/trunk/source/Plugins/SymbolFile/Symtab/Makefile lldb/trunk/source/Plugins/SymbolVendor/ELF/Makefile lldb/trunk/source/Plugins/SymbolVendor/MacOSX/Makefile lldb/trunk/source/Plugins/SystemRuntime/MacOSX/Makefile lldb/trunk/source/Plugins/Unwin
[Lldb-commits] [lldb] r259102 - add back an Xcode-specific Makefile for header installation
Author: tfiala Date: Thu Jan 28 16:34:36 2016 New Revision: 259102 URL: http://llvm.org/viewvc/llvm-project?rev=259102&view=rev Log: add back an Xcode-specific Makefile for header installation Added: lldb/trunk/tools/install-headers/Makefile Added: lldb/trunk/tools/install-headers/Makefile URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/install-headers/Makefile?rev=259102&view=auto == --- lldb/trunk/tools/install-headers/Makefile (added) +++ lldb/trunk/tools/install-headers/Makefile Thu Jan 28 16:34:36 2016 @@ -0,0 +1,23 @@ +installsrc: + echo "installsrc (doing nothing)" + +install: + echo "install (doing nothing)" + +clean: + echo "clean (doing nothing)" + +LLDB_VERSION=`echo ${CURRENT_PROJECT_VERSION} | /usr/bin/sed -E 's/^([0-9]+).([0-9]+).([0-9]+)(.[0-9]+)?$$/\1/g'` +LLDB_REVISION=`echo ${CURRENT_PROJECT_VERSION} | /usr/bin/sed -E 's/^([0-9]+).([0-9]+).([0-9]+)(.[0-9]+)?$$/\3/g'` +LLDB_VERSION_STRING=`echo ${CURRENT_PROJECT_VERSION}` + +installhdrs: + cd "${TARGET_BUILD_DIR}/${LLDB_FRAMEWORK_INSTALL_DIR}/LLDB.framework/Headers" ;\ + for file in *.h ;\ + do \ + /usr/bin/sed -i '' 's/\(#include\)[ ]*"lldb\/\(API\/\)\{0,1\}\(.*\)"/\1 /1' "$$file" ;\ + /usr/bin/sed -i '' 's|http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [PATCH] D16695: Update LLDB Windows buildbot to use MSVC 2015 and Python 3.5
zturner created this revision. zturner added a reviewer: gkistanova. zturner added a subscriber: lldb-commits. Hi Galina, I've already got everything ready to go on the slave itself, so this CL can go in any time and it should start working. LMK if this looks ok. http://reviews.llvm.org/D16695 Files: buildbot/osuosl/master/config/builders.py zorg/buildbot/builders/LLDBBuilder.py Index: zorg/buildbot/builders/LLDBBuilder.py === --- zorg/buildbot/builders/LLDBBuilder.py +++ zorg/buildbot/builders/LLDBBuilder.py @@ -49,10 +49,10 @@ jobs="%(jobs)s", # Source directory containing a built python -python_source_dir=r'C:/src/python', +python_source_dir=r'C:/Python35', # Default values for VS devenv and build configuration -vs=r"""%VS120COMNTOOLS%""", +vs=r"""%VS140COMNTOOLS%""", config='Release', target_arch='x86', @@ -91,26 +91,12 @@ doStepIf=cleanBuildRequested )) -if config.lower() == 'release': -python_lib = 'python27.lib' -python_exe = 'python.exe' -elif config.lower() == 'debug': -python_lib = 'python27_d.lib' -python_exe = 'python_d.exe' - -python_lib = os.path.join(python_source_dir, 'PCbuild', python_lib) -python_exe = os.path.join(python_source_dir, 'PCbuild', python_exe) -python_include = os.path.join(python_source_dir, 'Include') - # Use batch files instead of ShellCommand directly, Windows quoting is # borked. FIXME: See buildbot ticket #595 and buildbot ticket #377. f.addStep(batch_file_download.BatchFileDownload(name='cmakegen', command=[cmake, "-G", "Ninja", "../llvm", "-DCMAKE_BUILD_TYPE="+config, - # Need to use our custom built version of python - '-DPYTHON_LIBRARY=' + python_lib, - '-DPYTHON_INCLUDE_DIR=' + python_include, - '-DPYTHON_EXECUTABLE=' + python_exe, + '-DPYTHON_HOME=' + python_source_dir, "-DCMAKE_INSTALL_PREFIX=../install"] + extra_cmake_args, workdir=build_dir)) Index: buildbot/osuosl/master/config/builders.py === --- buildbot/osuosl/master/config/builders.py +++ buildbot/osuosl/master/config/builders.py @@ -519,7 +519,7 @@ # LLDB builders. def _get_lldb_builders(): return [ -{'name': "lldb-x86-windows-msvc", +{'name': "lldb-x86-windows-msvc2015", 'slavenames': ["zturner-win2008"], 'builddir': "lldb-windows-x86", 'factory': LLDBBuilder.getLLDBWindowsCMakeBuildFactory(config='Debug')}, Index: zorg/buildbot/builders/LLDBBuilder.py === --- zorg/buildbot/builders/LLDBBuilder.py +++ zorg/buildbot/builders/LLDBBuilder.py @@ -49,10 +49,10 @@ jobs="%(jobs)s", # Source directory containing a built python -python_source_dir=r'C:/src/python', +python_source_dir=r'C:/Python35', # Default values for VS devenv and build configuration -vs=r"""%VS120COMNTOOLS%""", +vs=r"""%VS140COMNTOOLS%""", config='Release', target_arch='x86', @@ -91,26 +91,12 @@ doStepIf=cleanBuildRequested )) -if config.lower() == 'release': -python_lib = 'python27.lib' -python_exe = 'python.exe' -elif config.lower() == 'debug': -python_lib = 'python27_d.lib' -python_exe = 'python_d.exe' - -python_lib = os.path.join(python_source_dir, 'PCbuild', python_lib) -python_exe = os.path.join(python_source_dir, 'PCbuild', python_exe) -python_include = os.path.join(python_source_dir, 'Include') - # Use batch files instead of ShellCommand directly, Windows quoting is # borked. FIXME: See buildbot ticket #595 and buildbot ticket #377. f.addStep(batch_file_download.BatchFileDownload(name='cmakegen', command=[cmake, "-G", "Ninja", "../llvm", "-DCMAKE_BUILD_TYPE="+config, - # Need to use our custom built version of python - '-DPYTHON_LIBRARY=' + python_lib, - '-DPYTHON_INCLUDE_DIR=' + python_include, - '-DPYTHON_EXECUTABLE=' + python_exe, + '-DPYTHON_HOME=' + python_source_dir,
[Lldb-commits] [lldb] r259114 - fix up missing header from change r259084.
Author: tfiala Date: Thu Jan 28 17:17:53 2016 New Revision: 259114 URL: http://llvm.org/viewvc/llvm-project?rev=259114&view=rev Log: fix up missing header from change r259084. Modified: lldb/trunk/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp Modified: lldb/trunk/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp?rev=259114&r1=259113&r2=259114&view=diff == --- lldb/trunk/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp (original) +++ lldb/trunk/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp Thu Jan 28 17:17:53 2016 @@ -13,6 +13,7 @@ #include "ClangModulesDeclVendor.h" #include "clang/AST/ASTContext.h" +#include "clang/AST/DeclObjC.h" #include "clang/AST/RecordLayout.h" #include "lldb/Core/Log.h" #include "lldb/Core/Module.h" ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r259131 - Fix a bug where LLDB would not print the name of the function that a scripted summary is bound to
Author: enrico Date: Thu Jan 28 18:56:52 2016 New Revision: 259131 URL: http://llvm.org/viewvc/llvm-project?rev=259131&view=rev Log: Fix a bug where LLDB would not print the name of the function that a scripted summary is bound to rdar://24380076 Added: lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/type_summary_list_script/ lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/type_summary_list_script/Makefile lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/type_summary_list_script/TestTypeSummaryListScript.py lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/type_summary_list_script/main.cpp lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/type_summary_list_script/tslsformatters.py Modified: lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-python-synth/TestDataFormatterPythonSynth.py lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-script/TestDataFormatterScript.py lldb/trunk/source/DataFormatters/TypeSummary.cpp Modified: lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-python-synth/TestDataFormatterPythonSynth.py URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-python-synth/TestDataFormatterPythonSynth.py?rev=259131&r1=259130&r2=259131&view=diff == --- lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-python-synth/TestDataFormatterPythonSynth.py (original) +++ lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-python-synth/TestDataFormatterPythonSynth.py Thu Jan 28 18:56:52 2016 @@ -68,6 +68,7 @@ class PythonSynthDataFormatterTestCase(T # now set up the synth self.runCmd("script from fooSynthProvider import *") self.runCmd("type synth add -l fooSynthProvider foo") +self.expect("type synthetic list foo", substrs=['fooSynthProvider']) # check that we get the two real vars and the fake_a variables self.expect("frame variable f00_1", Modified: lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-script/TestDataFormatterScript.py URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-script/TestDataFormatterScript.py?rev=259131&r1=259130&r2=259131&view=diff == --- lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-script/TestDataFormatterScript.py (original) +++ lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-script/TestDataFormatterScript.py Thu Jan 28 18:56:52 2016 @@ -52,6 +52,7 @@ class ScriptDataFormatterTestCase(TestBa script = 'a = valobj.GetChildMemberWithName(\'integer\'); a_val = a.GetValue(); str = \'Hello from Python, \' + a_val + \' time\'; return str + (\'!\' if a_val == \'1\' else \'s!\');' self.runCmd("type summary add i_am_cool --python-script \"%s\"" % script) +self.expect('type summary list i_am_cool', substrs=[script]) self.expect("frame variable one", substrs = ['Hello from Python', Added: lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/type_summary_list_script/Makefile URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/type_summary_list_script/Makefile?rev=259131&view=auto == --- lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/type_summary_list_script/Makefile (added) +++ lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/type_summary_list_script/Makefile Thu Jan 28 18:56:52 2016 @@ -0,0 +1,5 @@ +LEVEL = ../../../make + +CXX_SOURCES := main.cpp + +include $(LEVEL)/Makefile.rules Added: lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/type_summary_list_script/TestTypeSummaryListScript.py URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/type_summary_list_script/TestTypeSummaryListScript.py?rev=259131&view=auto == --- lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/type_summary_list_script/TestTypeSummaryListScript.py (added) +++ lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/type_summary_list_script/TestTypeSummaryListScript.py Thu Jan 28 18:56:52 2016 @@ -0,0 +1,60 @@ +""" +Te
[Lldb-commits] [lldb] r259135 - Fix a bug where type list would ignore the -w argument
Author: enrico Date: Thu Jan 28 19:12:13 2016 New Revision: 259135 URL: http://llvm.org/viewvc/llvm-project?rev=259135&view=rev Log: Fix a bug where type list would ignore the -w argument rdar://24379879 Modified: lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/type_summary_list_arg/TestTypeSummaryListArg.py lldb/trunk/source/Commands/CommandObjectType.cpp Modified: lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/type_summary_list_arg/TestTypeSummaryListArg.py URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/type_summary_list_arg/TestTypeSummaryListArg.py?rev=259135&r1=259134&r2=259135&view=diff == --- lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/type_summary_list_arg/TestTypeSummaryListArg.py (original) +++ lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/type_summary_list_arg/TestTypeSummaryListArg.py Thu Jan 28 19:12:13 2016 @@ -24,3 +24,7 @@ class TypeSummaryListArgumentTestCase(Te """Test that the 'type summary list' command handles command line arguments properly""" self.expect('type summary list Foo', substrs=['Category: default', 'Category: system']) self.expect('type summary list char', substrs=['char *', 'unsigned char']) + +self.expect('type summary list -w default', substrs=['system'], matching=False) +self.expect('type summary list -w system unsigned', substrs=['default', '0-9'], matching=False) +self.expect('type summary list -w system char', substrs=['unsigned char *'], matching=True) Modified: lldb/trunk/source/Commands/CommandObjectType.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Commands/CommandObjectType.cpp?rev=259135&r1=259134&r2=259135&view=diff == --- lldb/trunk/source/Commands/CommandObjectType.cpp (original) +++ lldb/trunk/source/Commands/CommandObjectType.cpp Thu Jan 28 19:12:13 2016 @@ -1282,9 +1282,12 @@ class CommandObjectTypeFormatterList : p { case 'w': m_category_regex.SetCurrentValue(option_arg); +m_category_regex.SetOptionWasSet(); break; case 'l': error = m_category_language.SetValueFromString(option_arg); +if (error.Success()) +m_category_language.SetOptionWasSet(); break; default: error.SetErrorStringWithFormat ("unrecognized option '%c'", short_option); ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [PATCH] D16703: Fix TestDataFormatterScript for Linux.
chaoren created this revision. chaoren added a reviewer: granata.enrico. chaoren added a subscriber: lldb-commits. m_function_name will contain a dummy name for the auto-generated function from the python script on Linux. Check for script name first. http://reviews.llvm.org/D16703 Files: source/DataFormatters/TypeSummary.cpp Index: source/DataFormatters/TypeSummary.cpp === --- source/DataFormatters/TypeSummary.cpp +++ source/DataFormatters/TypeSummary.cpp @@ -263,21 +263,20 @@ SkipsPointers() ? " (skip pointers)" : "", SkipsReferences() ? " (skip references)" : "", HideNames(nullptr) ? " (hide member names)" : ""); -if (m_function_name.empty()) +if (m_python_script.empty()) { -if (m_python_script.empty()) +if (m_function_name.empty()) { sstr.PutCString("no backing script"); } else { -sstr.PutCString(m_python_script.c_str()); +sstr.PutCString(m_function_name.c_str()); } } else { -sstr.PutCString(m_function_name.c_str()); +sstr.PutCString(m_python_script.c_str()); } return sstr.GetString(); - } Index: source/DataFormatters/TypeSummary.cpp === --- source/DataFormatters/TypeSummary.cpp +++ source/DataFormatters/TypeSummary.cpp @@ -263,21 +263,20 @@ SkipsPointers() ? " (skip pointers)" : "", SkipsReferences() ? " (skip references)" : "", HideNames(nullptr) ? " (hide member names)" : ""); -if (m_function_name.empty()) +if (m_python_script.empty()) { -if (m_python_script.empty()) +if (m_function_name.empty()) { sstr.PutCString("no backing script"); } else { -sstr.PutCString(m_python_script.c_str()); +sstr.PutCString(m_function_name.c_str()); } } else { -sstr.PutCString(m_function_name.c_str()); +sstr.PutCString(m_python_script.c_str()); } return sstr.GetString(); - } ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D16703: Fix TestDataFormatterScript for Linux.
This revision was automatically updated to reflect the committed changes. Closed by commit rL259153: Fix TestDataFormatterScript for Linux. (authored by chaoren). Changed prior to commit: http://reviews.llvm.org/D16703?vs=46330&id=46340#toc Repository: rL LLVM http://reviews.llvm.org/D16703 Files: lldb/trunk/source/DataFormatters/TypeSummary.cpp Index: lldb/trunk/source/DataFormatters/TypeSummary.cpp === --- lldb/trunk/source/DataFormatters/TypeSummary.cpp +++ lldb/trunk/source/DataFormatters/TypeSummary.cpp @@ -263,21 +263,20 @@ SkipsPointers() ? " (skip pointers)" : "", SkipsReferences() ? " (skip references)" : "", HideNames(nullptr) ? " (hide member names)" : ""); -if (m_function_name.empty()) +if (m_python_script.empty()) { -if (m_python_script.empty()) +if (m_function_name.empty()) { sstr.PutCString("no backing script"); } else { -sstr.PutCString(m_python_script.c_str()); +sstr.PutCString(m_function_name.c_str()); } } else { -sstr.PutCString(m_function_name.c_str()); +sstr.PutCString(m_python_script.c_str()); } return sstr.GetString(); - } Index: lldb/trunk/source/DataFormatters/TypeSummary.cpp === --- lldb/trunk/source/DataFormatters/TypeSummary.cpp +++ lldb/trunk/source/DataFormatters/TypeSummary.cpp @@ -263,21 +263,20 @@ SkipsPointers() ? " (skip pointers)" : "", SkipsReferences() ? " (skip references)" : "", HideNames(nullptr) ? " (hide member names)" : ""); -if (m_function_name.empty()) +if (m_python_script.empty()) { -if (m_python_script.empty()) +if (m_function_name.empty()) { sstr.PutCString("no backing script"); } else { -sstr.PutCString(m_python_script.c_str()); +sstr.PutCString(m_function_name.c_str()); } } else { -sstr.PutCString(m_function_name.c_str()); +sstr.PutCString(m_python_script.c_str()); } return sstr.GetString(); - } ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r259153 - Fix TestDataFormatterScript for Linux.
Author: chaoren Date: Thu Jan 28 21:48:08 2016 New Revision: 259153 URL: http://llvm.org/viewvc/llvm-project?rev=259153&view=rev Log: Fix TestDataFormatterScript for Linux. Summary: m_function_name will contain a dummy name for the auto-generated function from the python script on Linux. Check for script name first. Reviewers: granata.enrico Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D16703 Modified: lldb/trunk/source/DataFormatters/TypeSummary.cpp Modified: lldb/trunk/source/DataFormatters/TypeSummary.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/DataFormatters/TypeSummary.cpp?rev=259153&r1=259152&r2=259153&view=diff == --- lldb/trunk/source/DataFormatters/TypeSummary.cpp (original) +++ lldb/trunk/source/DataFormatters/TypeSummary.cpp Thu Jan 28 21:48:08 2016 @@ -263,21 +263,20 @@ ScriptSummaryFormat::GetDescription () SkipsPointers() ? " (skip pointers)" : "", SkipsReferences() ? " (skip references)" : "", HideNames(nullptr) ? " (hide member names)" : ""); -if (m_function_name.empty()) +if (m_python_script.empty()) { -if (m_python_script.empty()) +if (m_function_name.empty()) { sstr.PutCString("no backing script"); } else { -sstr.PutCString(m_python_script.c_str()); +sstr.PutCString(m_function_name.c_str()); } } else { -sstr.PutCString(m_function_name.c_str()); +sstr.PutCString(m_python_script.c_str()); } return sstr.GetString(); - } ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D16703: Fix TestDataFormatterScript for Linux.
granata.enrico added a comment. That seems reasonable, yes. In general, I wish I had done this not via two strings - only one of which gets to be valid in some arbitrary order - but via either two distinct subclasses, or at least via a pair of a string and an enum class specifying the kind. But that is clearly beyond the scope of you fixing this test case. Your change is fine. Repository: rL LLVM http://reviews.llvm.org/D16703 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r259084 - Update lldb for API change in clang r259070.
Author: mren Date: Thu Jan 28 13:55:50 2016 New Revision: 259084 URL: http://llvm.org/viewvc/llvm-project?rev=259084&view=rev Log: Update lldb for API change in clang r259070. Modified: lldb/trunk/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp Modified: lldb/trunk/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp?rev=259084&r1=259083&r2=259084&view=diff == --- lldb/trunk/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp (original) +++ lldb/trunk/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp Thu Jan 28 13:55:50 2016 @@ -1378,7 +1378,7 @@ FindObjCPropertyAndIvarDeclsWithOrigin ( StringRef name(name_str.c_str()); IdentifierInfo &name_identifier(origin_iface_decl->getASTContext().Idents.get(name)); -DeclFromUser origin_property_decl(origin_iface_decl->FindPropertyDeclaration(&name_identifier)); +DeclFromUser origin_property_decl(origin_iface_decl->FindPropertyDeclaration(&name_identifier, ObjCPropertyDecl::OBJC_PR_query_instance)); bool found = false; ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits