daily update on 20230829 by nitload youmu

This commit is contained in:
Nitload
2023-08-29 22:29:47 +08:00
parent 8aac9fee87
commit 1fcbfb972b
125 changed files with 6505 additions and 2077 deletions
@@ -1,27 +1,32 @@
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgshqrpgraphic\x64\debug\vc143.pdb
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgshqrpgraphic\x64\debug\vc143.idb
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgshqrpgraphic\x64\debug\stgsharpgraphic.obj
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgshqrpgraphic\x64\debug\dllmain.obj
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgshqrpgraphic\x64\debug\glad.obj
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgshqrpgraphic\x64\debug\stgsharpgraphic.cod
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgshqrpgraphic\x64\debug\linear.obj
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgshqrpgraphic\x64\debug\linear.cod
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgshqrpgraphic\x64\debug\dllmain.obj
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgshqrpgraphic\x64\debug\dllmain.cod
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgshqrpgraphic\x64\debug\glad.obj
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgshqrpgraphic\x64\debug\glad.cod
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgshqrpgraphic\x64\debug\stgshqrpgraphic.ilk
d:\nitloadindustry\研究项目\1-flagship\huftdt cooperation\2023固火方案4\cfs\cadc_flight_simulator\x64\debug\stgshqrpgraphic.dll
d:\nitloadindustry\研究项目\1-flagship\huftdt cooperation\2023固火方案4\cfs\cadc_flight_simulator\x64\debug\stgshqrpgraphic.pdb
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpgraphic.dll
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgshqrpgraphic\x64\debug\mat4.obj
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgshqrpgraphic\x64\debug\mat4.cod
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgshqrpgraphic\x64\debug\mat3.obj
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgshqrpgraphic\x64\debug\mat3.cod
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgshqrpgraphic\x64\debug\mat2.obj
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgshqrpgraphic\x64\debug\mat2.cod
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgshqrpgraphic\x64\debug\stgsharpgraphic.ilk
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpgraphic.pdb
d:\nitloadindustry\研究项目\1-flagship\huftdt cooperation\2023固火方案4\cfs\cadc_flight_simulator\x64\debug\stgshqrpgraphic.lib
d:\nitloadindustry\研究项目\1-flagship\huftdt cooperation\2023固火方案4\cfs\cadc_flight_simulator\x64\debug\stgshqrpgraphic.exp
d:\nitloadindustry\研究项目\1-flagship\huftdt cooperation\2023固火方案4\cfs\cadc_flight_simulator\stgsharpgraphic.dll
d:\nitloadindustry\研究项目\1-flagship\huftdt cooperation\2023固火方案4\cfs\cadc_flight_simulator\stgsharpgraphic.pdb
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpgraphic.lib
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpgraphic.exp
d:\nitloadindustry\研究项目\1-flagship\huftdt cooperation\2023固火方案4\cfs\cadc_flight_simulator\stgsharpgraphic.lib
d:\nitloadindustry\研究项目\1-flagship\huftdt cooperation\2023固火方案4\cfs\cadc_flight_simulator\stgsharpgraphic.exp
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgshqrpgraphic\x64\debug\stgsharpgraphic.tlog\cl.command.1.tlog
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgshqrpgraphic\x64\debug\stgsharpgraphic.tlog\cl.items.tlog
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgshqrpgraphic\x64\debug\stgsharpgraphic.tlog\cl.read.1.tlog
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgshqrpgraphic\x64\debug\stgsharpgraphic.tlog\cl.write.1.tlog
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgshqrpgraphic\x64\debug\stgsharpgraphic.tlog\link.command.1.tlog
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgshqrpgraphic\x64\debug\stgsharpgraphic.tlog\link.read.1.tlog
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgshqrpgraphic\x64\debug\stgsharpgraphic.tlog\link.write.1.tlog
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgshqrpgraphic\x64\debug\stgsharpgraphic.tlog\link.write.2u.tlog
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgshqrpgraphic\x64\debug\stgsharpgraphic.tlog\stgsharpgraphic.write.1u.tlog
@@ -6,7 +6,6 @@ INCLUDELIB MSVCRT
INCLUDELIB OLDNAMES
_DATA SEGMENT
COMM sseFunc:BYTE:018H
COMM pack:BYTE:038H
_DATA ENDS
msvcjmc SEGMENT
@@ -111,12 +110,19 @@ __BC6D10F5_ime_cmodes@h DB 01H
__1D49718C_imm@h DB 01H
__95734585_windows@h DB 01H
__F7492337_framework@h DB 01H
__C508448F_StgSharpGraphic@h DB 01H
__9BEA891A_mmintrin@h DB 01H
__494656A0_corecrt_malloc@h DB 01H
__E5D9469F_malloc@h DB 01H
__7FB111F1_xmmintrin@h DB 01H
__203A43BB_SSGinternal@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
__52DA9D07_StgSharpGraphic@c DB 01H
msvcjmc ENDS
PUBLIC loadGLApi
@@ -2,7 +2,7 @@
<Project>
<ProjectOutputs>
<ProjectOutput>
<FullPath>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpGraphic.dll</FullPath>
<FullPath>D:\NitloadIndustry\研究项目\1-Flagship\HUFTDT Cooperation\2023固火方案4\CFS\CADC_flight_simulator\StgSharpGraphic.dll</FullPath>
</ProjectOutput>
</ProjectOutputs>
<ContentFiles />
@@ -1,4 +1,7 @@
D:\Programmer\GLenv\glad.c;D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgShqrpGraphic\x64\Debug\glad.obj
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgShqrpGraphic\dllmain.c;D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgShqrpGraphic\x64\Debug\dllmain.obj
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgShqrpGraphic\linear.c;D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgShqrpGraphic\x64\Debug\linear.obj
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgShqrpGraphic\mat2.c;D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgShqrpGraphic\x64\Debug\mat2.obj
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgShqrpGraphic\mat3.c;D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgShqrpGraphic\x64\Debug\mat3.obj
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgShqrpGraphic\mat4.c;D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgShqrpGraphic\x64\Debug\mat4.obj
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgShqrpGraphic\StgSharpGraphic.c;D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgShqrpGraphic\x64\Debug\StgSharpGraphic.obj
@@ -1,2 +1,2 @@
PlatformToolSet=v143:VCToolArchitecture=Native64Bit:VCToolsVersion=14.36.32532:TargetPlatformVersion=10.0.22000.0:
Debug|x64|D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\|
Debug|x64|D:\NitloadIndustry\研究项目\1-Flagship\HUFTDT Cooperation\2023固火方案4\CFS\CADC_flight_simulator\|
File diff suppressed because it is too large Load Diff
+66 -24
View File
@@ -5,8 +5,11 @@ include listing.inc
INCLUDELIB MSVCRT
INCLUDELIB OLDNAMES
PUBLIC defaultVecPtr
_BSS SEGMENT
defaultVecPtr DQ 01H DUP (?)
_BSS ENDS
_DATA SEGMENT
COMM sseFunc:BYTE:018H
COMM pack:BYTE:038H
_DATA ENDS
msvcjmc SEGMENT
@@ -111,27 +114,35 @@ __018B5678_khrplatform@h DB 01H
__79FC18F0_glad@h DB 01H
__0C5B3DCC_stddef@h DB 01H
__986CAB3E_glfw3@h DB 01H
__C508448F_StgSharpGraphic@h DB 01H
__9BEA891A_mmintrin@h DB 01H
__494656A0_corecrt_malloc@h DB 01H
__E5D9469F_malloc@h DB 01H
__7FB111F1_xmmintrin@h DB 01H
__203A43BB_SSGinternal@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
__BA7172FA_dllmain@c DB 01H
msvcjmc ENDS
PUBLIC DllMain
PUBLIC __JustMyCode_Default
EXTRN __imp__aligned_malloc:PROC
EXTRN __CheckForDebuggerJustMyCode:PROC
; COMDAT pdata
pdata SEGMENT
$pdata$DllMain DD imagerel $LN10
DD imagerel $LN10+26
$pdata$DllMain DD imagerel $LN24
DD imagerel $LN24+68
DD imagerel $unwind$DllMain
pdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$DllMain DD 010401H
DD 04204H
$unwind$DllMain DD 020601H
DD 030023206H
xdata ENDS
; Function compile flags: /Odt
; COMDAT __JustMyCode_Default
@@ -151,29 +162,60 @@ DllMain PROC ; COMDAT
; 17 : {
$LN10:
00000 48 83 ec 28 sub rsp, 40 ; 00000028H
00004 48 8d 0d 00 00
$LN24:
00000 40 53 push rbx
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
00006 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__BA7172FA_dllmain@c
0000b e8 00 00 00 00 call __CheckForDebuggerJustMyCode
00010 b8 01 00 00 00 mov eax, 1
0000d 8b da mov ebx, edx
0000f e8 00 00 00 00 call __CheckForDebuggerJustMyCode
00014 83 fb 01 cmp ebx, 1
00017 75 20 jne SHORT $LN20@DllMain
00019 0f 1f 80 00 00
00 00 npad 7
$LL6@DllMain:
; 18 : switch (ul_reason_for_call)
; 19 : {
; 20 : case DLL_PROCESS_ATTACH:
; 21 :
; 22 : case DLL_THREAD_ATTACH:
; 23 :
; 24 :
; 25 : case DLL_THREAD_DETACH:
; 26 : case DLL_PROCESS_DETACH:
; 27 : break;
; 28 : }
; 29 : return TRUE;
; 30 : }
; 21 : do
; 22 : {
; 23 : defaultVecPtr = _aligned_malloc(sizeof(__m128),16);
00015 48 83 c4 28 add rsp, 40 ; 00000028H
00019 c3 ret 0
00020 ba 10 00 00 00 mov edx, 16
00025 8b ca mov ecx, edx
00027 ff 15 00 00 00
00 call QWORD PTR __imp__aligned_malloc
0002d 48 89 05 00 00
00 00 mov QWORD PTR defaultVecPtr, rax
; 24 : } while (defaultVecPtr == NULL);
00034 48 85 c0 test rax, rax
00037 74 e7 je SHORT $LL6@DllMain
$LN20@DllMain:
; 25 :
; 26 :
; 27 : case DLL_THREAD_ATTACH:
; 28 :
; 29 :
; 30 : case DLL_THREAD_DETACH:
; 31 :
; 32 :
; 33 : case DLL_PROCESS_DETACH:
; 34 :
; 35 :
; 36 :
; 37 : break;
; 38 : }
; 39 : return TRUE;
; 40 : }
00039 b8 01 00 00 00 mov eax, 1
0003e 48 83 c4 20 add rsp, 32 ; 00000020H
00042 5b pop rbx
00043 c3 ret 0
DllMain ENDP
_TEXT ENDS
END
Binary file not shown.
Binary file not shown.
+326 -133
View File
@@ -6,7 +6,6 @@ INCLUDELIB MSVCRT
INCLUDELIB OLDNAMES
_DATA SEGMENT
COMM sseFunc:BYTE:018H
COMM pack:BYTE:038H
_DATA ENDS
msvcjmc SEGMENT
@@ -20,20 +19,27 @@ __79FC18F0_glad@h DB 01H
__04C75F1C_corecrt@h DB 01H
__0C5B3DCC_stddef@h DB 01H
__986CAB3E_glfw3@h DB 01H
__C508448F_StgSharpGraphic@h DB 01H
__9BEA891A_mmintrin@h DB 01H
__494656A0_corecrt_malloc@h DB 01H
__E5D9469F_malloc@h DB 01H
__7FB111F1_xmmintrin@h DB 01H
__203A43BB_SSGinternal@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
__C44F8F6B_corecrt_stdio_config@h DB 01H
__A7F89B2B_corecrt_wstdio@h DB 01H
__B5C48800_stdio@h DB 01H
__62BFBAF5_stdalign@h DB 01H
__1AD3983D_emmintrin@h DB 01H
__C572F0B4_pmmintrin@h DB 01H
__B5461FF6_linear@c DB 01H
msvcjmc ENDS
PUBLIC mulps_sum_internal
PUBLIC mulps_total_internal
PUBLIC load
PUBLIC load_cpy
PUBLIC addps
@@ -44,14 +50,26 @@ PUBLIC mulps_sum
PUBLIC divps_const
PUBLIC divps
PUBLIC sqrtss_const
PUBLIC set_m128ptr_default
PUBLIC deinitM128
PUBLIC load_matmap
PUBLIC __JustMyCode_Default
EXTRN __imp_free:PROC
EXTRN __imp__aligned_free:PROC
EXTRN __imp__aligned_malloc:PROC
EXTRN __CheckForDebuggerJustMyCode:PROC
EXTRN __GSHandlerCheck:PROC
EXTRN __security_check_cookie:PROC
EXTRN defaultVecPtr:QWORD
EXTRN __security_cookie:QWORD
EXTRN _fltused:DWORD
; COMDAT pdata
pdata SEGMENT
$pdata$mulps_sum_internal DD imagerel $LN4
DD imagerel $LN4+53
DD imagerel $unwind$mulps_sum_internal
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$load DD imagerel $LN7
DD imagerel $LN7+140
DD imagerel $unwind$load
@@ -112,10 +130,32 @@ $pdata$sqrtss_const DD imagerel $LN4
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$set_m128ptr_default DD imagerel $LN4
DD imagerel $LN4+28
DD imagerel $unwind$set_m128ptr_default
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$deinitM128 DD imagerel $LN4
DD imagerel $LN4+36
DD imagerel $unwind$deinitM128
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$load_matmap DD imagerel $LN7
DD imagerel $LN7+146
DD imagerel $unwind$load_matmap
pdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$load_matmap DD 082419H
DD 0e7415H
DD 0d6415H
DD 0c3415H
DD 0e0119215H
DD imagerel __GSHandlerCheck
DD 040H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$deinitM128 DD 020601H
@@ -123,6 +163,11 @@ $unwind$deinitM128 DD 020601H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$set_m128ptr_default DD 010401H
DD 04204H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$sqrtss_const DD 030901H
DD 026809H
DD 06204H
@@ -183,6 +228,12 @@ $unwind$load DD 092701H
DD 066809H
DD 0e204H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$mulps_sum_internal DD 040a01H
DD 06340aH
DD 07006320aH
xdata ENDS
; Function compile flags: /Odt
; COMDAT __JustMyCode_Default
_TEXT SEGMENT
@@ -192,12 +243,85 @@ __JustMyCode_Default ENDP
_TEXT ENDS
; Function compile flags: /Ogtpy
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgShqrpGraphic\linear.c
; COMDAT load_matmap
_TEXT SEGMENT
ptr$ = 32
__$ArrayPad$ = 64
c0$ = 96
c1$ = 104
c2$ = 112
c3$ = 120
load_matmap PROC ; COMDAT
; 182 : {
$LN7:
00000 48 89 5c 24 08 mov QWORD PTR [rsp+8], rbx
00005 48 89 74 24 10 mov QWORD PTR [rsp+16], rsi
0000a 48 89 7c 24 18 mov QWORD PTR [rsp+24], rdi
0000f 41 56 push r14
00011 48 83 ec 50 sub rsp, 80 ; 00000050H
00015 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
0001c 48 33 c4 xor rax, rsp
0001f 48 89 44 24 40 mov QWORD PTR __$ArrayPad$[rsp], rax
00024 48 8b d9 mov rbx, rcx
00027 4d 8b f1 mov r14, r9
0002a 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__B5461FF6_linear@c
00031 49 8b f0 mov rsi, r8
00034 48 8b fa mov rdi, rdx
00037 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
0003c ba 20 00 00 00 mov edx, 32 ; 00000020H
00041 8b ca mov ecx, edx
00043 ff 15 00 00 00
00 call QWORD PTR __imp__aligned_malloc
00049 48 89 5c 24 20 mov QWORD PTR ptr$[rsp], rbx
0004e 48 89 7c 24 28 mov QWORD PTR ptr$[rsp+8], rdi
00053 48 89 74 24 30 mov QWORD PTR ptr$[rsp+16], rsi
00058 4c 89 74 24 38 mov QWORD PTR ptr$[rsp+24], r14
0005d 48 85 c0 test rax, rax
00060 74 0d je SHORT $LN4@load_matma
; 183 : __m256i* retPtr = _aligned_malloc(sizeof(__m256i), sizeof(__m256i));
; 184 :
; 185 : uint64_t ptr[4] = {c0,c1,c2,c3 };
; 186 :
; 187 : if (NULL != retPtr)
; 188 : {
; 189 : *retPtr = _mm256_loadu_epi64(&ptr);
00062 c5 fe 6f 44 24
20 vmovdqu ymm0, YMMWORD PTR ptr$[rsp]
00068 c5 fe 7f 00 vmovdqu YMMWORD PTR [rax], ymm0
0006c c5 f8 77 vzeroupper
$LN4@load_matma:
; 190 : }
; 191 :
; 192 : return retPtr;
; 193 :
; 194 : }
0006f 48 8b 4c 24 40 mov rcx, QWORD PTR __$ArrayPad$[rsp]
00074 48 33 cc xor rcx, rsp
00077 e8 00 00 00 00 call __security_check_cookie
0007c 48 8b 5c 24 60 mov rbx, QWORD PTR [rsp+96]
00081 48 8b 74 24 68 mov rsi, QWORD PTR [rsp+104]
00086 48 8b 7c 24 70 mov rdi, QWORD PTR [rsp+112]
0008b 48 83 c4 50 add rsp, 80 ; 00000050H
0008f 41 5e pop r14
00091 c3 ret 0
load_matmap ENDP
_TEXT ENDS
; Function compile flags: /Ogtpy
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgShqrpGraphic\linear.c
; COMDAT deinitM128
_TEXT SEGMENT
ptr$ = 48
deinitM128 PROC ; COMDAT
; 162 : {
; 212 : {
$LN4:
00000 40 53 push rbx
@@ -208,23 +332,46 @@ $LN4:
00010 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
00015 48 8b cb mov rcx, rbx
; 163 : free(ptr);
; 164 : }
; 213 : _aligned_free(ptr);
; 214 : }
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_free
00 00 rex_jmp QWORD PTR __imp__aligned_free
deinitM128 ENDP
_TEXT ENDS
; Function compile flags: /Ogtpy
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgShqrpGraphic\linear.c
; COMDAT set_m128ptr_default
_TEXT SEGMENT
set_m128ptr_default PROC ; COMDAT
; 199 : {
$LN4:
00000 48 83 ec 28 sub rsp, 40 ; 00000028H
00004 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__B5461FF6_linear@c
0000b e8 00 00 00 00 call __CheckForDebuggerJustMyCode
00010 48 8b 05 00 00
00 00 mov rax, QWORD PTR defaultVecPtr
; 200 : return defaultVecPtr;
; 201 : }
00017 48 83 c4 28 add rsp, 40 ; 00000028H
0001b c3 ret 0
set_m128ptr_default ENDP
_TEXT ENDS
; Function compile flags: /Ogtpy
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgShqrpGraphic\linear.c
; COMDAT sqrtss_const
_TEXT SEGMENT
a$ = 64
sqrtss_const PROC ; COMDAT
; 147 : {
; 169 : {
$LN4:
00000 48 83 ec 38 sub rsp, 56 ; 00000038H
@@ -238,11 +385,10 @@ $LN4:
00021 0f 28 74 24 20 movaps xmm6, XMMWORD PTR [rsp+32]
00026 f3 0f 51 c0 sqrtss xmm0, xmm0
; 148 : __m128 ret = _mm_sqrt_ss(*(__m128*) & a);
; 149 :
; 150 : return ret.m128_f32[0];
; 151 :
; 152 : }
; 170 : __m128 ret = _mm_sqrt_ss(*(__m128*) & a);
; 171 :
; 172 : return ret.m128_f32[0];
; 173 : }
0002a 48 83 c4 38 add rsp, 56 ; 00000038H
0002e c3 ret 0
@@ -256,7 +402,7 @@ ptr1$ = 48
ptr2$ = 56
divps PROC ; COMDAT
; 132 : {
; 154 : {
$LN7:
00000 48 89 5c 24 08 mov QWORD PTR [rsp+8], rbx
@@ -274,23 +420,23 @@ $LN7:
00029 48 85 c0 test rax, rax
0002c 74 14 je SHORT $LN2@divps
; 133 : __m128* ret = _aligned_malloc(sizeof(__m128), 16);
; 134 :
; 135 : if (NULL != ret)
; 136 : {
; 137 : *ret = _mm_div_ps(*ptr1, *ptr2);
; 155 : __m128* ret = _aligned_malloc(sizeof(__m128), 16);
; 156 :
; 157 : if (NULL != ret)
; 158 : {
; 159 : *ret = _mm_div_ps(*ptr1, *ptr2);
0002e 0f 10 07 movups xmm0, XMMWORD PTR [rdi]
00031 0f 5e 03 divps xmm0, XMMWORD PTR [rbx]
00034 0f 11 00 movups XMMWORD PTR [rax], xmm0
; 138 : return ret;
; 139 : }
; 140 : else
; 141 : {
; 142 : return -1;
; 143 : }
; 144 : }
; 160 : return ret;
; 161 : }
; 162 : else
; 163 : {
; 164 : return -1;
; 165 : }
; 166 : }
00037 48 8b 5c 24 30 mov rbx, QWORD PTR [rsp+48]
0003c 48 83 c4 20 add rsp, 32 ; 00000020H
@@ -314,7 +460,7 @@ ptr$ = 80
value$ = 88
divps_const PROC ; COMDAT
; 113 : {
; 135 : {
$LN7:
00000 40 53 push rbx
@@ -334,28 +480,28 @@ $LN7:
00033 48 85 c0 test rax, rax
00036 74 17 je SHORT $LN2@divps_cons
; 114 :
; 115 : float c[4] = { value, value, value, value };
; 116 : __m128* ret = _aligned_malloc(sizeof(__m128), 16);
; 117 :
; 118 : __m128 valueVec = _mm_loadu_ps(&c);
; 119 :
; 120 : if (NULL != ret)
; 121 : {
; 122 : *ret = _mm_div_ps(*ptr, valueVec);
; 136 :
; 137 : float c[4] = { value, value, value, value };
; 138 : __m128* ret = _aligned_malloc(sizeof(__m128), 16);
; 139 :
; 140 : __m128 valueVec = _mm_loadu_ps(&c);
; 141 :
; 142 : if (NULL != ret)
; 143 : {
; 144 : *ret = _mm_div_ps(*ptr, valueVec);
00038 0f 10 0b movups xmm1, XMMWORD PTR [rbx]
0003b 0f 10 c6 movups xmm0, xmm6
0003e 0f 5e ce divps xmm1, xmm6
00041 0f 11 08 movups XMMWORD PTR [rax], xmm1
; 123 : return ret;
; 124 : }
; 125 : else
; 126 : {
; 127 : return -1;
; 128 : }
; 129 : }
; 145 : return ret;
; 146 : }
; 147 : else
; 148 : {
; 149 : return -1;
; 150 : }
; 151 : }
00044 0f 28 74 24 30 movaps xmm6, XMMWORD PTR [rsp+48]
00049 48 83 c4 40 add rsp, 64 ; 00000040H
@@ -378,7 +524,7 @@ ptr1$ = 48
ptr2$ = 56
mulps_sum PROC ; COMDAT
; 105 : {
; 114 : {
$LN4:
00000 48 89 5c 24 08 mov QWORD PTR [rsp+8], rbx
@@ -395,11 +541,11 @@ $LN4:
00027 f2 0f 7c c0 haddps xmm0, xmm0
0002b f2 0f 7c c0 haddps xmm0, xmm0
; 106 : __m128 ret = _mm_mul_ps(*ptr1,*ptr2);
; 107 : ret = _mm_hadd_ps(ret,ret);
; 108 : ret = _mm_hadd_ps(ret,ret);
; 109 : return *(float*)&ret;
; 110 : }
; 115 : __m128 ret = _mm_mul_ps(*ptr1,*ptr2);
; 116 : ret = _mm_hadd_ps(ret,ret);
; 117 : ret = _mm_hadd_ps(ret,ret);
; 118 : return *(float*)&ret;
; 119 : }
0002f 48 83 c4 20 add rsp, 32 ; 00000020H
00033 5f pop rdi
@@ -414,7 +560,7 @@ ptr1$ = 48
ptr2$ = 56
mulps PROC ; COMDAT
; 90 : {
; 99 : {
$LN7:
00000 48 89 5c 24 08 mov QWORD PTR [rsp+8], rbx
@@ -432,23 +578,23 @@ $LN7:
00029 48 85 c0 test rax, rax
0002c 74 14 je SHORT $LN2@mulps
; 91 : __m128* ret = _aligned_malloc(sizeof(__m128), 16);
; 92 :
; 93 : if (NULL != ret)
; 94 : {
; 95 : *ret = _mm_mul_ps(*ptr1, *ptr2);
; 100 : __m128* ret = _aligned_malloc(sizeof(__m128), 16);
; 101 :
; 102 : if (NULL != ret)
; 103 : {
; 104 : *ret = _mm_mul_ps(*ptr1, *ptr2);
0002e 0f 10 07 movups xmm0, XMMWORD PTR [rdi]
00031 0f 59 03 mulps xmm0, XMMWORD PTR [rbx]
00034 0f 11 00 movups XMMWORD PTR [rax], xmm0
; 96 : return ret;
; 97 : }
; 98 : else
; 99 : {
; 100 : return -1;
; 101 : }
; 102 : }
; 105 : return ret;
; 106 : }
; 107 : else
; 108 : {
; 109 : return -1;
; 110 : }
; 111 : }
00037 48 8b 5c 24 30 mov rbx, QWORD PTR [rsp+48]
0003c 48 83 c4 20 add rsp, 32 ; 00000020H
@@ -472,7 +618,7 @@ ptr$ = 80
value$ = 88
mulps_const PROC ; COMDAT
; 72 : {
; 81 : {
$LN7:
00000 40 53 push rbx
@@ -492,26 +638,26 @@ $LN7:
00033 48 85 c0 test rax, rax
00036 74 14 je SHORT $LN2@mulps_cons
; 73 : float c[4] = { value, value, value, value };
; 74 : __m128* ret = _aligned_malloc(sizeof(__m128),16);
; 75 :
; 76 : __m128 valueVec = _mm_loadu_ps(&c);
; 77 :
; 78 : if (NULL != ret)
; 79 : {
; 80 : *ret = _mm_mul_ps(*ptr,valueVec);
; 82 : float c[4] = { value, value, value, value };
; 83 : __m128* ret = _aligned_malloc(sizeof(__m128),16);
; 84 :
; 85 : __m128 valueVec = _mm_loadu_ps(&c);
; 86 :
; 87 : if (NULL != ret)
; 88 : {
; 89 : *ret = _mm_mul_ps(*ptr,valueVec);
00038 0f 10 c6 movups xmm0, xmm6
0003b 0f 59 03 mulps xmm0, XMMWORD PTR [rbx]
0003e 0f 11 00 movups XMMWORD PTR [rax], xmm0
; 81 : return ret;
; 82 : }
; 83 : else
; 84 : {
; 85 : return -1;
; 86 : }
; 87 : }
; 90 : return ret;
; 91 : }
; 92 : else
; 93 : {
; 94 : return -1;
; 95 : }
; 96 : }
00041 0f 28 74 24 30 movaps xmm6, XMMWORD PTR [rsp+48]
00046 48 83 c4 40 add rsp, 64 ; 00000040H
@@ -534,7 +680,7 @@ ptr1$ = 48
ptr2$ = 56
subps PROC ; COMDAT
; 57 : {
; 66 : {
$LN7:
00000 48 89 5c 24 08 mov QWORD PTR [rsp+8], rbx
@@ -552,23 +698,23 @@ $LN7:
0002a 48 85 c0 test rax, rax
0002d 74 14 je SHORT $LN2@subps
; 58 : __m128* ret = _aligned_malloc(sizeof(__m128*), 16);
; 59 :
; 60 : if (NULL != ret)
; 61 : {
; 62 : *ret = _mm_sub_ps(*ptr1, *ptr2);
; 67 : __m128* ret = _aligned_malloc(sizeof(__m128*), 16);
; 68 :
; 69 : if (NULL != ret)
; 70 : {
; 71 : *ret = _mm_sub_ps(*ptr1, *ptr2);
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
; 63 : return ret;
; 64 : }
; 65 : else
; 66 : {
; 67 : return -1;
; 68 : }
; 69 : }
; 72 : return ret;
; 73 : }
; 74 : else
; 75 : {
; 76 : return -1;
; 77 : }
; 78 : }
00038 48 8b 5c 24 30 mov rbx, QWORD PTR [rsp+48]
0003d 48 83 c4 20 add rsp, 32 ; 00000020H
@@ -591,7 +737,7 @@ ptr1$ = 48
ptr2$ = 56
addps PROC ; COMDAT
; 40 : {
; 49 : {
$LN7:
00000 48 89 5c 24 08 mov QWORD PTR [rsp+8], rbx
@@ -609,25 +755,25 @@ $LN7:
0002a 48 85 c0 test rax, rax
0002d 74 14 je SHORT $LN2@addps
; 41 :
; 42 : __m128* ret = _aligned_malloc(sizeof(__m128*),16);
; 43 :
; 44 : if (NULL != ret)
; 45 : {
; 46 : *ret = _mm_add_ps(*ptr1, *ptr2);
; 50 :
; 51 : __m128* ret = _aligned_malloc(sizeof(__m128*),16);
; 52 :
; 53 : if (NULL != ret)
; 54 : {
; 55 : *ret = _mm_add_ps(*ptr1, *ptr2);
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
; 47 : return ret;
; 48 : }
; 49 : else
; 50 : {
; 51 : return -1;
; 52 : }
; 53 :
; 54 : }
; 56 : return ret;
; 57 : }
; 58 : else
; 59 : {
; 60 : return (__m128*) - 1;
; 61 : }
; 62 :
; 63 : }
00038 48 8b 5c 24 30 mov rbx, QWORD PTR [rsp+48]
0003d 48 83 c4 20 add rsp, 32 ; 00000020H
@@ -649,7 +795,7 @@ _TEXT SEGMENT
ptr$ = 48
load_cpy PROC ; COMDAT
; 28 : {
; 37 : {
$LN7:
00000 40 53 push rbx
@@ -665,20 +811,20 @@ $LN7:
00023 48 85 c0 test rax, rax
00026 74 06 je SHORT $LN4@load_cpy
; 29 : __m128* ret = _aligned_malloc(sizeof(__m128*),16);
; 30 :
; 31 : if (NULL != ret)
; 32 : {
; 33 : *ret = *ptr;
; 38 : __m128* ret = _aligned_malloc(sizeof(__m128*),16);
; 39 :
; 40 : if (NULL != ret)
; 41 : {
; 42 : *ret = *ptr;
00028 0f 10 03 movups xmm0, XMMWORD PTR [rbx]
0002b 0f 11 00 movups XMMWORD PTR [rax], xmm0
$LN4@load_cpy:
; 34 : }
; 35 :
; 36 : return ret;
; 37 : }
; 43 : }
; 44 :
; 45 : return ret;
; 46 : }
0002e 48 83 c4 20 add rsp, 32 ; 00000020H
00032 5b pop rbx
@@ -696,7 +842,7 @@ z$ = 144
w$ = 152
load PROC ; COMDAT
; 12 : {
; 21 : {
$LN7:
00000 48 83 ec 78 sub rsp, 120 ; 00000078H
@@ -728,32 +874,32 @@ $LN7:
0005b 48 85 c0 test rax, rax
0005e 74 0a je SHORT $LN2@load
; 13 : float array[4] = {x,y,z,w};
; 14 : __m128* ptr = _aligned_malloc(sizeof(__m128),16);
; 15 :
; 16 : if (NULL != ptr)
; 17 : {
; 18 : *ptr = _mm_loadu_ps(&array);
; 22 : float array[4] = {x,y,z,w};
; 23 : __m128* ptr = _aligned_malloc(sizeof(__m128),16);
; 24 :
; 25 : if (NULL != ptr)
; 26 : {
; 27 : *ptr = _mm_loadu_ps(&array);
00060 0f 10 44 24 20 movups xmm0, XMMWORD PTR array$[rsp]
00065 0f 11 00 movups XMMWORD PTR [rax], xmm0
; 19 : return ptr;
; 28 : return ptr;
00068 eb 07 jmp SHORT $LN3@load
$LN2@load:
; 20 : }
; 21 : else
; 22 : {
; 23 : return -1;
; 29 : }
; 30 : else
; 31 : {
; 32 : return -1;
0006a 48 c7 c0 ff ff
ff ff mov rax, -1
$LN3@load:
; 24 : }
; 25 : }
; 33 : }
; 34 : }
00071 0f 28 74 24 60 movaps xmm6, XMMWORD PTR [rsp+96]
00076 0f 28 7c 24 50 movaps xmm7, XMMWORD PTR [rsp+80]
@@ -765,4 +911,51 @@ $LN3@load:
0008b c3 ret 0
load ENDP
_TEXT ENDS
; Function compile flags: /Ogtpy
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgShqrpGraphic\linear.c
; COMDAT mulps_total_internal
_TEXT SEGMENT
vec$ = 8
mulps_total_internal PROC ; COMDAT
00000 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__B5461FF6_linear@c
00007 e9 00 00 00 00 jmp __CheckForDebuggerJustMyCode
mulps_total_internal ENDP
_TEXT ENDS
; Function compile flags: /Ogtpy
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgShqrpGraphic\linear.c
; COMDAT mulps_sum_internal
_TEXT SEGMENT
left$ = 48
right$ = 56
mulps_sum_internal PROC ; COMDAT
; 122 : {
$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:__B5461FF6_linear@c
00017 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
0001c 0f 10 03 movups xmm0, XMMWORD PTR [rbx]
0001f 0f 59 07 mulps xmm0, XMMWORD PTR [rdi]
00022 48 8b 5c 24 30 mov rbx, QWORD PTR [rsp+48]
00027 f2 0f 7c c0 haddps xmm0, xmm0
0002b f2 0f 7c c0 haddps xmm0, xmm0
; 123 : __m128 ret = _mm_mul_ps(left, right);
; 124 : ret = _mm_hadd_ps(ret, ret);
; 125 : ret = _mm_hadd_ps(ret, ret);
; 126 : return *(float*)&ret;
; 127 : }
0002f 48 83 c4 20 add rsp, 32 ; 00000020H
00033 5f pop rdi
00034 c3 ret 0
mulps_sum_internal ENDP
_TEXT ENDS
END
Binary file not shown.
@@ -0,0 +1,293 @@
; 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
Binary file not shown.
@@ -0,0 +1,138 @@
; 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
__C44F8F6B_corecrt_stdio_config@h DB 01H
__A7F89B2B_corecrt_wstdio@h DB 01H
__B5C48800_stdio@h DB 01H
__68875EC1_mat3@c DB 01H
msvcjmc ENDS
PUBLIC det_mat3_internal
PUBLIC __JustMyCode_Default
EXTRN __CheckForDebuggerJustMyCode:PROC
EXTRN _fltused:DWORD
; COMDAT pdata
pdata SEGMENT
$pdata$det_mat3_internal DD imagerel $LN4
DD imagerel $LN4+109
DD imagerel $unwind$det_mat3_internal
pdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$det_mat3_internal DD 060f01H
DD 07640fH
DD 06340fH
DD 0700b320fH
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\mat3.c
; COMDAT det_mat3_internal
_TEXT SEGMENT
c0$ = 48
c1$ = 56
c2$ = 64
det_mat3_internal PROC ; COMDAT
; 5 : {
$LN4:
00000 48 89 5c 24 08 mov QWORD PTR [rsp+8], rbx
00005 48 89 74 24 10 mov QWORD PTR [rsp+16], rsi
0000a 57 push rdi
0000b 48 83 ec 20 sub rsp, 32 ; 00000020H
0000f 48 8b f9 mov rdi, rcx
00012 49 8b f0 mov rsi, r8
00015 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__68875EC1_mat3@c
0001c 48 8b da mov rbx, rdx
0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode
00024 0f 10 1b movups xmm3, XMMWORD PTR [rbx]
00027 0f 10 16 movups xmm2, XMMWORD PTR [rsi]
0002a 0f 28 e3 movaps xmm4, xmm3
0002d 48 8b 5c 24 30 mov rbx, QWORD PTR [rsp+48]
00032 0f 28 c2 movaps xmm0, xmm2
00035 48 8b 74 24 38 mov rsi, QWORD PTR [rsp+56]
0003a 0f c6 e3 c9 shufps xmm4, xmm3, 201 ; 000000c9H
0003e 0f 59 27 mulps xmm4, XMMWORD PTR [rdi]
00041 0f c6 c2 d2 shufps xmm0, xmm2, 210 ; 000000d2H
00045 0f c6 db d2 shufps xmm3, xmm3, 210 ; 000000d2H
00049 0f 59 1f mulps xmm3, XMMWORD PTR [rdi]
0004c 0f 59 e0 mulps xmm4, xmm0
0004f 0f c6 d2 c9 shufps xmm2, xmm2, 201 ; 000000c9H
00053 0f 59 da mulps xmm3, xmm2
00056 0f 5c e3 subps xmm4, xmm3
00059 0f 28 c4 movaps xmm0, xmm4
0005c f2 0f 7c c4 haddps xmm0, xmm4
00060 0f 58 c4 addps xmm0, xmm4
00063 0f c6 c0 aa shufps xmm0, xmm0, 170 ; 000000aaH
; 6 :
; 7 : //let adding row aligned
; 8 : __m128 addc1 = _mm_shuffle_ps(c1, c1, _MM_SHUFFLE(3, 0, 2, 1));
; 9 : __m128 addc2 = _mm_shuffle_ps(c2, c2, _MM_SHUFFLE(3, 1, 0, 2));
; 10 :
; 11 : //let sub row aligned
; 12 : __m128 subc1 = _mm_shuffle_ps(c1, c1, _MM_SHUFFLE(3, 1, 0, 2));
; 13 : __m128 subc2 = _mm_shuffle_ps(c2, c2, _MM_SHUFFLE(3, 0, 2, 1));
; 14 :
; 15 : //multple all add row
; 16 : __m128 cache = _mm_mul_ps(c0,addc1);
; 17 : cache = _mm_mul_ps(cache,addc2);
; 18 :
; 19 : //multiple all sub row
; 20 : __m128 sub = _mm_mul_ps(c0, subc1);
; 21 : sub = _mm_mul_ps(sub, subc2);
; 22 :
; 23 : //main-corner sub sub-corner
; 24 : cache = _mm_sub_ps(cache,sub);
; 25 :
; 26 : __m128 ret = _mm_hadd_ps(cache,cache); //element 1 add element 2
; 27 : ret = _mm_add_ps(ret, cache); //(e1 add e2) add element 3
; 28 :
; 29 :
; 30 : return ret.m128_f32[2];
; 31 : }
00067 48 83 c4 20 add rsp, 32 ; 00000020H
0006b 5f pop rdi
0006c c3 ret 0
det_mat3_internal ENDP
_TEXT ENDS
END
Binary file not shown.
File diff suppressed because it is too large Load Diff
Binary file not shown.
Binary file not shown.
Binary file not shown.