[Lldb-commits] [PATCH] D53086: [PDB] Fix flaky `variables-locations.test` after PR38857

2018-10-12 Thread Aleksandr Urakov via Phabricator via lldb-commits
aleksandr.urakov added a comment.

In https://reviews.llvm.org/D53086#1263002, @zturner wrote:

> Do we have access to the current instruction pointer?  That's what you need 
> to find the correct FPO record.


No, it seems that we haven't. But if there's the only one 
`S_DEFRANGE_FRAMEPOINTER_REL` for variable, then there must be the only one 
definition of `VFRAME` for the variable's range, and then I think we can safely 
search the required FPO data by intersection with the variable's scope range. 
I'll try to implement this, thanks!


https://reviews.llvm.org/D53086



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


[Lldb-commits] [PATCH] D52689: [LLDB] - Add support for DW_FORM_implicit_const.

2018-10-12 Thread George Rimar via Phabricator via lldb-commits
This revision was automatically updated to reflect the committed changes.
Closed by commit rLLDB344328: [LLDB] - Add support for DW_FORM_implicit_const. 
(authored by grimar, committed by ).
Herald added a subscriber: abidh.

Changed prior to commit:
  https://reviews.llvm.org/D52689?vs=169209&id=169359#toc

Repository:
  rLLDB LLDB

https://reviews.llvm.org/D52689

Files:
  lit/Breakpoint/Inputs/implicit_const_form_support.yaml
  lit/Breakpoint/implicit_const_form_support.test
  source/Plugins/SymbolFile/DWARF/DWARFAbbreviationDeclaration.cpp
  source/Plugins/SymbolFile/DWARF/DWARFAbbreviationDeclaration.h
  source/Plugins/SymbolFile/DWARF/DWARFAttribute.cpp
  source/Plugins/SymbolFile/DWARF/DWARFAttribute.h
  source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.cpp
  source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.h
  source/Plugins/SymbolFile/DWARF/DWARFFormValue.cpp
  source/Plugins/SymbolFile/DWARF/DWARFFormValue.h

Index: source/Plugins/SymbolFile/DWARF/DWARFFormValue.h
===
--- source/Plugins/SymbolFile/DWARF/DWARFFormValue.h
+++ source/Plugins/SymbolFile/DWARF/DWARFFormValue.h
@@ -56,12 +56,17 @@
   };
 
   DWARFFormValue();
+  DWARFFormValue(const DWARFUnit *cu);
   DWARFFormValue(const DWARFUnit *cu, dw_form_t form);
   const DWARFUnit *GetCompileUnit() const { return m_cu; }
   void SetCompileUnit(const DWARFUnit *cu) { m_cu = cu; }
   dw_form_t Form() const { return m_form; }
+  dw_form_t& FormRef() { return m_form; }
   void SetForm(dw_form_t form) { m_form = form; }
   const ValueType &Value() const { return m_value; }
+  ValueType &ValueRef() { return m_value; }
+  void SetValue(const ValueType &val) { m_value = val; }
+
   void Dump(lldb_private::Stream &s) const;
   bool ExtractValue(const lldb_private::DWARFDataExtractor &data,
 lldb::offset_t *offset_ptr);
Index: source/Plugins/SymbolFile/DWARF/DWARFAttribute.h
===
--- source/Plugins/SymbolFile/DWARF/DWARFAttribute.h
+++ source/Plugins/SymbolFile/DWARF/DWARFAttribute.h
@@ -11,15 +11,17 @@
 #define SymbolFileDWARF_DWARFAttribute_h_
 
 #include "DWARFDefines.h"
+#include "DWARFFormValue.h"
 #include "llvm/ADT/SmallVector.h"
 #include 
 
 class DWARFUnit;
