[Lldb-commits] [lldb] r325856 - remove FreeBSD xfail from lit TestCallStdStringFunction
Author: emaste Date: Thu Feb 22 18:50:07 2018 New Revision: 325856 URL: http://llvm.org/viewvc/llvm-project?rev=325856&view=rev Log: remove FreeBSD xfail from lit TestCallStdStringFunction This test is consistently reporting unexpected pass for me, and the expectedFailure decorator was removed from the legacy test in r310626. Apply the same change to the lit version of this test. Will investigate further if this fails once the new buildbot is running tests. llvm.org/pr17807 Modified: lldb/trunk/lit/Expr/TestCallStdStringFunction.test Modified: lldb/trunk/lit/Expr/TestCallStdStringFunction.test URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/lit/Expr/TestCallStdStringFunction.test?rev=325856&r1=325855&r2=325856&view=diff == --- lldb/trunk/lit/Expr/TestCallStdStringFunction.test (original) +++ lldb/trunk/lit/Expr/TestCallStdStringFunction.test Thu Feb 22 18:50:07 2018 @@ -1,9 +1,6 @@ # XFAIL: windows # -> llvm.org/pr21765 -# XFAIL: freebsd -# -> llvm.org/pr17807 - # RUN: %cxx %p/Inputs/call-function.cpp -g -o %t && %lldb -b -s %s -- %t | FileCheck %s breakpoint set --file call-function.cpp --line 52 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r326134 - Mark test_*int*_t_dwarf as failing on FreeBSD
Author: emaste Date: Mon Feb 26 14:12:24 2018 New Revision: 326134 URL: http://llvm.org/viewvc/llvm-project?rev=326134&view=rev Log: Mark test_*int*_t_dwarf as failing on FreeBSD Further investigation required; tests will be enabled on the buildbot worker soon. Marking failing tests for now in order to start with a green buildbot while investigation takes place. llvm.org/pr36527 Modified: lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/enum_types/TestCPP11EnumTypes.py Modified: lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/enum_types/TestCPP11EnumTypes.py URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/enum_types/TestCPP11EnumTypes.py?rev=326134&r1=326133&r2=326134&view=diff == --- lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/enum_types/TestCPP11EnumTypes.py (original) +++ lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/enum_types/TestCPP11EnumTypes.py Mon Feb 26 14:12:24 2018 @@ -14,6 +14,7 @@ class CPP11EnumTypesTestCase(TestBase): mydir = TestBase.compute_mydir(__file__) +@expectedFailureAll(oslist=['freebsd'], bugnumber='llvm.org/pr36527') def test_int8_t(self): """Test C++11 enumeration class types as int8_t types.""" self.build( @@ -21,6 +22,7 @@ class CPP11EnumTypesTestCase(TestBase): 'CFLAGS_EXTRAS': '"-DTEST_BLOCK_CAPTURED_VARS=int8_t"'}) self.image_lookup_for_enum_type() +@expectedFailureAll(oslist=['freebsd'], bugnumber='llvm.org/pr36527') def test_int16_t(self): """Test C++11 enumeration class types as int16_t types.""" self.build( @@ -28,6 +30,7 @@ class CPP11EnumTypesTestCase(TestBase): 'CFLAGS_EXTRAS': '"-DTEST_BLOCK_CAPTURED_VARS=int16_t"'}) self.image_lookup_for_enum_type() +@expectedFailureAll(oslist=['freebsd'], bugnumber='llvm.org/pr36527') def test_int32_t(self): """Test C++11 enumeration class types as int32_t types.""" self.build( @@ -35,6 +38,7 @@ class CPP11EnumTypesTestCase(TestBase): 'CFLAGS_EXTRAS': '"-DTEST_BLOCK_CAPTURED_VARS=int32_t"'}) self.image_lookup_for_enum_type() +@expectedFailureAll(oslist=['freebsd'], bugnumber='llvm.org/pr36527') def test_int64_t(self): """Test C++11 enumeration class types as int64_t types.""" self.build( @@ -42,6 +46,7 @@ class CPP11EnumTypesTestCase(TestBase): 'CFLAGS_EXTRAS': '"-DTEST_BLOCK_CAPTURED_VARS=int64_t"'}) self.image_lookup_for_enum_type() +@expectedFailureAll(oslist=['freebsd'], bugnumber='llvm.org/pr36527') def test_uint8_t(self): """Test C++11 enumeration class types as uint8_t types.""" self.build( @@ -49,6 +54,7 @@ class CPP11EnumTypesTestCase(TestBase): 'CFLAGS_EXTRAS': '"-DTEST_BLOCK_CAPTURED_VARS=uint8_t"'}) self.image_lookup_for_enum_type() +@expectedFailureAll(oslist=['freebsd'], bugnumber='llvm.org/pr36527') def test_uint16_t(self): """Test C++11 enumeration class types as uint16_t types.""" self.build( @@ -56,6 +62,7 @@ class CPP11EnumTypesTestCase(TestBase): 'CFLAGS_EXTRAS': '"-DTEST_BLOCK_CAPTURED_VARS=uint16_t"'}) self.image_lookup_for_enum_type() +@expectedFailureAll(oslist=['freebsd'], bugnumber='llvm.org/pr36527') def test_uint32_t(self): """Test C++11 enumeration class types as uint32_t types.""" self.build( @@ -63,6 +70,7 @@ class CPP11EnumTypesTestCase(TestBase): 'CFLAGS_EXTRAS': '"-DTEST_BLOCK_CAPTURED_VARS=uint32_t"'}) self.image_lookup_for_enum_type() +@expectedFailureAll(oslist=['freebsd'], bugnumber='llvm.org/pr36527') def test_uint64_t(self): """Test C++11 enumeration class types as uint64_t types.""" self.build( ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r326139 - Revert r326134 due to broken buildbot
Author: emaste Date: Mon Feb 26 14:36:41 2018 New Revision: 326139 URL: http://llvm.org/viewvc/llvm-project?rev=326139&view=rev Log: Revert r326134 due to broken buildbot Modified: lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/enum_types/TestCPP11EnumTypes.py Modified: lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/enum_types/TestCPP11EnumTypes.py URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/enum_types/TestCPP11EnumTypes.py?rev=326139&r1=326138&r2=326139&view=diff == --- lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/enum_types/TestCPP11EnumTypes.py (original) +++ lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/enum_types/TestCPP11EnumTypes.py Mon Feb 26 14:36:41 2018 @@ -14,7 +14,6 @@ class CPP11EnumTypesTestCase(TestBase): mydir = TestBase.compute_mydir(__file__) -@expectedFailureAll(oslist=['freebsd'], bugnumber='llvm.org/pr36527') def test_int8_t(self): """Test C++11 enumeration class types as int8_t types.""" self.build( @@ -22,7 +21,6 @@ class CPP11EnumTypesTestCase(TestBase): 'CFLAGS_EXTRAS': '"-DTEST_BLOCK_CAPTURED_VARS=int8_t"'}) self.image_lookup_for_enum_type() -@expectedFailureAll(oslist=['freebsd'], bugnumber='llvm.org/pr36527') def test_int16_t(self): """Test C++11 enumeration class types as int16_t types.""" self.build( @@ -30,7 +28,6 @@ class CPP11EnumTypesTestCase(TestBase): 'CFLAGS_EXTRAS': '"-DTEST_BLOCK_CAPTURED_VARS=int16_t"'}) self.image_lookup_for_enum_type() -@expectedFailureAll(oslist=['freebsd'], bugnumber='llvm.org/pr36527') def test_int32_t(self): """Test C++11 enumeration class types as int32_t types.""" self.build( @@ -38,7 +35,6 @@ class CPP11EnumTypesTestCase(TestBase): 'CFLAGS_EXTRAS': '"-DTEST_BLOCK_CAPTURED_VARS=int32_t"'}) self.image_lookup_for_enum_type() -@expectedFailureAll(oslist=['freebsd'], bugnumber='llvm.org/pr36527') def test_int64_t(self): """Test C++11 enumeration class types as int64_t types.""" self.build( @@ -46,7 +42,6 @@ class CPP11EnumTypesTestCase(TestBase): 'CFLAGS_EXTRAS': '"-DTEST_BLOCK_CAPTURED_VARS=int64_t"'}) self.image_lookup_for_enum_type() -@expectedFailureAll(oslist=['freebsd'], bugnumber='llvm.org/pr36527') def test_uint8_t(self): """Test C++11 enumeration class types as uint8_t types.""" self.build( @@ -54,7 +49,6 @@ class CPP11EnumTypesTestCase(TestBase): 'CFLAGS_EXTRAS': '"-DTEST_BLOCK_CAPTURED_VARS=uint8_t"'}) self.image_lookup_for_enum_type() -@expectedFailureAll(oslist=['freebsd'], bugnumber='llvm.org/pr36527') def test_uint16_t(self): """Test C++11 enumeration class types as uint16_t types.""" self.build( @@ -62,7 +56,6 @@ class CPP11EnumTypesTestCase(TestBase): 'CFLAGS_EXTRAS': '"-DTEST_BLOCK_CAPTURED_VARS=uint16_t"'}) self.image_lookup_for_enum_type() -@expectedFailureAll(oslist=['freebsd'], bugnumber='llvm.org/pr36527') def test_uint32_t(self): """Test C++11 enumeration class types as uint32_t types.""" self.build( @@ -70,7 +63,6 @@ class CPP11EnumTypesTestCase(TestBase): 'CFLAGS_EXTRAS': '"-DTEST_BLOCK_CAPTURED_VARS=uint32_t"'}) self.image_lookup_for_enum_type() -@expectedFailureAll(oslist=['freebsd'], bugnumber='llvm.org/pr36527') def test_uint64_t(self): """Test C++11 enumeration class types as uint64_t types.""" self.build( ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r326166 - Mark test_*int*_t_dwarf as failing on FreeBSD
Author: emaste Date: Mon Feb 26 18:54:17 2018 New Revision: 326166 URL: http://llvm.org/viewvc/llvm-project?rev=326166&view=rev Log: Mark test_*int*_t_dwarf as failing on FreeBSD Further investigation required; tests will be enabled on the buildbot worker soon. Marking failing tests for now in order to start with a green buildbot while investigation takes place. This is a recommit of r326134, with the required import added. llvm.org/pr36527 Modified: lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/enum_types/TestCPP11EnumTypes.py Modified: lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/enum_types/TestCPP11EnumTypes.py URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/enum_types/TestCPP11EnumTypes.py?rev=326166&r1=326165&r2=326166&view=diff == --- lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/enum_types/TestCPP11EnumTypes.py (original) +++ lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/enum_types/TestCPP11EnumTypes.py Mon Feb 26 18:54:17 2018 @@ -6,6 +6,7 @@ from __future__ import print_function import os import time import lldb +from lldbsuite.test.decorators import * from lldbsuite.test.lldbtest import * import lldbsuite.test.lldbutil as lldbutil @@ -14,6 +15,7 @@ class CPP11EnumTypesTestCase(TestBase): mydir = TestBase.compute_mydir(__file__) +@expectedFailureAll(oslist=['freebsd'], bugnumber='llvm.org/pr36527') def test_int8_t(self): """Test C++11 enumeration class types as int8_t types.""" self.build( @@ -21,6 +23,7 @@ class CPP11EnumTypesTestCase(TestBase): 'CFLAGS_EXTRAS': '"-DTEST_BLOCK_CAPTURED_VARS=int8_t"'}) self.image_lookup_for_enum_type() +@expectedFailureAll(oslist=['freebsd'], bugnumber='llvm.org/pr36527') def test_int16_t(self): """Test C++11 enumeration class types as int16_t types.""" self.build( @@ -28,6 +31,7 @@ class CPP11EnumTypesTestCase(TestBase): 'CFLAGS_EXTRAS': '"-DTEST_BLOCK_CAPTURED_VARS=int16_t"'}) self.image_lookup_for_enum_type() +@expectedFailureAll(oslist=['freebsd'], bugnumber='llvm.org/pr36527') def test_int32_t(self): """Test C++11 enumeration class types as int32_t types.""" self.build( @@ -35,6 +39,7 @@ class CPP11EnumTypesTestCase(TestBase): 'CFLAGS_EXTRAS': '"-DTEST_BLOCK_CAPTURED_VARS=int32_t"'}) self.image_lookup_for_enum_type() +@expectedFailureAll(oslist=['freebsd'], bugnumber='llvm.org/pr36527') def test_int64_t(self): """Test C++11 enumeration class types as int64_t types.""" self.build( @@ -42,6 +47,7 @@ class CPP11EnumTypesTestCase(TestBase): 'CFLAGS_EXTRAS': '"-DTEST_BLOCK_CAPTURED_VARS=int64_t"'}) self.image_lookup_for_enum_type() +@expectedFailureAll(oslist=['freebsd'], bugnumber='llvm.org/pr36527') def test_uint8_t(self): """Test C++11 enumeration class types as uint8_t types.""" self.build( @@ -49,6 +55,7 @@ class CPP11EnumTypesTestCase(TestBase): 'CFLAGS_EXTRAS': '"-DTEST_BLOCK_CAPTURED_VARS=uint8_t"'}) self.image_lookup_for_enum_type() +@expectedFailureAll(oslist=['freebsd'], bugnumber='llvm.org/pr36527') def test_uint16_t(self): """Test C++11 enumeration class types as uint16_t types.""" self.build( @@ -56,6 +63,7 @@ class CPP11EnumTypesTestCase(TestBase): 'CFLAGS_EXTRAS': '"-DTEST_BLOCK_CAPTURED_VARS=uint16_t"'}) self.image_lookup_for_enum_type() +@expectedFailureAll(oslist=['freebsd'], bugnumber='llvm.org/pr36527') def test_uint32_t(self): """Test C++11 enumeration class types as uint32_t types.""" self.build( @@ -63,6 +71,7 @@ class CPP11EnumTypesTestCase(TestBase): 'CFLAGS_EXTRAS': '"-DTEST_BLOCK_CAPTURED_VARS=uint32_t"'}) self.image_lookup_for_enum_type() +@expectedFailureAll(oslist=['freebsd'], bugnumber='llvm.org/pr36527') def test_uint64_t(self): """Test C++11 enumeration class types as uint64_t types.""" self.build( ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r330500 - FreeBSD: propagate error to user if memory access fails
Author: emaste Date: Sat Apr 21 04:23:56 2018 New Revision: 330500 URL: http://llvm.org/viewvc/llvm-project?rev=330500&view=rev Log: FreeBSD: propagate error to user if memory access fails Previously, an attempt to read an unreadable address reported zeros. Now, if DoReadMemory or DoWriteMemory encounters error then return 0 (bytes read or written) so that the error is reported to the user. llvm.org/pr37190 Modified: lldb/trunk/source/Plugins/Process/FreeBSD/ProcessMonitor.cpp Modified: lldb/trunk/source/Plugins/Process/FreeBSD/ProcessMonitor.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Process/FreeBSD/ProcessMonitor.cpp?rev=330500&r1=330499&r2=330500&view=diff == --- lldb/trunk/source/Plugins/Process/FreeBSD/ProcessMonitor.cpp (original) +++ lldb/trunk/source/Plugins/Process/FreeBSD/ProcessMonitor.cpp Sat Apr 21 04:23:56 2018 @@ -159,8 +159,10 @@ static size_t DoReadMemory(lldb::pid_t p pi_desc.piod_addr = buf; pi_desc.piod_len = size; - if (PTRACE(PT_IO, pid, (caddr_t)&pi_desc, 0) < 0) + if (PTRACE(PT_IO, pid, (caddr_t)&pi_desc, 0) < 0) { error.SetErrorToErrno(); +return 0; + } return pi_desc.piod_len; } @@ -173,8 +175,10 @@ static size_t DoWriteMemory(lldb::pid_t pi_desc.piod_addr = (void *)buf; pi_desc.piod_len = size; - if (PTRACE(PT_IO, pid, (caddr_t)&pi_desc, 0) < 0) + if (PTRACE(PT_IO, pid, (caddr_t)&pi_desc, 0) < 0) { error.SetErrorToErrno(); +return 0; + } return pi_desc.piod_len; } ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r330504 - Temporarily skip Go TestExpressions on FreeBSD as it hangs
Author: emaste Date: Sat Apr 21 06:59:07 2018 New Revision: 330504 URL: http://llvm.org/viewvc/llvm-project?rev=330504&view=rev Log: Temporarily skip Go TestExpressions on FreeBSD as it hangs llvm.org/pr37194 Modified: lldb/trunk/packages/Python/lldbsuite/test/lang/go/expressions/TestExpressions.py Modified: lldb/trunk/packages/Python/lldbsuite/test/lang/go/expressions/TestExpressions.py URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/lang/go/expressions/TestExpressions.py?rev=330504&r1=330503&r2=330504&view=diff == --- lldb/trunk/packages/Python/lldbsuite/test/lang/go/expressions/TestExpressions.py (original) +++ lldb/trunk/packages/Python/lldbsuite/test/lang/go/expressions/TestExpressions.py Sat Apr 21 06:59:07 2018 @@ -15,6 +15,7 @@ class TestGoUserExpression(TestBase): @add_test_categories(['pyapi']) @skipIfRemote # Not remote test suit ready +@skipIfFreeBSD # Test hanging on FreeBSD - llvm.org/pr37194 @skipUnlessGoInstalled def test_with_dsym_and_python_api(self): """Test GoASTUserExpress.""" ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [lldb] r299200 - [LLDB][MIPS] Core Dump Support.
On 31 March 2017 at 07:14, Nitesh Jain via lldb-commits wrote: > Author: nitesh.jain > Date: Fri Mar 31 06:14:02 2017 > New Revision: 299200 > > URL: http://llvm.org/viewvc/llvm-project?rev=299200&view=rev > Log: > [LLDB][MIPS] Core Dump Support. The FreeBSD build is broken as of this commit: http://lab.llvm.org:8011/builders/lldb-amd64-ninja-freebsd11/builds/7365 [11/27] Building CXX object tools/lldb/source/Plugins/Process/FreeBSD/CMakeFiles/lldbPluginProcessFreeBSD.dir/RegisterContextPOSIXProcessMonitor_mips64.cpp.o FAILED: tools/lldb/source/Plugins/Process/FreeBSD/CMakeFiles/lldbPluginProcessFreeBSD.dir/RegisterContextPOSIXProcessMonitor_mips64.cpp.o /usr/bin/CC -DGTEST_HAS_RTTI=0 -DHAVE_ROUND -DLLDB_USE_BUILTIN_DEMANGLER -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -Itools/lldb/source/Plugins/Process/FreeBSD -I/usr/home/buildbot/scratch/scratch/llvm/tools/lldb/source/Plugins/Process/FreeBSD -I/usr/home/buildbot/scratch/scratch/llvm/tools/lldb/include -Itools/lldb/include -Iinclude -I/usr/home/buildbot/scratch/scratch/llvm/include -I/usr/local/include -I/usr/local/include/python2.7 -I/usr/home/buildbot/scratch/scratch/llvm/tools/clang/include -Itools/lldb/../clang/include -I/usr/home/buildbot/scratch/scratch/llvm/tools/lldb/source/. -I/usr/home/buildbot/scratch/scratch/llvm/tools/lldb/source/Plugins/Process/POSIX -I/usr/home/buildbot/scratch/scratch/llvm/tools/lldb/source/Plugins/Process/FreeBSD/. -I/usr/home/buildbot/scratch/scratch/llvm/tools/lldb/source/Plugins/Process/FreeBSD/../POSIX -I/usr/home/buildbot/scratch/scratch/llvm/tools/lldb/source/Plugins/Process/FreeBSD/../Utility -fPIC -fvisibility-inlines-hidden -Werror=date-time -std=c++11 -Wall -W -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wcovered-switch-default -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wstring-conversion -fcolor-diagnostics -ffunction-sections -fdata-sections -Wno-deprecated-declarations -Wno-unknown-pragmas -Wno-strict-aliasing -Wno-deprecated-register -Wno-vla-extension -O3 -DNDEBUG-fno-exceptions -fno-rtti -MMD -MT tools/lldb/source/Plugins/Process/FreeBSD/CMakeFiles/lldbPluginProcessFreeBSD.dir/RegisterContextPOSIXProcessMonitor_mips64.cpp.o -MF tools/lldb/source/Plugins/Process/FreeBSD/CMakeFiles/lldbPluginProcessFreeBSD.dir/RegisterContextPOSIXProcessMonitor_mips64.cpp.o.d -o tools/lldb/source/Plugins/Process/FreeBSD/CMakeFiles/lldbPluginProcessFreeBSD.dir/RegisterContextPOSIXProcessMonitor_mips64.cpp.o -c /usr/home/buildbot/scratch/scratch/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_mips64.cpp In file included from /usr/home/buildbot/scratch/scratch/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_mips64.cpp:17: /usr/home/buildbot/scratch/scratch/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_mips64.h:14:10: fatal error: 'Plugin/Process/Utility/lldb-mips-freebsd-register-enums.h' file not found #include "Plugin/Process/Utility/lldb-mips-freebsd-register-enums.h" ^ 1 error generated. ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r299781 - Correct environ parsing on FreeBSD
Author: emaste Date: Fri Apr 7 11:40:25 2017 New Revision: 299781 URL: http://llvm.org/viewvc/llvm-project?rev=299781&view=rev Log: Correct environ parsing on FreeBSD Sync Host:GetEnvironment with Linux and Kamil Rytarowski's forthcoming NetBSD change in review D31784. Modified: lldb/trunk/source/Host/freebsd/Host.cpp Modified: lldb/trunk/source/Host/freebsd/Host.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Host/freebsd/Host.cpp?rev=299781&r1=299780&r2=299781&view=diff == --- lldb/trunk/source/Host/freebsd/Host.cpp (original) +++ lldb/trunk/source/Host/freebsd/Host.cpp Fri Apr 7 11:40:25 2017 @@ -52,18 +52,6 @@ extern char **environ; using namespace lldb; using namespace lldb_private; -size_t Host::GetEnvironment(StringList &env) { - char *v; - char **var = environ; - for (; var != NULL && *var != NULL; ++var) { -v = strchr(*var, (int)'-'); -if (v == NULL) - continue; -env.AppendString(v); - } - return env.GetSize(); -} - static bool GetFreeBSDProcessArgs(const ProcessInstanceInfoMatch *match_info_ptr, ProcessInstanceInfo &process_info) { @@ -243,6 +231,15 @@ bool Host::GetProcessInfo(lldb::pid_t pi return false; } +size_t Host::GetEnvironment(StringList &env) { + char **host_env = environ; + char *env_entry; + size_t i; + for (i = 0; (env_entry = host_env[i]) != NULL; ++i) +env.AppendString(env_entry); + return i; +} + Error Host::ShellExpandArguments(ProcessLaunchInfo &launch_info) { return Error("unimplemented"); } ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r301067 - ThreadSanitizer plugin: match for loop variable with expected type
Author: emaste Date: Fri Apr 21 20:38:54 2017 New Revision: 301067 URL: http://llvm.org/viewvc/llvm-project?rev=301067&view=rev Log: ThreadSanitizer plugin: match for loop variable with expected type Removes Clang warning ThreadSanitizerRuntime.cpp:591:21: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare] Modified: lldb/trunk/source/Plugins/InstrumentationRuntime/ThreadSanitizer/ThreadSanitizerRuntime.cpp Modified: lldb/trunk/source/Plugins/InstrumentationRuntime/ThreadSanitizer/ThreadSanitizerRuntime.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/InstrumentationRuntime/ThreadSanitizer/ThreadSanitizerRuntime.cpp?rev=301067&r1=301066&r2=301067&view=diff == --- lldb/trunk/source/Plugins/InstrumentationRuntime/ThreadSanitizer/ThreadSanitizerRuntime.cpp (original) +++ lldb/trunk/source/Plugins/InstrumentationRuntime/ThreadSanitizer/ThreadSanitizerRuntime.cpp Fri Apr 21 20:38:54 2017 @@ -588,7 +588,7 @@ addr_t ThreadSanitizerRuntime::GetFirstN ModuleSP runtime_module_sp = GetRuntimeModuleSP(); StructuredData::Array *trace_array = trace->GetAsArray(); - for (int i = 0; i < trace_array->GetSize(); i++) { + for (size_t i = 0; i < trace_array->GetSize(); i++) { if (skip_one_frame && i == 0) continue; ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r301100 - Simplify FreeBSD Host.cpp with early returns
Author: emaste Date: Sat Apr 22 21:28:28 2017 New Revision: 301100 URL: http://llvm.org/viewvc/llvm-project?rev=301100&view=rev Log: Simplify FreeBSD Host.cpp with early returns Based on NetBSD's Host.cpp. Also tidy up comments to match NetBSD. Modified: lldb/trunk/source/Host/freebsd/Host.cpp Modified: lldb/trunk/source/Host/freebsd/Host.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Host/freebsd/Host.cpp?rev=301100&r1=301099&r2=301100&view=diff == --- lldb/trunk/source/Host/freebsd/Host.cpp (original) +++ lldb/trunk/source/Host/freebsd/Host.cpp Sat Apr 22 21:28:28 2017 @@ -55,49 +55,53 @@ using namespace lldb_private; static bool GetFreeBSDProcessArgs(const ProcessInstanceInfoMatch *match_info_ptr, ProcessInstanceInfo &process_info) { - if (process_info.ProcessIDIsValid()) { -int mib[4] = {CTL_KERN, KERN_PROC, KERN_PROC_ARGS, - (int)process_info.GetProcessID()}; + if (!process_info.ProcessIDIsValid()) +return false; + + int pid = process_info.GetProcessID(); -char arg_data[8192]; -size_t arg_data_size = sizeof(arg_data); -if (::sysctl(mib, 4, arg_data, &arg_data_size, NULL, 0) == 0) { - DataExtractor data(arg_data, arg_data_size, endian::InlHostByteOrder(), - sizeof(void *)); - lldb::offset_t offset = 0; - const char *cstr; - - cstr = data.GetCStr(&offset); - if (cstr) { -process_info.GetExecutableFile().SetFile(cstr, false); - -if (!(match_info_ptr == NULL || - NameMatches( - process_info.GetExecutableFile().GetFilename().GetCString(), - match_info_ptr->GetNameMatchType(), - match_info_ptr->GetProcessInfo().GetName( - return false; - -Args &proc_args = process_info.GetArguments(); -while (1) { - const uint8_t *p = data.PeekData(offset, 1); - while ((p != NULL) && (*p == '\0') && offset < arg_data_size) { -++offset; -p = data.PeekData(offset, 1); - } - if (p == NULL || offset >= arg_data_size) -return true; - - cstr = data.GetCStr(&offset); - if (cstr) -proc_args.AppendArgument(llvm::StringRef(cstr)); - else -return true; -} - } + int mib[4] = {CTL_KERN, KERN_PROC, KERN_PROC_ARGS, pid}; + + char arg_data[8192]; + size_t arg_data_size = sizeof(arg_data); + if (::sysctl(mib, 4, arg_data, &arg_data_size, NULL, 0) != 0) +return false; + + DataExtractor data(arg_data, arg_data_size, endian::InlHostByteOrder(), + sizeof(void *)); + lldb::offset_t offset = 0; + const char *cstr; + + cstr = data.GetCStr(&offset); + if (!cstr) +return false; + + process_info.GetExecutableFile().SetFile(cstr, false); + + if (!(match_info_ptr == NULL || + NameMatches(process_info.GetExecutableFile().GetFilename().GetCString(), +match_info_ptr->GetNameMatchType(), +match_info_ptr->GetProcessInfo().GetName( +return false; + + Args &proc_args = process_info.GetArguments(); + while (1) { +const uint8_t *p = data.PeekData(offset, 1); +while ((p != NULL) && (*p == '\0') && offset < arg_data_size) { + ++offset; + p = data.PeekData(offset, 1); } +if (p == NULL || offset >= arg_data_size) + break; + +cstr = data.GetCStr(&offset); +if (!cstr) + break; + +proc_args.AppendArgument(llvm::StringRef(cstr)); } - return false; + + return true; } static bool GetFreeBSDProcessCPUType(ProcessInstanceInfo &process_info) { @@ -113,26 +117,31 @@ static bool GetFreeBSDProcessCPUType(Pro static bool GetFreeBSDProcessUserAndGroup(ProcessInstanceInfo &process_info) { struct kinfo_proc proc_kinfo; size_t proc_kinfo_size; + const int pid = process_info.GetProcessID(); + int mib[4] = {CTL_KERN, KERN_PROC, KERN_PROC_PID, pid}; - if (process_info.ProcessIDIsValid()) { -int mib[4] = {CTL_KERN, KERN_PROC, KERN_PROC_PID, - (int)process_info.GetProcessID()}; -proc_kinfo_size = sizeof(struct kinfo_proc); - -if (::sysctl(mib, 4, &proc_kinfo, &proc_kinfo_size, NULL, 0) == 0) { - if (proc_kinfo_size > 0) { -process_info.SetParentProcessID(proc_kinfo.ki_ppid); -process_info.SetUserID(proc_kinfo.ki_ruid); -process_info.SetGroupID(proc_kinfo.ki_rgid); -process_info.SetEffectiveUserID(proc_kinfo.ki_uid); -if (proc_kinfo.ki_ngroups > 0) - process_info.SetEffectiveGroupID(proc_kinfo.ki_groups[0]); -else - process_info.SetEffectiveGroupID(UINT32_MAX); -return true; - } -} - } + if (!process_info.ProcessIDIsValid()) +goto error; + + proc_kinfo_size = sizeof(struct kinfo_proc); + + if (::sysctl(mib, 4, &proc_kinfo, &proc_kinfo_size, NULL, 0
[Lldb-commits] [lldb] r303965 - FreeBSD ProcessMonitor: map TRAP_CAP to a trace trap
Author: emaste Date: Thu May 25 22:15:46 2017 New Revision: 303965 URL: http://llvm.org/viewvc/llvm-project?rev=303965&view=rev Log: FreeBSD ProcessMonitor: map TRAP_CAP to a trace trap In the absense of a more specific handler for TRAP_CAP (generated by ENOTCAPABLE or ECAPMODE while in capability mode) treat it as a trace trap. Obtained from FreeBSD r318884. We should later add an option to have LLDB control the trapcap procctl (as with ASLR), as well as report a specific stop reason. For now this change eliminates an assertion failure from LLDB. Modified: lldb/trunk/source/Plugins/Process/FreeBSD/ProcessMonitor.cpp Modified: lldb/trunk/source/Plugins/Process/FreeBSD/ProcessMonitor.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Process/FreeBSD/ProcessMonitor.cpp?rev=303965&r1=303964&r2=303965&view=diff == --- lldb/trunk/source/Plugins/Process/FreeBSD/ProcessMonitor.cpp (original) +++ lldb/trunk/source/Plugins/Process/FreeBSD/ProcessMonitor.cpp Thu May 25 22:15:46 2017 @@ -1132,6 +1132,10 @@ ProcessMessage ProcessMonitor::MonitorSI case 0: case TRAP_TRACE: +#ifdef TRAP_CAP + // Map TRAP_CAP to a trace trap in the absense of a more specific handler. + case TRAP_CAP: +#endif if (log) log->Printf("ProcessMonitor::%s() received trace event, tid = %" PRIu64 " : si_code = %d", ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r310591 - Report inferior signals as signals, not exceptions, on FreeBSD
Author: emaste Date: Thu Aug 10 06:47:17 2017 New Revision: 310591 URL: http://llvm.org/viewvc/llvm-project?rev=310591&view=rev Log: Report inferior signals as signals, not exceptions, on FreeBSD This is the FreeBSD equivalent of r238549. This serves 2 purposes: * LLDB should handle inferior process signals SIGSEGV/SIGILL/SIGBUS/ SIGFPE the way it is suppose to be handled. Prior to this fix these signals will neither create a coredump, nor exit from the debugger or work for signal handling scenario. * eInvalidCrashReason need not report "unknown crash reason" if we have a valid si_signo llvm.org/pr23699 Patch by Karnajit Wangkhem Differential Revision: https://reviews.llvm.org/D35223 Modified: lldb/trunk/packages/Python/lldbsuite/test/functionalities/inferior-crashing/TestInferiorCrashing.py lldb/trunk/packages/Python/lldbsuite/test/functionalities/inferior-crashing/recursive-inferior/TestRecursiveInferior.py lldb/trunk/packages/Python/lldbsuite/test/functionalities/signal/handle-segv/TestHandleSegv.py lldb/trunk/source/Plugins/Process/FreeBSD/FreeBSDThread.cpp lldb/trunk/source/Plugins/Process/FreeBSD/POSIXStopInfo.cpp lldb/trunk/source/Plugins/Process/FreeBSD/POSIXStopInfo.h lldb/trunk/source/Plugins/Process/FreeBSD/ProcessMonitor.cpp Modified: lldb/trunk/packages/Python/lldbsuite/test/functionalities/inferior-crashing/TestInferiorCrashing.py URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/functionalities/inferior-crashing/TestInferiorCrashing.py?rev=310591&r1=310590&r2=310591&view=diff == --- lldb/trunk/packages/Python/lldbsuite/test/functionalities/inferior-crashing/TestInferiorCrashing.py (original) +++ lldb/trunk/packages/Python/lldbsuite/test/functionalities/inferior-crashing/TestInferiorCrashing.py Thu Aug 10 06:47:17 2017 @@ -17,9 +17,6 @@ class CrashingInferiorTestCase(TestBase) mydir = TestBase.compute_mydir(__file__) @expectedFailureAll( -oslist=['freebsd'], -bugnumber="llvm.org/pr23699 SIGSEGV is reported as exception, not signal") -@expectedFailureAll( oslist=["windows"], bugnumber="llvm.org/pr24778, This actually works, but the test relies on the output format instead of the API") def test_inferior_crashing(self): @@ -60,7 +57,6 @@ class CrashingInferiorTestCase(TestBase) self.build() self.inferior_crashing_step() -@expectedFailureAll(oslist=['freebsd'], bugnumber='llvm.org/pr24939') @expectedFailureAll( oslist=["windows"], bugnumber="llvm.org/pr24778, This actually works, but the test relies on the output format instead of the API") @@ -76,6 +72,7 @@ class CrashingInferiorTestCase(TestBase) # Inferior exits after stepping after a segfault. This is working as # intended IMHO. @skipIfLinux +@skipIfFreeBSD def test_inferior_crashing_expr_step_and_expr(self): """Test that lldb expressions work before and after stepping after a crash.""" self.build() @@ -110,7 +107,7 @@ class CrashingInferiorTestCase(TestBase) # The exact stop reason depends on the platform if self.platformIsDarwin(): stop_reason = 'stop reason = EXC_BAD_ACCESS' -elif self.getPlatform() == "linux": +elif self.getPlatform() == "linux" or self.getPlatform() == "freebsd": stop_reason = 'stop reason = signal SIGSEGV' else: stop_reason = 'stop reason = invalid address' Modified: lldb/trunk/packages/Python/lldbsuite/test/functionalities/inferior-crashing/recursive-inferior/TestRecursiveInferior.py URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/functionalities/inferior-crashing/recursive-inferior/TestRecursiveInferior.py?rev=310591&r1=310590&r2=310591&view=diff == --- lldb/trunk/packages/Python/lldbsuite/test/functionalities/inferior-crashing/recursive-inferior/TestRecursiveInferior.py (original) +++ lldb/trunk/packages/Python/lldbsuite/test/functionalities/inferior-crashing/recursive-inferior/TestRecursiveInferior.py Thu Aug 10 06:47:17 2017 @@ -16,9 +16,6 @@ class CrashingRecursiveInferiorTestCase( mydir = TestBase.compute_mydir(__file__) -@expectedFailureAll( -oslist=['freebsd'], -bugnumber="llvm.org/pr23699 SIGSEGV is reported as exception, not signal") @expectedFailureAll(oslist=["windows"], bugnumber="llvm.org/pr24778") def test_recursive_inferior_crashing(self): """Test that lldb reliably catches the inferior crashing (command).""" @@ -50,7 +47,6 @@ class CrashingRecursiveInferiorTestCase( self.build() self.recursive_inferior_crashing_step() -@expectedFailureAll(oslist=['freebsd'], bugnumber='llvm.org/pr24939') @expectedFailureAll(oslist=["windows
[Lldb-commits] [lldb] r310624 - remove FreeBSD xfail decorator from TestExitDuringBreak
Author: emaste Date: Thu Aug 10 09:48:36 2017 New Revision: 310624 URL: http://llvm.org/viewvc/llvm-project?rev=310624&view=rev Log: remove FreeBSD xfail decorator from TestExitDuringBreak This test passes for me on FreeBSD 10 and 12(-CURRENT). llvm.org/pr18190 Modified: lldb/trunk/packages/Python/lldbsuite/test/functionalities/thread/exit_during_break/TestExitDuringBreak.py Modified: lldb/trunk/packages/Python/lldbsuite/test/functionalities/thread/exit_during_break/TestExitDuringBreak.py URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/functionalities/thread/exit_during_break/TestExitDuringBreak.py?rev=310624&r1=310623&r2=310624&view=diff == --- lldb/trunk/packages/Python/lldbsuite/test/functionalities/thread/exit_during_break/TestExitDuringBreak.py (original) +++ lldb/trunk/packages/Python/lldbsuite/test/functionalities/thread/exit_during_break/TestExitDuringBreak.py Thu Aug 10 09:48:36 2017 @@ -26,9 +26,6 @@ class ExitDuringBreakpointTestCase(TestB @expectedFailureAll( oslist=["linux"], bugnumber="llvm.org/pr15824 thread states not properly maintained") -@expectedFailureAll( -oslist=["freebsd"], -bugnumber="llvm.org/pr18190 thread states not properly maintained") def test(self): """Test thread exit during breakpoint handling.""" self.build(dictionary=self.getBuildFlags()) ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] Details of radar rdar://problem/24599697
On 20 June 2016 at 19:01, Sean Callanan via lldb-commits wrote: > Author: spyffe > Date: Mon Jun 20 18:01:11 2016 > New Revision: 273211 > > URL: http://llvm.org/viewvc/llvm-project?rev=273211&view=rev > Log: > Test that lldb calls the right 'printf' even when a 'printf' method exists. > ... > + > +lldbinline.MakeInlineTest(__file__, globals(), > [decorators.expectedFailureAll(bugnumber="rdar://problem/24599697")] ) This test is consistently reporting unexpected pass on FreeBSD. Can you please provide details on the actual failure in order to determine the best path forward here? ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r310626 - remove FreeBSD xfail decorator from TestCallStdStringFunction
Author: emaste Date: Thu Aug 10 10:01:51 2017 New Revision: 310626 URL: http://llvm.org/viewvc/llvm-project?rev=310626&view=rev Log: remove FreeBSD xfail decorator from TestCallStdStringFunction This test is consistently reporting unexpected pass for me on FreeBSD 10 and 12. It was failing on the old FreeBSD buildbot which has now been retired for some time. Will investigate further if this fails once a new buildbot is configured and running tests. llvm.org/pr17807 Modified: lldb/trunk/packages/Python/lldbsuite/test/expression_command/call-function/TestCallStdStringFunction.py Modified: lldb/trunk/packages/Python/lldbsuite/test/expression_command/call-function/TestCallStdStringFunction.py URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/expression_command/call-function/TestCallStdStringFunction.py?rev=310626&r1=310625&r2=310626&view=diff == --- lldb/trunk/packages/Python/lldbsuite/test/expression_command/call-function/TestCallStdStringFunction.py (original) +++ lldb/trunk/packages/Python/lldbsuite/test/expression_command/call-function/TestCallStdStringFunction.py Thu Aug 10 10:01:51 2017 @@ -26,9 +26,6 @@ class ExprCommandCallFunctionTestCase(Te @expectedFailureAll( compiler="icc", bugnumber="llvm.org/pr14437, fails with ICC 13.1") -@expectedFailureAll( -oslist=['freebsd'], -bugnumber='llvm.org/pr17807 Fails on FreeBSD buildbot') @expectedFailureAll(oslist=["windows"], bugnumber="llvm.org/pr21765") def test_with(self): """Test calling std::String member function.""" ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r310644 - remove FreeBSD xfail decorator from TestCppNsImport
Author: emaste Date: Thu Aug 10 11:26:52 2017 New Revision: 310644 URL: http://llvm.org/viewvc/llvm-project?rev=310644&view=rev Log: remove FreeBSD xfail decorator from TestCppNsImport The Linux xfail decorator was removed in r272326 with the claim that the test "runs reliably on the linux x86 buildbot." It also runs reliably on FreeBSD for me. llvm.org/pr25925 Modified: lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/nsimport/TestCppNsImport.py Modified: lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/nsimport/TestCppNsImport.py URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/nsimport/TestCppNsImport.py?rev=310644&r1=310643&r2=310644&view=diff == --- lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/nsimport/TestCppNsImport.py (original) +++ lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/nsimport/TestCppNsImport.py Thu Aug 10 11:26:52 2017 @@ -11,7 +11,6 @@ class TestCppNsImport(TestBase): mydir = TestBase.compute_mydir(__file__) -@expectedFailureAll(oslist=['freebsd'], bugnumber="llvm.org/pr25925") def test_with_run_command(self): """Tests imported namespaces in C++.""" self.build() ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r311002 - Make i386-*-freebsd expression work on JIT path
Author: emaste Date: Wed Aug 16 05:55:02 2017 New Revision: 311002 URL: http://llvm.org/viewvc/llvm-project?rev=311002&view=rev Log: Make i386-*-freebsd expression work on JIT path * Enable i386 ABI creation for freebsd * Added an extra argument in ABISysV_i386::PrepareTrivialCall for mmap syscall * Unlike linux, the last argument of mmap is actually 64-bit(off_t). This requires us to push an additional word for the higher order bits. * Prior to this change, ktrace dump will show mmap failures due to invalid argument coming from the 6th mmap argument. Patch by Karnajit Wangkhem Differential Revision: https://reviews.llvm.org/D34776 Modified: lldb/trunk/include/lldb/Target/Platform.h lldb/trunk/source/Plugins/ABI/SysV-i386/ABISysV_i386.cpp lldb/trunk/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp lldb/trunk/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.h lldb/trunk/source/Plugins/Platform/Linux/PlatformLinux.cpp lldb/trunk/source/Plugins/Platform/Linux/PlatformLinux.h lldb/trunk/source/Plugins/Platform/NetBSD/PlatformNetBSD.cpp lldb/trunk/source/Plugins/Platform/NetBSD/PlatformNetBSD.h lldb/trunk/source/Plugins/Platform/OpenBSD/PlatformOpenBSD.cpp lldb/trunk/source/Plugins/Platform/OpenBSD/PlatformOpenBSD.h lldb/trunk/source/Plugins/Process/Utility/InferiorCallPOSIX.cpp lldb/trunk/source/Target/Platform.cpp Modified: lldb/trunk/include/lldb/Target/Platform.h URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Target/Platform.h?rev=311002&r1=311001&r2=311002&view=diff == --- lldb/trunk/include/lldb/Target/Platform.h (original) +++ lldb/trunk/include/lldb/Target/Platform.h Wed Aug 16 05:55:02 2017 @@ -53,6 +53,7 @@ public: }; typedef std::shared_ptr PlatformPropertiesSP; +typedef llvm::SmallVector MmapArgList; //-- /// @class Platform Platform.h "lldb/Target/Platform.h" @@ -628,8 +629,11 @@ public: virtual Status Unlink(const FileSpec &file_spec); - virtual uint64_t ConvertMmapFlagsToPlatform(const ArchSpec &arch, - unsigned flags); + virtual MmapArgList GetMmapArgumentList(const ArchSpec &arch, + lldb::addr_t addr, + lldb::addr_t length, + unsigned prot, unsigned flags, + lldb::addr_t fd, lldb::addr_t offset); virtual bool GetSupportsRSync() { return m_supports_rsync; } Modified: lldb/trunk/source/Plugins/ABI/SysV-i386/ABISysV_i386.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/ABI/SysV-i386/ABISysV_i386.cpp?rev=311002&r1=311001&r2=311002&view=diff == --- lldb/trunk/source/Plugins/ABI/SysV-i386/ABISysV_i386.cpp (original) +++ lldb/trunk/source/Plugins/ABI/SysV-i386/ABISysV_i386.cpp Wed Aug 16 05:55:02 2017 @@ -206,7 +206,7 @@ ABISP ABISysV_i386::CreateInstance(lldb::ProcessSP process_sp, const ArchSpec &arch) { static ABISP g_abi_sp; if ((arch.GetTriple().getArch() == llvm::Triple::x86) && - arch.GetTriple().isOSLinux()) { + (arch.GetTriple().isOSLinux() || arch.GetTriple().isOSFreeBSD())) { if (!g_abi_sp) g_abi_sp.reset(new ABISysV_i386(process_sp)); return g_abi_sp; Modified: lldb/trunk/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp?rev=311002&r1=311001&r2=311002&view=diff == --- lldb/trunk/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp (original) +++ lldb/trunk/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp Wed Aug 16 05:55:02 2017 @@ -314,13 +314,19 @@ void PlatformFreeBSD::CalculateTrapHandl m_trap_handlers.push_back(ConstString("_sigtramp")); } -uint64_t PlatformFreeBSD::ConvertMmapFlagsToPlatform(const ArchSpec &arch, - unsigned flags) { +MmapArgList PlatformFreeBSD::GetMmapArgumentList(const ArchSpec &arch, + addr_t addr, addr_t length, + unsigned prot, unsigned flags, + addr_t fd, addr_t offset) { uint64_t flags_platform = 0; if (flags & eMmapFlagsPrivate) flags_platform |= MAP_PRIVATE; if (flags & eMmapFlagsAnon) flags_platform |= MAP_ANON; - return flags_platform; + + MmapArgList args({addr, length, prot, flags_platform, fd, offset}); + if (arch.GetTriple().getArch() == llvm::Triple::x86) +args.push_back(0); + return args; } Modified: lldb/trunk/source/Plugins/Platform/FreeBSD/PlatformFre
[Lldb-commits] [lldb] r311003 - convert hard tabs to spaces in PlatformOpenBSD.cpp
Author: emaste Date: Wed Aug 16 06:10:07 2017 New Revision: 311003 URL: http://llvm.org/viewvc/llvm-project?rev=311003&view=rev Log: convert hard tabs to spaces in PlatformOpenBSD.cpp Another case of this was responsible for the whitespace conflict in D34776. Modified: lldb/trunk/source/Plugins/Platform/OpenBSD/PlatformOpenBSD.cpp Modified: lldb/trunk/source/Plugins/Platform/OpenBSD/PlatformOpenBSD.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Platform/OpenBSD/PlatformOpenBSD.cpp?rev=311003&r1=311002&r2=311003&view=diff == --- lldb/trunk/source/Plugins/Platform/OpenBSD/PlatformOpenBSD.cpp (original) +++ lldb/trunk/source/Plugins/Platform/OpenBSD/PlatformOpenBSD.cpp Wed Aug 16 06:10:07 2017 @@ -133,7 +133,7 @@ PlatformOpenBSD::PlatformOpenBSD(bool is PlatformOpenBSD::~PlatformOpenBSD() = default; bool PlatformOpenBSD::GetSupportedArchitectureAtIndex(uint32_t idx, - ArchSpec &arch) { + ArchSpec &arch) { if (IsHost()) { ArchSpec hostArch = HostInfo::GetArchitecture(HostInfo::eArchKindDefault); if (hostArch.GetTriple().isOSOpenBSD()) { ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r312430 - FreeBSD: attach to pid from different cwd
Author: emaste Date: Sat Sep 2 18:41:31 2017 New Revision: 312430 URL: http://llvm.org/viewvc/llvm-project?rev=312430&view=rev Log: FreeBSD: attach to pid from different cwd attach by pid worked when running from the directory from which the target was launched, but failed from a different directory. Use the kern.proc.pathname sysctl to locate the target, falling back to the original case of the target's argv[0] if that fails. Based on a patch from Vignesh Balu. Differential Revision: https://reviews.llvm.org/D32271 Modified: lldb/trunk/source/Host/freebsd/Host.cpp Modified: lldb/trunk/source/Host/freebsd/Host.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Host/freebsd/Host.cpp?rev=312430&r1=312429&r2=312430&view=diff == --- lldb/trunk/source/Host/freebsd/Host.cpp (original) +++ lldb/trunk/source/Host/freebsd/Host.cpp Sat Sep 2 18:41:31 2017 @@ -73,7 +73,14 @@ GetFreeBSDProcessArgs(const ProcessInsta if (!cstr) return false; - process_info.GetExecutableFile().SetFile(cstr, false); + // Get pathname for pid. If that fails fall back to argv[0]. + char pathname[MAXPATHLEN]; + size_t pathname_len = sizeof(pathname); + mib[2] = KERN_PROC_PATHNAME; + if (::sysctl(mib, 4, pathname, &pathname_len, NULL, 0) == 0) +process_info.GetExecutableFile().SetFile(pathname, false); + else +process_info.GetExecutableFile().SetFile(cstr, false); if (!(match_info_ptr == NULL || NameMatches(process_info.GetExecutableFile().GetFilename().GetCString(), ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r312431 - Add test case for attach-by-pid from different cwd
Author: emaste Date: Sat Sep 2 18:44:35 2017 New Revision: 312431 URL: http://llvm.org/viewvc/llvm-project?rev=312431&view=rev Log: Add test case for attach-by-pid from different cwd This was failing on FreeBSD prior to r312430. Patch by Vignesh Balu. Differential Revision: https://reviews.llvm.org/D32522 Modified: lldb/trunk/packages/Python/lldbsuite/test/functionalities/process_attach/TestProcessAttach.py Modified: lldb/trunk/packages/Python/lldbsuite/test/functionalities/process_attach/TestProcessAttach.py URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/functionalities/process_attach/TestProcessAttach.py?rev=312431&r1=312430&r2=312431&view=diff == --- lldb/trunk/packages/Python/lldbsuite/test/functionalities/process_attach/TestProcessAttach.py (original) +++ lldb/trunk/packages/Python/lldbsuite/test/functionalities/process_attach/TestProcessAttach.py Sat Sep 2 18:44:35 2017 @@ -8,6 +8,7 @@ from __future__ import print_function import os import time import lldb +import shutil from lldbsuite.test.decorators import * from lldbsuite.test.lldbtest import * from lldbsuite.test import lldbutil @@ -34,6 +35,29 @@ class ProcessAttachTestCase(TestBase): self.runCmd("process attach -p " + str(popen.pid)) target = self.dbg.GetSelectedTarget() + +process = target.GetProcess() +self.assertTrue(process, PROCESS_IS_VALID) + +def test_attach_to_process_from_different_dir_by_id(self): +"""Test attach by process id""" +try: +os.mkdir(os.path.join(os.getcwd(),'newdir')) +except OSError, e: +if e.errno != os.errno.EEXIST: +raise + self.buildProgram('main.cpp',os.path.join(os.getcwd(),'newdir','proc_attach')) +exe = os.path.join('.','newdir','proc_attach') +self.addTearDownHook(lambda: shutil.rmtree(os.path.join(os.getcwd( + +# Spawn a new process +popen = self.spawnSubprocess(exe) +self.addTearDownHook(self.cleanupSubprocesses) + +os.chdir('newdir') +self.runCmd("process attach -p " + str(popen.pid)) + +target = self.dbg.GetSelectedTarget() process = target.GetProcess() self.assertTrue(process, PROCESS_IS_VALID) ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [lldb] r313210 - Fix for bug 34532 - A few rough corners related to post-mortem debugging (core/minidump)
On 13 September 2017 at 18:57, Adrian McCarthy via lldb-commits wrote: > Author: amccarth > Date: Wed Sep 13 15:57:11 2017 > New Revision: 313210 > > URL: http://llvm.org/viewvc/llvm-project?rev=313210&view=rev > Log: > Fix for bug 34532 - A few rough corners related to post-mortem debugging > (core/minidump) I suspect this was responsible for breaking debugging on FreeBSD: ``` % bin/lldb /bin/ls (lldb) target create "/bin/ls" Current executable set to '/bin/ls' (x86_64). (lldb) b main Breakpoint 1: where = ls`main + 33 at ls.c:163, address = 0x004023f1 (lldb) run Process 42854 launching error: process resume at entry point failed: error: freebsd does not support resuming processes (lldb) ``` I haven't bisected yet to confirm, just reviewed changes between rL312270 (working) and rL313327 (failing). It looks like the fix may be straightforward, but I'm traveling to a conference and won't be able to look for a short while so am noting it here. ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [lldb] r313655 - Re-land r313210 - Fix for bug 34532 - A few rough corners related to post-mortem debugging (core/minidump)
On 19 September 2017 at 14:07, Adrian McCarthy via lldb-commits wrote: > Author: amccarth > Date: Tue Sep 19 11:07:33 2017 > New Revision: 313655 > > URL: http://llvm.org/viewvc/llvm-project?rev=313655&view=rev > Log: > Re-land r313210 - Fix for bug 34532 - A few rough corners related to > post-mortem debugging (core/minidump) Thanks, tests look good on FreeBSD now -- as good as they have recently, at least (four failing tests, four timeouts, one error, and a few unexpected successes). ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r314672 - Improve FreeBSD kernel debugging
Author: emaste Date: Mon Oct 2 07:35:07 2017 New Revision: 314672 URL: http://llvm.org/viewvc/llvm-project?rev=314672&view=rev Log: Improve FreeBSD kernel debugging FreeBSD kernel modules are actually relocatable (.o) ELF files and this previously caused some issues for LLDB. This change addresses these when using lldb to symbolicate FreeBSD kernel backtraces. The major problems: - Relocations were not being applied to the DWARF debug info despite there being code to do this. Several issues prevented it from working: - Relocations are computed at the same time as the symbol table, but in the case of split debug files, symbol table parsing always redirects to the primary object file, meaning that relocations would never be applied in the debug file. - There's actually no guarantee that the symbol table has been parsed yet when trying to parse debug information. - When actually applying relocations, it will segfault because the object files are not mapped with MAP_PRIVATE and PROT_WRITE. - LLDB returned invalid results when performing ordinary address-to- symbol resolution. It turned out that the addresses specified in the section headers were all 0, so LLDB believed all the sections had overlapping "file addresses" and would sometimes return a symbol from the wrong section. Patch by Brian Koropoff Differential Revision: https://reviews.llvm.org/D38142 Modified: lldb/trunk/include/lldb/Core/Section.h lldb/trunk/include/lldb/Symbol/ArmUnwindInfo.h lldb/trunk/include/lldb/Symbol/ObjectFile.h lldb/trunk/source/Core/Section.cpp lldb/trunk/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp lldb/trunk/source/Plugins/ObjectFile/ELF/ObjectFileELF.h lldb/trunk/source/Plugins/ObjectFile/JIT/ObjectFileJIT.cpp lldb/trunk/source/Plugins/ObjectFile/JIT/ObjectFileJIT.h lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp lldb/trunk/source/Symbol/ArmUnwindInfo.cpp lldb/trunk/source/Symbol/ObjectFile.cpp Modified: lldb/trunk/include/lldb/Core/Section.h URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Core/Section.h?rev=314672&r1=314671&r2=314672&view=diff == --- lldb/trunk/include/lldb/Core/Section.h (original) +++ lldb/trunk/include/lldb/Core/Section.h Mon Oct 2 07:35:07 2017 @@ -238,7 +238,7 @@ public: /// section has no data or \a offset is not a valid offset /// in this section. //-- - lldb::offset_t GetSectionData(DataExtractor &data) const; + lldb::offset_t GetSectionData(DataExtractor &data); uint32_t GetLog2Align() { return m_log2align; } @@ -247,6 +247,10 @@ public: // Get the number of host bytes required to hold a target byte uint32_t GetTargetByteSize() const { return m_target_byte_size; } + bool IsRelocated() const { return m_relocated; } + + void SetIsRelocated(bool b) { m_relocated = b; } + protected: ObjectFile *m_obj_file; // The object file that data for this section should // be read from @@ -274,7 +278,8 @@ protected: m_thread_specific : 1, // This section is thread specific m_readable : 1, // If this section has read permissions m_writable : 1, // If this section has write permissions - m_executable : 1;// If this section has executable permissions + m_executable : 1,// If this section has executable permissions + m_relocated : 1; // If this section has had relocations applied uint32_t m_target_byte_size; // Some architectures have non-8-bit byte size. // This is specified as // as a multiple number of a host bytes Modified: lldb/trunk/include/lldb/Symbol/ArmUnwindInfo.h URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Symbol/ArmUnwindInfo.h?rev=314672&r1=314671&r2=314672&view=diff == --- lldb/trunk/include/lldb/Symbol/ArmUnwindInfo.h (original) +++ lldb/trunk/include/lldb/Symbol/ArmUnwindInfo.h Mon Oct 2 07:35:07 2017 @@ -31,7 +31,7 @@ namespace lldb_private { class ArmUnwindInfo { public: - ArmUnwindInfo(const ObjectFile &objfile, lldb::SectionSP &arm_exidx, + ArmUnwindInfo(ObjectFile &objfile, lldb::SectionSP &arm_exidx, lldb::SectionSP &arm_extab); ~ArmUnwindInfo(); Modified: lldb/trunk/include/lldb/Symbol/ObjectFile.h URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Symbol/ObjectFile.h?rev=314672&r1=314671&r2=314672&view=diff == --- lldb/trunk/include/lldb/Symbol/ObjectFile.h (original) +++ lldb/trunk/include/lldb/Symbol/ObjectFile.h Mon Oct 2 07:35:07 2017 @@ -352,6 +352,12 @@ public: virtual Symtab *GetSymtab()
Re: [Lldb-commits] [lldb] r314458 - [Expression parser] Setting to enable use of ExternalASTMerger
On 28 September 2017 at 22:20, Sean Callanan via lldb-commits wrote: > Author: spyffe > Date: Thu Sep 28 13:20:25 2017 > New Revision: 314458 > > URL: http://llvm.org/viewvc/llvm-project?rev=314458&view=rev > Log: > [Expression parser] Setting to enable use of ExternalASTMerger > ... > + lldbassert(!"No mechanism for completing a type!"); Clang 5.0.0 in FreeBSD's base system produces a warning on these lldbasserts "implicit conversion turns string literal into bool". I'm not aware of a nice, concise alternative idiom. This eliminates the warning and may be the best option: lldbassert(false && "string"); I'll switch these over if you have no objection. ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [lldb] r316728 - Default to using in-tree clang for building test executables
On 26 October 2017 at 22:24, Pavel Labath via lldb-commits wrote: > Author: labath > Date: Thu Oct 26 19:24:04 2017 > New Revision: 316728 > > URL: http://llvm.org/viewvc/llvm-project?rev=316728&view=rev > Log: > Default to using in-tree clang for building test executables The FreeBSD buildbot is broken with -- Could NOT find LibXml2 (missing: LIBXML2_LIBRARIES LIBXML2_INCLUDE_DIR) -- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE) -- Symbols (liblldb): exporting all symbols from the lldb namespace CMake Error at tools/lldb/CMakeLists.txt:78 (message): LLDB test compilers not specified. Tests will not run I probably won't be able to investigate this weekend, but will take a look early next week if nobody else has before then. ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r283472 - Match printf field width arg and type
Author: emaste Date: Thu Oct 6 12:55:22 2016 New Revision: 283472 URL: http://llvm.org/viewvc/llvm-project?rev=283472&view=rev Log: Match printf field width arg and type A '*' as a field width or precision specifies that the field width or precision is supplied by an int argument. Modified: lldb/trunk/source/Interpreter/Args.cpp Modified: lldb/trunk/source/Interpreter/Args.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Interpreter/Args.cpp?rev=283472&r1=283471&r2=283472&view=diff == --- lldb/trunk/source/Interpreter/Args.cpp (original) +++ lldb/trunk/source/Interpreter/Args.cpp Thu Oct 6 12:55:22 2016 @@ -213,7 +213,7 @@ void Args::Dump(Stream &s, const char *l int i = 0; for (auto &entry : m_entries) { s.Indent(); -s.Printf("%s[%zi]=\"%*s\"\n", label_name, i++, entry.ref.size(), +s.Printf("%s[%zi]=\"%*s\"\n", label_name, i++, int(entry.ref.size()), entry.ref.data()); } s.Printf("%s[%zi]=NULL\n", label_name, i); ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D25329: Add bound violation handling for Intel(R) Memory Protection Extensions (Intel(R) MPX)
On 6 October 2016 at 16:42, Zachary Turner wrote: > I'm not sure actually. I only noticed this because I was in IRC and I saw > the message go by about the failure. > > Ed (already CC'ed) maintains the FreeBSD builder, so he might have an answer > for you. I'm not sure why it's not on the build.html list - I'll add it soon. ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [PATCH] D25362: Fix build failure on lldb-amd64-ninja-freebsd11 error caused by rL283474
emaste accepted this revision. emaste added a reviewer: emaste. emaste added a comment. This revision is now accepted and ready to land. Not tested, but looks reasonable to me. I think we should avoid `siginfo_t` altogether here in order to support cross-debugging, but that's for a different change. https://reviews.llvm.org/D25362 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [PATCH] D25756: FreeBSD ARM support for software single step.
emaste added a comment. In https://reviews.llvm.org/D25756#574258, @labath wrote: > No, I'm saying someone *should*. :P > > Ed looked into that at some point but, I don't think get got too far with it. > Adding @emaste, who should probably review this. Yes, it needs to be done. Maybe now that NetBSD support is progressing a few of us can work together to make it happen. Repository: rL LLVM https://reviews.llvm.org/D25756 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [PATCH] D25756: FreeBSD ARM support for software single step.
emaste added a comment. On a quick look this seems OK. I'll try to test/review in detail. Comment at: source/Plugins/Process/FreeBSD/ProcessFreeBSD.cpp:925 + + // eRegisterKindDWARF -> RegsiterValue + std::unordered_map m_register_values; typo here Repository: rL LLVM https://reviews.llvm.org/D25756 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [PATCH] D25756: FreeBSD ARM support for software single step.
emaste added a subscriber: krytarowski. emaste added a comment. On a quick look this seems OK. I'll try to test/review in detail. In https://reviews.llvm.org/D25756#576642, @dmikulin wrote: > Thanks Pavel! I'll start working on it. Do you know when lldb-server Linux > changes were committed? I want to use those patches as a template, but it's > hard to locate them digging through thousands of commit log entries... I recalled discussing this when the Linux changes were going in and wanted to point you at a mailing list archive, but it seems it was only in private mail. I'll try to send you the relevant threads. Have a look at https://reviews.llvm.org/rL212069 for starters. > Ed, you mentioned NetBSD work. Do you know where they are in their > implementation? Anything I can do to help? Or should I start from scratch? I hope @krytarowski can comment on that. It's probably best to move this discussion to a new thread on lldb-dev. Repository: rL LLVM https://reviews.llvm.org/D25756 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] LLGS for Free/NetBSD (was: Re: [PATCH] D25756: FreeBSD ARM support for software single step.)
On 24 October 2016 at 06:26, Pavel Labath wrote: > > It's not my place to tell you how to work, but I'd recommend a > different approach to this. If you base your work on the current > FreeBSD in-process plugin, then when you get around to actually > implementing remote support, you will find that you will have to > rewrite most of what you have already done to work with lldb-server, > as it uses completely different class hierarchies and everything. I'd > recommend starting with lldb-server right away. It's going to be a bit > more work as (I assume) freebsd implementation is closer to what you > need than linux, but I think it will save you time in the long run. I > can help you with factoring out any linux-specific code that you > encounter. I definitely second the approach Pavel suggests here, and am happy to work with others on refactoring the Linux lldb-server so that we can get it to support both FreeBSD and NetBSD at the same time. A direct port of the current FreeBSD support probably would result in a basic level of support running sooner, but that work would be largely thrown away in a future migration to lldb-server. ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [PATCH] D26300: ELF core: Adding parsing of the floating-point and SSE registers on x86 32/64 bit elf core files
emaste added a comment. We need to make sure this does not regress FreeBSD core handling -- I will test as soon as I can, and add FXSAVE parsing for FreeBSD. I'll use fpr_sse.cpp to generate FreeBSD core files as well (although note that we get ~2.5MB cores with default configuration, so tweaking malloc options will be necessary). Please document how the core files were created (e.g. compiler invocation), perhaps as a comment in the source file. Comment at: packages/Python/lldbsuite/test/functionalities/postmortem/linux-core/TestLinuxCore.py:107 +@skipIf(oslist=['windows']) +@skipIf(triple='^mips') Curious, why are these skipped only on windows? https://reviews.llvm.org/D26300 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [PATCH] D26315: make-core.sh: add FreeBSD support
emaste created this revision. emaste added a reviewer: labath. emaste added a subscriber: lldb-commits. https://reviews.llvm.org/D26315 Files: packages/Python/lldbsuite/test/functionalities/postmortem/linux-core/make-core.sh Index: packages/Python/lldbsuite/test/functionalities/postmortem/linux-core/make-core.sh === --- packages/Python/lldbsuite/test/functionalities/postmortem/linux-core/make-core.sh +++ packages/Python/lldbsuite/test/functionalities/postmortem/linux-core/make-core.sh @@ -1,4 +1,30 @@ -#! /bin/bash +#! /bin/sh + +linux_check_core_pattern() +{ +if grep -q '^|' &2 +exit 1 +;; +esac set -e -x @@ -10,13 +36,8 @@ exit 1 fi -if grep -q '^|' smaller core files. Index: packages/Python/lldbsuite/test/functionalities/postmortem/linux-core/make-core.sh === --- packages/Python/lldbsuite/test/functionalities/postmortem/linux-core/make-core.sh +++ packages/Python/lldbsuite/test/functionalities/postmortem/linux-core/make-core.sh @@ -1,4 +1,30 @@ -#! /bin/bash +#! /bin/sh + +linux_check_core_pattern() +{ +if grep -q '^|' &2 +exit 1 +;; +esac set -e -x @@ -10,13 +36,8 @@ exit 1 fi -if grep -q '^|' smaller core files. ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [PATCH] D26315: make-core.sh: add FreeBSD support
emaste added a comment. Output on FreeBSD, with the patch: % sh make-core.sh main.c + file=main.c + [ -z main.c ] + [ FreeBSD '=' Linux ] + ulimit -c 1000 + ulimit -c + real_limit=1000 + [ 1000 -lt 100 ] + cc -nostdlib -static -g main.c -o a.out + cat Executable file is in a.out. Core file will be saved according to pattern %N.core. + ulimit -s 8 + exec ./a.out zsh: segmentation fault (core dumped) sh make-core.sh main.c https://reviews.llvm.org/D26315 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [PATCH] D26300: ELF core: Adding parsing of the floating-point and SSE registers on x86 32/64 bit elf core files
emaste added a comment. Good point. https://reviews.llvm.org/D26315 has the change to add FreeBSD support to make-core.sh -- just avoiding /bin/bash, and the core file handler check. I think we should be able to rename this directory to elf-core, and rename the individual cores to e.g. linux-i386.core, etc. https://reviews.llvm.org/D26300 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [PATCH] D26315: make-core.sh: add FreeBSD support
This revision was automatically updated to reflect the committed changes. Closed by commit rL286035: make-core.sh: add FreeBSD support (authored by emaste). Changed prior to commit: https://reviews.llvm.org/D26315?vs=76951&id=76968#toc Repository: rL LLVM https://reviews.llvm.org/D26315 Files: lldb/trunk/packages/Python/lldbsuite/test/functionalities/postmortem/linux-core/make-core.sh Index: lldb/trunk/packages/Python/lldbsuite/test/functionalities/postmortem/linux-core/make-core.sh === --- lldb/trunk/packages/Python/lldbsuite/test/functionalities/postmortem/linux-core/make-core.sh +++ lldb/trunk/packages/Python/lldbsuite/test/functionalities/postmortem/linux-core/make-core.sh @@ -1,4 +1,30 @@ -#! /bin/bash +#! /bin/sh + +linux_check_core_pattern() +{ +if grep -q '^|' &2 +exit 1 +;; +esac set -e -x @@ -10,13 +36,8 @@ exit 1 fi -if grep -q '^|' smaller core files. Index: lldb/trunk/packages/Python/lldbsuite/test/functionalities/postmortem/linux-core/make-core.sh === --- lldb/trunk/packages/Python/lldbsuite/test/functionalities/postmortem/linux-core/make-core.sh +++ lldb/trunk/packages/Python/lldbsuite/test/functionalities/postmortem/linux-core/make-core.sh @@ -1,4 +1,30 @@ -#! /bin/bash +#! /bin/sh + +linux_check_core_pattern() +{ +if grep -q '^|' &2 +exit 1 +;; +esac set -e -x @@ -10,13 +36,8 @@ exit 1 fi -if grep -q '^|' smaller core files. ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r286035 - make-core.sh: add FreeBSD support
Author: emaste Date: Sat Nov 5 09:45:13 2016 New Revision: 286035 URL: http://llvm.org/viewvc/llvm-project?rev=286035&view=rev Log: make-core.sh: add FreeBSD support Differential Revision: https://reviews.llvm.org/D26315 Modified: lldb/trunk/packages/Python/lldbsuite/test/functionalities/postmortem/linux-core/make-core.sh Modified: lldb/trunk/packages/Python/lldbsuite/test/functionalities/postmortem/linux-core/make-core.sh URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/functionalities/postmortem/linux-core/make-core.sh?rev=286035&r1=286034&r2=286035&view=diff == --- lldb/trunk/packages/Python/lldbsuite/test/functionalities/postmortem/linux-core/make-core.sh (original) +++ lldb/trunk/packages/Python/lldbsuite/test/functionalities/postmortem/linux-core/make-core.sh Sat Nov 5 09:45:13 2016 @@ -1,4 +1,30 @@ -#! /bin/bash +#! /bin/sh + +linux_check_core_pattern() +{ +if grep -q '^|' &2 +exit 1 +;; +esac set -e -x @@ -10,13 +36,8 @@ EOF exit 1 fi -if grep -q '^|' smaller core files. ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [PATCH] D26300: ELF core: Adding parsing of the floating-point and SSE registers on x86 32/64 bit elf core files
emaste added a comment. I applied this change on top of my WIP https://reviews.llvm.org/D26617 (which adds a FreeBSD core test). LLDB builds and my new test passes, so no objections from me. Once it's in I'll see about porting the new SSE test to FreeBSD too. https://reviews.llvm.org/D26300 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [PATCH] D25947: Merge Linux and FreeBSD arm64 register contexts
emaste added a comment. > Ed, what do you think about this one? Is there anyone with a FreeBSD arm64 > setup that could verify this? We have an arm64 reference machine in the FreeBSD cluster and I will test after I return from travel later this week, although perhaps @andrew can try it before then. https://reviews.llvm.org/D25947 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r287609 - Turn on LLDB_EDITLINE_USE_WCHAR on FreeBSD
Author: emaste Date: Mon Nov 21 20:25:41 2016 New Revision: 287609 URL: http://llvm.org/viewvc/llvm-project?rev=287609&view=rev Log: Turn on LLDB_EDITLINE_USE_WCHAR on FreeBSD Modified: lldb/trunk/include/lldb/Host/Editline.h Modified: lldb/trunk/include/lldb/Host/Editline.h URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Host/Editline.h?rev=287609&r1=287608&r2=287609&view=diff == --- lldb/trunk/include/lldb/Host/Editline.h (original) +++ lldb/trunk/include/lldb/Host/Editline.h Mon Nov 21 20:25:41 2016 @@ -43,7 +43,7 @@ // will only be // used in cases where this is true. This is a compile time dependecy, for now // selected per target Platform -#if defined(__APPLE__) || defined(__NetBSD__) +#if defined(__APPLE__) || defined(__FreeBSD__) || defined(__NetBSD__) #define LLDB_EDITLINE_USE_WCHAR 1 #include #else ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [lldb] r287597 - Add the new Args / entry-access API.
On 21 November 2016 at 18:18, Zachary Turner via lldb-commits wrote: > Author: zturner > Date: Mon Nov 21 17:18:07 2016 > New Revision: 287597 > > URL: http://llvm.org/viewvc/llvm-project?rev=287597&view=rev > Log: > Add the new Args / entry-access API. FreeBSD buildbot is now failing with: http://lab.llvm.org:8011/builders/lldb-amd64-ninja-freebsd11/builds/1462 [2160/2918] Building CXX object tools/lldb/source/Symbol/CMakeFiles/lldbSymbol.dir/Function.cpp.o FAILED: tools/lldb/source/Symbol/CMakeFiles/lldbSymbol.dir/Function.cpp.o /usr/bin/CC -DGTEST_HAS_RTTI=0 -DHAVE_ROUND -DLLDB_USE_BUILTIN_DEMANGLER -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -Itools/lldb/source/Symbol -I/usr/home/buildbot/scratch/scratch/llvm/tools/lldb/source/Symbol -I/usr/home/buildbot/scratch/scratch/llvm/tools/lldb/include -Itools/lldb/include -Iinclude -I/usr/home/buildbot/scratch/scratch/llvm/include -I/usr/local/include -I/usr/local/include/python2.7 -I/usr/home/buildbot/scratch/scratch/llvm/tools/clang/include -Itools/lldb/../clang/include -I/usr/home/buildbot/scratch/scratch/llvm/tools/lldb/source/. -I/usr/home/buildbot/scratch/scratch/llvm/tools/lldb/source/Plugins/Process/FreeBSD -I/usr/home/buildbot/scratch/scratch/llvm/tools/lldb/source/Plugins/Process/POSIX -fPIC -fvisibility-inlines-hidden -Wall -W -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wcovered-switch-default -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Werror=date-time -std=c++11 -fcolor-diagnostics -ffunction-sections -fdata-sections -Wno-deprecated-declarations -Wno-unknown-pragmas -Wno-strict-aliasing -Wno-deprecated-register -Wno-vla-extension -fPIC -fPIC -O3 -DNDEBUG -fno-exceptions -fno-rtti -MMD -MT tools/lldb/source/Symbol/CMakeFiles/lldbSymbol.dir/Function.cpp.o -MF tools/lldb/source/Symbol/CMakeFiles/lldbSymbol.dir/Function.cpp.o.d -o tools/lldb/source/Symbol/CMakeFiles/lldbSymbol.dir/Function.cpp.o -c /usr/home/buildbot/scratch/scratch/llvm/tools/lldb/source/Symbol/Function.cpp In file included from /usr/home/buildbot/scratch/scratch/llvm/tools/lldb/source/Symbol/Function.cpp:20: In file included from /usr/home/buildbot/scratch/scratch/llvm/tools/lldb/include/lldb/Target/Language.h:25: In file included from /usr/home/buildbot/scratch/scratch/llvm/tools/lldb/include/lldb/DataFormatters/FormatClasses.h:22: In file included from /usr/home/buildbot/scratch/scratch/llvm/tools/lldb/include/lldb/DataFormatters/TypeFormat.h:27: In file included from /usr/home/buildbot/scratch/scratch/llvm/tools/lldb/include/lldb/Core/ValueObject.h:34: In file included from /usr/home/buildbot/scratch/scratch/llvm/tools/lldb/include/lldb/Target/Process.h:43: In file included from /usr/home/buildbot/scratch/scratch/llvm/tools/lldb/include/lldb/Interpreter/Options.h:20: /usr/home/buildbot/scratch/scratch/llvm/tools/lldb/include/lldb/Interpreter/Args.h:155:3: error: 'auto' return without trailing return type; deduced return types are a C++14 extension auto begin() const { return m_entries.begin(); } ^ /usr/home/buildbot/scratch/scratch/llvm/tools/lldb/include/lldb/Interpreter/Args.h:156:3: error: 'auto' return without trailing return type; deduced return types are a C++14 extension auto end() const { return m_entries.end(); } ^ /usr/home/buildbot/scratch/scratch/llvm/tools/lldb/include/lldb/Interpreter/Args.h:155:31: error: no viable conversion from 'const_iterator' (aka '__wrap_iter') to 'int' auto begin() const { return m_entries.begin(); } ^ /usr/home/buildbot/scratch/scratch/llvm/tools/lldb/include/lldb/Interpreter/Args.h:156:29: error: no viable conversion from 'const_iterator' (aka '__wrap_iter') to 'int' auto end() const { return m_entries.end(); } ^~~ 4 errors generated. ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [PATCH] D25947: Merge Linux and FreeBSD arm64 register contexts
emaste added a comment. The tests are not in great shape on FreeBSD/arm64 today, but look roughly equivalent with and without this patch. At https://reviews.llvm.org/rL287887: === Test Result Summary === Test Methods: 1148 Reruns: 16 Success: 302 Expected Failure: 35 Failure: 80 Error:26 Exceptional Exit: 98 Unexpected Success:1 Skip:600 Timeout: 6 Expected Timeout: 0 With the patch applied: === Test Result Summary === Test Methods: 1147 Reruns: 16 Success: 299 Expected Failure: 35 Failure: 80 Error:26 Exceptional Exit:100 Unexpected Success:1 Skip:600 Timeout: 6 Expected Timeout: 0 https://reviews.llvm.org/D25947 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [PATCH] D25947: Merge Linux and FreeBSD arm64 register contexts
emaste added a comment. In https://reviews.llvm.org/D25947#597160, @labath wrote: > Ed, if I may suggest, while you are playing with the arm machine, could you > grab us a core file or two? It'd be great to be able to do a basic sanity > check on these things without physical access. I used make-core.sh to create https://people.freebsd.org/~emaste/lldb/freebsd-arm64-core.txz https://reviews.llvm.org/D25947 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r292937 - FreeBSD ARM support for software single step
Author: emaste Date: Tue Jan 24 08:34:49 2017 New Revision: 292937 URL: http://llvm.org/viewvc/llvm-project?rev=292937&view=rev Log: FreeBSD ARM support for software single step Implementation of software single step for FreeBSD on ARM. The code is largely based on the Linux implementation of the same functionality. Patch by Dmitry Mikulin! Differential Revision: https://reviews.llvm.org/D25756 Modified: lldb/trunk/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp lldb/trunk/source/Plugins/Process/FreeBSD/ProcessFreeBSD.cpp lldb/trunk/source/Plugins/Process/FreeBSD/ProcessFreeBSD.h lldb/trunk/source/Plugins/Process/FreeBSD/ProcessMonitor.cpp Modified: lldb/trunk/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp?rev=292937&r1=292936&r2=292937&view=diff == --- lldb/trunk/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp (original) +++ lldb/trunk/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp Tue Jan 24 08:34:49 2017 @@ -549,6 +549,12 @@ PlatformFreeBSD::GetSoftwareBreakpointTr // FreeBSD kernel as of 10.x, does not support thumb breakpoints return 0; } + +static const uint8_t g_arm_breakpoint_opcode[] = {0xFE, 0xDE, 0xFF, 0xE7}; +size_t trap_opcode_size = sizeof(g_arm_breakpoint_opcode); +assert(bp_site); +if (bp_site->SetTrapOpcode(g_arm_breakpoint_opcode, trap_opcode_size)) + return trap_opcode_size; } LLVM_FALLTHROUGH; default: Modified: lldb/trunk/source/Plugins/Process/FreeBSD/ProcessFreeBSD.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Process/FreeBSD/ProcessFreeBSD.cpp?rev=292937&r1=292936&r2=292937&view=diff == --- lldb/trunk/source/Plugins/Process/FreeBSD/ProcessFreeBSD.cpp (original) +++ lldb/trunk/source/Plugins/Process/FreeBSD/ProcessFreeBSD.cpp Tue Jan 24 08:34:49 2017 @@ -13,6 +13,7 @@ // C++ Includes #include +#include // Other libraries and framework includes #include "lldb/Core/PluginManager.h" @@ -122,6 +123,7 @@ Error ProcessFreeBSD::DoResume() { std::lock_guard guard(m_thread_list.GetMutex()); bool do_step = false; + bool software_single_step = !SupportHardwareSingleStepping(); for (tid_collection::const_iterator t_pos = m_run_tids.begin(), t_end = m_run_tids.end(); @@ -133,6 +135,11 @@ Error ProcessFreeBSD::DoResume() { t_pos != t_end; ++t_pos) { m_monitor->ThreadSuspend(*t_pos, false); do_step = true; +if (software_single_step) { + Error error = SetupSoftwareSingleStepping(*t_pos); + if (error.Fail()) +return error; +} } for (tid_collection::const_iterator t_pos = m_suspend_tids.begin(), t_end = m_suspend_tids.end(); @@ -145,7 +152,7 @@ Error ProcessFreeBSD::DoResume() { if (log) log->Printf("process %" PRIu64 " resuming (%s)", GetID(), do_step ? "step" : "continue"); - if (do_step) + if (do_step && !software_single_step) m_monitor->SingleStep(GetID(), m_resume_signo); else m_monitor->Resume(GetID(), m_resume_signo); @@ -913,3 +920,194 @@ const DataBufferSP ProcessFreeBSD::GetAu "no platform or not the host - how did we get here with ProcessFreeBSD?"); return DataBufferSP(); } + +struct EmulatorBaton { + ProcessFreeBSD *m_process; + RegisterContext *m_reg_context; + + // eRegisterKindDWARF -> RegisterValue + std::unordered_map m_register_values; + + EmulatorBaton(ProcessFreeBSD *process, RegisterContext *reg_context) + : m_process(process), m_reg_context(reg_context) {} +}; + +static size_t ReadMemoryCallback(EmulateInstruction *instruction, void *baton, + const EmulateInstruction::Context &context, + lldb::addr_t addr, void *dst, size_t length) { + EmulatorBaton *emulator_baton = static_cast(baton); + + Error error; + size_t bytes_read = + emulator_baton->m_process->DoReadMemory(addr, dst, length, error); + if (!error.Success()) +bytes_read = 0; + return bytes_read; +} + +static bool ReadRegisterCallback(EmulateInstruction *instruction, void *baton, + const RegisterInfo *reg_info, + RegisterValue ®_value) { + EmulatorBaton *emulator_baton = static_cast(baton); + + auto it = emulator_baton->m_register_values.find( + reg_info->kinds[eRegisterKindDWARF]); + if (it != emulator_baton->m_register_values.end()) { +reg_value = it->second; +return true; + } + + // The emulator only fills in the dwarf register numbers (and in some cases + // the generic register numbers). Get the full register info from the + // register context based on the dwarf register number
[Lldb-commits] [lldb] r294340 - Synchronize PlatformFreeBSD with Linux
Author: emaste Date: Tue Feb 7 13:29:10 2017 New Revision: 294340 URL: http://llvm.org/viewvc/llvm-project?rev=294340&view=rev Log: Synchronize PlatformFreeBSD with Linux Inspired by r294145 for NetBSD, this reduces diffs between the FreeBSD and Linux/NetBSD Platform implementations. Further diff reduction will occur once FreeBSD switches to using the remote process plugin. Differential Revision: https://reviews.llvm.org/D29667 Modified: lldb/trunk/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp lldb/trunk/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.h Modified: lldb/trunk/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp?rev=294340&r1=294339&r2=294340&view=diff == --- lldb/trunk/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp (original) +++ lldb/trunk/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp Tue Feb 7 13:29:10 2017 @@ -22,22 +22,34 @@ #include "lldb/Breakpoint/BreakpointLocation.h" #include "lldb/Breakpoint/BreakpointSite.h" #include "lldb/Core/Debugger.h" -#include "lldb/Core/Module.h" -#include "lldb/Core/ModuleSpec.h" +#include "lldb/Core/Log.h" #include "lldb/Core/PluginManager.h" -#include "lldb/Host/Host.h" +#include "lldb/Core/State.h" +#include "lldb/Host/FileSpec.h" #include "lldb/Host/HostInfo.h" #include "lldb/Target/Process.h" +#include "lldb/Target/Target.h" #include "lldb/Utility/Error.h" +#include "lldb/Utility/StreamString.h" + +// Define these constants from FreeBSD mman.h for use when targeting +// remote FreeBSD systems even when host has different values. +#define MAP_PRIVATE 0x0002 +#define MAP_ANON 0x1000 using namespace lldb; using namespace lldb_private; using namespace lldb_private::platform_freebsd; +static uint32_t g_initialize_count = 0; + +//-- + PlatformSP PlatformFreeBSD::CreateInstance(bool force, const ArchSpec *arch) { - // The only time we create an instance is when we are creating a remote - // freebsd platform - const bool is_host = false; + Log *log(GetLogIfAllCategoriesSet(LIBLLDB_LOG_PLATFORM)); + LLDB_LOG(log, "force = {0}, arch=({1}, {2})", force, + arch ? arch->GetArchitectureName() : "", + arch ? arch->GetTriple().getTriple() : ""); bool create = force; if (create == false && arch && arch->IsValid()) { @@ -59,8 +71,10 @@ PlatformSP PlatformFreeBSD::CreateInstan break; } } - if (create) -return PlatformSP(new PlatformFreeBSD(is_host)); + LLDB_LOG(log, "create = {0}", create); + if (create) { +return PlatformSP(new PlatformFreeBSD(false)); + } return PlatformSP(); } @@ -74,221 +88,51 @@ ConstString PlatformFreeBSD::GetPluginNa } } -const char *PlatformFreeBSD::GetDescriptionStatic(bool is_host) { +const char *PlatformFreeBSD::GetPluginDescriptionStatic(bool is_host) { if (is_host) return "Local FreeBSD user platform plug-in."; else return "Remote FreeBSD user platform plug-in."; } -static uint32_t g_initialize_count = 0; +ConstString PlatformFreeBSD::GetPluginName() { + return GetPluginNameStatic(IsHost()); +} void PlatformFreeBSD::Initialize() { Platform::Initialize(); if (g_initialize_count++ == 0) { #if defined(__FreeBSD__) -// Force a host flag to true for the default platform object. PlatformSP default_platform_sp(new PlatformFreeBSD(true)); default_platform_sp->SetSystemArchitecture(HostInfo::GetArchitecture()); Platform::SetHostPlatform(default_platform_sp); #endif -PluginManager::RegisterPlugin(PlatformFreeBSD::GetPluginNameStatic(false), - PlatformFreeBSD::GetDescriptionStatic(false), - PlatformFreeBSD::CreateInstance); +PluginManager::RegisterPlugin( +PlatformFreeBSD::GetPluginNameStatic(false), +PlatformFreeBSD::GetPluginDescriptionStatic(false), +PlatformFreeBSD::CreateInstance, nullptr); } } void PlatformFreeBSD::Terminate() { - if (g_initialize_count > 0 && --g_initialize_count == 0) -PluginManager::UnregisterPlugin(PlatformFreeBSD::CreateInstance); - - Platform::Terminate(); -} - -bool PlatformFreeBSD::GetModuleSpec(const FileSpec &module_file_spec, -const ArchSpec &arch, -ModuleSpec &module_spec) { - if (m_remote_platform_sp) -return m_remote_platform_sp->GetModuleSpec(module_file_spec, arch, - module_spec); - - return Platform::GetModuleSpec(module_file_spec, arch, module_spec); -} - -Error PlatformFreeBSD::RunShellCommand(const char *command, - const FileSpec &working_dir, - int *status_ptr, int *signo_ptr, -
Re: [Lldb-commits] [PATCH] D13312: Fix Windows build due to missing path.
emaste added a subscriber: emaste. emaste added a comment. > I'm not sure why it didn't break other platforms. It did - perhaps it worked only on OS X due to xcode path differences? It was fixed by http://reviews.llvm.org/rL248956. http://reviews.llvm.org/D13312 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D13028: Merge dsym and dwarf test cases
emaste added a comment. > I'm leaving shortly to travel to EuroBSDCon so probably will not be able to > test before Wednesday, but I can investigate and update decorators as > appropriate afterwards. A follow up - the tests look good on FreeBSD after this change. On my branch with a few updates to FreeBSD expected failure decorators, [1/1] Testing LLDB (parallel execution, with a separate subprocess per test) Testing: 399 test suites, 8 threads 399 out of 399 test suites processed - TestMiFile.py Ran 399 test suites (0 failed) (0.00%) Ran 322 test cases (0 failed) (0.00%) Unexpected Successes (1) UNEXPECTED SUCCESS: LLDB (suite) :: TestRecursiveInferior.py (FreeBSD feynman 10.2-STABLE FreeBSD 10.2-STABLE #44 r288174+7644546(stable-10): Thu Sep 24 14:02:11 EDT 2015 emaste@feynman:/tank/emaste/obj/tank/emaste/src/git-stable-10/sys/GENERIC amd64 amd64) 224.52 real 665.99 user 366.72 sys Repository: rL LLVM http://reviews.llvm.org/D13028 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D13334: Preliminary NetBSD support
emaste added inline comments. Comment at: source/Plugins/Platform/NetBSD/PlatformNetBSD.cpp:1 @@ +1,2 @@ +//===-- PlatformNetBSD.cpp -*- C++ -*-===// +// krytarowski wrote: > labath wrote: > > krytarowski wrote: > > > labath wrote: > > > > krytarowski wrote: > > > > > labath wrote: > > > > > > This platform code looks like it was copy-pasted from > > > > > > PlatformFreeBSD. Do you anticipate making significant changes here? > > > > > > > > > > > > If not, it might be a good idea to share this code with FreeBSD in > > > > > > some way (in fact there is a comment here to make this share code > > > > > > with PlatformPOSIX). @emaste, what do you think about this? > > > > > Yes... however I have bad experiences (mostly in Gnome) when we drag > > > > > common code for rotted platforms like BSD4.4, BSD/OS and such in a > > > > > single source tree paralyzing sane platform support. > > > > So which one do you expect to rot first ? > > > > > > > > Joke aside, I agree that this could be an issue, but I think if we put > > > > some thought into the design, we can limit the possible downsides of > > > > this approach. The other alternative, where we copy everything is not > > > > ideal either: we have had cases in the past, where we made a change in > > > > linux code, and then we needed to apply the exact same change in the > > > > freebsd version. So there is definitely some tradeoff to consider > > > > here... > > > > > > > > In any case, I'm not trying to stop your changes because of this, but I > > > > think it's good to open this discussion in the early stages of the > > > > implementation... I don't know if you're aware but there are plans to > > > > move freebsd to the client-server model to follow linux, so if you make > > > > copies of the code, you may find out later that you may need to > > > > duplicate that work as well. > > > I'm strongly for this to design and put common BSD code (for modern BSDs) > > > into single library or module, limiting Free/Net specific pieces to their > > > appropriate modules. > > > > > > My requirement is to name the common parts as BSD, not FreeBSD. NetBSD > > > isn't a variation of FreeBSD (neither e.g. Bitrig, which may come next -- > > > there is already an active interest). > > > > > > I was thinking how to do it, with virtual functions, inheritance, #ifdef > > > magic... To make it clear, I don't use nor have FreeBSD to lonely > > > design/redesign neither touch its platform support, therefor I request > > > for active cooperation from the FreeBSD side. > > >I'm strongly for this to design and put common BSD code (for modern BSDs) > > >into single library or module, limiting Free/Net specific pieces to their > > >appropriate modules. > > > > >My requirement is to name the common parts as BSD, not FreeBSD. NetBSD > > >isn't a variation of FreeBSD (neither e.g. Bitrig, which may come next -- > > >there is already an active interest). > > > > Sounds reasonable to me. > > > > > I was thinking how to do it, with virtual functions, inheritance, #ifdef > > > magic... > > LLDB is a cross-platform tool, we can already remotely debug linux from > > windows and mac machines, etc. It would be great if this would eventually > > work for BSD platforms as well. For this, we need both freebsd and netbsd > > code in a single client binary, so #ifdefs are ruled out (at least in > > client code). But I think inheritance is perfect for this particular case > > of PlatformNetBSD -- just move the code to PlatformBSD and have Free/NetBSD > > inherit from that. > > > > > To make it clear, I don't use nor have FreeBSD to lonely design/redesign > > > neither touch its platform support, therefor I request for active > > > cooperation from the FreeBSD side. > > Let's see what FreeBSD has to say to this. :) > > LLDB is a cross-platform tool, we can already remotely debug linux from > > windows and mac machines, etc. It would be great if this would eventually > > work for BSD platforms as well. > > Sounds great! > > > Let's see what FreeBSD has to say to this. :) > > I opened the offer from my site. The code is already there. I'm waiting for > the feedback. > Joke aside, I agree that this could be an issue, but I think if we put some > thought into the design, we can limit the possible downsides of this > approach. The other alternative, where we copy everything is not ideal > either: we have had cases in the past, where we made a change in linux code, > and then we needed to apply the exact same change in the freebsd version. So > there is definitely some tradeoff to consider here... Yes - the sharing between Linux and FreeBSD was previously a bit of a mess: some Linux functionality existed in base classes, and some derived classes had nearly identical copy pasta. > I don't know if you're aware but there are plans to move freebsd to the > client-server model to follo
Re: [Lldb-commits] [PATCH] D13334: Preliminary NetBSD support
On 1 October 2015 at 23:09, Kamil Rytarowski via lldb-commits wrote: > > Yes, please! Better incomplete support in the source trees then once > almost complete but rotting in a local patch... I agree - I think it's better to get basic support in as soon as possible and we can refactor as appropriate in the tree. Will you be able to get a NetBSD builder after the changes start going in? We recently lost the FreeBSD one and I'm (still) working on a replacement; without buildbot support it's about as easy for FreeBSD/NetBSD support to rot in the tree as out. ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r249561 - Add expectedFailureFreeBSD for Go runtime test
Author: emaste Date: Wed Oct 7 11:21:43 2015 New Revision: 249561 URL: http://llvm.org/viewvc/llvm-project?rev=249561&view=rev Log: Add expectedFailureFreeBSD for Go runtime test AssertionError: False is not True : No thread stopped at our breakpoint. llvm.org/pr24895 Modified: lldb/trunk/test/lang/go/runtime/TestGoASTContext.py Modified: lldb/trunk/test/lang/go/runtime/TestGoASTContext.py URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/test/lang/go/runtime/TestGoASTContext.py?rev=249561&r1=249560&r2=249561&view=diff == --- lldb/trunk/test/lang/go/runtime/TestGoASTContext.py (original) +++ lldb/trunk/test/lang/go/runtime/TestGoASTContext.py Wed Oct 7 11:21:43 2015 @@ -11,6 +11,7 @@ class TestGoLanguageRuntime(TestBase): mydir = TestBase.compute_mydir(__file__) @python_api_test +@expectedFailureFreeBSD('llvm.org/pr24895') @skipIfRemote # Not remote test suite ready @skipUnlessGoInstalled def test_with_dsym_and_python_api(self): ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D13334: Preliminary NetBSD support
emaste added a comment. OK by me. I'd also like to see less duplication, but have no objection to this as it is now. Repository: rL LLVM http://reviews.llvm.org/D13334 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [lldb] r250306 - Fix Python initialization for Python 3.
On 14 October 2015 at 13:51, Zachary Turner via lldb-commits wrote: > Author: zturner > Date: Wed Oct 14 12:51:29 2015 > New Revision: 250306 > > URL: http://llvm.org/viewvc/llvm-project?rev=250306&view=rev > Log: > Fix Python initialization for Python 3. This introduced a new warning for me: ../tools/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp:96:9: warning: field 'm_was_already_initialized' will be initialized after field 'm_gil_state' [-Wreorder] m_was_already_initialized(false), ^ ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r251088 - Add arm64 FreeBSD ProcessMonitor register context
Author: emaste Date: Thu Oct 22 20:10:42 2015 New Revision: 251088 URL: http://llvm.org/viewvc/llvm-project?rev=251088&view=rev Log: Add arm64 FreeBSD ProcessMonitor register context Modified: lldb/trunk/source/Plugins/Process/FreeBSD/FreeBSDThread.cpp Modified: lldb/trunk/source/Plugins/Process/FreeBSD/FreeBSDThread.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Process/FreeBSD/FreeBSDThread.cpp?rev=251088&r1=251087&r2=251088&view=diff == --- lldb/trunk/source/Plugins/Process/FreeBSD/FreeBSDThread.cpp (original) +++ lldb/trunk/source/Plugins/Process/FreeBSD/FreeBSDThread.cpp Thu Oct 22 20:10:42 2015 @@ -39,6 +39,7 @@ #include "RegisterContextPOSIXProcessMonitor_powerpc.h" #include "RegisterContextPOSIXProcessMonitor_x86.h" #include "Plugins/Process/Utility/RegisterContextFreeBSD_arm.h" +#include "Plugins/Process/Utility/RegisterContextFreeBSD_arm64.h" #include "Plugins/Process/Utility/RegisterContextFreeBSD_i386.h" #include "Plugins/Process/Utility/RegisterContextFreeBSD_mips64.h" #include "Plugins/Process/Utility/RegisterContextFreeBSD_powerpc.h" @@ -160,6 +161,9 @@ FreeBSDThread::GetRegisterContext() assert(target_arch.GetTriple().getOS() == llvm::Triple::FreeBSD); switch (target_arch.GetMachine()) { +case llvm::Triple::aarch64: +reg_interface = new RegisterContextFreeBSD_arm64(target_arch); +break; case llvm::Triple::arm: reg_interface = new RegisterContextFreeBSD_arm(target_arch); break; ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [lldb] r251537 - Make core files not crash when you load a core file into LLDB with just "lldb -c core".
On 28 October 2015 at 18:04, Greg Clayton via lldb-commits wrote: > +// LLDB_NT_OWNER_CORE and LLDB_NT_OWNER_LINUX note contants > +#define NT_PRSTATUS 1 > +#define NT_PRFPREG 2 > +#define NT_PRPSINFO 3 > +#define NT_TASKSTRUCT 4 > +#define NT_AUXV 6 > +#define NT_SIGINFO 0x53494749 > +#define NT_FILE 0x46494c45 > +#define NT_PRXFPREG 0x46e62b7f ... These should really be in a Linux namespace of some sort as they're Linux-specific note types (although in a number of cases they happen to be common on FreeBSD). ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D14182: Centos 5 compile fixes for lldb
emaste added a subscriber: emaste. emaste added a comment. For future diffs please include additional context (e.g. git diff -U9) Repository: rL LLVM http://reviews.llvm.org/D14182 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D14042: Add more NetBSD platform glue for lldb
emaste accepted this revision. emaste added a comment. Fine by me. I'm not sure how we ended up with the Python-with-semicolons in scripts/buildSwigWrapperClasses.py (prior to this change) though. Repository: rL LLVM http://reviews.llvm.org/D14042 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r253601 - Plug-in PlatformNetBSD initializer and terminator
Author: emaste Date: Thu Nov 19 15:30:22 2015 New Revision: 253601 URL: http://llvm.org/viewvc/llvm-project?rev=253601&view=rev Log: Plug-in PlatformNetBSD initializer and terminator Patch by Kamil Rytarowski Differential Revision: http://reviews.llvm.org/D14530 Modified: lldb/trunk/source/Initialization/SystemInitializerCommon.cpp Modified: lldb/trunk/source/Initialization/SystemInitializerCommon.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Initialization/SystemInitializerCommon.cpp?rev=253601&r1=253600&r2=253601&view=diff == --- lldb/trunk/source/Initialization/SystemInitializerCommon.cpp (original) +++ lldb/trunk/source/Initialization/SystemInitializerCommon.cpp Thu Nov 19 15:30:22 2015 @@ -115,6 +115,7 @@ SystemInitializerCommon::Initialize() DynamicLoaderWindowsDYLD::Initialize(); platform_freebsd::PlatformFreeBSD::Initialize(); platform_linux::PlatformLinux::Initialize(); +platform_netbsd::PlatformNetBSD::Initialize(); PlatformWindows::Initialize(); PlatformKalimba::Initialize(); platform_android::PlatformAndroid::Initialize(); @@ -162,6 +163,7 @@ SystemInitializerCommon::Terminate() DynamicLoaderWindowsDYLD::Terminate(); platform_freebsd::PlatformFreeBSD::Terminate(); platform_linux::PlatformLinux::Terminate(); +platform_netbsd::PlatformNetBSD::Terminate(); PlatformWindows::Terminate(); PlatformKalimba::Terminate(); platform_android::PlatformAndroid::Terminate(); ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D14530: Plug-in PlatformNetBSD initializer and terminator
This revision was automatically updated to reflect the committed changes. Closed by commit rL253601: Plug-in PlatformNetBSD initializer and terminator (authored by emaste). Changed prior to commit: http://reviews.llvm.org/D14530?vs=39788&id=40700#toc Repository: rL LLVM http://reviews.llvm.org/D14530 Files: lldb/trunk/source/Initialization/SystemInitializerCommon.cpp Index: lldb/trunk/source/Initialization/SystemInitializerCommon.cpp === --- lldb/trunk/source/Initialization/SystemInitializerCommon.cpp +++ lldb/trunk/source/Initialization/SystemInitializerCommon.cpp @@ -115,6 +115,7 @@ DynamicLoaderWindowsDYLD::Initialize(); platform_freebsd::PlatformFreeBSD::Initialize(); platform_linux::PlatformLinux::Initialize(); +platform_netbsd::PlatformNetBSD::Initialize(); PlatformWindows::Initialize(); PlatformKalimba::Initialize(); platform_android::PlatformAndroid::Initialize(); @@ -162,6 +163,7 @@ DynamicLoaderWindowsDYLD::Terminate(); platform_freebsd::PlatformFreeBSD::Terminate(); platform_linux::PlatformLinux::Terminate(); +platform_netbsd::PlatformNetBSD::Terminate(); PlatformWindows::Terminate(); PlatformKalimba::Terminate(); platform_android::PlatformAndroid::Terminate(); Index: lldb/trunk/source/Initialization/SystemInitializerCommon.cpp === --- lldb/trunk/source/Initialization/SystemInitializerCommon.cpp +++ lldb/trunk/source/Initialization/SystemInitializerCommon.cpp @@ -115,6 +115,7 @@ DynamicLoaderWindowsDYLD::Initialize(); platform_freebsd::PlatformFreeBSD::Initialize(); platform_linux::PlatformLinux::Initialize(); +platform_netbsd::PlatformNetBSD::Initialize(); PlatformWindows::Initialize(); PlatformKalimba::Initialize(); platform_android::PlatformAndroid::Initialize(); @@ -162,6 +163,7 @@ DynamicLoaderWindowsDYLD::Terminate(); platform_freebsd::PlatformFreeBSD::Terminate(); platform_linux::PlatformLinux::Terminate(); +platform_netbsd::PlatformNetBSD::Terminate(); PlatformWindows::Terminate(); PlatformKalimba::Terminate(); platform_android::PlatformAndroid::Terminate(); ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r253699 - Call Platform::SetHostPlatform in the NetBSD platform only on NetBSD
Author: emaste Date: Fri Nov 20 13:32:58 2015 New Revision: 253699 URL: http://llvm.org/viewvc/llvm-project?rev=253699&view=rev Log: Call Platform::SetHostPlatform in the NetBSD platform only on NetBSD Patch by Kamil Rytarowski Differential Revision: http://reviews.llvm.org/D14876 Modified: lldb/trunk/source/Plugins/Platform/NetBSD/PlatformNetBSD.cpp Modified: lldb/trunk/source/Plugins/Platform/NetBSD/PlatformNetBSD.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Platform/NetBSD/PlatformNetBSD.cpp?rev=253699&r1=253698&r2=253699&view=diff == --- lldb/trunk/source/Plugins/Platform/NetBSD/PlatformNetBSD.cpp (original) +++ lldb/trunk/source/Plugins/Platform/NetBSD/PlatformNetBSD.cpp Fri Nov 20 13:32:58 2015 @@ -94,10 +94,12 @@ PlatformNetBSD::Initialize () if (g_initialize_count++ == 0) { +#if defined(__NetBSD__) // Force a host flag to true for the default platform object. PlatformSP default_platform_sp (new PlatformNetBSD(true)); default_platform_sp->SetSystemArchitecture(HostInfo::GetArchitecture()); Platform::SetHostPlatform (default_platform_sp); +#endif PluginManager::RegisterPlugin(PlatformNetBSD::GetPluginNameStatic(false), PlatformNetBSD::GetDescriptionStatic(false), PlatformNetBSD::CreateInstance); ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D14876: Call Platform::SetHostPlatform in the NetBSD platform only on NetBSD
This revision was automatically updated to reflect the committed changes. Closed by commit rL253699: Call Platform::SetHostPlatform in the NetBSD platform only on NetBSD (authored by emaste). Changed prior to commit: http://reviews.llvm.org/D14876?vs=40796&id=40808#toc Repository: rL LLVM http://reviews.llvm.org/D14876 Files: lldb/trunk/source/Plugins/Platform/NetBSD/PlatformNetBSD.cpp Index: lldb/trunk/source/Plugins/Platform/NetBSD/PlatformNetBSD.cpp === --- lldb/trunk/source/Plugins/Platform/NetBSD/PlatformNetBSD.cpp +++ lldb/trunk/source/Plugins/Platform/NetBSD/PlatformNetBSD.cpp @@ -94,10 +94,12 @@ if (g_initialize_count++ == 0) { +#if defined(__NetBSD__) // Force a host flag to true for the default platform object. PlatformSP default_platform_sp (new PlatformNetBSD(true)); default_platform_sp->SetSystemArchitecture(HostInfo::GetArchitecture()); Platform::SetHostPlatform (default_platform_sp); +#endif PluginManager::RegisterPlugin(PlatformNetBSD::GetPluginNameStatic(false), PlatformNetBSD::GetDescriptionStatic(false), PlatformNetBSD::CreateInstance); Index: lldb/trunk/source/Plugins/Platform/NetBSD/PlatformNetBSD.cpp === --- lldb/trunk/source/Plugins/Platform/NetBSD/PlatformNetBSD.cpp +++ lldb/trunk/source/Plugins/Platform/NetBSD/PlatformNetBSD.cpp @@ -94,10 +94,12 @@ if (g_initialize_count++ == 0) { +#if defined(__NetBSD__) // Force a host flag to true for the default platform object. PlatformSP default_platform_sp (new PlatformNetBSD(true)); default_platform_sp->SetSystemArchitecture(HostInfo::GetArchitecture()); Platform::SetHostPlatform (default_platform_sp); +#endif PluginManager::RegisterPlugin(PlatformNetBSD::GetPluginNameStatic(false), PlatformNetBSD::GetDescriptionStatic(false), PlatformNetBSD::CreateInstance); ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r253998 - Add expectedFailureFreeBSD decorators for new Python fd leak
Author: emaste Date: Tue Nov 24 12:05:56 2015 New Revision: 253998 URL: http://llvm.org/viewvc/llvm-project?rev=253998&view=rev Log: Add expectedFailureFreeBSD decorators for new Python fd leak llvm.org/pr25624 Modified: lldb/trunk/packages/Python/lldbsuite/test/functionalities/avoids-fd-leak/TestFdLeak.py Modified: lldb/trunk/packages/Python/lldbsuite/test/functionalities/avoids-fd-leak/TestFdLeak.py URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/functionalities/avoids-fd-leak/TestFdLeak.py?rev=253998&r1=253997&r2=253998&view=diff == --- lldb/trunk/packages/Python/lldbsuite/test/functionalities/avoids-fd-leak/TestFdLeak.py (original) +++ lldb/trunk/packages/Python/lldbsuite/test/functionalities/avoids-fd-leak/TestFdLeak.py Tue Nov 24 12:05:56 2015 @@ -23,12 +23,14 @@ class AvoidsFdLeakTestCase(TestBase): mydir = TestBase.compute_mydir(__file__) @expectedFailure(python_leaky_fd_version, "bugs.freebsd.org/197376") +@expectedFailureFreeBSD("llvm.org/pr25624 still failing with Python 2.7.10") @skipIfWindows # The check for descriptor leakage needs to be implemented differently here. @skipIfTargetAndroid() # Android have some other file descriptors open by the shell def test_fd_leak_basic (self): self.do_test([]) @expectedFailure(python_leaky_fd_version, "bugs.freebsd.org/197376") +@expectedFailureFreeBSD("llvm.org/pr25624 still failing with Python 2.7.10") @skipIfWindows # The check for descriptor leakage needs to be implemented differently here. @skipIfTargetAndroid() # Android have some other file descriptors open by the shell def test_fd_leak_log (self): @@ -51,6 +53,7 @@ class AvoidsFdLeakTestCase(TestBase): "Process returned non-zero status. Were incorrect file descriptors passed?") @expectedFailure(python_leaky_fd_version, "bugs.freebsd.org/197376") +@expectedFailureFreeBSD("llvm.org/pr25624 still failing with Python 2.7.10") @expectedFlakeyLinux @skipIfWindows # The check for descriptor leakage needs to be implemented differently here. @skipIfTargetAndroid() # Android have some other file descriptors open by the shell ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r254000 - Remove expectedFailureFreeBSD from passing ThreadExitTestCase::test_with_dwarf
Author: emaste Date: Tue Nov 24 12:22:37 2015 New Revision: 254000 URL: http://llvm.org/viewvc/llvm-project?rev=254000&view=rev Log: Remove expectedFailureFreeBSD from passing ThreadExitTestCase::test_with_dwarf This passes on my FreeBSD stable/10 desktop and my new FreeBSD 11-current buildbot (which is not yet hooked up to the buildmaster). llvm.org/pr18190 Modified: lldb/trunk/packages/Python/lldbsuite/test/functionalities/thread/thread_exit/TestThreadExit.py Modified: lldb/trunk/packages/Python/lldbsuite/test/functionalities/thread/thread_exit/TestThreadExit.py URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/functionalities/thread/thread_exit/TestThreadExit.py?rev=254000&r1=253999&r2=254000&view=diff == --- lldb/trunk/packages/Python/lldbsuite/test/functionalities/thread/thread_exit/TestThreadExit.py (original) +++ lldb/trunk/packages/Python/lldbsuite/test/functionalities/thread/thread_exit/TestThreadExit.py Tue Nov 24 12:22:37 2015 @@ -24,7 +24,6 @@ class ThreadExitTestCase(TestBase): self.break_3 = line_number('main.cpp', '// Set third breakpoint here') self.break_4 = line_number('main.cpp', '// Set fourth breakpoint here') -@expectedFailureFreeBSD("llvm.org/pr18190") # thread states not properly maintained @expectedFailureWindows("llvm.org/pr24681") def test(self): """Test thread exit handling.""" ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r254001 - Remove expectedFailureFreeBSD decorator from now-passing tests
Author: emaste Date: Tue Nov 24 12:30:19 2015 New Revision: 254001 URL: http://llvm.org/viewvc/llvm-project?rev=254001&view=rev Log: Remove expectedFailureFreeBSD decorator from now-passing tests These pass on my FreeBSD stable/10 desktop and my (not-yet-connected) FreeBSD 11-CURRENT buildbot llvm.org/pr20548 Modified: lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/iterator/TestDataFormatterStdIterator.py lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/list/TestDataFormatterStdList.py lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/string/TestDataFormatterStdString.py Modified: lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/iterator/TestDataFormatterStdIterator.py URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/iterator/TestDataFormatterStdIterator.py?rev=254001&r1=254000&r2=254001&view=diff == --- lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/iterator/TestDataFormatterStdIterator.py (original) +++ lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/iterator/TestDataFormatterStdIterator.py Tue Nov 24 12:30:19 2015 @@ -22,7 +22,6 @@ class StdIteratorDataFormatterTestCase(T self.line = line_number('main.cpp', '// Set break point at this line.') @skipIfWindows # libstdcpp not ported to Windows -@expectedFailureFreeBSD("llvm.org/pr20548") # fails to build on lab.llvm.org buildbot @expectedFailureIcc # llvm.org/pr15301 LLDB prints incorrect sizes of STL containers def test_with_run_command(self): """Test that libstdcpp iterators format properly.""" Modified: lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/list/TestDataFormatterStdList.py URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/list/TestDataFormatterStdList.py?rev=254001&r1=254000&r2=254001&view=diff == --- lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/list/TestDataFormatterStdList.py (original) +++ lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/list/TestDataFormatterStdList.py Tue Nov 24 12:30:19 2015 @@ -24,7 +24,6 @@ class StdListDataFormatterTestCase(TestB self.final_line = line_number('main.cpp', '// Set final break point at this line.') @skipIfWindows # libstdcpp not ported to Windows -@expectedFailureFreeBSD("llvm.org/pr20548") # fails to build on lab.llvm.org buildbot def test_with_run_command(self): """Test that that file and class static variables display correctly.""" self.build() Modified: lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/string/TestDataFormatterStdString.py URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/string/TestDataFormatterStdString.py?rev=254001&r1=254000&r2=254001&view=diff == --- lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/string/TestDataFormatterStdString.py (original) +++ lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/string/TestDataFormatterStdString.py Tue Nov 24 12:30:19 2015 @@ -22,7 +22,6 @@ class StdStringDataFormatterTestCase(Tes # Find the line number to break at. self.line = line_number('main.cpp', '// Set break point at this line.') -@expectedFailureFreeBSD("llvm.org/pr20548") # fails to build on lab.llvm.org buildbot @skipIfWindows # libstdcpp not ported to Windows def test_with_run_command(self): """Test that that file and class static variables display correctly.""" ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r254002 - Add expectedFlakeyFreeBSD to TestBatchMode failing on buildbot
Author: emaste Date: Tue Nov 24 12:34:17 2015 New Revision: 254002 URL: http://llvm.org/viewvc/llvm-project?rev=254002&view=rev Log: Add expectedFlakeyFreeBSD to TestBatchMode failing on buildbot This test was already expectedFlakeyLinux for occasional failures on the Linux buildbot. It seems the new FreeBSD buildbot fails the same way on occasion. llvm.org/pr25172 Modified: lldb/trunk/packages/Python/lldbsuite/test/driver/batch_mode/TestBatchMode.py Modified: lldb/trunk/packages/Python/lldbsuite/test/driver/batch_mode/TestBatchMode.py URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/driver/batch_mode/TestBatchMode.py?rev=254002&r1=254001&r2=254002&view=diff == --- lldb/trunk/packages/Python/lldbsuite/test/driver/batch_mode/TestBatchMode.py (original) +++ lldb/trunk/packages/Python/lldbsuite/test/driver/batch_mode/TestBatchMode.py Tue Nov 24 12:34:17 2015 @@ -15,6 +15,7 @@ class DriverBatchModeTest (TestBase): mydir = TestBase.compute_mydir(__file__) @skipIfRemote # test not remote-ready llvm.org/pr24813 +@expectedFlakeyFreeBSD("llvm.org/pr25172 fails rarely on the buildbot") @expectedFlakeyLinux("llvm.org/pr25172") @expectedFailureWindows("llvm.org/pr22274: need a pexpect replacement for windows") def test_driver_batch_mode(self): ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r254006 - Temporarily add expectedFailureFreeBSD to tests that fail to detect Clang on FreeBSD
Author: emaste Date: Tue Nov 24 12:59:51 2015 New Revision: 254006 URL: http://llvm.org/viewvc/llvm-project?rev=254006&view=rev Log: Temporarily add expectedFailureFreeBSD to tests that fail to detect Clang on FreeBSD On FreeBSD we may get Clang via CC=cc or CC=/usr/bin/cc. llvm.org/pr25626 Modified: lldb/trunk/packages/Python/lldbsuite/test/lang/c/typedef/Testtypedef.py lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/incomplete-types/TestCppIncompleteTypes.py Modified: lldb/trunk/packages/Python/lldbsuite/test/lang/c/typedef/Testtypedef.py URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/lang/c/typedef/Testtypedef.py?rev=254006&r1=254005&r2=254006&view=diff == --- lldb/trunk/packages/Python/lldbsuite/test/lang/c/typedef/Testtypedef.py (original) +++ lldb/trunk/packages/Python/lldbsuite/test/lang/c/typedef/Testtypedef.py Tue Nov 24 12:59:51 2015 @@ -23,6 +23,7 @@ class TypedefTestCase(TestBase): @dwarf_test @expectedFailureClang("llvm.org/pr19238") +@expectedFailureFreeBSD("llvm.org/pr25626 expectedFailureClang fails on FreeBSD") def test_with_dwarf(self): """Test 'image lookup -t a' and check for correct display at different scopes.""" self.buildDwarf() Modified: lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/incomplete-types/TestCppIncompleteTypes.py URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/incomplete-types/TestCppIncompleteTypes.py?rev=254006&r1=254005&r2=254006&view=diff == --- lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/incomplete-types/TestCppIncompleteTypes.py (original) +++ lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/incomplete-types/TestCppIncompleteTypes.py Tue Nov 24 12:59:51 2015 @@ -6,6 +6,7 @@ class TestCppIncompleteTypes(TestBase): mydir = TestBase.compute_mydir(__file__) +@expectedFailureFreeBSD("llvm.org/pr25626 test executable not built correctly on FreeBSD") @skipIfGcc def test_limit_debug_info(self): self.build() ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [lldb] r254006 - Temporarily add expectedFailureFreeBSD to tests that fail to detect Clang on FreeBSD
On 24 November 2015 at 13:59, Ed Maste via lldb-commits wrote: > Author: emaste > Date: Tue Nov 24 12:59:51 2015 > New Revision: 254006 > > URL: http://llvm.org/viewvc/llvm-project?rev=254006&view=rev > Log: > Temporarily add expectedFailureFreeBSD to tests that fail to detect Clang on > FreeBSD > > On FreeBSD we may get Clang via CC=cc or CC=/usr/bin/cc. I'd rather just fix this than marking it with a decorator, but I want to have the FreeBSD 11 buildbot added to the buildmaster as soon as possible. With my last few decorator updates the buildbot should be green as soon as it's added. There are four unexpected passes that will still need further investigation. [1/1] Testing LLDB (parallel execution, with a separate subprocess per test) Testing: 412 test suites, 4 threads 412 out of 412 test suites processed - TestSetWatchlocation.py Ran 412 test suites (0 failed) (0.00%) Ran 537 test cases (0 failed) (0.00%) ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D15263: Add NetBSD in platform specific logging of the specified category in RegisterCommandsTestCase()
emaste accepted this revision. emaste added a comment. This revision is now accepted and ready to land. We could probably replace these freebsd/linux/netbsd cases with a routine that strips trailing digits. Repository: rL LLVM http://reviews.llvm.org/D15263 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D15262: Add initial NetBSD support in lldbsuite/test/lldbtest.py
emaste added inline comments. Comment at: packages/Python/lldbsuite/test/lldbtest.py:832-834 @@ -828,2 +831,5 @@ +def expectedFlakeyNetBSD(bugnumber=None, compilers=None): +return expectedFlakeyOS(['netbsd'], bugnumber, compilers) + def expectedFlakeyLinux(bugnumber=None, compilers=None): perhaps put after FlakeyLinux so we only have to move FreeBSD to put it in alpha order Comment at: packages/Python/lldbsuite/test/lldbtest.py:2292-2293 @@ -2273,2 +2291,4 @@ return ['libc++.so.1'] +elif self.getPlatform() == 'netbsd': +return ['libstdc++.so'] else: This seems wrong; if a test needs libc++ it should either be skipped on NetBSD right now or use libc++ Repository: rL LLVM http://reviews.llvm.org/D15262 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r255049 - Remove default case in switch which covers all enumeration values
Author: emaste Date: Tue Dec 8 14:50:35 2015 New Revision: 255049 URL: http://llvm.org/viewvc/llvm-project?rev=255049&view=rev Log: Remove default case in switch which covers all enumeration values This also conveniently eliminates another warning from the unintentional use of a trigraph: warning: trigraph converted to '[' character [-Wtrigraphs] default: printf("???(%u)", type); ^ Modified: lldb/trunk/source/Symbol/Type.cpp Modified: lldb/trunk/source/Symbol/Type.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Symbol/Type.cpp?rev=255049&r1=255048&r2=255049&view=diff == --- lldb/trunk/source/Symbol/Type.cpp (original) +++ lldb/trunk/source/Symbol/Type.cpp Tue Dec 8 14:50:35 2015 @@ -56,7 +56,6 @@ CompilerContext::Dump() const case CompilerContextKind::Variable: printf("Variable"); break; case CompilerContextKind::Enumeration: printf("Enumeration"); break; case CompilerContextKind::Typedef: printf("Typedef"); break; -default: printf("???(%u)", type); } printf("(\"%s\")\n", name.GetCString()); } ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D15374: Add NetBSD support in the buildDriver and buildLibrary routines
emaste requested changes to this revision. This revision now requires changes to proceed. Comment at: packages/Python/lldbsuite/test/lldbtest.py:2100 @@ -2099,3 +2099,3 @@ } -elif sys.platform.startswith('freebsd') or sys.platform.startswith("linux") or os.environ.get('LLDB_BUILD_TYPE') == 'Makefile': +elif sys.platform.rstrip('123456789') in ('freebsd', 'linux', 'netbsd') or os.environ.get('LLDB_BUILD_TYPE') == 'Makefile': d = {'CXX_SOURCES' : sources, joerg wrote: > No zero? Oh, indeed. Zero is necessary. Repository: rL LLVM http://reviews.llvm.org/D15374 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D20106: Generalize child process monitoring functions
emaste added a comment. Nice. For test building FreeBSD, snapshot VM images are available at ftp://ftp.freebsd.org/pub/FreeBSD/snapshots/VM-IMAGES/11.0-CURRENT/amd64/Latest/ and I have some instructions for building lldb on FreeBSD at https://wiki.freebsd.org/lldb. http://reviews.llvm.org/D20106 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [lldb] r269025 - Fix race in TestExitDuringStep and unify pseudo_barrier handling
On 10 May 2016 at 03:54, Pavel Labath via lldb-commits wrote: > Author: labath > Date: Tue May 10 02:54:25 2016 > New Revision: 269025 > > URL: http://llvm.org/viewvc/llvm-project?rev=269025&view=rev > Log: > Fix race in TestExitDuringStep and unify pseudo_barrier handling After this change TestThreadExit is failing on FreeBSD 10 with: ... File "/tank/emaste/src/llvm/tools/lldb/packages/Python/lldbsuite/test/functionalities/thread/thread_exit/TestThreadExit.py", line 36, in test bp3_id = lldbutil.run_break_set_by_file_and_line (self, "main.cpp", self.break_3, num_expected_locations=1) File "/tank/emaste/src/llvm/tools/lldb/packages/Python/lldbsuite/test/lldbutil.py", line 342, in run_break_set_by_file_and_line check_breakpoint_result (test, break_results, num_locations = num_expected_locations) File "/tank/emaste/src/llvm/tools/lldb/packages/Python/lldbsuite/test/lldbutil.py", line 474, in check_breakpoint_result test.assertTrue (num_locations == out_num_locations, "Expecting %d locations, got %d."%(num_locations, out_num_locations)) AssertionError: False is not True : Expecting 1 locations, got 2. ... "breakpoint list" shows: 3: file = '/tank/emaste/src/llvm/tools/lldb/packages/Python/lldbsuite/test/functionalities/thread/thread_exit/main.cpp', line = 67, locations = 2 3.1: where = a.out`main + 1437 at main.cpp:67, address = 0x004018bd, unresolved, hit count = 0 3.2: where = a.out`main + 1846 at main.cpp:67, address = 0x00401a56, unresolved, hit count = 0 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [lldb] r269025 - Fix race in TestExitDuringStep and unify pseudo_barrier handling
On 11 May 2016 at 10:10, Pavel Labath wrote: > Hi, > > so I think this is our old "compiler generates unpredictable number of > source locations for a line" friend again, which got triggered by a > random code reshuffle. Assuming the test still passes for you after > that, can you prepare a change to remove the "num_expected_locations = > 1" from the relevant lines? Indeed. I'm able to get the test passing with this ugly workaround: --- a/packages/Python/lldbsuite/test/functionalities/thread/thread_exit/TestThreadExit.py +++ b/packages/Python/lldbsuite/test/functionalities/thread/thread_exit/TestThreadExit.py @@ -31,16 +31,18 @@ class ThreadExitTestCase(TestBase): self.runCmd("file " + exe, CURRENT_EXECUTABLE_SET) # This should create a breakpoint with 1 location. + # Note, Clang 3.4.1 on FreeBSD 10 produces debug info with two locations + # for breakpoint 3. Work around that by requiring at least one location. bp1_id = lldbutil.run_break_set_by_file_and_line (self, "main.cpp", self.break_1, num_expected_locations=1) bp2_id = lldbutil.run_break_set_by_file_and_line (self, "main.cpp", self.break_2, num_expected_locations=1) -bp3_id = lldbutil.run_break_set_by_file_and_line (self, "main.cpp", self.break_3, num_expected_locations=1) +bp3_id = lldbutil.run_break_set_by_file_and_line (self, "main.cpp", self.break_3, num_expected_locations=-1) bp4_id = lldbutil.run_break_set_by_file_and_line (self, "main.cpp", self.break_4, num_expected_locations=1) # The breakpoint list should show 1 locations. self.expect("breakpoint list -f", "Breakpoint location shown correctly", substrs = ["1: file = 'main.cpp', line = %d, exact_match = 0, locations = 1" % self.break_1, "2: file = 'main.cpp', line = %d, exact_match = 0, locations = 1" % self.break_2, - "3: file = 'main.cpp', line = %d, exact_match = 0, locations = 1" % self.break_3, + "3: file = 'main.cpp', line = %d, exact_match = 0, locations = " % self.break_3, "4: file = 'main.cpp', line = %d, exact_match = 0, locations = 1" % self.break_4]) # Run the program. @@ -76,6 +78,10 @@ class ThreadExitTestCase(TestBase): # Run to the fourth breakpoint self.runCmd("continue") + # bp3 may have multiple locations. Continue if we're still stopped there. +if lldbutil.get_one_thread_stopped_at_breakpoint_id(process, bp3_id): +self.runCmd("continue") + stopped_thread = lldbutil.get_one_thread_stopped_at_breakpoint_id(process, bp4_id) self.assertIsNotNone(stopped_thread, "Process is not stopped at breakpoint 4") ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D20188: Turn on LLDB_EDITLINE_USE_WCHAR on NetBSD
emaste added inline comments. Comment at: include/lldb/Host/Editline.h:33 @@ -31,3 +32,3 @@ // components needed to handle wide characters ( , codecvt_utf8, libedit built with '--enable-widec' ) -// are not consistenly available on non-OSX platforms. The wchar_t versions of libedit functions will only be +// are available on OSX and NetBSD. The wchar_t versions of libedit functions will only be // used in cases where this is true. This is a compile time dependecy, for now selected per target Platform Perhaps just `some platforms`? It doesn't make sense to repeat the list of `#if defined` conditions in the comment. Repository: rL LLVM http://reviews.llvm.org/D20188 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D20188: Turn on LLDB_EDITLINE_USE_WCHAR on NetBSD
emaste accepted this revision. emaste added a comment. Thanks. (The reason I mentioned it is that I'll add __FreeBSD__ shortly.) http://reviews.llvm.org/D20188 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [lldb] r269025 - Fix race in TestExitDuringStep and unify pseudo_barrier handling
On 11 May 2016 at 11:39, Pavel Labath wrote: > > Working around it this way is quite ugly. Let's try something else. > Would getting rid of the do{}while loop in the macro fix the problem? > I added it to make the macro a bit more safe, but I don't think it's > really necessary... Indeed, the test passes with the do while(0) removed from pseudo_barrier_wait. ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r269421 - Remove unused variable
Author: emaste Date: Fri May 13 09:49:38 2016 New Revision: 269421 URL: http://llvm.org/viewvc/llvm-project?rev=269421&view=rev Log: Remove unused variable Modified: lldb/trunk/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp Modified: lldb/trunk/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp?rev=269421&r1=269420&r2=269421&view=diff == --- lldb/trunk/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp (original) +++ lldb/trunk/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp Fri May 13 09:49:38 2016 @@ -668,8 +668,7 @@ std::string ClangExpressionParser::GetClangTargetABI (const ArchSpec &target_arch) { std::string abi; -const llvm::Triple::ArchType machine = target_arch.GetMachine(); - + if(target_arch.IsMIPS()) { switch (target_arch.GetFlags () & ArchSpec::eMIPSABI_mask) ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [lldb] r269377 - Fix some long standing issues that caused tests to be flaky.
On 12 May 2016 at 18:58, Greg Clayton via lldb-commits wrote: > Author: gclayton > Date: Thu May 12 17:58:52 2016 > New Revision: 269377 > > URL: http://llvm.org/viewvc/llvm-project?rev=269377&view=rev > Log: > Fix some long standing issues that caused tests to be flaky. On FreeBSD lldb now hits the new "someone is calling HostThread::Cancel()" assertion when exiting. I haven't looked at it yet (and not saying the assertion is incorrect) - this is just a heads-up to anyone else running lldb head on FreeBSD. ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r269434 - Disable HostThread::Cancel assertion on FreeBSD
Author: emaste Date: Fri May 13 12:01:59 2016 New Revision: 269434 URL: http://llvm.org/viewvc/llvm-project?rev=269434&view=rev Log: Disable HostThread::Cancel assertion on FreeBSD It is still used by ProcessMonitor::StopMonitoringChildProcess and ProcessMonitor::StopOpThread. Modified: lldb/trunk/source/Host/posix/HostThreadPosix.cpp Modified: lldb/trunk/source/Host/posix/HostThreadPosix.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Host/posix/HostThreadPosix.cpp?rev=269434&r1=269433&r2=269434&view=diff == --- lldb/trunk/source/Host/posix/HostThreadPosix.cpp (original) +++ lldb/trunk/source/Host/posix/HostThreadPosix.cpp Fri May 13 12:01:59 2016 @@ -56,7 +56,9 @@ HostThreadPosix::Cancel() if (IsJoinable()) { #ifndef __ANDROID__ +#ifndef __FreeBSD__ assert(false && "someone is calling HostThread::Cancel()"); +#endif int err = ::pthread_cancel(m_thread); error.SetError(err, eErrorTypePOSIX); #else ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [lldb] r269377 - Fix some long standing issues that caused tests to be flaky.
On 13 May 2016 at 11:23, Ed Maste wrote: > On 12 May 2016 at 18:58, Greg Clayton via lldb-commits > wrote: >> Author: gclayton >> Date: Thu May 12 17:58:52 2016 >> New Revision: 269377 >> >> URL: http://llvm.org/viewvc/llvm-project?rev=269377&view=rev >> Log: >> Fix some long standing issues that caused tests to be flaky. > > On FreeBSD lldb now hits the new "someone is calling > HostThread::Cancel()" assertion when exiting. > > I haven't looked at it yet (and not saying the assertion is incorrect) > - this is just a heads-up to anyone else running lldb head on FreeBSD. I disabled the assertion on FreeBSD, since the two ProcessMonitor threads still use Cancel(). ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D20274: Add preliminary bits for Plugins/Process/NetBSD
emaste added a comment. In http://reviews.llvm.org/D20274#431058, @clayborg wrote: > What linux and macosx do is even when debugging locally we run through > lldb-server (a GDB remote protocol server). And this is the way we plan to go on FreeBSD as well and will drop the in-process debugging support when that's ready. Repository: rL LLVM http://reviews.llvm.org/D20274 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [lldb] r270488 - We have many radars showing that stepping through C++ code can result in slow steps.
On 23 May 2016 at 16:37, Greg Clayton via lldb-commits wrote: > Author: gclayton > Date: Mon May 23 15:37:24 2016 > New Revision: 270488 > > URL: http://llvm.org/viewvc/llvm-project?rev=270488&view=rev > Log: > We have many radars showing that stepping through C++ code can result in slow > steps. This broke the build on FreeBSD 10 (Clang 3.4.1): In file included from ../tools/lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABI/ItaniumABILanguageRuntime.cpp:10: In file included from ../tools/lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABI/ItaniumABILanguageRuntime.h:15: In file included from /usr/include/c++/v1/map:423: In file included from /usr/include/c++/v1/__tree:16: In file included from /usr/include/c++/v1/memory:602: /usr/include/c++/v1/utility:254:9: error: field has incomplete type 'lldb_private::TypeAndOrName' _T2 second; ^ /usr/include/c++/v1/type_traits:2370:27: note: in instantiation of template class 'std::__1::pair' requested here decltype(__is_constructible_test(declval<_Tp>(), declval<_Args>()...)) ^ /usr/include/c++/v1/type_traits:2419:14: note: in instantiation of template class 'std::__1::__libcpp_is_constructible >>' requested here : public __libcpp_is_constructible::value || is_reference<_Tp>::value, ^ /usr/include/c++/v1/type_traits:2445:14: note: in instantiation of template class 'std::__1::__is_constructible_void_check >>' requested here : public __is_constructible_void_check<__contains_void<_Tp, _Args...>::value ^ /usr/include/c++/v1/type_traits:2936:41: note: in instantiation of template class 'std::__1::is_constructible >>' requested here : __libcpp_is_nothrow_constructible::value, is_reference<_Tp>::value, _Tp, _Args...> ^ /usr/include/c++/v1/type_traits:3059:14: note: in instantiation of template class 'std::__1::is_nothrow_constructible >>' requested here : public is_nothrow_constructible<_Tp> ^ /usr/include/c++/v1/map:840:13: note: in instantiation of template class 'std::__1::is_nothrow_default_constructible > >' requested here is_nothrow_default_constructible::value && ^ /usr/include/c++/v1/__config:349:34: note: expanded from macro '_NOEXCEPT_' # define _NOEXCEPT_(x) noexcept(x) ^ ../tools/lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABI/ItaniumABILanguageRuntime.h:111:15: note: in instantiation of exception specification for 'map' requested here m_dynamic_type_map(), ^ ../tools/lldb/include/lldb/lldb-forward.h:258:9: note: forward declaration of 'lldb_private::TypeAndOrName' class TypeAndOrName; ^ ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [lldb] r270488 - We have many radars showing that stepping through C++ code can result in slow steps.
On 24 May 2016 at 15:18, Pavel Labath wrote: > r270570 fixed it for me. Indeed, thank you. ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r270603 - xfail TestRedefinitionsInline with older Clang
Author: emaste Date: Tue May 24 14:51:11 2016 New Revision: 270603 URL: http://llvm.org/viewvc/llvm-project?rev=270603&view=rev Log: xfail TestRedefinitionsInline with older Clang This fails on FreeBSD 10 with the system compiler, Clang 3.4.1. llvm.org/pr27845 Modified: lldb/trunk/packages/Python/lldbsuite/test/lang/c/inlines/TestRedefinitionsInInlines.py Modified: lldb/trunk/packages/Python/lldbsuite/test/lang/c/inlines/TestRedefinitionsInInlines.py URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/lang/c/inlines/TestRedefinitionsInInlines.py?rev=270603&r1=270602&r2=270603&view=diff == --- lldb/trunk/packages/Python/lldbsuite/test/lang/c/inlines/TestRedefinitionsInInlines.py (original) +++ lldb/trunk/packages/Python/lldbsuite/test/lang/c/inlines/TestRedefinitionsInInlines.py Tue May 24 14:51:11 2016 @@ -1,4 +1,5 @@ from lldbsuite.test import lldbinline from lldbsuite.test import decorators -lldbinline.MakeInlineTest(__file__, globals(), [decorators.expectedFailureAll(oslist=["windows"], bugnumber="llvm.org/pr27845")]) +lldbinline.MakeInlineTest(__file__, globals(), [decorators.expectedFailureAll(oslist=["windows"], bugnumber="llvm.org/pr27845"), + decorators.expectedFailureAll(compiler="clang", compiler_version=["<", "3.5"], bugnumber="llvm.org/pr27845")]) ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D20671: [cmake] Add a big warning about a libstdc++ issue
emaste added a comment. FreeBSD 10.0 and later uses libc++. FreeBSD 9 has a very old libstdc++ and a very old gcc and can't build Clang 3.5 or later with the system compiler anyway. So this isn't a problem for FreeBSD. I don't know cmake well enough to approve the change but the idea definitely sounds good to me. http://reviews.llvm.org/D20671 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [lldb] r270891 - Make sure that we succeed in starting a definition before we complete it and emit an error if we fail to start the definition.
On 26 May 2016 at 15:24, Greg Clayton via lldb-commits wrote: > Author: gclayton > Date: Thu May 26 14:24:02 2016 > New Revision: 270891 > > URL: http://llvm.org/viewvc/llvm-project?rev=270891&view=rev > Log: > Make sure that we succeed in starting a definition before we complete it and > emit an error if we fail to start the definition. > ... > +{ > +module_sp->ReportError ("DWARF DIE at > 0x%8.8x was not able to start its definition.\nPlease file a bug and attach > the file at the start of this error message", > + > type_die_ref.die_offset, > +type_name_cstr); > +} ../tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp:1762:61: warning: data argument not used by format string [-Wformat-extra-args] type_name_cstr); ^ ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [lldb] r270891 - Make sure that we succeed in starting a definition before we complete it and emit an error if we fail to start the definition.
On 31 May 2016 at 16:24, Ed Maste wrote: > > ../tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp:1762:61: > warning: data argument not used by format string [-Wformat-extra-args] > type_name_cstr); > ^ Oops, hit send too early. I didn't make a change because it wasn't obvious from the diff context if the format string should have a %s added, or if the extraneous type_name_cstr arg should be deleted. ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D22463: [RFC] Moving to GitHub Proposal: NOT DECISION!
emaste added a subscriber: emaste. Comment at: docs/Proposals/GitHub.rst:8-9 @@ +7,4 @@ + +This is a proposal to move our current revision control system from Subversion +to GitHub. Below are the financial and technical arguments as to why we need +such a move and how will people (and validation infrastructure) continue to work It seems pedantic, but I think we should try hard to avoid conflating Git and GitHub. What about: "move our revision control system from //self-hosted// Subversion to Git hosted by GitHub." Comment at: docs/Proposals/GitHub.rst:93 @@ +92,3 @@ +Furthermore, GitHub has an *SVN view* (https://github.com/blog/626-announcing-svn-support) +where people stuck with SVN infrastructure and tooling can slowly migrate or +even stay working as if it was an SVN repository (including read-write access). Replace "stuck" with something neutral. "stuck" implies that everyone will want to move but some may not be able to for technical or other reasons, but some people actually prefer SVN. Comment at: docs/Proposals/GitHub.rst:180 @@ +179,3 @@ + +As soon as we decide to move, we'll have to set a date for the process to begin. + This presents it as if the decision is already made, which somewhat defeats the purpose of writing a proposal for the LLVM community to vote on. Maybe "If we decide to move"? https://reviews.llvm.org/D22463 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D20436: Clean up vestigial remnants of locking primitives
emaste added a subscriber: emaste. emaste added a comment. I'm testing on FreeBSD now https://reviews.llvm.org/D20436 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D20436: Clean up vestigial remnants of locking primitives
emaste added a comment. With this patch, test results on FreeBSD are consistent. https://reviews.llvm.org/D20436 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r275983 - Typo corrections identified by codespell
Author: emaste Date: Tue Jul 19 10:28:02 2016 New Revision: 275983 URL: http://llvm.org/viewvc/llvm-project?rev=275983&view=rev Log: Typo corrections identified by codespell Submitted by giffu...@yahoo.com; I fixed a couple of nearby errors and incorrect changes in the patch. llvm.org/pr27634 Modified: lldb/trunk/include/lldb/Core/ArchSpec.h lldb/trunk/include/lldb/Core/Module.h lldb/trunk/include/lldb/Target/Platform.h lldb/trunk/include/lldb/Target/Target.h lldb/trunk/include/lldb/Target/Thread.h lldb/trunk/include/lldb/Target/ThreadPlan.h lldb/trunk/include/lldb/Utility/TaskPool.h lldb/trunk/include/lldb/lldb-enumerations.h lldb/trunk/source/Commands/CommandObjectType.cpp lldb/trunk/source/Core/Error.cpp lldb/trunk/source/Host/common/Editline.cpp lldb/trunk/source/Host/posix/ConnectionFileDescriptorPosix.cpp lldb/trunk/source/Plugins/ABI/SysV-mips64/ABISysV_mips64.cpp lldb/trunk/source/Plugins/DynamicLoader/Hexagon-DYLD/DynamicLoaderHexagonDYLD.cpp lldb/trunk/source/Plugins/ExpressionParser/Go/GoUserExpression.cpp lldb/trunk/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.cpp lldb/trunk/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp lldb/trunk/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp lldb/trunk/source/Plugins/SymbolFile/DWARF/DWARFCompileUnit.cpp lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp lldb/trunk/source/Symbol/LineTable.cpp lldb/trunk/source/Target/Memory.cpp lldb/trunk/source/Target/StackFrame.cpp lldb/trunk/source/Utility/ModuleCache.cpp lldb/trunk/tools/lldb-mi/MICmnLogMediumFile.cpp Modified: lldb/trunk/include/lldb/Core/ArchSpec.h URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Core/ArchSpec.h?rev=275983&r1=275982&r2=275983&view=diff == --- lldb/trunk/include/lldb/Core/ArchSpec.h (original) +++ lldb/trunk/include/lldb/Core/ArchSpec.h Tue Jul 19 10:28:02 2016 @@ -435,7 +435,7 @@ public: /// @param[in] cpu The required CPU type. /// /// @param[in] os The optional OS type -/// The default value of 0 was choosen to from the ELF spec value +/// The default value of 0 was chosen to from the ELF spec value /// ELFOSABI_NONE. ELF is the only one using this parameter. If another /// format uses this parameter and 0 does not work, use a value over /// 255 because in the ELF header this is value is only a byte. Modified: lldb/trunk/include/lldb/Core/Module.h URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Core/Module.h?rev=275983&r1=275982&r2=275983&view=diff == --- lldb/trunk/include/lldb/Core/Module.h (original) +++ lldb/trunk/include/lldb/Core/Module.h Tue Jul 19 10:28:02 2016 @@ -250,7 +250,7 @@ public: SymbolContextList &sc_list); //-- -/// Find a funciton symbols in the object file's symbol table. +/// Find a function symbols in the object file's symbol table. /// /// @param[in] name /// The name of the symbol that we are looking for. Modified: lldb/trunk/include/lldb/Target/Platform.h URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Target/Platform.h?rev=275983&r1=275982&r2=275983&view=diff == --- lldb/trunk/include/lldb/Target/Platform.h (original) +++ lldb/trunk/include/lldb/Target/Platform.h Tue Jul 19 10:28:02 2016 @@ -1055,7 +1055,7 @@ class ModuleCache; /// contain the error message. /// /// @return -/// The number of processes we are succesfully connected to. +/// The number of processes we are successfully connected to. //-- virtual size_t ConnectToWaitingProcesses(lldb_private::Debugger& debugger, lldb_private::Error& error); Modified: lldb/trunk/include/lldb/Target/Target.h URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Target/Target.h?rev=275983&r1=275982&r2=275983&view=diff == --- lldb/trunk/include/lldb/Target/Target.h (original) +++ lldb/trunk/include/lldb/Target/Target.h Tue Jul 19 10:28:02 2016 @@ -1074,7 +1074,7 @@ public: /// dependent modules that are discovered from the object files, or /// discovered at runtime as things are dynamically loaded. /// -/// Setting the executable causes any of the current dependant +/// Setting the executable causes any of the current dependent /// image information to be cleared and replaced with the static /// dependent image information f
Re: [Lldb-commits] [PATCH] D20436: Clean up vestigial remnants of locking primitives
emaste added a comment. Is this ready to be committed? https://reviews.llvm.org/D20436 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D22950: Centralize all calls to select() into a single class so we always call select properly
emaste added a comment. > This is a particular problem on OS X because we support debugging with the > debug info in .o files, so for a complex project we could be opening lots of > those files. If you don't do that, then it's more like number of shared > libraries a normal program will open. That's unlikely to get to more than > 1024. OK. We'll want to support the same approach in FreeBSD too, but other tooling needs to be in place first (at least a new linker) so it can be left alone for now. We can just bump it up if/when it becomes a problem. https://reviews.llvm.org/D22950 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r278625 - elf-core: set powerpc vector byte order correctly
Author: emaste Date: Sun Aug 14 06:30:11 2016 New Revision: 278625 URL: http://llvm.org/viewvc/llvm-project?rev=278625&view=rev Log: elf-core: set powerpc vector byte order correctly It was being set to the fp reg set's byte order due to an apparent copy-and-pasteo. Modified: lldb/trunk/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_powerpc.cpp Modified: lldb/trunk/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_powerpc.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_powerpc.cpp?rev=278625&r1=278624&r2=278625&view=diff == --- lldb/trunk/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_powerpc.cpp (original) +++ lldb/trunk/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_powerpc.cpp Sun Aug 14 06:30:11 2016 @@ -30,7 +30,7 @@ RegisterContextCorePOSIX_powerpc::Regist m_fpr.SetByteOrder(fpregset.GetByteOrder()); m_vec_buffer.reset(new DataBufferHeap(vregset.GetDataStart(), vregset.GetByteSize())); m_vec.SetData(m_vec_buffer); -m_vec.SetByteOrder(fpregset.GetByteOrder()); +m_vec.SetByteOrder(vregset.GetByteOrder()); } RegisterContextCorePOSIX_powerpc::~RegisterContextCorePOSIX_powerpc() ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D23977: Support of lldb on Kfreebsd
emaste added a subscriber: emaste. emaste added a comment. - in the future can you please upload with context (e.g. git diff -U) - I think the OS names in utilsOsType.py are kept sorted and the actual enum values are not part of an ABI https://reviews.llvm.org/D23977 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r280755 - Reorder FreeBSD Host.cpp #includes to fix build
Author: emaste Date: Tue Sep 6 16:25:31 2016 New Revision: 280755 URL: http://llvm.org/viewvc/llvm-project?rev=280755&view=rev Log: Reorder FreeBSD Host.cpp #includes to fix build Modified: lldb/trunk/source/Host/freebsd/Host.cpp Modified: lldb/trunk/source/Host/freebsd/Host.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Host/freebsd/Host.cpp?rev=280755&r1=280754&r2=280755&view=diff == --- lldb/trunk/source/Host/freebsd/Host.cpp (original) +++ lldb/trunk/source/Host/freebsd/Host.cpp Tue Sep 6 16:25:31 2016 @@ -9,17 +9,19 @@ //===--===// // C Includes -#include -#include -#include +#include + +#include #include +#include #include -#include #include #include -#include -#include + +#include +#include +#include // C++ Includes // Other libraries and framework includes ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Re: [Lldb-commits] [PATCH] D24293: Use llvm's demangler
emaste added a subscriber: emaste. emaste added a comment. Which library contains `llvm::itaniumDemangle`? https://reviews.llvm.org/D24293 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r280931 - Fix unused variable and integer sign warnings from r280906
Author: emaste Date: Thu Sep 8 08:11:31 2016 New Revision: 280931 URL: http://llvm.org/viewvc/llvm-project?rev=280931&view=rev Log: Fix unused variable and integer sign warnings from r280906 Modified: lldb/trunk/source/Core/Disassembler.cpp Modified: lldb/trunk/source/Core/Disassembler.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Core/Disassembler.cpp?rev=280931&r1=280930&r2=280931&view=diff == --- lldb/trunk/source/Core/Disassembler.cpp (original) +++ lldb/trunk/source/Core/Disassembler.cpp Thu Sep 8 08:11:31 2016 @@ -369,7 +369,6 @@ bool Disassembler::PrintInstructions(Dis const uint32_t max_opcode_byte_size = disasm_ptr->GetInstructionList().GetMaxOpcocdeByteSize(); - uint32_t offset = 0; SymbolContext sc; SymbolContext prev_sc; AddressRange current_source_line_range; @@ -549,7 +548,7 @@ bool Disassembler::PrintInstructions(Dis if (this_line != previous_line) { std::vector previous_lines; -for (int i = 0; +for (uint32_t i = 0; i < num_mixed_context_lines && (this_line.line - num_mixed_context_lines) > 0; i++) { @@ -579,7 +578,7 @@ bool Disassembler::PrintInstructions(Dis source_lines_to_display.current_source_line = source_lines_to_display.lines.size() - 1; -for (int i = 0; i < num_mixed_context_lines; i++) { +for (uint32_t i = 0; i < num_mixed_context_lines; i++) { SourceLine next_line; next_line.file = this_line.file; next_line.line = this_line.line + i + 1; ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [lldb] r280933 - Fix -Wcovered-switch-default warning in AppleObjCRuntimeV2.cpp
Author: emaste Date: Thu Sep 8 08:17:42 2016 New Revision: 280933 URL: http://llvm.org/viewvc/llvm-project?rev=280933&view=rev Log: Fix -Wcovered-switch-default warning in AppleObjCRuntimeV2.cpp The switch coveres all possible values. If a new one is added in the future the compiler will start warning, providing a notification that the switch needs updating. Modified: lldb/trunk/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp Modified: lldb/trunk/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp?rev=280933&r1=280932&r2=280933&view=diff == --- lldb/trunk/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp (original) +++ lldb/trunk/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp Thu Sep 8 08:17:42 2016 @@ -1906,8 +1906,6 @@ void AppleObjCRuntimeV2::WarnIfNoClasses "reduce the quality of type information available.\n"); m_noclasses_warning_emitted = true; break; -default: - break; } } } ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits