[Lldb-commits] [lldb] r293767 - Fix missing include after r293660

2017-02-01 Thread Ismail Donmez via lldb-commits
Author: ismail
Date: Wed Feb  1 07:33:50 2017
New Revision: 293767

URL: http://llvm.org/viewvc/llvm-project?rev=293767&view=rev
Log:
Fix missing include after r293660

Modified:
lldb/trunk/tools/intel-mpx/IntelMPXTablePlugin.cpp

Modified: lldb/trunk/tools/intel-mpx/IntelMPXTablePlugin.cpp
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/intel-mpx/IntelMPXTablePlugin.cpp?rev=293767&r1=293766&r2=293767&view=diff
==
--- lldb/trunk/tools/intel-mpx/IntelMPXTablePlugin.cpp (original)
+++ lldb/trunk/tools/intel-mpx/IntelMPXTablePlugin.cpp Wed Feb  1 07:33:50 2017
@@ -8,6 +8,7 @@
 
//===--===//
 
 // C++ includes
+#include 
 #include 
 
 // Project includes


___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] r293768 - Transform ProcessLauncherLinux to ProcessLauncherPosixFork

2017-02-01 Thread Kamil Rytarowski via lldb-commits
Author: kamil
Date: Wed Feb  1 08:30:40 2017
New Revision: 293768

URL: http://llvm.org/viewvc/llvm-project?rev=293768&view=rev
Log:
Transform ProcessLauncherLinux to ProcessLauncherPosixFork

Summary:
Use ProcessLauncherPosixFork in Linux and NetBSD.

Changes to ProcessLauncherLinux:
 - Limit personality.h and ASLR code to Linux.
 - Reuse portable ptrace(2) PT_TRACE_ME operation available on Linux and BSDs.
 - Limit ETXTBSY error path from execve(2) to Linux.
 - In LaunchProcess declaration change virtual to override.

This code should be readily available for FreeBSD.

Sponsored by 

Reviewers: joerg, clayborg, labath, emaste

Reviewed By: labath

Subscribers: danalbert, srhines, mgorny, #lldb

Tags: #lldb

Differential Revision: https://reviews.llvm.org/D29347

Added:
lldb/trunk/include/lldb/Host/posix/ProcessLauncherPosixFork.h
lldb/trunk/source/Host/posix/ProcessLauncherPosixFork.cpp
Modified:
lldb/trunk/include/lldb/Host/linux/ProcessLauncherLinux.h
lldb/trunk/source/Host/CMakeLists.txt
lldb/trunk/source/Host/common/Host.cpp
lldb/trunk/source/Host/linux/ProcessLauncherLinux.cpp
lldb/trunk/source/Plugins/Process/Linux/NativeProcessLinux.cpp

Modified: lldb/trunk/include/lldb/Host/linux/ProcessLauncherLinux.h
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Host/linux/ProcessLauncherLinux.h?rev=293768&r1=293767&r2=293768&view=diff
==
--- lldb/trunk/include/lldb/Host/linux/ProcessLauncherLinux.h (original)
+++ lldb/trunk/include/lldb/Host/linux/ProcessLauncherLinux.h Wed Feb  1 
08:30:40 2017
@@ -1,25 +0,0 @@
-//===-- ProcessLauncherAndroid.h *- C++ 
-*-===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===--===//
-
-#ifndef lldb_Host_android_ProcessLauncherAndroid_h_
-#define lldb_Host_android_ProcessLauncherAndroid_h_
-
-#include "lldb/Host/ProcessLauncher.h"
-
-namespace lldb_private {
-
-class ProcessLauncherLinux : public ProcessLauncher {
-public:
-  virtual HostProcess LaunchProcess(const ProcessLaunchInfo &launch_info,
-Error &error);
-};
-
-} // end of namespace lldb_private
-
-#endif

Added: lldb/trunk/include/lldb/Host/posix/ProcessLauncherPosixFork.h
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Host/posix/ProcessLauncherPosixFork.h?rev=293768&view=auto
==
--- lldb/trunk/include/lldb/Host/posix/ProcessLauncherPosixFork.h (added)
+++ lldb/trunk/include/lldb/Host/posix/ProcessLauncherPosixFork.h Wed Feb  1 
08:30:40 2017
@@ -0,0 +1,25 @@
+//===-- ProcessLauncherPosixFork.h --*- C++ 
-*-===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===--===//
+
+#ifndef lldb_Host_posix_ProcessLauncherPosixFork_h_
+#define lldb_Host_posix_ProcessLauncherPosixFork_h_
+
+#include "lldb/Host/ProcessLauncher.h"
+
+namespace lldb_private {
+
+class ProcessLauncherPosixFork : public ProcessLauncher {
+public:
+  HostProcess LaunchProcess(const ProcessLaunchInfo &launch_info,
+Error &error) override;
+};
+
+} // end of namespace lldb_private
+
+#endif

Modified: lldb/trunk/source/Host/CMakeLists.txt
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Host/CMakeLists.txt?rev=293768&r1=293767&r2=293768&view=diff
==
--- lldb/trunk/source/Host/CMakeLists.txt (original)
+++ lldb/trunk/source/Host/CMakeLists.txt Wed Feb  1 08:30:40 2017
@@ -90,6 +90,7 @@ else()
 posix/LockFilePosix.cpp
 posix/MainLoopPosix.cpp
 posix/PipePosix.cpp
+posix/ProcessLauncherPosixFork.cpp
 )
 
   if (NOT (CMAKE_SYSTEM_NAME MATCHES "Android"))
@@ -122,7 +123,6 @@ else()
   linux/HostInfoLinux.cpp
   linux/HostThreadLinux.cpp
   linux/LibcGlue.cpp
-  linux/ProcessLauncherLinux.cpp
   linux/ThisThread.cpp
   )
 list(APPEND LLDB_PLUGINS lldbPluginProcessLinux)

Modified: lldb/trunk/source/Host/common/Host.cpp
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Host/common/Host.cpp?rev=293768&r1=293767&r2=293768&view=diff
==
--- lldb/trunk/source/Host/common/Host.cpp (original)
+++ lldb/trunk/source/Host/common/Host.cpp Wed Feb  1 08:30:40 2017
@@ -71,8 +71,8 @@
 
 #if defined(_WIN32)
 #include "lldb/Host/windows/ProcessLauncherWindows.h"
-#elif defined(__linux__)
-#include "lldb/Host/li

[Lldb-commits] [lldb] r293770 - Document that LaunchProcessPosixSpawn is used on NetBSD

2017-02-01 Thread Kamil Rytarowski via lldb-commits
Author: kamil
Date: Wed Feb  1 08:35:08 2017
New Revision: 293770

URL: http://llvm.org/viewvc/llvm-project?rev=293770&view=rev
Log:
Document that LaunchProcessPosixSpawn is used on NetBSD

No functional change.

Sponsored by 

Modified:
lldb/trunk/source/Host/common/Host.cpp

Modified: lldb/trunk/source/Host/common/Host.cpp
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Host/common/Host.cpp?rev=293770&r1=293769&r2=293770&view=diff
==
--- lldb/trunk/source/Host/common/Host.cpp (original)
+++ lldb/trunk/source/Host/common/Host.cpp Wed Feb  1 08:35:08 2017
@@ -623,7 +623,7 @@ Error Host::RunShellCommand(const Args &
   return error;
 }
 
-// LaunchProcessPosixSpawn for Apple, Linux, FreeBSD and other GLIBC
+// LaunchProcessPosixSpawn for Apple, Linux, FreeBSD, NetBSD and other GLIBC
 // systems
 
 #if defined(__APPLE__) || defined(__linux__) || defined(__FreeBSD__) ||
\


___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D29078: This patch implements a command to access and manipulate the Intel(R) MPX Boundary Tables.

2017-02-01 Thread Sylvestre Ledru via Phabricator via lldb-commits
sylvestre.ledru added a comment.

This change is creating a new library 
usr/lib/llvm-5.0/bin/liblldb-intel-mpxtable.so on GNU/Linux 64b
That sounds pretty specific, is that really something that we want to do?


Repository:
  rL LLVM

https://reviews.llvm.org/D29078



___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D29078: This patch implements a command to access and manipulate the Intel(R) MPX Boundary Tables.

2017-02-01 Thread Valentina Giusti via Phabricator via lldb-commits
valentinagiusti added a comment.

Do you have a better proposal?


Repository:
  rL LLVM

https://reviews.llvm.org/D29078



___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D29078: This patch implements a command to access and manipulate the Intel(R) MPX Boundary Tables.

2017-02-01 Thread Sylvestre Ledru via Phabricator via lldb-commits
sylvestre.ledru added a comment.

Like llvm or lldb in general, just integrate it into liblldb?

By the way, liblldb-intel-mpxtable.so-5.0 is incorrect should be 
liblldb-intel-mpxtable.so.5.0


Repository:
  rL LLVM

https://reviews.llvm.org/D29078



___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D29256: Do not pass non-POD type variables through variadic function

2017-02-01 Thread Kamil Rytarowski via Phabricator via lldb-commits
krytarowski updated this revision to Diff 86644.
krytarowski edited the summary of this revision.
krytarowski added a comment.

Replace SetErrorDescriptionn(errMsg); with SetErrorDescription(errMsg);


Repository:
  rL LLVM

https://reviews.llvm.org/D29256

Files:
  tools/lldb-mi/MICmnBase.cpp
  tools/lldb-mi/MICmnBase.h
  tools/lldb-mi/MIDriver.cpp
  tools/lldb-mi/MIUtilString.cpp
  tools/lldb-mi/MIUtilString.h


Index: tools/lldb-mi/MIUtilString.h
===
--- tools/lldb-mi/MIUtilString.h
+++ tools/lldb-mi/MIUtilString.h
@@ -30,7 +30,7 @@
 
   // Static method:
 public:
-  static CMIUtilString Format(const CMIUtilString vFormating, ...);
+  static CMIUtilString Format(const char *vFormating, ...);
   static CMIUtilString FormatBinary(const MIuint64 vnDecimal);
   static CMIUtilString FormatValist(const CMIUtilString &vrFormating,
 va_list vArgs);
Index: tools/lldb-mi/MIUtilString.cpp
===
--- tools/lldb-mi/MIUtilString.cpp
+++ tools/lldb-mi/MIUtilString.cpp
@@ -157,7 +157,7 @@
 // Return:  CMIUtilString - Number of splits found in the string data.
 // Throws:  None.
 //--
-CMIUtilString CMIUtilString::Format(const CMIUtilString vFormating, ...) {
+CMIUtilString CMIUtilString::Format(const char *vFormating, ...) {
   va_list args;
   va_start(args, vFormating);
   CMIUtilString strResult = CMIUtilString::FormatPriv(vFormating, args);
Index: tools/lldb-mi/MIDriver.cpp
===
--- tools/lldb-mi/MIDriver.cpp
+++ tools/lldb-mi/MIDriver.cpp
@@ -509,7 +509,7 @@
 const CMIUtilString errMsg = CMIUtilString::Format(
 MIRSRC(IDS_THREADMGR_ERR_THREAD_FAIL_CREATE),
 CMICmnThreadMgrStd::Instance().GetErrorDescription().c_str());
-SetErrorDescriptionn(errMsg);
+SetErrorDescription(errMsg);
 return MIstatus::failure;
   }
 
Index: tools/lldb-mi/MICmnBase.h
===
--- tools/lldb-mi/MICmnBase.h
+++ tools/lldb-mi/MICmnBase.h
@@ -28,7 +28,7 @@
   bool HaveErrorDescription() const;
   const CMIUtilString &GetErrorDescription() const;
   void SetErrorDescription(const CMIUtilString &vrTxt) const;
-  void SetErrorDescriptionn(const CMIUtilString vFormat, ...) const;
+  void SetErrorDescriptionn(const char *vFormat, ...) const;
   void SetErrorDescriptionNoLog(const CMIUtilString &vrTxt) const;
   void ClrErrorDescription() const;
 
Index: tools/lldb-mi/MICmnBase.cpp
===
--- tools/lldb-mi/MICmnBase.cpp
+++ tools/lldb-mi/MICmnBase.cpp
@@ -122,7 +122,7 @@
 // Return:  None.
 // Throws:  None.
 //--
-void CMICmnBase::SetErrorDescriptionn(const CMIUtilString vFormat, ...) const {
+void CMICmnBase::SetErrorDescriptionn(const char *vFormat, ...) const {
   va_list args;
   va_start(args, vFormat);
   CMIUtilString strResult = CMIUtilString::FormatValist(vFormat, args);


Index: tools/lldb-mi/MIUtilString.h
===
--- tools/lldb-mi/MIUtilString.h
+++ tools/lldb-mi/MIUtilString.h
@@ -30,7 +30,7 @@
 
   // Static method:
 public:
-  static CMIUtilString Format(const CMIUtilString vFormating, ...);
+  static CMIUtilString Format(const char *vFormating, ...);
   static CMIUtilString FormatBinary(const MIuint64 vnDecimal);
   static CMIUtilString FormatValist(const CMIUtilString &vrFormating,
 va_list vArgs);
Index: tools/lldb-mi/MIUtilString.cpp
===
--- tools/lldb-mi/MIUtilString.cpp
+++ tools/lldb-mi/MIUtilString.cpp
@@ -157,7 +157,7 @@
 // Return:  CMIUtilString - Number of splits found in the string data.
 // Throws:  None.
 //--
-CMIUtilString CMIUtilString::Format(const CMIUtilString vFormating, ...) {
+CMIUtilString CMIUtilString::Format(const char *vFormating, ...) {
   va_list args;
   va_start(args, vFormating);
   CMIUtilString strResult = CMIUtilString::FormatPriv(vFormating, args);
Index: tools/lldb-mi/MIDriver.cpp
===
--- tools/lldb-mi/MIDriver.cpp
+++ tools/lldb-mi/MIDriver.cpp
@@ -509,7 +509,7 @@
 const CMIUtilString errMsg = CMIUtilString::Format(
 MIRSRC(IDS_THREADMGR_ERR_THREAD_FAIL_CREATE),
 CMICmnThreadMgrStd::Instance().GetErrorDescription().c_str());
-SetErrorDescriptionn(errMsg);
+SetErrorDescription(errMsg);
 return MIstatus::failure;
   }
 
Index: tools/lldb-mi/MICmnBase.h
===
--- tools/lldb-mi/MICmnBase.h
+++ tools/lldb-mi/MICmnBase.h
@@ -28,7 +28,7 @@
   bool HaveErrorDescription() const;
   const CMIUtilString &GetErrorDescription() const;
   void SetErrorDescription(const CMIUtilString &vrTxt) const;
-  void SetErrorDescription

[Lldb-commits] [lldb] r293774 - Do not pass non-POD type variables through variadic function

2017-02-01 Thread Kamil Rytarowski via lldb-commits
Author: kamil
Date: Wed Feb  1 10:02:55 2017
New Revision: 293774

URL: http://llvm.org/viewvc/llvm-project?rev=293774&view=rev
Log:
Do not pass non-POD type variables through variadic function

Summary:
Cannot pass object of non-POD type 'const CMIUtilString' through variadic 
function.

This behavior is undefined according to C++11 5.2.2/7:

> Passing a potentially-evaluated argument of class type having a non-trivial 
> copy constructor, a non-trivial move contructor, or a non-trivial destructor, 
> with no corresponding parameter, is conditionally-supported with 
> implementation-defined semantics.

Replace SetErrorDescriptionn(errMsg); with SetErrorDescription(errMsg);

Original patch by Tobias Nygren (NetBSD).

Sponsored by 


Reviewers: clayborg, labath, emaste, joerg, ki.stfu

Reviewed By: labath, ki.stfu

Subscribers: tnn, ki.stfu, #lldb

Tags: #lldb

Differential Revision: https://reviews.llvm.org/D29256

Modified:
lldb/trunk/tools/lldb-mi/MICmnBase.cpp
lldb/trunk/tools/lldb-mi/MICmnBase.h
lldb/trunk/tools/lldb-mi/MIDriver.cpp
lldb/trunk/tools/lldb-mi/MIUtilString.cpp
lldb/trunk/tools/lldb-mi/MIUtilString.h

Modified: lldb/trunk/tools/lldb-mi/MICmnBase.cpp
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-mi/MICmnBase.cpp?rev=293774&r1=293773&r2=293774&view=diff
==
--- lldb/trunk/tools/lldb-mi/MICmnBase.cpp (original)
+++ lldb/trunk/tools/lldb-mi/MICmnBase.cpp Wed Feb  1 10:02:55 2017
@@ -122,7 +122,7 @@ void CMICmnBase::ClrErrorDescription() c
 // Return:  None.
 // Throws:  None.
 //--
-void CMICmnBase::SetErrorDescriptionn(const CMIUtilString vFormat, ...) const {
+void CMICmnBase::SetErrorDescriptionn(const char *vFormat, ...) const {
   va_list args;
   va_start(args, vFormat);
   CMIUtilString strResult = CMIUtilString::FormatValist(vFormat, args);

Modified: lldb/trunk/tools/lldb-mi/MICmnBase.h
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-mi/MICmnBase.h?rev=293774&r1=293773&r2=293774&view=diff
==
--- lldb/trunk/tools/lldb-mi/MICmnBase.h (original)
+++ lldb/trunk/tools/lldb-mi/MICmnBase.h Wed Feb  1 10:02:55 2017
@@ -28,7 +28,7 @@ public:
   bool HaveErrorDescription() const;
   const CMIUtilString &GetErrorDescription() const;
   void SetErrorDescription(const CMIUtilString &vrTxt) const;
-  void SetErrorDescriptionn(const CMIUtilString vFormat, ...) const;
+  void SetErrorDescriptionn(const char *vFormat, ...) const;
   void SetErrorDescriptionNoLog(const CMIUtilString &vrTxt) const;
   void ClrErrorDescription() const;
 

Modified: lldb/trunk/tools/lldb-mi/MIDriver.cpp
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-mi/MIDriver.cpp?rev=293774&r1=293773&r2=293774&view=diff
==
--- lldb/trunk/tools/lldb-mi/MIDriver.cpp (original)
+++ lldb/trunk/tools/lldb-mi/MIDriver.cpp Wed Feb  1 10:02:55 2017
@@ -509,7 +509,7 @@ bool CMIDriver::StartWorkerThreads() {
 const CMIUtilString errMsg = CMIUtilString::Format(
 MIRSRC(IDS_THREADMGR_ERR_THREAD_FAIL_CREATE),
 CMICmnThreadMgrStd::Instance().GetErrorDescription().c_str());
-SetErrorDescriptionn(errMsg);
+SetErrorDescription(errMsg);
 return MIstatus::failure;
   }
 

Modified: lldb/trunk/tools/lldb-mi/MIUtilString.cpp
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-mi/MIUtilString.cpp?rev=293774&r1=293773&r2=293774&view=diff
==
--- lldb/trunk/tools/lldb-mi/MIUtilString.cpp (original)
+++ lldb/trunk/tools/lldb-mi/MIUtilString.cpp Wed Feb  1 10:02:55 2017
@@ -157,7 +157,7 @@ CMIUtilString CMIUtilString::FormatPriv(
 // Return:  CMIUtilString - Number of splits found in the string data.
 // Throws:  None.
 //--
-CMIUtilString CMIUtilString::Format(const CMIUtilString vFormating, ...) {
+CMIUtilString CMIUtilString::Format(const char *vFormating, ...) {
   va_list args;
   va_start(args, vFormating);
   CMIUtilString strResult = CMIUtilString::FormatPriv(vFormating, args);

Modified: lldb/trunk/tools/lldb-mi/MIUtilString.h
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-mi/MIUtilString.h?rev=293774&r1=293773&r2=293774&view=diff
==
--- lldb/trunk/tools/lldb-mi/MIUtilString.h (original)
+++ lldb/trunk/tools/lldb-mi/MIUtilString.h Wed Feb  1 10:02:55 2017
@@ -30,7 +30,7 @@ public:
 
   // Static method:
 public:
-  static CMIUtilString Format(const CMIUtilString vFormating, ...);
+  static CMIUtilString Format(const char *vFormating, ...);
   static CMIUtilString FormatBinary(const MIuint64 vnDecimal);
   static CMIUtilString FormatValist(const CMIUtilString &vrFormating,
 va_list vArgs);


___

[Lldb-commits] [lldb] r293779 - Fix android build of the new process launcher

2017-02-01 Thread Pavel Labath via lldb-commits
Author: labath
Date: Wed Feb  1 10:43:22 2017
New Revision: 293779

URL: http://llvm.org/viewvc/llvm-project?rev=293779&view=rev
Log:
Fix android build of the new process launcher

Android does not define the "cross-platform" symbol PT_TRACE_ME. Define
it ourselves, so we can keep the rest of the code generic.

Modified:
lldb/trunk/source/Host/posix/ProcessLauncherPosixFork.cpp

Modified: lldb/trunk/source/Host/posix/ProcessLauncherPosixFork.cpp
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Host/posix/ProcessLauncherPosixFork.cpp?rev=293779&r1=293778&r2=293779&view=diff
==
--- lldb/trunk/source/Host/posix/ProcessLauncherPosixFork.cpp (original)
+++ lldb/trunk/source/Host/posix/ProcessLauncherPosixFork.cpp Wed Feb  1 
10:43:22 2017
@@ -23,6 +23,7 @@
 
 #ifdef __ANDROID__
 #include 
+#define PT_TRACE_ME PTRACE_TRACEME
 #endif
 
 #if defined(__ANDROID_API__) && __ANDROID_API__ < 21


___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D29078: This patch implements a command to access and manipulate the Intel(R) MPX Boundary Tables.

2017-02-01 Thread Valentina Giusti via Phabricator via lldb-commits
valentinagiusti added a comment.

I am not sure what you mean, this is a pluggable command and as such it has to 
be a dynamic loadable lib.
As for the wrong install name of the binary, I don't think I can fix it from 
here, the SOVERSION is set by AddLLVM.cmake.
On which platform did you get this issue?


Repository:
  rL LLVM

https://reviews.llvm.org/D29078



___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D29403: Fix multi-process-driver.cpp build on NetBSD

2017-02-01 Thread Kamil Rytarowski via Phabricator via lldb-commits
krytarowski created this revision.
krytarowski added a project: LLDB.

Include  for strcmp(3) and memset(3).

Sponsored by 


Repository:
  rL LLVM

https://reviews.llvm.org/D29403

Files:
  packages/Python/lldbsuite/test/api/multiple-debuggers/multi-process-driver.cpp


Index: 
packages/Python/lldbsuite/test/api/multiple-debuggers/multi-process-driver.cpp
===
--- 
packages/Python/lldbsuite/test/api/multiple-debuggers/multi-process-driver.cpp
+++ 
packages/Python/lldbsuite/test/api/multiple-debuggers/multi-process-driver.cpp
@@ -15,7 +15,7 @@
 
 #include 
 #include 
-
+#include 
 
 #include "lldb/API/LLDB.h"
 #include "lldb/API/SBCommandInterpreter.h"


Index: packages/Python/lldbsuite/test/api/multiple-debuggers/multi-process-driver.cpp
===
--- packages/Python/lldbsuite/test/api/multiple-debuggers/multi-process-driver.cpp
+++ packages/Python/lldbsuite/test/api/multiple-debuggers/multi-process-driver.cpp
@@ -15,7 +15,7 @@
 
 #include 
 #include 
-
+#include 
 
 #include "lldb/API/LLDB.h"
 #include "lldb/API/SBCommandInterpreter.h"
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D29405: Install six.py copy into subdirectory lldb

2017-02-01 Thread Kamil Rytarowski via Phabricator via lldb-commits
krytarowski created this revision.
krytarowski added a project: LLDB.

The current version of LLDB installs six.py into global python library 
directory. This approach produces conflicts downstream with distribution's 
py-six copy.

Install six.py into subdirectory as this is a common way of handling this 
library in other projects.

As short list (extracted from pkgsrc) is as follows:

- math/py-scipy/PLIST:${PYSITELIB}/scipy/_lib/six.py
- misc/calibre1/PLIST:lib/calibre/six.py
- net/py-dropbox/PLIST:${PYSITELIB}/dropbox/six.py
- 
net/py-google-cloud-sdk/PLIST:${PYPKGPREFIX}-google-cloud-sdk/lib/third_party/requests/packages/urllib3/packages/six.py
- 
net/py-google-cloud-sdk/PLIST:${PYPKGPREFIX}-google-cloud-sdk/platform/gsutil/third_party/boto/boto/vendored/six.py
- 
net/py-google-cloud-sdk/PLIST:${PYPKGPREFIX}-google-cloud-sdk/platform/gsutil/third_party/six/six.py
- print/hplip/PLIST.base:share/hplip/base/six.py

www/py-django/PLIST:${PYSITELIB}/django/utils/six.py

and others.

Downstream projects still can deduplicate a local copy on demand, other ones 
can stop patching LLDB in order to create a package.


Repository:
  rL LLVM

https://reviews.llvm.org/D29405

Files:
  packages/Python/lldbsuite/pre_kill_hook/darwin.py
  packages/Python/lldbsuite/pre_kill_hook/tests/test_darwin.py
  packages/Python/lldbsuite/pre_kill_hook/tests/test_linux.py
  packages/Python/lldbsuite/support/encoded_file.py
  packages/Python/lldbsuite/support/seven.py
  packages/Python/lldbsuite/test/api/listeners/TestListener.py
  packages/Python/lldbsuite/test/decorators.py
  packages/Python/lldbsuite/test/dosep.py
  packages/Python/lldbsuite/test/dotest.py
  
packages/Python/lldbsuite/test/functionalities/command_script/import/thepackage/TPunitA.py
  
packages/Python/lldbsuite/test/functionalities/command_script/import/thepackage/TPunitB.py
  
packages/Python/lldbsuite/test/functionalities/postmortem/minidump-new/TestMiniDumpNew.py
  
packages/Python/lldbsuite/test/functionalities/postmortem/minidump/TestMiniDump.py
  
packages/Python/lldbsuite/test/functionalities/postmortem/wow64_minidump/TestWow64MiniDump.py
  
packages/Python/lldbsuite/test/functionalities/process_launch/TestProcessLaunch.py
  packages/Python/lldbsuite/test/lldbcurses.py
  packages/Python/lldbsuite/test/lldbpexpect.py
  packages/Python/lldbsuite/test/lldbplatform.py
  packages/Python/lldbsuite/test/lldbplatformutil.py
  packages/Python/lldbsuite/test/lldbtest.py
  packages/Python/lldbsuite/test/lldbutil.py
  packages/Python/lldbsuite/test/python_api/frame/TestFrames.py
  packages/Python/lldbsuite/test/tools/lldb-server/lldbgdbserverutils.py
  packages/Python/lldbsuite/test/tools/lldb-server/socket_packet_pump.py
  packages/Python/lldbsuite/test_event/dotest_channels.py
  packages/Python/lldbsuite/test_event/formatter/pickled.py
  packages/Python/lldbsuite/test_event/formatter/xunit.py
  packages/Python/lldbsuite/test_event/test/src/event_collector.py
  scripts/Python/finishSwigPythonLLDB.py
  scripts/lldb.swig
  source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
  third_party/Python/module/progress/progress.py
  third_party/Python/module/unittest2/unittest2/case.py
  third_party/Python/module/unittest2/unittest2/main.py
  third_party/Python/module/unittest2/unittest2/result.py
  third_party/Python/module/unittest2/unittest2/suite.py
  third_party/Python/module/unittest2/unittest2/test/test_case.py
  third_party/Python/module/unittest2/unittest2/test/test_functiontestcase.py

Index: third_party/Python/module/unittest2/unittest2/test/test_functiontestcase.py
===
--- third_party/Python/module/unittest2/unittest2/test/test_functiontestcase.py
+++ third_party/Python/module/unittest2/unittest2/test/test_functiontestcase.py
@@ -1,5 +1,5 @@
 import unittest2
-import six
+from lldb import six
 
 from unittest2.test.support import LoggingResult
 
Index: third_party/Python/module/unittest2/unittest2/test/test_case.py
===
--- third_party/Python/module/unittest2/unittest2/test/test_case.py
+++ third_party/Python/module/unittest2/unittest2/test/test_case.py
@@ -1,7 +1,7 @@
 import difflib
 import pprint
 import re
-import six
+from lldb import six
 
 from copy import deepcopy
 
Index: third_party/Python/module/unittest2/unittest2/suite.py
===
--- third_party/Python/module/unittest2/unittest2/suite.py
+++ third_party/Python/module/unittest2/unittest2/suite.py
@@ -3,7 +3,7 @@
 import sys
 import unittest
 from unittest2 import case, util
-import six
+from lldb import six
 
 __unittest = True
 
Index: third_party/Python/module/unittest2/unittest2/result.py
===
--- third_party/Python/module/unittest2/unittest2/result.py
+++ third_party/Python/module/unittest2/unittest2/result.py
@@ -6,7 +6,7 @@
 import trac

[Lldb-commits] [PATCH] D29405: Install six.py copy into subdirectory lldb

2017-02-01 Thread Kamil Rytarowski via Phabricator via lldb-commits
krytarowski added a comment.

Please help to test this patch for regressions, at the moment I don't have all 
the test suits passing and I might have miss something.

At least `scripts/Python/modify-python-lldb.py` had to retain 'import six'.


Repository:
  rL LLVM

https://reviews.llvm.org/D29405



___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D29406: Unify PlatformPOSIX::ResolveExecutable

2017-02-01 Thread Pavel Labath via Phabricator via lldb-commits
labath created this revision.

various platforms very using nearly identical code for this method. As far as I
can tell there was nothing platform-specific about the differences, but rather
it looked like it was caused by tiny tweaks being made to individual copies
without affecting the overall functionality. I have taken the superset of all
these tweaks and put it into one method in the base class (incidentaly, nobody
was using the base class implementation of the method, as all classes were
overriding it). From the darwin class I took the slightly improved error
reporting (checking whether the file is readable) and the
ResolveExecutableInBundle call (which has no effect elsewhere as the function
is already a no-op on non-darwin platforms). From the linux class I took the
set-the-triple-vendor-to-host-if-unspecified tweak (present in PlatformKalimba
as well).

PlatformWindows has an identical copy as well. We could resolve that by pushing
this code further down into Platform class, that that would require pushing the
m_remote_platform_sp member as well, which seems like a bad design choice.


https://reviews.llvm.org/D29406

Files:
  source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp
  source/Plugins/Platform/FreeBSD/PlatformFreeBSD.h
  source/Plugins/Platform/Kalimba/PlatformKalimba.cpp
  source/Plugins/Platform/Kalimba/PlatformKalimba.h
  source/Plugins/Platform/Linux/PlatformLinux.cpp
  source/Plugins/Platform/Linux/PlatformLinux.h
  source/Plugins/Platform/MacOSX/PlatformDarwin.cpp
  source/Plugins/Platform/MacOSX/PlatformDarwin.h
  source/Plugins/Platform/NetBSD/PlatformNetBSD.cpp
  source/Plugins/Platform/NetBSD/PlatformNetBSD.h
  source/Plugins/Platform/POSIX/PlatformPOSIX.cpp
  source/Plugins/Platform/POSIX/PlatformPOSIX.h

Index: source/Plugins/Platform/POSIX/PlatformPOSIX.h
===
--- source/Plugins/Platform/POSIX/PlatformPOSIX.h
+++ source/Plugins/Platform/POSIX/PlatformPOSIX.h
@@ -101,6 +101,10 @@
   uint32_t timeout_sec)
   override; // Timeout in seconds to wait for shell program to finish
 
+  lldb_private::Error ResolveExecutable(const lldb_private::ModuleSpec &module_spec,
+  lldb::ModuleSP &module_sp,
+  const lldb_private::FileSpecList *module_search_paths_ptr) override;
+
   lldb_private::Error MakeDirectory(const lldb_private::FileSpec &file_spec,
 uint32_t mode) override;
 
Index: source/Plugins/Platform/POSIX/PlatformPOSIX.cpp
===
--- source/Plugins/Platform/POSIX/PlatformPOSIX.cpp
+++ source/Plugins/Platform/POSIX/PlatformPOSIX.cpp
@@ -18,14 +18,16 @@
 #include "lldb/Core/Debugger.h"
 #include "lldb/Core/Log.h"
 #include "lldb/Core/Module.h"
+#include "lldb/Core/ModuleSpec.h"
 #include "lldb/Core/StreamString.h"
 #include "lldb/Core/ValueObject.h"
 #include "lldb/Expression/UserExpression.h"
 #include "lldb/Host/File.h"
 #include "lldb/Host/FileCache.h"
 #include "lldb/Host/FileSpec.h"
 #include "lldb/Host/FileSystem.h"
 #include "lldb/Host/Host.h"
+#include "lldb/Host/HostInfo.h"
 #include "lldb/Target/DynamicLoader.h"
 #include "lldb/Target/ExecutionContext.h"
 #include "lldb/Target/Process.h"
@@ -111,6 +113,143 @@
   }
 }
 
+Error PlatformPOSIX::ResolveExecutable(const ModuleSpec &module_spec,
+  lldb::ModuleSP &exe_module_sp,
+  const FileSpecList *module_search_paths_ptr) {
+  Error error;
+  // Nothing special to do here, just use the actual file and architecture
+
+  char exe_path[PATH_MAX];
+  ModuleSpec resolved_module_spec(module_spec);
+
+  if (IsHost()) {
+// If we have "ls" as the exe_file, resolve the executable location based on
+// the current path variables
+if (!resolved_module_spec.GetFileSpec().Exists()) {
+  resolved_module_spec.GetFileSpec().GetPath(exe_path, sizeof(exe_path));
+  resolved_module_spec.GetFileSpec().SetFile(exe_path, true);
+}
+
+if (!resolved_module_spec.GetFileSpec().Exists())
+  resolved_module_spec.GetFileSpec().ResolveExecutableLocation();
+
+// Resolve any executable within a bundle on MacOSX
+Host::ResolveExecutableInBundle(resolved_module_spec.GetFileSpec());
+
+if (resolved_module_spec.GetFileSpec().Exists())
+  error.Clear();
+else {
+  const uint32_t permissions =
+  resolved_module_spec.GetFileSpec().GetPermissions();
+  if (permissions && (permissions & eFilePermissionsEveryoneR) == 0)
+error.SetErrorStringWithFormat(
+"executable '%s' is not readable",
+resolved_module_spec.GetFileSpec().GetPath().c_str());
+  else
+error.SetErrorStringWithFormat(
+"unable to find executable for '%s'",
+resolved_module_spec.GetFileSpec().GetPath().c_str());
+}
+  } else {
+if (m_remote_platform_sp) {
+  error =
+  GetCachedExecutable(resolved_module_spec, e

Re: [Lldb-commits] [PATCH] D29359: Start breaking some dependencies in lldbUtility

2017-02-01 Thread Jim Ingham via lldb-commits
I don't think any of this should be terribly controversial.  The "Long term" 
part of the proposals might be, but that's not what you're talking about here, 
right?

These changes will presumably require adjustments to the Xcode project.  If you 
can do that yourself, then that's great.  If you need one of us to fix the 
projects, putting them up for review before checking in will give one of us a 
chance to apply the patch and fix the projects and then we can gang the two 
submissions so we don't leave trunk broken.  Other than that I'm fine with you 
just checking in the changes.

Jim


> On Jan 31, 2017, at 7:58 PM, Zachary Turner  wrote:
> 
> Are you interested in seeing the followup patches for review (moving classes 
> from Core -> Utility etc), or does it sound reasonable just based on my 
> description?
> 
> On Tue, Jan 31, 2017 at 6:05 PM Jim Ingham  wrote:
> BTW, not to exclude the positive because it doesn't need discussing: all the 
> rest of the changes you were proposing seem appropriate and good to me.  
> Thanks for taking the trouble to clean this up.
> 
> Jim
> 
> > On Jan 31, 2017, at 5:45 PM, Zachary Turner  wrote:
> >
> > Yea, there may be value in both. If i ever tried to do this I'd probably 
> > take the approach of converting all the obvious cases first that should 
> > enforce checking and then see what's left. Then we could use llvm:Error and 
> > lldb::Status, or something
> > On Tue, Jan 31, 2017 at 5:39 PM Jim Ingham  wrote:
> > Yeah, I have no idea how you'd make sure that the SBError returned to 
> > Python in a Python SBValue was checked before it went out of scope, and I'm 
> > not sure it's our business to be enforcing that...  So we're going to have 
> > to do something special for those errors.  We also use the pattern where we 
> > return a count and an error, but ofttimes you don't care why you got 
> > nothing, so you just check the count.  The error is informational.  Making 
> > that obnoxious would also not be a plus.  I actually think there's some 
> > value to having "programming errors that must be checked" and informational 
> > errors.  Maybe we need both.
> >
> > Jim
> >
> > > On Jan 31, 2017, at 5:32 PM, Zachary Turner  wrote:
> > >
> > > llvm::Error only enforces checking at the point that it goes out of 
> > > scope. So the example you mention should be supported, as long as you 
> > > propagate the value all the way up and don't destroy it. There's also 
> > > ways to explicitly ignore an Error (similar to casting to void to make 
> > > the compiler not warn about unused variables), so as a last resort we 
> > > could put code like that in the SB implementation if we had to
> > > On Tue, Jan 31, 2017 at 5:23 PM Jim Ingham  wrote:
> > > I think we discussed this before, but we need an informational error 
> > > object.  IIRC, the llvm::Error has to be checked.  But for instance if 
> > > you ask a value object to evaluate itself, but you've moved to a section 
> > > of code where the variable has no location, then evaluating that value 
> > > will result in an error.  But that isn't an error the value object code 
> > > needs to do anything about.  And it might go all the way up through the 
> > > SB & Python API's before it's appropriate to check the error.
> > >
> > > IIRC, the llvm::Error is one of those "you have to check it or you get 
> > > smacked by the compiler" dealies.  That's appropriate for some of our 
> > > uses of Error, but not all.
> > >
> > > Jim
> > >
> > >
> > > > On Jan 31, 2017, at 4:01 PM, Zachary Turner via Phabricator via 
> > > > lldb-commits  wrote:
> > > >
> > > > zturner added a comment.
> > > >
> > > >> Move Error from Core -> Utility
> > > >
> > > > Also, I almost forgot.
> > > >
> > > > Long term: Delete and use `llvm::Error`
> > > >
> > > >
> > > > https://reviews.llvm.org/D29359
> > > >
> > > >
> > > >
> > > > ___
> > > > lldb-commits mailing list
> > > > lldb-commits@lists.llvm.org
> > > > http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
> > >
> >
> 

___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D29406: Unify PlatformPOSIX::ResolveExecutable

2017-02-01 Thread Pavel Labath via Phabricator via lldb-commits
labath added inline comments.



Comment at: source/Plugins/Platform/POSIX/PlatformPOSIX.cpp:163
+  // Resolve any executable within a bundle on MacOSX
+  Host::ResolveExecutableInBundle(resolved_module_spec.GetFileSpec());
+

This is the bit that was only present on darwin.



Comment at: source/Plugins/Platform/POSIX/PlatformPOSIX.cpp:198
+
+  error = ModuleList::GetSharedModule(resolved_module_spec,
+  exe_module_sp, 
module_search_paths_ptr, nullptr, nullptr);

This is the bit that was only present on linux.


https://reviews.llvm.org/D29406



___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D29405: Install six.py copy into subdirectory lldb

2017-02-01 Thread Pavel Labath via Phabricator via lldb-commits
labath added a comment.

It does not seem to work for me. I get this when I run ninja check-lldb in the 
build directory:

  Traceback (most recent call last):
File "/usr/local/google/home/labath/ll/llvm/tools/lldb/test/dotest.py", 
line 6, in 
  import lldbsuite.test
File 
"/usr/local/google/home/labath/ll/lldb/packages/Python/lldbsuite/test/__init__.py",
 line 5, in 
  from . import dotest
File 
"/usr/local/google/home/labath/ll/lldb/packages/Python/lldbsuite/test/dotest.py",
 line 36, in 
  from lldb import six
  ImportError: No module named lldb

Any idea what could be the cause?

I have no issue with this approach in general (assuming it can be made to 
work), but I want to throw an alternative solution out there:

- Add a LLDB_USE_SYSTEM_SIX cmake option. If this option is set, LLDB will not 
install or use the built-in copy of six.py, but will rely on the system one 
instead.

Thoughts?


Repository:
  rL LLVM

https://reviews.llvm.org/D29405



___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


Re: [Lldb-commits] [PATCH] D29359: Start breaking some dependencies in lldbUtility

2017-02-01 Thread Zachary Turner via lldb-commits
Correct, I'm not doing any of the "long term" stuff now, I was just
thinking out loud with that.

On Wed, Feb 1, 2017 at 10:49 AM Jim Ingham  wrote:

> I don't think any of this should be terribly controversial.  The "Long
> term" part of the proposals might be, but that's not what you're talking
> about here, right?
>
> These changes will presumably require adjustments to the Xcode project.
> If you can do that yourself, then that's great.  If you need one of us to
> fix the projects, putting them up for review before checking in will give
> one of us a chance to apply the patch and fix the projects and then we can
> gang the two submissions so we don't leave trunk broken.  Other than that
> I'm fine with you just checking in the changes.
>
> Jim
>
>
> > On Jan 31, 2017, at 7:58 PM, Zachary Turner  wrote:
> >
> > Are you interested in seeing the followup patches for review (moving
> classes from Core -> Utility etc), or does it sound reasonable just based
> on my description?
> >
> > On Tue, Jan 31, 2017 at 6:05 PM Jim Ingham  wrote:
> > BTW, not to exclude the positive because it doesn't need discussing: all
> the rest of the changes you were proposing seem appropriate and good to
> me.  Thanks for taking the trouble to clean this up.
> >
> > Jim
> >
> > > On Jan 31, 2017, at 5:45 PM, Zachary Turner 
> wrote:
> > >
> > > Yea, there may be value in both. If i ever tried to do this I'd
> probably take the approach of converting all the obvious cases first that
> should enforce checking and then see what's left. Then we could use
> llvm:Error and lldb::Status, or something
> > > On Tue, Jan 31, 2017 at 5:39 PM Jim Ingham  wrote:
> > > Yeah, I have no idea how you'd make sure that the SBError returned to
> Python in a Python SBValue was checked before it went out of scope, and I'm
> not sure it's our business to be enforcing that...  So we're going to have
> to do something special for those errors.  We also use the pattern where we
> return a count and an error, but ofttimes you don't care why you got
> nothing, so you just check the count.  The error is informational.  Making
> that obnoxious would also not be a plus.  I actually think there's some
> value to having "programming errors that must be checked" and informational
> errors.  Maybe we need both.
> > >
> > > Jim
> > >
> > > > On Jan 31, 2017, at 5:32 PM, Zachary Turner 
> wrote:
> > > >
> > > > llvm::Error only enforces checking at the point that it goes out of
> scope. So the example you mention should be supported, as long as you
> propagate the value all the way up and don't destroy it. There's also ways
> to explicitly ignore an Error (similar to casting to void to make the
> compiler not warn about unused variables), so as a last resort we could put
> code like that in the SB implementation if we had to
> > > > On Tue, Jan 31, 2017 at 5:23 PM Jim Ingham 
> wrote:
> > > > I think we discussed this before, but we need an informational error
> object.  IIRC, the llvm::Error has to be checked.  But for instance if you
> ask a value object to evaluate itself, but you've moved to a section of
> code where the variable has no location, then evaluating that value will
> result in an error.  But that isn't an error the value object code needs to
> do anything about.  And it might go all the way up through the SB & Python
> API's before it's appropriate to check the error.
> > > >
> > > > IIRC, the llvm::Error is one of those "you have to check it or you
> get smacked by the compiler" dealies.  That's appropriate for some of our
> uses of Error, but not all.
> > > >
> > > > Jim
> > > >
> > > >
> > > > > On Jan 31, 2017, at 4:01 PM, Zachary Turner via Phabricator via
> lldb-commits  wrote:
> > > > >
> > > > > zturner added a comment.
> > > > >
> > > > >> Move Error from Core -> Utility
> > > > >
> > > > > Also, I almost forgot.
> > > > >
> > > > > Long term: Delete and use `llvm::Error`
> > > > >
> > > > >
> > > > > https://reviews.llvm.org/D29359
> > > > >
> > > > >
> > > > >
> > > > > ___
> > > > > lldb-commits mailing list
> > > > > lldb-commits@lists.llvm.org
> > > > > http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
> > > >
> > >
> >
>
>
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


Re: [Lldb-commits] [PATCH] D29359: Start breaking some dependencies in lldbUtility

2017-02-01 Thread Pavel Labath via lldb-commits
lgtm

On 1 February 2017 at 11:01, Zachary Turner  wrote:
> Correct, I'm not doing any of the "long term" stuff now, I was just thinking
> out loud with that.
>
> On Wed, Feb 1, 2017 at 10:49 AM Jim Ingham  wrote:
>>
>> I don't think any of this should be terribly controversial.  The "Long
>> term" part of the proposals might be, but that's not what you're talking
>> about here, right?
>>
>> These changes will presumably require adjustments to the Xcode project.
>> If you can do that yourself, then that's great.  If you need one of us to
>> fix the projects, putting them up for review before checking in will give
>> one of us a chance to apply the patch and fix the projects and then we can
>> gang the two submissions so we don't leave trunk broken.  Other than that
>> I'm fine with you just checking in the changes.
>>
>> Jim
>>
>>
>> > On Jan 31, 2017, at 7:58 PM, Zachary Turner  wrote:
>> >
>> > Are you interested in seeing the followup patches for review (moving
>> > classes from Core -> Utility etc), or does it sound reasonable just based 
>> > on
>> > my description?
>> >
>> > On Tue, Jan 31, 2017 at 6:05 PM Jim Ingham  wrote:
>> > BTW, not to exclude the positive because it doesn't need discussing: all
>> > the rest of the changes you were proposing seem appropriate and good to me.
>> > Thanks for taking the trouble to clean this up.
>> >
>> > Jim
>> >
>> > > On Jan 31, 2017, at 5:45 PM, Zachary Turner 
>> > > wrote:
>> > >
>> > > Yea, there may be value in both. If i ever tried to do this I'd
>> > > probably take the approach of converting all the obvious cases first that
>> > > should enforce checking and then see what's left. Then we could use
>> > > llvm:Error and lldb::Status, or something
>> > > On Tue, Jan 31, 2017 at 5:39 PM Jim Ingham  wrote:
>> > > Yeah, I have no idea how you'd make sure that the SBError returned to
>> > > Python in a Python SBValue was checked before it went out of scope, and 
>> > > I'm
>> > > not sure it's our business to be enforcing that...  So we're going to 
>> > > have
>> > > to do something special for those errors.  We also use the pattern where 
>> > > we
>> > > return a count and an error, but ofttimes you don't care why you got
>> > > nothing, so you just check the count.  The error is informational.  
>> > > Making
>> > > that obnoxious would also not be a plus.  I actually think there's some
>> > > value to having "programming errors that must be checked" and 
>> > > informational
>> > > errors.  Maybe we need both.
>> > >
>> > > Jim
>> > >
>> > > > On Jan 31, 2017, at 5:32 PM, Zachary Turner 
>> > > > wrote:
>> > > >
>> > > > llvm::Error only enforces checking at the point that it goes out of
>> > > > scope. So the example you mention should be supported, as long as you
>> > > > propagate the value all the way up and don't destroy it. There's also 
>> > > > ways
>> > > > to explicitly ignore an Error (similar to casting to void to make the
>> > > > compiler not warn about unused variables), so as a last resort we 
>> > > > could put
>> > > > code like that in the SB implementation if we had to
>> > > > On Tue, Jan 31, 2017 at 5:23 PM Jim Ingham 
>> > > > wrote:
>> > > > I think we discussed this before, but we need an informational error
>> > > > object.  IIRC, the llvm::Error has to be checked.  But for instance if 
>> > > > you
>> > > > ask a value object to evaluate itself, but you've moved to a section 
>> > > > of code
>> > > > where the variable has no location, then evaluating that value will 
>> > > > result
>> > > > in an error.  But that isn't an error the value object code needs to do
>> > > > anything about.  And it might go all the way up through the SB & Python
>> > > > API's before it's appropriate to check the error.
>> > > >
>> > > > IIRC, the llvm::Error is one of those "you have to check it or you
>> > > > get smacked by the compiler" dealies.  That's appropriate for some of 
>> > > > our
>> > > > uses of Error, but not all.
>> > > >
>> > > > Jim
>> > > >
>> > > >
>> > > > > On Jan 31, 2017, at 4:01 PM, Zachary Turner via Phabricator via
>> > > > > lldb-commits  wrote:
>> > > > >
>> > > > > zturner added a comment.
>> > > > >
>> > > > >> Move Error from Core -> Utility
>> > > > >
>> > > > > Also, I almost forgot.
>> > > > >
>> > > > > Long term: Delete and use `llvm::Error`
>> > > > >
>> > > > >
>> > > > > https://reviews.llvm.org/D29359
>> > > > >
>> > > > >
>> > > > >
>> > > > > ___
>> > > > > lldb-commits mailing list
>> > > > > lldb-commits@lists.llvm.org
>> > > > > http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
>> > > >
>> > >
>> >
>>
>
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D29405: Install six.py copy into subdirectory lldb

2017-02-01 Thread Kamil Rytarowski via Phabricator via lldb-commits
krytarowski added a comment.

In https://reviews.llvm.org/D29405#663566, @labath wrote:

> It does not seem to work for me. I get this when I run ninja check-lldb in 
> the build directory:
>
>   Traceback (most recent call last):
> File "/usr/local/google/home/labath/ll/llvm/tools/lldb/test/dotest.py", 
> line 6, in 
>   import lldbsuite.test
> File 
> "/usr/local/google/home/labath/ll/lldb/packages/Python/lldbsuite/test/__init__.py",
>  line 5, in 
>   from . import dotest
> File 
> "/usr/local/google/home/labath/ll/lldb/packages/Python/lldbsuite/test/dotest.py",
>  line 36, in 
>   from lldb import six
>   ImportError: No module named lldb
>
>
> Any idea what could be the cause?


I've installed lldb before running tests, I'm not sure if it has the impact on 
it.

> I have no issue with this approach in general (assuming it can be made to 
> work), but I want to throw an alternative solution out there:
> 
> - Add a LLDB_USE_SYSTEM_SIX cmake option. If this option is set, LLDB will 
> not install or use the built-in copy of six.py, but will rely on the system 
> one instead.
> 
>   Thoughts?

It's less invasive, I will go for it.


Repository:
  rL LLVM

https://reviews.llvm.org/D29405



___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D29406: Unify PlatformPOSIX::ResolveExecutable

2017-02-01 Thread Kamil Rytarowski via Phabricator via lldb-commits
krytarowski added a comment.

It looks good.


https://reviews.llvm.org/D29406



___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] r293803 - [cmake] Remove VERSION property from executable targets

2017-02-01 Thread Pavel Labath via lldb-commits
Author: labath
Date: Wed Feb  1 13:12:22 2017
New Revision: 293803

URL: http://llvm.org/viewvc/llvm-project?rev=293803&view=rev
Log:
[cmake] Remove VERSION property from executable targets

Summary:
Currently, in the default configuration, the "install" target will
install all llvm executables unversioned, except for three lldb tools
which will be installed versioned (with a non-versioned symlink). This
rectifies that situation.

Reviewers: beanz, sylvestre.ledru, mgorny

Subscribers: ki.stfu, lldb-commits

Differential Revision: https://reviews.llvm.org/D29126

Modified:
lldb/trunk/tools/driver/CMakeLists.txt
lldb/trunk/tools/lldb-mi/CMakeLists.txt
lldb/trunk/tools/lldb-server/CMakeLists.txt

Modified: lldb/trunk/tools/driver/CMakeLists.txt
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/driver/CMakeLists.txt?rev=293803&r1=293802&r2=293803&view=diff
==
--- lldb/trunk/tools/driver/CMakeLists.txt (original)
+++ lldb/trunk/tools/driver/CMakeLists.txt Wed Feb  1 13:12:22 2017
@@ -35,6 +35,3 @@ endif()
 if ( LLDB_CAN_USE_DEBUGSERVER )
   add_dependencies(lldb debugserver)
 endif()
-
-set_target_properties(lldb PROPERTIES VERSION ${LLDB_VERSION})
-

Modified: lldb/trunk/tools/lldb-mi/CMakeLists.txt
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-mi/CMakeLists.txt?rev=293803&r1=293802&r2=293803&view=diff
==
--- lldb/trunk/tools/lldb-mi/CMakeLists.txt (original)
+++ lldb/trunk/tools/lldb-mi/CMakeLists.txt Wed Feb  1 13:12:22 2017
@@ -93,5 +93,3 @@ add_lldb_tool(lldb-mi
   LINK_COMPONENTS
 Support
   )
-
-set_target_properties(lldb-mi PROPERTIES VERSION ${LLDB_VERSION})

Modified: lldb/trunk/tools/lldb-server/CMakeLists.txt
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-server/CMakeLists.txt?rev=293803&r1=293802&r2=293803&view=diff
==
--- lldb/trunk/tools/lldb-server/CMakeLists.txt (original)
+++ lldb/trunk/tools/lldb-server/CMakeLists.txt Wed Feb  1 13:12:22 2017
@@ -192,5 +192,3 @@ if(NOT LLVM_LINK_LLVM_DYLIB)
 endif()
 
 target_link_libraries(lldb-server ${LLDB_SYSTEM_LIBS})
-
-set_target_properties(lldb-server PROPERTIES VERSION ${LLDB_VERSION})


___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D29126: [cmake] Remove VERSION property from executable targets

2017-02-01 Thread Pavel Labath via Phabricator via lldb-commits
This revision was automatically updated to reflect the committed changes.
Closed by commit rL293803: [cmake] Remove VERSION property from executable 
targets (authored by labath).

Changed prior to commit:
  https://reviews.llvm.org/D29126?vs=85751&id=86685#toc

Repository:
  rL LLVM

https://reviews.llvm.org/D29126

Files:
  lldb/trunk/tools/driver/CMakeLists.txt
  lldb/trunk/tools/lldb-mi/CMakeLists.txt
  lldb/trunk/tools/lldb-server/CMakeLists.txt


Index: lldb/trunk/tools/lldb-server/CMakeLists.txt
===
--- lldb/trunk/tools/lldb-server/CMakeLists.txt
+++ lldb/trunk/tools/lldb-server/CMakeLists.txt
@@ -192,5 +192,3 @@
 endif()
 
 target_link_libraries(lldb-server ${LLDB_SYSTEM_LIBS})
-
-set_target_properties(lldb-server PROPERTIES VERSION ${LLDB_VERSION})
Index: lldb/trunk/tools/lldb-mi/CMakeLists.txt
===
--- lldb/trunk/tools/lldb-mi/CMakeLists.txt
+++ lldb/trunk/tools/lldb-mi/CMakeLists.txt
@@ -93,5 +93,3 @@
   LINK_COMPONENTS
 Support
   )
-
-set_target_properties(lldb-mi PROPERTIES VERSION ${LLDB_VERSION})
Index: lldb/trunk/tools/driver/CMakeLists.txt
===
--- lldb/trunk/tools/driver/CMakeLists.txt
+++ lldb/trunk/tools/driver/CMakeLists.txt
@@ -35,6 +35,3 @@
 if ( LLDB_CAN_USE_DEBUGSERVER )
   add_dependencies(lldb debugserver)
 endif()
-
-set_target_properties(lldb PROPERTIES VERSION ${LLDB_VERSION})
-


Index: lldb/trunk/tools/lldb-server/CMakeLists.txt
===
--- lldb/trunk/tools/lldb-server/CMakeLists.txt
+++ lldb/trunk/tools/lldb-server/CMakeLists.txt
@@ -192,5 +192,3 @@
 endif()
 
 target_link_libraries(lldb-server ${LLDB_SYSTEM_LIBS})
-
-set_target_properties(lldb-server PROPERTIES VERSION ${LLDB_VERSION})
Index: lldb/trunk/tools/lldb-mi/CMakeLists.txt
===
--- lldb/trunk/tools/lldb-mi/CMakeLists.txt
+++ lldb/trunk/tools/lldb-mi/CMakeLists.txt
@@ -93,5 +93,3 @@
   LINK_COMPONENTS
 Support
   )
-
-set_target_properties(lldb-mi PROPERTIES VERSION ${LLDB_VERSION})
Index: lldb/trunk/tools/driver/CMakeLists.txt
===
--- lldb/trunk/tools/driver/CMakeLists.txt
+++ lldb/trunk/tools/driver/CMakeLists.txt
@@ -35,6 +35,3 @@
 if ( LLDB_CAN_USE_DEBUGSERVER )
   add_dependencies(lldb debugserver)
 endif()
-
-set_target_properties(lldb PROPERTIES VERSION ${LLDB_VERSION})
-
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D29352: [CMake] Final dependency cleanup patch!

2017-02-01 Thread Chris Bieneman via Phabricator via lldb-commits
beanz added a comment.

Ah! I forgot to update the unittest directory. I'll get a patch in today that 
updates the unittests following the pattern from the libraries.


https://reviews.llvm.org/D29352



___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] r293806 - Break some dependencies in lldbUtility.

2017-02-01 Thread Zachary Turner via lldb-commits
Author: zturner
Date: Wed Feb  1 13:45:14 2017
New Revision: 293806

URL: http://llvm.org/viewvc/llvm-project?rev=293806&view=rev
Log:
Break some dependencies in lldbUtility.

Differential Revision: https://reviews.llvm.org/D29359

Removed:
lldb/trunk/include/lldb/Utility/ConvertEnum.h
lldb/trunk/include/lldb/Utility/PriorityPointerPair.h
lldb/trunk/include/lldb/Utility/Utils.h
lldb/trunk/source/Utility/ARM64_DWARF_Registers.cpp
lldb/trunk/source/Utility/ARM_DWARF_Registers.cpp
lldb/trunk/source/Utility/ConvertEnum.cpp
Modified:
lldb/trunk/include/lldb/lldb-private-enumerations.h
lldb/trunk/source/Commands/CommandObjectPlatform.cpp
lldb/trunk/source/Core/Section.cpp
lldb/trunk/source/Interpreter/OptionGroupArchitecture.cpp
lldb/trunk/source/Interpreter/OptionGroupFormat.cpp
lldb/trunk/source/Interpreter/OptionGroupOutputFile.cpp
lldb/trunk/source/Interpreter/OptionGroupPlatform.cpp
lldb/trunk/source/Interpreter/OptionGroupUUID.cpp
lldb/trunk/source/Interpreter/OptionGroupValueObjectDisplay.cpp
lldb/trunk/source/Interpreter/OptionGroupVariable.cpp
lldb/trunk/source/Interpreter/OptionGroupWatchpoint.cpp
lldb/trunk/source/Plugins/Instruction/ARM/EmulateInstructionARM.cpp
lldb/trunk/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.cpp
lldb/trunk/source/Target/Platform.cpp
lldb/trunk/source/Target/ThreadList.cpp
lldb/trunk/source/Target/ThreadPlan.cpp
lldb/trunk/source/Utility/ARM64_DWARF_Registers.h
lldb/trunk/source/Utility/ARM_DWARF_Registers.h
lldb/trunk/source/Utility/CMakeLists.txt

Removed: lldb/trunk/include/lldb/Utility/ConvertEnum.h
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Utility/ConvertEnum.h?rev=293805&view=auto
==
--- lldb/trunk/include/lldb/Utility/ConvertEnum.h (original)
+++ lldb/trunk/include/lldb/Utility/ConvertEnum.h (removed)
@@ -1,21 +0,0 @@
-//===-- ConvertEnum.h ---*- C++ 
-*-===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===--===//
-#ifndef LLDB_UTILITY_CONVERTENUM_H
-#define LLDB_UTILITY_CONVERTENUM_H
-
-#include "lldb/lldb-enumerations.h"
-#include "lldb/lldb-private-enumerations.h"
-
-namespace lldb_private {
-
-const char *GetVoteAsCString(Vote vote);
-const char *GetSectionTypeAsCString(lldb::SectionType sect_type);
-}
-
-#endif

Removed: lldb/trunk/include/lldb/Utility/PriorityPointerPair.h
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Utility/PriorityPointerPair.h?rev=293805&view=auto
==
--- lldb/trunk/include/lldb/Utility/PriorityPointerPair.h (original)
+++ lldb/trunk/include/lldb/Utility/PriorityPointerPair.h (removed)
@@ -1,86 +0,0 @@
-//===-- PriorityPointerPair.h *- C++
-//-*-===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===--===//
-
-#ifndef liblldb_PriorityPointerPair_h_
-#define liblldb_PriorityPointerPair_h_
-
-#include "lldb/Utility/SharingPtr.h"
-#include "lldb/lldb-public.h"
-
-namespace lldb_utility {
-
-//--
-// A prioritized pair of SharedPtr. One of the two pointers is high
-// priority, the other is low priority.
-// The Get() method always returns high, if *high != NULL,
-// otherwise, low is returned (even if *low == NULL)
-//--
-
-template  class PriorityPointerPair {
-public:
-  typedef T &reference_type;
-  typedef T *pointer_type;
-
-  typedef typename std::shared_ptr T_SP;
-
-  PriorityPointerPair() : m_high(), m_low() {}
-
-  PriorityPointerPair(pointer_type high, pointer_type low)
-  : m_high(high), m_low(low) {}
-
-  PriorityPointerPair(pointer_type low) : m_high(), m_low(low) {}
-
-  PriorityPointerPair(T_SP &high, T_SP &low) : m_high(high), m_low(low) {}
-
-  PriorityPointerPair(T_SP &low) : m_high(), m_low(low) {}
-
-  void SwapLow(pointer_type l) { m_low.swap(l); }
-
-  void SwapHigh(pointer_type h) { m_high.swap(h); }
-
-  void SwapLow(T_SP l) { m_low.swap(l); }
-
-  void SwapHigh(T_SP h) { m_high.swap(h); }
-
-  T_SP GetLow() { return m_low; }
-
-  T_SP GetHigh() { return m_high; }
-
-  T_SP Get() {
-if (m_high.get())
-  return m_high;
-return m_low;
-  }
-
-  void ResetHigh() { m_high.reset(); }
-
-  void ResetLow() { m_low.reset(); }
-
-  void Reset() {
-ResetLow();
-ResetHigh();
-  }

[Lldb-commits] [PATCH] D29359: Start breaking some dependencies in lldbUtility

2017-02-01 Thread Zachary Turner via Phabricator via lldb-commits
This revision was automatically updated to reflect the committed changes.
Closed by commit rL293806: Break some dependencies in lldbUtility. (authored by 
zturner).

Changed prior to commit:
  https://reviews.llvm.org/D29359?vs=86516&id=86693#toc

Repository:
  rL LLVM

https://reviews.llvm.org/D29359

Files:
  lldb/trunk/include/lldb/Utility/ConvertEnum.h
  lldb/trunk/include/lldb/Utility/PriorityPointerPair.h
  lldb/trunk/include/lldb/Utility/Utils.h
  lldb/trunk/include/lldb/lldb-private-enumerations.h
  lldb/trunk/source/Commands/CommandObjectPlatform.cpp
  lldb/trunk/source/Core/Section.cpp
  lldb/trunk/source/Interpreter/OptionGroupArchitecture.cpp
  lldb/trunk/source/Interpreter/OptionGroupFormat.cpp
  lldb/trunk/source/Interpreter/OptionGroupOutputFile.cpp
  lldb/trunk/source/Interpreter/OptionGroupPlatform.cpp
  lldb/trunk/source/Interpreter/OptionGroupUUID.cpp
  lldb/trunk/source/Interpreter/OptionGroupValueObjectDisplay.cpp
  lldb/trunk/source/Interpreter/OptionGroupVariable.cpp
  lldb/trunk/source/Interpreter/OptionGroupWatchpoint.cpp
  lldb/trunk/source/Plugins/Instruction/ARM/EmulateInstructionARM.cpp
  lldb/trunk/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.cpp
  lldb/trunk/source/Target/Platform.cpp
  lldb/trunk/source/Target/ThreadList.cpp
  lldb/trunk/source/Target/ThreadPlan.cpp
  lldb/trunk/source/Utility/ARM64_DWARF_Registers.cpp
  lldb/trunk/source/Utility/ARM64_DWARF_Registers.h
  lldb/trunk/source/Utility/ARM_DWARF_Registers.cpp
  lldb/trunk/source/Utility/ARM_DWARF_Registers.h
  lldb/trunk/source/Utility/CMakeLists.txt
  lldb/trunk/source/Utility/ConvertEnum.cpp

Index: lldb/trunk/include/lldb/Utility/ConvertEnum.h
===
--- lldb/trunk/include/lldb/Utility/ConvertEnum.h
+++ lldb/trunk/include/lldb/Utility/ConvertEnum.h
@@ -1,21 +0,0 @@
-//===-- ConvertEnum.h ---*- C++ -*-===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===--===//
-#ifndef LLDB_UTILITY_CONVERTENUM_H
-#define LLDB_UTILITY_CONVERTENUM_H
-
-#include "lldb/lldb-enumerations.h"
-#include "lldb/lldb-private-enumerations.h"
-
-namespace lldb_private {
-
-const char *GetVoteAsCString(Vote vote);
-const char *GetSectionTypeAsCString(lldb::SectionType sect_type);
-}
-
-#endif
Index: lldb/trunk/include/lldb/Utility/Utils.h
===
--- lldb/trunk/include/lldb/Utility/Utils.h
+++ lldb/trunk/include/lldb/Utility/Utils.h
@@ -1,22 +0,0 @@
-//===-- Utils.h -*- C++ -*-===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===--===//
-
-#ifndef utility_Utils_h_
-#define utility_Utils_h_
-
-// These utilities have llvm namespace.
-#include "llvm/ADT/STLExtras.h"
-
-namespace lldb_private {
-
-// Add lldb utilities here.
-
-} // namespace lldb_private
-
-#endif // utility_Utils
Index: lldb/trunk/include/lldb/Utility/PriorityPointerPair.h
===
--- lldb/trunk/include/lldb/Utility/PriorityPointerPair.h
+++ lldb/trunk/include/lldb/Utility/PriorityPointerPair.h
@@ -1,86 +0,0 @@
-//===-- PriorityPointerPair.h *- C++
-//-*-===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===--===//
-
-#ifndef liblldb_PriorityPointerPair_h_
-#define liblldb_PriorityPointerPair_h_
-
-#include "lldb/Utility/SharingPtr.h"
-#include "lldb/lldb-public.h"
-
-namespace lldb_utility {
-
-//--
-// A prioritized pair of SharedPtr. One of the two pointers is high
-// priority, the other is low priority.
-// The Get() method always returns high, if *high != NULL,
-// otherwise, low is returned (even if *low == NULL)
-//--
-
-template  class PriorityPointerPair {
-public:
-  typedef T &reference_type;
-  typedef T *pointer_type;
-
-  typedef typename std::shared_ptr T_SP;
-
-  PriorityPointerPair() : m_high(), m_low() {}
-
-  PriorityPointerPair(pointer_type high, pointer_type low)
-  : m_high(high), m_low(low) {}
-
-  PriorityPointerPair(pointer_type low) : m_high(), m_low(low) {}
-
-  PriorityPointerPair(T_SP &high, T_SP &low) : m_high(high), m_low(low) {}
-
-  PriorityPointerPair(T_SP &low) :

[Lldb-commits] [lldb] r293821 - [CMake] Update unit tests with accurate dependencies

2017-02-01 Thread Chris Bieneman via lldb-commits
Author: cbieneman
Date: Wed Feb  1 16:17:00 2017
New Revision: 293821

URL: http://llvm.org/viewvc/llvm-project?rev=293821&view=rev
Log:
[CMake] Update unit tests with accurate dependencies

This is extending the updates from r293696 to the LLDB unit tests.

Modified:
lldb/trunk/unittests/Breakpoint/CMakeLists.txt
lldb/trunk/unittests/CMakeLists.txt
lldb/trunk/unittests/Core/CMakeLists.txt
lldb/trunk/unittests/Editline/CMakeLists.txt
lldb/trunk/unittests/Expression/CMakeLists.txt
lldb/trunk/unittests/Host/CMakeLists.txt
lldb/trunk/unittests/Interpreter/CMakeLists.txt
lldb/trunk/unittests/Language/CPlusPlus/CMakeLists.txt
lldb/trunk/unittests/Platform/CMakeLists.txt
lldb/trunk/unittests/Process/gdb-remote/CMakeLists.txt
lldb/trunk/unittests/Process/minidump/CMakeLists.txt
lldb/trunk/unittests/ScriptInterpreter/Python/CMakeLists.txt
lldb/trunk/unittests/Symbol/CMakeLists.txt
lldb/trunk/unittests/SymbolFile/DWARF/CMakeLists.txt
lldb/trunk/unittests/SymbolFile/PDB/CMakeLists.txt
lldb/trunk/unittests/UnwindAssembly/InstEmulation/CMakeLists.txt
lldb/trunk/unittests/UnwindAssembly/x86/CMakeLists.txt
lldb/trunk/unittests/Utility/CMakeLists.txt

Modified: lldb/trunk/unittests/Breakpoint/CMakeLists.txt
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/unittests/Breakpoint/CMakeLists.txt?rev=293821&r1=293820&r2=293821&view=diff
==
--- lldb/trunk/unittests/Breakpoint/CMakeLists.txt (original)
+++ lldb/trunk/unittests/Breakpoint/CMakeLists.txt Wed Feb  1 16:17:00 2017
@@ -1,3 +1,9 @@
 add_lldb_unittest(LLDBBreakpointTests
   BreakpointIDTest.cpp
+
+  LINK_LIBS
+lldbBreakpoint
+lldbCore
+  LINK_COMPONENTS
+Support
   )

Modified: lldb/trunk/unittests/CMakeLists.txt
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/unittests/CMakeLists.txt?rev=293821&r1=293820&r2=293821&view=diff
==
--- lldb/trunk/unittests/CMakeLists.txt (original)
+++ lldb/trunk/unittests/CMakeLists.txt Wed Feb  1 16:17:00 2017
@@ -21,9 +21,17 @@ if (LLDB_BUILT_STANDALONE)
 endif()
 
 function(add_lldb_unittest test_name)
+  cmake_parse_arguments(ARG
+""
+""
+"LINK_LIBS;LINK_COMPONENTS"
+${ARGN})
+
+  list(APPEND LLVM_LINK_COMPONENTS ${ARG_LINK_COMPONENTS})
+
   add_unittest(LLDBUnitTests
 ${test_name}
-${ARGN}
+${ARG_UNPARSED_ARGUMENTS}
 )
 
   add_custom_command(
@@ -33,7 +41,6 @@ function(add_lldb_unittest test_name)
 
   lldb_link_common_libs(${test_name} EXE)
   target_link_libraries(${test_name} ${CLANG_USED_LIBS} ${LLDB_SYSTEM_LIBS})
-  llvm_config(${test_name} ${LLVM_LINK_COMPONENTS})
 endfunction()
 
 function(add_unittest_inputs test_name inputs)

Modified: lldb/trunk/unittests/Core/CMakeLists.txt
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/unittests/Core/CMakeLists.txt?rev=293821&r1=293820&r2=293821&view=diff
==
--- lldb/trunk/unittests/Core/CMakeLists.txt (original)
+++ lldb/trunk/unittests/Core/CMakeLists.txt Wed Feb  1 16:17:00 2017
@@ -9,4 +9,10 @@ add_lldb_unittest(LLDBCoreTests
   StateTest.cpp
   StructuredDataTest.cpp
   TimerTest.cpp
+
+  LINK_LIBS
+lldbCore
+lldbHost
+  LINK_COMPONENTS
+Support
   )

Modified: lldb/trunk/unittests/Editline/CMakeLists.txt
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/unittests/Editline/CMakeLists.txt?rev=293821&r1=293820&r2=293821&view=diff
==
--- lldb/trunk/unittests/Editline/CMakeLists.txt (original)
+++ lldb/trunk/unittests/Editline/CMakeLists.txt Wed Feb  1 16:17:00 2017
@@ -1,3 +1,8 @@
 add_lldb_unittest(EditlineTests
   EditlineTest.cpp
+
+  LINK_LIBS
+lldbCore
+lldbHost
+lldbUtility
   )

Modified: lldb/trunk/unittests/Expression/CMakeLists.txt
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/unittests/Expression/CMakeLists.txt?rev=293821&r1=293820&r2=293821&view=diff
==
--- lldb/trunk/unittests/Expression/CMakeLists.txt (original)
+++ lldb/trunk/unittests/Expression/CMakeLists.txt Wed Feb  1 16:17:00 2017
@@ -1,3 +1,7 @@
 add_lldb_unittest(ExpressionTests
   GoParserTest.cpp
+
+  LINK_LIBS
+lldbCore
+lldbPluginExpressionParserGo
   )

Modified: lldb/trunk/unittests/Host/CMakeLists.txt
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/unittests/Host/CMakeLists.txt?rev=293821&r1=293820&r2=293821&view=diff
==
--- lldb/trunk/unittests/Host/CMakeLists.txt (original)
+++ lldb/trunk/unittests/Host/CMakeLists.txt Wed Feb  1 16:17:00 2017
@@ -4,4 +4,8 @@ add_lldb_unittest(HostTests
   SocketAddressTest.cpp
   SocketTest.cpp
   SymbolsTest.cpp
+
+  LINK_LIBS
+lldbCore
+lld

[Lldb-commits] [PATCH] D29352: [CMake] Final dependency cleanup patch!

2017-02-01 Thread Chris Bieneman via Phabricator via lldb-commits
beanz updated this revision to Diff 86721.
beanz added a comment.

Unit tests are updated in https://reviews.llvm.org/rL293821. This update makes 
one last change to the unit tests to build with the explicit dependencies.


https://reviews.llvm.org/D29352

Files:
  cmake/LLDBDependencies.cmake
  cmake/modules/AddLLDB.cmake
  source/API/CMakeLists.txt
  source/Initialization/CMakeLists.txt
  source/Plugins/Process/CMakeLists.txt
  source/Plugins/Process/Windows/Common/CMakeLists.txt
  tools/intel-mpx/CMakeLists.txt
  tools/lldb-server/CMakeLists.txt
  unittests/CMakeLists.txt

Index: unittests/CMakeLists.txt
===
--- unittests/CMakeLists.txt
+++ unittests/CMakeLists.txt
@@ -39,7 +39,6 @@
 POST_BUILD
 COMMAND "${CMAKE_COMMAND}" -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/Inputs)
 
-  lldb_link_common_libs(${test_name} EXE)
   target_link_libraries(${test_name} ${CLANG_USED_LIBS} ${LLDB_SYSTEM_LIBS})
 endfunction()
 
Index: tools/lldb-server/CMakeLists.txt
===
--- tools/lldb-server/CMakeLists.txt
+++ tools/lldb-server/CMakeLists.txt
@@ -23,90 +23,6 @@
 
 include_directories(../../source)
 
-
-set( LLDB_USED_LIBS
-  lldbBase
-  lldbBreakpoint
-  lldbCommands
-  lldbDataFormatters
-  lldbHost
-  lldbCore
-  lldbExpression
-  lldbInitialization
-  lldbInterpreter
-  lldbSymbol
-  lldbTarget
-  lldbUtility
-
-  # Plugins
-  lldbPluginDisassemblerLLVM
-  lldbPluginSymbolFileDWARF
-  lldbPluginSymbolFilePDB
-  lldbPluginSymbolFileSymtab
-  lldbPluginDynamicLoaderPosixDYLD
-
-  lldbPluginCPlusPlusLanguage
-  lldbPluginGoLanguage
-  lldbPluginJavaLanguage
-  lldbPluginObjCLanguage
-  lldbPluginObjCPlusPlusLanguage
-  lldbPluginOCamlLanguage
-
-  lldbPluginObjectFileELF
-  lldbPluginObjectFileJIT
-  lldbPluginSymbolVendorELF
-  lldbPluginPlatformPOSIX
-  lldbPluginObjectContainerBSDArchive
-  lldbPluginObjectContainerMachOArchive
-  lldbPluginProcessGDBRemote
-  lldbPluginProcessUtility
-  lldbPluginObjectContainerMachOArchive
-  lldbPluginObjectContainerBSDArchive
-  lldbPluginPlatformMacOSX
-  lldbPluginUnwindAssemblyInstEmulation
-  lldbPluginUnwindAssemblyX86
-  lldbPluginAppleObjCRuntime
-  lldbPluginCXXItaniumABI
-  lldbPluginInstructionARM
-  lldbPluginInstructionARM64
-  lldbPluginInstructionMIPS
-  lldbPluginInstructionMIPS64
-  lldbPluginObjectFilePECOFF
-  lldbPluginExpressionParserClang
-  lldbPluginExpressionParserGo
-  )
-
-# Linux-only libraries
-if ( CMAKE_SYSTEM_NAME MATCHES "Linux|Android" )
-  list(APPEND LLDB_USED_LIBS
-lldbPluginProcessLinux
-lldbPluginProcessPOSIX
-   )
-endif ()
-
-# Darwin-only libraries
-if ( CMAKE_SYSTEM_NAME MATCHES "Darwin" )
-  list(APPEND LLDB_USED_LIBS
-lldbPluginObjectFileMachO
-)
-endif()
-
-set( CLANG_USED_LIBS
-  clangAnalysis
-  clangAST
-  clangBasic
-  clangCodeGen
-  clangDriver
-  clangEdit
-  clangFrontend
-  clangLex
-  clangParse
-  clangRewrite
-  clangRewriteFrontend
-  clangSema
-  clangSerialization
-  )
-
 set(LLDB_SYSTEM_LIBS)
 if (NOT LLDB_DISABLE_LIBEDIT)
   list(APPEND LLDB_SYSTEM_LIBS edit)
@@ -142,53 +58,24 @@
   endif()
 endif()
 
-set(LLVM_LINK_COMPONENTS
-  ${LLVM_TARGETS_TO_BUILD}
-  interpreter
-  asmparser
-  bitreader
-  bitwriter
-  codegen
-  demangle
-  ipo
-  selectiondag
-  bitreader
-  mc
-  mcjit
-  core
-  mcdisassembler
-  executionengine
-  runtimedyld
-  option
-  support
-  coverage
-  target
-  )
-
 add_lldb_tool(lldb-server INCLUDE_IN_FRAMEWORK
 Acceptor.cpp
 lldb-gdbserver.cpp
 lldb-platform.cpp
 lldb-server.cpp
 LLDBServerUtilities.cpp
-)
 
-# The Darwin linker doesn't understand --start-group/--end-group.
-if (LLDB_LINKER_SUPPORTS_GROUPS)
-  target_link_libraries(lldb-server
--Wl,--start-group ${LLDB_USED_LIBS} -Wl,--end-group)
-  target_link_libraries(lldb-server
--Wl,--start-group ${CLANG_USED_LIBS} -Wl,--end-group)
-else()
-  target_link_libraries(lldb-server ${LLDB_USED_LIBS})
-  target_link_libraries(lldb-server ${CLANG_USED_LIBS})
-endif()
-if(NOT LLVM_LINK_LLVM_DYLIB)
-  # This is necessary in !LLVM_LINK_LLVM_DYLIB as LLDB's libs do not track their
-  # dependencies properly. It is conditional because in a LLVM_LINK_LLVM_DYLIB
-  # build it would introduce duplicate symbols (add_lldb_tool links to libLLVM,
-  # and this would add the individual .a files as well).
-  llvm_config(lldb-server ${LLVM_LINK_COMPONENTS})
-endif()
+LINK_LIBS
+  lldbBase
+  lldbCore
+  lldbHost
+  lldbInitialization
+  lldbInterpreter
+  ${EXTRA_LLDB_LIBS}
+  ${LLDB_SYSTEM_LIBS}
+
+LINK_COMPONENTS
+  Support
+)
 
 target_link_libraries(lldb-server ${LLDB_SYSTEM_LIBS})
Index: tools/intel-mpx/CMakeLists.txt
===
--- tools/intel-mpx/CMakeLists.txt
+++ tools/intel-mpx/CMakeLists.txt
@@ -8,16 +8,8 @@
   IntelMPXTablePlugin.cpp
   

Re: [Lldb-commits] [PATCH] D29427: Move some classes from Core -> Utility

2017-02-01 Thread Jason Molenda via lldb-commits
You need some break;s.


-const char *lldb_private::GetVoteAsCString(Vote vote) {
-  switch (vote) {
-  case eVoteNo:
-return "no";
-  case eVoteNoOpinion:
-return "no opinion";
-  case eVoteYes:
-return "yes";
-  }
-  return "invalid";
-}


+template <> struct format_provider {
+  static void format(const lldb_private::Vote &V, llvm::raw_ostream &Stream,
+ StringRef Style) {
+switch (V) {
+case lldb_private::eVoteNo:
+  Stream << "no";
+case lldb_private::eVoteNoOpinion:
+  Stream << "no opinion";
+case lldb_private::eVoteYes:
+  Stream << "yes";
+}
+Stream << "invalid";
+  }




> On Feb 1, 2017, at 2:33 PM, Zachary Turner via Phabricator via lldb-commits 
>  wrote:
> 
> zturner created this revision.
> Herald added subscribers: mgorny, nemanjai, srhines, danalbert, emaste.
> 
> NFC here, this only moves `ConstString`, `Error`, `RegularExpression`, 
> `Stream`, and `StreamString` from `Core` to `Utility`.  The CL is large 
> because these headers are included in many places, so it required updating 
> every include to point to the new location.
> 
> This change isn't very controversial, but it will require an update of the 
> Xcode project.  We can do that now so that I can submit this in one large 
> patch, or I can just go in with this and someone can fix up the Xcode project 
> later.  LMK what is preferred.
> 
> 
> https://reviews.llvm.org/D29427
> 
> Files:
>  lldb/include/lldb/Breakpoint/BreakpointResolver.h
>  lldb/include/lldb/Breakpoint/BreakpointResolverFileRegex.h
>  lldb/include/lldb/Core/AddressResolver.h
>  lldb/include/lldb/Core/AddressResolverName.h
>  lldb/include/lldb/Core/ArchSpec.h
>  lldb/include/lldb/Core/Broadcaster.h
>  lldb/include/lldb/Core/Communication.h
>  lldb/include/lldb/Core/ConstString.h
>  lldb/include/lldb/Core/DataBufferMemoryMap.h
>  lldb/include/lldb/Core/Error.h
>  lldb/include/lldb/Core/Event.h
>  lldb/include/lldb/Core/FormatEntity.h
>  lldb/include/lldb/Core/IOHandler.h
>  lldb/include/lldb/Core/Log.h
>  lldb/include/lldb/Core/Mangled.h
>  lldb/include/lldb/Core/MappedHash.h
>  lldb/include/lldb/Core/ModuleSpec.h
>  lldb/include/lldb/Core/RegularExpression.h
>  lldb/include/lldb/Core/Section.h
>  lldb/include/lldb/Core/Stream.h
>  lldb/include/lldb/Core/StreamAsynchronousIO.h
>  lldb/include/lldb/Core/StreamBuffer.h
>  lldb/include/lldb/Core/StreamCallback.h
>  lldb/include/lldb/Core/StreamFile.h
>  lldb/include/lldb/Core/StreamGDBRemote.h
>  lldb/include/lldb/Core/StreamString.h
>  lldb/include/lldb/Core/StreamTee.h
>  lldb/include/lldb/Core/StructuredData.h
>  lldb/include/lldb/Core/UniqueCStringMap.h
>  lldb/include/lldb/Core/UserSettingsController.h
>  lldb/include/lldb/Core/Value.h
>  lldb/include/lldb/Core/ValueObject.h
>  lldb/include/lldb/DataFormatters/DataVisualization.h
>  lldb/include/lldb/DataFormatters/FormatCache.h
>  lldb/include/lldb/DataFormatters/FormattersContainer.h
>  lldb/include/lldb/DataFormatters/TypeSummary.h
>  lldb/include/lldb/DataFormatters/VectorIterator.h
>  lldb/include/lldb/Expression/DWARFExpression.h
>  lldb/include/lldb/Expression/ExpressionParser.h
>  lldb/include/lldb/Expression/ExpressionVariable.h
>  lldb/include/lldb/Expression/IRInterpreter.h
>  lldb/include/lldb/Expression/Materializer.h
>  lldb/include/lldb/Host/FileCache.h
>  lldb/include/lldb/Host/FileSpec.h
>  lldb/include/lldb/Host/FileSystem.h
>  lldb/include/lldb/Host/HostNativeProcessBase.h
>  lldb/include/lldb/Host/HostNativeThreadBase.h
>  lldb/include/lldb/Host/HostThread.h
>  lldb/include/lldb/Host/LockFileBase.h
>  lldb/include/lldb/Host/MainLoopBase.h
>  lldb/include/lldb/Host/PipeBase.h
>  lldb/include/lldb/Host/Socket.h
>  lldb/include/lldb/Host/ThreadLauncher.h
>  lldb/include/lldb/Host/XML.h
>  lldb/include/lldb/Host/common/NativeBreakpointList.h
>  lldb/include/lldb/Host/common/NativeProcessProtocol.h
>  lldb/include/lldb/Host/common/NativeWatchpointList.h
>  lldb/include/lldb/Host/posix/HostProcessPosix.h
>  lldb/include/lldb/Interpreter/Args.h
>  lldb/include/lldb/Interpreter/CommandCompletions.h
>  lldb/include/lldb/Interpreter/CommandHistory.h
>  lldb/include/lldb/Interpreter/CommandObjectRegexCommand.h
>  lldb/include/lldb/Interpreter/CommandReturnObject.h
>  lldb/include/lldb/Interpreter/OptionGroupPlatform.h
>  lldb/include/lldb/Interpreter/OptionValue.h
>  lldb/include/lldb/Interpreter/OptionValueEnumeration.h
>  lldb/include/lldb/Interpreter/OptionValueProperties.h
>  lldb/include/lldb/Interpreter/OptionValueRegex.h
>  lldb/include/lldb/Interpreter/Property.h
>  lldb/include/lldb/Interpreter/ScriptInterpreter.h
>  lldb/include/lldb/Symbol/Block.h
>  lldb/include/lldb/Symbol/ClangASTContext.h
>  lldb/include/lldb/Symbol/CompileUnit.h
>  lldb/include/lldb/Symbol/CompilerDecl.h
>  lldb/include/lldb/Symbol/CompilerDeclContext.h
>  lldb/include/lldb/Symbol/DebugMacros.h
>  lldb/include/lldb/Symbol/GoASTContext.h
>  lldb/include/lldb/Symbol/JavaASTContext.h
>  lldb/include/lldb/S

Re: [Lldb-commits] [PATCH] D29427: Move some classes from Core -> Utility

2017-02-01 Thread Zachary Turner via lldb-commits
Derp.  Thanks for catching that!

On Wed, Feb 1, 2017 at 2:41 PM Jason Molenda  wrote:

> You need some break;s.
>
>
> -const char *lldb_private::GetVoteAsCString(Vote vote) {
> -  switch (vote) {
> -  case eVoteNo:
> -return "no";
> -  case eVoteNoOpinion:
> -return "no opinion";
> -  case eVoteYes:
> -return "yes";
> -  }
> -  return "invalid";
> -}
>
>
> +template <> struct format_provider {
> +  static void format(const lldb_private::Vote &V, llvm::raw_ostream
> &Stream,
> + StringRef Style) {
> +switch (V) {
> +case lldb_private::eVoteNo:
> +  Stream << "no";
> +case lldb_private::eVoteNoOpinion:
> +  Stream << "no opinion";
> +case lldb_private::eVoteYes:
> +  Stream << "yes";
> +}
> +Stream << "invalid";
> +  }
>
>
>
>
> > On Feb 1, 2017, at 2:33 PM, Zachary Turner via Phabricator via
> lldb-commits  wrote:
> >
> > zturner created this revision.
> > Herald added subscribers: mgorny, nemanjai, srhines, danalbert, emaste.
> >
> > NFC here, this only moves `ConstString`, `Error`, `RegularExpression`,
> `Stream`, and `StreamString` from `Core` to `Utility`.  The CL is large
> because these headers are included in many places, so it required updating
> every include to point to the new location.
> >
> > This change isn't very controversial, but it will require an update of
> the Xcode project.  We can do that now so that I can submit this in one
> large patch, or I can just go in with this and someone can fix up the Xcode
> project later.  LMK what is preferred.
> >
> >
> > https://reviews.llvm.org/D29427
> >
> > Files:
> >  lldb/include/lldb/Breakpoint/BreakpointResolver.h
> >  lldb/include/lldb/Breakpoint/BreakpointResolverFileRegex.h
> >  lldb/include/lldb/Core/AddressResolver.h
> >  lldb/include/lldb/Core/AddressResolverName.h
> >  lldb/include/lldb/Core/ArchSpec.h
> >  lldb/include/lldb/Core/Broadcaster.h
> >  lldb/include/lldb/Core/Communication.h
> >  lldb/include/lldb/Core/ConstString.h
> >  lldb/include/lldb/Core/DataBufferMemoryMap.h
> >  lldb/include/lldb/Core/Error.h
> >  lldb/include/lldb/Core/Event.h
> >  lldb/include/lldb/Core/FormatEntity.h
> >  lldb/include/lldb/Core/IOHandler.h
> >  lldb/include/lldb/Core/Log.h
> >  lldb/include/lldb/Core/Mangled.h
> >  lldb/include/lldb/Core/MappedHash.h
> >  lldb/include/lldb/Core/ModuleSpec.h
> >  lldb/include/lldb/Core/RegularExpression.h
> >  lldb/include/lldb/Core/Section.h
> >  lldb/include/lldb/Core/Stream.h
> >  lldb/include/lldb/Core/StreamAsynchronousIO.h
> >  lldb/include/lldb/Core/StreamBuffer.h
> >  lldb/include/lldb/Core/StreamCallback.h
> >  lldb/include/lldb/Core/StreamFile.h
> >  lldb/include/lldb/Core/StreamGDBRemote.h
> >  lldb/include/lldb/Core/StreamString.h
> >  lldb/include/lldb/Core/StreamTee.h
> >  lldb/include/lldb/Core/StructuredData.h
> >  lldb/include/lldb/Core/UniqueCStringMap.h
> >  lldb/include/lldb/Core/UserSettingsController.h
> >  lldb/include/lldb/Core/Value.h
> >  lldb/include/lldb/Core/ValueObject.h
> >  lldb/include/lldb/DataFormatters/DataVisualization.h
> >  lldb/include/lldb/DataFormatters/FormatCache.h
> >  lldb/include/lldb/DataFormatters/FormattersContainer.h
> >  lldb/include/lldb/DataFormatters/TypeSummary.h
> >  lldb/include/lldb/DataFormatters/VectorIterator.h
> >  lldb/include/lldb/Expression/DWARFExpression.h
> >  lldb/include/lldb/Expression/ExpressionParser.h
> >  lldb/include/lldb/Expression/ExpressionVariable.h
> >  lldb/include/lldb/Expression/IRInterpreter.h
> >  lldb/include/lldb/Expression/Materializer.h
> >  lldb/include/lldb/Host/FileCache.h
> >  lldb/include/lldb/Host/FileSpec.h
> >  lldb/include/lldb/Host/FileSystem.h
> >  lldb/include/lldb/Host/HostNativeProcessBase.h
> >  lldb/include/lldb/Host/HostNativeThreadBase.h
> >  lldb/include/lldb/Host/HostThread.h
> >  lldb/include/lldb/Host/LockFileBase.h
> >  lldb/include/lldb/Host/MainLoopBase.h
> >  lldb/include/lldb/Host/PipeBase.h
> >  lldb/include/lldb/Host/Socket.h
> >  lldb/include/lldb/Host/ThreadLauncher.h
> >  lldb/include/lldb/Host/XML.h
> >  lldb/include/lldb/Host/common/NativeBreakpointList.h
> >  lldb/include/lldb/Host/common/NativeProcessProtocol.h
> >  lldb/include/lldb/Host/common/NativeWatchpointList.h
> >  lldb/include/lldb/Host/posix/HostProcessPosix.h
> >  lldb/include/lldb/Interpreter/Args.h
> >  lldb/include/lldb/Interpreter/CommandCompletions.h
> >  lldb/include/lldb/Interpreter/CommandHistory.h
> >  lldb/include/lldb/Interpreter/CommandObjectRegexCommand.h
> >  lldb/include/lldb/Interpreter/CommandReturnObject.h
> >  lldb/include/lldb/Interpreter/OptionGroupPlatform.h
> >  lldb/include/lldb/Interpreter/OptionValue.h
> >  lldb/include/lldb/Interpreter/OptionValueEnumeration.h
> >  lldb/include/lldb/Interpreter/OptionValueProperties.h
> >  lldb/include/lldb/Interpreter/OptionValueRegex.h
> >  lldb/include/lldb/Interpreter/Property.h
> >  lldb/include/lldb/Interpreter/ScriptInterpreter.h
> >  lldb/include/lldb/Symbol/Block.h
> >  lldb/include/lldb/Symbol/

[Lldb-commits] [lldb] r293831 - Update xcodeproj to track ConvertEnum.cpp et al being removed.

2017-02-01 Thread Jason Molenda via lldb-commits
Author: jmolenda
Date: Wed Feb  1 16:41:38 2017
New Revision: 293831

URL: http://llvm.org/viewvc/llvm-project?rev=293831&view=rev
Log:
Update xcodeproj to track ConvertEnum.cpp et al being removed.

Modified:
lldb/trunk/lldb.xcodeproj/project.pbxproj

Modified: lldb/trunk/lldb.xcodeproj/project.pbxproj
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/lldb.xcodeproj/project.pbxproj?rev=293831&r1=293830&r2=293831&view=diff
==
--- lldb/trunk/lldb.xcodeproj/project.pbxproj (original)
+++ lldb/trunk/lldb.xcodeproj/project.pbxproj Wed Feb  1 16:41:38 2017
@@ -199,7 +199,6 @@
26474CCD18D0CB5B0073DEBA /* RegisterContextPOSIX_x86.cpp in 
Sources */ = {isa = PBXBuildFile; fileRef = 26474CC618D0CB5B0073DEBA /* 
RegisterContextPOSIX_x86.cpp */; };
26491E3E15E1DB9F00CBFFC2 /* OptionValueRegex.cpp in Sources */ 
= {isa = PBXBuildFile; fileRef = 26491E3D15E1DB9F00CBFFC2 /* 
OptionValueRegex.cpp */; };
264A12FC1372522000875C42 /* EmulateInstructionARM64.cpp in 
Sources */ = {isa = PBXBuildFile; fileRef = 264A12FA1372522000875C42 /* 
EmulateInstructionARM64.cpp */; };
-   264A1300137252C700875C42 /* ARM64_DWARF_Registers.cpp in 
Sources */ = {isa = PBXBuildFile; fileRef = 264A12FE137252C700875C42 /* 
ARM64_DWARF_Registers.cpp */; };
264A58EE1A7DBCAD00A6B1B0 /* OptionValueFormatEntity.cpp in 
Sources */ = {isa = PBXBuildFile; fileRef = 264A58ED1A7DBCAD00A6B1B0 /* 
OptionValueFormatEntity.cpp */; };
264A97BF133918BC0017F0BE /* PlatformRemoteGDBServer.cpp in 
Sources */ = {isa = PBXBuildFile; fileRef = 264A97BD133918BC0017F0BE /* 
PlatformRemoteGDBServer.cpp */; };
264D8D5013661BD7003A368F /* UnwindAssembly.cpp in Sources */ = 
{isa = PBXBuildFile; fileRef = 264D8D4F13661BD7003A368F /* UnwindAssembly.cpp 
*/; };
@@ -660,7 +659,6 @@
26DE20631161904200A093E2 /* SBLineEntry.cpp in Sources */ = 
{isa = PBXBuildFile; fileRef = 26DE20621161904200A093E2 /* SBLineEntry.cpp */; 
};
26DE20651161904E00A093E2 /* SBSymbol.cpp in Sources */ = {isa = 
PBXBuildFile; fileRef = 26DE20641161904E00A093E2 /* SBSymbol.cpp */; };
26E152261419CAD4007967D0 /* ObjectFilePECOFF.cpp in Sources */ 
= {isa = PBXBuildFile; fileRef = 26E152231419CACA007967D0 /* 
ObjectFilePECOFF.cpp */; };
-   26ECA04313665FED008D1F18 /* ARM_DWARF_Registers.cpp in Sources 
*/ = {isa = PBXBuildFile; fileRef = 26ECA04213665FED008D1F18 /* 
ARM_DWARF_Registers.cpp */; };
26ED3D6D13C563810017D45E /* OptionGroupVariable.cpp in Sources 
*/ = {isa = PBXBuildFile; fileRef = 26ED3D6C13C563810017D45E /* 
OptionGroupVariable.cpp */; };
26EFB61B1BFE8D3E00544801 /* PlatformNetBSD.cpp in Sources */ = 
{isa = PBXBuildFile; fileRef = 26EFB6181BFE8D3E00544801 /* PlatformNetBSD.cpp 
*/; };
26EFB61C1BFE8D3E00544801 /* PlatformNetBSD.h in Headers */ = 
{isa = PBXBuildFile; fileRef = 26EFB6191BFE8D3E00544801 /* PlatformNetBSD.h */; 
};
@@ -679,7 +677,6 @@
332CCB181AFF41620034D4C4 /* SBLanguageRuntime.h in Headers */ = 
{isa = PBXBuildFile; fileRef = 3392EBB71AFF402200858B9F /* SBLanguageRuntime.h 
*/; settings = {ATTRIBUTES = (Public, ); }; };
33E5E8471A674FB60024ED68 /* StringConvert.cpp in Sources */ = 
{isa = PBXBuildFile; fileRef = 33E5E8411A672A240024ED68 /* StringConvert.cpp 
*/; };
3F8160A61AB9F7DD001DA9DF /* Logging.cpp in Sources */ = {isa = 
PBXBuildFile; fileRef = 3F8160A51AB9F7DD001DA9DF /* Logging.cpp */; };
-   3F8169191ABA2419001DA9DF /* ConvertEnum.cpp in Sources */ = 
{isa = PBXBuildFile; fileRef = 3F8169171ABA2419001DA9DF /* ConvertEnum.cpp */; 
};
3F81691A1ABA2419001DA9DF /* NameMatches.cpp in Sources */ = 
{isa = PBXBuildFile; fileRef = 3F8169181ABA2419001DA9DF /* NameMatches.cpp */; 
};
3F81692C1ABB7A1E001DA9DF /* SystemInitializerFull.cpp in 
Sources */ = {isa = PBXBuildFile; fileRef = 3F81692A1ABB7A16001DA9DF /* 
SystemInitializerFull.cpp */; };
3F8169311ABB7A6D001DA9DF /* SystemInitializer.cpp in Sources */ 
= {isa = PBXBuildFile; fileRef = 3F81692E1ABB7A6D001DA9DF /* 
SystemInitializer.cpp */; };
@@ -1632,7 +1629,6 @@
26491E3D15E1DB9F00CBFFC2 /* OptionValueRegex.cpp */ = {isa = 
PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; 
name = OptionValueRegex.cpp; path = source/Interpreter/OptionValueRegex.cpp; 
sourceTree = ""; };
264A12FA1372522000875C42 /* EmulateInstructionARM64.cpp */ = 
{isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = 
sourcecode.cpp.cpp; path = EmulateInstructionARM64.cpp; sourceTree = ""; 
};
264A12FB1372522000875C42 /* EmulateInstructionARM64.h */ = {isa 
= PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path 
= EmulateInstructionARM64.h; so

[Lldb-commits] [PATCH] D29352: [CMake] Final dependency cleanup patch!

2017-02-01 Thread Pavel Labath via Phabricator via lldb-commits
labath added a comment.

Unfortunately, I am still getting undefined symbols when building some of the 
unittest binaries:

  FAILED: : && /usr/bin/clang++-3.6   -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 -Wstring-conversion 
-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 -O3 -DNDEBUG 
-ffunction-sections -fdata-sections -fuse-ld=gold  -Wl,-allow-shlib-undefined 
-Wl,--icf=safe   -Wl,-O3 -Wl,--gc-sections 
tools/lldb/unittests/Breakpoint/CMakeFiles/LLDBBreakpointTests.dir/BreakpointIDTest.cpp.o
  -o tools/lldb/unittests/Breakpoint/LLDBBreakpointTests  lib/libLLVMSupport.a 
lib/libLLVMSupport.a -lpthread lib/libgtest_main.a lib/libgtest.a -lpthread 
-ledit -lcurses /usr/lib/x86_64-linux-gnu/libform.so 
/usr/lib/x86_64-linux-gnu/libpanel.so -ltinfo 
/usr/lib/x86_64-linux-gnu/libpython2.7.so -lpthread -ldl -lcurses 
/usr/lib/x86_64-linux-gnu/libform.so /usr/lib/x86_64-linux-gnu/libpanel.so 
lib/libLLVMSupport.a -lrt -latomic -lpthread -lz -lm lib/libLLVMDemangle.a 
/usr/lib/x86_64-linux-gnu/libpython2.7.so -ltinfo -lpthread -ldl && cd 
/usr/local/google/home/labath/ll/build/opt/tools/lldb/unittests/Breakpoint && 
/usr/local/google/home/labath/local/cmake/bin/cmake -E make_directory 
/usr/local/google/home/labath/ll/build/opt/tools/lldb/unittests/Breakpoint/Inputs
  
tools/lldb/unittests/Breakpoint/CMakeFiles/LLDBBreakpointTests.dir/BreakpointIDTest.cpp.o:/usr/local/google/home/labath/ll/llvm/tools/lldb/unittests/Breakpoint/BreakpointIDTest.cpp:function
 BreakpointIDTest_StringIsBreakpointName_Test::TestBody(): error: undefined 
reference to 'lldb_private::Error::Error()'
  
tools/lldb/unittests/Breakpoint/CMakeFiles/LLDBBreakpointTests.dir/BreakpointIDTest.cpp.o:/usr/local/google/home/labath/ll/llvm/tools/lldb/unittests/Breakpoint/BreakpointIDTest.cpp:function
 BreakpointIDTest_StringIsBreakpointName_Test::TestBody(): error: undefined 
reference to 
'lldb_private::BreakpointID::StringIsBreakpointName(llvm::StringRef, 
lldb_private::Error&)'
  
tools/lldb/unittests/Breakpoint/CMakeFiles/LLDBBreakpointTests.dir/BreakpointIDTest.cpp.o:/usr/local/google/home/labath/ll/llvm/tools/lldb/unittests/Breakpoint/BreakpointIDTest.cpp:function
 BreakpointIDTest_StringIsBreakpointName_Test::TestBody(): error: undefined 
reference to 
'lldb_private::BreakpointID::StringIsBreakpointName(llvm::StringRef, 
lldb_private::Error&)'
  
tools/lldb/unittests/Breakpoint/CMakeFiles/LLDBBreakpointTests.dir/BreakpointIDTest.cpp.o:/usr/local/google/home/labath/ll/llvm/tools/lldb/unittests/Breakpoint/BreakpointIDTest.cpp:function
 BreakpointIDTest_StringIsBreakpointName_Test::TestBody(): error: undefined 
reference to 
'lldb_private::BreakpointID::StringIsBreakpointName(llvm::StringRef, 
lldb_private::Error&)'
  
tools/lldb/unittests/Breakpoint/CMakeFiles/LLDBBreakpointTests.dir/BreakpointIDTest.cpp.o:/usr/local/google/home/labath/ll/llvm/tools/lldb/unittests/Breakpoint/BreakpointIDTest.cpp:function
 BreakpointIDTest_StringIsBreakpointName_Test::TestBody(): error: undefined 
reference to 
'lldb_private::BreakpointID::StringIsBreakpointName(llvm::StringRef, 
lldb_private::Error&)'
  
tools/lldb/unittests/Breakpoint/CMakeFiles/LLDBBreakpointTests.dir/BreakpointIDTest.cpp.o:/usr/local/google/home/labath/ll/llvm/tools/lldb/unittests/Breakpoint/BreakpointIDTest.cpp:function
 BreakpointIDTest_StringIsBreakpointName_Test::TestBody(): error: undefined 
reference to 'lldb_private::Error::~Error()'
  
tools/lldb/unittests/Breakpoint/CMakeFiles/LLDBBreakpointTests.dir/BreakpointIDTest.cpp.o:/usr/local/google/home/labath/ll/llvm/tools/lldb/unittests/Breakpoint/BreakpointIDTest.cpp:function
 BreakpointIDTest_StringIsBreakpointName_Test::TestBody(): error: undefined 
reference to 'lldb_private::Error::~Error()'
  clang: error: linker command failed with exit code 1 (use -v to see 
invocation)

This one is particularly strange as the breakpoint tests explicitly specify 
they depend in LldbBreakpoint, but I don't see them anywhere on the link line. 
I haven't yet tried to dig further into what is going on. Do you have a linux 
box you can try this out on?


https://reviews.llvm.org/D29352



___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D29427: Move some classes from Core -> Utility

2017-02-01 Thread Jim Ingham via Phabricator via lldb-commits
jingham accepted this revision.
jingham added a comment.
This revision is now accepted and ready to land.

This looks fine to me.  Just check it on in and we'll fix the project files 
after the fact.

BTW, did you scrub the Host code and do the mutatis mutandis on them, or will 
we have to do that too?


https://reviews.llvm.org/D29427



___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D29427: Move some classes from Core -> Utility

2017-02-01 Thread Zachary Turner via Phabricator via lldb-commits
zturner added a comment.

I didn't do everything needed to get Utility to be standalone if that's what 
you mean.  Some things are trickier than others, so I wanted to isolate this CL 
to strictly mechanical code move.

What Host code were you referring to?

BTW, I'll probably submit this tomorrow since I'm heading out soon and won't be 
around in case something breaks.


https://reviews.llvm.org/D29427



___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D29427: Move some classes from Core -> Utility

2017-02-01 Thread Jim Ingham via Phabricator via lldb-commits
jingham added a comment.

I meant the code in source/Host, but somehow missed the change to 
Host/macosx/Symbols.cpp on the first pass, so you probably did.


https://reviews.llvm.org/D29427



___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D29352: [CMake] Final dependency cleanup patch!

2017-02-01 Thread Pavel Labath via Phabricator via lldb-commits
labath added a comment.

BTW, I just noticed that the Breakpoint change has dos line breaks for some 
reason. Maybe that could be the cause. I'll try it out tomorrow.


https://reviews.llvm.org/D29352



___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D29352: [CMake] Final dependency cleanup patch!

2017-02-01 Thread Pavel Labath via Phabricator via lldb-commits
labath added a comment.

the newlines were a red herring. I think the problem is that you forgot to use 
the LINK_LIBS argument (see comment).

This works on linux after applying this change (and fixing ObjectFileELF test 
dependencies, which you missed because they were added yesterday).




Comment at: unittests/CMakeLists.txt:42
 
-  lldb_link_common_libs(${test_name} EXE)
   target_link_libraries(${test_name} ${CLANG_USED_LIBS} ${LLDB_SYSTEM_LIBS})
 endfunction()

add `${ARG_LINK_LIBS}` here


https://reviews.llvm.org/D29352



___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] r293858 - Add logging to SBThread::GetInfoItemByPathAsString to

2017-02-01 Thread Jason Molenda via lldb-commits
Author: jmolenda
Date: Wed Feb  1 21:02:51 2017
New Revision: 293858

URL: http://llvm.org/viewvc/llvm-project?rev=293858&view=rev
Log:
Add logging to SBThread::GetInfoItemByPathAsString to
print the path being requested.

Change the GetInfoItemByPathAsString docuemtnation in 
the .i file to use docstring instead of autodoc so
the function signature is included in the python
help.
 

Modified:
lldb/trunk/scripts/interface/SBThread.i
lldb/trunk/source/API/SBThread.cpp

Modified: lldb/trunk/scripts/interface/SBThread.i
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/scripts/interface/SBThread.i?rev=293858&r1=293857&r2=293858&view=diff
==
--- lldb/trunk/scripts/interface/SBThread.i (original)
+++ lldb/trunk/scripts/interface/SBThread.i Wed Feb  1 21:02:51 2017
@@ -182,12 +182,14 @@ public:
 lldb::queue_id_t
 GetQueueID() const;
 
-%feature("autodoc", "
-Takes a path string and a SBStream reference as parameters, returns a 
bool.  
-Collects the thread's 'info' dictionary from the remote system, uses the 
path
-argument to descend into the dictionary to an item of interest, and prints
-it into the SBStream in a natural format.  Return bool is to indicate if
-anything was printed into the stream (true) or not (false).
+%feature("docstring", "
+
//--
+/// Takes a path string and a SBStream reference as parameters, returns a 
bool.  
+/// Collects the thread's 'info' dictionary from the remote system, uses 
the path
+/// argument to descend into the dictionary to an item of interest, and 
prints
+/// it into the SBStream in a natural format.  Return bool is to indicate 
if
+/// anything was printed into the stream (true) or not (false).
+
//--
 ") GetInfoItemByPathAsString;
 
 bool

Modified: lldb/trunk/source/API/SBThread.cpp
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/source/API/SBThread.cpp?rev=293858&r1=293857&r2=293858&view=diff
==
--- lldb/trunk/source/API/SBThread.cpp (original)
+++ lldb/trunk/source/API/SBThread.cpp Wed Feb  1 21:02:51 2017
@@ -595,8 +595,8 @@ bool SBThread::GetInfoItemByPathAsString
   }
 
   if (log)
-log->Printf("SBThread(%p)::GetInfoItemByPathAsString () => %s",
-static_cast(exe_ctx.GetThreadPtr()), strm.GetData());
+log->Printf("SBThread(%p)::GetInfoItemByPathAsString (\"%s\") => \"%s\"",
+static_cast(exe_ctx.GetThreadPtr()), path, 
strm.GetData());
 
   return success;
 }


___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits