daily update on 20231016 by nitload youmu, vao,vbo,ebo struct added

This commit is contained in:
Nitload
2023-10-17 01:22:30 +08:00
parent 6c3349f5a2
commit 614fabe26c
135 changed files with 28619 additions and 5432 deletions
@@ -0,0 +1,849 @@
; Listing generated by Microsoft (R) Optimizing Compiler Version 19.37.32824.0
include listing.inc
INCLUDELIB MSVCRT
INCLUDELIB OLDNAMES
_DATA SEGMENT
COMM report:QWORD
COMM infolog:QWORD:0200H
_DATA ENDS
msvcjmc SEGMENT
__0ED14FEE_winpackagefamily@h DB 01H
__F92EF742_winapifamily@h DB 01H
__22E515EB_sdkddkver@h DB 01H
__9C03CD75_concurrencysal@h DB 01H
__CA64BAF1_sal@h DB 01H
__95655E73_vadefs@h DB 01H
__1D560A45_vcruntime@h DB 01H
__F214EFBF_excpt@h DB 01H
__D9B78EDA_stdarg@h DB 01H
__29F49F40_specstrings_undef@h DB 01H
__D0F42932_specstrings_strict@h DB 01H
__F00405FD_sdv_driverspecs@h DB 01H
__173E09CA_driverspecs@h DB 01H
__9A452361_specstrings@h DB 01H
__1B0272D9_corecrt@h DB 01H
__74484FB3_corecrt_wctype@h DB 01H
__1EC467ED_ctype@h DB 01H
__98517906_kernelspecs@h DB 01H
__D3497022_basetsd@h DB 01H
__61CC25A1_errno@h DB 01H
__7061C667_vcruntime_string@h DB 01H
__E4C945B4_corecrt_memcpy_s@h DB 01H
__8EAFF484_corecrt_memory@h DB 01H
__6490AEC5_corecrt_wstring@h DB 01H
__E8295E1E_string@h DB 01H
__7FCB5136_guiddef@h DB 01H
__FF8A9E11_pshpack4@h DB 01H
__D5438902_poppack@h DB 01H
__FB07E2A3_pshpack2@h DB 01H
__F6906775_pshpack8@h DB 01H
__F9415CFA_pshpack1@h DB 01H
__E58C6F1C_apiset@h DB 01H
__A5C52262_ktmtypes@h DB 01H
__FBBA8F9D_winnt@h DB 01H
__A32D3D2C_minwindef@h DB 01H
__7D798299_windef@h DB 01H
__9AE108E9_apisetcconv@h DB 01H
__9CE53D2C_minwinbase@h DB 01H
__5D0AA210_apiquery2@h DB 01H
__4DD4E726_processenv@h DB 01H
__3575CC96_fileapi@h DB 01H
__8EA220E6_fileapifromapp@h DB 01H
__BF9B31FE_debugapi@h DB 01H
__C3AFE134_utilapiset@h DB 01H
__76F69E51_handleapi@h DB 01H
__7E63D784_errhandlingapi@h DB 01H
__FFA7003C_fibersapi@h DB 01H
__8971CECF_namedpipeapi@h DB 01H
__46C9D8A6_profileapi@h DB 01H
__98D4F0A3_heapapi@h DB 01H
__50EF2A88_ioapiset@h DB 01H
__92EA1464_synchapi@h DB 01H
__A53D8AED_interlockedapi@h DB 01H
__B506CAAF_processthreadsapi@h DB 01H
__FF735694_sysinfoapi@h DB 01H
__29589789_memoryapi@h DB 01H
__E9C7A663_enclaveapi@h DB 01H
__D035F9F7_threadpoollegacyapiset@h DB 01H
__C899130C_threadpoolapiset@h DB 01H
__E0441EE7_jobapi@h DB 01H
__CEF86838_jobapi2@h DB 01H
__35AC6B9A_wow64apiset@h DB 01H
__C8AE41A5_libloaderapi@h DB 01H
__CC9E232D_securitybaseapi@h DB 01H
__C9D0C9B8_namespaceapi@h DB 01H
__30FF9CAD_systemtopologyapi@h DB 01H
__4D358795_processtopologyapi@h DB 01H
__40446D10_securityappcontainer@h DB 01H
__3A952EDF_realtimeapiset@h DB 01H
__F4865F4B_winerror@h DB 01H
__53C1BD93_timezoneapi@h DB 01H
__1FFBEDBF_winbase@h DB 01H
__43D3FA34_wingdi@h DB 01H
__D24A7391_tvout@h DB 01H
__7713A6C8_winuser@h DB 01H
__0B345F71_datetimeapi@h DB 01H
__9AC6960C_winnls@h DB 01H
__973A40A8_stringapiset@h DB 01H
__CC46FEE2_wincontypes@h DB 01H
__97D70BE1_consoleapi@h DB 01H
__27EC5E18_consoleapi2@h DB 01H
__262E342F_consoleapi3@h DB 01H
__641DCD70_wincon@h DB 01H
__5A96C7A7_verrsrc@h DB 01H
__B69C6FF2_winver@h DB 01H
__7AEB8C37_reason@h DB 01H
__59F1A8A9_winreg@h DB 01H
__EE0E2B7F_wnnc@h DB 01H
__DCDB7054_winnetwk@h DB 01H
__81DDEDE3_stralign@h DB 01H
__2134D1B4_winsvc@h DB 01H
__11C07376_mcx@h DB 01H
__577CE3E7_ime_cmodes@h DB 01H
__1E72C31E_imm@h DB 01H
__E15BF856_windows@h DB 01H
__F7492337_framework@h DB 01H
__ED683015_stdint@h DB 01H
__018B5678_khrplatform@h DB 01H
__79FC18F0_glad@h DB 01H
__13F5961F_stddef@h DB 01H
__986CAB3E_glfw3@h DB 01H
__11E77DD3_mmintrin@h DB 01H
__45DED006_corecrt_malloc@h DB 01H
__FA77ED4C_malloc@h DB 01H
__9D836611_xmmintrin@h DB 01H
__F8E1EFDD_emmintrin@h DB 01H
__27408754_pmmintrin@h DB 01H
__9799F4D6_tmmintrin@h DB 01H
__BEA2E155_smmintrin@h DB 01H
__DBC06899_nmmintrin@h DB 01H
__0E7B92D7_wmmintrin@h DB 01H
__C5EFDFD0_zmmintrin@h DB 01H
__F2FB7D1A_immintrin@h DB 01H
__C508448F_StgSharpGraphic@h DB 01H
__44420885_corecrt_stdio_config@h DB 01H
__AB601D8D_corecrt_wstdio@h DB 01H
__C1EC35D3_stdio@h DB 01H
__6DC84844_mat4@c DB 01H
msvcjmc ENDS
PUBLIC transpose4to2
PUBLIC transpose4to4
PUBLIC det_mat4
PUBLIC deinit_mat4
PUBLIC transpose4to3
PUBLIC __JustMyCode_Default
PUBLIC __xmm@80000000800000008000000080000000
EXTRN __imp__aligned_free:PROC
EXTRN det_mat3_internal:PROC
EXTRN __CheckForDebuggerJustMyCode:PROC
EXTRN _fltused:DWORD
; COMDAT pdata
pdata SEGMENT
$pdata$transpose4to2 DD imagerel $LN3
DD imagerel $LN3+203
DD imagerel $unwind$transpose4to2
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$transpose4to4 DD imagerel $LN3
DD imagerel $LN3+404
DD imagerel $unwind$transpose4to4
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$det_mat4 DD imagerel $LN3
DD imagerel $LN3+541
DD imagerel $unwind$det_mat4
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$deinit_mat4 DD imagerel $LN3
DD imagerel $LN3+43
DD imagerel $unwind$deinit_mat4
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$transpose4to3 DD imagerel $LN3
DD imagerel $LN3+375
DD imagerel $unwind$transpose4to3
pdata ENDS
; COMDAT __xmm@80000000800000008000000080000000
CONST SEGMENT
__xmm@80000000800000008000000080000000 DB 00H, 00H, 00H, 080H, 00H, 00H, 00H
DB 080H, 00H, 00H, 00H, 080H, 00H, 00H, 00H, 080H
CONST ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$transpose4to3 DD 025041701H
DD 01122317H
DD 0500b0014H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$deinit_mat4 DD 025030f01H
DD 0b20a230fH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$det_mat4 DD 025041701H
DD 01122317H
DD 0500b0032H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$transpose4to4 DD 025041701H
DD 01122317H
DD 0500b0014H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$transpose4to2 DD 025031701H
DD 0f2122317H
DD 0500bH
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: /Odtp /ZI
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgShqrpGraphic\mat4.c
; COMDAT transpose4to3
_TEXT SEGMENT
t0$ = 0
t1$ = 16
t2$ = 32
t3$ = 48
source$ = 144
target$ = 152
transpose4to3 PROC ; COMDAT
; 32 : {
$LN3:
00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000a 55 push rbp
0000b 48 81 ec a0 00
00 00 sub rsp, 160 ; 000000a0H
00012 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00017 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6DC84844_mat4@c
0001e e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 33 : __m128 t0 = _mm_shuffle_ps(ALIGN(source->colum[0]), ALIGN(source->colum[1]), _MM_SHUFFLE(1, 0, 1, 0));
00023 b8 10 00 00 00 mov eax, 16
00028 48 6b c0 01 imul rax, rax, 1
0002c 48 8b 8d 90 00
00 00 mov rcx, QWORD PTR source$[rbp]
00033 48 03 c8 add rcx, rax
00036 48 8b c1 mov rax, rcx
00039 0f 10 00 movups xmm0, XMMWORD PTR [rax]
0003c b8 10 00 00 00 mov eax, 16
00041 48 6b c0 00 imul rax, rax, 0
00045 48 8b 8d 90 00
00 00 mov rcx, QWORD PTR source$[rbp]
0004c 48 03 c8 add rcx, rax
0004f 48 8b c1 mov rax, rcx
00052 0f 10 08 movups xmm1, XMMWORD PTR [rax]
00055 0f c6 c8 44 shufps xmm1, xmm0, 68 ; 00000044H
00059 0f 28 c1 movaps xmm0, xmm1
0005c 0f 29 45 00 movaps XMMWORD PTR t0$[rbp], xmm0
; 34 : __m128 t1 = _mm_shuffle_ps(ALIGN(source->colum[0]), ALIGN(source->colum[1]), _MM_SHUFFLE(3, 2, 3, 2));
00060 b8 10 00 00 00 mov eax, 16
00065 48 6b c0 01 imul rax, rax, 1
00069 48 8b 8d 90 00
00 00 mov rcx, QWORD PTR source$[rbp]
00070 48 03 c8 add rcx, rax
00073 48 8b c1 mov rax, rcx
00076 0f 10 00 movups xmm0, XMMWORD PTR [rax]
00079 b8 10 00 00 00 mov eax, 16
0007e 48 6b c0 00 imul rax, rax, 0
00082 48 8b 8d 90 00
00 00 mov rcx, QWORD PTR source$[rbp]
00089 48 03 c8 add rcx, rax
0008c 48 8b c1 mov rax, rcx
0008f 0f 10 08 movups xmm1, XMMWORD PTR [rax]
00092 0f c6 c8 ee shufps xmm1, xmm0, 238 ; 000000eeH
00096 0f 28 c1 movaps xmm0, xmm1
00099 0f 29 45 10 movaps XMMWORD PTR t1$[rbp], xmm0
; 35 : __m128 t2 = _mm_shuffle_ps(ALIGN(source->colum[2]), ALIGN(source->colum[3]), _MM_SHUFFLE(1, 0, 1, 0));
0009d b8 10 00 00 00 mov eax, 16
000a2 48 6b c0 03 imul rax, rax, 3
000a6 48 8b 8d 90 00
00 00 mov rcx, QWORD PTR source$[rbp]
000ad 48 03 c8 add rcx, rax
000b0 48 8b c1 mov rax, rcx
000b3 0f 10 00 movups xmm0, XMMWORD PTR [rax]
000b6 b8 10 00 00 00 mov eax, 16
000bb 48 6b c0 02 imul rax, rax, 2
000bf 48 8b 8d 90 00
00 00 mov rcx, QWORD PTR source$[rbp]
000c6 48 03 c8 add rcx, rax
000c9 48 8b c1 mov rax, rcx
000cc 0f 10 08 movups xmm1, XMMWORD PTR [rax]
000cf 0f c6 c8 44 shufps xmm1, xmm0, 68 ; 00000044H
000d3 0f 28 c1 movaps xmm0, xmm1
000d6 0f 29 45 20 movaps XMMWORD PTR t2$[rbp], xmm0
; 36 : __m128 t3 = _mm_shuffle_ps(ALIGN(source->colum[2]), ALIGN(source->colum[3]), _MM_SHUFFLE(3, 2, 3, 2));
000da b8 10 00 00 00 mov eax, 16
000df 48 6b c0 03 imul rax, rax, 3
000e3 48 8b 8d 90 00
00 00 mov rcx, QWORD PTR source$[rbp]
000ea 48 03 c8 add rcx, rax
000ed 48 8b c1 mov rax, rcx
000f0 0f 10 00 movups xmm0, XMMWORD PTR [rax]
000f3 b8 10 00 00 00 mov eax, 16
000f8 48 6b c0 02 imul rax, rax, 2
000fc 48 8b 8d 90 00
00 00 mov rcx, QWORD PTR source$[rbp]
00103 48 03 c8 add rcx, rax
00106 48 8b c1 mov rax, rcx
00109 0f 10 08 movups xmm1, XMMWORD PTR [rax]
0010c 0f c6 c8 ee shufps xmm1, xmm0, 238 ; 000000eeH
00110 0f 28 c1 movaps xmm0, xmm1
00113 0f 29 45 30 movaps XMMWORD PTR t3$[rbp], xmm0
; 37 :
; 38 : target->colum[0] = _mm_shuffle_ps(t0, t2, _MM_SHUFFLE(2, 0, 2, 0));
00117 0f 28 45 00 movaps xmm0, XMMWORD PTR t0$[rbp]
0011b 0f c6 45 20 88 shufps xmm0, XMMWORD PTR t2$[rbp], 136 ; 00000088H
00120 b8 10 00 00 00 mov eax, 16
00125 48 6b c0 00 imul rax, rax, 0
00129 48 8b 8d 98 00
00 00 mov rcx, QWORD PTR target$[rbp]
00130 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
; 39 : target->colum[1] = _mm_shuffle_ps(t0, t2, _MM_SHUFFLE(3, 1, 3, 1));
00134 0f 28 45 00 movaps xmm0, XMMWORD PTR t0$[rbp]
00138 0f c6 45 20 dd shufps xmm0, XMMWORD PTR t2$[rbp], 221 ; 000000ddH
0013d b8 10 00 00 00 mov eax, 16
00142 48 6b c0 01 imul rax, rax, 1
00146 48 8b 8d 98 00
00 00 mov rcx, QWORD PTR target$[rbp]
0014d 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
; 40 : target->colum[2] = _mm_shuffle_ps(t1, t3, _MM_SHUFFLE(2, 0, 2, 0));
00151 0f 28 45 10 movaps xmm0, XMMWORD PTR t1$[rbp]
00155 0f c6 45 30 88 shufps xmm0, XMMWORD PTR t3$[rbp], 136 ; 00000088H
0015a b8 10 00 00 00 mov eax, 16
0015f 48 6b c0 02 imul rax, rax, 2
00163 48 8b 8d 98 00
00 00 mov rcx, QWORD PTR target$[rbp]
0016a 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
; 41 :
; 42 : }
0016e 48 8d a5 80 00
00 00 lea rsp, QWORD PTR [rbp+128]
00175 5d pop rbp
00176 c3 ret 0
transpose4to3 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgShqrpGraphic\mat4.c
; COMDAT deinit_mat4
_TEXT SEGMENT
matPtr$ = 80
deinit_mat4 PROC ; COMDAT
; 67 : {
$LN3:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 48 83 ec 60 sub rsp, 96 ; 00000060H
0000a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
0000f 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6DC84844_mat4@c
00016 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 68 : _aligned_free(matPtr);
0001b 48 8b 4d 50 mov rcx, QWORD PTR matPtr$[rbp]
0001f ff 15 00 00 00
00 call QWORD PTR __imp__aligned_free
; 69 : }
00025 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
00029 5d pop rbp
0002a c3 ret 0
deinit_mat4 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgShqrpGraphic\mat4.c
; COMDAT det_mat4
_TEXT SEGMENT
mc0$ = 0
mc1$ = 16
mc2$ = 32
mc3$ = 48
cogeneration$ = 64
retvec$ = 80
$T1 = 160
$T2 = 176
$T3 = 192
$T4 = 208
$T5 = 224
$T6 = 240
$T7 = 256
$T8 = 272
$T9 = 288
$T10 = 304
$T11 = 320
$T12 = 336
tv85 = 352
tv90 = 356
tv95 = 360
matPtr$ = 384
transpose$ = 392
det_mat4 PROC ; COMDAT
; 47 : {
$LN3:
00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000a 55 push rbp
0000b 48 81 ec 90 01
00 00 sub rsp, 400 ; 00000190H
00012 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00017 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6DC84844_mat4@c
0001e e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 48 : __m128 mc0 = ALIGN(matPtr->colum[0]);
00023 b8 10 00 00 00 mov eax, 16
00028 48 6b c0 00 imul rax, rax, 0
0002c 48 8b 8d 80 01
00 00 mov rcx, QWORD PTR matPtr$[rbp]
00033 48 03 c8 add rcx, rax
00036 48 8b c1 mov rax, rcx
00039 0f 10 00 movups xmm0, XMMWORD PTR [rax]
0003c 0f 29 45 00 movaps XMMWORD PTR mc0$[rbp], xmm0
; 49 : __m128 mc1 = ALIGN(matPtr->colum[1]);
00040 b8 10 00 00 00 mov eax, 16
00045 48 6b c0 01 imul rax, rax, 1
00049 48 8b 8d 80 01
00 00 mov rcx, QWORD PTR matPtr$[rbp]
00050 48 03 c8 add rcx, rax
00053 48 8b c1 mov rax, rcx
00056 0f 10 00 movups xmm0, XMMWORD PTR [rax]
00059 0f 29 45 10 movaps XMMWORD PTR mc1$[rbp], xmm0
; 50 : __m128 mc2 = ALIGN(matPtr->colum[2]);
0005d b8 10 00 00 00 mov eax, 16
00062 48 6b c0 02 imul rax, rax, 2
00066 48 8b 8d 80 01
00 00 mov rcx, QWORD PTR matPtr$[rbp]
0006d 48 03 c8 add rcx, rax
00070 48 8b c1 mov rax, rcx
00073 0f 10 00 movups xmm0, XMMWORD PTR [rax]
00076 0f 29 45 20 movaps XMMWORD PTR mc2$[rbp], xmm0
; 51 : __m128 mc3 = ALIGN(matPtr->colum[3]);
0007a b8 10 00 00 00 mov eax, 16
0007f 48 6b c0 03 imul rax, rax, 3
00083 48 8b 8d 80 01
00 00 mov rcx, QWORD PTR matPtr$[rbp]
0008a 48 03 c8 add rcx, rax
0008d 48 8b c1 mov rax, rcx
00090 0f 10 00 movups xmm0, XMMWORD PTR [rax]
00093 0f 29 45 30 movaps XMMWORD PTR mc3$[rbp], xmm0
; 52 :
; 53 : __m128 cogeneration = _mm_set_ps(
00097 0f 28 45 30 movaps xmm0, XMMWORD PTR mc3$[rbp]
0009b 0f 29 85 c0 00
00 00 movaps XMMWORD PTR $T3[rbp], xmm0
000a2 0f 28 45 20 movaps xmm0, XMMWORD PTR mc2$[rbp]
000a6 0f 29 85 b0 00
00 00 movaps XMMWORD PTR $T2[rbp], xmm0
000ad 0f 28 45 10 movaps xmm0, XMMWORD PTR mc1$[rbp]
000b1 0f 29 85 a0 00
00 00 movaps XMMWORD PTR $T1[rbp], xmm0
000b8 4c 8d 85 c0 00
00 00 lea r8, QWORD PTR $T3[rbp]
000bf 48 8d 95 b0 00
00 00 lea rdx, QWORD PTR $T2[rbp]
000c6 48 8d 8d a0 00
00 00 lea rcx, QWORD PTR $T1[rbp]
000cd e8 00 00 00 00 call det_mat3_internal
000d2 f3 0f 11 85 60
01 00 00 movss DWORD PTR tv85[rbp], xmm0
000da 0f 28 4d 30 movaps xmm1, XMMWORD PTR mc3$[rbp]
000de 0f 29 8d f0 00
00 00 movaps XMMWORD PTR $T6[rbp], xmm1
000e5 0f 28 4d 20 movaps xmm1, XMMWORD PTR mc2$[rbp]
000e9 0f 29 8d e0 00
00 00 movaps XMMWORD PTR $T5[rbp], xmm1
000f0 0f 28 4d 00 movaps xmm1, XMMWORD PTR mc0$[rbp]
000f4 0f 29 8d d0 00
00 00 movaps XMMWORD PTR $T4[rbp], xmm1
000fb 4c 8d 85 f0 00
00 00 lea r8, QWORD PTR $T6[rbp]
00102 48 8d 95 e0 00
00 00 lea rdx, QWORD PTR $T5[rbp]
00109 48 8d 8d d0 00
00 00 lea rcx, QWORD PTR $T4[rbp]
00110 e8 00 00 00 00 call det_mat3_internal
00115 f3 0f 11 85 64
01 00 00 movss DWORD PTR tv90[rbp], xmm0
0011d 0f 28 4d 30 movaps xmm1, XMMWORD PTR mc3$[rbp]
00121 0f 29 8d 20 01
00 00 movaps XMMWORD PTR $T9[rbp], xmm1
00128 0f 28 4d 10 movaps xmm1, XMMWORD PTR mc1$[rbp]
0012c 0f 29 8d 10 01
00 00 movaps XMMWORD PTR $T8[rbp], xmm1
00133 0f 28 4d 00 movaps xmm1, XMMWORD PTR mc0$[rbp]
00137 0f 29 8d 00 01
00 00 movaps XMMWORD PTR $T7[rbp], xmm1
0013e 4c 8d 85 20 01
00 00 lea r8, QWORD PTR $T9[rbp]
00145 48 8d 95 10 01
00 00 lea rdx, QWORD PTR $T8[rbp]
0014c 48 8d 8d 00 01
00 00 lea rcx, QWORD PTR $T7[rbp]
00153 e8 00 00 00 00 call det_mat3_internal
00158 f3 0f 11 85 68
01 00 00 movss DWORD PTR tv95[rbp], xmm0
00160 0f 28 4d 20 movaps xmm1, XMMWORD PTR mc2$[rbp]
00164 0f 29 8d 50 01
00 00 movaps XMMWORD PTR $T12[rbp], xmm1
0016b 0f 28 4d 10 movaps xmm1, XMMWORD PTR mc1$[rbp]
0016f 0f 29 8d 40 01
00 00 movaps XMMWORD PTR $T11[rbp], xmm1
00176 0f 28 4d 00 movaps xmm1, XMMWORD PTR mc0$[rbp]
0017a 0f 29 8d 30 01
00 00 movaps XMMWORD PTR $T10[rbp], xmm1
00181 4c 8d 85 50 01
00 00 lea r8, QWORD PTR $T12[rbp]
00188 48 8d 95 40 01
00 00 lea rdx, QWORD PTR $T11[rbp]
0018f 48 8d 8d 30 01
00 00 lea rcx, QWORD PTR $T10[rbp]
00196 e8 00 00 00 00 call det_mat3_internal
0019b f3 0f 10 8d 68
01 00 00 movss xmm1, DWORD PTR tv95[rbp]
001a3 f3 0f 10 95 64
01 00 00 movss xmm2, DWORD PTR tv90[rbp]
001ab f3 0f 10 9d 60
01 00 00 movss xmm3, DWORD PTR tv85[rbp]
001b3 0f 14 c8 unpcklps xmm1, xmm0
001b6 0f 14 da unpcklps xmm3, xmm2
001b9 0f 28 c3 movaps xmm0, xmm3
001bc 0f 16 c1 movlhps xmm0, xmm1
001bf 0f 29 45 40 movaps XMMWORD PTR cogeneration$[rbp], xmm0
; 54 : det_mat3_internal(mc0, mc1, mc2),
; 55 : det_mat3_internal(mc0, mc1, mc3),
; 56 : det_mat3_internal(mc0, mc2, mc3),
; 57 : det_mat3_internal(mc1, mc2, mc3)
; 58 : );
; 59 : __m128 retvec = _mm_mul_ps(ALIGN(transpose->colum[3]),cogeneration);
001c3 b8 10 00 00 00 mov eax, 16
001c8 48 6b c0 03 imul rax, rax, 3
001cc 48 8b 8d 88 01
00 00 mov rcx, QWORD PTR transpose$[rbp]
001d3 48 03 c8 add rcx, rax
001d6 48 8b c1 mov rax, rcx
001d9 0f 10 00 movups xmm0, XMMWORD PTR [rax]
001dc 0f 59 45 40 mulps xmm0, XMMWORD PTR cogeneration$[rbp]
001e0 0f 29 45 50 movaps XMMWORD PTR retvec$[rbp], xmm0
; 60 : retvec = _mm_hsub_ps(retvec,retvec);
001e4 0f 28 45 50 movaps xmm0, XMMWORD PTR retvec$[rbp]
001e8 f2 0f 7d 45 50 hsubps xmm0, XMMWORD PTR retvec$[rbp]
001ed 0f 29 45 50 movaps XMMWORD PTR retvec$[rbp], xmm0
; 61 : retvec = _mm_hadd_ps(retvec,retvec);
001f1 0f 28 45 50 movaps xmm0, XMMWORD PTR retvec$[rbp]
001f5 f2 0f 7c 45 50 haddps xmm0, XMMWORD PTR retvec$[rbp]
001fa 0f 29 45 50 movaps XMMWORD PTR retvec$[rbp], xmm0
; 62 : return -retvec.m128_f32[0];
001fe b8 04 00 00 00 mov eax, 4
00203 48 6b c0 00 imul rax, rax, 0
00207 f3 0f 10 44 05
50 movss xmm0, DWORD PTR retvec$[rbp+rax]
0020d 0f 57 05 00 00
00 00 xorps xmm0, DWORD PTR __xmm@80000000800000008000000080000000
; 63 :
; 64 : }
00214 48 8d a5 70 01
00 00 lea rsp, QWORD PTR [rbp+368]
0021b 5d pop rbp
0021c c3 ret 0
det_mat4 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgShqrpGraphic\mat4.c
; COMDAT transpose4to4
_TEXT SEGMENT
t0$ = 0
t1$ = 16
t2$ = 32
t3$ = 48
source$ = 144
target$ = 152
transpose4to4 PROC ; COMDAT
; 18 : {
$LN3:
00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000a 55 push rbp
0000b 48 81 ec a0 00
00 00 sub rsp, 160 ; 000000a0H
00012 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00017 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6DC84844_mat4@c
0001e e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 19 : __m128 t0 = _mm_shuffle_ps(ALIGN(source->colum[0]), ALIGN(source->colum[1]), _MM_SHUFFLE(1, 0, 1, 0));
00023 b8 10 00 00 00 mov eax, 16
00028 48 6b c0 01 imul rax, rax, 1
0002c 48 8b 8d 90 00
00 00 mov rcx, QWORD PTR source$[rbp]
00033 48 03 c8 add rcx, rax
00036 48 8b c1 mov rax, rcx
00039 0f 10 00 movups xmm0, XMMWORD PTR [rax]
0003c b8 10 00 00 00 mov eax, 16
00041 48 6b c0 00 imul rax, rax, 0
00045 48 8b 8d 90 00
00 00 mov rcx, QWORD PTR source$[rbp]
0004c 48 03 c8 add rcx, rax
0004f 48 8b c1 mov rax, rcx
00052 0f 10 08 movups xmm1, XMMWORD PTR [rax]
00055 0f c6 c8 44 shufps xmm1, xmm0, 68 ; 00000044H
00059 0f 28 c1 movaps xmm0, xmm1
0005c 0f 29 45 00 movaps XMMWORD PTR t0$[rbp], xmm0
; 20 : __m128 t1 = _mm_shuffle_ps(ALIGN(source->colum[0]), ALIGN(source->colum[1]), _MM_SHUFFLE(3, 2, 3, 2));
00060 b8 10 00 00 00 mov eax, 16
00065 48 6b c0 01 imul rax, rax, 1
00069 48 8b 8d 90 00
00 00 mov rcx, QWORD PTR source$[rbp]
00070 48 03 c8 add rcx, rax
00073 48 8b c1 mov rax, rcx
00076 0f 10 00 movups xmm0, XMMWORD PTR [rax]
00079 b8 10 00 00 00 mov eax, 16
0007e 48 6b c0 00 imul rax, rax, 0
00082 48 8b 8d 90 00
00 00 mov rcx, QWORD PTR source$[rbp]
00089 48 03 c8 add rcx, rax
0008c 48 8b c1 mov rax, rcx
0008f 0f 10 08 movups xmm1, XMMWORD PTR [rax]
00092 0f c6 c8 ee shufps xmm1, xmm0, 238 ; 000000eeH
00096 0f 28 c1 movaps xmm0, xmm1
00099 0f 29 45 10 movaps XMMWORD PTR t1$[rbp], xmm0
; 21 : __m128 t2 = _mm_shuffle_ps(ALIGN(source->colum[2]), ALIGN(source->colum[3]), _MM_SHUFFLE(1, 0, 1, 0));
0009d b8 10 00 00 00 mov eax, 16
000a2 48 6b c0 03 imul rax, rax, 3
000a6 48 8b 8d 90 00
00 00 mov rcx, QWORD PTR source$[rbp]
000ad 48 03 c8 add rcx, rax
000b0 48 8b c1 mov rax, rcx
000b3 0f 10 00 movups xmm0, XMMWORD PTR [rax]
000b6 b8 10 00 00 00 mov eax, 16
000bb 48 6b c0 02 imul rax, rax, 2
000bf 48 8b 8d 90 00
00 00 mov rcx, QWORD PTR source$[rbp]
000c6 48 03 c8 add rcx, rax
000c9 48 8b c1 mov rax, rcx
000cc 0f 10 08 movups xmm1, XMMWORD PTR [rax]
000cf 0f c6 c8 44 shufps xmm1, xmm0, 68 ; 00000044H
000d3 0f 28 c1 movaps xmm0, xmm1
000d6 0f 29 45 20 movaps XMMWORD PTR t2$[rbp], xmm0
; 22 : __m128 t3 = _mm_shuffle_ps(ALIGN(source->colum[2]), ALIGN(source->colum[3]), _MM_SHUFFLE(3, 2, 3, 2));
000da b8 10 00 00 00 mov eax, 16
000df 48 6b c0 03 imul rax, rax, 3
000e3 48 8b 8d 90 00
00 00 mov rcx, QWORD PTR source$[rbp]
000ea 48 03 c8 add rcx, rax
000ed 48 8b c1 mov rax, rcx
000f0 0f 10 00 movups xmm0, XMMWORD PTR [rax]
000f3 b8 10 00 00 00 mov eax, 16
000f8 48 6b c0 02 imul rax, rax, 2
000fc 48 8b 8d 90 00
00 00 mov rcx, QWORD PTR source$[rbp]
00103 48 03 c8 add rcx, rax
00106 48 8b c1 mov rax, rcx
00109 0f 10 08 movups xmm1, XMMWORD PTR [rax]
0010c 0f c6 c8 ee shufps xmm1, xmm0, 238 ; 000000eeH
00110 0f 28 c1 movaps xmm0, xmm1
00113 0f 29 45 30 movaps XMMWORD PTR t3$[rbp], xmm0
; 23 :
; 24 : target->colum[0] = _mm_shuffle_ps(t0, t2, _MM_SHUFFLE(2, 0, 2, 0));
00117 0f 28 45 00 movaps xmm0, XMMWORD PTR t0$[rbp]
0011b 0f c6 45 20 88 shufps xmm0, XMMWORD PTR t2$[rbp], 136 ; 00000088H
00120 b8 10 00 00 00 mov eax, 16
00125 48 6b c0 00 imul rax, rax, 0
00129 48 8b 8d 98 00
00 00 mov rcx, QWORD PTR target$[rbp]
00130 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
; 25 : target->colum[1] = _mm_shuffle_ps(t0, t2, _MM_SHUFFLE(3, 1, 3, 1));
00134 0f 28 45 00 movaps xmm0, XMMWORD PTR t0$[rbp]
00138 0f c6 45 20 dd shufps xmm0, XMMWORD PTR t2$[rbp], 221 ; 000000ddH
0013d b8 10 00 00 00 mov eax, 16
00142 48 6b c0 01 imul rax, rax, 1
00146 48 8b 8d 98 00
00 00 mov rcx, QWORD PTR target$[rbp]
0014d 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
; 26 : target->colum[2] = _mm_shuffle_ps(t1, t3, _MM_SHUFFLE(2, 0, 2, 0));
00151 0f 28 45 10 movaps xmm0, XMMWORD PTR t1$[rbp]
00155 0f c6 45 30 88 shufps xmm0, XMMWORD PTR t3$[rbp], 136 ; 00000088H
0015a b8 10 00 00 00 mov eax, 16
0015f 48 6b c0 02 imul rax, rax, 2
00163 48 8b 8d 98 00
00 00 mov rcx, QWORD PTR target$[rbp]
0016a 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
; 27 : target->colum[3] = _mm_shuffle_ps(t1, t3, _MM_SHUFFLE(3, 1, 3, 1));
0016e 0f 28 45 10 movaps xmm0, XMMWORD PTR t1$[rbp]
00172 0f c6 45 30 dd shufps xmm0, XMMWORD PTR t3$[rbp], 221 ; 000000ddH
00177 b8 10 00 00 00 mov eax, 16
0017c 48 6b c0 03 imul rax, rax, 3
00180 48 8b 8d 98 00
00 00 mov rcx, QWORD PTR target$[rbp]
00187 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
; 28 :
; 29 : }
0018b 48 8d a5 80 00
00 00 lea rsp, QWORD PTR [rbp+128]
00192 5d pop rbp
00193 c3 ret 0
transpose4to4 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgShqrpGraphic\mat4.c
; COMDAT transpose4to2
_TEXT SEGMENT
t0$ = 0
t2$ = 16
source$ = 112
target$ = 120
transpose4to2 PROC ; COMDAT
; 9 : {
$LN3:
00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000a 55 push rbp
0000b 48 81 ec 80 00
00 00 sub rsp, 128 ; 00000080H
00012 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00017 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6DC84844_mat4@c
0001e e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 10 : __m128 t0 = _mm_shuffle_ps(ALIGN(source->colum[0]), ALIGN(source->colum[1]), _MM_SHUFFLE(1, 0, 1, 0));
00023 b8 10 00 00 00 mov eax, 16
00028 48 6b c0 01 imul rax, rax, 1
0002c 48 8b 4d 70 mov rcx, QWORD PTR source$[rbp]
00030 48 03 c8 add rcx, rax
00033 48 8b c1 mov rax, rcx
00036 0f 10 00 movups xmm0, XMMWORD PTR [rax]
00039 b8 10 00 00 00 mov eax, 16
0003e 48 6b c0 00 imul rax, rax, 0
00042 48 8b 4d 70 mov rcx, QWORD PTR source$[rbp]
00046 48 03 c8 add rcx, rax
00049 48 8b c1 mov rax, rcx
0004c 0f 10 08 movups xmm1, XMMWORD PTR [rax]
0004f 0f c6 c8 44 shufps xmm1, xmm0, 68 ; 00000044H
00053 0f 28 c1 movaps xmm0, xmm1
00056 0f 29 45 00 movaps XMMWORD PTR t0$[rbp], xmm0
; 11 : __m128 t2 = _mm_shuffle_ps(ALIGN(source->colum[2]), ALIGN(source->colum[3]), _MM_SHUFFLE(1, 0, 1, 0));
0005a b8 10 00 00 00 mov eax, 16
0005f 48 6b c0 03 imul rax, rax, 3
00063 48 8b 4d 70 mov rcx, QWORD PTR source$[rbp]
00067 48 03 c8 add rcx, rax
0006a 48 8b c1 mov rax, rcx
0006d 0f 10 00 movups xmm0, XMMWORD PTR [rax]
00070 b8 10 00 00 00 mov eax, 16
00075 48 6b c0 02 imul rax, rax, 2
00079 48 8b 4d 70 mov rcx, QWORD PTR source$[rbp]
0007d 48 03 c8 add rcx, rax
00080 48 8b c1 mov rax, rcx
00083 0f 10 08 movups xmm1, XMMWORD PTR [rax]
00086 0f c6 c8 44 shufps xmm1, xmm0, 68 ; 00000044H
0008a 0f 28 c1 movaps xmm0, xmm1
0008d 0f 29 45 10 movaps XMMWORD PTR t2$[rbp], xmm0
; 12 :
; 13 : target->colum[0] = _mm_shuffle_ps(t0, t2, _MM_SHUFFLE(2, 0, 2, 0));
00091 0f 28 45 00 movaps xmm0, XMMWORD PTR t0$[rbp]
00095 0f c6 45 10 88 shufps xmm0, XMMWORD PTR t2$[rbp], 136 ; 00000088H
0009a b8 10 00 00 00 mov eax, 16
0009f 48 6b c0 00 imul rax, rax, 0
000a3 48 8b 4d 78 mov rcx, QWORD PTR target$[rbp]
000a7 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
; 14 : target->colum[1] = _mm_shuffle_ps(t0, t2, _MM_SHUFFLE(3, 1, 3, 1));
000ab 0f 28 45 00 movaps xmm0, XMMWORD PTR t0$[rbp]
000af 0f c6 45 10 dd shufps xmm0, XMMWORD PTR t2$[rbp], 221 ; 000000ddH
000b4 b8 10 00 00 00 mov eax, 16
000b9 48 6b c0 01 imul rax, rax, 1
000bd 48 8b 4d 78 mov rcx, QWORD PTR target$[rbp]
000c1 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
; 15 : }
000c5 48 8d 65 60 lea rsp, QWORD PTR [rbp+96]
000c9 5d pop rbp
000ca c3 ret 0
transpose4to2 ENDP
_TEXT ENDS
END