-class DWARFFormValue;
 
 class DWARFAttribute {
 public:
-  DWARFAttribute(dw_attr_t attr, dw_form_t form) : m_attr(attr), m_form(form) {}
+  DWARFAttribute(dw_attr_t attr, dw_form_t form,
+ DWARFFormValue::ValueType value)
+  : m_attr(attr), m_form(form), m_value(value) {}
 
   void set(dw_attr_t attr, dw_form_t form) {
 m_attr = attr;
@@ -29,9 +31,11 @@
   void set_form(dw_form_t form) { m_form = form; }
   dw_attr_t get_attr() const { return m_attr; }
   dw_form_t get_form() const { return m_form; }
-  void get(dw_attr_t &attr, dw_form_t &form) const {
+  void get(dw_attr_t &attr, dw_form_t &form,
+   DWARFFormValue::ValueType &val) const {
 attr = m_attr;
 form = m_form;
+val = m_value;
   }
   bool operator==(const DWARFAttribute &rhs) const {
 return m_attr == rhs.m_attr && m_form == rhs.m_form;
@@ -43,6 +47,7 @@
 protected:
   dw_attr_t m_attr;
   dw_form_t m_form;
+  DWARFFormValue::ValueType m_value;
 };
 
 class DWARFAttributes {
Index: source/Plugins/SymbolFile/DWARF/DWARFAttribute.cpp
===
--- source/Plugins/SymbolFile/DWARF/DWARFAttribute.cpp
+++ source/Plugins/SymbolFile/DWARF/DWARFAttribute.cpp
@@ -26,10 +26,10 @@
   return UINT32_MAX;
 }
 
-void DWARFAttributes::Append(const DWARFUnit *cu,
- dw_offset_t attr_die_offset, dw_attr_t attr,
- dw_form_t form) {
-  AttributeValue attr_value = {cu, attr_die_offset, {attr, form}};
+void DWARFAttributes::Append(const DWARFUnit *cu, dw_offset_t attr_die_offset,
+ dw_attr_t attr, dw_form_t form) {
+  AttributeValue attr_value = {
+  cu, attr_die_offset, {attr, form, DWARFFormValue::ValueType()}};
   m_infos.push_back(attr_value);
 }
 
Index: source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.cpp
===
--- source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.cpp
+++ source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.cpp
@@ -174,6 +174,10 @@
   debug_info_data.GetU32(&offset);
 break;
 
+  case DW_FORM_implicit_const:
+form_size = 0;
+break;
+
   default:
 *offset_ptr = m_offset;
 return false;
@@ -233,15 +237,14 @@
 
 // Skip all data in the .debug_info for the attributes
 const uint32_t numAttributes = abbrevDecl->NumAttributes();
-uint32_t i;
-dw_attr_t attr;
-dw_form_t form;
-for (i = 0; i < numAttributes; ++i) {
-  abbrevDecl->GetAttrAndFormByIndexUnchecked(i, attr, form);
+for 

[Lldb-commits] [PATCH] D53140: [LLDB] - Add support for DW_RLE_base_address and DW_RLE_offset_pair entries (.debug_rnglists)

2018-10-12 Thread George Rimar via Phabricator via lldb-commits
grimar added inline comments.



Comment at: source/Plugins/SymbolFile/DWARF/DWARFDebugRanges.h:51-55
+  struct RngListEntry {
+uint8_t encoding;
+uint64_t value0;
+uint64_t value1;
+  };

clayborg wrote:
> Do we really need to store all this? Can't we just convert to address ranges 
> on the fly in DWARFDebugRngLists::Extract? With the current 
> DW_RLE_base_address and DW_RLE_offset_pair stuff we can store the base 
> address locally inside the DWARFDebugRngLists::Extract function and skip 
> pushing an entry for it and then convert any DW_RLE_offset_pair stuff into 
> addresses by adding the base address before pushing the range. Or will this 
> be required to support other opcodes?
I think we can not do that in `DWARFDebugRngLists::Extract` because we should 
take
in account that we can have multiple CU with different address bases.

Example:
https://github.com/llvm-mirror/lldb/blob/master/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.cpp#L1069
In this code `dwarf2Data->DebugRanges()` call `Extract` which extracts all 
ranges from `.debug_range` section.
But at the moment of extraction, it does not know the base address for a given 
CU and that is why code calls
`range.Slide` after that I believe.

Here is an example I have in mind for this patch. The executable below contains 
2 CUs and 2 contibution in `.debug_rnglists` (one for each CU)
```
.debug_info contents:
0x: Compile Unit: length = 0x00ac version = 0x0005 unit_type = 
DW_UT_compile abbr_offset = 0x addr_size = 0x08 (next unit at 0x00b0)

0x000c: DW_TAG_compile_unit [1] *
...
  DW_AT_low_pc [DW_FORM_addr]   (0x00400520)
  DW_AT_high_pc [DW_FORM_data4] (0x0034)
  DW_AT_rnglists_base [DW_FORM_sec_offset]  (0x000c)

...
0x00b0: Compile Unit: length = 0x00a1 version = 0x0005 unit_type = 
DW_UT_compile abbr_offset = 0x00ad addr_size = 0x08 (next unit at 0x0155)

0x00bc: DW_TAG_compile_unit [1] *

  DW_AT_low_pc [DW_FORM_addr]   (0x00400560)
  DW_AT_high_pc [DW_FORM_data4] (0x0027)
  DW_AT_rnglists_base [DW_FORM_sec_offset]  (0x001f)
```


```
.debug_rnglists contents:
0x: range list header: length = 0x000f, version = 0x0005, addr_size 
= 0x08, seg_size = 0x00, offset_entry_count = 0x
ranges:
0x000c: [DW_RLE_offset_pair]:  0x0005, 0x0012 => 
[0x0005, 0x0012)
0x000f: [DW_RLE_offset_pair]:  0x0017, 0x001d => 
[0x0017, 0x001d)
0x0012: [DW_RLE_end_of_list]
0x0013: range list header: length = 0x000f, version = 0x0005, addr_size 
= 0x08, seg_size = 0x00, offset_entry_count = 0x
ranges:
0x001f: [DW_RLE_offset_pair]:  0x0005, 0x0012 => 
[0x0005, 0x0012)
0x0022: [DW_RLE_offset_pair]:  0x0017, 0x001d => 
[0x0017, 0x001d)
0x0025: [DW_RLE_end_of_list]
```

With that, it seems we want to parse the `.debug_rnglists` section once, but 
for each CU we have different contribution offset (`DW_AT_rnglists_base`) and 
the different base address (`DW_AT_low_pc`), so I think should fix up the 
ranges parsed independently.
That is why I had to store `RngListEntry` list and doing the fixup in 
`FindRanges`.

As an improvement we might want to cache the result returned by `FindRanges` 
somehow I think, so for further calls of `FindRanges`
for a given CU we would not need to do a fixup and can just return the ranges 
list built earlier.


https://reviews.llvm.org/D53140



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


[Lldb-commits] [PATCH] D53193: [LLDB] - Add support for DW_RLE_start_end entries (.debug_rnglists)

2018-10-12 Thread George Rimar via Phabricator via lldb-commits
grimar created this revision.
grimar added reviewers: LLDB, clayborg.
Herald added subscribers: JDevlieghere, aprantl.

DWARF5 describes DW_RLE_start_end as:

>   This is a form of bounded range entry that has two target address operands.
>   Each operand is the same size as used in DW_FORM_addr. These indicate
>   the starting and ending addresses, respectively, that define the address 
> range
>   for which the following location is valid.

The patch implements the support.


https://reviews.llvm.org/D53193

Files:
  lit/Breakpoint/Inputs/debug_rnglist_rlestartend.yaml
  lit/Breakpoint/debug_rnglist_rlestartend.test
  source/Plugins/SymbolFile/DWARF/DWARFDebugRanges.cpp

Index: source/Plugins/SymbolFile/DWARF/DWARFDebugRanges.cpp
===
--- source/Plugins/SymbolFile/DWARF/DWARFDebugRanges.cpp
+++ source/Plugins/SymbolFile/DWARF/DWARFDebugRanges.cpp
@@ -143,10 +143,17 @@
   break;
 }
 
+case DW_RLE_start_end: {
+  dw_addr_t begin = data.GetMaxU64(offset_ptr, addrSize);
+  dw_addr_t end = data.GetMaxU64(offset_ptr, addrSize);
+  rangeList.Append(DWARFRangeList::Entry(begin, end - begin));
+  break;
+}
+
 default:
   // Next encodings are not yet supported:
   // DW_RLE_base_addressx, DW_RLE_startx_endx, DW_RLE_startx_length,
-  // DW_RLE_offset_pair, DW_RLE_base_address, DW_RLE_start_end
+  // DW_RLE_offset_pair, DW_RLE_base_address.
   lldbassert(0 && "unknown range list entry encoding");
   error = true;
 }
Index: lit/Breakpoint/debug_rnglist_rlestartend.test
===
--- lit/Breakpoint/debug_rnglist_rlestartend.test
+++ lit/Breakpoint/debug_rnglist_rlestartend.test
@@ -0,0 +1,28 @@
+# RUN: yaml2obj %p/Inputs/debug_rnglist_rlestartend.yaml > %ttest
+# RUN: lldb-test breakpoints %ttest %s | FileCheck %s
+
+# Test shows that LDLB is able to handle DW_RLE_start_end entries properly.
+
+# The following code and invocation were used to produce asm file.
+# clang -O0 -gdwarf-5 test.cpp -S -o test.s -fuse-ld=lld -ffunction-sections
+# It was edited to use DW_RLE_start_end, compiled and converted to yaml.
+# The yaml was manually reduced.
+#
+# //test.cpp:
+# int zed() { 
+#  return 1;
+# }
+#
+# int main() {
+#  return zed();
+# }
+#
+# clang and LLD versions were 8.0.0 (trunk 344035)
+
+b main
+# CHECK-LABEL: b main
+# CHECK: Address: {{.*}}`main + 15 at test.cpp:6:10
+
+b zed
+# CHECK-LABEL: b zed
+# CHECK: Address: {{.*}}`zed() + 4 at test.cpp:2:3
Index: lit/Breakpoint/Inputs/debug_rnglist_rlestartend.yaml
===
--- lit/Breakpoint/Inputs/debug_rnglist_rlestartend.yaml
+++ lit/Breakpoint/Inputs/debug_rnglist_rlestartend.yaml
@@ -0,0 +1,49 @@
+--- !ELF
+FileHeader:  
+  Class:   ELFCLASS64
+  Data:ELFDATA2LSB
+  Type:ET_EXEC
+  Machine: EM_X86_64
+  Entry:   0x00201000
+Sections:
+  - Name:.text
+Type:SHT_PROGBITS
+Flags:   [ SHF_ALLOC, SHF_EXECINSTR ]
+Address: 0x00201000
+AddressAlign:0x0010
+Content: 31ED4989D15E4889E24883E4F0505449C7C08011200048C7C11011200048C7C7F0102000E89701F455B810202000483D102020004889E57417B84885C0740D5DBF10202000FFE00F1F445DC3660F1F44BE10202000554881EE102020004889E548C1FE034889F048C1E83F4801C648D1FE7415B84885C0740B5DBF10202000FFE00F1F005DC3660F1F44803D592F007517554889E5E87EFFC605472F015DC30F1F44F3C30F1F4000662E0F1F8400554889E55DEB89CC554889E5B801005DC3CC554889E54883EC10C745FCE8DCFF4883C4105DC3415741564189FF415541544C8D25E61E55488D2DE61E534989F64989D54C29E54883EC0848C1FD03E843004885ED742031DB0F1F84004C89EA4C89F64489FF41FF14DC4883C3014839EB75EA4883C4085B5D415C415D415E415FC390662E0F1F8400F3C3
+  - Name:.debug_str_offsets
+Type:SHT_PROGBITS
+AddressAlign:0x0001
+Content: 250004002B003900620027003400
+  - Name:.debug_str
+Type:SHT_PROGBITS
+Flags:   [ SHF_MERGE, SHF_STRINGS ]
+AddressAlign:0x0001
+Content: 696E7400636C616E672076657273696F6E20382E302E3020287472756E6B2033343430333529007A656400746573742E637070006D61696E002F686F6D652F756D622F74657374735F323031382F3130375F726E676C6973747374617274656E64005F5A337A65647600
+  - Name:.debug_abbrev
+Type:SHT_PROGBITS
+AddressAlign:0x0001
+Content: 011101252513050325721710171B25110155177417022E001101120640186E2503253A0B3B0B49133F19032E0011011206401803253A0B3B0B49133F1904240003253E0B0B0B00
+  - Name:.debug_info
+Type:SHT_PROGBITS
+Addre

Re: [Lldb-commits] [PATCH] D53175: [dotest] Make a missing FileCheck binary a warning, not an error

2018-10-12 Thread Stella Stamenova via lldb-commits
Those changes look reasonable, but I don't know how to test it either. I would 
be in favor of checking it in because the buildbots are currently broken and 
this can't make it worse, right?

-Original Message-
From: v...@apple.com  
Sent: Thursday, October 11, 2018 3:56 PM
To: Stella Stamenova 
Cc: Zachary Turner ; lldb-commits@lists.llvm.org; 
reviews+d53175+public+09519a8f992e0...@reviews.llvm.org
Subject: Re: [PATCH] D53175: [dotest] Make a missing FileCheck binary a 
warning, not an error

Does this look reasonable to you? I'm not sure how to test this.

diff --git a/zorg/buildbot/builders/LLDBBuilder.py 
b/zorg/buildbot/builders/LLDBBuilder.py
index 5a1b2e87..62152924 100644
--- a/zorg/buildbot/builders/LLDBBuilder.py
+++ b/zorg/buildbot/builders/LLDBBuilder.py
@@ -270,6 +270,7 @@ def getLLDBTestSteps(f,
 compilerPath = compiler
 for arch in test_archs:
 DOTEST_OPTS=''.join(['--executable ' + bindir + '/lldb ',
+ '--filecheck ' + bindir + '/FileCheck 
+ ',
  '-A %s ' % arch,
  '-C %s ' % compilerPath,
  '-s lldb-test-traces-%s-%s ' % (compiler, 
arch), @@ -819,6 +820,7 @@ def getLLDBxcodebuildFactory(use_cc=None,
   workdir=lldb_srcdir))
 DOTEST_OPTS = ' '.join(['--executable',
 '%(lldb_bindir)s/lldb',
+'%(lldb_bindir)s/FileCheck',
 '--framework', '%(lldb_bindir)s/LLDB.framework',
 '-A', 'x86_64',
 '-C', 'clang',

vedant

> On Oct 11, 2018, at 3:46 PM, Stella Stamenova via Phabricator 
>  wrote:
> 
> stella.stamenova added a comment.
> 
> The failing bots are not windows bots but Linux bots. It looks like you only 
> updated the configurations for xcode.
> 
> I think the file that needs to be updated is:
> 
> zorg\buildbot\builders\LLDBBuilder.py
> 
> 
> https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Frevie
> ws.llvm.org%2FD53175&data=02%7C01%7CSTILIS%40microsoft.com%7Cb8693
> c9edfa5449d97db08d62fccaacd%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0
> %7C636748953431151967&sdata=rdn7nntFECouzbw%2FPoQISVCGGrjLCqAygk8q
> l0St%2B5o%3D&reserved=0
> 
> 
> 

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


[Lldb-commits] [PATCH] D53175: [dotest] Make a missing FileCheck binary a warning, not an error

2018-10-12 Thread Stella Stamenova via Phabricator via lldb-commits
stella.stamenova added a comment.

@jasonmolenda That's not a bad idea. If you have a change ready, you could send 
it for review ;)


https://reviews.llvm.org/D53175



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


[Lldb-commits] [PATCH] D53175: [dotest] Make a missing FileCheck binary a warning, not an error

2018-10-12 Thread Stella Stamenova via Phabricator via lldb-commits
stella.stamenova requested changes to this revision.
stella.stamenova added a comment.
This revision now requires changes to proceed.

@vsk Could you also make the filecheck function explicitly fail when it doesn't 
have a path to the binary? That way it will be fairly obvious what the problem 
is and the error combined with the warning should be clear enough.


https://reviews.llvm.org/D53175



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


[Lldb-commits] [lldb] r344371 - Adding support to step into the callable wrapped by libc++ std::function

2018-10-12 Thread Shafik Yaghmour via lldb-commits
Author: shafik
Date: Fri Oct 12 10:20:39 2018
New Revision: 344371

URL: http://llvm.org/viewvc/llvm-project?rev=344371&view=rev
Log:
Adding support to step into the callable wrapped by libc++ std::function

rdar://problem/14365983

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

Added:

lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/std-function-step-into-callable/

lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/std-function-step-into-callable/Makefile

lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/std-function-step-into-callable/TestStdFunctionStepIntoCallable.py

lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/std-function-step-into-callable/main.cpp
Modified:
lldb/trunk/include/lldb/Target/CPPLanguageRuntime.h
lldb/trunk/source/Target/CPPLanguageRuntime.cpp
lldb/trunk/source/Target/ThreadPlanStepThrough.cpp

Modified: lldb/trunk/include/lldb/Target/CPPLanguageRuntime.h
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Target/CPPLanguageRuntime.h?rev=344371&r1=344370&r2=344371&view=diff
==
--- lldb/trunk/include/lldb/Target/CPPLanguageRuntime.h (original)
+++ lldb/trunk/include/lldb/Target/CPPLanguageRuntime.h Fri Oct 12 10:20:39 2018
@@ -56,6 +56,19 @@ public:
   bool GetObjectDescription(Stream &str, Value &value,
 ExecutionContextScope *exe_scope) override;
 
+  /// Obtain a ThreadPlan to get us into C++ constructs such as std::function.
+  ///
+  /// @param[in] thread
+  /// Curent thrad of execution.
+  ///
+  /// @param[in] stop_others
+  /// True if other threads should pause during execution.
+  ///
+  /// @return
+  ///  A ThreadPlan Shared pointer
+  lldb::ThreadPlanSP GetStepThroughTrampolinePlan(Thread &thread,
+  bool stop_others);
+
 protected:
   //--
   // Classes that inherit from CPPLanguageRuntime can see and modify these

Added: 
lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/std-function-step-into-callable/Makefile
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/std-function-step-into-callable/Makefile?rev=344371&view=auto
==
--- 
lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/std-function-step-into-callable/Makefile
 (added)
+++ 
lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/std-function-step-into-callable/Makefile
 Fri Oct 12 10:20:39 2018
@@ -0,0 +1,7 @@
+LEVEL = ../../../make
+
+CXX_SOURCES := main.cpp
+CXXFLAGS += -std=c++11
+USE_LIBCPP := 1
+
+include $(LEVEL)/Makefile.rules

Added: 
lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/std-function-step-into-callable/TestStdFunctionStepIntoCallable.py
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/std-function-step-into-callable/TestStdFunctionStepIntoCallable.py?rev=344371&view=auto
==
--- 
lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/std-function-step-into-callable/TestStdFunctionStepIntoCallable.py
 (added)
+++ 
lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/std-function-step-into-callable/TestStdFunctionStepIntoCallable.py
 Fri Oct 12 10:20:39 2018
@@ -0,0 +1,71 @@
+"""
+Test stepping into std::function
+"""
+
+from __future__ import print_function
+
+
+import lldb
+import sys
+from lldbsuite.test.decorators import *
+from lldbsuite.test.lldbtest import *
+from lldbsuite.test import lldbutil
+
+
+class LibCxxFunctionTestCase(TestBase):
+
+mydir = TestBase.compute_mydir(__file__)
+
+NO_DEBUG_INFO_TESTCASE = True
+
+@add_test_categories(["libc++"])
+def test(self):
+"""Test that std::function as defined by libc++ is correctly printed 
by LLDB"""
+self.build()
+
+self.main_source = "main.cpp"
+self.main_source_spec = lldb.SBFileSpec(self.main_source)
+self.source_foo_line = line_number(
+self.main_source, '// Source foo start line')
+self.source_lambda_f2_line = line_number(
+self.main_source, '// Source lambda used by f2 start line')
+self.source_lambda_f3_line = line_number(
+self.main_source, '// Source lambda used by f3 start line')
+self.source_bar_operator_line = line_number(
+self.main_source, '// Source Bar::operator()() start line')
+self.source_bar_add_num_line = line_number(
+self.main_source, '// Source Bar::add_num start line')
+self.source_main_invoking_f1 = line_number(
+self.main_source, '// Source main invoking f1')
+
+(target, process, thread, bkpt) = lldbutil.run_to_source_breakpoint(
+self, "// Set break point at this line.", self.main_source_spec)
+
+thread.StepIn

[Lldb-commits] [PATCH] D52851: Adding support to step into the callable wrapped by libc++ std::function

2018-10-12 Thread Shafik Yaghmour via Phabricator via lldb-commits
This revision was automatically updated to reflect the committed changes.
Closed by commit rL344371: Adding support to step into the callable wrapped by 
libc++ std::function (authored by shafik, committed by ).
Herald added a subscriber: llvm-commits.

Changed prior to commit:
  https://reviews.llvm.org/D52851?vs=169259&id=169453#toc

Repository:
  rL LLVM

https://reviews.llvm.org/D52851

Files:
  lldb/trunk/include/lldb/Target/CPPLanguageRuntime.h
  
lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/std-function-step-into-callable/Makefile
  
lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/std-function-step-into-callable/TestStdFunctionStepIntoCallable.py
  
lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/std-function-step-into-callable/main.cpp
  lldb/trunk/source/Target/CPPLanguageRuntime.cpp
  lldb/trunk/source/Target/ThreadPlanStepThrough.cpp

Index: lldb/trunk/source/Target/CPPLanguageRuntime.cpp
===
--- lldb/trunk/source/Target/CPPLanguageRuntime.cpp
+++ lldb/trunk/source/Target/CPPLanguageRuntime.cpp
@@ -26,6 +26,7 @@
 #include "lldb/Target/SectionLoadList.h"
 #include "lldb/Target/StackFrame.h"
 #include "lldb/Target/ThreadPlanRunToAddress.h"
+#include "lldb/Target/ThreadPlanStepInRange.h"
 
 using namespace lldb;
 using namespace lldb_private;
@@ -158,7 +159,6 @@
   // We do this by find the first < and , and extracting in between.
   //
   // This covers the case of the lambda known at compile time.
-  //
   size_t first_open_angle_bracket = vtable_name.find('<') + 1;
   size_t first_comma = vtable_name.find_first_of(',');
 
@@ -262,3 +262,76 @@
 
   return optional_info;
 }
+
+lldb::ThreadPlanSP
+CPPLanguageRuntime::GetStepThroughTrampolinePlan(Thread &thread,
+ bool stop_others) {
+  ThreadPlanSP ret_plan_sp;
+
+  lldb::addr_t curr_pc = thread.GetRegisterContext()->GetPC();
+
+  TargetSP target_sp(thread.CalculateTarget());
+
+  if (target_sp->GetSectionLoadList().IsEmpty())
+return ret_plan_sp;
+
+  Address pc_addr_resolved;
+  SymbolContext sc;
+  Symbol *symbol;
+
+  if (!target_sp->GetSectionLoadList().ResolveLoadAddress(curr_pc,
+  pc_addr_resolved))
+return ret_plan_sp;
+
+  target_sp->GetImages().ResolveSymbolContextForAddress(
+  pc_addr_resolved, eSymbolContextEverything, sc);
+  symbol = sc.symbol;
+
+  if (symbol == nullptr)
+return ret_plan_sp;
+
+  llvm::StringRef function_name(symbol->GetName().GetCString());
+
+  // Handling the case where we are attempting to step into std::function.
+  // The behavior will be that we will attempt to obtain the wrapped
+  // callable via FindLibCppStdFunctionCallableInfo() and if we find it we
+  // will return a ThreadPlanRunToAddress to the callable. Therefore we will
+  // step into the wrapped callable.
+  //
+  bool found_expected_start_string =
+  function_name.startswith("std::__1::function<");
+
+  if (!found_expected_start_string)
+return ret_plan_sp;
+
+  AddressRange range_of_curr_func;
+  sc.GetAddressRange(eSymbolContextEverything, 0, false, range_of_curr_func);
+
+  StackFrameSP frame = thread.GetStackFrameAtIndex(0);
+
+  if (frame) {
+ValueObjectSP value_sp = frame->FindVariable(ConstString("this"));
+
+CPPLanguageRuntime::LibCppStdFunctionCallableInfo callable_info =
+FindLibCppStdFunctionCallableInfo(value_sp);
+
+if (callable_info.callable_case != LibCppStdFunctionCallableCase::Invalid &&
+value_sp->GetValueIsValid()) {
+  // We found the std::function wrapped callable and we have its address.
+  // We now create a ThreadPlan to run to the callable.
+  ret_plan_sp.reset(new ThreadPlanRunToAddress(
+  thread, callable_info.callable_address, stop_others));
+  return ret_plan_sp;
+} else {
+  // We are in std::function but we could not obtain the callable.
+  // We create a ThreadPlan to keep stepping through using the address range
+  // of the current function.
+  ret_plan_sp.reset(new ThreadPlanStepInRange(thread, range_of_curr_func,
+  sc, eOnlyThisThread,
+  eLazyBoolYes, eLazyBoolYes));
+  return ret_plan_sp;
+}
+  }
+
+  return ret_plan_sp;
+}
Index: lldb/trunk/source/Target/ThreadPlanStepThrough.cpp
===
--- lldb/trunk/source/Target/ThreadPlanStepThrough.cpp
+++ lldb/trunk/source/Target/ThreadPlanStepThrough.cpp
@@ -13,6 +13,7 @@
 // Project includes
 #include "lldb/Target/ThreadPlanStepThrough.h"
 #include "lldb/Breakpoint/Breakpoint.h"
+#include "lldb/Target/CPPLanguageRuntime.h"
 #include "lldb/Target/DynamicLoader.h"
 #include "lldb/Target/ObjCLanguageRuntime.h"
 #include "lldb/Target/Process.h"
@@ -95,6 +96,15 @@
 if (objc_runtime)
   m_sub_plan_sp =
   objc_runtime->G

[Lldb-commits] [PATCH] D49271: Adding libc++ formattors for std::optional

2018-10-12 Thread Stella Stamenova via Phabricator via lldb-commits
stella.stamenova added a comment.

I see this test failing on Linux right now (bots are down, so I can't confirm 
that the official bots fail as well). The failure is because of the last 
decorator which was not part of the review:

  @skipIf(macos_version=["<", "10.14"])

It looks like this only works correctly when mac_ver returns a meaningful 
result (a.k.a. on mac platforms), so linux is broken.

Another thing that I noticed is that the name of the test class 
(LibcxxOptionalDataFormatterTestCase) was re-used from another test. This has 
caused problems in the past with test overriding each other's results because 
they share the same class and test name (as these do).


https://reviews.llvm.org/D49271



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


[Lldb-commits] [PATCH] D53166: [lldbsuite] Fix the filecheck functionality to work with Python 3

2018-10-12 Thread Stella Stamenova via Phabricator via lldb-commits
stella.stamenova updated this revision to Diff 169459.
stella.stamenova edited the summary of this revision.
stella.stamenova added a comment.

Force the comparison in filecheck to use text rather than bytes


Repository:
  rLLDB LLDB

https://reviews.llvm.org/D53166

Files:
  packages/Python/lldbsuite/test/lldbtest.py


Index: packages/Python/lldbsuite/test/lldbtest.py
===
--- packages/Python/lldbsuite/test/lldbtest.py
+++ packages/Python/lldbsuite/test/lldbtest.py
@@ -2240,7 +2240,7 @@
 filecheck_args = [filecheck_bin, check_file_abs]
 if filecheck_options:
 filecheck_args.append(filecheck_options)
-subproc = Popen(filecheck_args, stdin=PIPE, stdout=PIPE, stderr=PIPE)
+subproc = Popen(filecheck_args, stdin=PIPE, stdout=PIPE, stderr=PIPE, 
universal_newlines = True)
 cmd_stdout, cmd_stderr = subproc.communicate(input=output)
 cmd_status = subproc.returncode
 


Index: packages/Python/lldbsuite/test/lldbtest.py
===
--- packages/Python/lldbsuite/test/lldbtest.py
+++ packages/Python/lldbsuite/test/lldbtest.py
@@ -2240,7 +2240,7 @@
 filecheck_args = [filecheck_bin, check_file_abs]
 if filecheck_options:
 filecheck_args.append(filecheck_options)
-subproc = Popen(filecheck_args, stdin=PIPE, stdout=PIPE, stderr=PIPE)
+subproc = Popen(filecheck_args, stdin=PIPE, stdout=PIPE, stderr=PIPE, universal_newlines = True)
 cmd_stdout, cmd_stderr = subproc.communicate(input=output)
 cmd_status = subproc.returncode
 
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D53166: [lldbsuite] Fix the filecheck functionality to work with Python 3

2018-10-12 Thread Stella Stamenova via Phabricator via lldb-commits
stella.stamenova added inline comments.



Comment at: packages/Python/lldbsuite/test/lldbtest.py:2247-2249
 subproc = Popen(filecheck_args, stdin=PIPE, stdout=PIPE, stderr=PIPE)
 cmd_stdout, cmd_stderr = subproc.communicate(input=output)
 cmd_status = subproc.returncode

zturner wrote:
> If I'm not mistaken, Python 3 can accept `stdin` as `bytes` or `string`, and 
> either will work, it depends on the value of `universal_newlines`, and 
> `stdout` will be in whatever format `stdin` was in.  If we pass 
> `universal_newlines=True`, then it will expect a `string` and output a 
> `string`, otherwise it expects a `bytes` and output a `bytes`.  Given that 
> `FileCheck` is supposed to operate on textual data and not binary data, 
> perhaps we should be doing that here?
Brilliant! :)


Repository:
  rLLDB LLDB

https://reviews.llvm.org/D53166



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


[Lldb-commits] [PATCH] D53208: [lldbsuite] Fix the mac version decorator to work on non-mac platforms

2018-10-12 Thread Stella Stamenova via Phabricator via lldb-commits
stella.stamenova created this revision.
stella.stamenova added reviewers: labath, davide, asmith, shafik.
Herald added a subscriber: lldb-commits.

On non-mac platforms, mac_ver returns an empty string which when converted to 
LooseVersion has no "version" property. This causes a failure when the 
decorator executes. Instead, check whether the value returned from mac_ver is 
an empty string and avoid the LooseVersion comparison.


Repository:
  rLLDB LLDB

https://reviews.llvm.org/D53208

Files:
  packages/Python/lldbsuite/test/decorators.py


Index: packages/Python/lldbsuite/test/decorators.py
===
--- packages/Python/lldbsuite/test/decorators.py
+++ packages/Python/lldbsuite/test/decorators.py
@@ -191,7 +191,7 @@
 skip_for_py_version = (
 py_version is None) or _check_expected_version(
 py_version[0], py_version[1], sys.version_info)
-skip_for_macos_version = (macos_version is None) or (
+skip_for_macos_version = (macos_version is None) or 
(platform.mac_ver()[0] == "") or (
 _check_expected_version(
 macos_version[0],
 macos_version[1],


Index: packages/Python/lldbsuite/test/decorators.py
===
--- packages/Python/lldbsuite/test/decorators.py
+++ packages/Python/lldbsuite/test/decorators.py
@@ -191,7 +191,7 @@
 skip_for_py_version = (
 py_version is None) or _check_expected_version(
 py_version[0], py_version[1], sys.version_info)
-skip_for_macos_version = (macos_version is None) or (
+skip_for_macos_version = (macos_version is None) or (platform.mac_ver()[0] == "") or (
 _check_expected_version(
 macos_version[0],
 macos_version[1],
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D53166: [lldbsuite] Fix the filecheck functionality to work with Python 3

2018-10-12 Thread Stella Stamenova via Phabricator via lldb-commits
This revision was automatically updated to reflect the committed changes.
Closed by commit rLLDB344386: [lldbsuite] Fix the filecheck functionality to 
work with Python 3 (authored by stella.stamenova, committed by ).

Repository:
  rLLDB LLDB

https://reviews.llvm.org/D53166

Files:
  packages/Python/lldbsuite/test/lldbtest.py


Index: packages/Python/lldbsuite/test/lldbtest.py
===
--- packages/Python/lldbsuite/test/lldbtest.py
+++ packages/Python/lldbsuite/test/lldbtest.py
@@ -2240,7 +2240,7 @@
 filecheck_args = [filecheck_bin, check_file_abs]
 if filecheck_options:
 filecheck_args.append(filecheck_options)
-subproc = Popen(filecheck_args, stdin=PIPE, stdout=PIPE, stderr=PIPE)
+subproc = Popen(filecheck_args, stdin=PIPE, stdout=PIPE, stderr=PIPE, 
universal_newlines = True)
 cmd_stdout, cmd_stderr = subproc.communicate(input=output)
 cmd_status = subproc.returncode
 


Index: packages/Python/lldbsuite/test/lldbtest.py
===
--- packages/Python/lldbsuite/test/lldbtest.py
+++ packages/Python/lldbsuite/test/lldbtest.py
@@ -2240,7 +2240,7 @@
 filecheck_args = [filecheck_bin, check_file_abs]
 if filecheck_options:
 filecheck_args.append(filecheck_options)
-subproc = Popen(filecheck_args, stdin=PIPE, stdout=PIPE, stderr=PIPE)
+subproc = Popen(filecheck_args, stdin=PIPE, stdout=PIPE, stderr=PIPE, universal_newlines = True)
 cmd_stdout, cmd_stderr = subproc.communicate(input=output)
 cmd_status = subproc.returncode
 
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] r344386 - [lldbsuite] Fix the filecheck functionality to work with Python 3

2018-10-12 Thread Stella Stamenova via lldb-commits
Author: stella.stamenova
Date: Fri Oct 12 10:56:01 2018
New Revision: 344386

URL: http://llvm.org/viewvc/llvm-project?rev=344386&view=rev
Log:
[lldbsuite] Fix the filecheck functionality to work with Python 3

Summary: This is another string/byte conversion issue between Python 2 and 3. 
In Python 2, the subprocess communication expects a byte string, but in Python 
3, it expects bytes. Since both versions are capable of using strings when 
universal_newlines is set to True AND filecheck operates on strings, force the 
use of strings.

Reviewers: zturner, asmith, vsk

Reviewed By: zturner

Subscribers: lldb-commits

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

Modified:
lldb/trunk/packages/Python/lldbsuite/test/lldbtest.py

Modified: lldb/trunk/packages/Python/lldbsuite/test/lldbtest.py
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/lldbtest.py?rev=344386&r1=344385&r2=344386&view=diff
==
--- lldb/trunk/packages/Python/lldbsuite/test/lldbtest.py (original)
+++ lldb/trunk/packages/Python/lldbsuite/test/lldbtest.py Fri Oct 12 10:56:01 
2018
@@ -2240,7 +2240,7 @@ class TestBase(Base):
 filecheck_args = [filecheck_bin, check_file_abs]
 if filecheck_options:
 filecheck_args.append(filecheck_options)
-subproc = Popen(filecheck_args, stdin=PIPE, stdout=PIPE, stderr=PIPE)
+subproc = Popen(filecheck_args, stdin=PIPE, stdout=PIPE, stderr=PIPE, 
universal_newlines = True)
 cmd_stdout, cmd_stderr = subproc.communicate(input=output)
 cmd_status = subproc.returncode
 


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


[Lldb-commits] [PATCH] D52851: Adding support to step into the callable wrapped by libc++ std::function

2018-10-12 Thread Stella Stamenova via Phabricator via lldb-commits
stella.stamenova added a comment.

This change has the same problem as https://reviews.llvm.org/D49271 - the class 
name LibCxxFunctionTestCase is re-used from another test case. This will cause 
issues when the tests report results and create logs. Please use unique names 
for each class and test.


Repository:
  rL LLVM

https://reviews.llvm.org/D52851



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


Re: [Lldb-commits] [PATCH] D53175: [dotest] Make a missing FileCheck binary a warning, not an error

2018-10-12 Thread Vedant Kumar via lldb-commits
All right, Committed r344396, I’ll keep an eye out for failures.

vedant

> On Oct 12, 2018, at 9:58 AM, Stella Stamenova  wrote:
> 
> Those changes look reasonable, but I don't know how to test it either. I 
> would be in favor of checking it in because the buildbots are currently 
> broken and this can't make it worse, right?
> 
> -Original Message-
> From: v...@apple.com   > 
> Sent: Thursday, October 11, 2018 3:56 PM
> To: Stella Stamenova mailto:sti...@microsoft.com>>
> Cc: Zachary Turner mailto:ztur...@google.com>>; 
> lldb-commits@lists.llvm.org ; 
> reviews+d53175+public+09519a8f992e0...@reviews.llvm.org 
> 
> Subject: Re: [PATCH] D53175: [dotest] Make a missing FileCheck binary a 
> warning, not an error
> 
> Does this look reasonable to you? I'm not sure how to test this.
> 
> diff --git a/zorg/buildbot/builders/LLDBBuilder.py 
> b/zorg/buildbot/builders/LLDBBuilder.py
> index 5a1b2e87..62152924 100644
> --- a/zorg/buildbot/builders/LLDBBuilder.py
> +++ b/zorg/buildbot/builders/LLDBBuilder.py
> @@ -270,6 +270,7 @@ def getLLDBTestSteps(f,
> compilerPath = compiler
> for arch in test_archs:
> DOTEST_OPTS=''.join(['--executable ' + bindir + '/lldb ',
> + '--filecheck ' + bindir + '/FileCheck 
> + ',
>  '-A %s ' % arch,
>  '-C %s ' % compilerPath,
>  '-s lldb-test-traces-%s-%s ' % (compiler, 
> arch), @@ -819,6 +820,7 @@ def getLLDBxcodebuildFactory(use_cc=None,
>   workdir=lldb_srcdir))
> DOTEST_OPTS = ' '.join(['--executable',
> '%(lldb_bindir)s/lldb',
> +'%(lldb_bindir)s/FileCheck',
> '--framework', '%(lldb_bindir)s/LLDB.framework',
> '-A', 'x86_64',
> '-C', 'clang',
> 
> vedant
> 
>> On Oct 11, 2018, at 3:46 PM, Stella Stamenova via Phabricator 
>>  wrote:
>> 
>> stella.stamenova added a comment.
>> 
>> The failing bots are not windows bots but Linux bots. It looks like you only 
>> updated the configurations for xcode.
>> 
>> I think the file that needs to be updated is:
>> 
>> zorg\buildbot\builders\LLDBBuilder.py
>> 
>> 
>> https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Frevie 
>> 
>> ws.llvm.org 
>> %2FD53175&data=02%7C01%7CSTILIS%40microsoft.com 
>> %7Cb8693
>> c9edfa5449d97db08d62fccaacd%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0
>> %7C636748953431151967&sdata=rdn7nntFECouzbw%2FPoQISVCGGrjLCqAygk8q
>> l0St%2B5o%3D&reserved=0

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


[Lldb-commits] [lldb] r344397 - Add "v" as well as "var" as an alias for "frame var".

2018-10-12 Thread Jim Ingham via lldb-commits
Author: jingham
Date: Fri Oct 12 11:46:02 2018
New Revision: 344397

URL: http://llvm.org/viewvc/llvm-project?rev=344397&view=rev
Log:
Add "v" as well as "var" as an alias for "frame var".



Modified:
lldb/trunk/source/Interpreter/CommandInterpreter.cpp

Modified: lldb/trunk/source/Interpreter/CommandInterpreter.cpp
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Interpreter/CommandInterpreter.cpp?rev=344397&r1=344396&r2=344397&view=diff
==
--- lldb/trunk/source/Interpreter/CommandInterpreter.cpp (original)
+++ lldb/trunk/source/Interpreter/CommandInterpreter.cpp Fri Oct 12 11:46:02 
2018
@@ -426,6 +426,7 @@ void CommandInterpreter::Initialize() {
 
   cmd_obj_sp = GetCommandSPExact("frame variable", false);
   if (cmd_obj_sp) {
+AddAlias("v", cmd_obj_sp);
 AddAlias("var", cmd_obj_sp);
 AddAlias("vo", cmd_obj_sp, "--object-description");
   }


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


[Lldb-commits] [PATCH] D53175: [dotest] Make a missing FileCheck binary a warning, not an error

2018-10-12 Thread Vedant Kumar via Phabricator via lldb-commits
vsk updated this revision to Diff 169471.
vsk added a comment.

- Address comments from @stella.stamenova


https://reviews.llvm.org/D53175

Files:
  lldb/packages/Python/lldbsuite/test/configuration.py
  lldb/packages/Python/lldbsuite/test/dotest.py
  lldb/packages/Python/lldbsuite/test/lldbtest.py


Index: lldb/packages/Python/lldbsuite/test/lldbtest.py
===
--- lldb/packages/Python/lldbsuite/test/lldbtest.py
+++ lldb/packages/Python/lldbsuite/test/lldbtest.py
@@ -2237,6 +2237,8 @@
 
 # Run FileCheck.
 filecheck_bin = configuration.get_filecheck_path()
+if not filecheck_bin:
+self.assertTrue(False, "No valid FileCheck executable specified")
 filecheck_args = [filecheck_bin, check_file_abs]
 if filecheck_options:
 filecheck_args.append(filecheck_options)
Index: lldb/packages/Python/lldbsuite/test/dotest.py
===
--- lldb/packages/Python/lldbsuite/test/dotest.py
+++ lldb/packages/Python/lldbsuite/test/dotest.py
@@ -308,11 +308,15 @@
   'xcrun -find -toolchain default dsymutil')
 
 if args.filecheck:
-# The CMake build passes in a path to a working FileCheck binary.
+# The lldb-dotest script produced by the CMake build passes in a path
+# to a working FileCheck binary. So does one specific Xcode project
+# target. However, when invoking dotest.py directly, a valid 
--filecheck
+# option needs to be given.
 configuration.filecheck = os.path.abspath(args.filecheck)
-else:
-logging.error('No valid FileCheck executable; aborting...')
-sys.exit(-1)
+
+if not configuration.get_filecheck_path():
+logging.warning('No valid FileCheck executable; some tests may 
fail...')
+logging.warning('(Double-check the --filecheck argument to dotest.py)')
 
 if args.channels:
 lldbtest_config.channels = args.channels
Index: lldb/packages/Python/lldbsuite/test/configuration.py
===
--- lldb/packages/Python/lldbsuite/test/configuration.py
+++ lldb/packages/Python/lldbsuite/test/configuration.py
@@ -188,5 +188,5 @@
 """
 Get the path to the FileCheck testing tool.
 """
-assert os.path.lexists(filecheck)
-return filecheck
+if os.path.lexists(filecheck):
+return filecheck


Index: lldb/packages/Python/lldbsuite/test/lldbtest.py
===
--- lldb/packages/Python/lldbsuite/test/lldbtest.py
+++ lldb/packages/Python/lldbsuite/test/lldbtest.py
@@ -2237,6 +2237,8 @@
 
 # Run FileCheck.
 filecheck_bin = configuration.get_filecheck_path()
+if not filecheck_bin:
+self.assertTrue(False, "No valid FileCheck executable specified")
 filecheck_args = [filecheck_bin, check_file_abs]
 if filecheck_options:
 filecheck_args.append(filecheck_options)
Index: lldb/packages/Python/lldbsuite/test/dotest.py
===
--- lldb/packages/Python/lldbsuite/test/dotest.py
+++ lldb/packages/Python/lldbsuite/test/dotest.py
@@ -308,11 +308,15 @@
   'xcrun -find -toolchain default dsymutil')
 
 if args.filecheck:
-# The CMake build passes in a path to a working FileCheck binary.
+# The lldb-dotest script produced by the CMake build passes in a path
+# to a working FileCheck binary. So does one specific Xcode project
+# target. However, when invoking dotest.py directly, a valid --filecheck
+# option needs to be given.
 configuration.filecheck = os.path.abspath(args.filecheck)
-else:
-logging.error('No valid FileCheck executable; aborting...')
-sys.exit(-1)
+
+if not configuration.get_filecheck_path():
+logging.warning('No valid FileCheck executable; some tests may fail...')
+logging.warning('(Double-check the --filecheck argument to dotest.py)')
 
 if args.channels:
 lldbtest_config.channels = args.channels
Index: lldb/packages/Python/lldbsuite/test/configuration.py
===
--- lldb/packages/Python/lldbsuite/test/configuration.py
+++ lldb/packages/Python/lldbsuite/test/configuration.py
@@ -188,5 +188,5 @@
 """
 Get the path to the FileCheck testing tool.
 """
-assert os.path.lexists(filecheck)
-return filecheck
+if os.path.lexists(filecheck):
+return filecheck
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D53175: [dotest] Make a missing FileCheck binary a warning, not an error

2018-10-12 Thread Stella Stamenova via Phabricator via lldb-commits
stella.stamenova accepted this revision.
stella.stamenova added a comment.
This revision is now accepted and ready to land.

Thanks!


https://reviews.llvm.org/D53175



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


[Lldb-commits] [lldb] r344401 - [dotest] Make a missing FileCheck binary a warning, not an error

2018-10-12 Thread Vedant Kumar via lldb-commits
Author: vedantk
Date: Fri Oct 12 12:29:59 2018
New Revision: 344401

URL: http://llvm.org/viewvc/llvm-project?rev=344401&view=rev
Log:
[dotest] Make a missing FileCheck binary a warning, not an error

This allows bots which haven't updated to pass in --filecheck to
dotest.py to run more tests. FileCheck-dependent tests will continue to
fail.

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

Modified:
lldb/trunk/packages/Python/lldbsuite/test/configuration.py
lldb/trunk/packages/Python/lldbsuite/test/dotest.py
lldb/trunk/packages/Python/lldbsuite/test/lldbtest.py

Modified: lldb/trunk/packages/Python/lldbsuite/test/configuration.py
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/configuration.py?rev=344401&r1=344400&r2=344401&view=diff
==
--- lldb/trunk/packages/Python/lldbsuite/test/configuration.py (original)
+++ lldb/trunk/packages/Python/lldbsuite/test/configuration.py Fri Oct 12 
12:29:59 2018
@@ -188,5 +188,5 @@ def get_filecheck_path():
 """
 Get the path to the FileCheck testing tool.
 """
-assert os.path.lexists(filecheck)
-return filecheck
+if os.path.lexists(filecheck):
+return filecheck

Modified: lldb/trunk/packages/Python/lldbsuite/test/dotest.py
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/dotest.py?rev=344401&r1=344400&r2=344401&view=diff
==
--- lldb/trunk/packages/Python/lldbsuite/test/dotest.py (original)
+++ lldb/trunk/packages/Python/lldbsuite/test/dotest.py Fri Oct 12 12:29:59 2018
@@ -308,11 +308,15 @@ def parseOptionsAndInitTestdirs():
   'xcrun -find -toolchain default dsymutil')
 
 if args.filecheck:
-# The CMake build passes in a path to a working FileCheck binary.
+# The lldb-dotest script produced by the CMake build passes in a path
+# to a working FileCheck binary. So does one specific Xcode project
+# target. However, when invoking dotest.py directly, a valid 
--filecheck
+# option needs to be given.
 configuration.filecheck = os.path.abspath(args.filecheck)
-else:
-logging.error('No valid FileCheck executable; aborting...')
-sys.exit(-1)
+
+if not configuration.get_filecheck_path():
+logging.warning('No valid FileCheck executable; some tests may 
fail...')
+logging.warning('(Double-check the --filecheck argument to dotest.py)')
 
 if args.channels:
 lldbtest_config.channels = args.channels

Modified: lldb/trunk/packages/Python/lldbsuite/test/lldbtest.py
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/lldbtest.py?rev=344401&r1=344400&r2=344401&view=diff
==
--- lldb/trunk/packages/Python/lldbsuite/test/lldbtest.py (original)
+++ lldb/trunk/packages/Python/lldbsuite/test/lldbtest.py Fri Oct 12 12:29:59 
2018
@@ -2237,6 +2237,8 @@ class TestBase(Base):
 
 # Run FileCheck.
 filecheck_bin = configuration.get_filecheck_path()
+if not filecheck_bin:
+self.assertTrue(False, "No valid FileCheck executable specified")
 filecheck_args = [filecheck_bin, check_file_abs]
 if filecheck_options:
 filecheck_args.append(filecheck_options)


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


[Lldb-commits] [PATCH] D53175: [dotest] Make a missing FileCheck binary a warning, not an error

2018-10-12 Thread Phabricator via Phabricator via lldb-commits
This revision was automatically updated to reflect the committed changes.
Closed by commit rL344401: [dotest] Make a missing FileCheck binary a warning, 
not an error (authored by vedantk, committed by ).
Herald added a subscriber: llvm-commits.

Changed prior to commit:
  https://reviews.llvm.org/D53175?vs=169471&id=169473#toc

Repository:
  rL LLVM

https://reviews.llvm.org/D53175

Files:
  lldb/trunk/packages/Python/lldbsuite/test/configuration.py
  lldb/trunk/packages/Python/lldbsuite/test/dotest.py
  lldb/trunk/packages/Python/lldbsuite/test/lldbtest.py


Index: lldb/trunk/packages/Python/lldbsuite/test/configuration.py
===
--- lldb/trunk/packages/Python/lldbsuite/test/configuration.py
+++ lldb/trunk/packages/Python/lldbsuite/test/configuration.py
@@ -188,5 +188,5 @@
 """
 Get the path to the FileCheck testing tool.
 """
-assert os.path.lexists(filecheck)
-return filecheck
+if os.path.lexists(filecheck):
+return filecheck
Index: lldb/trunk/packages/Python/lldbsuite/test/dotest.py
===
--- lldb/trunk/packages/Python/lldbsuite/test/dotest.py
+++ lldb/trunk/packages/Python/lldbsuite/test/dotest.py
@@ -308,11 +308,15 @@
   'xcrun -find -toolchain default dsymutil')
 
 if args.filecheck:
-# The CMake build passes in a path to a working FileCheck binary.
+# The lldb-dotest script produced by the CMake build passes in a path
+# to a working FileCheck binary. So does one specific Xcode project
+# target. However, when invoking dotest.py directly, a valid 
--filecheck
+# option needs to be given.
 configuration.filecheck = os.path.abspath(args.filecheck)
-else:
-logging.error('No valid FileCheck executable; aborting...')
-sys.exit(-1)
+
+if not configuration.get_filecheck_path():
+logging.warning('No valid FileCheck executable; some tests may 
fail...')
+logging.warning('(Double-check the --filecheck argument to dotest.py)')
 
 if args.channels:
 lldbtest_config.channels = args.channels
Index: lldb/trunk/packages/Python/lldbsuite/test/lldbtest.py
===
--- lldb/trunk/packages/Python/lldbsuite/test/lldbtest.py
+++ lldb/trunk/packages/Python/lldbsuite/test/lldbtest.py
@@ -2237,6 +2237,8 @@
 
 # Run FileCheck.
 filecheck_bin = configuration.get_filecheck_path()
+if not filecheck_bin:
+self.assertTrue(False, "No valid FileCheck executable specified")
 filecheck_args = [filecheck_bin, check_file_abs]
 if filecheck_options:
 filecheck_args.append(filecheck_options)


Index: lldb/trunk/packages/Python/lldbsuite/test/configuration.py
===
--- lldb/trunk/packages/Python/lldbsuite/test/configuration.py
+++ lldb/trunk/packages/Python/lldbsuite/test/configuration.py
@@ -188,5 +188,5 @@
 """
 Get the path to the FileCheck testing tool.
 """
-assert os.path.lexists(filecheck)
-return filecheck
+if os.path.lexists(filecheck):
+return filecheck
Index: lldb/trunk/packages/Python/lldbsuite/test/dotest.py
===
--- lldb/trunk/packages/Python/lldbsuite/test/dotest.py
+++ lldb/trunk/packages/Python/lldbsuite/test/dotest.py
@@ -308,11 +308,15 @@
   'xcrun -find -toolchain default dsymutil')
 
 if args.filecheck:
-# The CMake build passes in a path to a working FileCheck binary.
+# The lldb-dotest script produced by the CMake build passes in a path
+# to a working FileCheck binary. So does one specific Xcode project
+# target. However, when invoking dotest.py directly, a valid --filecheck
+# option needs to be given.
 configuration.filecheck = os.path.abspath(args.filecheck)
-else:
-logging.error('No valid FileCheck executable; aborting...')
-sys.exit(-1)
+
+if not configuration.get_filecheck_path():
+logging.warning('No valid FileCheck executable; some tests may fail...')
+logging.warning('(Double-check the --filecheck argument to dotest.py)')
 
 if args.channels:
 lldbtest_config.channels = args.channels
Index: lldb/trunk/packages/Python/lldbsuite/test/lldbtest.py
===
--- lldb/trunk/packages/Python/lldbsuite/test/lldbtest.py
+++ lldb/trunk/packages/Python/lldbsuite/test/lldbtest.py
@@ -2237,6 +2237,8 @@
 
 # Run FileCheck.
 filecheck_bin = configuration.get_filecheck_path()
+if not filecheck_bin:
+self.assertTrue(False, "No valid FileCheck executable specified")
 filecheck_args = [filecheck_bin, check_file_abs]
 if filecheck_options:
 filecheck_args.ap

Re: [Lldb-commits] [PATCH] D53175: [dotest] Make a missing FileCheck binary a warning, not an error

2018-10-12 Thread Stella Stamenova via lldb-commits
Thanks, I’ve been monitoring the bots also and it looks like they haven’t 
picked up the zorg change yet. I don’t know if that’s supposed to just happen 
or if there’s something that needs to be done or if there’s a schedule for when 
they update.

Thanks,
-Stella

From: v...@apple.com 
Sent: Friday, October 12, 2018 11:33 AM
To: Stella Stamenova 
Cc: Zachary Turner ; lldb-commits@lists.llvm.org; 
reviews+d53175+public+09519a8f992e0...@reviews.llvm.org
Subject: Re: [PATCH] D53175: [dotest] Make a missing FileCheck binary a 
warning, not an error

All right, Committed r344396, I’ll keep an eye out for failures.

vedant


On Oct 12, 2018, at 9:58 AM, Stella Stamenova 
mailto:sti...@microsoft.com>> wrote:

Those changes look reasonable, but I don't know how to test it either. I would 
be in favor of checking it in because the buildbots are currently broken and 
this can't make it worse, right?

-Original Message-
From: v...@apple.com 
mailto:v...@apple.com>>
Sent: Thursday, October 11, 2018 3:56 PM
To: Stella Stamenova mailto:sti...@microsoft.com>>
Cc: Zachary Turner mailto:ztur...@google.com>>; 
lldb-commits@lists.llvm.org; 
reviews+d53175+public+09519a8f992e0...@reviews.llvm.org
Subject: Re: [PATCH] D53175: [dotest] Make a missing FileCheck binary a 
warning, not an error

Does this look reasonable to you? I'm not sure how to test this.

diff --git a/zorg/buildbot/builders/LLDBBuilder.py 
b/zorg/buildbot/builders/LLDBBuilder.py
index 5a1b2e87..62152924 100644
--- a/zorg/buildbot/builders/LLDBBuilder.py
+++ b/zorg/buildbot/builders/LLDBBuilder.py
@@ -270,6 +270,7 @@ def getLLDBTestSteps(f,
compilerPath = compiler
for arch in test_archs:
DOTEST_OPTS=''.join(['--executable ' + bindir + '/lldb ',
+ '--filecheck ' + bindir + '/FileCheck
+ ',
 '-A %s ' % arch,
 '-C %s ' % compilerPath,
 '-s lldb-test-traces-%s-%s ' % (compiler, 
arch), @@ -819,6 +820,7 @@ def getLLDBxcodebuildFactory(use_cc=None,
  workdir=lldb_srcdir))
DOTEST_OPTS = ' '.join(['--executable',
'%(lldb_bindir)s/lldb',
+'%(lldb_bindir)s/FileCheck',
'--framework', '%(lldb_bindir)s/LLDB.framework',
'-A', 'x86_64',
'-C', 'clang',

vedant


On Oct 11, 2018, at 3:46 PM, Stella Stamenova via Phabricator 
mailto:revi...@reviews.llvm.org>> wrote:

stella.stamenova added a comment.

The failing bots are not windows bots but Linux bots. It looks like you only 
updated the configurations for xcode.

I think the file that needs to be updated is:

zorg\buildbot\builders\LLDBBuilder.py


https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Frevie
ws.llvm.org%2FD53175&data=02%7C01%7CSTILIS%40microsoft.com%7Cb8693
c9edfa5449d97db08d62fccaacd%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0
%7C636748953431151967&sdata=rdn7nntFECouzbw%2FPoQISVCGGrjLCqAygk8q
l0St%2B5o%3D&reserved=0

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


Re: [Lldb-commits] [PATCH] D53175: [dotest] Make a missing FileCheck binary a warning, not an error

2018-10-12 Thread Vedant Kumar via lldb-commits
Ah gotcha. For the public Darwin bots, we needed to specifically trigger a 
Jenkins job to distribute Zorg updates to all our builders. This can be a bit 
of a manual process, because you need to kill the jobs on the builders’ queues 
to make sure they run the Zorg_Distribute job asap.

I’m not sure whether the Linux CI has a similar mechanism.

vedant

> On Oct 12, 2018, at 12:31 PM, Stella Stamenova  wrote:
> 
> Thanks, I’ve been monitoring the bots also and it looks like they haven’t 
> picked up the zorg change yet. I don’t know if that’s supposed to just happen 
> or if there’s something that needs to be done or if there’s a schedule for 
> when they update.
>  
> Thanks,
> -Stella
>  
> From: v...@apple.com   > 
> Sent: Friday, October 12, 2018 11:33 AM
> To: Stella Stamenova mailto:sti...@microsoft.com>>
> Cc: Zachary Turner mailto:ztur...@google.com>>; 
> lldb-commits@lists.llvm.org ; 
> reviews+d53175+public+09519a8f992e0...@reviews.llvm.org 
> 
> Subject: Re: [PATCH] D53175: [dotest] Make a missing FileCheck binary a 
> warning, not an error
>  
> All right, Committed r344396, I’ll keep an eye out for failures.
>  
> vedant
> 
> 
> On Oct 12, 2018, at 9:58 AM, Stella Stamenova  > wrote:
>  
> Those changes look reasonable, but I don't know how to test it either. I 
> would be in favor of checking it in because the buildbots are currently 
> broken and this can't make it worse, right?
> 
> -Original Message-
> From: v...@apple.com   > 
> Sent: Thursday, October 11, 2018 3:56 PM
> To: Stella Stamenova mailto:sti...@microsoft.com>>
> Cc: Zachary Turner mailto:ztur...@google.com>>; 
> lldb-commits@lists.llvm.org ; 
> reviews+d53175+public+09519a8f992e0...@reviews.llvm.org 
> 
> Subject: Re: [PATCH] D53175: [dotest] Make a missing FileCheck binary a 
> warning, not an error
> 
> Does this look reasonable to you? I'm not sure how to test this.
> 
> diff --git a/zorg/buildbot/builders/LLDBBuilder.py 
> b/zorg/buildbot/builders/LLDBBuilder.py
> index 5a1b2e87..62152924 100644 
> --- a/zorg/buildbot/builders/LLDBBuilder.py
> +++ b/zorg/buildbot/builders/LLDBBuilder.py
> @@ -270,6 +270,7 @@ def getLLDBTestSteps(f,
> compilerPath = compiler
> for arch in test_archs:
> DOTEST_OPTS=''.join(['--executable ' + bindir + '/lldb ',
> + '--filecheck ' + bindir + '/FileCheck 
> + ',
>  '-A %s ' % arch,
>  '-C %s ' % compilerPath,
>  '-s lldb-test-traces-%s-%s ' % (compiler, 
> arch), @@ -819,6 +820,7 @@ def getLLDBxcodebuildFactory(use_cc=None,
>   workdir=lldb_srcdir))
> DOTEST_OPTS = ' '.join(['--executable',
> '%(lldb_bindir)s/lldb',
> +'%(lldb_bindir)s/FileCheck',
> '--framework', '%(lldb_bindir)s/LLDB.framework',
> '-A', 'x86_64',
> '-C', 'clang',
> 
> vedant
> 
> 
> On Oct 11, 2018, at 3:46 PM, Stella Stamenova via Phabricator 
> mailto:revi...@reviews.llvm.org>> wrote:
> 
> stella.stamenova added a comment.
> 
> The failing bots are not windows bots but Linux bots. It looks like you only 
> updated the configurations for xcode.
> 
> I think the file that needs to be updated is:
> 
> zorg\buildbot\builders\LLDBBuilder.py
> 
> 
> https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Frevie 
> 
> ws.llvm.org 
> %2FD53175&data=02%7C01%7CSTILIS%40microsoft.com
>  
> %7Cb8693
> c9edfa5449d97db08d62fccaacd%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0
> %7C636748953431151967&sdata=rdn7nntFECouzbw%2FPoQISVCGGrjLCqAygk8q
> l0St%2B5o%3D&reserved=0

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


Re: [Lldb-commits] [PATCH] D53175: [dotest] Make a missing FileCheck binary a warning, not an error

2018-10-12 Thread Stella Stamenova via lldb-commits
+ Galina,

Galina, is there anything we need to do for the buildbots to pick up the change 
that Vedant made?

Thanks,
-Stella

From: v...@apple.com 
Sent: Friday, October 12, 2018 12:34 PM
To: Stella Stamenova 
Cc: Zachary Turner ; lldb-commits@lists.llvm.org; 
reviews+d53175+public+09519a8f992e0...@reviews.llvm.org
Subject: Re: [PATCH] D53175: [dotest] Make a missing FileCheck binary a 
warning, not an error

Ah gotcha. For the public Darwin bots, we needed to specifically trigger a 
Jenkins job to distribute Zorg updates to all our builders. This can be a bit 
of a manual process, because you need to kill the jobs on the builders’ queues 
to make sure they run the Zorg_Distribute job asap.

I’m not sure whether the Linux CI has a similar mechanism.

vedant


On Oct 12, 2018, at 12:31 PM, Stella Stamenova 
mailto:sti...@microsoft.com>> wrote:

Thanks, I’ve been monitoring the bots also and it looks like they haven’t 
picked up the zorg change yet. I don’t know if that’s supposed to just happen 
or if there’s something that needs to be done or if there’s a schedule for when 
they update.

Thanks,
-Stella

From: v...@apple.com 
mailto:v...@apple.com>>
Sent: Friday, October 12, 2018 11:33 AM
To: Stella Stamenova mailto:sti...@microsoft.com>>
Cc: Zachary Turner mailto:ztur...@google.com>>; 
lldb-commits@lists.llvm.org; 
reviews+d53175+public+09519a8f992e0...@reviews.llvm.org
Subject: Re: [PATCH] D53175: [dotest] Make a missing FileCheck binary a 
warning, not an error

All right, Committed r344396, I’ll keep an eye out for failures.

vedant



On Oct 12, 2018, at 9:58 AM, Stella Stamenova 
mailto:sti...@microsoft.com>> wrote:

Those changes look reasonable, but I don't know how to test it either. I would 
be in favor of checking it in because the buildbots are currently broken and 
this can't make it worse, right?

-Original Message-
From: v...@apple.com 
mailto:v...@apple.com>>
Sent: Thursday, October 11, 2018 3:56 PM
To: Stella Stamenova mailto:sti...@microsoft.com>>
Cc: Zachary Turner mailto:ztur...@google.com>>; 
lldb-commits@lists.llvm.org; 
reviews+d53175+public+09519a8f992e0...@reviews.llvm.org
Subject: Re: [PATCH] D53175: [dotest] Make a missing FileCheck binary a 
warning, not an error

Does this look reasonable to you? I'm not sure how to test this.

diff --git a/zorg/buildbot/builders/LLDBBuilder.py 
b/zorg/buildbot/builders/LLDBBuilder.py
index 5a1b2e87..62152924 100644
--- a/zorg/buildbot/builders/LLDBBuilder.py
+++ b/zorg/buildbot/builders/LLDBBuilder.py
@@ -270,6 +270,7 @@ def getLLDBTestSteps(f,
compilerPath = compiler
for arch in test_archs:
DOTEST_OPTS=''.join(['--executable ' + bindir + '/lldb ',
+ '--filecheck ' + bindir + '/FileCheck
+ ',
 '-A %s ' % arch,
 '-C %s ' % compilerPath,
 '-s lldb-test-traces-%s-%s ' % (compiler, 
arch), @@ -819,6 +820,7 @@ def getLLDBxcodebuildFactory(use_cc=None,
  workdir=lldb_srcdir))
DOTEST_OPTS = ' '.join(['--executable',
'%(lldb_bindir)s/lldb',
+'%(lldb_bindir)s/FileCheck',
'--framework', '%(lldb_bindir)s/LLDB.framework',
'-A', 'x86_64',
'-C', 'clang',

vedant



On Oct 11, 2018, at 3:46 PM, Stella Stamenova via Phabricator 
mailto:revi...@reviews.llvm.org>> wrote:

stella.stamenova added a comment.

The failing bots are not windows bots but Linux bots. It looks like you only 
updated the configurations for xcode.

I think the file that needs to be updated is:

zorg\buildbot\builders\LLDBBuilder.py


https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Frevie
ws.llvm.org%2FD53175&data=02%7C01%7CSTILIS%40microsoft.com%7Cb8693
c9edfa5449d97db08d62fccaacd%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0
%7C636748953431151967&sdata=rdn7nntFECouzbw%2FPoQISVCGGrjLCqAygk8q
l0St%2B5o%3D&reserved=0

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

Re: [Lldb-commits] [PATCH] D53175: [dotest] Make a missing FileCheck binary a warning, not an error

2018-10-12 Thread Zachary Turner via lldb-commits
They have to restart the master, Galina just did it yesterday so it might
happen again in a couple days
On Fri, Oct 12, 2018 at 12:36 PM Stella Stamenova 
wrote:

> + Galina,
>
>
>
> Galina, is there anything we need to do for the buildbots to pick up the
> change that Vedant made?
>
>
>
> Thanks,
>
> -Stella
>
>
>
> *From:* v...@apple.com 
> *Sent:* Friday, October 12, 2018 12:34 PM
>
>
> *To:* Stella Stamenova 
> *Cc:* Zachary Turner ; lldb-commits@lists.llvm.org;
> reviews+d53175+public+09519a8f992e0...@reviews.llvm.org
> *Subject:* Re: [PATCH] D53175: [dotest] Make a missing FileCheck binary a
> warning, not an error
>
>
>
> Ah gotcha. For the public Darwin bots, we needed to specifically trigger a
> Jenkins job to distribute Zorg updates to all our builders. This can be a
> bit of a manual process, because you need to kill the jobs on the builders’
> queues to make sure they run the Zorg_Distribute job asap.
>
>
>
> I’m not sure whether the Linux CI has a similar mechanism.
>
>
>
> vedant
>
>
>
> On Oct 12, 2018, at 12:31 PM, Stella Stamenova 
> wrote:
>
>
>
> Thanks, I’ve been monitoring the bots also and it looks like they haven’t
> picked up the zorg change yet. I don’t know if that’s supposed to just
> happen or if there’s something that needs to be done or if there’s a
> schedule for when they update.
>
>
>
> Thanks,
>
> -Stella
>
>
>
> *From:* v...@apple.com 
> *Sent:* Friday, October 12, 2018 11:33 AM
> *To:* Stella Stamenova 
> *Cc:* Zachary Turner ; lldb-commits@lists.llvm.org;
> reviews+d53175+public+09519a8f992e0...@reviews.llvm.org
> *Subject:* Re: [PATCH] D53175: [dotest] Make a missing FileCheck binary a
> warning, not an error
>
>
>
> All right, Committed r344396, I’ll keep an eye out for failures.
>
>
>
> vedant
>
>
>
>
> On Oct 12, 2018, at 9:58 AM, Stella Stamenova 
> wrote:
>
>
>
> Those changes look reasonable, but I don't know how to test it either. I
> would be in favor of checking it in because the buildbots are currently
> broken and this can't make it worse, right?
>
> -Original Message-
> From: v...@apple.com 
> Sent: Thursday, October 11, 2018 3:56 PM
> To: Stella Stamenova 
> Cc: Zachary Turner ; lldb-commits@lists.llvm.org;
> reviews+d53175+public+09519a8f992e0...@reviews.llvm.org
> Subject: Re: [PATCH] D53175: [dotest] Make a missing FileCheck binary a
> warning, not an error
>
> Does this look reasonable to you? I'm not sure how to test this.
>
> diff --git a/zorg/buildbot/builders/LLDBBuilder.py
> b/zorg/buildbot/builders/LLDBBuilder.py
> index 5a1b2e87..62152924 100644
> --- a/zorg/buildbot/builders/LLDBBuilder.py
> +++ b/zorg/buildbot/builders/LLDBBuilder.py
> @@ -270,6 +270,7 @@ def getLLDBTestSteps(f,
> compilerPath = compiler
> for arch in test_archs:
> DOTEST_OPTS=''.join(['--executable ' + bindir + '/lldb ',
> + '--filecheck ' + bindir + '/FileCheck
> + ',
>  '-A %s ' % arch,
>  '-C %s ' % compilerPath,
>  '-s lldb-test-traces-%s-%s ' % (compiler,
> arch), @@ -819,6 +820,7 @@ def getLLDBxcodebuildFactory(use_cc=None,
>   workdir=lldb_srcdir))
> DOTEST_OPTS = ' '.join(['--executable',
> '%(lldb_bindir)s/lldb',
> +'%(lldb_bindir)s/FileCheck',
> '--framework',
> '%(lldb_bindir)s/LLDB.framework',
> '-A', 'x86_64',
> '-C', 'clang',
>
> vedant
>
>
>
> On Oct 11, 2018, at 3:46 PM, Stella Stamenova via Phabricator <
> revi...@reviews.llvm.org> wrote:
>
> stella.stamenova added a comment.
>
> The failing bots are not windows bots but Linux bots. It looks like you
> only updated the configurations for xcode.
>
> I think the file that needs to be updated is:
>
> zorg\buildbot\builders\LLDBBuilder.py
>
>
> https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Frevie
> ws.llvm.org
> 
> %2FD53175&data=02%7C01%7CSTILIS%40microsoft.com
> 
> %7Cb8693
> c9edfa5449d97db08d62fccaacd%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0
> %7C636748953431151967&sdata=rdn7nntFECouzbw%2FPoQISVCGGrjLCqAygk8q
> l0St%2B5o%3D&reserved=0
>
>
>
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] r344407 - Changing test names in TestDataFormatterLibcxxVariant.py and TestStdFunctionStepIntoCallable.py to be unique, NFC

2018-10-12 Thread Shafik Yaghmour via lldb-commits
Author: shafik
Date: Fri Oct 12 12:46:17 2018
New Revision: 344407

URL: http://llvm.org/viewvc/llvm-project?rev=344407&view=rev
Log:
Changing test names in TestDataFormatterLibcxxVariant.py and 
TestStdFunctionStepIntoCallable.py to be unique, NFC

Modified:

lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libcxx/variant/TestDataFormatterLibcxxVariant.py

lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/std-function-step-into-callable/TestStdFunctionStepIntoCallable.py

Modified: 
lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libcxx/variant/TestDataFormatterLibcxxVariant.py
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libcxx/variant/TestDataFormatterLibcxxVariant.py?rev=344407&r1=344406&r2=344407&view=diff
==
--- 
lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libcxx/variant/TestDataFormatterLibcxxVariant.py
 (original)
+++ 
lldb/trunk/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libcxx/variant/TestDataFormatterLibcxxVariant.py
 Fri Oct 12 12:46:17 2018
@@ -12,7 +12,7 @@ from lldbsuite.test.decorators import *
 from lldbsuite.test.lldbtest import *
 from lldbsuite.test import lldbutil
 
-class LibcxxOptionalDataFormatterTestCase(TestBase):
+class LibcxxVariantDataFormatterTestCase(TestBase):
 
 mydir = TestBase.compute_mydir(__file__)
 

Modified: 
lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/std-function-step-into-callable/TestStdFunctionStepIntoCallable.py
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/std-function-step-into-callable/TestStdFunctionStepIntoCallable.py?rev=344407&r1=344406&r2=344407&view=diff
==
--- 
lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/std-function-step-into-callable/TestStdFunctionStepIntoCallable.py
 (original)
+++ 
lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/std-function-step-into-callable/TestStdFunctionStepIntoCallable.py
 Fri Oct 12 12:46:17 2018
@@ -12,7 +12,7 @@ from lldbsuite.test.lldbtest import *
 from lldbsuite.test import lldbutil
 
 
-class LibCxxFunctionTestCase(TestBase):
+class LibCxxFunctionSteppingIntoCallableTestCase(TestBase):
 
 mydir = TestBase.compute_mydir(__file__)
 


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


[Lldb-commits] [lldb] r344409 - Resubmit "Add SymbolFileNativePDB plugin."

2018-10-12 Thread Zachary Turner via lldb-commits
Author: zturner
Date: Fri Oct 12 12:47:13 2018
New Revision: 344409

URL: http://llvm.org/viewvc/llvm-project?rev=344409&view=rev
Log:
Resubmit "Add SymbolFileNativePDB plugin."

This was originally reverted due to some test failures on
Linux.  Those problems turned out to require several additional
patches to lld and clang in order to fix, which have since been
submitted.  This patch is resubmitted unchanged.  All tests now
pass on both Linux and Windows.

Added:
lldb/trunk/lit/SymbolFile/NativePDB/
lldb/trunk/lit/SymbolFile/NativePDB/Inputs/
lldb/trunk/lit/SymbolFile/NativePDB/Inputs/breakpoints.lldbinit
lldb/trunk/lit/SymbolFile/NativePDB/Inputs/disassembly.lldbinit
lldb/trunk/lit/SymbolFile/NativePDB/Inputs/source-list.lldbinit
lldb/trunk/lit/SymbolFile/NativePDB/disassembly.cpp
lldb/trunk/lit/SymbolFile/NativePDB/lit.local.cfg
lldb/trunk/lit/SymbolFile/NativePDB/simple-breakpoints.cpp
lldb/trunk/lit/SymbolFile/NativePDB/source-list.cpp
lldb/trunk/source/Plugins/SymbolFile/NativePDB/
lldb/trunk/source/Plugins/SymbolFile/NativePDB/CMakeLists.txt
lldb/trunk/source/Plugins/SymbolFile/NativePDB/CompileUnitIndex.cpp
lldb/trunk/source/Plugins/SymbolFile/NativePDB/CompileUnitIndex.h
lldb/trunk/source/Plugins/SymbolFile/NativePDB/PdbIndex.cpp
lldb/trunk/source/Plugins/SymbolFile/NativePDB/PdbIndex.h
lldb/trunk/source/Plugins/SymbolFile/NativePDB/PdbSymUid.h
lldb/trunk/source/Plugins/SymbolFile/NativePDB/PdbUtil.cpp
lldb/trunk/source/Plugins/SymbolFile/NativePDB/PdbUtil.h
lldb/trunk/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
lldb/trunk/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.h
Modified:
lldb/trunk/include/lldb/Utility/LLDBAssert.h
lldb/trunk/lit/lit.cfg
lldb/trunk/source/Plugins/SymbolFile/CMakeLists.txt
lldb/trunk/source/Plugins/SymbolFile/PDB/CMakeLists.txt
lldb/trunk/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp

Modified: lldb/trunk/include/lldb/Utility/LLDBAssert.h
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Utility/LLDBAssert.h?rev=344409&r1=344408&r2=344409&view=diff
==
--- lldb/trunk/include/lldb/Utility/LLDBAssert.h (original)
+++ lldb/trunk/include/lldb/Utility/LLDBAssert.h Fri Oct 12 12:47:13 2018
@@ -14,7 +14,8 @@
 #define lldbassert(x) assert(x)
 #else
 #define lldbassert(x)  
\
-  lldb_private::lldb_assert(x, #x, __FUNCTION__, __FILE__, __LINE__)
+  lldb_private::lldb_assert(static_cast(x), #x, __FUNCTION__, __FILE__,  
\
+__LINE__)
 #endif
 
 namespace lldb_private {

Added: lldb/trunk/lit/SymbolFile/NativePDB/Inputs/breakpoints.lldbinit
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/lit/SymbolFile/NativePDB/Inputs/breakpoints.lldbinit?rev=344409&view=auto
==
--- lldb/trunk/lit/SymbolFile/NativePDB/Inputs/breakpoints.lldbinit (added)
+++ lldb/trunk/lit/SymbolFile/NativePDB/Inputs/breakpoints.lldbinit Fri Oct 12 
12:47:13 2018
@@ -0,0 +1,6 @@
+break set -n main
+break set -n OvlGlobalFn
+break set -n StaticFn
+break set -n DoesntExist
+break list
+quit

Added: lldb/trunk/lit/SymbolFile/NativePDB/Inputs/disassembly.lldbinit
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/lit/SymbolFile/NativePDB/Inputs/disassembly.lldbinit?rev=344409&view=auto
==
--- lldb/trunk/lit/SymbolFile/NativePDB/Inputs/disassembly.lldbinit (added)
+++ lldb/trunk/lit/SymbolFile/NativePDB/Inputs/disassembly.lldbinit Fri Oct 12 
12:47:13 2018
@@ -0,0 +1,2 @@
+disassemble --flavor=intel -m -n main
+quit

Added: lldb/trunk/lit/SymbolFile/NativePDB/Inputs/source-list.lldbinit
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/lit/SymbolFile/NativePDB/Inputs/source-list.lldbinit?rev=344409&view=auto
==
--- lldb/trunk/lit/SymbolFile/NativePDB/Inputs/source-list.lldbinit (added)
+++ lldb/trunk/lit/SymbolFile/NativePDB/Inputs/source-list.lldbinit Fri Oct 12 
12:47:13 2018
@@ -0,0 +1,3 @@
+source list -n main
+source list -n OvlGlobalFn
+quit

Added: lldb/trunk/lit/SymbolFile/NativePDB/disassembly.cpp
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/lit/SymbolFile/NativePDB/disassembly.cpp?rev=344409&view=auto
==
--- lldb/trunk/lit/SymbolFile/NativePDB/disassembly.cpp (added)
+++ lldb/trunk/lit/SymbolFile/NativePDB/disassembly.cpp Fri Oct 12 12:47:13 2018
@@ -0,0 +1,38 @@
+// clang-format off
+
+// Test that we can show disassembly and source.
+// RUN: clang-cl /Z7 /GS- /GR- /c %s /Fo%t.obj
+// RUN: lld-link /DEBUG /nodefaultlib /entry:main /OUT:%t.exe /PDB:%t.pdb 
%t.obj
+// RUN: env LLDB_USE_NATIVE_PDB_READE

[Lldb-commits] [PATCH] D53175: [dotest] Make a missing FileCheck binary a warning, not an error

2018-10-12 Thread Stella Stamenova via Phabricator via lldb-commits
stella.stamenova added a comment.

The bots are now failing because lexists doesn't handle NoneType correctly:

File 
"/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/packages/Python/lldbsuite/test/configuration.py",
 line 191, in get_filecheck_path
  if os.path.lexists(filecheck):
File "/lldb-buildbot/virenv/lib/python2.7/posixpath.py", line 152, in 
lexists
  os.lstat(path)
  TypeError: coercing to Unicode: need string or buffer, NoneType found

I think get_filecheck_path should check if filecheck is set first before 
calling lexists:

  if filecheck and os.path.lexists(filecheck):
  return filecheck


Repository:
  rL LLVM

https://reviews.llvm.org/D53175



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


Re: [Lldb-commits] [PATCH] D53175: [dotest] Make a missing FileCheck binary a warning, not an error

2018-10-12 Thread Vedant Kumar via lldb-commits


> On Oct 12, 2018, at 12:52 PM, Stella Stamenova via Phabricator 
>  wrote:
> 
> stella.stamenova added a comment.
> 
> The bots are now failing because lexists doesn't handle NoneType correctly:
> 
>File 
> "/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/packages/Python/lldbsuite/test/configuration.py",
>  line 191, in get_filecheck_path
>  if os.path.lexists(filecheck):
>File "/lldb-buildbot/virenv/lib/python2.7/posixpath.py", line 152, in 
> lexists
>  os.lstat(path)
>  TypeError: coercing to Unicode: need string or buffer, NoneType found
> 
> I think get_filecheck_path should check if filecheck is set first before 
> calling lexists:
> 
>  if filecheck and os.path.lexists(filecheck):
>  return filecheck

That sounds right. Would you mind committing the fix?

vedant

> 
> 
> Repository:
>  rL LLVM
> 
> https://reviews.llvm.org/D53175
> 
> 
> 

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


[Lldb-commits] [PATCH] D49271: Adding libc++ formattors for std::optional

2018-10-12 Thread Shafik Yaghmour via Phabricator via lldb-commits
shafik marked 2 inline comments as done.
shafik added a comment.

@stella.stamenova Thank you for catching this. I fixed the test names, I am 
looking into the best way to fix the skipif now.


https://reviews.llvm.org/D49271



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


[Lldb-commits] [PATCH] D49271: Adding libc++ formattors for std::optional

2018-10-12 Thread Stella Stamenova via Phabricator via lldb-commits
stella.stamenova added a comment.

In https://reviews.llvm.org/D49271#1263842, @shafik wrote:

> @stella.stamenova Thank you for catching this. I fixed the test names, I am 
> looking into the best way to fix the skipif now.


@shafik I send a change for review this morning that I think should do the 
trick: https://reviews.llvm.org/D53208. The other option is to change the 
skipIf to include the os like some of the other ones.


https://reviews.llvm.org/D49271



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


[Lldb-commits] [lldb] r344410 - Fix failure in get_filecheck_path when filecheck is None

2018-10-12 Thread Stella Stamenova via lldb-commits
Author: stella.stamenova
Date: Fri Oct 12 13:00:20 2018
New Revision: 344410

URL: http://llvm.org/viewvc/llvm-project?rev=344410&view=rev
Log:
Fix failure in get_filecheck_path when filecheck is None

If the path was not specified (and it's None), lexists throws an exception 
rather than returning False. get_filecheck_path now checks whether filecheck is 
set before calling lexists

Modified:
lldb/trunk/packages/Python/lldbsuite/test/configuration.py

Modified: lldb/trunk/packages/Python/lldbsuite/test/configuration.py
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/configuration.py?rev=344410&r1=344409&r2=344410&view=diff
==
--- lldb/trunk/packages/Python/lldbsuite/test/configuration.py (original)
+++ lldb/trunk/packages/Python/lldbsuite/test/configuration.py Fri Oct 12 
13:00:20 2018
@@ -188,5 +188,5 @@ def get_filecheck_path():
 """
 Get the path to the FileCheck testing tool.
 """
-if os.path.lexists(filecheck):
+if filecheck and os.path.lexists(filecheck):
 return filecheck


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


Re: [Lldb-commits] [PATCH] D53175: [dotest] Make a missing FileCheck binary a warning, not an error

2018-10-12 Thread Stella Stamenova via lldb-commits
Progress! The tests are running again and only a handful fail (some because of 
FileCheck, others for various other reasons).

http://lab.llvm.org:8011/builders/lldb-x86_64-ubuntu-14.04-cmake/builds/29816

It looks like there a number of tests that have failures unrelated to 
FileCheck, so anyone who has committed something recently should probably check 
if they broke a test or two.

-Original Message-
From: v...@apple.com  
Sent: Friday, October 12, 2018 12:53 PM
To: reviews+d53175+public+09519a8f992e0...@reviews.llvm.org
Cc: Stella Stamenova ; ztur...@google.com; 
llvm-comm...@lists.llvm.org; jmole...@apple.com; lldb-commits@lists.llvm.org
Subject: Re: [PATCH] D53175: [dotest] Make a missing FileCheck binary a 
warning, not an error



> On Oct 12, 2018, at 12:52 PM, Stella Stamenova via Phabricator 
>  wrote:
> 
> stella.stamenova added a comment.
> 
> The bots are now failing because lexists doesn't handle NoneType correctly:
> 
>File 
> "/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/packages/Python/lldbsuite/test/configuration.py",
>  line 191, in get_filecheck_path
>  if os.path.lexists(filecheck):
>File "/lldb-buildbot/virenv/lib/python2.7/posixpath.py", line 152, in 
> lexists
>  os.lstat(path)
>  TypeError: coercing to Unicode: need string or buffer, NoneType found
> 
> I think get_filecheck_path should check if filecheck is set first before 
> calling lexists:
> 
>  if filecheck and os.path.lexists(filecheck):
>  return filecheck

That sounds right. Would you mind committing the fix?

vedant

> 
> 
> Repository:
>  rL LLVM
> 
> https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Freviews.llvm.org%2FD53175&data=02%7C01%7CSTILIS%40microsoft.com%7Ca7ce141a6be247039d0308d6307c45d0%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636749707647902532&sdata=95dHTlsTC1R2KiUsMH3%2BV5vG0IUdFMFjN7snYNESzqA%3D&reserved=0
> 
> 
> 

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


[Lldb-commits] [lldb] r344414 - Add NativePDB subdir again.

2018-10-12 Thread Jason Molenda via lldb-commits
Author: jmolenda
Date: Fri Oct 12 13:53:21 2018
New Revision: 344414

URL: http://llvm.org/viewvc/llvm-project?rev=344414&view=rev
Log:
Add NativePDB subdir again.

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=344414&r1=344413&r2=344414&view=diff
==
--- lldb/trunk/lldb.xcodeproj/project.pbxproj (original)
+++ lldb/trunk/lldb.xcodeproj/project.pbxproj Fri Oct 12 13:53:21 2018
@@ -210,6 +210,7 @@
2642FBAE13D003B400ED6808 /* CommunicationKDP.cpp in Sources */ 
= {isa = PBXBuildFile; fileRef = 2642FBA813D003B400ED6808 /* 
CommunicationKDP.cpp */; };
964463EC1A330C0500154ED8 /* CompactUnwindInfo.cpp in Sources */ 
= {isa = PBXBuildFile; fileRef = 964463EB1A330C0500154ED8 /* 
CompactUnwindInfo.cpp */; };
268900D513353E6F00698AC0 /* CompileUnit.cpp in Sources */ = 
{isa = PBXBuildFile; fileRef = 26BC7F1510F1B8EC00F91463 /* CompileUnit.cpp */; 
};
+   AFD966B8217140B6006714AC /* CompileUnitIndex.cpp in Sources */ 
= {isa = PBXBuildFile; fileRef = AFD966B4217140B5006714AC /* 
CompileUnitIndex.cpp */; };
265192C61BA8E905002F08F6 /* CompilerDecl.cpp in Sources */ = 
{isa = PBXBuildFile; fileRef = 265192C51BA8E905002F08F6 /* CompilerDecl.cpp */; 
};
2657AFB71B86910100958979 /* CompilerDeclContext.cpp in Sources 
*/ = {isa = PBXBuildFile; fileRef = 2657AFB61B86910100958979 /* 
CompilerDeclContext.cpp */; };
268900D213353E6F00698AC0 /* CompilerType.cpp in Sources */ = 
{isa = PBXBuildFile; fileRef = 49E45FAD11F660FE008F7B28 /* CompilerType.cpp */; 
};
@@ -586,6 +587,8 @@
4CA0C6CC20F929C700CFE6BB /* PDBLocationToDWARFExpression.cpp in 
Sources */ = {isa = PBXBuildFile; fileRef = 4CA0C6CA20F929C600CFE6BB /* 
PDBLocationToDWARFExpression.cpp */; };
268900EE13353E6F00698AC0 /* PathMappingList.cpp in Sources */ = 
{isa = PBXBuildFile; fileRef = 495BBACB119A0DBE00418BEA /* PathMappingList.cpp 
*/; };
2668A2EE20AF417D00D94111 /* PathMappingListTest.cpp in Sources 
*/ = {isa = PBXBuildFile; fileRef = 2668A2ED20AF417D00D94111 /* 
PathMappingListTest.cpp */; };
+   AFD966BA217140B6006714AC /* PdbIndex.cpp in Sources */ = {isa = 
PBXBuildFile; fileRef = AFD966B6217140B6006714AC /* PdbIndex.cpp */; };
+   AFD966B9217140B6006714AC /* PdbUtil.cpp in Sources */ = {isa = 
PBXBuildFile; fileRef = AFD966B5217140B6006714AC /* PdbUtil.cpp */; };
25420ED21A649D88009ADBCB /* PipeBase.cpp in Sources */ = {isa = 
PBXBuildFile; fileRef = 25420ED11A649D88009ADBCB /* PipeBase.cpp */; };
2377C2F819E613C100737875 /* PipePosix.cpp in Sources */ = {isa 
= PBXBuildFile; fileRef = 2377C2F719E613C100737875 /* PipePosix.cpp */; };
268900EF13353E6F00698AC0 /* Platform.cpp in Sources */ = {isa = 
PBXBuildFile; fileRef = 264A43BD1320BCEB005B4096 /* Platform.cpp */; };
@@ -912,6 +915,7 @@
4C7D48251F5099B2005314B4 /* SymbolFileDWARFDwoDwp.cpp in 
Sources */ = {isa = PBXBuildFile; fileRef = 4C7D481F1F509964005314B4 /* 
SymbolFileDWARFDwoDwp.cpp */; };
4C7D48241F5099A1005314B4 /* SymbolFileDWARFDwp.cpp in Sources 
*/ = {isa = PBXBuildFile; fileRef = 4C7D481C1F509963005314B4 /* 
SymbolFileDWARFDwp.cpp */; };
9A2057121F3B824B00F6C293 /* SymbolFileDWARFTests.cpp in Sources 
*/ = {isa = PBXBuildFile; fileRef = 9A20570A1F3B81F300F6C293 /* 
SymbolFileDWARFTests.cpp */; };
+   AFD966BB217140B6006714AC /* SymbolFileNativePDB.cpp in Sources 
*/ = {isa = PBXBuildFile; fileRef = AFD966B7217140B6006714AC /* 
SymbolFileNativePDB.cpp */; };
AF6335E21C87B21E00F7D554 /* SymbolFilePDB.cpp in Sources */ = 
{isa = PBXBuildFile; fileRef = AF6335E01C87B21E00F7D554 /* SymbolFilePDB.cpp 
*/; };
268900CE13353E5F00698AC0 /* SymbolFileSymtab.cpp in Sources */ 
= {isa = PBXBuildFile; fileRef = 260C89DE10F57C5600BB2B04 /* 
SymbolFileSymtab.cpp */; };
268900E013353E6F00698AC0 /* SymbolVendor.cpp in Sources */ = 
{isa = PBXBuildFile; fileRef = AF94005711C03F6500085DB9 /* SymbolVendor.cpp */; 
};
@@ -1663,6 +1667,8 @@
964463ED1A330C1B00154ED8 /* CompactUnwindInfo.h */ = {isa = 
PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = 
CompactUnwindInfo.h; path = include/lldb/Symbol/CompactUnwindInfo.h; sourceTree 
= ""; };
26BC7F1510F1B8EC00F91463 /* CompileUnit.cpp */ = {isa = 
PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; 
name = CompileUnit.cpp; path = source/Symbol/CompileUnit.cpp; sourceTree = 
""; };
26BC7C5710F1B6E900F91463 /* CompileUnit.h */ = {isa = 
PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = 
C

[Lldb-commits] [PATCH] D53208: [lldbsuite] Fix the mac version decorator to work on non-mac platforms

2018-10-12 Thread Shafik Yaghmour via Phabricator via lldb-commits
shafik added inline comments.



Comment at: packages/Python/lldbsuite/test/decorators.py:194
 py_version[0], py_version[1], sys.version_info)
-skip_for_macos_version = (macos_version is None) or (
+skip_for_macos_version = (macos_version is None) or 
(platform.mac_ver()[0] == "") or (
 _check_expected_version(

If I am reading the following code correctly this will default to skipping when 
`platform.mac_ver()[0]  == ""` shouldn't it be the other way around? 


Repository:
  rLLDB LLDB

https://reviews.llvm.org/D53208



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


Re: [Lldb-commits] [lldb] r344414 - Add NativePDB subdir again.

2018-10-12 Thread Zachary Turner via lldb-commits
Sorry for the trouble, hopefully it sticks this time.

On Fri, Oct 12, 2018 at 1:55 PM Jason Molenda via lldb-commits <
lldb-commits@lists.llvm.org> wrote:

> Author: jmolenda
> Date: Fri Oct 12 13:53:21 2018
> New Revision: 344414
>
> URL: http://llvm.org/viewvc/llvm-project?rev=344414&view=rev
> Log:
> Add NativePDB subdir again.
>
> 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=344414&r1=344413&r2=344414&view=diff
>
> ==
> --- lldb/trunk/lldb.xcodeproj/project.pbxproj (original)
> +++ lldb/trunk/lldb.xcodeproj/project.pbxproj Fri Oct 12 13:53:21 2018
> @@ -210,6 +210,7 @@
> 2642FBAE13D003B400ED6808 /* CommunicationKDP.cpp in
> Sources */ = {isa = PBXBuildFile; fileRef = 2642FBA813D003B400ED6808 /*
> CommunicationKDP.cpp */; };
> 964463EC1A330C0500154ED8 /* CompactUnwindInfo.cpp in
> Sources */ = {isa = PBXBuildFile; fileRef = 964463EB1A330C0500154ED8 /*
> CompactUnwindInfo.cpp */; };
> 268900D513353E6F00698AC0 /* CompileUnit.cpp in Sources */
> = {isa = PBXBuildFile; fileRef = 26BC7F1510F1B8EC00F91463 /*
> CompileUnit.cpp */; };
> +   AFD966B8217140B6006714AC /* CompileUnitIndex.cpp in
> Sources */ = {isa = PBXBuildFile; fileRef = AFD966B4217140B5006714AC /*
> CompileUnitIndex.cpp */; };
> 265192C61BA8E905002F08F6 /* CompilerDecl.cpp in Sources */
> = {isa = PBXBuildFile; fileRef = 265192C51BA8E905002F08F6 /*
> CompilerDecl.cpp */; };
> 2657AFB71B86910100958979 /* CompilerDeclContext.cpp in
> Sources */ = {isa = PBXBuildFile; fileRef = 2657AFB61B86910100958979 /*
> CompilerDeclContext.cpp */; };
> 268900D213353E6F00698AC0 /* CompilerType.cpp in Sources */
> = {isa = PBXBuildFile; fileRef = 49E45FAD11F660FE008F7B28 /*
> CompilerType.cpp */; };
> @@ -586,6 +587,8 @@
> 4CA0C6CC20F929C700CFE6BB /*
> PDBLocationToDWARFExpression.cpp in Sources */ = {isa = PBXBuildFile;
> fileRef = 4CA0C6CA20F929C600CFE6BB /* PDBLocationToDWARFExpression.cpp */;
> };
> 268900EE13353E6F00698AC0 /* PathMappingList.cpp in Sources
> */ = {isa = PBXBuildFile; fileRef = 495BBACB119A0DBE00418BEA /*
> PathMappingList.cpp */; };
> 2668A2EE20AF417D00D94111 /* PathMappingListTest.cpp in
> Sources */ = {isa = PBXBuildFile; fileRef = 2668A2ED20AF417D00D94111 /*
> PathMappingListTest.cpp */; };
> +   AFD966BA217140B6006714AC /* PdbIndex.cpp in Sources */ =
> {isa = PBXBuildFile; fileRef = AFD966B6217140B6006714AC /* PdbIndex.cpp */;
> };
> +   AFD966B9217140B6006714AC /* PdbUtil.cpp in Sources */ =
> {isa = PBXBuildFile; fileRef = AFD966B5217140B6006714AC /* PdbUtil.cpp */;
> };
> 25420ED21A649D88009ADBCB /* PipeBase.cpp in Sources */ =
> {isa = PBXBuildFile; fileRef = 25420ED11A649D88009ADBCB /* PipeBase.cpp */;
> };
> 2377C2F819E613C100737875 /* PipePosix.cpp in Sources */ =
> {isa = PBXBuildFile; fileRef = 2377C2F719E613C100737875 /* PipePosix.cpp
> */; };
> 268900EF13353E6F00698AC0 /* Platform.cpp in Sources */ =
> {isa = PBXBuildFile; fileRef = 264A43BD1320BCEB005B4096 /* Platform.cpp */;
> };
> @@ -912,6 +915,7 @@
> 4C7D48251F5099B2005314B4 /* SymbolFileDWARFDwoDwp.cpp in
> Sources */ = {isa = PBXBuildFile; fileRef = 4C7D481F1F509964005314B4 /*
> SymbolFileDWARFDwoDwp.cpp */; };
> 4C7D48241F5099A1005314B4 /* SymbolFileDWARFDwp.cpp in
> Sources */ = {isa = PBXBuildFile; fileRef = 4C7D481C1F509963005314B4 /*
> SymbolFileDWARFDwp.cpp */; };
> 9A2057121F3B824B00F6C293 /* SymbolFileDWARFTests.cpp in
> Sources */ = {isa = PBXBuildFile; fileRef = 9A20570A1F3B81F300F6C293 /*
> SymbolFileDWARFTests.cpp */; };
> +   AFD966BB217140B6006714AC /* SymbolFileNativePDB.cpp in
> Sources */ = {isa = PBXBuildFile; fileRef = AFD966B7217140B6006714AC /*
> SymbolFileNativePDB.cpp */; };
> AF6335E21C87B21E00F7D554 /* SymbolFilePDB.cpp in Sources
> */ = {isa = PBXBuildFile; fileRef = AF6335E01C87B21E00F7D554 /*
> SymbolFilePDB.cpp */; };
> 268900CE13353E5F00698AC0 /* SymbolFileSymtab.cpp in
> Sources */ = {isa = PBXBuildFile; fileRef = 260C89DE10F57C5600BB2B04 /*
> SymbolFileSymtab.cpp */; };
> 268900E013353E6F00698AC0 /* SymbolVendor.cpp in Sources */
> = {isa = PBXBuildFile; fileRef = AF94005711C03F6500085DB9 /*
> SymbolVendor.cpp */; };
> @@ -1663,6 +1667,8 @@
> 964463ED1A330C1B00154ED8 /* CompactUnwindInfo.h */ = {isa
> = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h;
> name = CompactUnwindInfo.h; path = include/lldb/Symbol/CompactUnwindInfo.h;
> sourceTree = ""; };
> 26BC7F1510F1B8EC00F91463 /* CompileUnit.cpp */ = {isa =
> PBXFileRefer

[Lldb-commits] [PATCH] D53208: [lldbsuite] Fix the mac version decorator to work on non-mac platforms

2018-10-12 Thread Stella Stamenova via Phabricator via lldb-commits
stella.stamenova added inline comments.



Comment at: packages/Python/lldbsuite/test/decorators.py:194
 py_version[0], py_version[1], sys.version_info)
-skip_for_macos_version = (macos_version is None) or (
+skip_for_macos_version = (macos_version is None) or 
(platform.mac_ver()[0] == "") or (
 _check_expected_version(

shafik wrote:
> If I am reading the following code correctly this will default to skipping 
> when `platform.mac_ver()[0]  == ""` shouldn't it be the other way around? 
Yes, you are reading it correctly. I can see either as being "right" - the 
question is how the decorator is supposed to be used.

Usually, it is paired with a skipUnlessDarwin (or similar), so skipping if it 
is not mac is "right".

On the other hand, for the test you added, I think you wanted it to run on 
other platforms and on mac only if the version requirement was met, so we 
should not skip if the platform is not Darwin. Was that your goal?


Repository:
  rLLDB LLDB

https://reviews.llvm.org/D53208



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


Re: [Lldb-commits] [PATCH] D53175: [dotest] Make a missing FileCheck binary a warning, not an error

2018-10-12 Thread Galina Kistanova via lldb-commits
I will update the master tonight.

Thanks

Galina

On Fri, Oct 12, 2018 at 12:36 PM Stella Stamenova 
wrote:

> + Galina,
>
>
>
> Galina, is there anything we need to do for the buildbots to pick up the
> change that Vedant made?
>
>
>
> Thanks,
>
> -Stella
>
>
>
> *From:* v...@apple.com 
> *Sent:* Friday, October 12, 2018 12:34 PM
> *To:* Stella Stamenova 
> *Cc:* Zachary Turner ; lldb-commits@lists.llvm.org;
> reviews+d53175+public+09519a8f992e0...@reviews.llvm.org
> *Subject:* Re: [PATCH] D53175: [dotest] Make a missing FileCheck binary a
> warning, not an error
>
>
>
> Ah gotcha. For the public Darwin bots, we needed to specifically trigger a
> Jenkins job to distribute Zorg updates to all our builders. This can be a
> bit of a manual process, because you need to kill the jobs on the builders’
> queues to make sure they run the Zorg_Distribute job asap.
>
>
>
> I’m not sure whether the Linux CI has a similar mechanism.
>
>
>
> vedant
>
>
>
> On Oct 12, 2018, at 12:31 PM, Stella Stamenova 
> wrote:
>
>
>
> Thanks, I’ve been monitoring the bots also and it looks like they haven’t
> picked up the zorg change yet. I don’t know if that’s supposed to just
> happen or if there’s something that needs to be done or if there’s a
> schedule for when they update.
>
>
>
> Thanks,
>
> -Stella
>
>
>
> *From:* v...@apple.com 
> *Sent:* Friday, October 12, 2018 11:33 AM
> *To:* Stella Stamenova 
> *Cc:* Zachary Turner ; lldb-commits@lists.llvm.org;
> reviews+d53175+public+09519a8f992e0...@reviews.llvm.org
> *Subject:* Re: [PATCH] D53175: [dotest] Make a missing FileCheck binary a
> warning, not an error
>
>
>
> All right, Committed r344396, I’ll keep an eye out for failures.
>
>
>
> vedant
>
>
>
>
> On Oct 12, 2018, at 9:58 AM, Stella Stamenova 
> wrote:
>
>
>
> Those changes look reasonable, but I don't know how to test it either. I
> would be in favor of checking it in because the buildbots are currently
> broken and this can't make it worse, right?
>
> -Original Message-
> From: v...@apple.com 
> Sent: Thursday, October 11, 2018 3:56 PM
> To: Stella Stamenova 
> Cc: Zachary Turner ; lldb-commits@lists.llvm.org;
> reviews+d53175+public+09519a8f992e0...@reviews.llvm.org
> Subject: Re: [PATCH] D53175: [dotest] Make a missing FileCheck binary a
> warning, not an error
>
> Does this look reasonable to you? I'm not sure how to test this.
>
> diff --git a/zorg/buildbot/builders/LLDBBuilder.py
> b/zorg/buildbot/builders/LLDBBuilder.py
> index 5a1b2e87..62152924 100644
> --- a/zorg/buildbot/builders/LLDBBuilder.py
> +++ b/zorg/buildbot/builders/LLDBBuilder.py
> @@ -270,6 +270,7 @@ def getLLDBTestSteps(f,
> compilerPath = compiler
> for arch in test_archs:
> DOTEST_OPTS=''.join(['--executable ' + bindir + '/lldb ',
> + '--filecheck ' + bindir + '/FileCheck
> + ',
>  '-A %s ' % arch,
>  '-C %s ' % compilerPath,
>  '-s lldb-test-traces-%s-%s ' % (compiler,
> arch), @@ -819,6 +820,7 @@ def getLLDBxcodebuildFactory(use_cc=None,
>   workdir=lldb_srcdir))
> DOTEST_OPTS = ' '.join(['--executable',
> '%(lldb_bindir)s/lldb',
> +'%(lldb_bindir)s/FileCheck',
> '--framework',
> '%(lldb_bindir)s/LLDB.framework',
> '-A', 'x86_64',
> '-C', 'clang',
>
> vedant
>
>
>
> On Oct 11, 2018, at 3:46 PM, Stella Stamenova via Phabricator <
> revi...@reviews.llvm.org> wrote:
>
> stella.stamenova added a comment.
>
> The failing bots are not windows bots but Linux bots. It looks like you
> only updated the configurations for xcode.
>
> I think the file that needs to be updated is:
>
> zorg\buildbot\builders\LLDBBuilder.py
>
>
> https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Frevie
> ws.llvm.org
> 
> %2FD53175&data=02%7C01%7CSTILIS%40microsoft.com
> 
> %7Cb8693
> c9edfa5449d97db08d62fccaacd%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0
> %7C636748953431151967&sdata=rdn7nntFECouzbw%2FPoQISVCGGrjLCqAygk8q
> l0St%2B5o%3D&reserved=0
>
>
>
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] r344418 - Change the default handling for SIGPIPE to pass/, no-stop/no-notify.

2018-10-12 Thread Jim Ingham via lldb-commits
Author: jingham
Date: Fri Oct 12 14:27:49 2018
New Revision: 344418

URL: http://llvm.org/viewvc/llvm-project?rev=344418&view=rev
Log:
Change the default handling for SIGPIPE to pass/,no-stop/no-notify.

Most of the time SIGPIPE is just annoying, and so we should
pass it on silently it by default.



Modified:
lldb/trunk/source/Target/UnixSignals.cpp

Modified: lldb/trunk/source/Target/UnixSignals.cpp
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Target/UnixSignals.cpp?rev=344418&r1=344417&r2=344418&view=diff
==
--- lldb/trunk/source/Target/UnixSignals.cpp (original)
+++ lldb/trunk/source/Target/UnixSignals.cpp Fri Oct 12 14:27:49 2018
@@ -88,7 +88,7 @@ void UnixSignals::Reset() {
   AddSignal(10, "SIGBUS", false, true, true, "bus error");
   AddSignal(11, "SIGSEGV", false, true, true, "segmentation violation");
   AddSignal(12, "SIGSYS", false, true, true, "bad argument to system call");
-  AddSignal(13, "SIGPIPE", false, true, true,
+  AddSignal(13, "SIGPIPE", false, false, false,
 "write on a pipe with no one to read it");
   AddSignal(14, "SIGALRM", false, false, false, "alarm clock");
   AddSignal(15, "SIGTERM", false, true, true,


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


[Lldb-commits] [PATCH] D53208: [lldbsuite] Fix the mac version decorator to work on non-mac platforms

2018-10-12 Thread Jim Ingham via Phabricator via lldb-commits
jingham added a comment.

We do compose the decorators in a bunch of places (like Shafik's usage here).  
That will work more naturally if the categories that the decorators assert are 
as decoupled as possible.  So the statement about macos version should only 
skip the test if the os is macos, and make no comment about other os's.  That 
decouples the macos_version test from the oslist test, and allows something 
like the construct in the tests that Shafik wrote, which seems a pretty natural 
way to express "if on macOS, it has to be version > x, otherwise it has to be 
clang > y".


Repository:
  rLLDB LLDB

https://reviews.llvm.org/D53208



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


Re: [Lldb-commits] [lldb] r344409 - Resubmit "Add SymbolFileNativePDB plugin."

2018-10-12 Thread Jason Molenda via lldb-commits


> On Oct 12, 2018, at 12:47 PM, Zachary Turner via lldb-commits 
>  wrote:
> 
> Resubmit "Add SymbolFileNativePDB plugin."
> 
> This was originally reverted due to some test failures on
> Linux.  Those problems turned out to require several additional
> patches to lld and clang in order to fix, which have since been
> submitted.  This patch is resubmitted unchanged.  All tests now
> pass on both Linux and Windows.


The lit test in lit/Modules/lc_build_version.yaml fails on Darwin systems, 
crashing here -

4   lldb-test   0x0001008ebdab 
llvm::Error::fatalUncheckedError() const + 139
5   lldb-test   0x00010084b307 
llvm::Error::assertIsChecked() + 87 (Error.h:270)
6   lldb-test   0x00010084b279 
llvm::Error::~Error() + 25 (Error.h:230)
7   lldb-test   0x000100844725 
llvm::Error::~Error() + 21 (Error.h:231)
8   lldb-test   0x000101b91e49 
loadPDBFile(std::__1::basic_string, 
std::__1::allocator >, llvm::BumpPtrAllocatorImpl&) + 1193 (SymbolFileNativePDB.cpp:73)
9   lldb-test   0x000101b9024e 
lldb_private::npdb::SymbolFileNativePDB::CalculateAbilities() + 542 
(SymbolFileNativePDB.cpp:187)
10  lldb-test   0x000101060ceb 
lldb_private::SymbolFile::GetAbilities() + 43 (SymbolFile.h:87)
11  lldb-test   0x0001010607fc 
lldb_private::SymbolFile::FindPlugin(lldb_private::ObjectFile*) + 764 
(SymbolFile.cpp:58)


Where the loadPDBFile line 73 is 


59  static std::unique_ptr loadPDBFile(std::string PdbPath,
60  llvm::BumpPtrAllocator 
&Allocator) {
61llvm::ErrorOr> ErrorOrBuffer =
62llvm::MemoryBuffer::getFile(PdbPath, /*FileSize=*/-1,
63/*RequiresNullTerminator=*/false);
64if (!ErrorOrBuffer)
65  return nullptr;
66std::unique_ptr Buffer = 
std::move(*ErrorOrBuffer);
67  
68llvm::StringRef Path = Buffer->getBufferIdentifier();
69auto Stream = llvm::make_unique(
70std::move(Buffer), llvm::support::little);
71  
72auto File = llvm::make_unique(Path, std::move(Stream), 
Allocator);
73if (auto EC = File->parseFileHeaders())
74  return nullptr;
75if (auto EC = File->parseStreamData())


I'm not sure why this wouldn't fail on a linux/windows system.  The point of 
the .yaml lit tests was that it is host independent?


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


Re: [Lldb-commits] [lldb] r344409 - Resubmit "Add SymbolFileNativePDB plugin."

2018-10-12 Thread Jason Molenda via lldb-commits
Ah, mystery solved.  The lit test specifies REQUIRES Darwin.  

> On Oct 12, 2018, at 3:22 PM, Jason Molenda  wrote:
> 
> 
> 
>> On Oct 12, 2018, at 12:47 PM, Zachary Turner via lldb-commits 
>>  wrote:
>> 
>> Resubmit "Add SymbolFileNativePDB plugin."
>> 
>> This was originally reverted due to some test failures on
>> Linux.  Those problems turned out to require several additional
>> patches to lld and clang in order to fix, which have since been
>> submitted.  This patch is resubmitted unchanged.  All tests now
>> pass on both Linux and Windows.
> 
> 
> The lit test in lit/Modules/lc_build_version.yaml fails on Darwin systems, 
> crashing here -
> 
> 4   lldb-test 0x0001008ebdab 
> llvm::Error::fatalUncheckedError() const + 139
> 5   lldb-test 0x00010084b307 
> llvm::Error::assertIsChecked() + 87 (Error.h:270)
> 6   lldb-test 0x00010084b279 
> llvm::Error::~Error() + 25 (Error.h:230)
> 7   lldb-test 0x000100844725 
> llvm::Error::~Error() + 21 (Error.h:231)
> 8   lldb-test 0x000101b91e49 
> loadPDBFile(std::__1::basic_string, 
> std::__1::allocator >, 
> llvm::BumpPtrAllocatorImpl&) + 1193 
> (SymbolFileNativePDB.cpp:73)
> 9   lldb-test 0x000101b9024e 
> lldb_private::npdb::SymbolFileNativePDB::CalculateAbilities() + 542 
> (SymbolFileNativePDB.cpp:187)
> 10  lldb-test 0x000101060ceb 
> lldb_private::SymbolFile::GetAbilities() + 43 (SymbolFile.h:87)
> 11  lldb-test 0x0001010607fc 
> lldb_private::SymbolFile::FindPlugin(lldb_private::ObjectFile*) + 764 
> (SymbolFile.cpp:58)
> 
> 
> Where the loadPDBFile line 73 is 
> 
> 
>59  static std::unique_ptr loadPDBFile(std::string PdbPath,
>60  llvm::BumpPtrAllocator 
> &Allocator) {
>61llvm::ErrorOr> ErrorOrBuffer =
>62llvm::MemoryBuffer::getFile(PdbPath, /*FileSize=*/-1,
>63/*RequiresNullTerminator=*/false);
>64if (!ErrorOrBuffer)
>65  return nullptr;
>66std::unique_ptr Buffer = 
> std::move(*ErrorOrBuffer);
>67  
>68llvm::StringRef Path = Buffer->getBufferIdentifier();
>69auto Stream = llvm::make_unique(
>70std::move(Buffer), llvm::support::little);
>71  
>72auto File = llvm::make_unique(Path, std::move(Stream), 
> Allocator);
>73if (auto EC = File->parseFileHeaders())
>74  return nullptr;
>75if (auto EC = File->parseStreamData())
> 
> 
> I'm not sure why this wouldn't fail on a linux/windows system.  The point of 
> the .yaml lit tests was that it is host independent?
> 
> 
> J

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


Re: [Lldb-commits] [lldb] r344409 - Resubmit "Add SymbolFileNativePDB plugin."

2018-10-12 Thread Zachary Turner via lldb-commits
I think we just need to add an llvm::consumeError(EC); on both of those
lines before they return failure.  Sorry for missing this.

On Fri, Oct 12, 2018 at 3:27 PM Jason Molenda  wrote:

> Ah, mystery solved.  The lit test specifies REQUIRES Darwin.
>
> > On Oct 12, 2018, at 3:22 PM, Jason Molenda  wrote:
> >
> >
> >
> >> On Oct 12, 2018, at 12:47 PM, Zachary Turner via lldb-commits <
> lldb-commits@lists.llvm.org> wrote:
> >>
> >> Resubmit "Add SymbolFileNativePDB plugin."
> >>
> >> This was originally reverted due to some test failures on
> >> Linux.  Those problems turned out to require several additional
> >> patches to lld and clang in order to fix, which have since been
> >> submitted.  This patch is resubmitted unchanged.  All tests now
> >> pass on both Linux and Windows.
> >
> >
> > The lit test in lit/Modules/lc_build_version.yaml fails on Darwin
> systems, crashing here -
> >
> > 4   lldb-test 0x0001008ebdab
> llvm::Error::fatalUncheckedError() const + 139
> > 5   lldb-test 0x00010084b307
> llvm::Error::assertIsChecked() + 87 (Error.h:270)
> > 6   lldb-test 0x00010084b279
> llvm::Error::~Error() + 25 (Error.h:230)
> > 7   lldb-test 0x000100844725
> llvm::Error::~Error() + 21 (Error.h:231)
> > 8   lldb-test 0x000101b91e49
> loadPDBFile(std::__1::basic_string,
> std::__1::allocator >,
> llvm::BumpPtrAllocatorImpl&) + 1193
> (SymbolFileNativePDB.cpp:73)
> > 9   lldb-test 0x000101b9024e
> lldb_private::npdb::SymbolFileNativePDB::CalculateAbilities() + 542
> (SymbolFileNativePDB.cpp:187)
> > 10  lldb-test 0x000101060ceb
> lldb_private::SymbolFile::GetAbilities() + 43 (SymbolFile.h:87)
> > 11  lldb-test 0x0001010607fc
> lldb_private::SymbolFile::FindPlugin(lldb_private::ObjectFile*) + 764
> (SymbolFile.cpp:58)
> >
> >
> > Where the loadPDBFile line 73 is
> >
> >
> >59  static std::unique_ptr loadPDBFile(std::string PdbPath,
> >60
> llvm::BumpPtrAllocator &Allocator) {
> >61llvm::ErrorOr>
> ErrorOrBuffer =
> >62llvm::MemoryBuffer::getFile(PdbPath, /*FileSize=*/-1,
> >63
> /*RequiresNullTerminator=*/false);
> >64if (!ErrorOrBuffer)
> >65  return nullptr;
> >66std::unique_ptr Buffer =
> std::move(*ErrorOrBuffer);
> >67
> >68llvm::StringRef Path = Buffer->getBufferIdentifier();
> >69auto Stream = llvm::make_unique(
> >70std::move(Buffer), llvm::support::little);
> >71
> >72auto File = llvm::make_unique(Path, std::move(Stream),
> Allocator);
> >73if (auto EC = File->parseFileHeaders())
> >74  return nullptr;
> >75if (auto EC = File->parseStreamData())
> >
> >
> > I'm not sure why this wouldn't fail on a linux/windows system.  The
> point of the .yaml lit tests was that it is host independent?
> >
> >
> > J
>
>
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


Re: [Lldb-commits] [lldb] r344409 - Resubmit "Add SymbolFileNativePDB plugin."

2018-10-12 Thread Zachary Turner via lldb-commits
It's strange though, I wonder how it's even getting to this code path.  If
it makes it this far we've already confirmed that whatever the input is,
it's an actual PDB file.  So I don't know why it would fail to parse.

On Fri, Oct 12, 2018 at 3:29 PM Zachary Turner  wrote:

> I think we just need to add an llvm::consumeError(EC); on both of those
> lines before they return failure.  Sorry for missing this.
>
> On Fri, Oct 12, 2018 at 3:27 PM Jason Molenda  wrote:
>
>> Ah, mystery solved.  The lit test specifies REQUIRES Darwin.
>>
>> > On Oct 12, 2018, at 3:22 PM, Jason Molenda  wrote:
>> >
>> >
>> >
>> >> On Oct 12, 2018, at 12:47 PM, Zachary Turner via lldb-commits <
>> lldb-commits@lists.llvm.org> wrote:
>> >>
>> >> Resubmit "Add SymbolFileNativePDB plugin."
>> >>
>> >> This was originally reverted due to some test failures on
>> >> Linux.  Those problems turned out to require several additional
>> >> patches to lld and clang in order to fix, which have since been
>> >> submitted.  This patch is resubmitted unchanged.  All tests now
>> >> pass on both Linux and Windows.
>> >
>> >
>> > The lit test in lit/Modules/lc_build_version.yaml fails on Darwin
>> systems, crashing here -
>> >
>> > 4   lldb-test 0x0001008ebdab
>> llvm::Error::fatalUncheckedError() const + 139
>> > 5   lldb-test 0x00010084b307
>> llvm::Error::assertIsChecked() + 87 (Error.h:270)
>> > 6   lldb-test 0x00010084b279
>> llvm::Error::~Error() + 25 (Error.h:230)
>> > 7   lldb-test 0x000100844725
>> llvm::Error::~Error() + 21 (Error.h:231)
>> > 8   lldb-test 0x000101b91e49
>> loadPDBFile(std::__1::basic_string,
>> std::__1::allocator >,
>> llvm::BumpPtrAllocatorImpl&) + 1193
>> (SymbolFileNativePDB.cpp:73)
>> > 9   lldb-test 0x000101b9024e
>> lldb_private::npdb::SymbolFileNativePDB::CalculateAbilities() + 542
>> (SymbolFileNativePDB.cpp:187)
>> > 10  lldb-test 0x000101060ceb
>> lldb_private::SymbolFile::GetAbilities() + 43 (SymbolFile.h:87)
>> > 11  lldb-test 0x0001010607fc
>> lldb_private::SymbolFile::FindPlugin(lldb_private::ObjectFile*) + 764
>> (SymbolFile.cpp:58)
>> >
>> >
>> > Where the loadPDBFile line 73 is
>> >
>> >
>> >59  static std::unique_ptr loadPDBFile(std::string PdbPath,
>> >60
>> llvm::BumpPtrAllocator &Allocator) {
>> >61llvm::ErrorOr>
>> ErrorOrBuffer =
>> >62llvm::MemoryBuffer::getFile(PdbPath, /*FileSize=*/-1,
>> >63
>> /*RequiresNullTerminator=*/false);
>> >64if (!ErrorOrBuffer)
>> >65  return nullptr;
>> >66std::unique_ptr Buffer =
>> std::move(*ErrorOrBuffer);
>> >67
>> >68llvm::StringRef Path = Buffer->getBufferIdentifier();
>> >69auto Stream = llvm::make_unique(
>> >70std::move(Buffer), llvm::support::little);
>> >71
>> >72auto File = llvm::make_unique(Path,
>> std::move(Stream), Allocator);
>> >73if (auto EC = File->parseFileHeaders())
>> >74  return nullptr;
>> >75if (auto EC = File->parseStreamData())
>> >
>> >
>> > I'm not sure why this wouldn't fail on a linux/windows system.  The
>> point of the .yaml lit tests was that it is host independent?
>> >
>> >
>> > J
>>
>>
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


Re: [Lldb-commits] [lldb] r344409 - Resubmit "Add SymbolFileNativePDB plugin."

2018-10-12 Thread Jason Molenda via lldb-commits
Adrian suggests that parseFileHeaders is returning an error and that needs to 
be cleared?


> On Oct 12, 2018, at 3:27 PM, Jason Molenda  wrote:
> 
> Ah, mystery solved.  The lit test specifies REQUIRES Darwin.  
> 
>> On Oct 12, 2018, at 3:22 PM, Jason Molenda  wrote:
>> 
>> 
>> 
>>> On Oct 12, 2018, at 12:47 PM, Zachary Turner via lldb-commits 
>>>  wrote:
>>> 
>>> Resubmit "Add SymbolFileNativePDB plugin."
>>> 
>>> This was originally reverted due to some test failures on
>>> Linux.  Those problems turned out to require several additional
>>> patches to lld and clang in order to fix, which have since been
>>> submitted.  This patch is resubmitted unchanged.  All tests now
>>> pass on both Linux and Windows.
>> 
>> 
>> The lit test in lit/Modules/lc_build_version.yaml fails on Darwin systems, 
>> crashing here -
>> 
>> 4   lldb-test0x0001008ebdab 
>> llvm::Error::fatalUncheckedError() const + 139
>> 5   lldb-test0x00010084b307 
>> llvm::Error::assertIsChecked() + 87 (Error.h:270)
>> 6   lldb-test0x00010084b279 
>> llvm::Error::~Error() + 25 (Error.h:230)
>> 7   lldb-test0x000100844725 
>> llvm::Error::~Error() + 21 (Error.h:231)
>> 8   lldb-test0x000101b91e49 
>> loadPDBFile(std::__1::basic_string, 
>> std::__1::allocator >, 
>> llvm::BumpPtrAllocatorImpl&) + 1193 
>> (SymbolFileNativePDB.cpp:73)
>> 9   lldb-test0x000101b9024e 
>> lldb_private::npdb::SymbolFileNativePDB::CalculateAbilities() + 542 
>> (SymbolFileNativePDB.cpp:187)
>> 10  lldb-test0x000101060ceb 
>> lldb_private::SymbolFile::GetAbilities() + 43 (SymbolFile.h:87)
>> 11  lldb-test0x0001010607fc 
>> lldb_private::SymbolFile::FindPlugin(lldb_private::ObjectFile*) + 764 
>> (SymbolFile.cpp:58)
>> 
>> 
>> Where the loadPDBFile line 73 is 
>> 
>> 
>>   59  static std::unique_ptr loadPDBFile(std::string PdbPath,
>>   60  llvm::BumpPtrAllocator 
>> &Allocator) {
>>   61llvm::ErrorOr> ErrorOrBuffer =
>>   62llvm::MemoryBuffer::getFile(PdbPath, /*FileSize=*/-1,
>>   63/*RequiresNullTerminator=*/false);
>>   64if (!ErrorOrBuffer)
>>   65  return nullptr;
>>   66std::unique_ptr Buffer = 
>> std::move(*ErrorOrBuffer);
>>   67  
>>   68llvm::StringRef Path = Buffer->getBufferIdentifier();
>>   69auto Stream = llvm::make_unique(
>>   70std::move(Buffer), llvm::support::little);
>>   71  
>>   72auto File = llvm::make_unique(Path, std::move(Stream), 
>> Allocator);
>>   73if (auto EC = File->parseFileHeaders())
>>   74  return nullptr;
>>   75if (auto EC = File->parseStreamData())
>> 
>> 
>> I'm not sure why this wouldn't fail on a linux/windows system.  The point of 
>> the .yaml lit tests was that it is host independent?
>> 
>> 
>> J
> 

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


Re: [Lldb-commits] [lldb] r344409 - Resubmit "Add SymbolFileNativePDB plugin."

2018-10-12 Thread Zachary Turner via lldb-commits
Yea that part is clear, I just wonder what it's trying to parse.  It sounds
like an actual PDB file, because otherwise it shouldn't have made it that
far in the code.  But if it's an actual PDB file, it shouldn't be failing.

Anyway, the code definitely has a bug in that it doesn't correctly handle
failure, it's just strange that it's failing at all.  I'm about to check in
a fix to better handle failure.

On Fri, Oct 12, 2018 at 3:51 PM Jason Molenda  wrote:

> Adrian suggests that parseFileHeaders is returning an error and that needs
> to be cleared?
>
>
> > On Oct 12, 2018, at 3:27 PM, Jason Molenda  wrote:
> >
> > Ah, mystery solved.  The lit test specifies REQUIRES Darwin.
> >
> >> On Oct 12, 2018, at 3:22 PM, Jason Molenda  wrote:
> >>
> >>
> >>
> >>> On Oct 12, 2018, at 12:47 PM, Zachary Turner via lldb-commits <
> lldb-commits@lists.llvm.org> wrote:
> >>>
> >>> Resubmit "Add SymbolFileNativePDB plugin."
> >>>
> >>> This was originally reverted due to some test failures on
> >>> Linux.  Those problems turned out to require several additional
> >>> patches to lld and clang in order to fix, which have since been
> >>> submitted.  This patch is resubmitted unchanged.  All tests now
> >>> pass on both Linux and Windows.
> >>
> >>
> >> The lit test in lit/Modules/lc_build_version.yaml fails on Darwin
> systems, crashing here -
> >>
> >> 4   lldb-test0x0001008ebdab
> llvm::Error::fatalUncheckedError() const + 139
> >> 5   lldb-test0x00010084b307
> llvm::Error::assertIsChecked() + 87 (Error.h:270)
> >> 6   lldb-test0x00010084b279
> llvm::Error::~Error() + 25 (Error.h:230)
> >> 7   lldb-test0x000100844725
> llvm::Error::~Error() + 21 (Error.h:231)
> >> 8   lldb-test0x000101b91e49
> loadPDBFile(std::__1::basic_string,
> std::__1::allocator >,
> llvm::BumpPtrAllocatorImpl&) + 1193
> (SymbolFileNativePDB.cpp:73)
> >> 9   lldb-test0x000101b9024e
> lldb_private::npdb::SymbolFileNativePDB::CalculateAbilities() + 542
> (SymbolFileNativePDB.cpp:187)
> >> 10  lldb-test0x000101060ceb
> lldb_private::SymbolFile::GetAbilities() + 43 (SymbolFile.h:87)
> >> 11  lldb-test0x0001010607fc
> lldb_private::SymbolFile::FindPlugin(lldb_private::ObjectFile*) + 764
> (SymbolFile.cpp:58)
> >>
> >>
> >> Where the loadPDBFile line 73 is
> >>
> >>
> >>   59  static std::unique_ptr loadPDBFile(std::string PdbPath,
> >>   60
> llvm::BumpPtrAllocator &Allocator) {
> >>   61llvm::ErrorOr>
> ErrorOrBuffer =
> >>   62llvm::MemoryBuffer::getFile(PdbPath, /*FileSize=*/-1,
> >>   63
> /*RequiresNullTerminator=*/false);
> >>   64if (!ErrorOrBuffer)
> >>   65  return nullptr;
> >>   66std::unique_ptr Buffer =
> std::move(*ErrorOrBuffer);
> >>   67
> >>   68llvm::StringRef Path = Buffer->getBufferIdentifier();
> >>   69auto Stream = llvm::make_unique(
> >>   70std::move(Buffer), llvm::support::little);
> >>   71
> >>   72auto File = llvm::make_unique(Path, std::move(Stream),
> Allocator);
> >>   73if (auto EC = File->parseFileHeaders())
> >>   74  return nullptr;
> >>   75if (auto EC = File->parseStreamData())
> >>
> >>
> >> I'm not sure why this wouldn't fail on a linux/windows system.  The
> point of the .yaml lit tests was that it is host independent?
> >>
> >>
> >> J
> >
>
>
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D53208: [lldbsuite] Fix the mac version decorator to work on non-mac platforms

2018-10-12 Thread Stella Stamenova via Phabricator via lldb-commits
stella.stamenova updated this revision to Diff 169509.

Repository:
  rLLDB LLDB

https://reviews.llvm.org/D53208

Files:
  packages/Python/lldbsuite/test/decorators.py


Index: packages/Python/lldbsuite/test/decorators.py
===
--- packages/Python/lldbsuite/test/decorators.py
+++ packages/Python/lldbsuite/test/decorators.py
@@ -192,10 +192,10 @@
 py_version is None) or _check_expected_version(
 py_version[0], py_version[1], sys.version_info)
 skip_for_macos_version = (macos_version is None) or (
-_check_expected_version(
+(platform.mac_ver()[0] != "") and (_check_expected_version(
 macos_version[0],
 macos_version[1],
-platform.mac_ver()[0]))
+platform.mac_ver()[0])))
 
 # For the test to be skipped, all specified (e.g. not None) parameters 
must be True.
 # An unspecified parameter means "any", so those are marked skip by 
default.  And we skip


Index: packages/Python/lldbsuite/test/decorators.py
===
--- packages/Python/lldbsuite/test/decorators.py
+++ packages/Python/lldbsuite/test/decorators.py
@@ -192,10 +192,10 @@
 py_version is None) or _check_expected_version(
 py_version[0], py_version[1], sys.version_info)
 skip_for_macos_version = (macos_version is None) or (
-_check_expected_version(
+(platform.mac_ver()[0] != "") and (_check_expected_version(
 macos_version[0],
 macos_version[1],
-platform.mac_ver()[0]))
+platform.mac_ver()[0])))
 
 # For the test to be skipped, all specified (e.g. not None) parameters must be True.
 # An unspecified parameter means "any", so those are marked skip by default.  And we skip
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] r344429 - Try to fix some failures on MacOSX with the NativePDB patch.

2018-10-12 Thread Zachary Turner via lldb-commits
Author: zturner
Date: Fri Oct 12 15:57:40 2018
New Revision: 344429

URL: http://llvm.org/viewvc/llvm-project?rev=344429&view=rev
Log:
Try to fix some failures on MacOSX with the NativePDB patch.

This adds -- before any filenames, so that /U doesn't get interpreted
as a command line.

It also adds better error checking, so that we don't get assertions
on the failure path when a file fails to parse as a PDB.

Modified:
lldb/trunk/lit/SymbolFile/NativePDB/disassembly.cpp
lldb/trunk/lit/SymbolFile/NativePDB/simple-breakpoints.cpp
lldb/trunk/lit/SymbolFile/NativePDB/source-list.cpp
lldb/trunk/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp

Modified: lldb/trunk/lit/SymbolFile/NativePDB/disassembly.cpp
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/lit/SymbolFile/NativePDB/disassembly.cpp?rev=344429&r1=344428&r2=344429&view=diff
==
--- lldb/trunk/lit/SymbolFile/NativePDB/disassembly.cpp (original)
+++ lldb/trunk/lit/SymbolFile/NativePDB/disassembly.cpp Fri Oct 12 15:57:40 2018
@@ -1,8 +1,8 @@
 // clang-format off
 
 // Test that we can show disassembly and source.
-// RUN: clang-cl /Z7 /GS- /GR- /c %s /Fo%t.obj
-// RUN: lld-link /DEBUG /nodefaultlib /entry:main /OUT:%t.exe /PDB:%t.pdb 
%t.obj
+// RUN: clang-cl /Z7 /GS- /GR- /c /Fo%t.obj -- %s
+// RUN: lld-link /DEBUG /nodefaultlib /entry:main /OUT:%t.exe /PDB:%t.pdb -- 
%t.obj
 // RUN: env LLDB_USE_NATIVE_PDB_READER=1 lldb -f %t.exe -s \
 // RUN: %p/Inputs/disassembly.lldbinit | FileCheck %s
 

Modified: lldb/trunk/lit/SymbolFile/NativePDB/simple-breakpoints.cpp
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/lit/SymbolFile/NativePDB/simple-breakpoints.cpp?rev=344429&r1=344428&r2=344429&view=diff
==
--- lldb/trunk/lit/SymbolFile/NativePDB/simple-breakpoints.cpp (original)
+++ lldb/trunk/lit/SymbolFile/NativePDB/simple-breakpoints.cpp Fri Oct 12 
15:57:40 2018
@@ -1,8 +1,8 @@
 // clang-format off
 
 // Test that we can set simple breakpoints using PDB on any platform.
-// RUN: clang-cl /Z7 /GS- /GR- /c %s /Fo%t.obj
-// RUN: lld-link /DEBUG /nodefaultlib /entry:main /OUT:%t.exe /PDB:%t.pdb 
%t.obj
+// RUN: clang-cl /Z7 /GS- /GR- /c /Fo%t.obj -- %s 
+// RUN: lld-link /DEBUG /nodefaultlib /entry:main /OUT:%t.exe /PDB:%t.pdb -- 
%t.obj
 // RUN: env LLDB_USE_NATIVE_PDB_READER=1 lldb -f %t.exe -s \
 // RUN: %p/Inputs/breakpoints.lldbinit | FileCheck %s
 

Modified: lldb/trunk/lit/SymbolFile/NativePDB/source-list.cpp
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/lit/SymbolFile/NativePDB/source-list.cpp?rev=344429&r1=344428&r2=344429&view=diff
==
--- lldb/trunk/lit/SymbolFile/NativePDB/source-list.cpp (original)
+++ lldb/trunk/lit/SymbolFile/NativePDB/source-list.cpp Fri Oct 12 15:57:40 2018
@@ -1,8 +1,8 @@
 // clang-format off
 
 // Test that we can set display source of functions.
-// RUN: clang-cl /Z7 /GS- /GR- /c %s /Fo%t.obj
-// RUN: lld-link /DEBUG /nodefaultlib /entry:main /OUT:%t.exe /PDB:%t.pdb 
%t.obj
+// RUN: clang-cl /Z7 /GS- /GR- /c /Fo%t.obj -- %s 
+// RUN: lld-link /DEBUG /nodefaultlib /entry:main /OUT:%t.exe /PDB:%t.pdb -- 
%t.obj
 // RUN: env LLDB_USE_NATIVE_PDB_READER=1 lldb -f %t.exe -s \
 // RUN: %p/Inputs/source-list.lldbinit | FileCheck %s
 

Modified: lldb/trunk/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp?rev=344429&r1=344428&r2=344429&view=diff
==
--- lldb/trunk/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp 
(original)
+++ lldb/trunk/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp Fri 
Oct 12 15:57:40 2018
@@ -70,10 +70,14 @@ static std::unique_ptr loadPDBF
   std::move(Buffer), llvm::support::little);
 
   auto File = llvm::make_unique(Path, std::move(Stream), Allocator);
-  if (auto EC = File->parseFileHeaders())
+  if (auto EC = File->parseFileHeaders()) {
+llvm::consumeError(std::move(EC));
 return nullptr;
-  if (auto EC = File->parseStreamData())
+  }
+  if (auto EC = File->parseStreamData()) {
+llvm::consumeError(std::move(EC));
 return nullptr;
+  }
 
   return File;
 }
@@ -109,6 +113,9 @@ loadMatchingPDBFile(std::string exe_path
   if (ec || magic != llvm::file_magic::pdb)
 return nullptr;
   std::unique_ptr pdb = loadPDBFile(pdb_file, allocator);
+  if (!pdb)
+return nullptr;
+
   auto expected_info = pdb->getPDBInfoStream();
   if (!expected_info) {
 llvm::consumeError(expected_info.takeError());


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


Re: [Lldb-commits] [lldb] r344409 - Resubmit "Add SymbolFileNativePDB plugin."

2018-10-12 Thread Zachary Turner via lldb-commits
Candidate fix submitted in r344429.  Thanks for reporting.

On Fri, Oct 12, 2018 at 3:54 PM Zachary Turner  wrote:

> Yea that part is clear, I just wonder what it's trying to parse.  It
> sounds like an actual PDB file, because otherwise it shouldn't have made it
> that far in the code.  But if it's an actual PDB file, it shouldn't be
> failing.
>
> Anyway, the code definitely has a bug in that it doesn't correctly handle
> failure, it's just strange that it's failing at all.  I'm about to check in
> a fix to better handle failure.
>
> On Fri, Oct 12, 2018 at 3:51 PM Jason Molenda  wrote:
>
>> Adrian suggests that parseFileHeaders is returning an error and that
>> needs to be cleared?
>>
>>
>> > On Oct 12, 2018, at 3:27 PM, Jason Molenda  wrote:
>> >
>> > Ah, mystery solved.  The lit test specifies REQUIRES Darwin.
>> >
>> >> On Oct 12, 2018, at 3:22 PM, Jason Molenda  wrote:
>> >>
>> >>
>> >>
>> >>> On Oct 12, 2018, at 12:47 PM, Zachary Turner via lldb-commits <
>> lldb-commits@lists.llvm.org> wrote:
>> >>>
>> >>> Resubmit "Add SymbolFileNativePDB plugin."
>> >>>
>> >>> This was originally reverted due to some test failures on
>> >>> Linux.  Those problems turned out to require several additional
>> >>> patches to lld and clang in order to fix, which have since been
>> >>> submitted.  This patch is resubmitted unchanged.  All tests now
>> >>> pass on both Linux and Windows.
>> >>
>> >>
>> >> The lit test in lit/Modules/lc_build_version.yaml fails on Darwin
>> systems, crashing here -
>> >>
>> >> 4   lldb-test0x0001008ebdab
>> llvm::Error::fatalUncheckedError() const + 139
>> >> 5   lldb-test0x00010084b307
>> llvm::Error::assertIsChecked() + 87 (Error.h:270)
>> >> 6   lldb-test0x00010084b279
>> llvm::Error::~Error() + 25 (Error.h:230)
>> >> 7   lldb-test0x000100844725
>> llvm::Error::~Error() + 21 (Error.h:231)
>> >> 8   lldb-test0x000101b91e49
>> loadPDBFile(std::__1::basic_string,
>> std::__1::allocator >,
>> llvm::BumpPtrAllocatorImpl&) + 1193
>> (SymbolFileNativePDB.cpp:73)
>> >> 9   lldb-test0x000101b9024e
>> lldb_private::npdb::SymbolFileNativePDB::CalculateAbilities() + 542
>> (SymbolFileNativePDB.cpp:187)
>> >> 10  lldb-test0x000101060ceb
>> lldb_private::SymbolFile::GetAbilities() + 43 (SymbolFile.h:87)
>> >> 11  lldb-test0x0001010607fc
>> lldb_private::SymbolFile::FindPlugin(lldb_private::ObjectFile*) + 764
>> (SymbolFile.cpp:58)
>> >>
>> >>
>> >> Where the loadPDBFile line 73 is
>> >>
>> >>
>> >>   59  static std::unique_ptr loadPDBFile(std::string PdbPath,
>> >>   60
>> llvm::BumpPtrAllocator &Allocator) {
>> >>   61llvm::ErrorOr>
>> ErrorOrBuffer =
>> >>   62llvm::MemoryBuffer::getFile(PdbPath, /*FileSize=*/-1,
>> >>   63
>> /*RequiresNullTerminator=*/false);
>> >>   64if (!ErrorOrBuffer)
>> >>   65  return nullptr;
>> >>   66std::unique_ptr Buffer =
>> std::move(*ErrorOrBuffer);
>> >>   67
>> >>   68llvm::StringRef Path = Buffer->getBufferIdentifier();
>> >>   69auto Stream = llvm::make_unique(
>> >>   70std::move(Buffer), llvm::support::little);
>> >>   71
>> >>   72auto File = llvm::make_unique(Path,
>> std::move(Stream), Allocator);
>> >>   73if (auto EC = File->parseFileHeaders())
>> >>   74  return nullptr;
>> >>   75if (auto EC = File->parseStreamData())
>> >>
>> >>
>> >> I'm not sure why this wouldn't fail on a linux/windows system.  The
>> point of the .yaml lit tests was that it is host independent?
>> >>
>> >>
>> >> J
>> >
>>
>>
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] r344431 - Add REQUIRES: lld to SymbolFileNativePDB tests.

2018-10-12 Thread Zachary Turner via lldb-commits
Author: zturner
Date: Fri Oct 12 16:07:32 2018
New Revision: 344431

URL: http://llvm.org/viewvc/llvm-project?rev=344431&view=rev
Log:
Add REQUIRES: lld to SymbolFileNativePDB tests.

Modified:
lldb/trunk/lit/SymbolFile/NativePDB/disassembly.cpp
lldb/trunk/lit/SymbolFile/NativePDB/simple-breakpoints.cpp
lldb/trunk/lit/SymbolFile/NativePDB/source-list.cpp

Modified: lldb/trunk/lit/SymbolFile/NativePDB/disassembly.cpp
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/lit/SymbolFile/NativePDB/disassembly.cpp?rev=344431&r1=344430&r2=344431&view=diff
==
--- lldb/trunk/lit/SymbolFile/NativePDB/disassembly.cpp (original)
+++ lldb/trunk/lit/SymbolFile/NativePDB/disassembly.cpp Fri Oct 12 16:07:32 2018
@@ -1,4 +1,5 @@
 // clang-format off
+// REQUIRES: lld
 
 // Test that we can show disassembly and source.
 // RUN: clang-cl /Z7 /GS- /GR- /c /Fo%t.obj -- %s
@@ -18,21 +19,21 @@ int main(int argc, char **argv) {
 
 
 // CHECK:  (lldb) disassemble --flavor=intel -m -n main
-// CHECK: 12   int foo() { return 42; }
-// CHECK-NEXT:13
-// CHECK-NEXT: ** 14   int main(int argc, char **argv) {
+// CHECK: 13   int foo() { return 42; }
+// CHECK-NEXT:14
+// CHECK-NEXT: ** 15   int main(int argc, char **argv) {
 // CHECK:  disassembly.cpp.tmp.exe`main:
 // CHECK-NEXT: disassembly.cpp.tmp.exe[{{.*}}] <+0>:  subrsp, 0x38
 // CHECK-NEXT: disassembly.cpp.tmp.exe[{{.*}}] <+4>:  movdword ptr [rsp + 
0x34], 0x0
 // CHECK-NEXT: disassembly.cpp.tmp.exe[{{.*}}] <+12>: movqword ptr [rsp + 
0x28], rdx
 // CHECK-NEXT: disassembly.cpp.tmp.exe[{{.*}}] <+17>: movdword ptr [rsp + 
0x24], ecx
-// CHECK:  ** 15 foo();
-// CHECK:  disassembly.cpp.tmp.exe[{{.*}}] <+21>: call   {{.*}}
   ; foo at disassembly.cpp:12
+// CHECK:  ** 16 foo();
+// CHECK:  disassembly.cpp.tmp.exe[{{.*}}] <+21>: call   {{.*}}
   ; foo at disassembly.cpp:13
 // CHECK-NEXT: disassembly.cpp.tmp.exe[{{.*}}] <+26>: xorecx, ecx
 // CHECK-NEXT: disassembly.cpp.tmp.exe[{{.*}}] <+28>: movdword ptr [rsp + 
0x20], eax
-// CHECK:  ** 16 return 0;
-// CHECK-NEXT:17   }
-// CHECK-NEXT:18
+// CHECK:  ** 17 return 0;
+// CHECK-NEXT:18   }
+// CHECK-NEXT:19
 // CHECK:  disassembly.cpp.tmp.exe[{{.*}}] <+32>: moveax, ecx
 // CHECK-NEXT: disassembly.cpp.tmp.exe[{{.*}}] <+34>: addrsp, 0x38
 // CHECK-NEXT: disassembly.cpp.tmp.exe[{{.*}}] <+38>: ret

Modified: lldb/trunk/lit/SymbolFile/NativePDB/simple-breakpoints.cpp
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/lit/SymbolFile/NativePDB/simple-breakpoints.cpp?rev=344431&r1=344430&r2=344431&view=diff
==
--- lldb/trunk/lit/SymbolFile/NativePDB/simple-breakpoints.cpp (original)
+++ lldb/trunk/lit/SymbolFile/NativePDB/simple-breakpoints.cpp Fri Oct 12 
16:07:32 2018
@@ -1,4 +1,5 @@
 // clang-format off
+// REQUIRES: lld
 
 // Test that we can set simple breakpoints using PDB on any platform.
 // RUN: clang-cl /Z7 /GS- /GR- /c /Fo%t.obj -- %s 
@@ -37,27 +38,27 @@ int main(int argc, char **argv) {
 // CHECK:  Current executable set to 
'{{.*}}simple-breakpoints.cpp.tmp.exe' (x86_64).
 // CHECK:  (lldb) break set -n main
 // CHECK:  Breakpoint 1: where = simple-breakpoints.cpp.tmp.exe`main + 21
-// CHECK-SAME:   at simple-breakpoints.cpp:30
+// CHECK-SAME:   at simple-breakpoints.cpp:31
 // CHECK:  (lldb) break set -n OvlGlobalFn
 // CHECK:  Breakpoint 2: 3 locations.
 // CHECK:  (lldb) break set -n StaticFn
 // CHECK:  Breakpoint 3: where = simple-breakpoints.cpp.tmp.exe`StaticFn + 
5
-// CHECK-SAME:   at simple-breakpoints.cpp:23
+// CHECK-SAME:   at simple-breakpoints.cpp:24
 // CHECK:  (lldb) break set -n DoesntExist
 // CHECK:  Breakpoint 4: no locations (pending).
 // CHECK:  (lldb) break list
 // CHECK:  Current breakpoints:
 // CHECK:  1: name = 'main', locations = 1
 // CHECK:1.1: where = simple-breakpoints.cpp.tmp.exe`main + 21
-// CHECK-SAME:at simple-breakpoints.cpp:30
+// CHECK-SAME:at simple-breakpoints.cpp:31
 // CHECK:  2: name = 'OvlGlobalFn', locations = 3
 // CHECK:2.1: where = simple-breakpoints.cpp.tmp.exe`OvlGlobalFn + 5
-// CHECK-SAME:at simple-breakpoints.cpp:12
+// CHECK-SAME:at simple-breakpoints.cpp:13
 // CHECK:2.2: where = simple-breakpoints.cpp.tmp.exe`OvlGlobalFn
-// CHECK-SAME:at simple-breakpoints.cpp:15
+// CHECK-SAME:at simple-breakpoints.cpp:16
 // CHECK:2.3: where = simple-breakpoints.cpp.tmp.exe`OvlGlobalFn + 17
-// CHECK-SAME:at simple-breakpoints.cpp:19
+// CHECK-SAME:at simple-breakpoints.cpp:20
 // CHECK:  3: name = 'StaticFn', locat

Re: [Lldb-commits] [lldb] r344429 - Try to fix some failures on MacOSX with the NativePDB patch.

2018-10-12 Thread Jason Molenda via lldb-commits
Yep, thanks!

% bin/lldb-test symbols ../f.obj
Module: ../f.obj
Module ../f.obj
0x7fb795587320:   ObjectFileMachO64, file = '../f.obj', triple = 
x86_64-apple-macosx10.14.0
  SectID Type File Address Perm 
File Off.  File Size  Flags  Section Name
  --  ---   
-- -- -- 
  0x0100 container[0x-0x0001)  ---  
0x 0x 0x f.obj.__PAGEZERO
  0x0200 container[0x0001-0x00011000)  r-x  
0x 0x1000 0x f.obj.__TEXT
  0x0001 code [0x00010fb0-0x00010fb8)  r-x  
0x0fb0 0x0008 0x8400 f.obj.__TEXT.__text
  0x0002 compact-unwind   [0x00010fb8-0x00011000)  r-x  
0x0fb8 0x0048 0x f.obj.__TEXT.__unwind_info
  0x0300 container[0x00011000-0x00012000)  r--  
0x1000 0x0098 0x f.obj.__LINKEDIT
0x7fb7955871b0: SymbolVendor (../f.obj)


> On Oct 12, 2018, at 3:57 PM, Zachary Turner via lldb-commits 
>  wrote:
> 
> Author: zturner
> Date: Fri Oct 12 15:57:40 2018
> New Revision: 344429
> 
> URL: http://llvm.org/viewvc/llvm-project?rev=344429&view=rev
> Log:
> Try to fix some failures on MacOSX with the NativePDB patch.
> 
> This adds -- before any filenames, so that /U doesn't get interpreted
> as a command line.
> 
> It also adds better error checking, so that we don't get assertions
> on the failure path when a file fails to parse as a PDB.
> 
> Modified:
>lldb/trunk/lit/SymbolFile/NativePDB/disassembly.cpp
>lldb/trunk/lit/SymbolFile/NativePDB/simple-breakpoints.cpp
>lldb/trunk/lit/SymbolFile/NativePDB/source-list.cpp
>lldb/trunk/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
> 
> Modified: lldb/trunk/lit/SymbolFile/NativePDB/disassembly.cpp
> URL: 
> http://llvm.org/viewvc/llvm-project/lldb/trunk/lit/SymbolFile/NativePDB/disassembly.cpp?rev=344429&r1=344428&r2=344429&view=diff
> ==
> --- lldb/trunk/lit/SymbolFile/NativePDB/disassembly.cpp (original)
> +++ lldb/trunk/lit/SymbolFile/NativePDB/disassembly.cpp Fri Oct 12 15:57:40 
> 2018
> @@ -1,8 +1,8 @@
> // clang-format off
> 
> // Test that we can show disassembly and source.
> -// RUN: clang-cl /Z7 /GS- /GR- /c %s /Fo%t.obj
> -// RUN: lld-link /DEBUG /nodefaultlib /entry:main /OUT:%t.exe /PDB:%t.pdb 
> %t.obj
> +// RUN: clang-cl /Z7 /GS- /GR- /c /Fo%t.obj -- %s
> +// RUN: lld-link /DEBUG /nodefaultlib /entry:main /OUT:%t.exe /PDB:%t.pdb -- 
> %t.obj
> // RUN: env LLDB_USE_NATIVE_PDB_READER=1 lldb -f %t.exe -s \
> // RUN: %p/Inputs/disassembly.lldbinit | FileCheck %s
> 
> 
> Modified: lldb/trunk/lit/SymbolFile/NativePDB/simple-breakpoints.cpp
> URL: 
> http://llvm.org/viewvc/llvm-project/lldb/trunk/lit/SymbolFile/NativePDB/simple-breakpoints.cpp?rev=344429&r1=344428&r2=344429&view=diff
> ==
> --- lldb/trunk/lit/SymbolFile/NativePDB/simple-breakpoints.cpp (original)
> +++ lldb/trunk/lit/SymbolFile/NativePDB/simple-breakpoints.cpp Fri Oct 12 
> 15:57:40 2018
> @@ -1,8 +1,8 @@
> // clang-format off
> 
> // Test that we can set simple breakpoints using PDB on any platform.
> -// RUN: clang-cl /Z7 /GS- /GR- /c %s /Fo%t.obj
> -// RUN: lld-link /DEBUG /nodefaultlib /entry:main /OUT:%t.exe /PDB:%t.pdb 
> %t.obj
> +// RUN: clang-cl /Z7 /GS- /GR- /c /Fo%t.obj -- %s 
> +// RUN: lld-link /DEBUG /nodefaultlib /entry:main /OUT:%t.exe /PDB:%t.pdb -- 
> %t.obj
> // RUN: env LLDB_USE_NATIVE_PDB_READER=1 lldb -f %t.exe -s \
> // RUN: %p/Inputs/breakpoints.lldbinit | FileCheck %s
> 
> 
> Modified: lldb/trunk/lit/SymbolFile/NativePDB/source-list.cpp
> URL: 
> http://llvm.org/viewvc/llvm-project/lldb/trunk/lit/SymbolFile/NativePDB/source-list.cpp?rev=344429&r1=344428&r2=344429&view=diff
> ==
> --- lldb/trunk/lit/SymbolFile/NativePDB/source-list.cpp (original)
> +++ lldb/trunk/lit/SymbolFile/NativePDB/source-list.cpp Fri Oct 12 15:57:40 
> 2018
> @@ -1,8 +1,8 @@
> // clang-format off
> 
> // Test that we can set display source of functions.
> -// RUN: clang-cl /Z7 /GS- /GR- /c %s /Fo%t.obj
> -// RUN: lld-link /DEBUG /nodefaultlib /entry:main /OUT:%t.exe /PDB:%t.pdb 
> %t.obj
> +// RUN: clang-cl /Z7 /GS- /GR- /c /Fo%t.obj -- %s 
> +// RUN: lld-link /DEBUG /nodefaultlib /entry:main /OUT:%t.exe /PDB:%t.pdb -- 
> %t.obj
> // RUN: env LLDB_USE_NATIVE_PDB_READER=1 lldb -f %t.exe -s \
> // RUN: %p/Inputs/source-list.lldbinit | FileCheck %s
> 
> 
> Modified: 
> lldb/trunk/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
> URL: 
> http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp?rev=344

[Lldb-commits] [PATCH] D53226: [lldbsuite] Disable Test128BitsInteger on Windows

2018-10-12 Thread Stella Stamenova via Phabricator via lldb-commits
stella.stamenova created this revision.
stella.stamenova added reviewers: davide, asmith.
Herald added a subscriber: lldb-commits.

This test is failing on Windows because lldb does not support JIT on Windows.


Repository:
  rLLDB LLDB

https://reviews.llvm.org/D53226

Files:
  
packages/Python/lldbsuite/test/expression_command/rdar44436068/Test128BitsInteger.py


Index: 
packages/Python/lldbsuite/test/expression_command/rdar44436068/Test128BitsInteger.py
===
--- 
packages/Python/lldbsuite/test/expression_command/rdar44436068/Test128BitsInteger.py
+++ 
packages/Python/lldbsuite/test/expression_command/rdar44436068/Test128BitsInteger.py
@@ -1,4 +1,7 @@
 from lldbsuite.test import lldbinline
 from lldbsuite.test import decorators
 
-lldbinline.MakeInlineTest(__file__, globals(), None)
+llldbinline.MakeInlineTest(
+__file__, globals(), [
+decorators.expectedFailureAll(
+oslist=["windows"], bugnumber="llvm.org/pr37656")])


Index: packages/Python/lldbsuite/test/expression_command/rdar44436068/Test128BitsInteger.py
===
--- packages/Python/lldbsuite/test/expression_command/rdar44436068/Test128BitsInteger.py
+++ packages/Python/lldbsuite/test/expression_command/rdar44436068/Test128BitsInteger.py
@@ -1,4 +1,7 @@
 from lldbsuite.test import lldbinline
 from lldbsuite.test import decorators
 
-lldbinline.MakeInlineTest(__file__, globals(), None)
+llldbinline.MakeInlineTest(
+__file__, globals(), [
+decorators.expectedFailureAll(
+oslist=["windows"], bugnumber="llvm.org/pr37656")])
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D53226: [lldbsuite] Disable Test128BitsInteger on Windows

2018-10-12 Thread Stella Stamenova via Phabricator via lldb-commits
stella.stamenova updated this revision to Diff 169515.

https://reviews.llvm.org/D53226

Files:
  
packages/Python/lldbsuite/test/expression_command/rdar44436068/Test128BitsInteger.py


Index: 
packages/Python/lldbsuite/test/expression_command/rdar44436068/Test128BitsInteger.py
===
--- 
packages/Python/lldbsuite/test/expression_command/rdar44436068/Test128BitsInteger.py
+++ 
packages/Python/lldbsuite/test/expression_command/rdar44436068/Test128BitsInteger.py
@@ -1,4 +1,7 @@
 from lldbsuite.test import lldbinline
 from lldbsuite.test import decorators
 
-lldbinline.MakeInlineTest(__file__, globals(), None)
+lldbinline.MakeInlineTest(
+__file__, globals(), [
+decorators.expectedFailureAll(
+oslist=["windows"], bugnumber="llvm.org/pr37656")])


Index: packages/Python/lldbsuite/test/expression_command/rdar44436068/Test128BitsInteger.py
===
--- packages/Python/lldbsuite/test/expression_command/rdar44436068/Test128BitsInteger.py
+++ packages/Python/lldbsuite/test/expression_command/rdar44436068/Test128BitsInteger.py
@@ -1,4 +1,7 @@
 from lldbsuite.test import lldbinline
 from lldbsuite.test import decorators
 
-lldbinline.MakeInlineTest(__file__, globals(), None)
+lldbinline.MakeInlineTest(
+__file__, globals(), [
+decorators.expectedFailureAll(
+oslist=["windows"], bugnumber="llvm.org/pr37656")])
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits