This file contains 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
Total executed opcodes 305590200 | |
11% Opcounts 34261110, calls 81900, Method System.Text.Json.JsonWriterHelper:ToUtf8 (System.ReadOnlySpan`1<byte>,System.Span`1<byte>,int&,int&), imethod ptr 0x55f2d503d870 | |
22% Opcounts 33980080, calls 849502, Method System.Text.ASCIIUtility:WidenFourAsciiBytesToUtf16AndWriteToBuffer (char&,uint), imethod ptr 0x55f2d4d9ce08 | |
29% Opcounts 23040810, calls 81900, Method System.Text.Encodings.Web.DefaultJavaScriptEncoderBasicLatin:FindFirstCharacterToEncode (char*,int), imethod ptr 0x55f2d5038218 | |
36% Opcounts 20590344, calls 1715862, Method System.ReadOnlySpan`1<byte>:.ctor (void*,int), imethod ptr 0x55f2d4d3fee0 | |
43% Opcounts 19605240, calls 1633770, Method System.Text.Encodings.Web.DefaultJavaScriptEncoderBasicLatin:NeedsEscaping (char), imethod ptr 0x55f2d503cc20 | |
49% Opcounts 19539627, calls 13, Method System.Text.ASCIIUtility:WidenAsciiToUtf16 (byte*,char*,uintptr), imethod ptr 0x55f2d4d9cd38 | |
54% Opcounts 16052400, calls 327600, Method System.Memory`1<byte>:get_Span (), imethod p |
This file contains 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
v8 - execution time 5.9s | |
- switch dispatch | |
-- B4 start (loop up to 16) -- | |
0x11917e11c721 a1 48895588 REX.W movq [rbp-0x78],rdx | |
0x11917e11c725 a5 488b5623 REX.W movq rdx,[rsi+0x23] | |
0x11917e11c729 a9 48895dd8 REX.W movq [rbp-0x28],rbx | |
0x11917e11c72d ad 48897dd0 REX.W movq [rbp-0x30],rdi | |
0x11917e11c731 b1 4c8945c8 REX.W movq [rbp-0x38],r8 | |
0x11917e11c735 b5 4c894dc0 REX.W movq [rbp-0x40],r9 | |
0x11917e11c739 b9 4c895db8 REX.W movq [rbp-0x48],r11 |
This file contains 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
v8 | |
- switch dispatch | |
0x255a37a8b314 534 4889bd38ffffff REX.W movq [rbp-0xc8],rdi | |
0x255a37a8b31b 53b 488b7e23 REX.W movq rdi,[rsi+0x23] | |
0x255a37a8b31f 53f 4c8965d0 REX.W movq [rbp-0x30],r12 | |
0x255a37a8b323 543 48899d48ffffff REX.W movq [rbp-0xb8],rbx | |
0x255a37a8b32a 54a 48895588 REX.W movq [rbp-0x78],rdx | |
0x255a37a8b32e 54e 483b27 REX.W cmpq rsp,[rdi] | |
0x255a37a8b331 551 0f86ce1a0100 jna 0x255a37a9ce05 <+0x12025> | |
0x255a37a8b337 557 4489e7 movl rdi,r12 |
This file contains 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
gcc: | |
- switch dispatch | |
1398f0: 41 0f b7 55 00 movzwl 0x0(%r13),%edx | |
1398ff: 66 81 fa ab 02 cmp $0x2ab,%dx | |
139904: 0f 87 34 94 00 00 ja 142d3e <interp_exec_method+0x96ae> | |
13990a: 48 8d 35 27 25 21 00 lea 0x212527(%rip),%rsi # 34be38 <__func__.31203+0x1508> | |
139911: 0f b7 c2 movzwl %dx,%eax | |
139914: 48 63 04 86 movslq (%rsi,%rax,4),%rax | |
139918: 48 01 f0 add %rsi,%rax | |
13991b: ff e0 jmpq *%rax |
This file contains 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 System; | |
using System.Linq; | |
using System.Numerics; | |
using System.Runtime.InteropServices; | |
using System.Diagnostics; | |
class Program { | |
static void Main () { | |
const int iterations = Benchmark.IterationCount, | |
warming_iterations = Benchmark.WarmingIterationCount; |
This file contains 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
PLEASE submit a bug report to https://bugs.llvm.org/ and include the crash backtrace, preprocessed source, and associated run script. | |
Stack dump: | |
0. Program arguments: /opt/compiler-explorer/clang-trunk/bin/clang++ -g -o ./output.s -S -target wasm32 -fcolor-diagnostics -fno-crash-diagnostics -O2 <source> | |
1. <eof> parser at end of file | |
2. Code generation |
This file contains 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
#include <stdio.h> | |
#include <stdlib.h> | |
#include <string.h> | |
#include <stdint.h> | |
typedef int gint; | |
typedef unsigned int guint; | |
typedef short gint16; | |
typedef unsigned short guint16; | |
typedef long glong; |
This file contains 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
// Global variable | |
#define mono_break() variable = 0x6666 | |
volatile int variable; | |
// interp_exec_method_switch | |
case MINT_LDARGFLD_I8: { | |
mono_break (); | |
gpointer *o = frame->stack_args [ip [1]].data.p; | |
if (!o) |
This file contains 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
// Simple testcase for verifying basic GC functionality | |
// (allocation, collection, root scanning, object scanning, write barriers) | |
using System; | |
using System.Collections.Generic; | |
public class Program { | |
public string s; | |
public static List<Program> list = new List<Program> (); |
This file contains 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/mono/utils/mono-threads-coop.c b/mono/utils/mono-threads-coop.c | |
index 28bf12c..dacaa1d 100644 | |
--- a/mono/utils/mono-threads-coop.c | |
+++ b/mono/utils/mono-threads-coop.c | |
@@ -314,12 +314,15 @@ mono_threads_enter_gc_safe_region_unbalanced (gpointer *stackpointer) | |
return mono_threads_enter_gc_safe_region_unbalanced_internal (&stackdata); | |
} | |
-static MONO_NO_OPTIMIZATION gpointer | |
+static gpointer |
NewerOlder