Created
February 6, 2023 18:28
-
-
Save gautam1168/90f828503a043ba5b914d68478a3f549 to your computer and use it in GitHub Desktop.
Embedding javascript in C++ to measure ticks
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
typedef unsigned char uint8; | |
typedef unsigned int uint32; | |
typedef int int32; | |
typedef unsigned long long uint64; | |
int32 | |
add(uint32 *NumbersToSum, int32 Count) | |
{ | |
int32 Result = 0; | |
for (int32 i = 0; i < Count; i += 4) | |
{ | |
Result += NumbersToSum[i]; | |
Result += NumbersToSum[i + 1]; | |
Result += NumbersToSum[i + 2]; | |
Result += NumbersToSum[i + 3]; | |
} | |
return Result; | |
} |
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
// Copyright 2015 the V8 project authors. All rights reserved. | |
// Use of this source code is governed by a BSD-style license that can be | |
// found in the LICENSE file. | |
#include <stdio.h> | |
#include <stdlib.h> | |
#include <string.h> | |
#include "include/libplatform/libplatform.h" | |
#include "include/v8-context.h" | |
#include "include/v8-initialization.h" | |
#include "include/v8-isolate.h" | |
#include "include/v8-local-handle.h" | |
#include "include/v8-primitive.h" | |
#include "include/v8-script.h" | |
typedef unsigned long long uint64; | |
int | |
GetMeasureForAdd(int Count, int *Numbers) | |
{ | |
int Result1 = 0; | |
int Result2 = 0; | |
int Result3 = 0; | |
int Result4 = 0; | |
for (int NumIndex = 0; NumIndex < Count; NumIndex += 4) | |
{ | |
Result1 += Numbers[NumIndex]; | |
Result2 += Numbers[NumIndex + 1]; | |
Result3 += Numbers[NumIndex + 2]; | |
Result4 += Numbers[NumIndex + 3]; | |
} | |
return Result1 + Result2 + Result3 + Result4; | |
} | |
int | |
main(int argc, char* argv[]) | |
{ | |
uint64 start = __rdtsc(); | |
int NumbersToSum[] = { | |
4, 68, 10, 6, 72, | |
63, 82, 71, 22, 7, | |
78, 19, 87, 14, 27, | |
64, 71, 22, 79, 14, | |
36, 36, 18, 21, 77, | |
88, 90, 36, 29, 28, | |
70, 18, 78, 31, 5, | |
33, 73, 85, 15, 50, | |
70, 93, 83, 99, 80, | |
78, 62, 24, 41, 12, | |
36, 24, 36, 7, 95, | |
91, 43, 16, 36, 33, | |
50, 46, 25, 82, 73, | |
30, 21, 56, 95, 45, | |
94, 45, 48, 23, 68, | |
70, 27, 54, 30, 78, | |
11, 87, 98, 33, 64, | |
37, 74, 4, 61, 86, | |
91, 48, 38, 5, 46, | |
9, 78, 37, 10, 21, | |
66, 37, 50, 52, 29, | |
27, 14, 91, 36, 94, | |
85, 9, 23, 2, 14, | |
72, 82, 36, 46, 94, | |
5, 7, 94, 53, 97, | |
18, 94, 18, 13, 35, | |
45, 49, 4, 54, 89, | |
90, 68, 31, 21, 72, | |
58, 12, 16, 48, 25, | |
17, 20, 31, 41, 71, | |
13, 85, 92, 24, 55, | |
79, 22, 45, 94, 21, | |
35, 31, 43, 26, 86, | |
35, 43, 40, 36, 66, | |
46, 63, 34, 1, 18, | |
85, 28, 4, 28, 44, | |
5, 18, 4, 16, 83, | |
8, 61, 15, 43, 2, | |
20, 22, 26, 82, 35, | |
11, 63, 70, 15, 80, | |
98, 34, 2, 39, 11, | |
32, 44, 93, 99, 5, | |
75, 98, 38, 71, 4, | |
20, 88, 53, 2, 23, | |
76, 12, 30, 95, 24, | |
21, 58, 15, 61, 88, | |
12, 84, 84, 39, 24, | |
49, 65, 75, 50, 32, | |
57, 86, 51, 85, 71, | |
98, 30, 43, 27, 33, | |
32, 17, 82, 11, 50, | |
40, 4, 5, 25, 93, | |
64, 35, 86, 97, 24, | |
59, 29, 64, 47, 38, | |
87, 25, 94, 80, 10, | |
37, 59, 43, 16, 27, | |
21, 75, 93, 67, 94, | |
74, 43, 53, 6, 7, | |
63, 72, 69, 60, 14, | |
30, 77, 8, 39, 35, | |
68, 92, 86, 24, 42, | |
95, 42, 32, 71, 88, | |
42, 51, 33, 63, 63, | |
41, 52, 12, 66, 55, | |
39, 70, 92, 84, 33, | |
3, 55, 26, 93, 17, | |
43, 63, 25, 68, 28, | |
77, 1, 35, 67, 72, | |
33, 74, 42, 86, 5, | |
25, 98, 73, 4, 27, | |
54, 68, 88, 10, 94, | |
66, 12, 8, 13, 12, | |
24, 78, 14, 23, 80, | |
23, 31, 22, 83, 12, | |
83, 73, 15, 84, 90, | |
46, 58, 80, 84, 93, | |
95, 20, 54, 59, 53, | |
69, 61, 50, 56, 7, | |
20, 22, 82, 24, 37, | |
76, 15, 21, 14, 85, | |
76, 59, 22, 31, 15, | |
78, 29, 68, 87, 50, | |
10, 30, 84, 59, 78, | |
66, 93, 89, 78, 89, | |
52, 97, 55, 26, 35, | |
77, 37, 52, 47, 56, | |
26, 90, 49, 75, 51, | |
81, 85, 38, 78, 21, | |
18, 36, 70, 53, 7, | |
37, 80, 81, 7, 86, | |
59, 15, 61, 71, 71, | |
56, 15, 19, 79, 81, | |
37, 45, 73, 85, 29, | |
68, 45, 96, 51, 39, | |
9, 78, 4, 60, 6, | |
42, 57, 6, 52, 11, | |
15, 50, 91, 54, 37, | |
1, 43, 61, 1, 97, | |
58, 75, 41, 99, 47, | |
29, 100, 75, 65, 65, | |
79, 44, 78, 20, 61, | |
49, 63, 69, 54, 84, | |
40, 91, 15, 45, 10, | |
31, 36, 83, 76, 78, | |
3, 66, 85, 20, 47, | |
50, 95, 20, 45, 33, | |
14, 13, 5, 67, 14, | |
47, 22, 67, 97, 74, | |
90, 7, 93, 53, 100, | |
78, 32, 82, 73, 27, | |
97, 49, 27, 79, 12, | |
71, 1, 67, 21, 9, | |
24, 86, 16, 97, 95, | |
59, 32, 9, 48, 93, | |
79, 22, 10, 97, 97, | |
4, 68, 93, 60, 55, | |
80, 75, 52, 50, 50, | |
98, 37, 71, 97, 4, | |
23, 98, 2, 44, 94, | |
19, 74, 29, 6, 34, | |
79, 74, 53, 90, 100, | |
99, 87, 61, 38, 94, | |
49, 21, 74, 68, 88, | |
22, 92, 88, 84, 97, | |
17, 44, 42, 9, 74, | |
22, 41, 79, 72, 35, | |
26, 34, 21, 61, 18, | |
33, 86, 54, 94, 89, | |
63, 62, 78, 60, 16, | |
95, 89, 52, 6, 8, | |
84, 73, 23, 64, 21, | |
52, 78, 15, 84, 75, | |
88, 41, 63, 47, 23, | |
41, 19, 72, 39, 7, | |
19, 83, 11, 70, 40, | |
67, 43, 78, 53, 98, | |
91, 40, 19, 46, 50, | |
58, 41, 89, 10, 64, | |
87, 38, 56, 77, 88, | |
18, 98, 47, 5, 79, | |
35, 30, 32, 63, 74, | |
21, 61, 45, 53, 40, | |
23, 22, 87, 94, 37, | |
17, 89, 85, 13, 38, | |
47, 41, 85, 29, 27, | |
20, 77, 7, 54, 2, | |
85, 91, 30, 19, 96, | |
42, 16, 24, 16, 25, | |
86, 35, 41, 41, 60, | |
13, 2, 66, 86, 88, | |
52, 22, 8, 43, 58, | |
15, 79, 44, 87, 7, | |
73, 53, 59, 86, 99, | |
90, 71, 38, 17, 73, | |
81, 84, 93, 57, 11, | |
18, 41, 11, 82, 5, | |
67, 18, 23, 18, 60, | |
38, 25, 89, 47, 63, | |
13, 53, 53, 90, 12, | |
36, 57, 65, 67, 94, | |
1, 94, 72, 85, 45, | |
60, 84, 80, 27, 27, | |
68, 33, 8, 4, 43, | |
91, 23, 94, 63, 50, | |
31, 69, 75, 24, 84, | |
5, 45, 56, 69, 3, | |
97, 8, 1, 13, 76, | |
46, 73, 97, 34, 79, | |
51, 14, 96, 98, 84, | |
91, 45, 27, 51, 97, | |
3, 32, 70, 70, 62, | |
64, 96, 10, 21, 91, | |
17, 96, 14, 49, 79, | |
68, 17, 39, 2, 53, | |
53, 52, 75, 13, 71, | |
75, 87, 91, 86, 7, | |
82, 85, 54, 66, 33, | |
37, 77, 81, 26, 66, | |
10, 61, 74, 99, 59, | |
62, 53, 83, 87, 24, | |
60, 20, 54, 55, 76, | |
91, 22, 32, 46, 98, | |
45, 37, 8, 29, 72, | |
64, 52, 55, 33, 44, | |
58, 10, 81, 52, 43, | |
47, 47, 81, 28, 36, | |
6, 44, 48, 82, 15, | |
61, 42, 47, 59, 21, | |
81, 51, 100, 63, 7, | |
94, 6, 19, 73, 41, | |
15, 55, 86, 77, 100, | |
11, 59, 20, 68, 49, | |
42, 97, 95, 17, 84, | |
67, 99, 19, 55, 80, | |
57, 61, 87, 33, 36, | |
78, 9, 91, 33, 14, | |
94, 16, 35, 74, 19, | |
37, 92, 51, 65, 13, | |
94, 22, 98, 68, 19, | |
53, 74, 82, 61, 46, | |
3, 94, 30, 97, 43, | |
46, 55, 13, 76, 62, | |
34, 38, 45, 13, 60, | |
72, 9, 83, 11, 88, | |
68, 12, 12, 33, 91, | |
67, 39, 54, 4, 57, | |
22, 9, 7, 78, 4, | |
53, 7, 37, 57, 46, | |
25, 21, 91, 8, 29, | |
60, 36, 36, 88, 11, | |
34, 32, 82, 50, 48, | |
34, 86, 68, 62, 77, | |
14, 9, 34, 85, 53, | |
19, 96, 4, 52, 1, | |
49, 33, 7, 96, 30, | |
7, 5, 14, 72, 96, | |
71, 97, 86, 2, 69, | |
26, 1, 74, 94, 15, | |
15, 17, 50, 13, 97, | |
53, 60, 56, 18, 36, | |
67, 89, 11, 12, 71, | |
87, 2, 24, 10, 4, | |
11, 12, 80, 57, 37, | |
46, 11, 52, 61, 14, | |
32, 45, 78, 12, 20, | |
90, 14, 67, 15, 65, | |
83, 91, 73, 45, 89, | |
70, 71, 39, 59, 63, | |
53, 42, 47, 20, 44, | |
27, 56, 85, 24, 23, | |
48, 55, 61, 42, 25, | |
47, 48, 70, 82, 88, | |
91, 92, 45, 69, 90, | |
25, 81, 31, 25, 41, | |
37, 42, 87, 47, 25, | |
4, 3, 80, 35, 40, | |
17, 68, 98, 84, 95, | |
94, 27, 99, 29, 9, | |
73, 55, 35, 78, 95, | |
96, 71, 35, 88, 81, | |
3, 47, 62, 47, 25, | |
72, 4, 7, 21, 31, | |
13, 18, 95, 58, 43, | |
73, 63, 10, 82, 47, | |
66, 69, 19, 61, 71, | |
77, 60, 33, 99, 71, | |
81, 96, 90, 55, 25, | |
29, 91, 8, 89, 34, | |
6, 8, 27, 46, 45, | |
15, 2, 82, 84, 63, | |
59, 98, 8, 68, 46, | |
32, 90, 50, 86, 98, | |
17, 58, 18, 82, 45, | |
56, 84, 42, 20, 48, | |
82, 79, 100, 89, 46, | |
20, 97, 24, 67, 91, | |
19, 27, 80, 4, 82, | |
41, 11, 91, 79, 60, | |
76, 59, 73, 21, 10, | |
17, 44, 66, 41, 73, | |
39, 93, 61, 50, 99, | |
92, 53, 6, 16, 41, | |
93, 16, 28, 58, 32, | |
31, 9, 57, 7, 3, | |
20, 13, 52, 18, 6, | |
47, 69, 82, 68, 82, | |
52, 75, 3, 65, 30, | |
43, 14, 100, 39, 54, | |
8, 61, 15, 70, 77, | |
1, 19, 45, 59, 14, | |
25, 54, 31, 42, 7, | |
47, 72, 90, 33, 69, | |
40, 81, 66, 41, 69, | |
32, 51, 77, 73, 98, | |
12, 29, 77, 19, 34, | |
85, 21, 26, 68, 37, | |
75, 65, 87, 31, 74, | |
61, 73, 50, 55, 87, | |
92, 14, 43, 46, 35, | |
60, 77, 69, 85, 98, | |
80, 79, 68, 76, 53, | |
53, 53, 18, 26, 46, | |
57, 83, 100, 76, 89, | |
37, 73, 2, 65, 58, | |
65, 48, 19, 46, 65, | |
25, 3, 84, 64, 86, | |
63, 42, 20, 91, 82, | |
92, 54, 9, 6, 1, | |
65, 63, 71, 39, 98, | |
71, 9, 95, 9, 49, | |
22, 93, 80, 49, 52, | |
5, 78, 47, 92, 26, | |
80, 76, 15, 85, 34, | |
55, 92, 43, 7, 98, | |
13, 24, 61, 41, 37, | |
42, 38, 95, 43, 15, | |
70, 50, 1, 100, 6, | |
14, 50, 1, 65, 22, | |
27, 84, 46, 18, 54, | |
9, 68, 74, 59, 5, | |
22, 26, 44, 51, 65, | |
31, 42, 17, 78, 81, | |
20, 92, 72, 89, 96, | |
24, 7, 57, 85, 54, | |
16, 19, 37, 79, 75, | |
95, 92, 12, 29, 78, | |
84, 11, 26, 6, 6, | |
61, 25, 22, 76, 81, | |
7, 97, 68, 10, 72, | |
95, 53, 45, 16, 96, | |
18, 95, 15, 35, 17, | |
90, 69, 65, 70, 1, | |
23, 61, 18, 87, 19, | |
16, 26, 45, 23, 86, | |
74, 82, 39, 7, 65, | |
59, 86, 17, 14, 50, | |
65, 93, 43, 89, 82, | |
30, 41, 10, 19, 74, | |
81, 38, 88, 37, 10, | |
3, 57, 95, 28, 61, | |
26, 8, 14, 74, 22, | |
74, 70, 64, 34, 59, | |
45, 22, 63, 32, 46, | |
15, 14, 93, 10, 80, | |
1, 64, 80, 3, 77, | |
60, 3, 33, 89, 20, | |
55, 73, 99, 63, 3, | |
28, 16, 14, 95, 57, | |
62, 57, 98, 5, 45, | |
65, 24, 21, 88, 91, | |
49, 80, 52, 49, 49, | |
52, 7, 83, 63, 77, | |
96, 15, 95, 13, 98, | |
65, 44, 32, 57, 71, | |
57, 16, 70, 70, 9, | |
48, 55, 2, 42, 75, | |
23, 65, 77, 28, 20, | |
25, 58, 79, 65, 11, | |
60, 95, 64, 48, 88, | |
66, 52, 53, 28, 15, | |
99, 26, 63, 83, 36, | |
53, 45, 78, 92, 3, | |
93, 79, 2, 79, 85, | |
50, 65, 44, 56, 36, | |
28, 77, 8, 12, 59, | |
43, 28, 63, 84, 75, | |
38, 84, 75, 20, 25, | |
9, 89, 55, 61, 32, | |
67, 34, 75, 41, 54, | |
52, 59, 96, 89, 24, | |
12, 95, 52, 64, 50, | |
28, 94, 7, 77, 49, | |
18, 13, 89, 23, 67, | |
28, 34, 18, 100, 93, | |
31, 58, 17, 22, 49, | |
7, 84, 81, 31, 70, | |
80, 1, 48, 24, 74, | |
46, 22, 87, 25, 19, | |
14, 57, 73, 29, 66, | |
19, 1, 13, 45, 19, | |
28, 93, 84, 84, 30, | |
31, 39, 62, 80, 1, | |
79, 72, 47, 2, 61, | |
100, 62, 33, 32, 48, | |
48, 94, 68, 36, 64, | |
23, 95, 59, 62, 97, | |
63, 62, 10, 16, 86, | |
80, 45, 86, 51, 14, | |
68, 40, 16, 35, 48, | |
89, 49, 69, 4, 47, | |
31, 47, 22, 44, 58, | |
35, 85, 71, 59, 2, | |
14, 5, 49, 3, 22, | |
2, 83, 11, 2, 91, | |
51, 84, 1, 93, 34, | |
77, 24, 26, 77, 62, | |
42, 80, 22, 76, 67, | |
45, 58, 5, 25, 14, | |
52, 94, 57, 60, 48, | |
80, 71, 64, 1, 99, | |
10, 49, 75, 81, 59, | |
1, 51, 3, 26, 70, | |
97, 38, 55, 97, 1, | |
37, 92, 24, 11, 45, | |
36, 1, 73, 2, 18, | |
71, 64, 94, 54, 37, | |
37, 9, 88, 55, 84, | |
8, 85, 33, 67, 15, | |
12, 95, 14, 84, 32, | |
60, 28, 58, 29, 39, | |
38, 51, 92, 24, 64, | |
86, 23, 76, 43, 49, | |
65, 97, 92, 62, 22, | |
53, 6, 46, 67, 95, | |
21, 80, 87, 73, 54, | |
75, 44, 35, 29, 81, | |
50, 55, 29, 2, 47, | |
64, 42, 79, 75, 87, | |
78, 75, 61, 5, 51, | |
63, 58, 58, 33, 83, | |
26, 90, 25, 28, 99, | |
2, 40, 9, 57, 80, | |
30, 3, 16, 89, 24, | |
45, 33, 50, 76, 49, | |
31, 17, 41, 98, 56, | |
95, 70, 83, 73, 68, | |
16, 13, 42, 86, 29, | |
51, 57, 10, 87, 84, | |
88, 9, 15, 100, 39, | |
73, 28, 32, 69, 61, | |
87, 5, 32, 43, 54, | |
65, 79, 33, 51, 81, | |
75, 93, 73, 26, 55, | |
53, 37, 49, 24, 43, | |
66, 9, 51, 20, 21, | |
9, 70, 11, 94, 64, | |
68, 56, 25, 26, 60, | |
27, 16, 47, 63, 77, | |
82, 16, 16, 97, 40, | |
5, 40, 60, 84, 64, | |
85, 29, 26, 17, 75, | |
66, 68, 75, 10, 96, | |
61, 21, 5, 46, 68, | |
30, 40, 22, 85, 3, | |
68, 88, 37, 10, 12, | |
98, 47, 29, 84, 94, | |
38, 30, 71, 97, 41, | |
68, 28, 95, 50, 14, | |
4, 10, 68, 82, 14, | |
81, 85, 4, 3, 50, | |
32, 68, 14, 29, 43, | |
22, 44, 74, 38, 23, | |
3, 32, 58, 18, 50, | |
4, 76, 97, 78, 82, | |
39, 31, 60, 9, 64, | |
89, 87, 69, 44, 25, | |
8, 23, 55, 57, 98, | |
24, 15, 75, 22, 68, | |
79, 25, 25, 93, 77, | |
66, 19, 21, 45, 27, | |
94, 47, 5, 97, 27, | |
54, 64, 31, 44, 31, | |
61, 11, 84, 19, 79, | |
93, 4, 80, 32, 78, | |
36, 1, 43, 100, 16, | |
87, 25, 79, 20, 97, | |
38, 29, 52, 46, 76, | |
72, 10, 14, 41, 2, | |
65, 46, 5, 40, 38, | |
88, 1, 85, 37, 53, | |
58, 16, 48, 62, 5, | |
71, 44, 69, 35, 93, | |
10, 23, 100, 69, 82, | |
57, 33, 43, 21, 69, | |
38, 79, 86, 86, 80, | |
49, 23, 45, 23, 48, | |
19, 57, 84, 25, 35, | |
35, 10, 6, 83, 23, | |
33, 100, 78, 2, 32, | |
7, 57, 15, 55, 89, | |
16, 15, 97, 53, 85, | |
23, 90, 29, 5, 53, | |
12, 97, 55, 47, 17, | |
78, 91, 82, 55, 70, | |
100, 5, 17, 38, 73, | |
88, 27, 31, 85, 16, | |
21, 41, 13, 98, 47, | |
69, 21, 36, 87, 3, | |
61, 4, 91, 8, 64, | |
92, 51, 61, 79, 100, | |
27, 100, 24, 51, 37, | |
72, 60, 43, 38, 9, | |
48, 37, 79, 95, 97, | |
8, 77, 8, 36, 93, | |
24, 100, 27, 46, 16, | |
14, 69, 74, 63, 70, | |
43, 62, 29, 12, 23, | |
40, 53, 59, 75, 12, | |
89, 30, 29, 54, 34, | |
51, 93, 53, 74, 100, | |
92, 77, 11, 48, 73, | |
81, 75, 68, 20, 30, | |
61, 19, 99, 89, 23, | |
31, 66, 37, 76, 81, | |
76, 68, 47, 93, 4, | |
10, 86, 94, 53, 56, | |
100, 34, 14, 28, 34, | |
25, 85, 31, 7, 66, | |
29, 42, 16, 29, 53, | |
31, 61, 85, 51, 17, | |
18, 46, 89, 13, 49, | |
33, 37, 97, 14, 33, | |
88, 13, 66, 35, 54, | |
57, 76, 53, 68, 44, | |
54, 3, 17, 75, 90, | |
93, 5, 79, 66, 42, | |
70, 78, 14, 89, 19, | |
96, 60, 7, 90, 32, | |
88, 93, 59, 30, 88, | |
11, 8, 53, 71, 65, | |
79, 19, 32, 92, 69, | |
61, 91, 29, 45, 1, | |
34, 9, 40, 63, 27, | |
51, 2, 59, 48, 50, | |
5, 19, 64, 28, 88, | |
3, 35, 66, 2, 80, | |
6, 50, 31, 70, 78, | |
85, 51, 47, 77, 51, | |
15, 74, 73, 71, 70, | |
47, 90, 87, 24, 31, | |
58, 69, 33, 52, 95, | |
95, 20, 29, 80, 48, | |
57, 47, 21, 94, 44, | |
22, 47, 40, 30, 61, | |
66, 59, 59, 75, 60, | |
94, 98, 4, 26, 17, | |
64, 22, 64, 12, 97, | |
77, 75, 21, 89, 20, | |
88, 64, 82, 85, 29, | |
17, 41, 71, 28, 76, | |
13, 94, 99, 17, 53, | |
24, 24, 54, 100, 84, | |
12, 78, 97, 66, 1, | |
48, 73, 32, 3, 82, | |
80, 28, 85, 17, 59, | |
80, 2, 92, 28, 32, | |
89, 63, 10, 98, 16, | |
97, 58, 81, 1, 10, | |
50, 100, 80, 80, 62, | |
17, 73, 45, 73, 39, | |
92, 74, 5, 53, 70, | |
65, 17, 40, 51, 21, | |
42, 89, 56, 26, 24, | |
11, 69, 22, 82, 24, | |
98, 24, 52, 21, 31, | |
34, 46, 6, 44, 52, | |
74, 16, 64, 56, 11, | |
59, 17, 27, 27, 68, | |
7, 73, 80, 44, 70, | |
11, 86, 65, 100, 93, | |
90, 95, 2, 66, 17, | |
15, 30, 96, 3, 33, | |
40, 88, 9, 70, 48, | |
18, 72, 46, 100, 16, | |
73, 1, 50, 54, 56, | |
36, 100, 25, 81, 70, | |
42, 53, 30, 42, 43, | |
27, 81, 49, 76, 56, | |
5, 45, 86, 13, 32, | |
16, 75, 64, 66, 32, | |
76, 86, 50, 59, 34, | |
45, 30, 63, 81, 82, | |
18, 53, 14, 17, 19, | |
96, 54, 70, 71, 87, | |
72, 2, 60, 58, 59, | |
22, 51, 5, 29, 32, | |
68, 57, 44, 81, 72, | |
20, 55, 75, 82, 57, | |
99, 6, 20, 13, 51, | |
18, 70, 62, 85, 15, | |
72, 4, 69, 24, 70, | |
55, 100, 28, 58, 14, | |
18, 3, 98, 70, 97, | |
71, 46, 91, 70, 60, | |
2, 87, 72, 43, 96, | |
72, 63, 23, 15, 27, | |
28, 93, 95, 47, 75, | |
16, 77, 78, 21, 1, | |
85, 69, 77, 96, 82, | |
43, 37, 98, 93, 41, | |
30, 86, 52, 32, 28, | |
44, 12, 25, 35, 37, | |
93, 29, 89, 47, 57, | |
63, 41, 34, 34, 66, | |
91, 42, 100, 93, 44, | |
57, 2, 69, 46, 29, | |
53, 61, 90, 48, 62, | |
38, 81, 55, 62, 1, | |
32, 32, 97, 8, 38, | |
1, 81, 18, 58, 22, | |
10, 94, 42, 38, 67, | |
19, 71, 73, 76, 60, | |
90, 60, 51, 35, 51, | |
57, 45, 45, 94, 59, | |
86, 90, 13, 48, 86, | |
60, 39, 70, 6, 4, | |
32, 77, 53, 9, 22, | |
73, 25, 7, 41, 8, | |
87, 6, 3, 55, 17, | |
28, 68, 33, 90, 9, | |
79, 26, 70, 89, 52, | |
5, 10, 48, 38, 65, | |
43, 11, 84, 30, 64, | |
83, 60, 19, 59, 89, | |
9, 53, 12, 89, 63, | |
14, 89, 86, 44, 35, | |
98, 49, 74, 45, 41, | |
100, 90, 34, 91, 14, | |
100, 55, 89, 96, 78, | |
34, 88, 55, 92, 55, | |
47, 96, 65, 69, 50, | |
39, 64, 6, 59, 2, | |
87, 65, 6, 8, 4, | |
64, 37, 75, 10, 18, | |
68, 14, 44, 77, 94, | |
37, 60, 79, 89, 97, | |
4, 70, 12, 65, 87, | |
77, 8, 94, 100, 70, | |
51, 17, 81, 99, 11, | |
90, 11, 85, 10, 58, | |
100, 93, 3, 74, 33, | |
21, 16, 4, 71, 1, | |
29, 49, 55, 83, 91, | |
15, 89, 33, 55, 33, | |
15, 65, 48, 78, 44, | |
20, 76, 19, 59, 59, | |
67, 60, 97, 81, 49, | |
24, 88, 99, 16, 50, | |
25, 69, 50, 34, 86, | |
78, 27, 45, 94, 42, | |
58, 82, 56, 54, 76, | |
8, 45, 50, 22, 45, | |
98, 12, 1, 55, 48, | |
33, 52, 95, 74, 33, | |
13, 47, 35, 9, 37, | |
15, 29, 76, 58, 81, | |
35, 61, 21, 87, 5, | |
94, 12, 42, 33, 60, | |
87, 22, 75, 93, 54, | |
87, 87, 13, 89, 83, | |
92, 16, 42, 34, 84, | |
9, 12, 8, 11, 25, | |
35, 100, 78, 96, 92, | |
51, 39, 44, 19, 85, | |
74, 3, 49, 78, 51, | |
17, 26, 95, 16, 56, | |
34, 69, 96, 3, 2, | |
40, 26, 63, 16, 59, | |
21, 82, 86, 5, 30, | |
26, 87, 9, 20, 7, | |
77, 25, 76, 76, 27, | |
42, 74, 71, 85, 97, | |
85, 71, 5, 37, 70, | |
62, 52, 40, 69, 71, | |
2, 84, 86, 92, 13, | |
87, 2, 25, 71, 97, | |
47, 23, 97, 58, 73, | |
65, 50, 58, 59, 44, | |
72, 55, 66, 20, 83, | |
28, 82, 17, 92, 67, | |
1, 91, 12, 41, 73, | |
17, 3, 56, 88, 37, | |
35, 1, 5, 60, 22, | |
46, 52, 99, 33, 50, | |
95, 25, 58, 30, 81, | |
42, 33, 95, 45, 15, | |
57, 91, 54, 88, 31, | |
54, 73, 72, 16, 61, | |
65, 75, 16, 57, 62, | |
28, 63, 27, 66, 99, | |
88, 70, 99, 81, 75, | |
5, 50, 18, 58, 49, | |
32, 33, 36, 75, 85, | |
93, 55, 91, 63, 59, | |
27, 50, 3, 7, 47, | |
68, 85, 51, 27, 83, | |
48, 40, 79, 21, 47, | |
32, 31, 60, 7, 83, | |
43, 29, 19, 29, 67, | |
97, 89, 69, 9, 28, | |
32, 79, 23, 26, 30, | |
31, 62, 48, 44, 97, | |
63, 44, 20, 96, 90, | |
36, 18, 85, 14, 82, | |
85, 29, 71, 8, 93, | |
48, 42, 57, 87, 98, | |
99, 73, 97, 64, 71, | |
15, 70, 44, 97, 22, | |
95, 53, 7, 48, 9, | |
40, 42, 3, 70, 97, | |
62, 91, 15, 50, 52, | |
69, 97, 7, 38, 4, | |
31, 71, 34, 3, 9, | |
100, 13, 69, 61, 23, | |
14, 93, 16, 25, 23, | |
54, 82, 72, 30, 4, | |
12, 75, 72, 89, 43, | |
19, 22, 100, 52, 79, | |
48, 85, 82, 27, 44, | |
44, 61, 26, 93, 74, | |
83, 38, 57, 38, 4, | |
85, 36, 76, 16, 78, | |
51, 24, 79, 71, 20, | |
2, 89, 31, 90, 80, | |
80, 96, 13, 85, 27, | |
42, 22, 15, 81, 29, | |
96, 76, 69, 12, 56, | |
72, 88, 3, 12, 91, | |
70, 72, 96, 83, 17, | |
40, 36, 69, 20, 40, | |
27, 19, 81, 75, 69, | |
12, 29, 56, 44, 62, | |
85, 78, 42, 10, 66, | |
80, 36, 16, 21, 47, | |
12, 65, 83, 81, 26, | |
2, 88, 81, 6, 99, | |
94, 76, 78, 41, 44, | |
42, 89, 36, 37, 15, | |
67, 65, 44, 39, 40, | |
87, 85, 16, 13, 11, | |
53, 4, 50, 45, 82, | |
96, 50, 66, 21, 41, | |
73, 39, 66, 31, 64, | |
60, 94, 27, 93, 25, | |
9, 17, 59, 34, 21, | |
46, 53, 77, 62, 33, | |
39, 2, 15, 5, 11, | |
49, 1, 76, 51, 100, | |
60, 42, 63, 14, 32, | |
28, 63, 47, 95, 79, | |
16, 67, 46, 36, 84, | |
25, 2, 86, 7, 65, | |
68, 36, 69, 92, 76, | |
74, 11, 36, 5, 79, | |
7, 75, 56, 81, 88, | |
84, 71, 60, 97, 30, | |
8, 89, 67, 89, 51, | |
62, 81, 44, 51, 4, | |
28, 82, 24, 13, 72, | |
1, 16, 6, 49, 51, | |
24, 21, 25, 59, 82, | |
35, 92, 75, 90, 52, | |
30, 44, 79, 6, 95, | |
91, 18, 16, 65, 35, | |
92, 97, 30, 4, 82, | |
5, 27, 16, 32, 23, | |
73, 99, 83, 87, 84, | |
38, 56, 87, 25, 91, | |
69, 46, 64, 64, 27, | |
74, 87, 71, 8, 27, | |
25, 3, 25, 28, 56, | |
69, 58, 2, 9, 43, | |
24, 29, 61, 78, 93, | |
9, 67, 86, 59, 53, | |
18, 5, 30, 18, 99, | |
87, 99, 5, 62, 79, | |
99, 77, 19, 50, 41, | |
69, 45, 4, 82, 68, | |
38, 67, 18, 47, 33, | |
76, 69, 69, 85, 29, | |
27, 59, 32, 1, 72, | |
63, 85, 3, 88, 45, | |
23, 64, 95, 79, 55, | |
75, 78, 77, 10, 30, | |
31, 48, 58, 100, 10, | |
4, 98, 41, 30, 89, | |
47, 45, 14, 78, 84, | |
20, 24, 20, 94, 91, | |
54, 60, 37, 81, 11, | |
7, 39, 57, 33, 87, | |
8, 22, 86, 66, 35, | |
82, 10, 80, 19, 80, | |
100, 57, 11, 74, 8, | |
39, 53, 96, 84, 25, | |
52, 82, 68, 5, 19, | |
63, 29, 71, 72, 18, | |
33, 14, 18, 62, 81, | |
15, 20, 100, 85, 51, | |
54, 42, 42, 2, 49, | |
73, 73, 17, 10, 84, | |
33, 32, 66, 36, 52, | |
11, 69, 56, 10, 98, | |
3, 43, 16, 49, 24, | |
16, 45, 30, 82, 27, | |
30, 98, 4, 5, 57, | |
22, 56, 79, 91, 47, | |
66, 11, 25, 12, 33, | |
11, 69, 14, 39, 2, | |
7, 55, 5, 55, 29, | |
13, 43, 25, 10, 52, | |
98, 5, 60, 47, 85, | |
19, 93, 78, 71, 84, | |
84, 82, 81, 14, 63, | |
60, 74, 52, 9, 41, | |
60, 46, 11, 42, 27, | |
6, 20, 13, 64, 25, | |
21, 97, 89, 97, 52, | |
11, 83, 70, 77, 54, | |
59, 88, 98, 58, 65, | |
100, 78, 100, 55, 49, | |
9, 12, 83, 70, 52, | |
99, 10, 12, 7, 100, | |
58, 40, 20, 3, 60, | |
10, 27, 85, 72, 35, | |
88, 48, 53, 84, 57, | |
61, 84, 16, 92, 37, | |
8, 44, 57, 80, 56, | |
64, 51, 6, 52, 45, | |
17, 31, 94, 77, 77, | |
94, 72, 23, 7, 4, | |
4, 92, 51, 52, 90, | |
54, 68, 74, 83, 37, | |
7, 92, 91, 17, 1, | |
68, 55, 25, 45, 40, | |
91, 5, 16, 100, 86, | |
3, 26, 67, 25, 31, | |
73, 83, 9, 79, 71, | |
8, 44, 96, 96, 63, | |
98, 71, 5, 69, 93, | |
32, 22, 76, 87, 66, | |
18, 53, 89, 1, 69, | |
53, 89, 56, 74, 59, | |
40, 30, 5, 83, 55, | |
65, 16, 34, 100, 52, | |
68, 85, 55, 47, 35, | |
47, 93, 74, 67, 13, | |
51, 95, 97, 83, 35, | |
8, 16, 87, 88, 59, | |
91, 8, 97, 71, 96, | |
43 | |
}; | |
uint64 CResult = GetMeasureForAdd(4096, NumbersToSum); | |
uint64 end = __rdtsc(); | |
uint64 ticks = end - start; | |
uint64 jsTicks, wasmTicks; | |
printf("Result from C: %llu\n", CResult); | |
printf("Total processor ticks in C: %llu\n", ticks); | |
// Initialize V8. | |
v8::V8::InitializeICUDefaultLocation(argv[0]); | |
v8::V8::InitializeExternalStartupData(argv[0]); | |
std::unique_ptr<v8::Platform> platform = v8::platform::NewDefaultPlatform(); | |
v8::V8::InitializePlatform(platform.get()); | |
v8::V8::Initialize(); | |
// Create a new Isolate and make it the current one. | |
v8::Isolate::CreateParams create_params; | |
create_params.array_buffer_allocator = | |
v8::ArrayBuffer::Allocator::NewDefaultAllocator(); | |
v8::Isolate* isolate = v8::Isolate::New(create_params); | |
{ | |
v8::Isolate::Scope isolate_scope(isolate); | |
// Create a stack-allocated handle scope. | |
v8::HandleScope handle_scope(isolate); | |
// Create a new context. | |
v8::Local<v8::Context> context = v8::Context::New(isolate); | |
// Enter the context for compiling and running the hello world script. | |
v8::Context::Scope context_scope(context); | |
#if 1 | |
{ | |
// Create a string containing the JavaScript source code. | |
v8::Local<v8::String> source = | |
v8::String::NewFromUtf8Literal(isolate, | |
R"( | |
const Nums = new Uint32Array([ | |
4, 68, 10, 6, 72, | |
63, 82, 71, 22, 7, | |
78, 19, 87, 14, 27, | |
64, 71, 22, 79, 14, | |
36, 36, 18, 21, 77, | |
88, 90, 36, 29, 28, | |
70, 18, 78, 31, 5, | |
33, 73, 85, 15, 50, | |
70, 93, 83, 99, 80, | |
78, 62, 24, 41, 12, | |
36, 24, 36, 7, 95, | |
91, 43, 16, 36, 33, | |
50, 46, 25, 82, 73, | |
30, 21, 56, 95, 45, | |
94, 45, 48, 23, 68, | |
70, 27, 54, 30, 78, | |
11, 87, 98, 33, 64, | |
37, 74, 4, 61, 86, | |
91, 48, 38, 5, 46, | |
9, 78, 37, 10, 21, | |
66, 37, 50, 52, 29, | |
27, 14, 91, 36, 94, | |
85, 9, 23, 2, 14, | |
72, 82, 36, 46, 94, | |
5, 7, 94, 53, 97, | |
18, 94, 18, 13, 35, | |
45, 49, 4, 54, 89, | |
90, 68, 31, 21, 72, | |
58, 12, 16, 48, 25, | |
17, 20, 31, 41, 71, | |
13, 85, 92, 24, 55, | |
79, 22, 45, 94, 21, | |
35, 31, 43, 26, 86, | |
35, 43, 40, 36, 66, | |
46, 63, 34, 1, 18, | |
85, 28, 4, 28, 44, | |
5, 18, 4, 16, 83, | |
8, 61, 15, 43, 2, | |
20, 22, 26, 82, 35, | |
11, 63, 70, 15, 80, | |
98, 34, 2, 39, 11, | |
32, 44, 93, 99, 5, | |
75, 98, 38, 71, 4, | |
20, 88, 53, 2, 23, | |
76, 12, 30, 95, 24, | |
21, 58, 15, 61, 88, | |
12, 84, 84, 39, 24, | |
49, 65, 75, 50, 32, | |
57, 86, 51, 85, 71, | |
98, 30, 43, 27, 33, | |
32, 17, 82, 11, 50, | |
40, 4, 5, 25, 93, | |
64, 35, 86, 97, 24, | |
59, 29, 64, 47, 38, | |
87, 25, 94, 80, 10, | |
37, 59, 43, 16, 27, | |
21, 75, 93, 67, 94, | |
74, 43, 53, 6, 7, | |
63, 72, 69, 60, 14, | |
30, 77, 8, 39, 35, | |
68, 92, 86, 24, 42, | |
95, 42, 32, 71, 88, | |
42, 51, 33, 63, 63, | |
41, 52, 12, 66, 55, | |
39, 70, 92, 84, 33, | |
3, 55, 26, 93, 17, | |
43, 63, 25, 68, 28, | |
77, 1, 35, 67, 72, | |
33, 74, 42, 86, 5, | |
25, 98, 73, 4, 27, | |
54, 68, 88, 10, 94, | |
66, 12, 8, 13, 12, | |
24, 78, 14, 23, 80, | |
23, 31, 22, 83, 12, | |
83, 73, 15, 84, 90, | |
46, 58, 80, 84, 93, | |
95, 20, 54, 59, 53, | |
69, 61, 50, 56, 7, | |
20, 22, 82, 24, 37, | |
76, 15, 21, 14, 85, | |
76, 59, 22, 31, 15, | |
78, 29, 68, 87, 50, | |
10, 30, 84, 59, 78, | |
66, 93, 89, 78, 89, | |
52, 97, 55, 26, 35, | |
77, 37, 52, 47, 56, | |
26, 90, 49, 75, 51, | |
81, 85, 38, 78, 21, | |
18, 36, 70, 53, 7, | |
37, 80, 81, 7, 86, | |
59, 15, 61, 71, 71, | |
56, 15, 19, 79, 81, | |
37, 45, 73, 85, 29, | |
68, 45, 96, 51, 39, | |
9, 78, 4, 60, 6, | |
42, 57, 6, 52, 11, | |
15, 50, 91, 54, 37, | |
1, 43, 61, 1, 97, | |
58, 75, 41, 99, 47, | |
29, 100, 75, 65, 65, | |
79, 44, 78, 20, 61, | |
49, 63, 69, 54, 84, | |
40, 91, 15, 45, 10, | |
31, 36, 83, 76, 78, | |
3, 66, 85, 20, 47, | |
50, 95, 20, 45, 33, | |
14, 13, 5, 67, 14, | |
47, 22, 67, 97, 74, | |
90, 7, 93, 53, 100, | |
78, 32, 82, 73, 27, | |
97, 49, 27, 79, 12, | |
71, 1, 67, 21, 9, | |
24, 86, 16, 97, 95, | |
59, 32, 9, 48, 93, | |
79, 22, 10, 97, 97, | |
4, 68, 93, 60, 55, | |
80, 75, 52, 50, 50, | |
98, 37, 71, 97, 4, | |
23, 98, 2, 44, 94, | |
19, 74, 29, 6, 34, | |
79, 74, 53, 90, 100, | |
99, 87, 61, 38, 94, | |
49, 21, 74, 68, 88, | |
22, 92, 88, 84, 97, | |
17, 44, 42, 9, 74, | |
22, 41, 79, 72, 35, | |
26, 34, 21, 61, 18, | |
33, 86, 54, 94, 89, | |
63, 62, 78, 60, 16, | |
95, 89, 52, 6, 8, | |
84, 73, 23, 64, 21, | |
52, 78, 15, 84, 75, | |
88, 41, 63, 47, 23, | |
41, 19, 72, 39, 7, | |
19, 83, 11, 70, 40, | |
67, 43, 78, 53, 98, | |
91, 40, 19, 46, 50, | |
58, 41, 89, 10, 64, | |
87, 38, 56, 77, 88, | |
18, 98, 47, 5, 79, | |
35, 30, 32, 63, 74, | |
21, 61, 45, 53, 40, | |
23, 22, 87, 94, 37, | |
17, 89, 85, 13, 38, | |
47, 41, 85, 29, 27, | |
20, 77, 7, 54, 2, | |
85, 91, 30, 19, 96, | |
42, 16, 24, 16, 25, | |
86, 35, 41, 41, 60, | |
13, 2, 66, 86, 88, | |
52, 22, 8, 43, 58, | |
15, 79, 44, 87, 7, | |
73, 53, 59, 86, 99, | |
90, 71, 38, 17, 73, | |
81, 84, 93, 57, 11, | |
18, 41, 11, 82, 5, | |
67, 18, 23, 18, 60, | |
38, 25, 89, 47, 63, | |
13, 53, 53, 90, 12, | |
36, 57, 65, 67, 94, | |
1, 94, 72, 85, 45, | |
60, 84, 80, 27, 27, | |
68, 33, 8, 4, 43, | |
91, 23, 94, 63, 50, | |
31, 69, 75, 24, 84, | |
5, 45, 56, 69, 3, | |
97, 8, 1, 13, 76, | |
46, 73, 97, 34, 79, | |
51, 14, 96, 98, 84, | |
91, 45, 27, 51, 97, | |
3, 32, 70, 70, 62, | |
64, 96, 10, 21, 91, | |
17, 96, 14, 49, 79, | |
68, 17, 39, 2, 53, | |
53, 52, 75, 13, 71, | |
75, 87, 91, 86, 7, | |
82, 85, 54, 66, 33, | |
37, 77, 81, 26, 66, | |
10, 61, 74, 99, 59, | |
62, 53, 83, 87, 24, | |
60, 20, 54, 55, 76, | |
91, 22, 32, 46, 98, | |
45, 37, 8, 29, 72, | |
64, 52, 55, 33, 44, | |
58, 10, 81, 52, 43, | |
47, 47, 81, 28, 36, | |
6, 44, 48, 82, 15, | |
61, 42, 47, 59, 21, | |
81, 51, 100, 63, 7, | |
94, 6, 19, 73, 41, | |
15, 55, 86, 77, 100, | |
11, 59, 20, 68, 49, | |
42, 97, 95, 17, 84, | |
67, 99, 19, 55, 80, | |
57, 61, 87, 33, 36, | |
78, 9, 91, 33, 14, | |
94, 16, 35, 74, 19, | |
37, 92, 51, 65, 13, | |
94, 22, 98, 68, 19, | |
53, 74, 82, 61, 46, | |
3, 94, 30, 97, 43, | |
46, 55, 13, 76, 62, | |
34, 38, 45, 13, 60, | |
72, 9, 83, 11, 88, | |
68, 12, 12, 33, 91, | |
67, 39, 54, 4, 57, | |
22, 9, 7, 78, 4, | |
53, 7, 37, 57, 46, | |
25, 21, 91, 8, 29, | |
60, 36, 36, 88, 11, | |
34, 32, 82, 50, 48, | |
34, 86, 68, 62, 77, | |
14, 9, 34, 85, 53, | |
19, 96, 4, 52, 1, | |
49, 33, 7, 96, 30, | |
7, 5, 14, 72, 96, | |
71, 97, 86, 2, 69, | |
26, 1, 74, 94, 15, | |
15, 17, 50, 13, 97, | |
53, 60, 56, 18, 36, | |
67, 89, 11, 12, 71, | |
87, 2, 24, 10, 4, | |
11, 12, 80, 57, 37, | |
46, 11, 52, 61, 14, | |
32, 45, 78, 12, 20, | |
90, 14, 67, 15, 65, | |
83, 91, 73, 45, 89, | |
70, 71, 39, 59, 63, | |
53, 42, 47, 20, 44, | |
27, 56, 85, 24, 23, | |
48, 55, 61, 42, 25, | |
47, 48, 70, 82, 88, | |
91, 92, 45, 69, 90, | |
25, 81, 31, 25, 41, | |
37, 42, 87, 47, 25, | |
4, 3, 80, 35, 40, | |
17, 68, 98, 84, 95, | |
94, 27, 99, 29, 9, | |
73, 55, 35, 78, 95, | |
96, 71, 35, 88, 81, | |
3, 47, 62, 47, 25, | |
72, 4, 7, 21, 31, | |
13, 18, 95, 58, 43, | |
73, 63, 10, 82, 47, | |
66, 69, 19, 61, 71, | |
77, 60, 33, 99, 71, | |
81, 96, 90, 55, 25, | |
29, 91, 8, 89, 34, | |
6, 8, 27, 46, 45, | |
15, 2, 82, 84, 63, | |
59, 98, 8, 68, 46, | |
32, 90, 50, 86, 98, | |
17, 58, 18, 82, 45, | |
56, 84, 42, 20, 48, | |
82, 79, 100, 89, 46, | |
20, 97, 24, 67, 91, | |
19, 27, 80, 4, 82, | |
41, 11, 91, 79, 60, | |
76, 59, 73, 21, 10, | |
17, 44, 66, 41, 73, | |
39, 93, 61, 50, 99, | |
92, 53, 6, 16, 41, | |
93, 16, 28, 58, 32, | |
31, 9, 57, 7, 3, | |
20, 13, 52, 18, 6, | |
47, 69, 82, 68, 82, | |
52, 75, 3, 65, 30, | |
43, 14, 100, 39, 54, | |
8, 61, 15, 70, 77, | |
1, 19, 45, 59, 14, | |
25, 54, 31, 42, 7, | |
47, 72, 90, 33, 69, | |
40, 81, 66, 41, 69, | |
32, 51, 77, 73, 98, | |
12, 29, 77, 19, 34, | |
85, 21, 26, 68, 37, | |
75, 65, 87, 31, 74, | |
61, 73, 50, 55, 87, | |
92, 14, 43, 46, 35, | |
60, 77, 69, 85, 98, | |
80, 79, 68, 76, 53, | |
53, 53, 18, 26, 46, | |
57, 83, 100, 76, 89, | |
37, 73, 2, 65, 58, | |
65, 48, 19, 46, 65, | |
25, 3, 84, 64, 86, | |
63, 42, 20, 91, 82, | |
92, 54, 9, 6, 1, | |
65, 63, 71, 39, 98, | |
71, 9, 95, 9, 49, | |
22, 93, 80, 49, 52, | |
5, 78, 47, 92, 26, | |
80, 76, 15, 85, 34, | |
55, 92, 43, 7, 98, | |
13, 24, 61, 41, 37, | |
42, 38, 95, 43, 15, | |
70, 50, 1, 100, 6, | |
14, 50, 1, 65, 22, | |
27, 84, 46, 18, 54, | |
9, 68, 74, 59, 5, | |
22, 26, 44, 51, 65, | |
31, 42, 17, 78, 81, | |
20, 92, 72, 89, 96, | |
24, 7, 57, 85, 54, | |
16, 19, 37, 79, 75, | |
95, 92, 12, 29, 78, | |
84, 11, 26, 6, 6, | |
61, 25, 22, 76, 81, | |
7, 97, 68, 10, 72, | |
95, 53, 45, 16, 96, | |
18, 95, 15, 35, 17, | |
90, 69, 65, 70, 1, | |
23, 61, 18, 87, 19, | |
16, 26, 45, 23, 86, | |
74, 82, 39, 7, 65, | |
59, 86, 17, 14, 50, | |
65, 93, 43, 89, 82, | |
30, 41, 10, 19, 74, | |
81, 38, 88, 37, 10, | |
3, 57, 95, 28, 61, | |
26, 8, 14, 74, 22, | |
74, 70, 64, 34, 59, | |
45, 22, 63, 32, 46, | |
15, 14, 93, 10, 80, | |
1, 64, 80, 3, 77, | |
60, 3, 33, 89, 20, | |
55, 73, 99, 63, 3, | |
28, 16, 14, 95, 57, | |
62, 57, 98, 5, 45, | |
65, 24, 21, 88, 91, | |
49, 80, 52, 49, 49, | |
52, 7, 83, 63, 77, | |
96, 15, 95, 13, 98, | |
65, 44, 32, 57, 71, | |
57, 16, 70, 70, 9, | |
48, 55, 2, 42, 75, | |
23, 65, 77, 28, 20, | |
25, 58, 79, 65, 11, | |
60, 95, 64, 48, 88, | |
66, 52, 53, 28, 15, | |
99, 26, 63, 83, 36, | |
53, 45, 78, 92, 3, | |
93, 79, 2, 79, 85, | |
50, 65, 44, 56, 36, | |
28, 77, 8, 12, 59, | |
43, 28, 63, 84, 75, | |
38, 84, 75, 20, 25, | |
9, 89, 55, 61, 32, | |
67, 34, 75, 41, 54, | |
52, 59, 96, 89, 24, | |
12, 95, 52, 64, 50, | |
28, 94, 7, 77, 49, | |
18, 13, 89, 23, 67, | |
28, 34, 18, 100, 93, | |
31, 58, 17, 22, 49, | |
7, 84, 81, 31, 70, | |
80, 1, 48, 24, 74, | |
46, 22, 87, 25, 19, | |
14, 57, 73, 29, 66, | |
19, 1, 13, 45, 19, | |
28, 93, 84, 84, 30, | |
31, 39, 62, 80, 1, | |
79, 72, 47, 2, 61, | |
100, 62, 33, 32, 48, | |
48, 94, 68, 36, 64, | |
23, 95, 59, 62, 97, | |
63, 62, 10, 16, 86, | |
80, 45, 86, 51, 14, | |
68, 40, 16, 35, 48, | |
89, 49, 69, 4, 47, | |
31, 47, 22, 44, 58, | |
35, 85, 71, 59, 2, | |
14, 5, 49, 3, 22, | |
2, 83, 11, 2, 91, | |
51, 84, 1, 93, 34, | |
77, 24, 26, 77, 62, | |
42, 80, 22, 76, 67, | |
45, 58, 5, 25, 14, | |
52, 94, 57, 60, 48, | |
80, 71, 64, 1, 99, | |
10, 49, 75, 81, 59, | |
1, 51, 3, 26, 70, | |
97, 38, 55, 97, 1, | |
37, 92, 24, 11, 45, | |
36, 1, 73, 2, 18, | |
71, 64, 94, 54, 37, | |
37, 9, 88, 55, 84, | |
8, 85, 33, 67, 15, | |
12, 95, 14, 84, 32, | |
60, 28, 58, 29, 39, | |
38, 51, 92, 24, 64, | |
86, 23, 76, 43, 49, | |
65, 97, 92, 62, 22, | |
53, 6, 46, 67, 95, | |
21, 80, 87, 73, 54, | |
75, 44, 35, 29, 81, | |
50, 55, 29, 2, 47, | |
64, 42, 79, 75, 87, | |
78, 75, 61, 5, 51, | |
63, 58, 58, 33, 83, | |
26, 90, 25, 28, 99, | |
2, 40, 9, 57, 80, | |
30, 3, 16, 89, 24, | |
45, 33, 50, 76, 49, | |
31, 17, 41, 98, 56, | |
95, 70, 83, 73, 68, | |
16, 13, 42, 86, 29, | |
51, 57, 10, 87, 84, | |
88, 9, 15, 100, 39, | |
73, 28, 32, 69, 61, | |
87, 5, 32, 43, 54, | |
65, 79, 33, 51, 81, | |
75, 93, 73, 26, 55, | |
53, 37, 49, 24, 43, | |
66, 9, 51, 20, 21, | |
9, 70, 11, 94, 64, | |
68, 56, 25, 26, 60, | |
27, 16, 47, 63, 77, | |
82, 16, 16, 97, 40, | |
5, 40, 60, 84, 64, | |
85, 29, 26, 17, 75, | |
66, 68, 75, 10, 96, | |
61, 21, 5, 46, 68, | |
30, 40, 22, 85, 3, | |
68, 88, 37, 10, 12, | |
98, 47, 29, 84, 94, | |
38, 30, 71, 97, 41, | |
68, 28, 95, 50, 14, | |
4, 10, 68, 82, 14, | |
81, 85, 4, 3, 50, | |
32, 68, 14, 29, 43, | |
22, 44, 74, 38, 23, | |
3, 32, 58, 18, 50, | |
4, 76, 97, 78, 82, | |
39, 31, 60, 9, 64, | |
89, 87, 69, 44, 25, | |
8, 23, 55, 57, 98, | |
24, 15, 75, 22, 68, | |
79, 25, 25, 93, 77, | |
66, 19, 21, 45, 27, | |
94, 47, 5, 97, 27, | |
54, 64, 31, 44, 31, | |
61, 11, 84, 19, 79, | |
93, 4, 80, 32, 78, | |
36, 1, 43, 100, 16, | |
87, 25, 79, 20, 97, | |
38, 29, 52, 46, 76, | |
72, 10, 14, 41, 2, | |
65, 46, 5, 40, 38, | |
88, 1, 85, 37, 53, | |
58, 16, 48, 62, 5, | |
71, 44, 69, 35, 93, | |
10, 23, 100, 69, 82, | |
57, 33, 43, 21, 69, | |
38, 79, 86, 86, 80, | |
49, 23, 45, 23, 48, | |
19, 57, 84, 25, 35, | |
35, 10, 6, 83, 23, | |
33, 100, 78, 2, 32, | |
7, 57, 15, 55, 89, | |
16, 15, 97, 53, 85, | |
23, 90, 29, 5, 53, | |
12, 97, 55, 47, 17, | |
78, 91, 82, 55, 70, | |
100, 5, 17, 38, 73, | |
88, 27, 31, 85, 16, | |
21, 41, 13, 98, 47, | |
69, 21, 36, 87, 3, | |
61, 4, 91, 8, 64, | |
92, 51, 61, 79, 100, | |
27, 100, 24, 51, 37, | |
72, 60, 43, 38, 9, | |
48, 37, 79, 95, 97, | |
8, 77, 8, 36, 93, | |
24, 100, 27, 46, 16, | |
14, 69, 74, 63, 70, | |
43, 62, 29, 12, 23, | |
40, 53, 59, 75, 12, | |
89, 30, 29, 54, 34, | |
51, 93, 53, 74, 100, | |
92, 77, 11, 48, 73, | |
81, 75, 68, 20, 30, | |
61, 19, 99, 89, 23, | |
31, 66, 37, 76, 81, | |
76, 68, 47, 93, 4, | |
10, 86, 94, 53, 56, | |
100, 34, 14, 28, 34, | |
25, 85, 31, 7, 66, | |
29, 42, 16, 29, 53, | |
31, 61, 85, 51, 17, | |
18, 46, 89, 13, 49, | |
33, 37, 97, 14, 33, | |
88, 13, 66, 35, 54, | |
57, 76, 53, 68, 44, | |
54, 3, 17, 75, 90, | |
93, 5, 79, 66, 42, | |
70, 78, 14, 89, 19, | |
96, 60, 7, 90, 32, | |
88, 93, 59, 30, 88, | |
11, 8, 53, 71, 65, | |
79, 19, 32, 92, 69, | |
61, 91, 29, 45, 1, | |
34, 9, 40, 63, 27, | |
51, 2, 59, 48, 50, | |
5, 19, 64, 28, 88, | |
3, 35, 66, 2, 80, | |
6, 50, 31, 70, 78, | |
85, 51, 47, 77, 51, | |
15, 74, 73, 71, 70, | |
47, 90, 87, 24, 31, | |
58, 69, 33, 52, 95, | |
95, 20, 29, 80, 48, | |
57, 47, 21, 94, 44, | |
22, 47, 40, 30, 61, | |
66, 59, 59, 75, 60, | |
94, 98, 4, 26, 17, | |
64, 22, 64, 12, 97, | |
77, 75, 21, 89, 20, | |
88, 64, 82, 85, 29, | |
17, 41, 71, 28, 76, | |
13, 94, 99, 17, 53, | |
24, 24, 54, 100, 84, | |
12, 78, 97, 66, 1, | |
48, 73, 32, 3, 82, | |
80, 28, 85, 17, 59, | |
80, 2, 92, 28, 32, | |
89, 63, 10, 98, 16, | |
97, 58, 81, 1, 10, | |
50, 100, 80, 80, 62, | |
17, 73, 45, 73, 39, | |
92, 74, 5, 53, 70, | |
65, 17, 40, 51, 21, | |
42, 89, 56, 26, 24, | |
11, 69, 22, 82, 24, | |
98, 24, 52, 21, 31, | |
34, 46, 6, 44, 52, | |
74, 16, 64, 56, 11, | |
59, 17, 27, 27, 68, | |
7, 73, 80, 44, 70, | |
11, 86, 65, 100, 93, | |
90, 95, 2, 66, 17, | |
15, 30, 96, 3, 33, | |
40, 88, 9, 70, 48, | |
18, 72, 46, 100, 16, | |
73, 1, 50, 54, 56, | |
36, 100, 25, 81, 70, | |
42, 53, 30, 42, 43, | |
27, 81, 49, 76, 56, | |
5, 45, 86, 13, 32, | |
16, 75, 64, 66, 32, | |
76, 86, 50, 59, 34, | |
45, 30, 63, 81, 82, | |
18, 53, 14, 17, 19, | |
96, 54, 70, 71, 87, | |
72, 2, 60, 58, 59, | |
22, 51, 5, 29, 32, | |
68, 57, 44, 81, 72, | |
20, 55, 75, 82, 57, | |
99, 6, 20, 13, 51, | |
18, 70, 62, 85, 15, | |
72, 4, 69, 24, 70, | |
55, 100, 28, 58, 14, | |
18, 3, 98, 70, 97, | |
71, 46, 91, 70, 60, | |
2, 87, 72, 43, 96, | |
72, 63, 23, 15, 27, | |
28, 93, 95, 47, 75, | |
16, 77, 78, 21, 1, | |
85, 69, 77, 96, 82, | |
43, 37, 98, 93, 41, | |
30, 86, 52, 32, 28, | |
44, 12, 25, 35, 37, | |
93, 29, 89, 47, 57, | |
63, 41, 34, 34, 66, | |
91, 42, 100, 93, 44, | |
57, 2, 69, 46, 29, | |
53, 61, 90, 48, 62, | |
38, 81, 55, 62, 1, | |
32, 32, 97, 8, 38, | |
1, 81, 18, 58, 22, | |
10, 94, 42, 38, 67, | |
19, 71, 73, 76, 60, | |
90, 60, 51, 35, 51, | |
57, 45, 45, 94, 59, | |
86, 90, 13, 48, 86, | |
60, 39, 70, 6, 4, | |
32, 77, 53, 9, 22, | |
73, 25, 7, 41, 8, | |
87, 6, 3, 55, 17, | |
28, 68, 33, 90, 9, | |
79, 26, 70, 89, 52, | |
5, 10, 48, 38, 65, | |
43, 11, 84, 30, 64, | |
83, 60, 19, 59, 89, | |
9, 53, 12, 89, 63, | |
14, 89, 86, 44, 35, | |
98, 49, 74, 45, 41, | |
100, 90, 34, 91, 14, | |
100, 55, 89, 96, 78, | |
34, 88, 55, 92, 55, | |
47, 96, 65, 69, 50, | |
39, 64, 6, 59, 2, | |
87, 65, 6, 8, 4, | |
64, 37, 75, 10, 18, | |
68, 14, 44, 77, 94, | |
37, 60, 79, 89, 97, | |
4, 70, 12, 65, 87, | |
77, 8, 94, 100, 70, | |
51, 17, 81, 99, 11, | |
90, 11, 85, 10, 58, | |
100, 93, 3, 74, 33, | |
21, 16, 4, 71, 1, | |
29, 49, 55, 83, 91, | |
15, 89, 33, 55, 33, | |
15, 65, 48, 78, 44, | |
20, 76, 19, 59, 59, | |
67, 60, 97, 81, 49, | |
24, 88, 99, 16, 50, | |
25, 69, 50, 34, 86, | |
78, 27, 45, 94, 42, | |
58, 82, 56, 54, 76, | |
8, 45, 50, 22, 45, | |
98, 12, 1, 55, 48, | |
33, 52, 95, 74, 33, | |
13, 47, 35, 9, 37, | |
15, 29, 76, 58, 81, | |
35, 61, 21, 87, 5, | |
94, 12, 42, 33, 60, | |
87, 22, 75, 93, 54, | |
87, 87, 13, 89, 83, | |
92, 16, 42, 34, 84, | |
9, 12, 8, 11, 25, | |
35, 100, 78, 96, 92, | |
51, 39, 44, 19, 85, | |
74, 3, 49, 78, 51, | |
17, 26, 95, 16, 56, | |
34, 69, 96, 3, 2, | |
40, 26, 63, 16, 59, | |
21, 82, 86, 5, 30, | |
26, 87, 9, 20, 7, | |
77, 25, 76, 76, 27, | |
42, 74, 71, 85, 97, | |
85, 71, 5, 37, 70, | |
62, 52, 40, 69, 71, | |
2, 84, 86, 92, 13, | |
87, 2, 25, 71, 97, | |
47, 23, 97, 58, 73, | |
65, 50, 58, 59, 44, | |
72, 55, 66, 20, 83, | |
28, 82, 17, 92, 67, | |
1, 91, 12, 41, 73, | |
17, 3, 56, 88, 37, | |
35, 1, 5, 60, 22, | |
46, 52, 99, 33, 50, | |
95, 25, 58, 30, 81, | |
42, 33, 95, 45, 15, | |
57, 91, 54, 88, 31, | |
54, 73, 72, 16, 61, | |
65, 75, 16, 57, 62, | |
28, 63, 27, 66, 99, | |
88, 70, 99, 81, 75, | |
5, 50, 18, 58, 49, | |
32, 33, 36, 75, 85, | |
93, 55, 91, 63, 59, | |
27, 50, 3, 7, 47, | |
68, 85, 51, 27, 83, | |
48, 40, 79, 21, 47, | |
32, 31, 60, 7, 83, | |
43, 29, 19, 29, 67, | |
97, 89, 69, 9, 28, | |
32, 79, 23, 26, 30, | |
31, 62, 48, 44, 97, | |
63, 44, 20, 96, 90, | |
36, 18, 85, 14, 82, | |
85, 29, 71, 8, 93, | |
48, 42, 57, 87, 98, | |
99, 73, 97, 64, 71, | |
15, 70, 44, 97, 22, | |
95, 53, 7, 48, 9, | |
40, 42, 3, 70, 97, | |
62, 91, 15, 50, 52, | |
69, 97, 7, 38, 4, | |
31, 71, 34, 3, 9, | |
100, 13, 69, 61, 23, | |
14, 93, 16, 25, 23, | |
54, 82, 72, 30, 4, | |
12, 75, 72, 89, 43, | |
19, 22, 100, 52, 79, | |
48, 85, 82, 27, 44, | |
44, 61, 26, 93, 74, | |
83, 38, 57, 38, 4, | |
85, 36, 76, 16, 78, | |
51, 24, 79, 71, 20, | |
2, 89, 31, 90, 80, | |
80, 96, 13, 85, 27, | |
42, 22, 15, 81, 29, | |
96, 76, 69, 12, 56, | |
72, 88, 3, 12, 91, | |
70, 72, 96, 83, 17, | |
40, 36, 69, 20, 40, | |
27, 19, 81, 75, 69, | |
12, 29, 56, 44, 62, | |
85, 78, 42, 10, 66, | |
80, 36, 16, 21, 47, | |
12, 65, 83, 81, 26, | |
2, 88, 81, 6, 99, | |
94, 76, 78, 41, 44, | |
42, 89, 36, 37, 15, | |
67, 65, 44, 39, 40, | |
87, 85, 16, 13, 11, | |
53, 4, 50, 45, 82, | |
96, 50, 66, 21, 41, | |
73, 39, 66, 31, 64, | |
60, 94, 27, 93, 25, | |
9, 17, 59, 34, 21, | |
46, 53, 77, 62, 33, | |
39, 2, 15, 5, 11, | |
49, 1, 76, 51, 100, | |
60, 42, 63, 14, 32, | |
28, 63, 47, 95, 79, | |
16, 67, 46, 36, 84, | |
25, 2, 86, 7, 65, | |
68, 36, 69, 92, 76, | |
74, 11, 36, 5, 79, | |
7, 75, 56, 81, 88, | |
84, 71, 60, 97, 30, | |
8, 89, 67, 89, 51, | |
62, 81, 44, 51, 4, | |
28, 82, 24, 13, 72, | |
1, 16, 6, 49, 51, | |
24, 21, 25, 59, 82, | |
35, 92, 75, 90, 52, | |
30, 44, 79, 6, 95, | |
91, 18, 16, 65, 35, | |
92, 97, 30, 4, 82, | |
5, 27, 16, 32, 23, | |
73, 99, 83, 87, 84, | |
38, 56, 87, 25, 91, | |
69, 46, 64, 64, 27, | |
74, 87, 71, 8, 27, | |
25, 3, 25, 28, 56, | |
69, 58, 2, 9, 43, | |
24, 29, 61, 78, 93, | |
9, 67, 86, 59, 53, | |
18, 5, 30, 18, 99, | |
87, 99, 5, 62, 79, | |
99, 77, 19, 50, 41, | |
69, 45, 4, 82, 68, | |
38, 67, 18, 47, 33, | |
76, 69, 69, 85, 29, | |
27, 59, 32, 1, 72, | |
63, 85, 3, 88, 45, | |
23, 64, 95, 79, 55, | |
75, 78, 77, 10, 30, | |
31, 48, 58, 100, 10, | |
4, 98, 41, 30, 89, | |
47, 45, 14, 78, 84, | |
20, 24, 20, 94, 91, | |
54, 60, 37, 81, 11, | |
7, 39, 57, 33, 87, | |
8, 22, 86, 66, 35, | |
82, 10, 80, 19, 80, | |
100, 57, 11, 74, 8, | |
39, 53, 96, 84, 25, | |
52, 82, 68, 5, 19, | |
63, 29, 71, 72, 18, | |
33, 14, 18, 62, 81, | |
15, 20, 100, 85, 51, | |
54, 42, 42, 2, 49, | |
73, 73, 17, 10, 84, | |
33, 32, 66, 36, 52, | |
11, 69, 56, 10, 98, | |
3, 43, 16, 49, 24, | |
16, 45, 30, 82, 27, | |
30, 98, 4, 5, 57, | |
22, 56, 79, 91, 47, | |
66, 11, 25, 12, 33, | |
11, 69, 14, 39, 2, | |
7, 55, 5, 55, 29, | |
13, 43, 25, 10, 52, | |
98, 5, 60, 47, 85, | |
19, 93, 78, 71, 84, | |
84, 82, 81, 14, 63, | |
60, 74, 52, 9, 41, | |
60, 46, 11, 42, 27, | |
6, 20, 13, 64, 25, | |
21, 97, 89, 97, 52, | |
11, 83, 70, 77, 54, | |
59, 88, 98, 58, 65, | |
100, 78, 100, 55, 49, | |
9, 12, 83, 70, 52, | |
99, 10, 12, 7, 100, | |
58, 40, 20, 3, 60, | |
10, 27, 85, 72, 35, | |
88, 48, 53, 84, 57, | |
61, 84, 16, 92, 37, | |
8, 44, 57, 80, 56, | |
64, 51, 6, 52, 45, | |
17, 31, 94, 77, 77, | |
94, 72, 23, 7, 4, | |
4, 92, 51, 52, 90, | |
54, 68, 74, 83, 37, | |
7, 92, 91, 17, 1, | |
68, 55, 25, 45, 40, | |
91, 5, 16, 100, 86, | |
3, 26, 67, 25, 31, | |
73, 83, 9, 79, 71, | |
8, 44, 96, 96, 63, | |
98, 71, 5, 69, 93, | |
32, 22, 76, 87, 66, | |
18, 53, 89, 1, 69, | |
53, 89, 56, 74, 59, | |
40, 30, 5, 83, 55, | |
65, 16, 34, 100, 52, | |
68, 85, 55, 47, 35, | |
47, 93, 74, 67, 13, | |
51, 95, 97, 83, 35, | |
8, 16, 87, 88, 59, | |
91, 8, 97, 71, 96, | |
43 | |
]); | |
function sum(Count, Numbers) { | |
let total = 0; | |
for (let i = 0; i < Count; i++) { | |
total += Numbers[i]; | |
} | |
return total; | |
} | |
for (let i = 0; i < 20; i++) { | |
sum(4096, Nums); | |
} | |
)" | |
); | |
// Compile the source code. | |
v8::Local<v8::Script> script = | |
v8::Script::Compile(context, source).ToLocalChecked(); | |
// Run the script to get the result. | |
script->Run(context).ToLocalChecked(); | |
v8::Local<v8::String> source2 = v8::String::NewFromUtf8Literal(isolate, "sum(4096, Nums)"); | |
v8::Local<v8::Script> script2 = | |
v8::Script::Compile(context, source2).ToLocalChecked(); | |
uint64 jsStart = __rdtsc(); | |
v8::Local<v8::Value> result = script2->Run(context).ToLocalChecked(); | |
uint64 jsEnd = __rdtsc(); | |
jsTicks = jsEnd - jsStart; | |
printf("Total processor ticks in js: %llu\n", jsTicks); | |
/* | |
// Convert the result to an UTF8 string and print it. | |
v8::String::Utf8Value utf8(isolate, result); | |
printf("%s\n", *utf8); | |
*/ | |
// Convert the result to uint32 value | |
uint32_t number = result->Uint32Value(context).ToChecked(); | |
printf("Result from javascript: %d\n", number); | |
} | |
#endif | |
#if 1 | |
{ | |
// Use the JavaScript API to generate a WebAssembly module. | |
// | |
// |bytes| contains the binary format for the following module: | |
// | |
// (func (export "add") (param i32 i32) (result i32) | |
// get_local 0 | |
// get_local 1 | |
// i32.add) | |
// | |
const char csource[] = R"( | |
let bytes = new Uint8Array([0x00, 0x61, 0x73, 0x6D, 0x01, 0x00, 0x00, 0x00, 0x01, 0x0A, 0x02, 0x60, 0x00, 0x00, 0x60, 0x02, | |
0x7F, 0x7F, 0x01, 0x7F, 0x02, 0x0F, 0x01, 0x03, 0x65, 0x6E, 0x76, 0x06, 0x6D, 0x65, 0x6D, 0x6F, | |
0x72, 0x79, 0x02, 0x00, 0x02, 0x03, 0x03, 0x02, 0x00, 0x01, 0x06, 0x2B, 0x07, 0x7F, 0x01, 0x41, | |
0x80, 0x88, 0x04, 0x0B, 0x7F, 0x00, 0x41, 0x80, 0x08, 0x0B, 0x7F, 0x00, 0x41, 0x80, 0x08, 0x0B, | |
0x7F, 0x00, 0x41, 0x80, 0x08, 0x0B, 0x7F, 0x00, 0x41, 0x80, 0x88, 0x04, 0x0B, 0x7F, 0x00, 0x41, | |
0x00, 0x0B, 0x7F, 0x00, 0x41, 0x01, 0x0B, 0x07, 0x74, 0x08, 0x11, 0x5F, 0x5F, 0x77, 0x61, 0x73, | |
0x6D, 0x5F, 0x63, 0x61, 0x6C, 0x6C, 0x5F, 0x63, 0x74, 0x6F, 0x72, 0x73, 0x00, 0x00, 0x03, 0x61, | |
0x64, 0x64, 0x00, 0x01, 0x0C, 0x5F, 0x5F, 0x64, 0x73, 0x6F, 0x5F, 0x68, 0x61, 0x6E, 0x64, 0x6C, | |
0x65, 0x03, 0x01, 0x0A, 0x5F, 0x5F, 0x64, 0x61, 0x74, 0x61, 0x5F, 0x65, 0x6E, 0x64, 0x03, 0x02, | |
0x0D, 0x5F, 0x5F, 0x67, 0x6C, 0x6F, 0x62, 0x61, 0x6C, 0x5F, 0x62, 0x61, 0x73, 0x65, 0x03, 0x03, | |
0x0B, 0x5F, 0x5F, 0x68, 0x65, 0x61, 0x70, 0x5F, 0x62, 0x61, 0x73, 0x65, 0x03, 0x04, 0x0D, 0x5F, | |
0x5F, 0x6D, 0x65, 0x6D, 0x6F, 0x72, 0x79, 0x5F, 0x62, 0x61, 0x73, 0x65, 0x03, 0x05, 0x0C, 0x5F, | |
0x5F, 0x74, 0x61, 0x62, 0x6C, 0x65, 0x5F, 0x62, 0x61, 0x73, 0x65, 0x03, 0x06, 0x0A, 0x61, 0x02, | |
0x02, 0x00, 0x0B, 0x5C, 0x01, 0x02, 0x7F, 0x02, 0x40, 0x02, 0x40, 0x20, 0x01, 0x41, 0x01, 0x4E, | |
0x0D, 0x00, 0x41, 0x00, 0x21, 0x02, 0x0C, 0x01, 0x0B, 0x41, 0x00, 0x21, 0x03, 0x41, 0x00, 0x21, | |
0x02, 0x03, 0x40, 0x20, 0x00, 0x28, 0x02, 0x00, 0x20, 0x02, 0x6A, 0x20, 0x00, 0x41, 0x04, 0x6A, | |
0x28, 0x02, 0x00, 0x6A, 0x20, 0x00, 0x41, 0x08, 0x6A, 0x28, 0x02, 0x00, 0x6A, 0x20, 0x00, 0x41, | |
0x0C, 0x6A, 0x28, 0x02, 0x00, 0x6A, 0x21, 0x02, 0x20, 0x00, 0x41, 0x10, 0x6A, 0x21, 0x00, 0x20, | |
0x03, 0x41, 0x04, 0x6A, 0x22, 0x03, 0x20, 0x01, 0x48, 0x0D, 0x00, 0x0B, 0x0B, 0x20, 0x02, 0x0B, | |
0x00, 0x34, 0x04, 0x6E, 0x61, 0x6D, 0x65, 0x01, 0x19, 0x02, 0x00, 0x11, 0x5F, 0x5F, 0x77, 0x61, | |
0x73, 0x6D, 0x5F, 0x63, 0x61, 0x6C, 0x6C, 0x5F, 0x63, 0x74, 0x6F, 0x72, 0x73, 0x01, 0x03, 0x61, | |
0x64, 0x64, 0x07, 0x12, 0x01, 0x00, 0x0F, 0x5F, 0x5F, 0x73, 0x74, 0x61, 0x63, 0x6B, 0x5F, 0x70, | |
0x6F, 0x69, 0x6E, 0x74, 0x65, 0x72, 0x00, 0x26, 0x09, 0x70, 0x72, 0x6F, 0x64, 0x75, 0x63, 0x65, | |
0x72, 0x73, 0x01, 0x0C, 0x70, 0x72, 0x6F, 0x63, 0x65, 0x73, 0x73, 0x65, 0x64, 0x2D, 0x62, 0x79, | |
0x01, 0x05, 0x63, 0x6C, 0x61, 0x6E, 0x67, 0x06, 0x31, 0x34, 0x2E, 0x30, 0x2E, 0x31]); | |
const WasmNums = new Uint32Array(); | |
const memory = new WebAssembly.Memory({ initial: 10 }); | |
let module = new WebAssembly.Module(bytes); | |
const instance = new WebAssembly.Instance(module, { env: { memory }}); | |
const HEAP_BASE = instance.exports.__heap_base; | |
const view = new Uint32Array(memory.buffer, HEAP_BASE, 4096); | |
view.set([ | |
4, 68, 10, 6, 72, | |
63, 82, 71, 22, 7, | |
78, 19, 87, 14, 27, | |
64, 71, 22, 79, 14, | |
36, 36, 18, 21, 77, | |
88, 90, 36, 29, 28, | |
70, 18, 78, 31, 5, | |
33, 73, 85, 15, 50, | |
70, 93, 83, 99, 80, | |
78, 62, 24, 41, 12, | |
36, 24, 36, 7, 95, | |
91, 43, 16, 36, 33, | |
50, 46, 25, 82, 73, | |
30, 21, 56, 95, 45, | |
94, 45, 48, 23, 68, | |
70, 27, 54, 30, 78, | |
11, 87, 98, 33, 64, | |
37, 74, 4, 61, 86, | |
91, 48, 38, 5, 46, | |
9, 78, 37, 10, 21, | |
66, 37, 50, 52, 29, | |
27, 14, 91, 36, 94, | |
85, 9, 23, 2, 14, | |
72, 82, 36, 46, 94, | |
5, 7, 94, 53, 97, | |
18, 94, 18, 13, 35, | |
45, 49, 4, 54, 89, | |
90, 68, 31, 21, 72, | |
58, 12, 16, 48, 25, | |
17, 20, 31, 41, 71, | |
13, 85, 92, 24, 55, | |
79, 22, 45, 94, 21, | |
35, 31, 43, 26, 86, | |
35, 43, 40, 36, 66, | |
46, 63, 34, 1, 18, | |
85, 28, 4, 28, 44, | |
5, 18, 4, 16, 83, | |
8, 61, 15, 43, 2, | |
20, 22, 26, 82, 35, | |
11, 63, 70, 15, 80, | |
98, 34, 2, 39, 11, | |
32, 44, 93, 99, 5, | |
75, 98, 38, 71, 4, | |
20, 88, 53, 2, 23, | |
76, 12, 30, 95, 24, | |
21, 58, 15, 61, 88, | |
12, 84, 84, 39, 24, | |
49, 65, 75, 50, 32, | |
57, 86, 51, 85, 71, | |
98, 30, 43, 27, 33, | |
32, 17, 82, 11, 50, | |
40, 4, 5, 25, 93, | |
64, 35, 86, 97, 24, | |
59, 29, 64, 47, 38, | |
87, 25, 94, 80, 10, | |
37, 59, 43, 16, 27, | |
21, 75, 93, 67, 94, | |
74, 43, 53, 6, 7, | |
63, 72, 69, 60, 14, | |
30, 77, 8, 39, 35, | |
68, 92, 86, 24, 42, | |
95, 42, 32, 71, 88, | |
42, 51, 33, 63, 63, | |
41, 52, 12, 66, 55, | |
39, 70, 92, 84, 33, | |
3, 55, 26, 93, 17, | |
43, 63, 25, 68, 28, | |
77, 1, 35, 67, 72, | |
33, 74, 42, 86, 5, | |
25, 98, 73, 4, 27, | |
54, 68, 88, 10, 94, | |
66, 12, 8, 13, 12, | |
24, 78, 14, 23, 80, | |
23, 31, 22, 83, 12, | |
83, 73, 15, 84, 90, | |
46, 58, 80, 84, 93, | |
95, 20, 54, 59, 53, | |
69, 61, 50, 56, 7, | |
20, 22, 82, 24, 37, | |
76, 15, 21, 14, 85, | |
76, 59, 22, 31, 15, | |
78, 29, 68, 87, 50, | |
10, 30, 84, 59, 78, | |
66, 93, 89, 78, 89, | |
52, 97, 55, 26, 35, | |
77, 37, 52, 47, 56, | |
26, 90, 49, 75, 51, | |
81, 85, 38, 78, 21, | |
18, 36, 70, 53, 7, | |
37, 80, 81, 7, 86, | |
59, 15, 61, 71, 71, | |
56, 15, 19, 79, 81, | |
37, 45, 73, 85, 29, | |
68, 45, 96, 51, 39, | |
9, 78, 4, 60, 6, | |
42, 57, 6, 52, 11, | |
15, 50, 91, 54, 37, | |
1, 43, 61, 1, 97, | |
58, 75, 41, 99, 47, | |
29, 100, 75, 65, 65, | |
79, 44, 78, 20, 61, | |
49, 63, 69, 54, 84, | |
40, 91, 15, 45, 10, | |
31, 36, 83, 76, 78, | |
3, 66, 85, 20, 47, | |
50, 95, 20, 45, 33, | |
14, 13, 5, 67, 14, | |
47, 22, 67, 97, 74, | |
90, 7, 93, 53, 100, | |
78, 32, 82, 73, 27, | |
97, 49, 27, 79, 12, | |
71, 1, 67, 21, 9, | |
24, 86, 16, 97, 95, | |
59, 32, 9, 48, 93, | |
79, 22, 10, 97, 97, | |
4, 68, 93, 60, 55, | |
80, 75, 52, 50, 50, | |
98, 37, 71, 97, 4, | |
23, 98, 2, 44, 94, | |
19, 74, 29, 6, 34, | |
79, 74, 53, 90, 100, | |
99, 87, 61, 38, 94, | |
49, 21, 74, 68, 88, | |
22, 92, 88, 84, 97, | |
17, 44, 42, 9, 74, | |
22, 41, 79, 72, 35, | |
26, 34, 21, 61, 18, | |
33, 86, 54, 94, 89, | |
63, 62, 78, 60, 16, | |
95, 89, 52, 6, 8, | |
84, 73, 23, 64, 21, | |
52, 78, 15, 84, 75, | |
88, 41, 63, 47, 23, | |
41, 19, 72, 39, 7, | |
19, 83, 11, 70, 40, | |
67, 43, 78, 53, 98, | |
91, 40, 19, 46, 50, | |
58, 41, 89, 10, 64, | |
87, 38, 56, 77, 88, | |
18, 98, 47, 5, 79, | |
35, 30, 32, 63, 74, | |
21, 61, 45, 53, 40, | |
23, 22, 87, 94, 37, | |
17, 89, 85, 13, 38, | |
47, 41, 85, 29, 27, | |
20, 77, 7, 54, 2, | |
85, 91, 30, 19, 96, | |
42, 16, 24, 16, 25, | |
86, 35, 41, 41, 60, | |
13, 2, 66, 86, 88, | |
52, 22, 8, 43, 58, | |
15, 79, 44, 87, 7, | |
73, 53, 59, 86, 99, | |
90, 71, 38, 17, 73, | |
81, 84, 93, 57, 11, | |
18, 41, 11, 82, 5, | |
67, 18, 23, 18, 60, | |
38, 25, 89, 47, 63, | |
13, 53, 53, 90, 12, | |
36, 57, 65, 67, 94, | |
1, 94, 72, 85, 45, | |
60, 84, 80, 27, 27, | |
68, 33, 8, 4, 43, | |
91, 23, 94, 63, 50, | |
31, 69, 75, 24, 84, | |
5, 45, 56, 69, 3, | |
97, 8, 1, 13, 76, | |
46, 73, 97, 34, 79, | |
51, 14, 96, 98, 84, | |
91, 45, 27, 51, 97, | |
3, 32, 70, 70, 62, | |
64, 96, 10, 21, 91, | |
17, 96, 14, 49, 79, | |
68, 17, 39, 2, 53, | |
53, 52, 75, 13, 71, | |
75, 87, 91, 86, 7, | |
82, 85, 54, 66, 33, | |
37, 77, 81, 26, 66, | |
10, 61, 74, 99, 59, | |
62, 53, 83, 87, 24, | |
60, 20, 54, 55, 76, | |
91, 22, 32, 46, 98, | |
45, 37, 8, 29, 72, | |
64, 52, 55, 33, 44, | |
58, 10, 81, 52, 43, | |
47, 47, 81, 28, 36, | |
6, 44, 48, 82, 15, | |
61, 42, 47, 59, 21, | |
81, 51, 100, 63, 7, | |
94, 6, 19, 73, 41, | |
15, 55, 86, 77, 100, | |
11, 59, 20, 68, 49, | |
42, 97, 95, 17, 84, | |
67, 99, 19, 55, 80, | |
57, 61, 87, 33, 36, | |
78, 9, 91, 33, 14, | |
94, 16, 35, 74, 19, | |
37, 92, 51, 65, 13, | |
94, 22, 98, 68, 19, | |
53, 74, 82, 61, 46, | |
3, 94, 30, 97, 43, | |
46, 55, 13, 76, 62, | |
34, 38, 45, 13, 60, | |
72, 9, 83, 11, 88, | |
68, 12, 12, 33, 91, | |
67, 39, 54, 4, 57, | |
22, 9, 7, 78, 4, | |
53, 7, 37, 57, 46, | |
25, 21, 91, 8, 29, | |
60, 36, 36, 88, 11, | |
34, 32, 82, 50, 48, | |
34, 86, 68, 62, 77, | |
14, 9, 34, 85, 53, | |
19, 96, 4, 52, 1, | |
49, 33, 7, 96, 30, | |
7, 5, 14, 72, 96, | |
71, 97, 86, 2, 69, | |
26, 1, 74, 94, 15, | |
15, 17, 50, 13, 97, | |
53, 60, 56, 18, 36, | |
67, 89, 11, 12, 71, | |
87, 2, 24, 10, 4, | |
11, 12, 80, 57, 37, | |
46, 11, 52, 61, 14, | |
32, 45, 78, 12, 20, | |
90, 14, 67, 15, 65, | |
83, 91, 73, 45, 89, | |
70, 71, 39, 59, 63, | |
53, 42, 47, 20, 44, | |
27, 56, 85, 24, 23, | |
48, 55, 61, 42, 25, | |
47, 48, 70, 82, 88, | |
91, 92, 45, 69, 90, | |
25, 81, 31, 25, 41, | |
37, 42, 87, 47, 25, | |
4, 3, 80, 35, 40, | |
17, 68, 98, 84, 95, | |
94, 27, 99, 29, 9, | |
73, 55, 35, 78, 95, | |
96, 71, 35, 88, 81, | |
3, 47, 62, 47, 25, | |
72, 4, 7, 21, 31, | |
13, 18, 95, 58, 43, | |
73, 63, 10, 82, 47, | |
66, 69, 19, 61, 71, | |
77, 60, 33, 99, 71, | |
81, 96, 90, 55, 25, | |
29, 91, 8, 89, 34, | |
6, 8, 27, 46, 45, | |
15, 2, 82, 84, 63, | |
59, 98, 8, 68, 46, | |
32, 90, 50, 86, 98, | |
17, 58, 18, 82, 45, | |
56, 84, 42, 20, 48, | |
82, 79, 100, 89, 46, | |
20, 97, 24, 67, 91, | |
19, 27, 80, 4, 82, | |
41, 11, 91, 79, 60, | |
76, 59, 73, 21, 10, | |
17, 44, 66, 41, 73, | |
39, 93, 61, 50, 99, | |
92, 53, 6, 16, 41, | |
93, 16, 28, 58, 32, | |
31, 9, 57, 7, 3, | |
20, 13, 52, 18, 6, | |
47, 69, 82, 68, 82, | |
52, 75, 3, 65, 30, | |
43, 14, 100, 39, 54, | |
8, 61, 15, 70, 77, | |
1, 19, 45, 59, 14, | |
25, 54, 31, 42, 7, | |
47, 72, 90, 33, 69, | |
40, 81, 66, 41, 69, | |
32, 51, 77, 73, 98, | |
12, 29, 77, 19, 34, | |
85, 21, 26, 68, 37, | |
75, 65, 87, 31, 74, | |
61, 73, 50, 55, 87, | |
92, 14, 43, 46, 35, | |
60, 77, 69, 85, 98, | |
80, 79, 68, 76, 53, | |
53, 53, 18, 26, 46, | |
57, 83, 100, 76, 89, | |
37, 73, 2, 65, 58, | |
65, 48, 19, 46, 65, | |
25, 3, 84, 64, 86, | |
63, 42, 20, 91, 82, | |
92, 54, 9, 6, 1, | |
65, 63, 71, 39, 98, | |
71, 9, 95, 9, 49, | |
22, 93, 80, 49, 52, | |
5, 78, 47, 92, 26, | |
80, 76, 15, 85, 34, | |
55, 92, 43, 7, 98, | |
13, 24, 61, 41, 37, | |
42, 38, 95, 43, 15, | |
70, 50, 1, 100, 6, | |
14, 50, 1, 65, 22, | |
27, 84, 46, 18, 54, | |
9, 68, 74, 59, 5, | |
22, 26, 44, 51, 65, | |
31, 42, 17, 78, 81, | |
20, 92, 72, 89, 96, | |
24, 7, 57, 85, 54, | |
16, 19, 37, 79, 75, | |
95, 92, 12, 29, 78, | |
84, 11, 26, 6, 6, | |
61, 25, 22, 76, 81, | |
7, 97, 68, 10, 72, | |
95, 53, 45, 16, 96, | |
18, 95, 15, 35, 17, | |
90, 69, 65, 70, 1, | |
23, 61, 18, 87, 19, | |
16, 26, 45, 23, 86, | |
74, 82, 39, 7, 65, | |
59, 86, 17, 14, 50, | |
65, 93, 43, 89, 82, | |
30, 41, 10, 19, 74, | |
81, 38, 88, 37, 10, | |
3, 57, 95, 28, 61, | |
26, 8, 14, 74, 22, | |
74, 70, 64, 34, 59, | |
45, 22, 63, 32, 46, | |
15, 14, 93, 10, 80, | |
1, 64, 80, 3, 77, | |
60, 3, 33, 89, 20, | |
55, 73, 99, 63, 3, | |
28, 16, 14, 95, 57, | |
62, 57, 98, 5, 45, | |
65, 24, 21, 88, 91, | |
49, 80, 52, 49, 49, | |
52, 7, 83, 63, 77, | |
96, 15, 95, 13, 98, | |
65, 44, 32, 57, 71, | |
57, 16, 70, 70, 9, | |
48, 55, 2, 42, 75, | |
23, 65, 77, 28, 20, | |
25, 58, 79, 65, 11, | |
60, 95, 64, 48, 88, | |
66, 52, 53, 28, 15, | |
99, 26, 63, 83, 36, | |
53, 45, 78, 92, 3, | |
93, 79, 2, 79, 85, | |
50, 65, 44, 56, 36, | |
28, 77, 8, 12, 59, | |
43, 28, 63, 84, 75, | |
38, 84, 75, 20, 25, | |
9, 89, 55, 61, 32, | |
67, 34, 75, 41, 54, | |
52, 59, 96, 89, 24, | |
12, 95, 52, 64, 50, | |
28, 94, 7, 77, 49, | |
18, 13, 89, 23, 67, | |
28, 34, 18, 100, 93, | |
31, 58, 17, 22, 49, | |
7, 84, 81, 31, 70, | |
80, 1, 48, 24, 74, | |
46, 22, 87, 25, 19, | |
14, 57, 73, 29, 66, | |
19, 1, 13, 45, 19, | |
28, 93, 84, 84, 30, | |
31, 39, 62, 80, 1, | |
79, 72, 47, 2, 61, | |
100, 62, 33, 32, 48, | |
48, 94, 68, 36, 64, | |
23, 95, 59, 62, 97, | |
63, 62, 10, 16, 86, | |
80, 45, 86, 51, 14, | |
68, 40, 16, 35, 48, | |
89, 49, 69, 4, 47, | |
31, 47, 22, 44, 58, | |
35, 85, 71, 59, 2, | |
14, 5, 49, 3, 22, | |
2, 83, 11, 2, 91, | |
51, 84, 1, 93, 34, | |
77, 24, 26, 77, 62, | |
42, 80, 22, 76, 67, | |
45, 58, 5, 25, 14, | |
52, 94, 57, 60, 48, | |
80, 71, 64, 1, 99, | |
10, 49, 75, 81, 59, | |
1, 51, 3, 26, 70, | |
97, 38, 55, 97, 1, | |
37, 92, 24, 11, 45, | |
36, 1, 73, 2, 18, | |
71, 64, 94, 54, 37, | |
37, 9, 88, 55, 84, | |
8, 85, 33, 67, 15, | |
12, 95, 14, 84, 32, | |
60, 28, 58, 29, 39, | |
38, 51, 92, 24, 64, | |
86, 23, 76, 43, 49, | |
65, 97, 92, 62, 22, | |
53, 6, 46, 67, 95, | |
21, 80, 87, 73, 54, | |
75, 44, 35, 29, 81, | |
50, 55, 29, 2, 47, | |
64, 42, 79, 75, 87, | |
78, 75, 61, 5, 51, | |
63, 58, 58, 33, 83, | |
26, 90, 25, 28, 99, | |
2, 40, 9, 57, 80, | |
30, 3, 16, 89, 24, | |
45, 33, 50, 76, 49, | |
31, 17, 41, 98, 56, | |
95, 70, 83, 73, 68, | |
16, 13, 42, 86, 29, | |
51, 57, 10, 87, 84, | |
88, 9, 15, 100, 39, | |
73, 28, 32, 69, 61, | |
87, 5, 32, 43, 54, | |
65, 79, 33, 51, 81, | |
75, 93, 73, 26, 55, | |
53, 37, 49, 24, 43, | |
66, 9, 51, 20, 21, | |
9, 70, 11, 94, 64, | |
68, 56, 25, 26, 60, | |
27, 16, 47, 63, 77, | |
82, 16, 16, 97, 40, | |
5, 40, 60, 84, 64, | |
85, 29, 26, 17, 75, | |
66, 68, 75, 10, 96, | |
61, 21, 5, 46, 68, | |
30, 40, 22, 85, 3, | |
68, 88, 37, 10, 12, | |
98, 47, 29, 84, 94, | |
38, 30, 71, 97, 41, | |
68, 28, 95, 50, 14, | |
4, 10, 68, 82, 14, | |
81, 85, 4, 3, 50, | |
32, 68, 14, 29, 43, | |
22, 44, 74, 38, 23, | |
3, 32, 58, 18, 50, | |
4, 76, 97, 78, 82, | |
39, 31, 60, 9, 64, | |
89, 87, 69, 44, 25, | |
8, 23, 55, 57, 98, | |
24, 15, 75, 22, 68, | |
79, 25, 25, 93, 77, | |
66, 19, 21, 45, 27, | |
94, 47, 5, 97, 27, | |
54, 64, 31, 44, 31, | |
61, 11, 84, 19, 79, | |
93, 4, 80, 32, 78, | |
36, 1, 43, 100, 16, | |
87, 25, 79, 20, 97, | |
38, 29, 52, 46, 76, | |
72, 10, 14, 41, 2, | |
65, 46, 5, 40, 38, | |
88, 1, 85, 37, 53, | |
58, 16, 48, 62, 5, | |
71, 44, 69, 35, 93, | |
10, 23, 100, 69, 82, | |
57, 33, 43, 21, 69, | |
38, 79, 86, 86, 80, | |
49, 23, 45, 23, 48, | |
19, 57, 84, 25, 35, | |
35, 10, 6, 83, 23, | |
33, 100, 78, 2, 32, | |
7, 57, 15, 55, 89, | |
16, 15, 97, 53, 85, | |
23, 90, 29, 5, 53, | |
12, 97, 55, 47, 17, | |
78, 91, 82, 55, 70, | |
100, 5, 17, 38, 73, | |
88, 27, 31, 85, 16, | |
21, 41, 13, 98, 47, | |
69, 21, 36, 87, 3, | |
61, 4, 91, 8, 64, | |
92, 51, 61, 79, 100, | |
27, 100, 24, 51, 37, | |
72, 60, 43, 38, 9, | |
48, 37, 79, 95, 97, | |
8, 77, 8, 36, 93, | |
24, 100, 27, 46, 16, | |
14, 69, 74, 63, 70, | |
43, 62, 29, 12, 23, | |
40, 53, 59, 75, 12, | |
89, 30, 29, 54, 34, | |
51, 93, 53, 74, 100, | |
92, 77, 11, 48, 73, | |
81, 75, 68, 20, 30, | |
61, 19, 99, 89, 23, | |
31, 66, 37, 76, 81, | |
76, 68, 47, 93, 4, | |
10, 86, 94, 53, 56, | |
100, 34, 14, 28, 34, | |
25, 85, 31, 7, 66, | |
29, 42, 16, 29, 53, | |
31, 61, 85, 51, 17, | |
18, 46, 89, 13, 49, | |
33, 37, 97, 14, 33, | |
88, 13, 66, 35, 54, | |
57, 76, 53, 68, 44, | |
54, 3, 17, 75, 90, | |
93, 5, 79, 66, 42, | |
70, 78, 14, 89, 19, | |
96, 60, 7, 90, 32, | |
88, 93, 59, 30, 88, | |
11, 8, 53, 71, 65, | |
79, 19, 32, 92, 69, | |
61, 91, 29, 45, 1, | |
34, 9, 40, 63, 27, | |
51, 2, 59, 48, 50, | |
5, 19, 64, 28, 88, | |
3, 35, 66, 2, 80, | |
6, 50, 31, 70, 78, | |
85, 51, 47, 77, 51, | |
15, 74, 73, 71, 70, | |
47, 90, 87, 24, 31, | |
58, 69, 33, 52, 95, | |
95, 20, 29, 80, 48, | |
57, 47, 21, 94, 44, | |
22, 47, 40, 30, 61, | |
66, 59, 59, 75, 60, | |
94, 98, 4, 26, 17, | |
64, 22, 64, 12, 97, | |
77, 75, 21, 89, 20, | |
88, 64, 82, 85, 29, | |
17, 41, 71, 28, 76, | |
13, 94, 99, 17, 53, | |
24, 24, 54, 100, 84, | |
12, 78, 97, 66, 1, | |
48, 73, 32, 3, 82, | |
80, 28, 85, 17, 59, | |
80, 2, 92, 28, 32, | |
89, 63, 10, 98, 16, | |
97, 58, 81, 1, 10, | |
50, 100, 80, 80, 62, | |
17, 73, 45, 73, 39, | |
92, 74, 5, 53, 70, | |
65, 17, 40, 51, 21, | |
42, 89, 56, 26, 24, | |
11, 69, 22, 82, 24, | |
98, 24, 52, 21, 31, | |
34, 46, 6, 44, 52, | |
74, 16, 64, 56, 11, | |
59, 17, 27, 27, 68, | |
7, 73, 80, 44, 70, | |
11, 86, 65, 100, 93, | |
90, 95, 2, 66, 17, | |
15, 30, 96, 3, 33, | |
40, 88, 9, 70, 48, | |
18, 72, 46, 100, 16, | |
73, 1, 50, 54, 56, | |
36, 100, 25, 81, 70, | |
42, 53, 30, 42, 43, | |
27, 81, 49, 76, 56, | |
5, 45, 86, 13, 32, | |
16, 75, 64, 66, 32, | |
76, 86, 50, 59, 34, | |
45, 30, 63, 81, 82, | |
18, 53, 14, 17, 19, | |
96, 54, 70, 71, 87, | |
72, 2, 60, 58, 59, | |
22, 51, 5, 29, 32, | |
68, 57, 44, 81, 72, | |
20, 55, 75, 82, 57, | |
99, 6, 20, 13, 51, | |
18, 70, 62, 85, 15, | |
72, 4, 69, 24, 70, | |
55, 100, 28, 58, 14, | |
18, 3, 98, 70, 97, | |
71, 46, 91, 70, 60, | |
2, 87, 72, 43, 96, | |
72, 63, 23, 15, 27, | |
28, 93, 95, 47, 75, | |
16, 77, 78, 21, 1, | |
85, 69, 77, 96, 82, | |
43, 37, 98, 93, 41, | |
30, 86, 52, 32, 28, | |
44, 12, 25, 35, 37, | |
93, 29, 89, 47, 57, | |
63, 41, 34, 34, 66, | |
91, 42, 100, 93, 44, | |
57, 2, 69, 46, 29, | |
53, 61, 90, 48, 62, | |
38, 81, 55, 62, 1, | |
32, 32, 97, 8, 38, | |
1, 81, 18, 58, 22, | |
10, 94, 42, 38, 67, | |
19, 71, 73, 76, 60, | |
90, 60, 51, 35, 51, | |
57, 45, 45, 94, 59, | |
86, 90, 13, 48, 86, | |
60, 39, 70, 6, 4, | |
32, 77, 53, 9, 22, | |
73, 25, 7, 41, 8, | |
87, 6, 3, 55, 17, | |
28, 68, 33, 90, 9, | |
79, 26, 70, 89, 52, | |
5, 10, 48, 38, 65, | |
43, 11, 84, 30, 64, | |
83, 60, 19, 59, 89, | |
9, 53, 12, 89, 63, | |
14, 89, 86, 44, 35, | |
98, 49, 74, 45, 41, | |
100, 90, 34, 91, 14, | |
100, 55, 89, 96, 78, | |
34, 88, 55, 92, 55, | |
47, 96, 65, 69, 50, | |
39, 64, 6, 59, 2, | |
87, 65, 6, 8, 4, | |
64, 37, 75, 10, 18, | |
68, 14, 44, 77, 94, | |
37, 60, 79, 89, 97, | |
4, 70, 12, 65, 87, | |
77, 8, 94, 100, 70, | |
51, 17, 81, 99, 11, | |
90, 11, 85, 10, 58, | |
100, 93, 3, 74, 33, | |
21, 16, 4, 71, 1, | |
29, 49, 55, 83, 91, | |
15, 89, 33, 55, 33, | |
15, 65, 48, 78, 44, | |
20, 76, 19, 59, 59, | |
67, 60, 97, 81, 49, | |
24, 88, 99, 16, 50, | |
25, 69, 50, 34, 86, | |
78, 27, 45, 94, 42, | |
58, 82, 56, 54, 76, | |
8, 45, 50, 22, 45, | |
98, 12, 1, 55, 48, | |
33, 52, 95, 74, 33, | |
13, 47, 35, 9, 37, | |
15, 29, 76, 58, 81, | |
35, 61, 21, 87, 5, | |
94, 12, 42, 33, 60, | |
87, 22, 75, 93, 54, | |
87, 87, 13, 89, 83, | |
92, 16, 42, 34, 84, | |
9, 12, 8, 11, 25, | |
35, 100, 78, 96, 92, | |
51, 39, 44, 19, 85, | |
74, 3, 49, 78, 51, | |
17, 26, 95, 16, 56, | |
34, 69, 96, 3, 2, | |
40, 26, 63, 16, 59, | |
21, 82, 86, 5, 30, | |
26, 87, 9, 20, 7, | |
77, 25, 76, 76, 27, | |
42, 74, 71, 85, 97, | |
85, 71, 5, 37, 70, | |
62, 52, 40, 69, 71, | |
2, 84, 86, 92, 13, | |
87, 2, 25, 71, 97, | |
47, 23, 97, 58, 73, | |
65, 50, 58, 59, 44, | |
72, 55, 66, 20, 83, | |
28, 82, 17, 92, 67, | |
1, 91, 12, 41, 73, | |
17, 3, 56, 88, 37, | |
35, 1, 5, 60, 22, | |
46, 52, 99, 33, 50, | |
95, 25, 58, 30, 81, | |
42, 33, 95, 45, 15, | |
57, 91, 54, 88, 31, | |
54, 73, 72, 16, 61, | |
65, 75, 16, 57, 62, | |
28, 63, 27, 66, 99, | |
88, 70, 99, 81, 75, | |
5, 50, 18, 58, 49, | |
32, 33, 36, 75, 85, | |
93, 55, 91, 63, 59, | |
27, 50, 3, 7, 47, | |
68, 85, 51, 27, 83, | |
48, 40, 79, 21, 47, | |
32, 31, 60, 7, 83, | |
43, 29, 19, 29, 67, | |
97, 89, 69, 9, 28, | |
32, 79, 23, 26, 30, | |
31, 62, 48, 44, 97, | |
63, 44, 20, 96, 90, | |
36, 18, 85, 14, 82, | |
85, 29, 71, 8, 93, | |
48, 42, 57, 87, 98, | |
99, 73, 97, 64, 71, | |
15, 70, 44, 97, 22, | |
95, 53, 7, 48, 9, | |
40, 42, 3, 70, 97, | |
62, 91, 15, 50, 52, | |
69, 97, 7, 38, 4, | |
31, 71, 34, 3, 9, | |
100, 13, 69, 61, 23, | |
14, 93, 16, 25, 23, | |
54, 82, 72, 30, 4, | |
12, 75, 72, 89, 43, | |
19, 22, 100, 52, 79, | |
48, 85, 82, 27, 44, | |
44, 61, 26, 93, 74, | |
83, 38, 57, 38, 4, | |
85, 36, 76, 16, 78, | |
51, 24, 79, 71, 20, | |
2, 89, 31, 90, 80, | |
80, 96, 13, 85, 27, | |
42, 22, 15, 81, 29, | |
96, 76, 69, 12, 56, | |
72, 88, 3, 12, 91, | |
70, 72, 96, 83, 17, | |
40, 36, 69, 20, 40, | |
27, 19, 81, 75, 69, | |
12, 29, 56, 44, 62, | |
85, 78, 42, 10, 66, | |
80, 36, 16, 21, 47, | |
12, 65, 83, 81, 26, | |
2, 88, 81, 6, 99, | |
94, 76, 78, 41, 44, | |
42, 89, 36, 37, 15, | |
67, 65, 44, 39, 40, | |
87, 85, 16, 13, 11, | |
53, 4, 50, 45, 82, | |
96, 50, 66, 21, 41, | |
73, 39, 66, 31, 64, | |
60, 94, 27, 93, 25, | |
9, 17, 59, 34, 21, | |
46, 53, 77, 62, 33, | |
39, 2, 15, 5, 11, | |
49, 1, 76, 51, 100, | |
60, 42, 63, 14, 32, | |
28, 63, 47, 95, 79, | |
16, 67, 46, 36, 84, | |
25, 2, 86, 7, 65, | |
68, 36, 69, 92, 76, | |
74, 11, 36, 5, 79, | |
7, 75, 56, 81, 88, | |
84, 71, 60, 97, 30, | |
8, 89, 67, 89, 51, | |
62, 81, 44, 51, 4, | |
28, 82, 24, 13, 72, | |
1, 16, 6, 49, 51, | |
24, 21, 25, 59, 82, | |
35, 92, 75, 90, 52, | |
30, 44, 79, 6, 95, | |
91, 18, 16, 65, 35, | |
92, 97, 30, 4, 82, | |
5, 27, 16, 32, 23, | |
73, 99, 83, 87, 84, | |
38, 56, 87, 25, 91, | |
69, 46, 64, 64, 27, | |
74, 87, 71, 8, 27, | |
25, 3, 25, 28, 56, | |
69, 58, 2, 9, 43, | |
24, 29, 61, 78, 93, | |
9, 67, 86, 59, 53, | |
18, 5, 30, 18, 99, | |
87, 99, 5, 62, 79, | |
99, 77, 19, 50, 41, | |
69, 45, 4, 82, 68, | |
38, 67, 18, 47, 33, | |
76, 69, 69, 85, 29, | |
27, 59, 32, 1, 72, | |
63, 85, 3, 88, 45, | |
23, 64, 95, 79, 55, | |
75, 78, 77, 10, 30, | |
31, 48, 58, 100, 10, | |
4, 98, 41, 30, 89, | |
47, 45, 14, 78, 84, | |
20, 24, 20, 94, 91, | |
54, 60, 37, 81, 11, | |
7, 39, 57, 33, 87, | |
8, 22, 86, 66, 35, | |
82, 10, 80, 19, 80, | |
100, 57, 11, 74, 8, | |
39, 53, 96, 84, 25, | |
52, 82, 68, 5, 19, | |
63, 29, 71, 72, 18, | |
33, 14, 18, 62, 81, | |
15, 20, 100, 85, 51, | |
54, 42, 42, 2, 49, | |
73, 73, 17, 10, 84, | |
33, 32, 66, 36, 52, | |
11, 69, 56, 10, 98, | |
3, 43, 16, 49, 24, | |
16, 45, 30, 82, 27, | |
30, 98, 4, 5, 57, | |
22, 56, 79, 91, 47, | |
66, 11, 25, 12, 33, | |
11, 69, 14, 39, 2, | |
7, 55, 5, 55, 29, | |
13, 43, 25, 10, 52, | |
98, 5, 60, 47, 85, | |
19, 93, 78, 71, 84, | |
84, 82, 81, 14, 63, | |
60, 74, 52, 9, 41, | |
60, 46, 11, 42, 27, | |
6, 20, 13, 64, 25, | |
21, 97, 89, 97, 52, | |
11, 83, 70, 77, 54, | |
59, 88, 98, 58, 65, | |
100, 78, 100, 55, 49, | |
9, 12, 83, 70, 52, | |
99, 10, 12, 7, 100, | |
58, 40, 20, 3, 60, | |
10, 27, 85, 72, 35, | |
88, 48, 53, 84, 57, | |
61, 84, 16, 92, 37, | |
8, 44, 57, 80, 56, | |
64, 51, 6, 52, 45, | |
17, 31, 94, 77, 77, | |
94, 72, 23, 7, 4, | |
4, 92, 51, 52, 90, | |
54, 68, 74, 83, 37, | |
7, 92, 91, 17, 1, | |
68, 55, 25, 45, 40, | |
91, 5, 16, 100, 86, | |
3, 26, 67, 25, 31, | |
73, 83, 9, 79, 71, | |
8, 44, 96, 96, 63, | |
98, 71, 5, 69, 93, | |
32, 22, 76, 87, 66, | |
18, 53, 89, 1, 69, | |
53, 89, 56, 74, 59, | |
40, 30, 5, 83, 55, | |
65, 16, 34, 100, 52, | |
68, 85, 55, 47, 35, | |
47, 93, 74, 67, 13, | |
51, 95, 97, 83, 35, | |
8, 16, 87, 88, 59, | |
91, 8, 97, 71, 96, | |
43 | |
]); | |
for (let i = 0; i < 20; i++) { | |
instance.exports.add(HEAP_BASE, 4096); | |
} | |
)"; | |
// Create a string containing the JavaScript source code. | |
v8::Local<v8::String> source = | |
v8::String::NewFromUtf8Literal(isolate, csource); | |
// Compile the source code. | |
v8::Local<v8::Script> script = | |
v8::Script::Compile(context, source).ToLocalChecked(); | |
// Run the script to get the result. | |
script->Run(context).ToLocalChecked(); | |
const char csource2[] = "instance.exports.add(HEAP_BASE, 4096)"; | |
v8::Local<v8::String> source2 = | |
v8::String::NewFromUtf8Literal(isolate, csource2); | |
v8::Local<v8::Script> script2 = v8::Script::Compile(context, source2).ToLocalChecked(); | |
uint64 wasmStart = __rdtsc(); | |
v8::Local<v8::Value> result = script2->Run(context).ToLocalChecked(); | |
uint64 wasmEnd = __rdtsc(); | |
wasmTicks = wasmEnd - wasmStart; | |
printf("Total processor ticks in wasm: %llu\n", wasmTicks); | |
// Convert the result to a uint32 and print it. | |
uint32_t number = result->Uint32Value(context).ToChecked(); | |
printf("Result from wasm %d\n", number); | |
} | |
#endif | |
} | |
printf("--------------------------------------------------\n"); | |
printf("js/c: %llu\n", jsTicks/ticks); | |
printf("wasm/c: %llu\n", wasmTicks/ticks); | |
// Dispose the isolate and tear down V8. | |
isolate->Dispose(); | |
v8::V8::Dispose(); | |
v8::V8::DisposePlatform(); | |
delete create_params.array_buffer_allocator; | |
return 0; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment