svn commit: r314411 - in vendor/llvm/dist: docs lib/CodeGen test/CodeGen/X86 test/tools/llvm-xray/X86 test/tools/llvm-xray/X86/Inputs tools/llvm-xray

Dimitry Andric dim at FreeBSD.org
Tue Feb 28 21:07:21 UTC 2017


Author: dim
Date: Tue Feb 28 21:07:18 2017
New Revision: 314411
URL: https://svnweb.freebsd.org/changeset/base/314411

Log:
  Vendor import of llvm release_40 branch r296509:
  https://llvm.org/svn/llvm-project/llvm/branches/release_40@296509

Added:
  vendor/llvm/dist/test/CodeGen/X86/pr30284.ll
Modified:
  vendor/llvm/dist/docs/ReleaseNotes.rst
  vendor/llvm/dist/lib/CodeGen/ExecutionDepsFix.cpp
  vendor/llvm/dist/test/tools/llvm-xray/X86/Inputs/simple-xray-instrmap.yaml
  vendor/llvm/dist/test/tools/llvm-xray/X86/account-simple-case.yaml
  vendor/llvm/dist/test/tools/llvm-xray/X86/account-simple-sorting.yaml
  vendor/llvm/dist/test/tools/llvm-xray/X86/convert-roundtrip.yaml
  vendor/llvm/dist/test/tools/llvm-xray/X86/convert-to-yaml.txt
  vendor/llvm/dist/test/tools/llvm-xray/X86/convert-with-debug-syms.txt
  vendor/llvm/dist/test/tools/llvm-xray/X86/convert-with-standalone-instrmap.txt
  vendor/llvm/dist/test/tools/llvm-xray/X86/convert-with-yaml-instrmap.txt
  vendor/llvm/dist/test/tools/llvm-xray/X86/extract-instrmap.ll
  vendor/llvm/dist/tools/llvm-xray/xray-converter.cc
  vendor/llvm/dist/tools/llvm-xray/xray-extract.cc

Modified: vendor/llvm/dist/docs/ReleaseNotes.rst
==============================================================================
--- vendor/llvm/dist/docs/ReleaseNotes.rst	Tue Feb 28 20:51:20 2017	(r314410)
+++ vendor/llvm/dist/docs/ReleaseNotes.rst	Tue Feb 28 21:07:18 2017	(r314411)
@@ -20,6 +20,14 @@ have questions or comments, the `LLVM De
 <http://lists.llvm.org/mailman/listinfo/llvm-dev>`_ is a good place to send
 them.
 
+New Versioning Scheme
+=====================
+Starting with this release, LLVM is using a
+`new versioning scheme <http://blog.llvm.org/2016/12/llvms-new-versioning-scheme.html>`_,
+increasing the major version number with each major release. Stable updates to
+this release will be versioned 4.0.x, and the next major release, six months
+from now, will be version 5.0.0.
+
 Non-comprehensive list of changes in this release
 =================================================
 * Minimum compiler version to build has been raised to GCC 4.8 and VS 2015.
@@ -238,6 +246,34 @@ Most of the work behind the scenes has b
 assembly, and also fixing some assertions we would hit on some well-formed
 inputs.
 
+Changes to the MIPS Target
+-----------------------------
+
+**During this release the MIPS target has:**
+
+* IAS is now enabled by default for Debian mips64el.
+* Added support for the two operand form for many instructions.
+* Added the following macros: unaligned load/store, seq, double word load/store for O32.
+* Improved the parsing of complex memory offset expressions.
+* Enabled the integrated assembler by default for Debian mips64el.
+* Added a generic scheduler based on the interAptiv CPU.
+* Added support for thread local relocations.
+* Added recip, rsqrt, evp, dvp, synci instructions in IAS.
+* Optimized the generation of constants from some cases.
+
+**The following issues have been fixed:**
+
+* Thread local debug information is correctly recorded.
+* MSA intrinsics are now range checked.
+* Fixed an issue with MSA and the no-odd-spreg abi.
+* Fixed some corner cases in handling forbidden slots for MIPSR6.
+* Fixed an issue with jumps not being converted to relative branches for assembly.
+* Fixed the handling of local symbols and jal instruction.
+* N32/N64 no longer have their relocation tables sorted as per their ABIs.
+* Fixed a crash when half-precision floating point conversion MSA intrinsics are used.
+* Fixed several crashes involving FastISel.
+* Corrected the corrected definitions for aui/daui/dahi/dati for MIPSR6.
+
 Changes to the OCaml bindings
 -----------------------------
 

Modified: vendor/llvm/dist/lib/CodeGen/ExecutionDepsFix.cpp
==============================================================================
--- vendor/llvm/dist/lib/CodeGen/ExecutionDepsFix.cpp	Tue Feb 28 20:51:20 2017	(r314410)
+++ vendor/llvm/dist/lib/CodeGen/ExecutionDepsFix.cpp	Tue Feb 28 21:07:18 2017	(r314411)
@@ -707,9 +707,8 @@ void ExeDepsFix::visitSoftInstr(MachineI
 
   // Kill off any remaining uses that don't match available, and build a list of
   // incoming DomainValues that we want to merge.
-  SmallVector<LiveReg, 4> Regs;
-  for (SmallVectorImpl<int>::iterator i=used.begin(), e=used.end(); i!=e; ++i) {
-    int rx = *i;
+  SmallVector<const LiveReg *, 4> Regs;
+  for (int rx : used) {
     assert(LiveRegs && "no space allocated for live registers");
     const LiveReg &LR = LiveRegs[rx];
     // This useless DomainValue could have been missed above.
@@ -718,16 +717,11 @@ void ExeDepsFix::visitSoftInstr(MachineI
       continue;
     }
     // Sorted insertion.
-    bool Inserted = false;
-    for (SmallVectorImpl<LiveReg>::iterator i = Regs.begin(), e = Regs.end();
-           i != e && !Inserted; ++i) {
-      if (LR.Def < i->Def) {
-        Inserted = true;
-        Regs.insert(i, LR);
-      }
-    }
-    if (!Inserted)
-      Regs.push_back(LR);
+    auto I = std::upper_bound(Regs.begin(), Regs.end(), &LR,
+                              [](const LiveReg *LHS, const LiveReg *RHS) {
+                                return LHS->Def < RHS->Def;
+                              });
+    Regs.insert(I, &LR);
   }
 
   // doms are now sorted in order of appearance. Try to merge them all, giving
@@ -735,14 +729,14 @@ void ExeDepsFix::visitSoftInstr(MachineI
   DomainValue *dv = nullptr;
   while (!Regs.empty()) {
     if (!dv) {
-      dv = Regs.pop_back_val().Value;
+      dv = Regs.pop_back_val()->Value;
       // Force the first dv to match the current instruction.
       dv->AvailableDomains = dv->getCommonDomains(available);
       assert(dv->AvailableDomains && "Domain should have been filtered");
       continue;
     }
 
-    DomainValue *Latest = Regs.pop_back_val().Value;
+    DomainValue *Latest = Regs.pop_back_val()->Value;
     // Skip already merged values.
     if (Latest == dv || Latest->Next)
       continue;

Added: vendor/llvm/dist/test/CodeGen/X86/pr30284.ll
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ vendor/llvm/dist/test/CodeGen/X86/pr30284.ll	Tue Feb 28 21:07:18 2017	(r314411)
@@ -0,0 +1,22 @@
+; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
+; RUN: llc < %s -mtriple=i386-unknown-linux-gnu -mattr=avx512dq | FileCheck %s
+
+define void @f_f___un_3C_unf_3E_un_3C_unf_3E_() {
+; CHECK-LABEL: f_f___un_3C_unf_3E_un_3C_unf_3E_:
+; CHECK:       # BB#0:
+; CHECK-NEXT:    vmovapd 0, %zmm0
+; CHECK-NEXT:    vmovapd 64, %zmm1
+; CHECK-NEXT:    vmovapd {{.*#+}} zmm2 = [0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16]
+; CHECK-NEXT:    kshiftrw $8, %k0, %k1
+; CHECK-NEXT:    vorpd %zmm2, %zmm1, %zmm1 {%k1}
+; CHECK-NEXT:    vorpd %zmm2, %zmm0, %zmm0 {%k1}
+; CHECK-NEXT:    vmovapd %zmm0, 0
+; CHECK-NEXT:    vmovapd %zmm1, 64
+; CHECK-NEXT:    retl
+  %a_load22 = load <16 x i64>, <16 x i64>* null, align 1
+  %bitop = or <16 x i64> %a_load22, <i64 68719476736, i64 68719476736, i64 68719476736, i64 68719476736, i64 68719476736, i64 68719476736, i64 68719476736, i64 68719476736, i64 68719476736, i64 68719476736, i64 68719476736, i64 68719476736, i64 68719476736, i64 68719476736, i64 68719476736, i64 68719476736>
+  %v.i = load <16 x i64>, <16 x i64>* null
+  %v1.i41 = select <16 x i1> undef, <16 x i64> %bitop, <16 x i64> %v.i
+  store <16 x i64> %v1.i41, <16 x i64>* null
+  ret void
+}

Modified: vendor/llvm/dist/test/tools/llvm-xray/X86/Inputs/simple-xray-instrmap.yaml
==============================================================================
--- vendor/llvm/dist/test/tools/llvm-xray/X86/Inputs/simple-xray-instrmap.yaml	Tue Feb 28 20:51:20 2017	(r314410)
+++ vendor/llvm/dist/test/tools/llvm-xray/X86/Inputs/simple-xray-instrmap.yaml	Tue Feb 28 21:07:18 2017	(r314411)
@@ -1,14 +1,8 @@
 ---
-- { id: 1, address: 0x000000000041CA40, function: 0x000000000041CA40, kind: function-enter, 
-    always-instrument: true }
-- { id: 1, address: 0x000000000041CA50, function: 0x000000000041CA40, kind: tail-exit, 
-    always-instrument: true }
-- { id: 2, address: 0x000000000041CA70, function: 0x000000000041CA70, kind: function-enter, 
-    always-instrument: true }
-- { id: 2, address: 0x000000000041CA7C, function: 0x000000000041CA70, kind: tail-exit, 
-    always-instrument: true }
-- { id: 3, address: 0x000000000041CAA0, function: 0x000000000041CAA0, kind: function-enter, 
-    always-instrument: true }
-- { id: 3, address: 0x000000000041CAB4, function: 0x000000000041CAA0, kind: function-exit, 
-    always-instrument: true }
+- { id: 1, address: 0x000000000041CA40, function: 0x000000000041CA40, kind: function-enter, always-instrument: true }
+- { id: 1, address: 0x000000000041CA50, function: 0x000000000041CA40, kind: tail-exit, always-instrument: true }
+- { id: 2, address: 0x000000000041CA70, function: 0x000000000041CA70, kind: function-enter, always-instrument: true }
+- { id: 2, address: 0x000000000041CA7C, function: 0x000000000041CA70, kind: tail-exit, always-instrument: true }
+- { id: 3, address: 0x000000000041CAA0, function: 0x000000000041CAA0, kind: function-enter, always-instrument: true }
+- { id: 3, address: 0x000000000041CAB4, function: 0x000000000041CAA0, kind: function-exit, always-instrument: true }
 ...

Modified: vendor/llvm/dist/test/tools/llvm-xray/X86/account-simple-case.yaml
==============================================================================
--- vendor/llvm/dist/test/tools/llvm-xray/X86/account-simple-case.yaml	Tue Feb 28 20:51:20 2017	(r314410)
+++ vendor/llvm/dist/test/tools/llvm-xray/X86/account-simple-case.yaml	Tue Feb 28 21:07:18 2017	(r314411)
@@ -7,10 +7,8 @@ header:
   nonstop-tsc: true
   cycle-frequency: 2601000000
 records:
-  - { type: 0, func-id: 1, cpu: 1, thread: 111, kind: function-enter,
-    tsc: 10001 }
-  - { type: 0, func-id: 1, cpu: 1, thread: 111, kind: function-exit,
-    tsc: 10100 }
+  - { type: 0, func-id: 1, cpu: 1, thread: 111, kind: function-enter, tsc: 10001 }
+  - { type: 0, func-id: 1, cpu: 1, thread: 111, kind: function-exit, tsc: 10100 }
 ...
 
 #CHECK:       Functions with latencies: 1

Modified: vendor/llvm/dist/test/tools/llvm-xray/X86/account-simple-sorting.yaml
==============================================================================
--- vendor/llvm/dist/test/tools/llvm-xray/X86/account-simple-sorting.yaml	Tue Feb 28 20:51:20 2017	(r314410)
+++ vendor/llvm/dist/test/tools/llvm-xray/X86/account-simple-sorting.yaml	Tue Feb 28 21:07:18 2017	(r314411)
@@ -17,27 +17,17 @@ header:
   cycle-frequency: 1
 records:
   # Function id: 1
-  - { type: 0, func-id: 1, cpu: 1, thread: 111, kind: function-enter,
-    tsc: 10001 }
-  - { type: 0, func-id: 1, cpu: 1, thread: 111, kind: function-exit,
-    tsc: 10100 }
-  - { type: 0, func-id: 1, cpu: 1, thread: 111, kind: function-enter,
-    tsc: 10101 }
-  - { type: 0, func-id: 1, cpu: 1, thread: 111, kind: function-exit,
-    tsc: 10200 }
-  - { type: 0, func-id: 1, cpu: 1, thread: 111, kind: function-enter,
-    tsc: 10201 }
-  - { type: 0, func-id: 1, cpu: 1, thread: 111, kind: function-exit,
-    tsc: 10300 }
+  - { type: 0, func-id: 1, cpu: 1, thread: 111, kind: function-enter, tsc: 10001 }
+  - { type: 0, func-id: 1, cpu: 1, thread: 111, kind: function-exit, tsc: 10100 }
+  - { type: 0, func-id: 1, cpu: 1, thread: 111, kind: function-enter, tsc: 10101 }
+  - { type: 0, func-id: 1, cpu: 1, thread: 111, kind: function-exit, tsc: 10200 }
+  - { type: 0, func-id: 1, cpu: 1, thread: 111, kind: function-enter, tsc: 10201 }
+  - { type: 0, func-id: 1, cpu: 1, thread: 111, kind: function-exit, tsc: 10300 }
   # Function id: 2
-  - { type: 0, func-id: 2, cpu: 1, thread: 222, kind: function-enter,
-    tsc: 10001 }
-  - { type: 0, func-id: 2, cpu: 1, thread: 222, kind: function-exit,
-    tsc: 10002 }
-  - { type: 0, func-id: 2, cpu: 1, thread: 222, kind: function-enter,
-    tsc: 10101 }
-  - { type: 0, func-id: 2, cpu: 1, thread: 222, kind: function-exit,
-    tsc: 10102 }
+  - { type: 0, func-id: 2, cpu: 1, thread: 222, kind: function-enter, tsc: 10001 }
+  - { type: 0, func-id: 2, cpu: 1, thread: 222, kind: function-exit, tsc: 10002 }
+  - { type: 0, func-id: 2, cpu: 1, thread: 222, kind: function-enter, tsc: 10101 }
+  - { type: 0, func-id: 2, cpu: 1, thread: 222, kind: function-exit, tsc: 10102 }
 
 #DEFAULT:       Functions with latencies: 2
 #DEFAULT-NEXT:  funcid  count  [ min, med, 90p, 99p, max] sum function

Modified: vendor/llvm/dist/test/tools/llvm-xray/X86/convert-roundtrip.yaml
==============================================================================
--- vendor/llvm/dist/test/tools/llvm-xray/X86/convert-roundtrip.yaml	Tue Feb 28 20:51:20 2017	(r314410)
+++ vendor/llvm/dist/test/tools/llvm-xray/X86/convert-roundtrip.yaml	Tue Feb 28 21:07:18 2017	(r314411)
@@ -7,10 +7,8 @@ header:
   nonstop-tsc: true
   cycle-frequency: 2601000000
 records:
-  - { type: 0, func-id: 1, cpu: 1, thread: 111, kind: function-enter,
-    tsc: 10001 }
-  - { type: 0, func-id: 1, cpu: 1, thread: 111, kind: function-exit,
-    tsc: 10100 }
+  - { type: 0, func-id: 1, cpu: 1, thread: 111, kind: function-enter, tsc: 10001 }
+  - { type: 0, func-id: 1, cpu: 1, thread: 111, kind: function-exit, tsc: 10100 }
 ...
 
 #CHECK:       ---
@@ -21,8 +19,6 @@ records:
 #CHECK-NEXT:    nonstop-tsc: true
 #CHECK-NEXT:    cycle-frequency: 2601000000
 #CHECK-NEXT:  records:
-#CHECK-NEXT:    - { type: 0, func-id: 1, function: '1', cpu: 1, thread: 111, kind: function-enter,
-#CHECK-NEXT:      tsc: 10001 }
-#CHECK-NEXT:    - { type: 0, func-id: 1, function: '1', cpu: 1, thread: 111, kind: function-exit,
-#CHECK-NEXT:      tsc: 10100 }
+#CHECK-NEXT:    - { type: 0, func-id: 1, function: '1', cpu: 1, thread: 111, kind: function-enter, tsc: 10001 }
+#CHECK-NEXT:    - { type: 0, func-id: 1, function: '1', cpu: 1, thread: 111, kind: function-exit, tsc: 10100 }
 #CHECK-NEXT:  ...

Modified: vendor/llvm/dist/test/tools/llvm-xray/X86/convert-to-yaml.txt
==============================================================================
--- vendor/llvm/dist/test/tools/llvm-xray/X86/convert-to-yaml.txt	Tue Feb 28 20:51:20 2017	(r314410)
+++ vendor/llvm/dist/test/tools/llvm-xray/X86/convert-to-yaml.txt	Tue Feb 28 21:07:18 2017	(r314411)
@@ -8,16 +8,10 @@
 ; CHECK-NEXT:   nonstop-tsc:     true
 ; CHECK-NEXT:   cycle-frequency: 2601000000
 ; CHECK-NEXT: records:
-; CHECK-NEXT:   - { type: 0, func-id: 3, function: '3', cpu: 37, thread: 84697, kind: function-enter,
-; CHECK-NEXT:       tsc: 3315356841453914 }
-; CHECK-NEXT:   - { type: 0, func-id: 2, function: '2', cpu: 37, thread: 84697, kind: function-enter,
-; CHECK-NEXT:       tsc: 3315356841454542 }
-; CHECK-NEXT:   - { type: 0, func-id: 2, function: '2', cpu: 37, thread: 84697, kind: function-exit,
-; CHECK-NEXT:       tsc: 3315356841454670 }
-; CHECK-NEXT:   - { type: 0, func-id: 1, function: '1', cpu: 37, thread: 84697, kind: function-enter,
-; CHECK-NEXT:       tsc: 3315356841454762 }
-; CHECK-NEXT:   - { type: 0, func-id: 1, function: '1', cpu: 37, thread: 84697, kind: function-exit,
-; CHECK-NEXT:       tsc: 3315356841454802 }
-; CHECK-NEXT:   - { type: 0, func-id: 3, function: '3', cpu: 37, thread: 84697, kind: function-exit,
-; CHECK-NEXT:       tsc: 3315356841494828 }
+; CHECK-NEXT:   - { type: 0, func-id: 3, function: '3', cpu: 37, thread: 84697, kind: function-enter, tsc: 3315356841453914 }
+; CHECK-NEXT:   - { type: 0, func-id: 2, function: '2', cpu: 37, thread: 84697, kind: function-enter, tsc: 3315356841454542 }
+; CHECK-NEXT:   - { type: 0, func-id: 2, function: '2', cpu: 37, thread: 84697, kind: function-exit, tsc: 3315356841454670 }
+; CHECK-NEXT:   - { type: 0, func-id: 1, function: '1', cpu: 37, thread: 84697, kind: function-enter, tsc: 3315356841454762 }
+; CHECK-NEXT:   - { type: 0, func-id: 1, function: '1', cpu: 37, thread: 84697, kind: function-exit, tsc: 3315356841454802 }
+; CHECK-NEXT:   - { type: 0, func-id: 3, function: '3', cpu: 37, thread: 84697, kind: function-exit, tsc: 3315356841494828 }
 ; CHECK-NEXT: ...

Modified: vendor/llvm/dist/test/tools/llvm-xray/X86/convert-with-debug-syms.txt
==============================================================================
--- vendor/llvm/dist/test/tools/llvm-xray/X86/convert-with-debug-syms.txt	Tue Feb 28 20:51:20 2017	(r314410)
+++ vendor/llvm/dist/test/tools/llvm-xray/X86/convert-with-debug-syms.txt	Tue Feb 28 21:07:18 2017	(r314411)
@@ -8,16 +8,10 @@
 ; CHECK-NEXT:   nonstop-tsc:     true
 ; CHECK-NEXT:   cycle-frequency: 2601000000
 ; CHECK-NEXT: records:
-; CHECK-NEXT:   - { type: 0, func-id: 3, function: main, cpu: 37, thread: 84697, kind: function-enter,
-; CHECK-NEXT:       tsc: 3315356841453914 }
-; CHECK-NEXT:   - { type: 0, func-id: 2, function: {{.*foo.*}}, cpu: 37, thread: 84697, kind: function-enter,
-; CHECK-NEXT:       tsc: 3315356841454542 }
-; CHECK-NEXT:   - { type: 0, func-id: 2, function: {{.*foo.*}}, cpu: 37, thread: 84697, kind: function-exit,
-; CHECK-NEXT:       tsc: 3315356841454670 }
-; CHECK-NEXT:   - { type: 0, func-id: 1, function: {{.*bar.*}}, cpu: 37, thread: 84697, kind: function-enter,
-; CHECK-NEXT:       tsc: 3315356841454762 }
-; CHECK-NEXT:   - { type: 0, func-id: 1, function: {{.*bar.*}}, cpu: 37, thread: 84697, kind: function-exit,
-; CHECK-NEXT:       tsc: 3315356841454802 }
-; CHECK-NEXT:   - { type: 0, func-id: 3, function: main, cpu: 37, thread: 84697, kind: function-exit,
-; CHECK-NEXT:       tsc: 3315356841494828 }
+; CHECK-NEXT:   - { type: 0, func-id: 3, function: main, cpu: 37, thread: 84697, kind: function-enter, tsc: 3315356841453914 }
+; CHECK-NEXT:   - { type: 0, func-id: 2, function: {{.*foo.*}}, cpu: 37, thread: 84697, kind: function-enter, tsc: 3315356841454542 }
+; CHECK-NEXT:   - { type: 0, func-id: 2, function: {{.*foo.*}}, cpu: 37, thread: 84697, kind: function-exit, tsc: 3315356841454670 }
+; CHECK-NEXT:   - { type: 0, func-id: 1, function: {{.*bar.*}}, cpu: 37, thread: 84697, kind: function-enter, tsc: 3315356841454762 }
+; CHECK-NEXT:   - { type: 0, func-id: 1, function: {{.*bar.*}}, cpu: 37, thread: 84697, kind: function-exit, tsc: 3315356841454802 }
+; CHECK-NEXT:   - { type: 0, func-id: 3, function: main, cpu: 37, thread: 84697, kind: function-exit, tsc: 3315356841494828 }
 ; CHECK-NEXT: ...

Modified: vendor/llvm/dist/test/tools/llvm-xray/X86/convert-with-standalone-instrmap.txt
==============================================================================
--- vendor/llvm/dist/test/tools/llvm-xray/X86/convert-with-standalone-instrmap.txt	Tue Feb 28 20:51:20 2017	(r314410)
+++ vendor/llvm/dist/test/tools/llvm-xray/X86/convert-with-standalone-instrmap.txt	Tue Feb 28 21:07:18 2017	(r314411)
@@ -8,16 +8,10 @@
 ; CHECK-NEXT:   nonstop-tsc:     true
 ; CHECK-NEXT:   cycle-frequency: 2601000000
 ; CHECK-NEXT: records:
-; CHECK-NEXT:   - { type: 0, func-id: 3, function: '@(41caa0)', cpu: 37, thread: 84697,
-; CHECK-NEXT:       kind: function-enter, tsc: 3315356841453914 }
-; CHECK-NEXT:   - { type: 0, func-id: 2, function: '@(41ca70)', cpu: 37, thread: 84697,
-; CHECK-NEXT:       kind: function-enter, tsc: 3315356841454542 }
-; CHECK-NEXT:   - { type: 0, func-id: 2, function: '@(41ca70)', cpu: 37, thread: 84697,
-; CHECK-NEXT:       kind: function-exit, tsc: 3315356841454670 }
-; CHECK-NEXT:   - { type: 0, func-id: 1, function: '@(41ca40)', cpu: 37, thread: 84697,
-; CHECK-NEXT:       kind: function-enter, tsc: 3315356841454762 }
-; CHECK-NEXT:   - { type: 0, func-id: 1, function: '@(41ca40)', cpu: 37, thread: 84697,
-; CHECK-NEXT:       kind: function-exit, tsc: 3315356841454802 }
-; CHECK-NEXT:   - { type: 0, func-id: 3, function: '@(41caa0)', cpu: 37, thread: 84697,
-; CHECK-NEXT:       kind: function-exit, tsc: 3315356841494828 }
+; CHECK-NEXT:   - { type: 0, func-id: 3, function: '@(41caa0)', cpu: 37, thread: 84697, kind: function-enter, tsc: 3315356841453914 }
+; CHECK-NEXT:   - { type: 0, func-id: 2, function: '@(41ca70)', cpu: 37, thread: 84697, kind: function-enter, tsc: 3315356841454542 }
+; CHECK-NEXT:   - { type: 0, func-id: 2, function: '@(41ca70)', cpu: 37, thread: 84697, kind: function-exit, tsc: 3315356841454670 }
+; CHECK-NEXT:   - { type: 0, func-id: 1, function: '@(41ca40)', cpu: 37, thread: 84697, kind: function-enter, tsc: 3315356841454762 }
+; CHECK-NEXT:   - { type: 0, func-id: 1, function: '@(41ca40)', cpu: 37, thread: 84697, kind: function-exit, tsc: 3315356841454802 }
+; CHECK-NEXT:   - { type: 0, func-id: 3, function: '@(41caa0)', cpu: 37, thread: 84697, kind: function-exit, tsc: 3315356841494828 }
 ; CHECK-NEXT: ...

Modified: vendor/llvm/dist/test/tools/llvm-xray/X86/convert-with-yaml-instrmap.txt
==============================================================================
--- vendor/llvm/dist/test/tools/llvm-xray/X86/convert-with-yaml-instrmap.txt	Tue Feb 28 20:51:20 2017	(r314410)
+++ vendor/llvm/dist/test/tools/llvm-xray/X86/convert-with-yaml-instrmap.txt	Tue Feb 28 21:07:18 2017	(r314411)
@@ -8,16 +8,10 @@
 ; CHECK-NEXT:   nonstop-tsc:     true
 ; CHECK-NEXT:   cycle-frequency: 2601000000
 ; CHECK-NEXT: records:
-; CHECK-NEXT:   - { type: 0, func-id: 3, function: '3', cpu: 37, thread: 84697, kind: function-enter,
-; CHECK-NEXT:       tsc: 3315356841453914 }
-; CHECK-NEXT:   - { type: 0, func-id: 2, function: '2', cpu: 37, thread: 84697, kind: function-enter,
-; CHECK-NEXT:       tsc: 3315356841454542 }
-; CHECK-NEXT:   - { type: 0, func-id: 2, function: '2', cpu: 37, thread: 84697, kind: function-exit,
-; CHECK-NEXT:       tsc: 3315356841454670 }
-; CHECK-NEXT:   - { type: 0, func-id: 1, function: '1', cpu: 37, thread: 84697, kind: function-enter,
-; CHECK-NEXT:       tsc: 3315356841454762 }
-; CHECK-NEXT:   - { type: 0, func-id: 1, function: '1', cpu: 37, thread: 84697, kind: function-exit,
-; CHECK-NEXT:       tsc: 3315356841454802 }
-; CHECK-NEXT:   - { type: 0, func-id: 3, function: '3', cpu: 37, thread: 84697, kind: function-exit,
-; CHECK-NEXT:       tsc: 3315356841494828 }
+; CHECK-NEXT:   - { type: 0, func-id: 3, function: '3', cpu: 37, thread: 84697, kind: function-enter, tsc: 3315356841453914 }
+; CHECK-NEXT:   - { type: 0, func-id: 2, function: '2', cpu: 37, thread: 84697, kind: function-enter, tsc: 3315356841454542 }
+; CHECK-NEXT:   - { type: 0, func-id: 2, function: '2', cpu: 37, thread: 84697, kind: function-exit, tsc: 3315356841454670 }
+; CHECK-NEXT:   - { type: 0, func-id: 1, function: '1', cpu: 37, thread: 84697, kind: function-enter, tsc: 3315356841454762 }
+; CHECK-NEXT:   - { type: 0, func-id: 1, function: '1', cpu: 37, thread: 84697, kind: function-exit, tsc: 3315356841454802 }
+; CHECK-NEXT:   - { type: 0, func-id: 3, function: '3', cpu: 37, thread: 84697, kind: function-exit, tsc: 3315356841494828 }
 ; CHECK-NEXT: ...

Modified: vendor/llvm/dist/test/tools/llvm-xray/X86/extract-instrmap.ll
==============================================================================
--- vendor/llvm/dist/test/tools/llvm-xray/X86/extract-instrmap.ll	Tue Feb 28 20:51:20 2017	(r314410)
+++ vendor/llvm/dist/test/tools/llvm-xray/X86/extract-instrmap.ll	Tue Feb 28 21:07:18 2017	(r314411)
@@ -4,12 +4,8 @@
 ; RUN: llvm-xray extract %S/Inputs/elf64-example.bin | FileCheck %s
 
 ; CHECK:      ---
-; CHECK-NEXT: - { id: 1, address: 0x000000000041C900, function: 0x000000000041C900, kind: function-enter,
-; CHECK-NEXT:     always-instrument: true }
-; CHECK-NEXT: - { id: 1, address: 0x000000000041C912, function: 0x000000000041C900, kind: function-exit,
-; CHECK-NEXT:     always-instrument: true }
-; CHECK-NEXT: - { id: 2, address: 0x000000000041C930, function: 0x000000000041C930, kind: function-enter,
-; CHECK-NEXT:    always-instrument: true }
-; CHECK-NEXT: - { id: 2, address: 0x000000000041C946, function: 0x000000000041C930, kind: function-exit,
-; CHECK-NEXT:     always-instrument: true }
+; CHECK-NEXT: - { id: 1, address: 0x000000000041C900, function: 0x000000000041C900, kind: function-enter, always-instrument: true }
+; CHECK-NEXT: - { id: 1, address: 0x000000000041C912, function: 0x000000000041C900, kind: function-exit, always-instrument: true }
+; CHECK-NEXT: - { id: 2, address: 0x000000000041C930, function: 0x000000000041C930, kind: function-enter, always-instrument: true }
+; CHECK-NEXT: - { id: 2, address: 0x000000000041C946, function: 0x000000000041C930, kind: function-exit, always-instrument: true }
 ; CHECK-NEXT: ...

Modified: vendor/llvm/dist/tools/llvm-xray/xray-converter.cc
==============================================================================
--- vendor/llvm/dist/tools/llvm-xray/xray-converter.cc	Tue Feb 28 20:51:20 2017	(r314410)
+++ vendor/llvm/dist/tools/llvm-xray/xray-converter.cc	Tue Feb 28 21:07:18 2017	(r314411)
@@ -98,7 +98,7 @@ void TraceConverter::exportAsYAML(const 
                                        : std::to_string(R.FuncId),
                              R.TSC, R.TId});
   }
-  Output Out(OS);
+  Output Out(OS, nullptr, 0);
   Out << Trace;
 }
 

Modified: vendor/llvm/dist/tools/llvm-xray/xray-extract.cc
==============================================================================
--- vendor/llvm/dist/tools/llvm-xray/xray-extract.cc	Tue Feb 28 20:51:20 2017	(r314410)
+++ vendor/llvm/dist/tools/llvm-xray/xray-extract.cc	Tue Feb 28 21:07:18 2017	(r314411)
@@ -270,7 +270,7 @@ void InstrumentationMapExtractor::export
     YAMLSleds.push_back({FunctionIds[Sled.Function], Sled.Address,
                          Sled.Function, Sled.Kind, Sled.AlwaysInstrument});
   }
-  Output Out(OS);
+  Output Out(OS, nullptr, 0);
   Out << YAMLSleds;
 }
 


More information about the svn-src-all mailing list