-
-
Save wolframw/73f94f73a822c7593e0a7af411fa97ac to your computer and use it in GitHub Desktop.
Default vs void initialization of static array
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
struct Mat(T, uint M, uint N = M) | |
{ | |
T[N][M] m; | |
// change to: | |
// T[N][M] m = void; | |
this(VT)(immutable VT value) pure nothrow @nogc @safe | |
if (!is(CommonType!(T, VT) == void)) | |
{ | |
m = cast(T) value; | |
} | |
this(immutable T[N][M] values) pure nothrow @nogc @safe | |
{ | |
m = values; | |
} | |
auto opBinary(string op, uint P)(const ref Mat!(T, N, P) rhs) const pure nothrow @nogc @safe | |
if (op == "*") | |
{ | |
auto result = Mat!(T, M, P)(0); | |
static foreach (m; 0 .. M) | |
static foreach (n; 0 .. N) | |
static foreach (p; 0 .. P) | |
result.m[m][p] += this.m[m][n] * rhs.m[n][p]; | |
return result; | |
} | |
} | |
void main() @safe | |
{ | |
import std.datetime.stopwatch, std.stdio, std.random; | |
immutable auto m1 = Mat!(float, 2, 3)([[0.0f, -1.0f, 2.0f], [4.0f, 11.0f, 2.0f]]); | |
immutable auto m2 = Mat!(float, 3, 2)([[3.0f, -1.0f], [1.0f, 2.0f], [6.0f, 1.0f]]); | |
immutable auto sw = StopWatch(AutoStart.yes); | |
Mat!(float, 2) sink; | |
Duration t0 = sw.peek(); | |
foreach (i; 0 .. 1000000) | |
sink = m1 * m2; | |
Duration t1 = sw.peek(); | |
writeln(sink); | |
writeln(t1 - t0); | |
} |
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
matrix_default: file format elf64-x86-64 | |
Disassembly of section .text: | |
000000000006482c <_Dmain>: | |
6482c: 55 push rbp | |
6482d: 48 8b ec mov rbp,rsp | |
64830: 48 81 ec 50 01 00 00 sub rsp,0x150 | |
64837: 48 89 9d b0 fe ff ff mov QWORD PTR [rbp-0x150],rbx | |
6483e: 4c 89 a5 b8 fe ff ff mov QWORD PTR [rbp-0x148],r12 | |
64845: 31 c0 xor eax,eax | |
64847: 89 85 d0 fe ff ff mov DWORD PTR [rbp-0x130],eax | |
6484d: c5 fa 10 85 d0 fe ff vmovss xmm0,DWORD PTR [rbp-0x130] | |
64854: ff | |
64855: c5 fa 11 45 80 vmovss DWORD PTR [rbp-0x80],xmm0 | |
6485a: c5 fa 10 0d ae 77 05 vmovss xmm1,DWORD PTR [rip+0x577ae] # bc010 <_IO_stdin_used+0x10> | |
64861: 00 | |
64862: c5 fa 11 4d 84 vmovss DWORD PTR [rbp-0x7c],xmm1 | |
64867: c5 fa 10 15 a5 77 05 vmovss xmm2,DWORD PTR [rip+0x577a5] # bc014 <_IO_stdin_used+0x14> | |
6486e: 00 | |
6486f: c5 fa 11 55 88 vmovss DWORD PTR [rbp-0x78],xmm2 | |
64874: c5 fa 10 1d 9c 77 05 vmovss xmm3,DWORD PTR [rip+0x5779c] # bc018 <_IO_stdin_used+0x18> | |
6487b: 00 | |
6487c: c5 fa 11 5d 8c vmovss DWORD PTR [rbp-0x74],xmm3 | |
64881: c5 fa 10 05 93 77 05 vmovss xmm0,DWORD PTR [rip+0x57793] # bc01c <_IO_stdin_used+0x1c> | |
64888: 00 | |
64889: c5 fa 11 45 90 vmovss DWORD PTR [rbp-0x70],xmm0 | |
6488e: c5 fa 11 55 94 vmovss DWORD PTR [rbp-0x6c],xmm2 | |
64893: 48 8d 75 80 lea rsi,[rbp-0x80] | |
64897: 48 8d bd 60 ff ff ff lea rdi,[rbp-0xa0] | |
6489e: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
648a0: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
648a2: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
648a4: 48 8d 75 80 lea rsi,[rbp-0x80] | |
648a8: 48 8d bd 40 ff ff ff lea rdi,[rbp-0xc0] | |
648af: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
648b1: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
648b3: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
648b5: c5 fa 10 05 63 77 05 vmovss xmm0,DWORD PTR [rip+0x57763] # bc020 <_IO_stdin_used+0x20> | |
648bc: 00 | |
648bd: c5 fa 11 45 e0 vmovss DWORD PTR [rbp-0x20],xmm0 | |
648c2: c5 fa 11 4d e4 vmovss DWORD PTR [rbp-0x1c],xmm1 | |
648c7: c5 fa 10 0d 55 77 05 vmovss xmm1,DWORD PTR [rip+0x57755] # bc024 <_IO_stdin_used+0x24> | |
648ce: 00 | |
648cf: c5 fa 11 4d e8 vmovss DWORD PTR [rbp-0x18],xmm1 | |
648d4: c5 fa 11 55 ec vmovss DWORD PTR [rbp-0x14],xmm2 | |
648d9: c5 fa 10 15 47 77 05 vmovss xmm2,DWORD PTR [rip+0x57747] # bc028 <_IO_stdin_used+0x28> | |
648e0: 00 | |
648e1: c5 fa 11 55 f0 vmovss DWORD PTR [rbp-0x10],xmm2 | |
648e6: c5 fa 11 4d f4 vmovss DWORD PTR [rbp-0xc],xmm1 | |
648eb: 48 8d 75 e0 lea rsi,[rbp-0x20] | |
648ef: 48 8d 7d c0 lea rdi,[rbp-0x40] | |
648f3: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
648f5: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
648f7: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
648f9: 48 8d 75 e0 lea rsi,[rbp-0x20] | |
648fd: 48 8d 7d a0 lea rdi,[rbp-0x60] | |
64901: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
64903: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
64905: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
64907: 48 8d 85 10 ff ff ff lea rax,[rbp-0xf0] | |
6490e: 31 c9 xor ecx,ecx | |
64910: 48 89 08 mov QWORD PTR [rax],rcx | |
64913: 48 89 48 08 mov QWORD PTR [rax+0x8],rcx | |
64917: 48 89 48 10 mov QWORD PTR [rax+0x10],rcx | |
6491b: c6 85 10 ff ff ff 01 mov BYTE PTR [rbp-0xf0],0x1 | |
64922: 48 8d 15 87 9e 08 00 lea rdx,[rip+0x89e87] # ee7b0 <_D4core4time15_ticksPerSecondyG8l> | |
64929: 48 39 0a cmp QWORD PTR [rdx],rcx | |
6492c: 75 28 jne 64956 <_Dmain+0x12a> | |
6492e: 48 8d 15 0b 77 05 00 lea rdx,[rip+0x5770b] # bc040 <_TMP2> | |
64935: b8 5c 00 00 00 mov eax,0x5c | |
6493a: 48 89 c1 mov rcx,rax | |
6493d: 49 89 d0 mov r8,rdx | |
64940: 48 8d 15 56 77 05 00 lea rdx,[rip+0x57756] # bc09d <_TMP3> | |
64947: be 22 00 00 00 mov esi,0x22 | |
6494c: bf 53 08 00 00 mov edi,0x853 | |
64951: e8 1a c2 01 00 call 80b70 <_D4core8internal5abortQgFNbNiNfMAyaMQemZv> | |
64956: 48 8d b5 f0 fe ff ff lea rsi,[rbp-0x110] | |
6495d: bf 01 00 00 00 mov edi,0x1 | |
64962: e8 d9 f7 ff ff call 64140 <clock_gettime@plt> | |
64967: 48 8b 85 f0 fe ff ff mov rax,QWORD PTR [rbp-0x110] | |
6496e: 48 69 c8 00 ca 9a 3b imul rcx,rax,0x3b9aca00 | |
64975: 48 03 8d f8 fe ff ff add rcx,QWORD PTR [rbp-0x108] | |
6497c: 48 8d 15 2d 9e 08 00 lea rdx,[rip+0x89e2d] # ee7b0 <_D4core4time15_ticksPerSecondyG8l> | |
64983: 4c 8b 22 mov r12,QWORD PTR [rdx] | |
64986: 48 b8 b3 94 d6 26 e8 movabs rax,0x112e0be826d694b3 | |
6498d: 0b 2e 11 | |
64990: 48 f7 e9 imul rcx | |
64993: 48 89 c8 mov rax,rcx | |
64996: 48 c1 f8 3f sar rax,0x3f | |
6499a: 48 c1 fa 1a sar rdx,0x1a | |
6499e: 48 2b d0 sub rdx,rax | |
649a1: 48 69 c2 00 ca 9a 3b imul rax,rdx,0x3b9aca00 | |
649a8: 48 2b c8 sub rcx,rax | |
649ab: 48 89 d0 mov rax,rdx | |
649ae: 48 89 ca mov rdx,rcx | |
649b1: 48 89 85 c0 fe ff ff mov QWORD PTR [rbp-0x140],rax | |
649b8: 49 0f af c4 imul rax,r12 | |
649bc: 48 89 85 e8 fe ff ff mov QWORD PTR [rbp-0x118],rax | |
649c3: 48 8b 9d c0 fe ff ff mov rbx,QWORD PTR [rbp-0x140] | |
649ca: 48 89 d6 mov rsi,rdx | |
649cd: 49 0f af f4 imul rsi,r12 | |
649d1: 48 b8 b3 94 d6 26 e8 movabs rax,0x112e0be826d694b3 | |
649d8: 0b 2e 11 | |
649db: 48 f7 ee imul rsi | |
649de: 48 89 f0 mov rax,rsi | |
649e1: 48 c1 f8 3f sar rax,0x3f | |
649e5: 48 c1 fa 1a sar rdx,0x1a | |
649e9: 48 2b d0 sub rdx,rax | |
649ec: 48 8b 85 e8 fe ff ff mov rax,QWORD PTR [rbp-0x118] | |
649f3: 48 03 c2 add rax,rdx | |
649f6: 48 89 85 18 ff ff ff mov QWORD PTR [rbp-0xe8],rax | |
649fd: 48 8d bd 10 ff ff ff lea rdi,[rbp-0xf0] | |
64a04: e8 b3 95 02 00 call 8dfbc <_D3std8datetime9stopwatch9StopWatch4peekMxFNbNiNfZS4core4time8Duration> | |
64a09: 48 89 85 28 ff ff ff mov QWORD PTR [rbp-0xd8],rax | |
64a10: c7 45 f8 00 00 00 00 mov DWORD PTR [rbp-0x8],0x0 | |
64a17: 8b 5d f8 mov ebx,DWORD PTR [rbp-0x8] | |
64a1a: 48 8d 75 a0 lea rsi,[rbp-0x60] # start of loop | |
64a1e: 48 8d bd 40 ff ff ff lea rdi,[rbp-0xc0] | |
64a25: e8 e6 00 00 00 call 64b10 <_D14matrix_default__T3MatTfVki2Vki3ZQp__T8opBinaryVAyaa1_2aVki2ZQxMxFNaNbNiNfKxSQDa__TQCnTfVki3Vki2ZQDbZSQDz__TQDmTfVki2Vki2ZQEa> | |
64a2a: 48 8d 75 a0 lea rsi,[rbp-0x60] | |
64a2e: 48 8d bd 40 ff ff ff lea rdi,[rbp-0xc0] | |
64a35: e8 d6 00 00 00 call 64b10 <_D14matrix_default__T3MatTfVki2Vki3ZQp__T8opBinaryVAyaa1_2aVki2ZQxMxFNaNbNiNfKxSQDa__TQCnTfVki3Vki2ZQDbZSQDz__TQDmTfVki2Vki2ZQEa> | |
64a3a: c5 fb 11 85 d0 fe ff vmovsd QWORD PTR [rbp-0x130],xmm0 | |
64a41: ff | |
64a42: dd 85 d0 fe ff ff fld QWORD PTR [rbp-0x130] | |
64a48: c5 fb 11 8d d0 fe ff vmovsd QWORD PTR [rbp-0x130],xmm1 | |
64a4f: ff | |
64a50: dd 85 d0 fe ff ff fld QWORD PTR [rbp-0x130] | |
64a56: dd 9d 08 ff ff ff fstp QWORD PTR [rbp-0xf8] | |
64a5c: dd 9d 00 ff ff ff fstp QWORD PTR [rbp-0x100] | |
64a62: 83 c3 02 add ebx,0x2 | |
64a65: 81 fb 40 42 0f 00 cmp ebx,0xf4240 | |
64a6b: 72 ad jb 64a1a <_Dmain+0x1ee> | |
64a6d: 48 8d bd 10 ff ff ff lea rdi,[rbp-0xf0] # end of loop | |
64a74: e8 43 95 02 00 call 8dfbc <_D3std8datetime9stopwatch9StopWatch4peekMxFNbNiNfZS4core4time8Duration> | |
64a79: 48 89 85 30 ff ff ff mov QWORD PTR [rbp-0xd0],rax | |
64a80: dd 85 00 ff ff ff fld QWORD PTR [rbp-0x100] | |
64a86: dd 85 08 ff ff ff fld QWORD PTR [rbp-0xf8] | |
64a8c: dd 9d d0 fe ff ff fstp QWORD PTR [rbp-0x130] | |
64a92: c5 fb 10 8d d0 fe ff vmovsd xmm1,QWORD PTR [rbp-0x130] | |
64a99: ff | |
64a9a: dd 9d d0 fe ff ff fstp QWORD PTR [rbp-0x130] | |
64aa0: c5 fb 10 85 d0 fe ff vmovsd xmm0,QWORD PTR [rbp-0x130] | |
64aa7: ff | |
64aa8: e8 67 02 00 00 call 64d14 <_D3std5stdio__T7writelnTS14matrix_default__T3MatTfVki2Vki2ZQpZQBvFNfQBsZv> | |
64aad: 48 8b bd 30 ff ff ff mov rdi,QWORD PTR [rbp-0xd0] | |
64ab4: 48 2b bd 28 ff ff ff sub rdi,QWORD PTR [rbp-0xd8] | |
64abb: e8 d8 e7 00 00 call 73298 <_D3std5stdio__T7writelnTS4core4time8DurationZQBeFNfQBbZv> | |
64ac0: 31 c0 xor eax,eax | |
64ac2: 48 8b 9d b0 fe ff ff mov rbx,QWORD PTR [rbp-0x150] | |
64ac9: 4c 8b a5 b8 fe ff ff mov r12,QWORD PTR [rbp-0x148] | |
64ad0: 48 8b e5 mov rsp,rbp | |
64ad3: 5d pop rbp | |
64ad4: c3 ret | |
64ad5: 00 00 add BYTE PTR [rax],al | |
... | |
0000000000064ad8 <_D14matrix_default__T3MatTfVki2Vki3ZQp6__ctorMFNaNbNcNiNfyG2G3fZSQCl__TQByTfVki2Vki3ZQCm>: | |
64ad8: 48 89 f8 mov rax,rdi | |
64adb: 48 8d 74 24 08 lea rsi,[rsp+0x8] | |
64ae0: 48 8b f8 mov rdi,rax | |
64ae3: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
64ae5: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
64ae7: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
64ae9: c3 ret | |
... | |
0000000000064aec <_D14matrix_default__T3MatTfVki3Vki2ZQp6__ctorMFNaNbNcNiNfyG3G2fZSQCl__TQByTfVki3Vki2ZQCm>: | |
64aec: 48 89 f8 mov rax,rdi | |
64aef: 48 8d 74 24 08 lea rsi,[rsp+0x8] | |
64af4: 48 8b f8 mov rdi,rax | |
64af7: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
64af9: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
64afb: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
64afd: c3 ret | |
... | |
0000000000064b00 <_D14matrix_default__T3MatTfVki2Vki2ZQp6__ctorMFNaNbNcNiNfyG2G2fZSQCl__TQByTfVki2Vki2ZQCm>: | |
64b00: 48 89 f8 mov rax,rdi | |
64b03: 48 8d 74 24 08 lea rsi,[rsp+0x8] | |
64b08: 48 8b f8 mov rdi,rax | |
64b0b: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
64b0d: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
64b0f: c3 ret | |
0000000000064b10 <_D14matrix_default__T3MatTfVki2Vki3ZQp__T8opBinaryVAyaa1_2aVki2ZQxMxFNaNbNiNfKxSQDa__TQCnTfVki3Vki2ZQDbZSQDz__TQDmTfVki2Vki2ZQEa>: | |
64b10: 55 push rbp | |
64b11: 48 8b ec mov rbp,rsp | |
64b14: 48 83 ec 30 sub rsp,0x30 | |
64b18: 48 89 5d d0 mov QWORD PTR [rbp-0x30],rbx | |
64b1c: 4c 89 65 d8 mov QWORD PTR [rbp-0x28],r12 | |
64b20: 48 89 fb mov rbx,rdi | |
64b23: 49 89 f4 mov r12,rsi | |
64b26: 48 8d 05 33 4b 07 00 lea rax,[rip+0x74b33] # d9660 <_D14matrix_default__T3MatTfVki2Vki2ZQp6__initZ> | |
64b2d: c5 fb 10 00 vmovsd xmm0,QWORD PTR [rax] | |
64b31: c4 e1 fb 11 45 f0 vmovsd QWORD PTR [rbp-0x10],xmm0 | |
64b37: c5 fb 10 48 08 vmovsd xmm1,QWORD PTR [rax+0x8] | |
64b3c: c4 e1 fb 11 4d f8 vmovsd QWORD PTR [rbp-0x8],xmm1 | |
64b42: be 04 00 00 00 mov esi,0x4 | |
64b47: 31 c0 xor eax,eax | |
64b49: 89 45 e0 mov DWORD PTR [rbp-0x20],eax | |
64b4c: c5 fa 10 45 e0 vmovss xmm0,DWORD PTR [rbp-0x20] | |
64b51: 48 8d 7d f0 lea rdi,[rbp-0x10] | |
64b55: e8 de 0a 02 00 call 85638 <_memsetFloat> | |
64b5a: c5 fa 10 0b vmovss xmm1,DWORD PTR [rbx] | |
64b5e: c4 c1 7a 10 14 24 vmovss xmm2,DWORD PTR [r12] | |
64b64: c5 f2 59 ca vmulss xmm1,xmm1,xmm2 | |
64b68: c5 fa 10 45 f0 vmovss xmm0,DWORD PTR [rbp-0x10] | |
64b6d: c5 fa 58 c1 vaddss xmm0,xmm0,xmm1 | |
64b71: c5 fa 11 45 f0 vmovss DWORD PTR [rbp-0x10],xmm0 | |
64b76: c5 fa 10 1b vmovss xmm3,DWORD PTR [rbx] | |
64b7a: c4 c1 7a 10 64 24 04 vmovss xmm4,DWORD PTR [r12+0x4] | |
64b81: c5 e2 59 dc vmulss xmm3,xmm3,xmm4 | |
64b85: c5 fa 10 4d f4 vmovss xmm1,DWORD PTR [rbp-0xc] | |
64b8a: c5 f2 58 cb vaddss xmm1,xmm1,xmm3 | |
64b8e: c5 fa 11 4d f4 vmovss DWORD PTR [rbp-0xc],xmm1 | |
64b93: c5 fa 10 53 04 vmovss xmm2,DWORD PTR [rbx+0x4] | |
64b98: c4 c1 7a 10 44 24 08 vmovss xmm0,DWORD PTR [r12+0x8] | |
64b9f: c5 ea 59 d0 vmulss xmm2,xmm2,xmm0 | |
64ba3: c5 fa 10 5d f0 vmovss xmm3,DWORD PTR [rbp-0x10] | |
64ba8: c5 e2 58 da vaddss xmm3,xmm3,xmm2 | |
64bac: c5 fa 11 5d f0 vmovss DWORD PTR [rbp-0x10],xmm3 | |
64bb1: c5 fa 10 63 04 vmovss xmm4,DWORD PTR [rbx+0x4] | |
64bb6: c4 c1 7a 10 4c 24 0c vmovss xmm1,DWORD PTR [r12+0xc] | |
64bbd: c5 da 59 e1 vmulss xmm4,xmm4,xmm1 | |
64bc1: c5 fa 10 55 f4 vmovss xmm2,DWORD PTR [rbp-0xc] | |
64bc6: c5 ea 58 d4 vaddss xmm2,xmm2,xmm4 | |
64bca: c5 fa 11 55 f4 vmovss DWORD PTR [rbp-0xc],xmm2 | |
64bcf: c5 fa 10 43 08 vmovss xmm0,DWORD PTR [rbx+0x8] | |
64bd4: c4 c1 7a 10 5c 24 10 vmovss xmm3,DWORD PTR [r12+0x10] | |
64bdb: c5 fa 59 c3 vmulss xmm0,xmm0,xmm3 | |
64bdf: c5 fa 10 65 f0 vmovss xmm4,DWORD PTR [rbp-0x10] | |
64be4: c5 da 58 e0 vaddss xmm4,xmm4,xmm0 | |
64be8: c5 fa 11 65 f0 vmovss DWORD PTR [rbp-0x10],xmm4 | |
64bed: c5 fa 10 4b 08 vmovss xmm1,DWORD PTR [rbx+0x8] | |
64bf2: c4 c1 7a 10 54 24 14 vmovss xmm2,DWORD PTR [r12+0x14] | |
64bf9: c5 f2 59 ca vmulss xmm1,xmm1,xmm2 | |
64bfd: c5 fa 10 45 f4 vmovss xmm0,DWORD PTR [rbp-0xc] | |
64c02: c5 fa 58 c1 vaddss xmm0,xmm0,xmm1 | |
64c06: c5 fa 11 45 f4 vmovss DWORD PTR [rbp-0xc],xmm0 | |
64c0b: c5 fa 10 5b 0c vmovss xmm3,DWORD PTR [rbx+0xc] | |
64c10: c4 c1 7a 10 24 24 vmovss xmm4,DWORD PTR [r12] | |
64c16: c5 e2 59 dc vmulss xmm3,xmm3,xmm4 | |
64c1a: c5 fa 10 4d f8 vmovss xmm1,DWORD PTR [rbp-0x8] | |
64c1f: c5 f2 58 cb vaddss xmm1,xmm1,xmm3 | |
64c23: c5 fa 11 4d f8 vmovss DWORD PTR [rbp-0x8],xmm1 | |
64c28: c5 fa 10 53 0c vmovss xmm2,DWORD PTR [rbx+0xc] | |
64c2d: c4 c1 7a 10 44 24 04 vmovss xmm0,DWORD PTR [r12+0x4] | |
64c34: c5 ea 59 d0 vmulss xmm2,xmm2,xmm0 | |
64c38: c5 fa 10 5d fc vmovss xmm3,DWORD PTR [rbp-0x4] | |
64c3d: c5 e2 58 da vaddss xmm3,xmm3,xmm2 | |
64c41: c5 fa 11 5d fc vmovss DWORD PTR [rbp-0x4],xmm3 | |
64c46: c5 fa 10 63 10 vmovss xmm4,DWORD PTR [rbx+0x10] | |
64c4b: c4 c1 7a 10 4c 24 08 vmovss xmm1,DWORD PTR [r12+0x8] | |
64c52: c5 da 59 e1 vmulss xmm4,xmm4,xmm1 | |
64c56: c5 fa 10 55 f8 vmovss xmm2,DWORD PTR [rbp-0x8] | |
64c5b: c5 ea 58 d4 vaddss xmm2,xmm2,xmm4 | |
64c5f: c5 fa 11 55 f8 vmovss DWORD PTR [rbp-0x8],xmm2 | |
64c64: c5 fa 10 43 10 vmovss xmm0,DWORD PTR [rbx+0x10] | |
64c69: c4 c1 7a 10 5c 24 0c vmovss xmm3,DWORD PTR [r12+0xc] | |
64c70: c5 fa 59 c3 vmulss xmm0,xmm0,xmm3 | |
64c74: c5 fa 10 65 fc vmovss xmm4,DWORD PTR [rbp-0x4] | |
64c79: c5 da 58 e0 vaddss xmm4,xmm4,xmm0 | |
64c7d: c5 fa 11 65 fc vmovss DWORD PTR [rbp-0x4],xmm4 | |
64c82: c5 fa 10 4b 14 vmovss xmm1,DWORD PTR [rbx+0x14] | |
64c87: c4 c1 7a 10 54 24 10 vmovss xmm2,DWORD PTR [r12+0x10] | |
64c8e: c5 f2 59 ca vmulss xmm1,xmm1,xmm2 | |
64c92: c5 fa 10 45 f8 vmovss xmm0,DWORD PTR [rbp-0x8] | |
64c97: c5 fa 58 c1 vaddss xmm0,xmm0,xmm1 | |
64c9b: c5 fa 11 45 f8 vmovss DWORD PTR [rbp-0x8],xmm0 | |
64ca0: c5 fa 10 5b 14 vmovss xmm3,DWORD PTR [rbx+0x14] | |
64ca5: c4 c1 7a 10 64 24 14 vmovss xmm4,DWORD PTR [r12+0x14] | |
64cac: c5 e2 59 dc vmulss xmm3,xmm3,xmm4 | |
64cb0: c5 fa 10 4d fc vmovss xmm1,DWORD PTR [rbp-0x4] | |
64cb5: c5 f2 58 cb vaddss xmm1,xmm1,xmm3 | |
64cb9: c5 fa 11 4d fc vmovss DWORD PTR [rbp-0x4],xmm1 | |
64cbe: dd 45 f0 fld QWORD PTR [rbp-0x10] | |
64cc1: dd 45 f8 fld QWORD PTR [rbp-0x8] | |
64cc4: dd 5d e0 fstp QWORD PTR [rbp-0x20] | |
64cc7: c5 fb 10 4d e0 vmovsd xmm1,QWORD PTR [rbp-0x20] | |
64ccc: dd 5d e0 fstp QWORD PTR [rbp-0x20] | |
64ccf: c5 fb 10 45 e0 vmovsd xmm0,QWORD PTR [rbp-0x20] | |
64cd4: 48 8b 5d d0 mov rbx,QWORD PTR [rbp-0x30] | |
64cd8: 4c 8b 65 d8 mov r12,QWORD PTR [rbp-0x28] | |
64cdc: 48 8b e5 mov rsp,rbp | |
64cdf: 5d pop rbp | |
64ce0: c3 ret | |
64ce1: 00 00 add BYTE PTR [rax],al | |
... | |
0000000000064ce4 <_D14matrix_default__T3MatTfVki2Vki2ZQp__T6__ctorTiZQkMFNaNbNcNiNfyiZSQCp__TQCcTfVki2Vki2ZQCq>: | |
64ce4: 55 push rbp | |
64ce5: 48 8b ec mov rbp,rsp | |
64ce8: 48 83 ec 10 sub rsp,0x10 | |
64cec: 48 89 7d f0 mov QWORD PTR [rbp-0x10],rdi | |
64cf0: 89 75 f8 mov DWORD PTR [rbp-0x8],esi | |
64cf3: be 04 00 00 00 mov esi,0x4 | |
64cf8: 8b 45 f8 mov eax,DWORD PTR [rbp-0x8] | |
64cfb: f3 0f 2a c0 cvtsi2ss xmm0,eax | |
64cff: 48 8b 7d f0 mov rdi,QWORD PTR [rbp-0x10] | |
64d03: e8 30 09 02 00 call 85638 <_memsetFloat> | |
64d08: 48 8b 45 f0 mov rax,QWORD PTR [rbp-0x10] | |
64d0c: 48 8b e5 mov rsp,rbp | |
64d0f: 5d pop rbp | |
64d10: c3 ret | |
64d11: 00 00 add BYTE PTR [rax],al | |
... |
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
matrix_void: file format elf64-x86-64 | |
Disassembly of section .text: | |
000000000006482c <_Dmain>: | |
6482c: 55 push rbp | |
6482d: 48 8b ec mov rbp,rsp | |
64830: 48 81 ec 50 01 00 00 sub rsp,0x150 | |
64837: 48 89 9d b0 fe ff ff mov QWORD PTR [rbp-0x150],rbx | |
6483e: 4c 89 a5 b8 fe ff ff mov QWORD PTR [rbp-0x148],r12 | |
64845: 48 8d 85 40 ff ff ff lea rax,[rbp-0xc0] | |
6484c: 31 c9 xor ecx,ecx | |
6484e: 48 89 08 mov QWORD PTR [rax],rcx | |
64851: 48 89 48 08 mov QWORD PTR [rax+0x8],rcx | |
64855: 48 89 48 10 mov QWORD PTR [rax+0x10],rcx | |
64859: 89 8d d0 fe ff ff mov DWORD PTR [rbp-0x130],ecx | |
6485f: c5 fa 10 85 d0 fe ff vmovss xmm0,DWORD PTR [rbp-0x130] | |
64866: ff | |
64867: c5 fa 11 45 80 vmovss DWORD PTR [rbp-0x80],xmm0 | |
6486c: c5 fa 10 0d 9c 77 05 vmovss xmm1,DWORD PTR [rip+0x5779c] # bc010 <_IO_stdin_used+0x10> | |
64873: 00 | |
64874: c5 fa 11 4d 84 vmovss DWORD PTR [rbp-0x7c],xmm1 | |
64879: c5 fa 10 15 93 77 05 vmovss xmm2,DWORD PTR [rip+0x57793] # bc014 <_IO_stdin_used+0x14> | |
64880: 00 | |
64881: c5 fa 11 55 88 vmovss DWORD PTR [rbp-0x78],xmm2 | |
64886: c5 fa 10 1d 8a 77 05 vmovss xmm3,DWORD PTR [rip+0x5778a] # bc018 <_IO_stdin_used+0x18> | |
6488d: 00 | |
6488e: c5 fa 11 5d 8c vmovss DWORD PTR [rbp-0x74],xmm3 | |
64893: c5 fa 10 25 81 77 05 vmovss xmm4,DWORD PTR [rip+0x57781] # bc01c <_IO_stdin_used+0x1c> | |
6489a: 00 | |
6489b: c5 fa 11 65 90 vmovss DWORD PTR [rbp-0x70],xmm4 | |
648a0: c5 fa 11 55 94 vmovss DWORD PTR [rbp-0x6c],xmm2 | |
648a5: 48 8d 75 80 lea rsi,[rbp-0x80] | |
648a9: 48 8d bd 60 ff ff ff lea rdi,[rbp-0xa0] | |
648b0: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
648b2: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
648b4: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
648b6: 48 8d 75 80 lea rsi,[rbp-0x80] | |
648ba: 48 8d bd 40 ff ff ff lea rdi,[rbp-0xc0] | |
648c1: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
648c3: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
648c5: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
648c7: 48 8d 45 a0 lea rax,[rbp-0x60] | |
648cb: 48 89 08 mov QWORD PTR [rax],rcx | |
648ce: 48 89 48 08 mov QWORD PTR [rax+0x8],rcx | |
648d2: 48 89 48 10 mov QWORD PTR [rax+0x10],rcx | |
648d6: c5 fa 10 05 42 77 05 vmovss xmm0,DWORD PTR [rip+0x57742] # bc020 <_IO_stdin_used+0x20> | |
648dd: 00 | |
648de: c5 fa 11 45 e0 vmovss DWORD PTR [rbp-0x20],xmm0 | |
648e3: c5 fa 11 4d e4 vmovss DWORD PTR [rbp-0x1c],xmm1 | |
648e8: c5 fa 10 0d 34 77 05 vmovss xmm1,DWORD PTR [rip+0x57734] # bc024 <_IO_stdin_used+0x24> | |
648ef: 00 | |
648f0: c5 fa 11 4d e8 vmovss DWORD PTR [rbp-0x18],xmm1 | |
648f5: c5 fa 11 55 ec vmovss DWORD PTR [rbp-0x14],xmm2 | |
648fa: c5 fa 10 15 26 77 05 vmovss xmm2,DWORD PTR [rip+0x57726] # bc028 <_IO_stdin_used+0x28> | |
64901: 00 | |
64902: c5 fa 11 55 f0 vmovss DWORD PTR [rbp-0x10],xmm2 | |
64907: c5 fa 11 4d f4 vmovss DWORD PTR [rbp-0xc],xmm1 | |
6490c: 48 8d 75 e0 lea rsi,[rbp-0x20] | |
64910: 48 8d 7d c0 lea rdi,[rbp-0x40] | |
64914: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
64916: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
64918: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
6491a: 48 8d 75 e0 lea rsi,[rbp-0x20] | |
6491e: 48 8d 7d a0 lea rdi,[rbp-0x60] | |
64922: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
64924: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
64926: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
64928: 48 8d 85 f0 fe ff ff lea rax,[rbp-0x110] | |
6492f: 48 89 08 mov QWORD PTR [rax],rcx | |
64932: 48 89 48 08 mov QWORD PTR [rax+0x8],rcx | |
64936: 48 8d 8d 10 ff ff ff lea rcx,[rbp-0xf0] | |
6493d: 31 d2 xor edx,edx | |
6493f: 48 89 11 mov QWORD PTR [rcx],rdx | |
64942: 48 89 51 08 mov QWORD PTR [rcx+0x8],rdx | |
64946: 48 89 51 10 mov QWORD PTR [rcx+0x10],rdx | |
6494a: c6 85 10 ff ff ff 01 mov BYTE PTR [rbp-0xf0],0x1 | |
64951: 48 8d 1d 58 9e 08 00 lea rbx,[rip+0x89e58] # ee7b0 <_D4core4time15_ticksPerSecondyG8l> | |
64958: 48 39 13 cmp QWORD PTR [rbx],rdx | |
6495b: 75 28 jne 64985 <_Dmain+0x159> | |
6495d: 48 8d 15 dc 76 05 00 lea rdx,[rip+0x576dc] # bc040 <_TMP2> | |
64964: b8 5c 00 00 00 mov eax,0x5c | |
64969: 48 89 c1 mov rcx,rax | |
6496c: 49 89 d0 mov r8,rdx | |
6496f: 48 8d 15 27 77 05 00 lea rdx,[rip+0x57727] # bc09d <_TMP3> | |
64976: be 22 00 00 00 mov esi,0x22 | |
6497b: bf 53 08 00 00 mov edi,0x853 | |
64980: e8 33 c2 01 00 call 80bb8 <_D4core8internal5abortQgFNbNiNfMAyaMQemZv> | |
64985: 48 8d b5 00 ff ff ff lea rsi,[rbp-0x100] | |
6498c: bf 01 00 00 00 mov edi,0x1 | |
64991: e8 aa f7 ff ff call 64140 <clock_gettime@plt> | |
64996: 48 8b 85 00 ff ff ff mov rax,QWORD PTR [rbp-0x100] | |
6499d: 48 69 c8 00 ca 9a 3b imul rcx,rax,0x3b9aca00 | |
649a4: 48 03 8d 08 ff ff ff add rcx,QWORD PTR [rbp-0xf8] | |
649ab: 48 8d 15 fe 9d 08 00 lea rdx,[rip+0x89dfe] # ee7b0 <_D4core4time15_ticksPerSecondyG8l> | |
649b2: 4c 8b 22 mov r12,QWORD PTR [rdx] | |
649b5: 48 b8 b3 94 d6 26 e8 movabs rax,0x112e0be826d694b3 | |
649bc: 0b 2e 11 | |
649bf: 48 f7 e9 imul rcx | |
649c2: 48 89 c8 mov rax,rcx | |
649c5: 48 c1 f8 3f sar rax,0x3f | |
649c9: 48 c1 fa 1a sar rdx,0x1a | |
649cd: 48 2b d0 sub rdx,rax | |
649d0: 48 69 c2 00 ca 9a 3b imul rax,rdx,0x3b9aca00 | |
649d7: 48 2b c8 sub rcx,rax | |
649da: 48 89 d0 mov rax,rdx | |
649dd: 48 89 ca mov rdx,rcx | |
649e0: 48 89 85 c0 fe ff ff mov QWORD PTR [rbp-0x140],rax | |
649e7: 49 0f af c4 imul rax,r12 | |
649eb: 48 89 85 e8 fe ff ff mov QWORD PTR [rbp-0x118],rax | |
649f2: 48 8b 9d c0 fe ff ff mov rbx,QWORD PTR [rbp-0x140] | |
649f9: 48 89 d6 mov rsi,rdx | |
649fc: 49 0f af f4 imul rsi,r12 | |
64a00: 48 b8 b3 94 d6 26 e8 movabs rax,0x112e0be826d694b3 | |
64a07: 0b 2e 11 | |
64a0a: 48 f7 ee imul rsi | |
64a0d: 48 89 f0 mov rax,rsi | |
64a10: 48 c1 f8 3f sar rax,0x3f | |
64a14: 48 c1 fa 1a sar rdx,0x1a | |
64a18: 48 2b d0 sub rdx,rax | |
64a1b: 48 8b 85 e8 fe ff ff mov rax,QWORD PTR [rbp-0x118] | |
64a22: 48 03 c2 add rax,rdx | |
64a25: 48 89 85 18 ff ff ff mov QWORD PTR [rbp-0xe8],rax | |
64a2c: 48 8d bd 10 ff ff ff lea rdi,[rbp-0xf0] | |
64a33: e8 cc 95 02 00 call 8e004 <_D3std8datetime9stopwatch9StopWatch4peekMxFNbNiNfZS4core4time8Duration> | |
64a38: 48 89 85 28 ff ff ff mov QWORD PTR [rbp-0xd8],rax | |
64a3f: c7 45 f8 00 00 00 00 mov DWORD PTR [rbp-0x8],0x0 | |
64a46: 8b 5d f8 mov ebx,DWORD PTR [rbp-0x8] | |
64a49: 48 8d 75 a0 lea rsi,[rbp-0x60] # start of loop | |
64a4d: 48 8d bd 40 ff ff ff lea rdi,[rbp-0xc0] | |
64a54: e8 0f 01 00 00 call 64b68 <_D11matrix_void__T3MatTfVki2Vki3ZQp__T8opBinaryVAyaa1_2aVki2ZQxMxFNaNbNiNfKxSQCx__TQCnTfVki3Vki2ZQDbZSQDw__TQDmTfVki2Vki2ZQEa> | |
64a59: c5 fb 11 85 d0 fe ff vmovsd QWORD PTR [rbp-0x130],xmm0 | |
64a60: ff | |
64a61: dd 85 d0 fe ff ff fld QWORD PTR [rbp-0x130] | |
64a67: c5 fb 11 8d d0 fe ff vmovsd QWORD PTR [rbp-0x130],xmm1 | |
64a6e: ff | |
64a6f: dd 85 d0 fe ff ff fld QWORD PTR [rbp-0x130] | |
64a75: dd 9d f8 fe ff ff fstp QWORD PTR [rbp-0x108] | |
64a7b: dd 9d f0 fe ff ff fstp QWORD PTR [rbp-0x110] | |
64a81: 48 8d 75 a0 lea rsi,[rbp-0x60] | |
64a85: 48 8d bd 40 ff ff ff lea rdi,[rbp-0xc0] | |
64a8c: e8 d7 00 00 00 call 64b68 <_D11matrix_void__T3MatTfVki2Vki3ZQp__T8opBinaryVAyaa1_2aVki2ZQxMxFNaNbNiNfKxSQCx__TQCnTfVki3Vki2ZQDbZSQDw__TQDmTfVki2Vki2ZQEa> | |
64a91: c5 fb 11 85 d0 fe ff vmovsd QWORD PTR [rbp-0x130],xmm0 | |
64a98: ff | |
64a99: dd 85 d0 fe ff ff fld QWORD PTR [rbp-0x130] | |
64a9f: c5 fb 11 8d d0 fe ff vmovsd QWORD PTR [rbp-0x130],xmm1 | |
64aa6: ff | |
64aa7: dd 85 d0 fe ff ff fld QWORD PTR [rbp-0x130] | |
64aad: dd 9d f8 fe ff ff fstp QWORD PTR [rbp-0x108] | |
64ab3: dd 9d f0 fe ff ff fstp QWORD PTR [rbp-0x110] | |
64ab9: 83 c3 02 add ebx,0x2 | |
64abc: 81 fb 40 42 0f 00 cmp ebx,0xf4240 | |
64ac2: 0f 82 81 ff ff ff jb 64a49 <_Dmain+0x21d> | |
64ac8: 48 8d bd 10 ff ff ff lea rdi,[rbp-0xf0] # end of loop | |
64acf: e8 30 95 02 00 call 8e004 <_D3std8datetime9stopwatch9StopWatch4peekMxFNbNiNfZS4core4time8Duration> | |
64ad4: 48 89 85 30 ff ff ff mov QWORD PTR [rbp-0xd0],rax | |
64adb: dd 85 f0 fe ff ff fld QWORD PTR [rbp-0x110] | |
64ae1: dd 85 f8 fe ff ff fld QWORD PTR [rbp-0x108] | |
64ae7: dd 9d d0 fe ff ff fstp QWORD PTR [rbp-0x130] | |
64aed: c5 fb 10 8d d0 fe ff vmovsd xmm1,QWORD PTR [rbp-0x130] | |
64af4: ff | |
64af5: dd 9d d0 fe ff ff fstp QWORD PTR [rbp-0x130] | |
64afb: c5 fb 10 85 d0 fe ff vmovsd xmm0,QWORD PTR [rbp-0x130] | |
64b02: ff | |
64b03: e8 50 02 00 00 call 64d58 <_D3std5stdio__T7writelnTS11matrix_void__T3MatTfVki2Vki2ZQpZQBsFNfQBpZv> | |
64b08: 48 8b bd 30 ff ff ff mov rdi,QWORD PTR [rbp-0xd0] | |
64b0f: 48 2b bd 28 ff ff ff sub rdi,QWORD PTR [rbp-0xd8] | |
64b16: e8 c1 e7 00 00 call 732dc <_D3std5stdio__T7writelnTS4core4time8DurationZQBeFNfQBbZv> | |
64b1b: 31 c0 xor eax,eax | |
64b1d: 48 8b 9d b0 fe ff ff mov rbx,QWORD PTR [rbp-0x150] | |
64b24: 4c 8b a5 b8 fe ff ff mov r12,QWORD PTR [rbp-0x148] | |
64b2b: 48 8b e5 mov rsp,rbp | |
64b2e: 5d pop rbp | |
64b2f: c3 ret | |
0000000000064b30 <_D11matrix_void__T3MatTfVki2Vki3ZQp6__ctorMFNaNbNcNiNfyG2G3fZSQCi__TQByTfVki2Vki3ZQCm>: | |
64b30: 48 89 f8 mov rax,rdi | |
64b33: 48 8d 74 24 08 lea rsi,[rsp+0x8] | |
64b38: 48 8b f8 mov rdi,rax | |
64b3b: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
64b3d: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
64b3f: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
64b41: c3 ret | |
... | |
0000000000064b44 <_D11matrix_void__T3MatTfVki3Vki2ZQp6__ctorMFNaNbNcNiNfyG3G2fZSQCi__TQByTfVki3Vki2ZQCm>: | |
64b44: 48 89 f8 mov rax,rdi | |
64b47: 48 8d 74 24 08 lea rsi,[rsp+0x8] | |
64b4c: 48 8b f8 mov rdi,rax | |
64b4f: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
64b51: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
64b53: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
64b55: c3 ret | |
... | |
0000000000064b58 <_D11matrix_void__T3MatTfVki2Vki2ZQp6__ctorMFNaNbNcNiNfyG2G2fZSQCi__TQByTfVki2Vki2ZQCm>: | |
64b58: 48 89 f8 mov rax,rdi | |
64b5b: 48 8d 74 24 08 lea rsi,[rsp+0x8] | |
64b60: 48 8b f8 mov rdi,rax | |
64b63: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
64b65: 48 a5 movs QWORD PTR es:[rdi],QWORD PTR ds:[rsi] | |
64b67: c3 ret | |
0000000000064b68 <_D11matrix_void__T3MatTfVki2Vki3ZQp__T8opBinaryVAyaa1_2aVki2ZQxMxFNaNbNiNfKxSQCx__TQCnTfVki3Vki2ZQDbZSQDw__TQDmTfVki2Vki2ZQEa>: | |
64b68: 55 push rbp | |
64b69: 48 8b ec mov rbp,rsp | |
64b6c: 48 83 ec 30 sub rsp,0x30 | |
64b70: 48 89 5d d0 mov QWORD PTR [rbp-0x30],rbx | |
64b74: 4c 89 65 d8 mov QWORD PTR [rbp-0x28],r12 | |
64b78: 48 89 fb mov rbx,rdi | |
64b7b: 49 89 f4 mov r12,rsi | |
64b7e: 48 8d 45 f0 lea rax,[rbp-0x10] | |
64b82: 31 c9 xor ecx,ecx | |
64b84: 48 89 08 mov QWORD PTR [rax],rcx | |
64b87: 48 89 48 08 mov QWORD PTR [rax+0x8],rcx | |
64b8b: be 04 00 00 00 mov esi,0x4 | |
64b90: 89 4d e0 mov DWORD PTR [rbp-0x20],ecx | |
64b93: c5 fa 10 45 e0 vmovss xmm0,DWORD PTR [rbp-0x20] | |
64b98: 48 89 c7 mov rdi,rax | |
64b9b: e8 e0 0a 02 00 call 85680 <_memsetFloat> | |
64ba0: c5 fa 10 0b vmovss xmm1,DWORD PTR [rbx] | |
64ba4: c4 c1 7a 10 14 24 vmovss xmm2,DWORD PTR [r12] | |
64baa: c5 f2 59 ca vmulss xmm1,xmm1,xmm2 | |
64bae: c5 fa 10 5d f0 vmovss xmm3,DWORD PTR [rbp-0x10] | |
64bb3: c5 e2 58 d9 vaddss xmm3,xmm3,xmm1 | |
64bb7: c5 fa 11 5d f0 vmovss DWORD PTR [rbp-0x10],xmm3 | |
64bbc: c5 fa 10 03 vmovss xmm0,DWORD PTR [rbx] | |
64bc0: c4 c1 7a 10 64 24 04 vmovss xmm4,DWORD PTR [r12+0x4] | |
64bc7: c5 fa 59 c4 vmulss xmm0,xmm0,xmm4 | |
64bcb: c5 fa 10 4d f4 vmovss xmm1,DWORD PTR [rbp-0xc] | |
64bd0: c5 f2 58 c8 vaddss xmm1,xmm1,xmm0 | |
64bd4: c5 fa 11 4d f4 vmovss DWORD PTR [rbp-0xc],xmm1 | |
64bd9: c5 fa 10 53 04 vmovss xmm2,DWORD PTR [rbx+0x4] | |
64bde: c4 c1 7a 10 5c 24 08 vmovss xmm3,DWORD PTR [r12+0x8] | |
64be5: c5 ea 59 d3 vmulss xmm2,xmm2,xmm3 | |
64be9: c5 fa 10 45 f0 vmovss xmm0,DWORD PTR [rbp-0x10] | |
64bee: c5 fa 58 c2 vaddss xmm0,xmm0,xmm2 | |
64bf2: c5 fa 11 45 f0 vmovss DWORD PTR [rbp-0x10],xmm0 | |
64bf7: c5 fa 10 63 04 vmovss xmm4,DWORD PTR [rbx+0x4] | |
64bfc: c4 c1 7a 10 4c 24 0c vmovss xmm1,DWORD PTR [r12+0xc] | |
64c03: c5 da 59 e1 vmulss xmm4,xmm4,xmm1 | |
64c07: c5 fa 10 55 f4 vmovss xmm2,DWORD PTR [rbp-0xc] | |
64c0c: c5 ea 58 d4 vaddss xmm2,xmm2,xmm4 | |
64c10: c5 fa 11 55 f4 vmovss DWORD PTR [rbp-0xc],xmm2 | |
64c15: c5 fa 10 5b 08 vmovss xmm3,DWORD PTR [rbx+0x8] | |
64c1a: c4 c1 7a 10 44 24 10 vmovss xmm0,DWORD PTR [r12+0x10] | |
64c21: c5 e2 59 d8 vmulss xmm3,xmm3,xmm0 | |
64c25: c5 fa 10 65 f0 vmovss xmm4,DWORD PTR [rbp-0x10] | |
64c2a: c5 da 58 e3 vaddss xmm4,xmm4,xmm3 | |
64c2e: c5 fa 11 65 f0 vmovss DWORD PTR [rbp-0x10],xmm4 | |
64c33: c5 fa 10 4b 08 vmovss xmm1,DWORD PTR [rbx+0x8] | |
64c38: c4 c1 7a 10 54 24 14 vmovss xmm2,DWORD PTR [r12+0x14] | |
64c3f: c5 f2 59 ca vmulss xmm1,xmm1,xmm2 | |
64c43: c5 fa 10 5d f4 vmovss xmm3,DWORD PTR [rbp-0xc] | |
64c48: c5 e2 58 d9 vaddss xmm3,xmm3,xmm1 | |
64c4c: c5 fa 11 5d f4 vmovss DWORD PTR [rbp-0xc],xmm3 | |
64c51: c5 fa 10 43 0c vmovss xmm0,DWORD PTR [rbx+0xc] | |
64c56: c4 c1 7a 10 24 24 vmovss xmm4,DWORD PTR [r12] | |
64c5c: c5 fa 59 c4 vmulss xmm0,xmm0,xmm4 | |
64c60: c5 fa 10 4d f8 vmovss xmm1,DWORD PTR [rbp-0x8] | |
64c65: c5 f2 58 c8 vaddss xmm1,xmm1,xmm0 | |
64c69: c5 fa 11 4d f8 vmovss DWORD PTR [rbp-0x8],xmm1 | |
64c6e: c5 fa 10 53 0c vmovss xmm2,DWORD PTR [rbx+0xc] | |
64c73: c4 c1 7a 10 5c 24 04 vmovss xmm3,DWORD PTR [r12+0x4] | |
64c7a: c5 ea 59 d3 vmulss xmm2,xmm2,xmm3 | |
64c7e: c5 fa 10 45 fc vmovss xmm0,DWORD PTR [rbp-0x4] | |
64c83: c5 fa 58 c2 vaddss xmm0,xmm0,xmm2 | |
64c87: c5 fa 11 45 fc vmovss DWORD PTR [rbp-0x4],xmm0 | |
64c8c: c5 fa 10 63 10 vmovss xmm4,DWORD PTR [rbx+0x10] | |
64c91: c4 c1 7a 10 4c 24 08 vmovss xmm1,DWORD PTR [r12+0x8] | |
64c98: c5 da 59 e1 vmulss xmm4,xmm4,xmm1 | |
64c9c: c5 fa 10 55 f8 vmovss xmm2,DWORD PTR [rbp-0x8] | |
64ca1: c5 ea 58 d4 vaddss xmm2,xmm2,xmm4 | |
64ca5: c5 fa 11 55 f8 vmovss DWORD PTR [rbp-0x8],xmm2 | |
64caa: c5 fa 10 5b 10 vmovss xmm3,DWORD PTR [rbx+0x10] | |
64caf: c4 c1 7a 10 44 24 0c vmovss xmm0,DWORD PTR [r12+0xc] | |
64cb6: c5 e2 59 d8 vmulss xmm3,xmm3,xmm0 | |
64cba: c5 fa 10 65 fc vmovss xmm4,DWORD PTR [rbp-0x4] | |
64cbf: c5 da 58 e3 vaddss xmm4,xmm4,xmm3 | |
64cc3: c5 fa 11 65 fc vmovss DWORD PTR [rbp-0x4],xmm4 | |
64cc8: c5 fa 10 4b 14 vmovss xmm1,DWORD PTR [rbx+0x14] | |
64ccd: c4 c1 7a 10 54 24 10 vmovss xmm2,DWORD PTR [r12+0x10] | |
64cd4: c5 f2 59 ca vmulss xmm1,xmm1,xmm2 | |
64cd8: c5 fa 10 5d f8 vmovss xmm3,DWORD PTR [rbp-0x8] | |
64cdd: c5 e2 58 d9 vaddss xmm3,xmm3,xmm1 | |
64ce1: c5 fa 11 5d f8 vmovss DWORD PTR [rbp-0x8],xmm3 | |
64ce6: c5 fa 10 43 14 vmovss xmm0,DWORD PTR [rbx+0x14] | |
64ceb: c4 c1 7a 10 64 24 14 vmovss xmm4,DWORD PTR [r12+0x14] | |
64cf2: c5 fa 59 c4 vmulss xmm0,xmm0,xmm4 | |
64cf6: c5 fa 10 4d fc vmovss xmm1,DWORD PTR [rbp-0x4] | |
64cfb: c5 f2 58 c8 vaddss xmm1,xmm1,xmm0 | |
64cff: c5 fa 11 4d fc vmovss DWORD PTR [rbp-0x4],xmm1 | |
64d04: dd 45 f0 fld QWORD PTR [rbp-0x10] | |
64d07: dd 45 f8 fld QWORD PTR [rbp-0x8] | |
64d0a: dd 5d e0 fstp QWORD PTR [rbp-0x20] | |
64d0d: c5 fb 10 4d e0 vmovsd xmm1,QWORD PTR [rbp-0x20] | |
64d12: dd 5d e0 fstp QWORD PTR [rbp-0x20] | |
64d15: c5 fb 10 45 e0 vmovsd xmm0,QWORD PTR [rbp-0x20] | |
64d1a: 48 8b 5d d0 mov rbx,QWORD PTR [rbp-0x30] | |
64d1e: 4c 8b 65 d8 mov r12,QWORD PTR [rbp-0x28] | |
64d22: 48 8b e5 mov rsp,rbp | |
64d25: 5d pop rbp | |
64d26: c3 ret | |
... | |
0000000000064d28 <_D11matrix_void__T3MatTfVki2Vki2ZQp__T6__ctorTiZQkMFNaNbNcNiNfyiZSQCm__TQCcTfVki2Vki2ZQCq>: | |
64d28: 55 push rbp | |
64d29: 48 8b ec mov rbp,rsp | |
64d2c: 48 83 ec 10 sub rsp,0x10 | |
64d30: 48 89 7d f0 mov QWORD PTR [rbp-0x10],rdi | |
64d34: 89 75 f8 mov DWORD PTR [rbp-0x8],esi | |
64d37: be 04 00 00 00 mov esi,0x4 | |
64d3c: 8b 45 f8 mov eax,DWORD PTR [rbp-0x8] | |
64d3f: f3 0f 2a c0 cvtsi2ss xmm0,eax | |
64d43: 48 8b 7d f0 mov rdi,QWORD PTR [rbp-0x10] | |
64d47: e8 34 09 02 00 call 85680 <_memsetFloat> | |
64d4c: 48 8b 45 f0 mov rax,QWORD PTR [rbp-0x10] | |
64d50: 48 8b e5 mov rsp,rbp | |
64d53: 5d pop rbp | |
64d54: c3 ret | |
64d55: 00 00 add BYTE PTR [rax],al | |
... |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment