daily update on 20230927 by nitload youmu, all polygon4 display available, optimizing on C/C# interoperation
This commit is contained in:
@@ -1,293 +0,0 @@
|
||||
; Listing generated by Microsoft (R) Optimizing Compiler Version 19.36.32537.0
|
||||
|
||||
include listing.inc
|
||||
|
||||
INCLUDELIB MSVCRT
|
||||
INCLUDELIB OLDNAMES
|
||||
|
||||
_DATA SEGMENT
|
||||
COMM pack:BYTE:038H
|
||||
_DATA ENDS
|
||||
msvcjmc SEGMENT
|
||||
__0998321F_concurrencysal@h DB 01H
|
||||
__E9680BEC_sal@h DB 01H
|
||||
__75F3BDA1_vadefs@h DB 01H
|
||||
__FF647DA5_vcruntime@h DB 01H
|
||||
__0DFED3C7_stdint@h DB 01H
|
||||
__018B5678_khrplatform@h DB 01H
|
||||
__79FC18F0_glad@h DB 01H
|
||||
__04C75F1C_corecrt@h DB 01H
|
||||
__0C5B3DCC_stddef@h DB 01H
|
||||
__986CAB3E_glfw3@h DB 01H
|
||||
__9BEA891A_mmintrin@h DB 01H
|
||||
__494656A0_corecrt_malloc@h DB 01H
|
||||
__E5D9469F_malloc@h DB 01H
|
||||
__7FB111F1_xmmintrin@h DB 01H
|
||||
__1AD3983D_emmintrin@h DB 01H
|
||||
__C572F0B4_pmmintrin@h DB 01H
|
||||
__75AB8336_tmmintrin@h DB 01H
|
||||
__5C9096B5_smmintrin@h DB 01H
|
||||
__39F21F79_nmmintrin@h DB 01H
|
||||
__EC49E537_wmmintrin@h DB 01H
|
||||
__27DDA830_zmmintrin@h DB 01H
|
||||
__10C90AFA_immintrin@h DB 01H
|
||||
__C508448F_StgSharpGraphic@h DB 01H
|
||||
__694534F6_mat2@c DB 01H
|
||||
msvcjmc ENDS
|
||||
PUBLIC add_mat2
|
||||
PUBLIC sub_mat2
|
||||
PUBLIC transmpose2to4
|
||||
PUBLIC deinit_mat2
|
||||
PUBLIC __JustMyCode_Default
|
||||
EXTRN __imp__aligned_free:PROC
|
||||
EXTRN __imp__aligned_malloc:PROC
|
||||
EXTRN __CheckForDebuggerJustMyCode:PROC
|
||||
EXTRN defaultVecPtr:QWORD
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$add_mat2 DD imagerel $LN7
|
||||
DD imagerel $LN7+79
|
||||
DD imagerel $unwind$add_mat2
|
||||
pdata ENDS
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$sub_mat2 DD imagerel $LN7
|
||||
DD imagerel $LN7+79
|
||||
DD imagerel $unwind$sub_mat2
|
||||
pdata ENDS
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$transmpose2to4 DD imagerel $LN4
|
||||
DD imagerel $LN4+122
|
||||
DD imagerel $unwind$transmpose2to4
|
||||
pdata ENDS
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$deinit_mat2 DD imagerel $LN4
|
||||
DD imagerel $LN4+36
|
||||
DD imagerel $unwind$deinit_mat2
|
||||
pdata ENDS
|
||||
; COMDAT xdata
|
||||
xdata SEGMENT
|
||||
$unwind$deinit_mat2 DD 020601H
|
||||
DD 030023206H
|
||||
xdata ENDS
|
||||
; COMDAT xdata
|
||||
xdata SEGMENT
|
||||
$unwind$transmpose2to4 DD 040a01H
|
||||
DD 06340aH
|
||||
DD 07006320aH
|
||||
xdata ENDS
|
||||
; COMDAT xdata
|
||||
xdata SEGMENT
|
||||
$unwind$sub_mat2 DD 040a01H
|
||||
DD 06340aH
|
||||
DD 07006320aH
|
||||
xdata ENDS
|
||||
; COMDAT xdata
|
||||
xdata SEGMENT
|
||||
$unwind$add_mat2 DD 040a01H
|
||||
DD 06340aH
|
||||
DD 07006320aH
|
||||
xdata ENDS
|
||||
; Function compile flags: /Odt
|
||||
; COMDAT __JustMyCode_Default
|
||||
_TEXT SEGMENT
|
||||
__JustMyCode_Default PROC ; COMDAT
|
||||
00000 c2 00 00 ret 0
|
||||
__JustMyCode_Default ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Ogtpy
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgShqrpGraphic\mat2.c
|
||||
; COMDAT deinit_mat2
|
||||
_TEXT SEGMENT
|
||||
mat$ = 48
|
||||
deinit_mat2 PROC ; COMDAT
|
||||
|
||||
; 43 : {
|
||||
|
||||
$LN4:
|
||||
00000 40 53 push rbx
|
||||
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
|
||||
00006 48 8b d9 mov rbx, rcx
|
||||
00009 48 8d 0d 00 00
|
||||
00 00 lea rcx, OFFSET FLAT:__694534F6_mat2@c
|
||||
00010 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
||||
00015 48 8b cb mov rcx, rbx
|
||||
|
||||
; 44 : _aligned_free(mat);
|
||||
; 45 : }
|
||||
|
||||
00018 48 83 c4 20 add rsp, 32 ; 00000020H
|
||||
0001c 5b pop rbx
|
||||
0001d 48 ff 25 00 00
|
||||
00 00 rex_jmp QWORD PTR __imp__aligned_free
|
||||
deinit_mat2 ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Ogtpy
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgShqrpGraphic\mat2.c
|
||||
; COMDAT transmpose2to4
|
||||
_TEXT SEGMENT
|
||||
source$ = 48
|
||||
target$ = 56
|
||||
transmpose2to4 PROC ; COMDAT
|
||||
|
||||
; 32 : {
|
||||
|
||||
$LN4:
|
||||
00000 48 89 5c 24 08 mov QWORD PTR [rsp+8], rbx
|
||||
00005 57 push rdi
|
||||
00006 48 83 ec 20 sub rsp, 32 ; 00000020H
|
||||
0000a 48 8b d9 mov rbx, rcx
|
||||
0000d 48 8b fa mov rdi, rdx
|
||||
00010 48 8d 0d 00 00
|
||||
00 00 lea rcx, OFFSET FLAT:__694534F6_mat2@c
|
||||
00017 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
||||
0001c 0f 10 43 10 movups xmm0, XMMWORD PTR [rbx+16]
|
||||
00020 48 8b 05 00 00
|
||||
00 00 mov rax, QWORD PTR defaultVecPtr
|
||||
00027 0f 10 13 movups xmm2, XMMWORD PTR [rbx]
|
||||
0002a 48 8b 5c 24 30 mov rbx, QWORD PTR [rsp+48]
|
||||
0002f 0f 28 ca movaps xmm1, xmm2
|
||||
00032 0f c6 d0 ee shufps xmm2, xmm0, 238 ; 000000eeH
|
||||
00036 0f c6 c8 44 shufps xmm1, xmm0, 68 ; 00000044H
|
||||
0003a 0f 28 c1 movaps xmm0, xmm1
|
||||
0003d 0f c6 00 88 shufps xmm0, XMMWORD PTR [rax], 136 ; 00000088H
|
||||
00041 0f 11 07 movups XMMWORD PTR [rdi], xmm0
|
||||
00044 0f 28 c2 movaps xmm0, xmm2
|
||||
00047 48 8b 05 00 00
|
||||
00 00 mov rax, QWORD PTR defaultVecPtr
|
||||
0004e 0f c6 08 dd shufps xmm1, XMMWORD PTR [rax], 221 ; 000000ddH
|
||||
00052 0f 11 4f 10 movups XMMWORD PTR [rdi+16], xmm1
|
||||
00056 48 8b 05 00 00
|
||||
00 00 mov rax, QWORD PTR defaultVecPtr
|
||||
0005d 0f c6 00 88 shufps xmm0, XMMWORD PTR [rax], 136 ; 00000088H
|
||||
00061 0f 11 47 20 movups XMMWORD PTR [rdi+32], xmm0
|
||||
00065 48 8b 05 00 00
|
||||
00 00 mov rax, QWORD PTR defaultVecPtr
|
||||
0006c 0f c6 10 dd shufps xmm2, XMMWORD PTR [rax], 221 ; 000000ddH
|
||||
00070 0f 11 57 30 movups XMMWORD PTR [rdi+48], xmm2
|
||||
|
||||
; 33 : __m128 t0 = _mm_shuffle_ps(ALIGN(source->colum[0]), ALIGN(source->colum[1]), _MM_SHUFFLE(1, 0, 1, 0));
|
||||
; 34 : __m128 t1 = _mm_shuffle_ps(ALIGN(source->colum[0]), ALIGN(source->colum[1]), _MM_SHUFFLE(3, 2, 3, 2));
|
||||
; 35 :
|
||||
; 36 : target->colum[0] = _mm_shuffle_ps(t0, *defaultVecPtr, _MM_SHUFFLE(2, 0, 2, 0));
|
||||
; 37 : target->colum[1] = _mm_shuffle_ps(t0, *defaultVecPtr, _MM_SHUFFLE(3, 1, 3, 1));
|
||||
; 38 : target->colum[2] = _mm_shuffle_ps(t1, *defaultVecPtr, _MM_SHUFFLE(2, 0, 2, 0));
|
||||
; 39 : target->colum[3] = _mm_shuffle_ps(t1, *defaultVecPtr, _MM_SHUFFLE(3, 1, 3, 1));
|
||||
; 40 : }
|
||||
|
||||
00074 48 83 c4 20 add rsp, 32 ; 00000020H
|
||||
00078 5f pop rdi
|
||||
00079 c3 ret 0
|
||||
transmpose2to4 ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Ogtpy
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgShqrpGraphic\mat2.c
|
||||
; COMDAT sub_mat2
|
||||
_TEXT SEGMENT
|
||||
mat1$ = 48
|
||||
mat2$ = 56
|
||||
sub_mat2 PROC ; COMDAT
|
||||
|
||||
; 18 : {
|
||||
|
||||
$LN7:
|
||||
00000 48 89 5c 24 08 mov QWORD PTR [rsp+8], rbx
|
||||
00005 57 push rdi
|
||||
00006 48 83 ec 20 sub rsp, 32 ; 00000020H
|
||||
0000a 48 8b f9 mov rdi, rcx
|
||||
0000d 48 8b da mov rbx, rdx
|
||||
00010 48 8d 0d 00 00
|
||||
00 00 lea rcx, OFFSET FLAT:__694534F6_mat2@c
|
||||
00017 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
||||
0001c ba 10 00 00 00 mov edx, 16
|
||||
00021 8d 4a 10 lea ecx, QWORD PTR [rdx+16]
|
||||
00024 ff 15 00 00 00
|
||||
00 call QWORD PTR __imp__aligned_malloc
|
||||
0002a 48 85 c0 test rax, rax
|
||||
0002d 74 15 je SHORT $LN4@sub_mat2
|
||||
|
||||
; 19 : matrix2map* ret = _aligned_malloc(sizeof(matrix2map), 16);
|
||||
; 20 :
|
||||
; 21 : if (ret != 0)
|
||||
; 22 : {
|
||||
; 23 : ret->colum[0] = _mm_sub_ps(mat1->colum[0], mat2->colum[0]);
|
||||
|
||||
0002f 0f 10 07 movups xmm0, XMMWORD PTR [rdi]
|
||||
00032 0f 5c 03 subps xmm0, XMMWORD PTR [rbx]
|
||||
00035 0f 11 00 movups XMMWORD PTR [rax], xmm0
|
||||
|
||||
; 24 : ret->colum[1] = _mm_sub_ps(mat1->colum[1], mat2->colum[1]);
|
||||
|
||||
00038 0f 10 4f 10 movups xmm1, XMMWORD PTR [rdi+16]
|
||||
0003c 0f 5c 4b 10 subps xmm1, XMMWORD PTR [rbx+16]
|
||||
00040 0f 11 48 10 movups XMMWORD PTR [rax+16], xmm1
|
||||
$LN4@sub_mat2:
|
||||
|
||||
; 25 : }
|
||||
; 26 :
|
||||
; 27 : return ret;
|
||||
; 28 : }
|
||||
|
||||
00044 48 8b 5c 24 30 mov rbx, QWORD PTR [rsp+48]
|
||||
00049 48 83 c4 20 add rsp, 32 ; 00000020H
|
||||
0004d 5f pop rdi
|
||||
0004e c3 ret 0
|
||||
sub_mat2 ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Ogtpy
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgShqrpGraphic\mat2.c
|
||||
; COMDAT add_mat2
|
||||
_TEXT SEGMENT
|
||||
mat1$ = 48
|
||||
mat2$ = 56
|
||||
add_mat2 PROC ; COMDAT
|
||||
|
||||
; 5 : {
|
||||
|
||||
$LN7:
|
||||
00000 48 89 5c 24 08 mov QWORD PTR [rsp+8], rbx
|
||||
00005 57 push rdi
|
||||
00006 48 83 ec 20 sub rsp, 32 ; 00000020H
|
||||
0000a 48 8b f9 mov rdi, rcx
|
||||
0000d 48 8b da mov rbx, rdx
|
||||
00010 48 8d 0d 00 00
|
||||
00 00 lea rcx, OFFSET FLAT:__694534F6_mat2@c
|
||||
00017 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
||||
0001c ba 10 00 00 00 mov edx, 16
|
||||
00021 8d 4a 10 lea ecx, QWORD PTR [rdx+16]
|
||||
00024 ff 15 00 00 00
|
||||
00 call QWORD PTR __imp__aligned_malloc
|
||||
0002a 48 85 c0 test rax, rax
|
||||
0002d 74 15 je SHORT $LN4@add_mat2
|
||||
|
||||
; 6 : matrix2map* ret = _aligned_malloc(sizeof(matrix2map), 16);
|
||||
; 7 :
|
||||
; 8 : if (ret != 0)
|
||||
; 9 : {
|
||||
; 10 : ret->colum[0] = _mm_add_ps(mat1->colum[0], mat2->colum[0]);
|
||||
|
||||
0002f 0f 10 07 movups xmm0, XMMWORD PTR [rdi]
|
||||
00032 0f 58 03 addps xmm0, XMMWORD PTR [rbx]
|
||||
00035 0f 11 00 movups XMMWORD PTR [rax], xmm0
|
||||
|
||||
; 11 : ret->colum[1] = _mm_add_ps(mat1->colum[1], mat2->colum[1]);
|
||||
|
||||
00038 0f 10 4f 10 movups xmm1, XMMWORD PTR [rdi+16]
|
||||
0003c 0f 58 4b 10 addps xmm1, XMMWORD PTR [rbx+16]
|
||||
00040 0f 11 48 10 movups XMMWORD PTR [rax+16], xmm1
|
||||
$LN4@add_mat2:
|
||||
|
||||
; 12 : }
|
||||
; 13 :
|
||||
; 14 : return ret;
|
||||
; 15 : }
|
||||
|
||||
00044 48 8b 5c 24 30 mov rbx, QWORD PTR [rsp+48]
|
||||
00049 48 83 c4 20 add rsp, 32 ; 00000020H
|
||||
0004d 5f pop rdi
|
||||
0004e c3 ret 0
|
||||
add_mat2 ENDP
|
||||
_TEXT ENDS
|
||||
END
|
||||
Reference in New Issue
Block a user