This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
; C#, RyuJIT, release, x64 | |
00007ffe`fc6808ec 4c63c8 movsxd r9,eax ; loop: r9 = i | |
00007ffe`fc6808ef 4e0fbf4c4910 movsx r9,word ptr [rcx+r9*2+10h] ; r9 = a[i] | |
00007ffe`fc6808f5 f3410f2ac9 cvtsi2ss xmm1,r9d ; xmm1 = (float)r9d | |
00007ffe`fc6808fa 4c63c8 movsxd r9,eax ; r9 = i | |
00007ffe`fc6808fd f3420f594c8a10 mulss xmm1,dword ptr [rdx+r9*4+10h] ; xmm1 *= b[i] | |
00007ffe`fc680904 f30f58c1 addss xmm0,xmm1 ; sum += xmm1 | |
00007ffe`fc680908 ffc0 inc eax ; ++i | |
00007ffe`fc68090a 443bc0 cmp r8d,eax ; if i < a.Length | |
00007ffe`fc68090d 7fdd jg 00007ffe`fc6808ec ; goto loop |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
; C++ core loop, key intrinsic is _mm_dp_ps | |
00007fff`548b10d5 0f100c0a movups xmm1,xmmword ptr [rdx+rcx] ; LOOP | |
00007fff`548b10d9 0f1011 movups xmm2,xmmword ptr [rcx] | |
00007fff`548b10dc 4883c110 add rcx,10h | |
00007fff`548b10e0 660f3a40d1f1 dpps xmm2,xmm1,0F1h | |
00007fff`548b10e6 f30f58c2 addss xmm0,xmm2 | |
00007fff`548b10ea 4983e801 sub r8,1 | |
00007fff`548b10ee 75e5 jne 00007fff`548b10d5 ; LOOP | |
; C# core loop, key intrinsic is Vector.Dot(Vector<float>, Vector<float>); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
using Microsoft.Diagnostics.Runtime; | |
using System; | |
using System.Collections.Generic; | |
using System.Diagnostics; | |
using System.Linq; | |
using System.Text; | |
using System.Threading.Tasks; | |
namespace SDDTriage | |
{ |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env python | |
# | |
# USAGE: dotnet-mapgen [-h] {generate,merge} PID | |
# | |
# In generate mode, this tool reads the /tmp/perfinfo-PID.map file generated | |
# by the CLR when running with COMPlus_PerfMapEnabled=1, and finds all load | |
# events for managed assemblies. For each managed assembly found in this way, | |
# the tool runs crossgen to generate a symbol mapping file (akin to debuginfo). | |
# | |
# In merge mode, this tool finds the load address of each managed assembly in |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env python | |
# | |
# analyze.py Example of an LLDB script that loads SOS and runs a command | |
# for analysis of a .NET Core application on Linux/macOS. | |
# Requires LLDB matching the version of libsosplugin.so for your | |
# CoreCLR version, and gdb. | |
# | |
# USAGE: analyze.py [--memory] [--stacks] COREFILE | |
# | |
# NOTE: To run this as stand-alone, you might need to fix some bad symlinks |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
diff --git a/src/scripts/genXplatLttng.py b/src/scripts/genXplatLttng.py | |
index bacf034..3d40d77 100644 | |
--- a/src/scripts/genXplatLttng.py | |
+++ b/src/scripts/genXplatLttng.py | |
@@ -407,8 +407,25 @@ def generateLttngTpProvider(providerName, eventNodes, allTemplates): | |
for eventNode in eventNodes: | |
eventName = eventNode.getAttribute('symbol') | |
templateName = eventNode.getAttribute('template') | |
+ | |
+ template = allTemplates[templateName] if templateName else None |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
diff --git a/build/../tools/argdist.py b/usr/share/bcc/tools/argdist | |
index 61f8e00..746d1b7 100755 | |
--- a/build/../tools/argdist.py | |
+++ b/usr/share/bcc/tools/argdist | |
@@ -451,7 +451,10 @@ DATA_DECL | |
# Most fields can be converted with plain str(), but strings | |
# are wrapped in a __string_t which has an .s field | |
if "__string_t" in type(v).__name__: | |
- return str(v.s) | |
+ s = bytearray(v.s) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env python | |
# | |
# USAGE: place-probe [-h] [--dry-run] [--debug] PID METHOD | |
# | |
# This tool helps place dynamic probes on .NET methods that were | |
# CrossGen-generated (compiled ahead of time). To use the tool, | |
# the CrossGen-generated assemblies need to have perfmaps generated | |
# by CrossGen /CreatePerfMap, expected in the /tmp directory. | |
# | |
# Copyright (C) 2018, Sasha Goldshtein |
OlderNewer