daily update on 20240828 by nitload youmu, autotexture added
This commit is contained in:
@@ -1 +0,0 @@
|
||||
C:\PROGRAM FILES\MICROSOFT VISUAL STUDIO\2022\ENTERPRISE\TEAM TOOLS\STATIC ANALYSIS TOOLS\\RULE SETS\NATIVERECOMMENDEDRULES.RULESET
|
||||
@@ -27,6 +27,14 @@ d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharp
|
||||
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc.lib
|
||||
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc.exp
|
||||
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\stgsharpc.ilk
|
||||
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\dllmain.nativecodeanalysis.xml
|
||||
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\mat2.nativecodeanalysis.xml
|
||||
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\mat3.nativecodeanalysis.xml
|
||||
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\mat4.nativecodeanalysis.xml
|
||||
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\stb_image.nativecodeanalysis.xml
|
||||
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\stgsharpc.nativecodeanalysis.xml
|
||||
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\vc.nativecodeanalysis.all.xml
|
||||
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\vector.nativecodeanalysis.xml
|
||||
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\stgsharpc.tlog\bscmake.command.1.tlog
|
||||
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\stgsharpc.tlog\bscmake.read.1.tlog
|
||||
d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\stgsharpc.tlog\bscmake.write.1.tlog
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
; Listing generated by Microsoft (R) Optimizing Compiler Version 19.39.33523.0
|
||||
; Listing generated by Microsoft (R) Optimizing Compiler Version 19.41.34120.0
|
||||
|
||||
include listing.inc
|
||||
|
||||
@@ -16,22 +16,22 @@ msvcjmc SEGMENT
|
||||
__A19B9DB6_ssgc_framework@h DB 01H
|
||||
__0ED14FEE_winpackagefamily@h DB 01H
|
||||
__F92EF742_winapifamily@h DB 01H
|
||||
__4B783B3C_concurrencysal@h DB 01H
|
||||
__137BB1BE_sal@h DB 01H
|
||||
__805F4069_vadefs@h DB 01H
|
||||
__1EAACA9B_vcruntime@h DB 01H
|
||||
__F8522E0F_stdint@h DB 01H
|
||||
__DDA0A690_concurrencysal@h DB 01H
|
||||
__9ECC08BE_sal@h DB 01H
|
||||
__E05D733A_vadefs@h DB 01H
|
||||
__6A355E0E_vcruntime@h DB 01H
|
||||
__98501D5C_stdint@h DB 01H
|
||||
__874AB8BA_khrplatform@h DB 01H
|
||||
__8DCB230D_gl@h DB 01H
|
||||
__1B0272D9_corecrt@h DB 01H
|
||||
__13F5961F_stddef@h DB 01H
|
||||
__5BC5AF51_mmintrin@h DB 01H
|
||||
__7583A0D2_mmintrin@h DB 01H
|
||||
__45DED006_corecrt_malloc@h DB 01H
|
||||
__FA77ED4C_malloc@h DB 01H
|
||||
__9E7FA6CF_xmmintrin@h DB 01H
|
||||
__EAE0325A_xmmintrin@h DB 01H
|
||||
__22E515EB_sdkddkver@h DB 01H
|
||||
__1227BCE2_excpt@h DB 01H
|
||||
__CC8D90C0_stdarg@h DB 01H
|
||||
__A09A3A7D_excpt@h DB 01H
|
||||
__AC8FA393_stdarg@h DB 01H
|
||||
__29F49F40_specstrings_undef@h DB 01H
|
||||
__D0F42932_specstrings_strict@h DB 01H
|
||||
__F00405FD_sdv_driverspecs@h DB 01H
|
||||
@@ -42,7 +42,7 @@ __1EC467ED_ctype@h DB 01H
|
||||
__98517906_kernelspecs@h DB 01H
|
||||
__D3497022_basetsd@h DB 01H
|
||||
__61CC25A1_errno@h DB 01H
|
||||
__0504B279_vcruntime_string@h DB 01H
|
||||
__890838BD_vcruntime_string@h DB 01H
|
||||
__E4C945B4_corecrt_memcpy_s@h DB 01H
|
||||
__8EAFF484_corecrt_memory@h DB 01H
|
||||
__6490AEC5_corecrt_wstring@h DB 01H
|
||||
@@ -120,20 +120,20 @@ __E15BF856_windows@h DB 01H
|
||||
__61B03275_ssgc_internal@h DB 01H
|
||||
__B47D1049_glfw3@h DB 01H
|
||||
__5F89FF5A_wgl@h DB 01H
|
||||
__FB1D2F03_emmintrin@h DB 01H
|
||||
__24BC478A_pmmintrin@h DB 01H
|
||||
__94653408_tmmintrin@h DB 01H
|
||||
__BD5E218B_smmintrin@h DB 01H
|
||||
__D83CA847_nmmintrin@h DB 01H
|
||||
__0D875209_wmmintrin@h DB 01H
|
||||
__C6131F0E_zmmintrin@h DB 01H
|
||||
__F107BDC4_immintrin@h DB 01H
|
||||
__8F82BB96_emmintrin@h DB 01H
|
||||
__5023D31F_pmmintrin@h DB 01H
|
||||
__E0FAA09D_tmmintrin@h DB 01H
|
||||
__C9C1B51E_smmintrin@h DB 01H
|
||||
__ACA33CD2_nmmintrin@h DB 01H
|
||||
__7918C69C_wmmintrin@h DB 01H
|
||||
__B28C8B9B_zmmintrin@h DB 01H
|
||||
__85982951_immintrin@h DB 01H
|
||||
__44420885_corecrt_stdio_config@h DB 01H
|
||||
__AB601D8D_corecrt_wstdio@h DB 01H
|
||||
__C1EC35D3_stdio@h DB 01H
|
||||
__FD6DBD68_corecrt_search@h DB 01H
|
||||
__E2E33A61_corecrt_wstdlib@h DB 01H
|
||||
__46240030_limits@h DB 01H
|
||||
__26263363_limits@h DB 01H
|
||||
__6E5ACABA_stdlib@h DB 01H
|
||||
__5274102E_stb_image@h DB 01H
|
||||
__CE2BBC10_StgSharpC@h DB 01H
|
||||
@@ -172,61 +172,61 @@ _DATA ENDS
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$__local_stdio_printf_options DD imagerel $LN3
|
||||
DD imagerel $LN3+44
|
||||
DD imagerel $LN3+45
|
||||
DD imagerel $unwind$__local_stdio_printf_options
|
||||
pdata ENDS
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$_vfprintf_l DD imagerel $LN3
|
||||
DD imagerel $LN3+103
|
||||
DD imagerel $LN3+104
|
||||
DD imagerel $unwind$_vfprintf_l
|
||||
pdata ENDS
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$printf DD imagerel $LN3
|
||||
DD imagerel $LN3+191
|
||||
DD imagerel $LN3+192
|
||||
DD imagerel $unwind$printf
|
||||
pdata ENDS
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$glCheckShaderStat DD imagerel $LN4
|
||||
DD imagerel $LN4+229
|
||||
DD imagerel $LN4+232
|
||||
DD imagerel $unwind$glCheckShaderStat
|
||||
pdata ENDS
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$initGL DD imagerel $LN3
|
||||
DD imagerel $LN3+91
|
||||
DD imagerel $LN3+111
|
||||
DD imagerel $unwind$initGL
|
||||
pdata ENDS
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$linkShaderProgram DD imagerel $LN5
|
||||
DD imagerel $LN5+223
|
||||
DD imagerel $LN5+227
|
||||
DD imagerel $unwind$linkShaderProgram
|
||||
pdata ENDS
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$loadImageData DD imagerel $LN4
|
||||
DD imagerel $LN4+142
|
||||
DD imagerel $LN4+143
|
||||
DD imagerel $unwind$loadImageData
|
||||
pdata ENDS
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$loadGlfuncDefault DD imagerel $LN7
|
||||
DD imagerel $LN7+186
|
||||
DD imagerel $LN7+188
|
||||
DD imagerel $unwind$loadGlfuncDefault
|
||||
pdata ENDS
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$unloadImageData DD imagerel $LN3
|
||||
DD imagerel $LN3+58
|
||||
DD imagerel $LN3+60
|
||||
DD imagerel $unwind$unloadImageData
|
||||
pdata ENDS
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$readLog DD imagerel $LN5
|
||||
DD imagerel $LN5+101
|
||||
DD imagerel $LN5+103
|
||||
DD imagerel $unwind$readLog
|
||||
pdata ENDS
|
||||
; COMDAT rtc$TMZ
|
||||
@@ -277,7 +277,7 @@ xdata ENDS
|
||||
; COMDAT voltbl
|
||||
voltbl SEGMENT
|
||||
_volmd DB 03aH
|
||||
DB 0c6H
|
||||
DB 0caH
|
||||
voltbl ENDS
|
||||
; COMDAT xdata
|
||||
xdata SEGMENT
|
||||
@@ -317,7 +317,7 @@ xdata ENDS
|
||||
; COMDAT voltbl
|
||||
voltbl SEGMENT
|
||||
_volmd DB 045H
|
||||
DB 0ccH
|
||||
DB 0cfH
|
||||
voltbl ENDS
|
||||
; COMDAT xdata
|
||||
xdata SEGMENT
|
||||
@@ -347,7 +347,7 @@ CONST ENDS
|
||||
; COMDAT voltbl
|
||||
voltbl SEGMENT
|
||||
_volmd DB 045H
|
||||
DB 0a6H
|
||||
DB 0a7H
|
||||
voltbl ENDS
|
||||
; COMDAT xdata
|
||||
xdata SEGMENT
|
||||
@@ -406,7 +406,7 @@ _TEXT SEGMENT
|
||||
$T1 = 200
|
||||
readLog PROC ; COMDAT
|
||||
|
||||
; 77 : {
|
||||
; 78 : {
|
||||
|
||||
$LN5:
|
||||
00000 40 55 push rbp
|
||||
@@ -417,41 +417,43 @@ $LN5:
|
||||
0000f 48 8d 0d 00 00
|
||||
00 00 lea rcx, OFFSET FLAT:__59F96598_StgSharpC@c
|
||||
00016 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
||||
0001b 90 npad 1
|
||||
|
||||
; 78 : infolog[511] = '\0';
|
||||
; 79 : infolog[511] = '\0';
|
||||
|
||||
0001b b8 01 00 00 00 mov eax, 1
|
||||
00020 48 69 c0 ff 01
|
||||
0001c b8 01 00 00 00 mov eax, 1
|
||||
00021 48 69 c0 ff 01
|
||||
00 00 imul rax, rax, 511 ; 000001ffH
|
||||
00027 48 89 85 c8 00
|
||||
00028 48 89 85 c8 00
|
||||
00 00 mov QWORD PTR $T1[rbp], rax
|
||||
0002e 48 81 bd c8 00
|
||||
0002f 48 81 bd c8 00
|
||||
00 00 00 02 00
|
||||
00 cmp QWORD PTR $T1[rbp], 512 ; 00000200H
|
||||
00039 73 02 jae SHORT $LN3@readLog
|
||||
0003b eb 05 jmp SHORT $LN4@readLog
|
||||
0003a 73 02 jae SHORT $LN3@readLog
|
||||
0003c eb 06 jmp SHORT $LN4@readLog
|
||||
$LN3@readLog:
|
||||
0003d e8 00 00 00 00 call __report_rangecheckfailure
|
||||
0003e e8 00 00 00 00 call __report_rangecheckfailure
|
||||
00043 90 npad 1
|
||||
$LN4@readLog:
|
||||
00042 48 8d 05 00 00
|
||||
00044 48 8d 05 00 00
|
||||
00 00 lea rax, OFFSET FLAT:infolog
|
||||
00049 48 8b 8d c8 00
|
||||
0004b 48 8b 8d c8 00
|
||||
00 00 mov rcx, QWORD PTR $T1[rbp]
|
||||
00050 c6 04 08 00 mov BYTE PTR [rax+rcx], 0
|
||||
00052 c6 04 08 00 mov BYTE PTR [rax+rcx], 0
|
||||
|
||||
; 79 : return &infolog;
|
||||
; 80 : return &infolog;
|
||||
|
||||
00054 48 8d 05 00 00
|
||||
00056 48 8d 05 00 00
|
||||
00 00 lea rax, OFFSET FLAT:infolog
|
||||
$LN2@readLog:
|
||||
|
||||
; 80 : }
|
||||
; 81 : }
|
||||
|
||||
0005b 48 8d a5 e8 00
|
||||
0005d 48 8d a5 e8 00
|
||||
00 00 lea rsp, QWORD PTR [rbp+232]
|
||||
00062 5f pop rdi
|
||||
00063 5d pop rbp
|
||||
00064 c3 ret 0
|
||||
00064 5f pop rdi
|
||||
00065 5d pop rbp
|
||||
00066 c3 ret 0
|
||||
readLog ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Odtp /RTCsu /ZI
|
||||
@@ -461,7 +463,7 @@ _TEXT SEGMENT
|
||||
out$ = 224
|
||||
unloadImageData PROC ; COMDAT
|
||||
|
||||
; 72 : {
|
||||
; 73 : {
|
||||
|
||||
$LN3:
|
||||
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
|
||||
@@ -473,22 +475,24 @@ $LN3:
|
||||
00013 48 8d 0d 00 00
|
||||
00 00 lea rcx, OFFSET FLAT:__59F96598_StgSharpC@c
|
||||
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
||||
0001f 90 npad 1
|
||||
|
||||
; 73 : free(out->pixelPtr);
|
||||
; 74 : free(out->pixelPtr);
|
||||
|
||||
0001f 48 8b 85 e0 00
|
||||
00020 48 8b 85 e0 00
|
||||
00 00 mov rax, QWORD PTR out$[rbp]
|
||||
00026 48 8b 48 10 mov rcx, QWORD PTR [rax+16]
|
||||
0002a ff 15 00 00 00
|
||||
00027 48 8b 48 10 mov rcx, QWORD PTR [rax+16]
|
||||
0002b ff 15 00 00 00
|
||||
00 call QWORD PTR __imp_free
|
||||
00031 90 npad 1
|
||||
|
||||
; 74 : }
|
||||
; 75 : }
|
||||
|
||||
00030 48 8d a5 c8 00
|
||||
00032 48 8d a5 c8 00
|
||||
00 00 lea rsp, QWORD PTR [rbp+200]
|
||||
00037 5f pop rdi
|
||||
00038 5d pop rbp
|
||||
00039 c3 ret 0
|
||||
00039 5f pop rdi
|
||||
0003a 5d pop rbp
|
||||
0003b c3 ret 0
|
||||
unloadImageData ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Odtp /RTCsu /ZI
|
||||
@@ -500,7 +504,7 @@ i$1 = 40
|
||||
procName$ = 288
|
||||
loadGlfuncDefault PROC ; COMDAT
|
||||
|
||||
; 30 : {
|
||||
; 31 : {
|
||||
|
||||
$LN7:
|
||||
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
|
||||
@@ -512,86 +516,88 @@ $LN7:
|
||||
00013 48 8d 0d 00 00
|
||||
00 00 lea rcx, OFFSET FLAT:__59F96598_StgSharpC@c
|
||||
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
||||
0001f 90 npad 1
|
||||
|
||||
; 31 : void* ret = glfwGetProcAddress(procName);
|
||||
; 32 : void* ret = glfwGetProcAddress(procName);
|
||||
|
||||
0001f 48 8b 8d 20 01
|
||||
00020 48 8b 8d 20 01
|
||||
00 00 mov rcx, QWORD PTR procName$[rbp]
|
||||
00026 e8 00 00 00 00 call glfwGetProcAddress
|
||||
0002b 48 89 45 08 mov QWORD PTR ret$[rbp], rax
|
||||
00027 e8 00 00 00 00 call glfwGetProcAddress
|
||||
0002c 48 89 45 08 mov QWORD PTR ret$[rbp], rax
|
||||
|
||||
; 32 : //printf("%llu\n", (uint64_t)ret);
|
||||
; 33 : if (ret = NULL)
|
||||
; 33 : //printf("%llu\n", (uint64_t)ret);
|
||||
; 34 : if (ret = NULL)
|
||||
|
||||
0002f 48 c7 45 08 00
|
||||
00030 48 c7 45 08 00
|
||||
00 00 00 mov QWORD PTR ret$[rbp], 0
|
||||
00037 48 83 7d 08 00 cmp QWORD PTR ret$[rbp], 0
|
||||
0003c 74 6e je SHORT $LN5@loadGlfunc
|
||||
00038 48 83 7d 08 00 cmp QWORD PTR ret$[rbp], 0
|
||||
0003d 74 6f je SHORT $LN5@loadGlfunc
|
||||
|
||||
; 34 : {
|
||||
; 35 : *infolog = "Failed to load OpenGL api:";
|
||||
; 35 : {
|
||||
; 36 : *infolog = "Failed to load OpenGL api:";
|
||||
|
||||
0003e b8 01 00 00 00 mov eax, 1
|
||||
00043 48 6b c0 00 imul rax, rax, 0
|
||||
00047 48 8d 0d 00 00
|
||||
0003f b8 01 00 00 00 mov eax, 1
|
||||
00044 48 6b c0 00 imul rax, rax, 0
|
||||
00048 48 8d 0d 00 00
|
||||
00 00 lea rcx, OFFSET FLAT:infolog
|
||||
0004e 48 8d 15 00 00
|
||||
0004f 48 8d 15 00 00
|
||||
00 00 lea rdx, OFFSET FLAT:??_C@_0BL@MOJGOJJP@Failed?5to?5load?5OpenGL?5api?3@
|
||||
00055 88 14 01 mov BYTE PTR [rcx+rax], dl
|
||||
00056 88 14 01 mov BYTE PTR [rcx+rax], dl
|
||||
|
||||
; 36 : for (size_t i = 0; i < sizeof(procName); i++)
|
||||
; 37 : for (size_t i = 0; i < sizeof(procName); i++)
|
||||
|
||||
00058 48 c7 45 28 00
|
||||
00059 48 c7 45 28 00
|
||||
00 00 00 mov QWORD PTR i$1[rbp], 0
|
||||
00060 eb 0b jmp SHORT $LN4@loadGlfunc
|
||||
00061 eb 0b jmp SHORT $LN4@loadGlfunc
|
||||
$LN2@loadGlfunc:
|
||||
00062 48 8b 45 28 mov rax, QWORD PTR i$1[rbp]
|
||||
00066 48 ff c0 inc rax
|
||||
00069 48 89 45 28 mov QWORD PTR i$1[rbp], rax
|
||||
00063 48 8b 45 28 mov rax, QWORD PTR i$1[rbp]
|
||||
00067 48 ff c0 inc rax
|
||||
0006a 48 89 45 28 mov QWORD PTR i$1[rbp], rax
|
||||
$LN4@loadGlfunc:
|
||||
0006d 48 83 7d 28 08 cmp QWORD PTR i$1[rbp], 8
|
||||
00072 73 25 jae SHORT $LN3@loadGlfunc
|
||||
0006e 48 83 7d 28 08 cmp QWORD PTR i$1[rbp], 8
|
||||
00073 73 25 jae SHORT $LN3@loadGlfunc
|
||||
|
||||
; 37 : {
|
||||
; 38 : infolog[30 + i] = procName[i];
|
||||
; 38 : {
|
||||
; 39 : infolog[30 + i] = procName[i];
|
||||
|
||||
00074 48 8d 05 00 00
|
||||
00075 48 8d 05 00 00
|
||||
00 00 lea rax, OFFSET FLAT:infolog
|
||||
0007b 48 8b 4d 28 mov rcx, QWORD PTR i$1[rbp]
|
||||
0007f 48 8b 95 20 01
|
||||
0007c 48 8b 4d 28 mov rcx, QWORD PTR i$1[rbp]
|
||||
00080 48 8b 95 20 01
|
||||
00 00 mov rdx, QWORD PTR procName$[rbp]
|
||||
00086 48 03 d1 add rdx, rcx
|
||||
00089 48 8b ca mov rcx, rdx
|
||||
0008c 48 8b 55 28 mov rdx, QWORD PTR i$1[rbp]
|
||||
00090 0f b6 09 movzx ecx, BYTE PTR [rcx]
|
||||
00093 88 4c 10 1e mov BYTE PTR [rax+rdx+30], cl
|
||||
00087 48 03 d1 add rdx, rcx
|
||||
0008a 48 8b ca mov rcx, rdx
|
||||
0008d 48 8b 55 28 mov rdx, QWORD PTR i$1[rbp]
|
||||
00091 0f b6 09 movzx ecx, BYTE PTR [rcx]
|
||||
00094 88 4c 10 1e mov BYTE PTR [rax+rdx+30], cl
|
||||
|
||||
; 39 : }
|
||||
; 40 : }
|
||||
|
||||
00097 eb c9 jmp SHORT $LN2@loadGlfunc
|
||||
00098 eb c9 jmp SHORT $LN2@loadGlfunc
|
||||
$LN3@loadGlfunc:
|
||||
|
||||
; 40 : printf("%s\n", infolog);
|
||||
; 41 : printf("%s\n", infolog);
|
||||
|
||||
00099 48 8d 15 00 00
|
||||
0009a 48 8d 15 00 00
|
||||
00 00 lea rdx, OFFSET FLAT:infolog
|
||||
000a0 48 8d 0d 00 00
|
||||
000a1 48 8d 0d 00 00
|
||||
00 00 lea rcx, OFFSET FLAT:??_C@_03OFAPEBGM@?$CFs?6@
|
||||
000a7 e8 00 00 00 00 call printf
|
||||
000a8 e8 00 00 00 00 call printf
|
||||
000ad 90 npad 1
|
||||
$LN5@loadGlfunc:
|
||||
|
||||
; 41 : }
|
||||
; 42 : return (GLFWglproc)ret;
|
||||
; 42 : }
|
||||
; 43 : return (GLFWglproc)ret;
|
||||
|
||||
000ac 48 8b 45 08 mov rax, QWORD PTR ret$[rbp]
|
||||
000ae 48 8b 45 08 mov rax, QWORD PTR ret$[rbp]
|
||||
|
||||
; 43 : }
|
||||
; 44 : }
|
||||
|
||||
000b0 48 8d a5 08 01
|
||||
000b2 48 8d a5 08 01
|
||||
00 00 lea rsp, QWORD PTR [rbp+264]
|
||||
000b7 5f pop rdi
|
||||
000b8 5d pop rbp
|
||||
000b9 c3 ret 0
|
||||
000b9 5f pop rdi
|
||||
000ba 5d pop rbp
|
||||
000bb c3 ret 0
|
||||
loadGlfuncDefault ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Odtp /RTCsu /ZI
|
||||
@@ -603,7 +609,7 @@ out$ = 232
|
||||
loader$ = 240
|
||||
loadImageData PROC ; COMDAT
|
||||
|
||||
; 63 : {
|
||||
; 64 : {
|
||||
|
||||
$LN4:
|
||||
00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8
|
||||
@@ -617,52 +623,53 @@ $LN4:
|
||||
0001d 48 8d 0d 00 00
|
||||
00 00 lea rcx, OFFSET FLAT:__59F96598_StgSharpC@c
|
||||
00024 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
||||
00029 90 npad 1
|
||||
|
||||
; 64 : if (loader == NULL)
|
||||
; 65 : if (loader == NULL)
|
||||
|
||||
00029 48 83 bd f0 00
|
||||
0002a 48 83 bd f0 00
|
||||
00 00 00 cmp QWORD PTR loader$[rbp], 0
|
||||
00031 75 0e jne SHORT $LN2@loadImageD
|
||||
00032 75 0e jne SHORT $LN2@loadImageD
|
||||
|
||||
; 65 : {
|
||||
; 66 : loader = stbi_load;
|
||||
; 66 : {
|
||||
; 67 : loader = stbi_load;
|
||||
|
||||
00033 48 8d 05 00 00
|
||||
00034 48 8d 05 00 00
|
||||
00 00 lea rax, OFFSET FLAT:stbi_load
|
||||
0003a 48 89 85 f0 00
|
||||
0003b 48 89 85 f0 00
|
||||
00 00 mov QWORD PTR loader$[rbp], rax
|
||||
$LN2@loadImageD:
|
||||
|
||||
; 67 : }
|
||||
; 68 : out->pixelPtr = loader(location, &(out->width), &(out->height), &(out->channel), 0);
|
||||
; 68 : }
|
||||
; 69 : out->pixelPtr = loader(location, &(out->width), &(out->height), &(out->channel), 0);
|
||||
|
||||
00041 48 8b 85 e8 00
|
||||
00042 48 8b 85 e8 00
|
||||
00 00 mov rax, QWORD PTR out$[rbp]
|
||||
00048 48 83 c0 08 add rax, 8
|
||||
0004c 48 8b 8d e8 00
|
||||
00049 48 83 c0 08 add rax, 8
|
||||
0004d 48 8b 8d e8 00
|
||||
00 00 mov rcx, QWORD PTR out$[rbp]
|
||||
00053 48 83 c1 04 add rcx, 4
|
||||
00057 48 8b 95 e8 00
|
||||
00054 48 83 c1 04 add rcx, 4
|
||||
00058 48 8b 95 e8 00
|
||||
00 00 mov rdx, QWORD PTR out$[rbp]
|
||||
0005e c7 44 24 20 00
|
||||
0005f c7 44 24 20 00
|
||||
00 00 00 mov DWORD PTR [rsp+32], 0
|
||||
00066 4c 8b c8 mov r9, rax
|
||||
00069 4c 8b c1 mov r8, rcx
|
||||
0006c 48 8b 8d e0 00
|
||||
00067 4c 8b c8 mov r9, rax
|
||||
0006a 4c 8b c1 mov r8, rcx
|
||||
0006d 48 8b 8d e0 00
|
||||
00 00 mov rcx, QWORD PTR location$[rbp]
|
||||
00073 ff 95 f0 00 00
|
||||
00074 ff 95 f0 00 00
|
||||
00 call QWORD PTR loader$[rbp]
|
||||
00079 48 8b 8d e8 00
|
||||
0007a 48 8b 8d e8 00
|
||||
00 00 mov rcx, QWORD PTR out$[rbp]
|
||||
00080 48 89 41 10 mov QWORD PTR [rcx+16], rax
|
||||
00081 48 89 41 10 mov QWORD PTR [rcx+16], rax
|
||||
|
||||
; 69 : }
|
||||
; 70 : }
|
||||
|
||||
00084 48 8d a5 c8 00
|
||||
00085 48 8d a5 c8 00
|
||||
00 00 lea rsp, QWORD PTR [rbp+200]
|
||||
0008b 5f pop rdi
|
||||
0008c 5d pop rbp
|
||||
0008d c3 ret 0
|
||||
0008c 5f pop rdi
|
||||
0008d 5d pop rbp
|
||||
0008e c3 ret 0
|
||||
loadImageData ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Odtp /RTCsu /ZI
|
||||
@@ -675,7 +682,7 @@ context$ = 256
|
||||
shaderProgram$ = 264
|
||||
linkShaderProgram PROC ; COMDAT
|
||||
|
||||
; 46 : {
|
||||
; 47 : {
|
||||
|
||||
$LN5:
|
||||
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
|
||||
@@ -699,85 +706,89 @@ $LN5:
|
||||
00041 48 8d 0d 00 00
|
||||
00 00 lea rcx, OFFSET FLAT:__59F96598_StgSharpC@c
|
||||
00048 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
||||
0004d 90 npad 1
|
||||
|
||||
; 47 : context->LinkProgram(shaderProgram);
|
||||
; 48 : context->LinkProgram(shaderProgram);
|
||||
|
||||
0004d 8b 8d 08 01 00
|
||||
0004e 8b 8d 08 01 00
|
||||
00 mov ecx, DWORD PTR shaderProgram$[rbp]
|
||||
00053 48 8b 85 00 01
|
||||
00054 48 8b 85 00 01
|
||||
00 00 mov rax, QWORD PTR context$[rbp]
|
||||
0005a ff 90 80 22 00
|
||||
0005b ff 90 80 22 00
|
||||
00 call QWORD PTR [rax+8832]
|
||||
00061 90 npad 1
|
||||
|
||||
; 48 :
|
||||
; 49 : int success;
|
||||
; 50 : context->GetProgramiv(shaderProgram, GL_LINK_STATUS, &success);
|
||||
; 49 :
|
||||
; 50 : int success;
|
||||
; 51 : context->GetProgramiv(shaderProgram, GL_LINK_STATUS, &success);
|
||||
|
||||
00060 4c 8d 45 04 lea r8, QWORD PTR success$[rbp]
|
||||
00064 ba 82 8b 00 00 mov edx, 35714 ; 00008b82H
|
||||
00069 8b 8d 08 01 00
|
||||
00062 4c 8d 45 04 lea r8, QWORD PTR success$[rbp]
|
||||
00066 ba 82 8b 00 00 mov edx, 35714 ; 00008b82H
|
||||
0006b 8b 8d 08 01 00
|
||||
00 mov ecx, DWORD PTR shaderProgram$[rbp]
|
||||
0006f 48 8b 85 00 01
|
||||
00071 48 8b 85 00 01
|
||||
00 00 mov rax, QWORD PTR context$[rbp]
|
||||
00076 ff 90 48 1a 00
|
||||
00078 ff 90 48 1a 00
|
||||
00 call QWORD PTR [rax+6728]
|
||||
0007e 90 npad 1
|
||||
|
||||
; 51 : if (!success)
|
||||
; 52 : if (!success)
|
||||
|
||||
0007c 83 7d 04 00 cmp DWORD PTR success$[rbp], 0
|
||||
00080 75 28 jne SHORT $LN2@linkShader
|
||||
0007f 83 7d 04 00 cmp DWORD PTR success$[rbp], 0
|
||||
00083 75 29 jne SHORT $LN2@linkShader
|
||||
|
||||
; 52 : {
|
||||
; 53 : context->GetProgramInfoLog(shaderProgram, 512, NULL, infolog);
|
||||
; 53 : {
|
||||
; 54 : context->GetProgramInfoLog(shaderProgram, 512, NULL, infolog);
|
||||
|
||||
00082 4c 8d 0d 00 00
|
||||
00085 4c 8d 0d 00 00
|
||||
00 00 lea r9, OFFSET FLAT:infolog
|
||||
00089 45 33 c0 xor r8d, r8d
|
||||
0008c ba 00 02 00 00 mov edx, 512 ; 00000200H
|
||||
00091 8b 8d 08 01 00
|
||||
0008c 45 33 c0 xor r8d, r8d
|
||||
0008f ba 00 02 00 00 mov edx, 512 ; 00000200H
|
||||
00094 8b 8d 08 01 00
|
||||
00 mov ecx, DWORD PTR shaderProgram$[rbp]
|
||||
00097 48 8b 85 00 01
|
||||
0009a 48 8b 85 00 01
|
||||
00 00 mov rax, QWORD PTR context$[rbp]
|
||||
0009e ff 90 98 19 00
|
||||
000a1 ff 90 98 19 00
|
||||
00 call QWORD PTR [rax+6552]
|
||||
000a7 90 npad 1
|
||||
|
||||
; 54 : return 0;
|
||||
; 55 : return 0;
|
||||
|
||||
000a4 33 c0 xor eax, eax
|
||||
000a6 eb 08 jmp SHORT $LN1@linkShader
|
||||
000a8 33 c0 xor eax, eax
|
||||
000aa eb 08 jmp SHORT $LN1@linkShader
|
||||
|
||||
; 55 : }
|
||||
; 56 : }
|
||||
|
||||
000a8 eb 06 jmp SHORT $LN3@linkShader
|
||||
000ac eb 06 jmp SHORT $LN3@linkShader
|
||||
$LN2@linkShader:
|
||||
|
||||
; 56 : else
|
||||
; 57 : {
|
||||
; 58 : return shaderProgram;
|
||||
; 57 : else
|
||||
; 58 : {
|
||||
; 59 : return shaderProgram;
|
||||
|
||||
000aa 8b 85 08 01 00
|
||||
000ae 8b 85 08 01 00
|
||||
00 mov eax, DWORD PTR shaderProgram$[rbp]
|
||||
$LN3@linkShader:
|
||||
$LN1@linkShader:
|
||||
|
||||
; 59 : }
|
||||
; 60 : }
|
||||
; 60 : }
|
||||
; 61 : }
|
||||
|
||||
000b0 48 8b f8 mov rdi, rax
|
||||
000b3 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32]
|
||||
000b7 48 8d 15 00 00
|
||||
000b4 48 8b f8 mov rdi, rax
|
||||
000b7 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32]
|
||||
000bb 48 8d 15 00 00
|
||||
00 00 lea rdx, OFFSET FLAT:linkShaderProgram$rtcFrameData
|
||||
000be e8 00 00 00 00 call _RTC_CheckStackVars
|
||||
000c3 48 8b c7 mov rax, rdi
|
||||
000c6 48 8b 8d d8 00
|
||||
000c2 e8 00 00 00 00 call _RTC_CheckStackVars
|
||||
000c7 48 8b c7 mov rax, rdi
|
||||
000ca 48 8b 8d d8 00
|
||||
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
|
||||
000cd 48 33 cd xor rcx, rbp
|
||||
000d0 e8 00 00 00 00 call __security_check_cookie
|
||||
000d5 48 8d a5 e8 00
|
||||
000d1 48 33 cd xor rcx, rbp
|
||||
000d4 e8 00 00 00 00 call __security_check_cookie
|
||||
000d9 48 8d a5 e8 00
|
||||
00 00 lea rsp, QWORD PTR [rbp+232]
|
||||
000dc 5f pop rdi
|
||||
000dd 5d pop rbp
|
||||
000de c3 ret 0
|
||||
000e0 5f pop rdi
|
||||
000e1 5d pop rbp
|
||||
000e2 c3 ret 0
|
||||
linkShaderProgram ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Odtp /RTCsu /ZI
|
||||
@@ -801,34 +812,45 @@ $LN3:
|
||||
00016 48 8d 0d 00 00
|
||||
00 00 lea rcx, OFFSET FLAT:__59F96598_StgSharpC@c
|
||||
0001d e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
||||
00022 90 npad 1
|
||||
|
||||
; 24 : glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, majorVersion);
|
||||
|
||||
00022 8b 95 e0 00 00
|
||||
00023 8b 95 e0 00 00
|
||||
00 mov edx, DWORD PTR majorVersion$[rbp]
|
||||
00028 b9 02 20 02 00 mov ecx, 139266 ; 00022002H
|
||||
0002d e8 00 00 00 00 call glfwWindowHint
|
||||
00029 b9 02 20 02 00 mov ecx, 139266 ; 00022002H
|
||||
0002e e8 00 00 00 00 call glfwWindowHint
|
||||
00033 90 npad 1
|
||||
|
||||
; 25 : glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, minorVersion);
|
||||
|
||||
00032 8b 95 e8 00 00
|
||||
00034 8b 95 e8 00 00
|
||||
00 mov edx, DWORD PTR minorVersion$[rbp]
|
||||
00038 b9 03 20 02 00 mov ecx, 139267 ; 00022003H
|
||||
0003d e8 00 00 00 00 call glfwWindowHint
|
||||
0003a b9 03 20 02 00 mov ecx, 139267 ; 00022003H
|
||||
0003f e8 00 00 00 00 call glfwWindowHint
|
||||
00044 90 npad 1
|
||||
|
||||
; 26 : glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);
|
||||
|
||||
00042 ba 01 20 03 00 mov edx, 204801 ; 00032001H
|
||||
00047 b9 08 20 02 00 mov ecx, 139272 ; 00022008H
|
||||
0004c e8 00 00 00 00 call glfwWindowHint
|
||||
00045 ba 01 20 03 00 mov edx, 204801 ; 00032001H
|
||||
0004a b9 08 20 02 00 mov ecx, 139272 ; 00022008H
|
||||
0004f e8 00 00 00 00 call glfwWindowHint
|
||||
00054 90 npad 1
|
||||
|
||||
; 27 : }
|
||||
; 27 : glfwWindowHint(GLFW_RESIZABLE, GLFW_TRUE);
|
||||
|
||||
00051 48 8d a5 c8 00
|
||||
00055 ba 01 00 00 00 mov edx, 1
|
||||
0005a b9 03 00 02 00 mov ecx, 131075 ; 00020003H
|
||||
0005f e8 00 00 00 00 call glfwWindowHint
|
||||
00064 90 npad 1
|
||||
|
||||
; 28 : }
|
||||
|
||||
00065 48 8d a5 c8 00
|
||||
00 00 lea rsp, QWORD PTR [rbp+200]
|
||||
00058 5f pop rdi
|
||||
00059 5d pop rbp
|
||||
0005a c3 ret 0
|
||||
0006c 5f pop rdi
|
||||
0006d 5d pop rbp
|
||||
0006e c3 ret 0
|
||||
initGL ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Odtp /RTCsu /ZI
|
||||
@@ -869,74 +891,77 @@ $LN4:
|
||||
0004c 48 8d 0d 00 00
|
||||
00 00 lea rcx, OFFSET FLAT:__59F96598_StgSharpC@c
|
||||
00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
||||
00058 90 npad 1
|
||||
|
||||
; 12 : int stat = 0;
|
||||
|
||||
00058 c7 45 04 00 00
|
||||
00059 c7 45 04 00 00
|
||||
00 00 mov DWORD PTR stat$[rbp], 0
|
||||
|
||||
; 13 : context->GetShaderiv(shaderHandle, key, &stat);
|
||||
|
||||
0005f 4c 8d 45 04 lea r8, QWORD PTR stat$[rbp]
|
||||
00063 8b 95 10 01 00
|
||||
00060 4c 8d 45 04 lea r8, QWORD PTR stat$[rbp]
|
||||
00064 8b 95 10 01 00
|
||||
00 mov edx, DWORD PTR key$[rbp]
|
||||
00069 8b 8d 08 01 00
|
||||
0006a 8b 8d 08 01 00
|
||||
00 mov ecx, DWORD PTR shaderHandle$[rbp]
|
||||
0006f 48 8b 85 00 01
|
||||
00070 48 8b 85 00 01
|
||||
00 00 mov rax, QWORD PTR context$[rbp]
|
||||
00076 ff 90 40 1b 00
|
||||
00077 ff 90 40 1b 00
|
||||
00 call QWORD PTR [rax+6976]
|
||||
0007d 90 npad 1
|
||||
|
||||
; 14 : if (!stat)
|
||||
|
||||
0007c 83 7d 04 00 cmp DWORD PTR stat$[rbp], 0
|
||||
00080 75 22 jne SHORT $LN2@glCheckSha
|
||||
0007e 83 7d 04 00 cmp DWORD PTR stat$[rbp], 0
|
||||
00082 75 23 jne SHORT $LN2@glCheckSha
|
||||
|
||||
; 15 : {
|
||||
; 16 : context->GetShaderInfoLog(shaderHandle, 512, NULL, infolog);
|
||||
|
||||
00082 4c 8d 0d 00 00
|
||||
00084 4c 8d 0d 00 00
|
||||
00 00 lea r9, OFFSET FLAT:infolog
|
||||
00089 45 33 c0 xor r8d, r8d
|
||||
0008c ba 00 02 00 00 mov edx, 512 ; 00000200H
|
||||
00091 8b 8d 08 01 00
|
||||
0008b 45 33 c0 xor r8d, r8d
|
||||
0008e ba 00 02 00 00 mov edx, 512 ; 00000200H
|
||||
00093 8b 8d 08 01 00
|
||||
00 mov ecx, DWORD PTR shaderHandle$[rbp]
|
||||
00097 48 8b 85 00 01
|
||||
00099 48 8b 85 00 01
|
||||
00 00 mov rax, QWORD PTR context$[rbp]
|
||||
0009e ff 90 20 1b 00
|
||||
000a0 ff 90 20 1b 00
|
||||
00 call QWORD PTR [rax+6944]
|
||||
000a6 90 npad 1
|
||||
$LN2@glCheckSha:
|
||||
|
||||
; 17 : }
|
||||
; 18 : *logRef = infolog;
|
||||
|
||||
000a4 48 8b 85 18 01
|
||||
000a7 48 8b 85 18 01
|
||||
00 00 mov rax, QWORD PTR logRef$[rbp]
|
||||
000ab 48 8d 0d 00 00
|
||||
000ae 48 8d 0d 00 00
|
||||
00 00 lea rcx, OFFSET FLAT:infolog
|
||||
000b2 48 89 08 mov QWORD PTR [rax], rcx
|
||||
000b5 48 89 08 mov QWORD PTR [rax], rcx
|
||||
|
||||
; 19 : return stat;
|
||||
|
||||
000b5 8b 45 04 mov eax, DWORD PTR stat$[rbp]
|
||||
000b8 8b 45 04 mov eax, DWORD PTR stat$[rbp]
|
||||
|
||||
; 20 : }
|
||||
|
||||
000b8 8b f8 mov edi, eax
|
||||
000ba 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32]
|
||||
000be 48 8d 15 00 00
|
||||
000bb 8b f8 mov edi, eax
|
||||
000bd 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32]
|
||||
000c1 48 8d 15 00 00
|
||||
00 00 lea rdx, OFFSET FLAT:glCheckShaderStat$rtcFrameData
|
||||
000c5 e8 00 00 00 00 call _RTC_CheckStackVars
|
||||
000ca 8b c7 mov eax, edi
|
||||
000cc 48 8b 8d d8 00
|
||||
000c8 e8 00 00 00 00 call _RTC_CheckStackVars
|
||||
000cd 8b c7 mov eax, edi
|
||||
000cf 48 8b 8d d8 00
|
||||
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
|
||||
000d3 48 33 cd xor rcx, rbp
|
||||
000d6 e8 00 00 00 00 call __security_check_cookie
|
||||
000db 48 8d a5 e8 00
|
||||
000d6 48 33 cd xor rcx, rbp
|
||||
000d9 e8 00 00 00 00 call __security_check_cookie
|
||||
000de 48 8d a5 e8 00
|
||||
00 00 lea rsp, QWORD PTR [rbp+232]
|
||||
000e2 5f pop rdi
|
||||
000e3 5d pop rbp
|
||||
000e4 c3 ret 0
|
||||
000e5 5f pop rdi
|
||||
000e6 5d pop rbp
|
||||
000e7 c3 ret 0
|
||||
glCheckShaderStat ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Odtp /RTCsu /ZI
|
||||
@@ -975,54 +1000,55 @@ $LN3:
|
||||
0004c 48 8d 0d 00 00
|
||||
00 00 lea rcx, OFFSET FLAT:__C1EC35D3_stdio@h
|
||||
00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
||||
00058 90 npad 1
|
||||
|
||||
; 957 : int _Result;
|
||||
; 958 : va_list _ArgList;
|
||||
; 959 : __crt_va_start(_ArgList, _Format);
|
||||
|
||||
00058 48 8d 85 28 01
|
||||
00059 48 8d 85 28 01
|
||||
00 00 lea rax, QWORD PTR _Format$[rbp+8]
|
||||
0005f 48 89 45 28 mov QWORD PTR _ArgList$[rbp], rax
|
||||
00060 48 89 45 28 mov QWORD PTR _ArgList$[rbp], rax
|
||||
|
||||
; 960 : _Result = _vfprintf_l(stdout, _Format, NULL, _ArgList);
|
||||
|
||||
00063 b9 01 00 00 00 mov ecx, 1
|
||||
00068 ff 15 00 00 00
|
||||
00064 b9 01 00 00 00 mov ecx, 1
|
||||
00069 ff 15 00 00 00
|
||||
00 call QWORD PTR __imp___acrt_iob_func
|
||||
0006e 4c 8b 4d 28 mov r9, QWORD PTR _ArgList$[rbp]
|
||||
00072 45 33 c0 xor r8d, r8d
|
||||
00075 48 8b 95 20 01
|
||||
0006f 4c 8b 4d 28 mov r9, QWORD PTR _ArgList$[rbp]
|
||||
00073 45 33 c0 xor r8d, r8d
|
||||
00076 48 8b 95 20 01
|
||||
00 00 mov rdx, QWORD PTR _Format$[rbp]
|
||||
0007c 48 8b c8 mov rcx, rax
|
||||
0007f e8 00 00 00 00 call _vfprintf_l
|
||||
00084 89 45 04 mov DWORD PTR _Result$[rbp], eax
|
||||
0007d 48 8b c8 mov rcx, rax
|
||||
00080 e8 00 00 00 00 call _vfprintf_l
|
||||
00085 89 45 04 mov DWORD PTR _Result$[rbp], eax
|
||||
|
||||
; 961 : __crt_va_end(_ArgList);
|
||||
|
||||
00087 48 c7 45 28 00
|
||||
00088 48 c7 45 28 00
|
||||
00 00 00 mov QWORD PTR _ArgList$[rbp], 0
|
||||
|
||||
; 962 : return _Result;
|
||||
|
||||
0008f 8b 45 04 mov eax, DWORD PTR _Result$[rbp]
|
||||
00090 8b 45 04 mov eax, DWORD PTR _Result$[rbp]
|
||||
|
||||
; 963 : }
|
||||
|
||||
00092 8b f8 mov edi, eax
|
||||
00094 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32]
|
||||
00098 48 8d 15 00 00
|
||||
00093 8b f8 mov edi, eax
|
||||
00095 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32]
|
||||
00099 48 8d 15 00 00
|
||||
00 00 lea rdx, OFFSET FLAT:printf$rtcFrameData
|
||||
0009f e8 00 00 00 00 call _RTC_CheckStackVars
|
||||
000a4 8b c7 mov eax, edi
|
||||
000a6 48 8b 8d f8 00
|
||||
000a0 e8 00 00 00 00 call _RTC_CheckStackVars
|
||||
000a5 8b c7 mov eax, edi
|
||||
000a7 48 8b 8d f8 00
|
||||
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
|
||||
000ad 48 33 cd xor rcx, rbp
|
||||
000b0 e8 00 00 00 00 call __security_check_cookie
|
||||
000b5 48 8d a5 08 01
|
||||
000ae 48 33 cd xor rcx, rbp
|
||||
000b1 e8 00 00 00 00 call __security_check_cookie
|
||||
000b6 48 8d a5 08 01
|
||||
00 00 lea rsp, QWORD PTR [rbp+264]
|
||||
000bc 5f pop rdi
|
||||
000bd 5d pop rbp
|
||||
000be c3 ret 0
|
||||
000bd 5f pop rdi
|
||||
000be 5d pop rbp
|
||||
000bf c3 ret 0
|
||||
printf ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Odtp /RTCsu /ZI
|
||||
@@ -1050,30 +1076,31 @@ $LN3:
|
||||
00022 48 8d 0d 00 00
|
||||
00 00 lea rcx, OFFSET FLAT:__C1EC35D3_stdio@h
|
||||
00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
||||
0002e 90 npad 1
|
||||
|
||||
; 645 : return __stdio_common_vfprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS, _Stream, _Format, _Locale, _ArgList);
|
||||
|
||||
0002e e8 00 00 00 00 call __local_stdio_printf_options
|
||||
00033 48 8b 8d f8 00
|
||||
0002f e8 00 00 00 00 call __local_stdio_printf_options
|
||||
00034 48 8b 8d f8 00
|
||||
00 00 mov rcx, QWORD PTR _ArgList$[rbp]
|
||||
0003a 48 89 4c 24 20 mov QWORD PTR [rsp+32], rcx
|
||||
0003f 4c 8b 8d f0 00
|
||||
0003b 48 89 4c 24 20 mov QWORD PTR [rsp+32], rcx
|
||||
00040 4c 8b 8d f0 00
|
||||
00 00 mov r9, QWORD PTR _Locale$[rbp]
|
||||
00046 4c 8b 85 e8 00
|
||||
00047 4c 8b 85 e8 00
|
||||
00 00 mov r8, QWORD PTR _Format$[rbp]
|
||||
0004d 48 8b 95 e0 00
|
||||
0004e 48 8b 95 e0 00
|
||||
00 00 mov rdx, QWORD PTR _Stream$[rbp]
|
||||
00054 48 8b 08 mov rcx, QWORD PTR [rax]
|
||||
00057 ff 15 00 00 00
|
||||
00055 48 8b 08 mov rcx, QWORD PTR [rax]
|
||||
00058 ff 15 00 00 00
|
||||
00 call QWORD PTR __imp___stdio_common_vfprintf
|
||||
|
||||
; 646 : }
|
||||
|
||||
0005d 48 8d a5 c8 00
|
||||
0005e 48 8d a5 c8 00
|
||||
00 00 lea rsp, QWORD PTR [rbp+200]
|
||||
00064 5f pop rdi
|
||||
00065 5d pop rbp
|
||||
00066 c3 ret 0
|
||||
00065 5f pop rdi
|
||||
00066 5d pop rbp
|
||||
00067 c3 ret 0
|
||||
_vfprintf_l ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Odtp /RTCsu /ZI
|
||||
@@ -1093,20 +1120,21 @@ $LN3:
|
||||
0000f 48 8d 0d 00 00
|
||||
00 00 lea rcx, OFFSET FLAT:__44420885_corecrt_stdio_config@h
|
||||
00016 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
||||
0001b 90 npad 1
|
||||
|
||||
; 91 : static unsigned __int64 _OptionsStorage;
|
||||
; 92 : return &_OptionsStorage;
|
||||
|
||||
0001b 48 8d 05 00 00
|
||||
0001c 48 8d 05 00 00
|
||||
00 00 lea rax, OFFSET FLAT:?_OptionsStorage@?1??__local_stdio_printf_options@@9@9 ; `__local_stdio_printf_options'::`2'::_OptionsStorage
|
||||
|
||||
; 93 : }
|
||||
|
||||
00022 48 8d a5 c8 00
|
||||
00023 48 8d a5 c8 00
|
||||
00 00 lea rsp, QWORD PTR [rbp+200]
|
||||
00029 5f pop rdi
|
||||
0002a 5d pop rbp
|
||||
0002b c3 ret 0
|
||||
0002a 5f pop rdi
|
||||
0002b 5d pop rbp
|
||||
0002c c3 ret 0
|
||||
__local_stdio_printf_options ENDP
|
||||
_TEXT ENDS
|
||||
END
|
||||
|
||||
Binary file not shown.
@@ -53,29 +53,25 @@ D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharp
|
||||
stb_image.c
|
||||
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\stb_image.c(832,17): warning C4047: “=”:“stbi_uc”与“char [33]”的间接级别不同
|
||||
StgSharpC.c
|
||||
C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\minwindef.h(130,1): warning C4005: “APIENTRY”: 宏重定义
|
||||
C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\minwindef.h(130,9): warning C4005: “APIENTRY”: 宏重定义
|
||||
(编译源文件“StgSharpC.c”)
|
||||
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\glfw3.h(123,1):
|
||||
参见“APIENTRY”的前一个定义
|
||||
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\glfw3.h(123,9):
|
||||
参见“APIENTRY”的前一个定义
|
||||
|
||||
C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wingdi.h(36,1): warning C4005: “WINGDIAPI”: 宏重定义
|
||||
C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wingdi.h(36,9): warning C4005: “WINGDIAPI”: 宏重定义
|
||||
(编译源文件“StgSharpC.c”)
|
||||
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\glfw3.h(133,1):
|
||||
参见“WINGDIAPI”的前一个定义
|
||||
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\glfw3.h(133,9):
|
||||
参见“WINGDIAPI”的前一个定义
|
||||
|
||||
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpC.c(10,70): warning C4028: 形参 2 与声明不同
|
||||
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpC.c(10,89): warning C4028: 形参 3 与声明不同
|
||||
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpC.c(11,1): warning C4029: 声明的形参表不同于定义
|
||||
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpC.c(10,20): warning C4029: 声明的形参表不同于定义
|
||||
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpC.c(13,26): warning C4244: “函数”: 从“uint64_t”转换到“GLuint”,可能丢失数据
|
||||
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpC.c(16,35): warning C4244: “函数”: 从“uint64_t”转换到“GLuint”,可能丢失数据
|
||||
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpC.c(35,18): warning C4047: “=”:“char”与“char [27]”的间接级别不同
|
||||
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpC.c(79,5): warning C4047: “return”:“char *”与“char (*)[512]”的间接级别不同
|
||||
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpC.c(36,18): warning C4047: “=”:“char”与“char [27]”的间接级别不同
|
||||
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpC.c(80,5): warning C4047: “return”:“char *”与“char (*)[512]”的间接级别不同
|
||||
vector.c
|
||||
正在运行 C/C++ 代码分析...
|
||||
正在生成代码...
|
||||
正在创建库 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.lib 和对象 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.exp
|
||||
LINK : warning LNK4098: 默认库“MSVCRT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library
|
||||
StgSharpC.vcxproj -> D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.dll
|
||||
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\stb_image.c(6525): warning C6262: 函数使用堆叠的 "35036" 字节。请考虑将一些数据移动到堆。
|
||||
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\stb_image.c(6612): warning C6262: 函数使用堆叠的 "34980" 字节。请考虑将一些数据移动到堆。
|
||||
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpC.c(33): warning C6282: 运算符不正确。
|
||||
|
||||
@@ -1,17 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<DEFECTS>
|
||||
<DEFECT>
|
||||
<SFA>
|
||||
<FILEPATH>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\</FILEPATH>
|
||||
<FILENAME>StgSharpC.c</FILENAME>
|
||||
<LINE>33</LINE>
|
||||
<COLUMN>12</COLUMN>
|
||||
</SFA>
|
||||
<DEFECTCODE>6282</DEFECTCODE>
|
||||
<DESCRIPTION>运算符不正确。</DESCRIPTION>
|
||||
<FUNCTION>loadGlfuncDefault</FUNCTION>
|
||||
<DECORATED>loadGlfuncDefault</DECORATED>
|
||||
<FUNCLINE>29</FUNCLINE>
|
||||
<PATH></PATH>
|
||||
</DEFECT>
|
||||
</DEFECTS>
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,2 +1,2 @@
|
||||
PlatformToolSet=v143:VCToolArchitecture=Native64Bit:VCToolsVersion=14.39.33519:TargetPlatformVersion=10.0.22621.0:
|
||||
PlatformToolSet=v143:VCToolArchitecture=Native64Bit:VCToolsVersion=14.41.34120:TargetPlatformVersion=10.0.22621.0:
|
||||
Debug|x64|D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\|
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@@ -1,4 +1,4 @@
|
||||
; Listing generated by Microsoft (R) Optimizing Compiler Version 19.39.33523.0
|
||||
; Listing generated by Microsoft (R) Optimizing Compiler Version 19.41.34120.0
|
||||
|
||||
include listing.inc
|
||||
|
||||
@@ -10,20 +10,20 @@ COMM infolog:BYTE:0200H
|
||||
_DATA ENDS
|
||||
msvcjmc SEGMENT
|
||||
__A19B9DB6_ssgc_framework@h DB 01H
|
||||
__5BC5AF51_mmintrin@h DB 01H
|
||||
__4B783B3C_concurrencysal@h DB 01H
|
||||
__137BB1BE_sal@h DB 01H
|
||||
__805F4069_vadefs@h DB 01H
|
||||
__1EAACA9B_vcruntime@h DB 01H
|
||||
__7583A0D2_mmintrin@h DB 01H
|
||||
__DDA0A690_concurrencysal@h DB 01H
|
||||
__9ECC08BE_sal@h DB 01H
|
||||
__E05D733A_vadefs@h DB 01H
|
||||
__6A355E0E_vcruntime@h DB 01H
|
||||
__1B0272D9_corecrt@h DB 01H
|
||||
__45DED006_corecrt_malloc@h DB 01H
|
||||
__FA77ED4C_malloc@h DB 01H
|
||||
__9E7FA6CF_xmmintrin@h DB 01H
|
||||
__EAE0325A_xmmintrin@h DB 01H
|
||||
__0ED14FEE_winpackagefamily@h DB 01H
|
||||
__F92EF742_winapifamily@h DB 01H
|
||||
__22E515EB_sdkddkver@h DB 01H
|
||||
__1227BCE2_excpt@h DB 01H
|
||||
__CC8D90C0_stdarg@h DB 01H
|
||||
__A09A3A7D_excpt@h DB 01H
|
||||
__AC8FA393_stdarg@h DB 01H
|
||||
__29F49F40_specstrings_undef@h DB 01H
|
||||
__D0F42932_specstrings_strict@h DB 01H
|
||||
__F00405FD_sdv_driverspecs@h DB 01H
|
||||
@@ -34,7 +34,7 @@ __1EC467ED_ctype@h DB 01H
|
||||
__98517906_kernelspecs@h DB 01H
|
||||
__D3497022_basetsd@h DB 01H
|
||||
__61CC25A1_errno@h DB 01H
|
||||
__0504B279_vcruntime_string@h DB 01H
|
||||
__890838BD_vcruntime_string@h DB 01H
|
||||
__E4C945B4_corecrt_memcpy_s@h DB 01H
|
||||
__8EAFF484_corecrt_memory@h DB 01H
|
||||
__6490AEC5_corecrt_wstring@h DB 01H
|
||||
@@ -110,26 +110,26 @@ __577CE3E7_ime_cmodes@h DB 01H
|
||||
__1E72C31E_imm@h DB 01H
|
||||
__E15BF856_windows@h DB 01H
|
||||
__61B03275_ssgc_internal@h DB 01H
|
||||
__F8522E0F_stdint@h DB 01H
|
||||
__98501D5C_stdint@h DB 01H
|
||||
__874AB8BA_khrplatform@h DB 01H
|
||||
__8DCB230D_gl@h DB 01H
|
||||
__5F89FF5A_wgl@h DB 01H
|
||||
__13F5961F_stddef@h DB 01H
|
||||
__B47D1049_glfw3@h DB 01H
|
||||
__FB1D2F03_emmintrin@h DB 01H
|
||||
__24BC478A_pmmintrin@h DB 01H
|
||||
__94653408_tmmintrin@h DB 01H
|
||||
__BD5E218B_smmintrin@h DB 01H
|
||||
__D83CA847_nmmintrin@h DB 01H
|
||||
__0D875209_wmmintrin@h DB 01H
|
||||
__C6131F0E_zmmintrin@h DB 01H
|
||||
__F107BDC4_immintrin@h DB 01H
|
||||
__8F82BB96_emmintrin@h DB 01H
|
||||
__5023D31F_pmmintrin@h DB 01H
|
||||
__E0FAA09D_tmmintrin@h DB 01H
|
||||
__C9C1B51E_smmintrin@h DB 01H
|
||||
__ACA33CD2_nmmintrin@h DB 01H
|
||||
__7918C69C_wmmintrin@h DB 01H
|
||||
__B28C8B9B_zmmintrin@h DB 01H
|
||||
__85982951_immintrin@h DB 01H
|
||||
__44420885_corecrt_stdio_config@h DB 01H
|
||||
__AB601D8D_corecrt_wstdio@h DB 01H
|
||||
__C1EC35D3_stdio@h DB 01H
|
||||
__FD6DBD68_corecrt_search@h DB 01H
|
||||
__E2E33A61_corecrt_wstdlib@h DB 01H
|
||||
__46240030_limits@h DB 01H
|
||||
__26263363_limits@h DB 01H
|
||||
__6E5ACABA_stdlib@h DB 01H
|
||||
__5274102E_stb_image@h DB 01H
|
||||
__CE2BBC10_StgSharpC@h DB 01H
|
||||
@@ -143,7 +143,7 @@ EXTRN __CheckForDebuggerJustMyCode:PROC
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$DllMain DD imagerel $LN9
|
||||
DD imagerel $LN9+133
|
||||
DD imagerel $LN9+134
|
||||
DD imagerel $unwind$DllMain
|
||||
pdata ENDS
|
||||
; COMDAT rtc$TMZ
|
||||
@@ -192,26 +192,27 @@ $LN9:
|
||||
0001c 48 8d 0d 00 00
|
||||
00 00 lea rcx, OFFSET FLAT:__9C9DAB70_dllmain@c
|
||||
00023 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
||||
00028 90 npad 1
|
||||
|
||||
; 15 : switch (ul_reason_for_call)
|
||||
|
||||
00028 8b 85 f8 00 00
|
||||
00029 8b 85 f8 00 00
|
||||
00 mov eax, DWORD PTR ul_reason_for_call$[rbp]
|
||||
0002e 89 85 c0 00 00
|
||||
0002f 89 85 c0 00 00
|
||||
00 mov DWORD PTR tv64[rbp], eax
|
||||
00034 83 bd c0 00 00
|
||||
00035 83 bd c0 00 00
|
||||
00 00 cmp DWORD PTR tv64[rbp], 0
|
||||
0003b 74 32 je SHORT $LN7@DllMain
|
||||
0003d 83 bd c0 00 00
|
||||
0003c 74 32 je SHORT $LN7@DllMain
|
||||
0003e 83 bd c0 00 00
|
||||
00 01 cmp DWORD PTR tv64[rbp], 1
|
||||
00044 74 14 je SHORT $LN4@DllMain
|
||||
00046 83 bd c0 00 00
|
||||
00045 74 14 je SHORT $LN4@DllMain
|
||||
00047 83 bd c0 00 00
|
||||
00 02 cmp DWORD PTR tv64[rbp], 2
|
||||
0004d 74 12 je SHORT $LN5@DllMain
|
||||
0004f 83 bd c0 00 00
|
||||
0004e 74 12 je SHORT $LN5@DllMain
|
||||
00050 83 bd c0 00 00
|
||||
00 03 cmp DWORD PTR tv64[rbp], 3
|
||||
00056 74 10 je SHORT $LN6@DllMain
|
||||
00058 eb 1c jmp SHORT $LN2@DllMain
|
||||
00057 74 10 je SHORT $LN6@DllMain
|
||||
00059 eb 1c jmp SHORT $LN2@DllMain
|
||||
$LN4@DllMain:
|
||||
|
||||
; 16 : {
|
||||
@@ -219,32 +220,32 @@ $LN4@DllMain:
|
||||
; 18 :
|
||||
; 19 : return 1;
|
||||
|
||||
0005a b8 01 00 00 00 mov eax, 1
|
||||
0005f eb 1a jmp SHORT $LN1@DllMain
|
||||
0005b b8 01 00 00 00 mov eax, 1
|
||||
00060 eb 1a jmp SHORT $LN1@DllMain
|
||||
$LN5@DllMain:
|
||||
|
||||
; 20 :
|
||||
; 21 : case DLL_THREAD_ATTACH:
|
||||
; 22 : return 1;
|
||||
|
||||
00061 b8 01 00 00 00 mov eax, 1
|
||||
00066 eb 13 jmp SHORT $LN1@DllMain
|
||||
00062 b8 01 00 00 00 mov eax, 1
|
||||
00067 eb 13 jmp SHORT $LN1@DllMain
|
||||
$LN6@DllMain:
|
||||
|
||||
; 23 :
|
||||
; 24 : case DLL_THREAD_DETACH:
|
||||
; 25 : return 1;
|
||||
|
||||
00068 b8 01 00 00 00 mov eax, 1
|
||||
0006d eb 0c jmp SHORT $LN1@DllMain
|
||||
00069 b8 01 00 00 00 mov eax, 1
|
||||
0006e eb 0c jmp SHORT $LN1@DllMain
|
||||
$LN7@DllMain:
|
||||
|
||||
; 26 :
|
||||
; 27 : case DLL_PROCESS_DETACH:
|
||||
; 28 : return 1;
|
||||
|
||||
0006f b8 01 00 00 00 mov eax, 1
|
||||
00074 eb 05 jmp SHORT $LN1@DllMain
|
||||
00070 b8 01 00 00 00 mov eax, 1
|
||||
00075 eb 05 jmp SHORT $LN1@DllMain
|
||||
$LN2@DllMain:
|
||||
|
||||
; 29 :
|
||||
@@ -252,16 +253,16 @@ $LN2@DllMain:
|
||||
; 31 : }
|
||||
; 32 : return TRUE;
|
||||
|
||||
00076 b8 01 00 00 00 mov eax, 1
|
||||
00077 b8 01 00 00 00 mov eax, 1
|
||||
$LN1@DllMain:
|
||||
|
||||
; 33 : }
|
||||
|
||||
0007b 48 8d a5 d8 00
|
||||
0007c 48 8d a5 d8 00
|
||||
00 00 lea rsp, QWORD PTR [rbp+216]
|
||||
00082 5f pop rdi
|
||||
00083 5d pop rbp
|
||||
00084 c3 ret 0
|
||||
00083 5f pop rdi
|
||||
00084 5d pop rbp
|
||||
00085 c3 ret 0
|
||||
DllMain ENDP
|
||||
_TEXT ENDS
|
||||
END
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<DEFECTS></DEFECTS>
|
||||
Binary file not shown.
Binary file not shown.
+157
-153
@@ -1,4 +1,4 @@
|
||||
; Listing generated by Microsoft (R) Optimizing Compiler Version 19.39.33523.0
|
||||
; Listing generated by Microsoft (R) Optimizing Compiler Version 19.41.34120.0
|
||||
|
||||
include listing.inc
|
||||
|
||||
@@ -10,20 +10,20 @@ COMM infolog:BYTE:0200H
|
||||
_DATA ENDS
|
||||
msvcjmc SEGMENT
|
||||
__A19B9DB6_ssgc_framework@h DB 01H
|
||||
__5BC5AF51_mmintrin@h DB 01H
|
||||
__4B783B3C_concurrencysal@h DB 01H
|
||||
__137BB1BE_sal@h DB 01H
|
||||
__805F4069_vadefs@h DB 01H
|
||||
__1EAACA9B_vcruntime@h DB 01H
|
||||
__7583A0D2_mmintrin@h DB 01H
|
||||
__DDA0A690_concurrencysal@h DB 01H
|
||||
__9ECC08BE_sal@h DB 01H
|
||||
__E05D733A_vadefs@h DB 01H
|
||||
__6A355E0E_vcruntime@h DB 01H
|
||||
__1B0272D9_corecrt@h DB 01H
|
||||
__45DED006_corecrt_malloc@h DB 01H
|
||||
__FA77ED4C_malloc@h DB 01H
|
||||
__9E7FA6CF_xmmintrin@h DB 01H
|
||||
__EAE0325A_xmmintrin@h DB 01H
|
||||
__0ED14FEE_winpackagefamily@h DB 01H
|
||||
__F92EF742_winapifamily@h DB 01H
|
||||
__22E515EB_sdkddkver@h DB 01H
|
||||
__1227BCE2_excpt@h DB 01H
|
||||
__CC8D90C0_stdarg@h DB 01H
|
||||
__A09A3A7D_excpt@h DB 01H
|
||||
__AC8FA393_stdarg@h DB 01H
|
||||
__29F49F40_specstrings_undef@h DB 01H
|
||||
__D0F42932_specstrings_strict@h DB 01H
|
||||
__F00405FD_sdv_driverspecs@h DB 01H
|
||||
@@ -34,7 +34,7 @@ __1EC467ED_ctype@h DB 01H
|
||||
__98517906_kernelspecs@h DB 01H
|
||||
__D3497022_basetsd@h DB 01H
|
||||
__61CC25A1_errno@h DB 01H
|
||||
__0504B279_vcruntime_string@h DB 01H
|
||||
__890838BD_vcruntime_string@h DB 01H
|
||||
__E4C945B4_corecrt_memcpy_s@h DB 01H
|
||||
__8EAFF484_corecrt_memory@h DB 01H
|
||||
__6490AEC5_corecrt_wstring@h DB 01H
|
||||
@@ -110,26 +110,26 @@ __577CE3E7_ime_cmodes@h DB 01H
|
||||
__1E72C31E_imm@h DB 01H
|
||||
__E15BF856_windows@h DB 01H
|
||||
__61B03275_ssgc_internal@h DB 01H
|
||||
__F8522E0F_stdint@h DB 01H
|
||||
__98501D5C_stdint@h DB 01H
|
||||
__874AB8BA_khrplatform@h DB 01H
|
||||
__8DCB230D_gl@h DB 01H
|
||||
__5F89FF5A_wgl@h DB 01H
|
||||
__13F5961F_stddef@h DB 01H
|
||||
__B47D1049_glfw3@h DB 01H
|
||||
__FB1D2F03_emmintrin@h DB 01H
|
||||
__24BC478A_pmmintrin@h DB 01H
|
||||
__94653408_tmmintrin@h DB 01H
|
||||
__BD5E218B_smmintrin@h DB 01H
|
||||
__D83CA847_nmmintrin@h DB 01H
|
||||
__0D875209_wmmintrin@h DB 01H
|
||||
__C6131F0E_zmmintrin@h DB 01H
|
||||
__F107BDC4_immintrin@h DB 01H
|
||||
__8F82BB96_emmintrin@h DB 01H
|
||||
__5023D31F_pmmintrin@h DB 01H
|
||||
__E0FAA09D_tmmintrin@h DB 01H
|
||||
__C9C1B51E_smmintrin@h DB 01H
|
||||
__ACA33CD2_nmmintrin@h DB 01H
|
||||
__7918C69C_wmmintrin@h DB 01H
|
||||
__B28C8B9B_zmmintrin@h DB 01H
|
||||
__85982951_immintrin@h DB 01H
|
||||
__44420885_corecrt_stdio_config@h DB 01H
|
||||
__AB601D8D_corecrt_wstdio@h DB 01H
|
||||
__C1EC35D3_stdio@h DB 01H
|
||||
__FD6DBD68_corecrt_search@h DB 01H
|
||||
__E2E33A61_corecrt_wstdlib@h DB 01H
|
||||
__46240030_limits@h DB 01H
|
||||
__26263363_limits@h DB 01H
|
||||
__6E5ACABA_stdlib@h DB 01H
|
||||
__5274102E_stb_image@h DB 01H
|
||||
__CE2BBC10_StgSharpC@h DB 01H
|
||||
@@ -146,19 +146,19 @@ EXTRN __CheckForDebuggerJustMyCode:PROC
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$transpose2to3 DD imagerel $LN3
|
||||
DD imagerel $LN3+270
|
||||
DD imagerel $LN3+271
|
||||
DD imagerel $unwind$transpose2to3
|
||||
pdata ENDS
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$transpose2to4 DD imagerel $LN3
|
||||
DD imagerel $LN3+304
|
||||
DD imagerel $LN3+305
|
||||
DD imagerel $unwind$transpose2to4
|
||||
pdata ENDS
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$deinit_mat2 DD imagerel $LN3
|
||||
DD imagerel $LN3+54
|
||||
DD imagerel $LN3+56
|
||||
DD imagerel $unwind$deinit_mat2
|
||||
pdata ENDS
|
||||
; COMDAT rtc$TMZ
|
||||
@@ -216,21 +216,23 @@ $LN3:
|
||||
00013 48 8d 0d 00 00
|
||||
00 00 lea rcx, OFFSET FLAT:__54E5184D_mat2@c
|
||||
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
||||
0001f 90 npad 1
|
||||
|
||||
; 27 : _aligned_free(mat);
|
||||
|
||||
0001f 48 8b 8d e0 00
|
||||
00020 48 8b 8d e0 00
|
||||
00 00 mov rcx, QWORD PTR mat$[rbp]
|
||||
00026 ff 15 00 00 00
|
||||
00027 ff 15 00 00 00
|
||||
00 call QWORD PTR __imp__aligned_free
|
||||
0002d 90 npad 1
|
||||
|
||||
; 28 : }
|
||||
|
||||
0002c 48 8d a5 c8 00
|
||||
0002e 48 8d a5 c8 00
|
||||
00 00 lea rsp, QWORD PTR [rbp+200]
|
||||
00033 5f pop rdi
|
||||
00034 5d pop rbp
|
||||
00035 c3 ret 0
|
||||
00035 5f pop rdi
|
||||
00036 5d pop rbp
|
||||
00037 c3 ret 0
|
||||
deinit_mat2 ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Odtp /RTCsu /ZI
|
||||
@@ -256,103 +258,104 @@ $LN3:
|
||||
00018 48 8d 0d 00 00
|
||||
00 00 lea rcx, OFFSET FLAT:__54E5184D_mat2@c
|
||||
0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
||||
00024 90 npad 1
|
||||
|
||||
; 16 : __m128 t0 = _mm_shuffle_ps(ALIGN(source->colum[0]), ALIGN(source->colum[1]), _MM_SHUFFLE(1, 0, 1, 0));
|
||||
|
||||
00024 b8 10 00 00 00 mov eax, 16
|
||||
00029 48 6b c0 01 imul rax, rax, 1
|
||||
0002d 48 8b 8d 40 01
|
||||
00025 b8 10 00 00 00 mov eax, 16
|
||||
0002a 48 6b c0 01 imul rax, rax, 1
|
||||
0002e 48 8b 8d 40 01
|
||||
00 00 mov rcx, QWORD PTR source$[rbp]
|
||||
00034 48 03 c8 add rcx, rax
|
||||
00037 48 8b c1 mov rax, rcx
|
||||
0003a 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
0003d b8 10 00 00 00 mov eax, 16
|
||||
00042 48 6b c0 00 imul rax, rax, 0
|
||||
00046 48 8b 8d 40 01
|
||||
00035 48 03 c8 add rcx, rax
|
||||
00038 48 8b c1 mov rax, rcx
|
||||
0003b 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
0003e b8 10 00 00 00 mov eax, 16
|
||||
00043 48 6b c0 00 imul rax, rax, 0
|
||||
00047 48 8b 8d 40 01
|
||||
00 00 mov rcx, QWORD PTR source$[rbp]
|
||||
0004d 48 03 c8 add rcx, rax
|
||||
00050 48 8b c1 mov rax, rcx
|
||||
00053 0f 10 08 movups xmm1, XMMWORD PTR [rax]
|
||||
00056 0f c6 c8 44 shufps xmm1, xmm0, 68 ; 00000044H
|
||||
0005a 0f 28 c1 movaps xmm0, xmm1
|
||||
0005d 0f 29 45 10 movaps XMMWORD PTR t0$[rbp], xmm0
|
||||
0004e 48 03 c8 add rcx, rax
|
||||
00051 48 8b c1 mov rax, rcx
|
||||
00054 0f 10 08 movups xmm1, XMMWORD PTR [rax]
|
||||
00057 0f c6 c8 44 shufps xmm1, xmm0, 68 ; 00000044H
|
||||
0005b 0f 28 c1 movaps xmm0, xmm1
|
||||
0005e 0f 29 45 10 movaps XMMWORD PTR t0$[rbp], xmm0
|
||||
|
||||
; 17 : __m128 t1 = _mm_shuffle_ps(ALIGN(source->colum[0]), ALIGN(source->colum[1]), _MM_SHUFFLE(3, 2, 3, 2));
|
||||
|
||||
00061 b8 10 00 00 00 mov eax, 16
|
||||
00066 48 6b c0 01 imul rax, rax, 1
|
||||
0006a 48 8b 8d 40 01
|
||||
00062 b8 10 00 00 00 mov eax, 16
|
||||
00067 48 6b c0 01 imul rax, rax, 1
|
||||
0006b 48 8b 8d 40 01
|
||||
00 00 mov rcx, QWORD PTR source$[rbp]
|
||||
00071 48 03 c8 add rcx, rax
|
||||
00074 48 8b c1 mov rax, rcx
|
||||
00077 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
0007a b8 10 00 00 00 mov eax, 16
|
||||
0007f 48 6b c0 00 imul rax, rax, 0
|
||||
00083 48 8b 8d 40 01
|
||||
00072 48 03 c8 add rcx, rax
|
||||
00075 48 8b c1 mov rax, rcx
|
||||
00078 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
0007b b8 10 00 00 00 mov eax, 16
|
||||
00080 48 6b c0 00 imul rax, rax, 0
|
||||
00084 48 8b 8d 40 01
|
||||
00 00 mov rcx, QWORD PTR source$[rbp]
|
||||
0008a 48 03 c8 add rcx, rax
|
||||
0008d 48 8b c1 mov rax, rcx
|
||||
00090 0f 10 08 movups xmm1, XMMWORD PTR [rax]
|
||||
00093 0f c6 c8 ee shufps xmm1, xmm0, 238 ; 000000eeH
|
||||
00097 0f 28 c1 movaps xmm0, xmm1
|
||||
0009a 0f 29 45 40 movaps XMMWORD PTR t1$[rbp], xmm0
|
||||
0008b 48 03 c8 add rcx, rax
|
||||
0008e 48 8b c1 mov rax, rcx
|
||||
00091 0f 10 08 movups xmm1, XMMWORD PTR [rax]
|
||||
00094 0f c6 c8 ee shufps xmm1, xmm0, 238 ; 000000eeH
|
||||
00098 0f 28 c1 movaps xmm0, xmm1
|
||||
0009b 0f 29 45 40 movaps XMMWORD PTR t1$[rbp], xmm0
|
||||
|
||||
; 18 :
|
||||
; 19 : target->colum[0] = _mm_shuffle_ps(t0, zeroVec, _MM_SHUFFLE(2, 0, 2, 0));
|
||||
|
||||
0009e 0f 57 c0 xorps xmm0, xmm0
|
||||
000a1 0f 28 4d 10 movaps xmm1, XMMWORD PTR t0$[rbp]
|
||||
000a5 0f c6 c8 88 shufps xmm1, xmm0, 136 ; 00000088H
|
||||
000a9 0f 28 c1 movaps xmm0, xmm1
|
||||
000ac b8 10 00 00 00 mov eax, 16
|
||||
000b1 48 6b c0 00 imul rax, rax, 0
|
||||
000b5 48 8b 8d 48 01
|
||||
0009f 0f 57 c0 xorps xmm0, xmm0
|
||||
000a2 0f 28 4d 10 movaps xmm1, XMMWORD PTR t0$[rbp]
|
||||
000a6 0f c6 c8 88 shufps xmm1, xmm0, 136 ; 00000088H
|
||||
000aa 0f 28 c1 movaps xmm0, xmm1
|
||||
000ad b8 10 00 00 00 mov eax, 16
|
||||
000b2 48 6b c0 00 imul rax, rax, 0
|
||||
000b6 48 8b 8d 48 01
|
||||
00 00 mov rcx, QWORD PTR target$[rbp]
|
||||
000bc 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
000bd 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
|
||||
; 20 : target->colum[1] = _mm_shuffle_ps(t0, zeroVec, _MM_SHUFFLE(3, 1, 3, 1));
|
||||
|
||||
000c0 0f 57 c0 xorps xmm0, xmm0
|
||||
000c3 0f 28 4d 10 movaps xmm1, XMMWORD PTR t0$[rbp]
|
||||
000c7 0f c6 c8 dd shufps xmm1, xmm0, 221 ; 000000ddH
|
||||
000cb 0f 28 c1 movaps xmm0, xmm1
|
||||
000ce b8 10 00 00 00 mov eax, 16
|
||||
000d3 48 6b c0 01 imul rax, rax, 1
|
||||
000d7 48 8b 8d 48 01
|
||||
000c1 0f 57 c0 xorps xmm0, xmm0
|
||||
000c4 0f 28 4d 10 movaps xmm1, XMMWORD PTR t0$[rbp]
|
||||
000c8 0f c6 c8 dd shufps xmm1, xmm0, 221 ; 000000ddH
|
||||
000cc 0f 28 c1 movaps xmm0, xmm1
|
||||
000cf b8 10 00 00 00 mov eax, 16
|
||||
000d4 48 6b c0 01 imul rax, rax, 1
|
||||
000d8 48 8b 8d 48 01
|
||||
00 00 mov rcx, QWORD PTR target$[rbp]
|
||||
000de 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
000df 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
|
||||
; 21 : target->colum[2] = _mm_shuffle_ps(t1, zeroVec, _MM_SHUFFLE(2, 0, 2, 0));
|
||||
|
||||
000e2 0f 57 c0 xorps xmm0, xmm0
|
||||
000e5 0f 28 4d 40 movaps xmm1, XMMWORD PTR t1$[rbp]
|
||||
000e9 0f c6 c8 88 shufps xmm1, xmm0, 136 ; 00000088H
|
||||
000ed 0f 28 c1 movaps xmm0, xmm1
|
||||
000f0 b8 10 00 00 00 mov eax, 16
|
||||
000f5 48 6b c0 02 imul rax, rax, 2
|
||||
000f9 48 8b 8d 48 01
|
||||
000e3 0f 57 c0 xorps xmm0, xmm0
|
||||
000e6 0f 28 4d 40 movaps xmm1, XMMWORD PTR t1$[rbp]
|
||||
000ea 0f c6 c8 88 shufps xmm1, xmm0, 136 ; 00000088H
|
||||
000ee 0f 28 c1 movaps xmm0, xmm1
|
||||
000f1 b8 10 00 00 00 mov eax, 16
|
||||
000f6 48 6b c0 02 imul rax, rax, 2
|
||||
000fa 48 8b 8d 48 01
|
||||
00 00 mov rcx, QWORD PTR target$[rbp]
|
||||
00100 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
00101 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
|
||||
; 22 : target->colum[3] = _mm_shuffle_ps(t1, zeroVec, _MM_SHUFFLE(3, 1, 3, 1));
|
||||
|
||||
00104 0f 57 c0 xorps xmm0, xmm0
|
||||
00107 0f 28 4d 40 movaps xmm1, XMMWORD PTR t1$[rbp]
|
||||
0010b 0f c6 c8 dd shufps xmm1, xmm0, 221 ; 000000ddH
|
||||
0010f 0f 28 c1 movaps xmm0, xmm1
|
||||
00112 b8 10 00 00 00 mov eax, 16
|
||||
00117 48 6b c0 03 imul rax, rax, 3
|
||||
0011b 48 8b 8d 48 01
|
||||
00105 0f 57 c0 xorps xmm0, xmm0
|
||||
00108 0f 28 4d 40 movaps xmm1, XMMWORD PTR t1$[rbp]
|
||||
0010c 0f c6 c8 dd shufps xmm1, xmm0, 221 ; 000000ddH
|
||||
00110 0f 28 c1 movaps xmm0, xmm1
|
||||
00113 b8 10 00 00 00 mov eax, 16
|
||||
00118 48 6b c0 03 imul rax, rax, 3
|
||||
0011c 48 8b 8d 48 01
|
||||
00 00 mov rcx, QWORD PTR target$[rbp]
|
||||
00122 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
00123 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
|
||||
; 23 : }
|
||||
|
||||
00126 48 8d a5 28 01
|
||||
00127 48 8d a5 28 01
|
||||
00 00 lea rsp, QWORD PTR [rbp+296]
|
||||
0012d 5f pop rdi
|
||||
0012e 5d pop rbp
|
||||
0012f c3 ret 0
|
||||
0012e 5f pop rdi
|
||||
0012f 5d pop rbp
|
||||
00130 c3 ret 0
|
||||
transpose2to4 ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Odtp /RTCsu /ZI
|
||||
@@ -378,91 +381,92 @@ $LN3:
|
||||
00018 48 8d 0d 00 00
|
||||
00 00 lea rcx, OFFSET FLAT:__54E5184D_mat2@c
|
||||
0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
||||
00024 90 npad 1
|
||||
|
||||
; 6 : __m128 t0 = _mm_shuffle_ps(ALIGN(source->colum[0]), ALIGN(source->colum[1]), _MM_SHUFFLE(1, 0, 1, 0));
|
||||
|
||||
00024 b8 10 00 00 00 mov eax, 16
|
||||
00029 48 6b c0 01 imul rax, rax, 1
|
||||
0002d 48 8b 8d 40 01
|
||||
00025 b8 10 00 00 00 mov eax, 16
|
||||
0002a 48 6b c0 01 imul rax, rax, 1
|
||||
0002e 48 8b 8d 40 01
|
||||
00 00 mov rcx, QWORD PTR source$[rbp]
|
||||
00034 48 03 c8 add rcx, rax
|
||||
00037 48 8b c1 mov rax, rcx
|
||||
0003a 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
0003d b8 10 00 00 00 mov eax, 16
|
||||
00042 48 6b c0 00 imul rax, rax, 0
|
||||
00046 48 8b 8d 40 01
|
||||
00035 48 03 c8 add rcx, rax
|
||||
00038 48 8b c1 mov rax, rcx
|
||||
0003b 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
0003e b8 10 00 00 00 mov eax, 16
|
||||
00043 48 6b c0 00 imul rax, rax, 0
|
||||
00047 48 8b 8d 40 01
|
||||
00 00 mov rcx, QWORD PTR source$[rbp]
|
||||
0004d 48 03 c8 add rcx, rax
|
||||
00050 48 8b c1 mov rax, rcx
|
||||
00053 0f 10 08 movups xmm1, XMMWORD PTR [rax]
|
||||
00056 0f c6 c8 44 shufps xmm1, xmm0, 68 ; 00000044H
|
||||
0005a 0f 28 c1 movaps xmm0, xmm1
|
||||
0005d 0f 29 45 10 movaps XMMWORD PTR t0$[rbp], xmm0
|
||||
0004e 48 03 c8 add rcx, rax
|
||||
00051 48 8b c1 mov rax, rcx
|
||||
00054 0f 10 08 movups xmm1, XMMWORD PTR [rax]
|
||||
00057 0f c6 c8 44 shufps xmm1, xmm0, 68 ; 00000044H
|
||||
0005b 0f 28 c1 movaps xmm0, xmm1
|
||||
0005e 0f 29 45 10 movaps XMMWORD PTR t0$[rbp], xmm0
|
||||
|
||||
; 7 : __m128 t1 = _mm_shuffle_ps(ALIGN(source->colum[0]), ALIGN(source->colum[1]), _MM_SHUFFLE(3, 2, 3, 2));
|
||||
|
||||
00061 b8 10 00 00 00 mov eax, 16
|
||||
00066 48 6b c0 01 imul rax, rax, 1
|
||||
0006a 48 8b 8d 40 01
|
||||
00062 b8 10 00 00 00 mov eax, 16
|
||||
00067 48 6b c0 01 imul rax, rax, 1
|
||||
0006b 48 8b 8d 40 01
|
||||
00 00 mov rcx, QWORD PTR source$[rbp]
|
||||
00071 48 03 c8 add rcx, rax
|
||||
00074 48 8b c1 mov rax, rcx
|
||||
00077 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
0007a b8 10 00 00 00 mov eax, 16
|
||||
0007f 48 6b c0 00 imul rax, rax, 0
|
||||
00083 48 8b 8d 40 01
|
||||
00072 48 03 c8 add rcx, rax
|
||||
00075 48 8b c1 mov rax, rcx
|
||||
00078 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
0007b b8 10 00 00 00 mov eax, 16
|
||||
00080 48 6b c0 00 imul rax, rax, 0
|
||||
00084 48 8b 8d 40 01
|
||||
00 00 mov rcx, QWORD PTR source$[rbp]
|
||||
0008a 48 03 c8 add rcx, rax
|
||||
0008d 48 8b c1 mov rax, rcx
|
||||
00090 0f 10 08 movups xmm1, XMMWORD PTR [rax]
|
||||
00093 0f c6 c8 ee shufps xmm1, xmm0, 238 ; 000000eeH
|
||||
00097 0f 28 c1 movaps xmm0, xmm1
|
||||
0009a 0f 29 45 40 movaps XMMWORD PTR t1$[rbp], xmm0
|
||||
0008b 48 03 c8 add rcx, rax
|
||||
0008e 48 8b c1 mov rax, rcx
|
||||
00091 0f 10 08 movups xmm1, XMMWORD PTR [rax]
|
||||
00094 0f c6 c8 ee shufps xmm1, xmm0, 238 ; 000000eeH
|
||||
00098 0f 28 c1 movaps xmm0, xmm1
|
||||
0009b 0f 29 45 40 movaps XMMWORD PTR t1$[rbp], xmm0
|
||||
|
||||
; 8 :
|
||||
; 9 : target->colum[0] = _mm_shuffle_ps(t0, zeroVec, _MM_SHUFFLE(2, 0, 2, 0));
|
||||
|
||||
0009e 0f 57 c0 xorps xmm0, xmm0
|
||||
000a1 0f 28 4d 10 movaps xmm1, XMMWORD PTR t0$[rbp]
|
||||
000a5 0f c6 c8 88 shufps xmm1, xmm0, 136 ; 00000088H
|
||||
000a9 0f 28 c1 movaps xmm0, xmm1
|
||||
000ac b8 10 00 00 00 mov eax, 16
|
||||
000b1 48 6b c0 00 imul rax, rax, 0
|
||||
000b5 48 8b 8d 48 01
|
||||
0009f 0f 57 c0 xorps xmm0, xmm0
|
||||
000a2 0f 28 4d 10 movaps xmm1, XMMWORD PTR t0$[rbp]
|
||||
000a6 0f c6 c8 88 shufps xmm1, xmm0, 136 ; 00000088H
|
||||
000aa 0f 28 c1 movaps xmm0, xmm1
|
||||
000ad b8 10 00 00 00 mov eax, 16
|
||||
000b2 48 6b c0 00 imul rax, rax, 0
|
||||
000b6 48 8b 8d 48 01
|
||||
00 00 mov rcx, QWORD PTR target$[rbp]
|
||||
000bc 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
000bd 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
|
||||
; 10 : target->colum[1] = _mm_shuffle_ps(t0, zeroVec, _MM_SHUFFLE(3, 1, 3, 1));
|
||||
|
||||
000c0 0f 57 c0 xorps xmm0, xmm0
|
||||
000c3 0f 28 4d 10 movaps xmm1, XMMWORD PTR t0$[rbp]
|
||||
000c7 0f c6 c8 dd shufps xmm1, xmm0, 221 ; 000000ddH
|
||||
000cb 0f 28 c1 movaps xmm0, xmm1
|
||||
000ce b8 10 00 00 00 mov eax, 16
|
||||
000d3 48 6b c0 01 imul rax, rax, 1
|
||||
000d7 48 8b 8d 48 01
|
||||
000c1 0f 57 c0 xorps xmm0, xmm0
|
||||
000c4 0f 28 4d 10 movaps xmm1, XMMWORD PTR t0$[rbp]
|
||||
000c8 0f c6 c8 dd shufps xmm1, xmm0, 221 ; 000000ddH
|
||||
000cc 0f 28 c1 movaps xmm0, xmm1
|
||||
000cf b8 10 00 00 00 mov eax, 16
|
||||
000d4 48 6b c0 01 imul rax, rax, 1
|
||||
000d8 48 8b 8d 48 01
|
||||
00 00 mov rcx, QWORD PTR target$[rbp]
|
||||
000de 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
000df 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
|
||||
; 11 : target->colum[2] = _mm_shuffle_ps(t1, zeroVec, _MM_SHUFFLE(2, 0, 2, 0));
|
||||
|
||||
000e2 0f 57 c0 xorps xmm0, xmm0
|
||||
000e5 0f 28 4d 40 movaps xmm1, XMMWORD PTR t1$[rbp]
|
||||
000e9 0f c6 c8 88 shufps xmm1, xmm0, 136 ; 00000088H
|
||||
000ed 0f 28 c1 movaps xmm0, xmm1
|
||||
000f0 b8 10 00 00 00 mov eax, 16
|
||||
000f5 48 6b c0 02 imul rax, rax, 2
|
||||
000f9 48 8b 8d 48 01
|
||||
000e3 0f 57 c0 xorps xmm0, xmm0
|
||||
000e6 0f 28 4d 40 movaps xmm1, XMMWORD PTR t1$[rbp]
|
||||
000ea 0f c6 c8 88 shufps xmm1, xmm0, 136 ; 00000088H
|
||||
000ee 0f 28 c1 movaps xmm0, xmm1
|
||||
000f1 b8 10 00 00 00 mov eax, 16
|
||||
000f6 48 6b c0 02 imul rax, rax, 2
|
||||
000fa 48 8b 8d 48 01
|
||||
00 00 mov rcx, QWORD PTR target$[rbp]
|
||||
00100 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
00101 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
|
||||
; 12 : }
|
||||
|
||||
00104 48 8d a5 28 01
|
||||
00105 48 8d a5 28 01
|
||||
00 00 lea rsp, QWORD PTR [rbp+296]
|
||||
0010b 5f pop rdi
|
||||
0010c 5d pop rbp
|
||||
0010d c3 ret 0
|
||||
0010c 5f pop rdi
|
||||
0010d 5d pop rbp
|
||||
0010e c3 ret 0
|
||||
transpose2to3 ENDP
|
||||
_TEXT ENDS
|
||||
END
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<DEFECTS></DEFECTS>
|
||||
Binary file not shown.
Binary file not shown.
+299
-294
@@ -1,4 +1,4 @@
|
||||
; Listing generated by Microsoft (R) Optimizing Compiler Version 19.39.33523.0
|
||||
; Listing generated by Microsoft (R) Optimizing Compiler Version 19.41.34120.0
|
||||
|
||||
include listing.inc
|
||||
|
||||
@@ -10,20 +10,20 @@ COMM infolog:BYTE:0200H
|
||||
_DATA ENDS
|
||||
msvcjmc SEGMENT
|
||||
__A19B9DB6_ssgc_framework@h DB 01H
|
||||
__5BC5AF51_mmintrin@h DB 01H
|
||||
__4B783B3C_concurrencysal@h DB 01H
|
||||
__137BB1BE_sal@h DB 01H
|
||||
__805F4069_vadefs@h DB 01H
|
||||
__1EAACA9B_vcruntime@h DB 01H
|
||||
__7583A0D2_mmintrin@h DB 01H
|
||||
__DDA0A690_concurrencysal@h DB 01H
|
||||
__9ECC08BE_sal@h DB 01H
|
||||
__E05D733A_vadefs@h DB 01H
|
||||
__6A355E0E_vcruntime@h DB 01H
|
||||
__1B0272D9_corecrt@h DB 01H
|
||||
__45DED006_corecrt_malloc@h DB 01H
|
||||
__FA77ED4C_malloc@h DB 01H
|
||||
__9E7FA6CF_xmmintrin@h DB 01H
|
||||
__EAE0325A_xmmintrin@h DB 01H
|
||||
__0ED14FEE_winpackagefamily@h DB 01H
|
||||
__F92EF742_winapifamily@h DB 01H
|
||||
__22E515EB_sdkddkver@h DB 01H
|
||||
__1227BCE2_excpt@h DB 01H
|
||||
__CC8D90C0_stdarg@h DB 01H
|
||||
__A09A3A7D_excpt@h DB 01H
|
||||
__AC8FA393_stdarg@h DB 01H
|
||||
__29F49F40_specstrings_undef@h DB 01H
|
||||
__D0F42932_specstrings_strict@h DB 01H
|
||||
__F00405FD_sdv_driverspecs@h DB 01H
|
||||
@@ -34,7 +34,7 @@ __1EC467ED_ctype@h DB 01H
|
||||
__98517906_kernelspecs@h DB 01H
|
||||
__D3497022_basetsd@h DB 01H
|
||||
__61CC25A1_errno@h DB 01H
|
||||
__0504B279_vcruntime_string@h DB 01H
|
||||
__890838BD_vcruntime_string@h DB 01H
|
||||
__E4C945B4_corecrt_memcpy_s@h DB 01H
|
||||
__8EAFF484_corecrt_memory@h DB 01H
|
||||
__6490AEC5_corecrt_wstring@h DB 01H
|
||||
@@ -110,26 +110,26 @@ __577CE3E7_ime_cmodes@h DB 01H
|
||||
__1E72C31E_imm@h DB 01H
|
||||
__E15BF856_windows@h DB 01H
|
||||
__61B03275_ssgc_internal@h DB 01H
|
||||
__F8522E0F_stdint@h DB 01H
|
||||
__98501D5C_stdint@h DB 01H
|
||||
__874AB8BA_khrplatform@h DB 01H
|
||||
__8DCB230D_gl@h DB 01H
|
||||
__5F89FF5A_wgl@h DB 01H
|
||||
__13F5961F_stddef@h DB 01H
|
||||
__B47D1049_glfw3@h DB 01H
|
||||
__FB1D2F03_emmintrin@h DB 01H
|
||||
__24BC478A_pmmintrin@h DB 01H
|
||||
__94653408_tmmintrin@h DB 01H
|
||||
__BD5E218B_smmintrin@h DB 01H
|
||||
__D83CA847_nmmintrin@h DB 01H
|
||||
__0D875209_wmmintrin@h DB 01H
|
||||
__C6131F0E_zmmintrin@h DB 01H
|
||||
__F107BDC4_immintrin@h DB 01H
|
||||
__8F82BB96_emmintrin@h DB 01H
|
||||
__5023D31F_pmmintrin@h DB 01H
|
||||
__E0FAA09D_tmmintrin@h DB 01H
|
||||
__C9C1B51E_smmintrin@h DB 01H
|
||||
__ACA33CD2_nmmintrin@h DB 01H
|
||||
__7918C69C_wmmintrin@h DB 01H
|
||||
__B28C8B9B_zmmintrin@h DB 01H
|
||||
__85982951_immintrin@h DB 01H
|
||||
__44420885_corecrt_stdio_config@h DB 01H
|
||||
__AB601D8D_corecrt_wstdio@h DB 01H
|
||||
__C1EC35D3_stdio@h DB 01H
|
||||
__FD6DBD68_corecrt_search@h DB 01H
|
||||
__E2E33A61_corecrt_wstdlib@h DB 01H
|
||||
__46240030_limits@h DB 01H
|
||||
__26263363_limits@h DB 01H
|
||||
__6E5ACABA_stdlib@h DB 01H
|
||||
__5274102E_stb_image@h DB 01H
|
||||
__CE2BBC10_StgSharpC@h DB 01H
|
||||
@@ -149,31 +149,31 @@ EXTRN _fltused:DWORD
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$transpose3to2 DD imagerel $LN3
|
||||
DD imagerel $LN3+204
|
||||
DD imagerel $LN3+205
|
||||
DD imagerel $unwind$transpose3to2
|
||||
pdata ENDS
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$transpose3to3 DD imagerel $LN3
|
||||
DD imagerel $LN3+339
|
||||
DD imagerel $LN3+340
|
||||
DD imagerel $unwind$transpose3to3
|
||||
pdata ENDS
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$transpose3to4 DD imagerel $LN3
|
||||
DD imagerel $LN3+371
|
||||
DD imagerel $LN3+372
|
||||
DD imagerel $unwind$transpose3to4
|
||||
pdata ENDS
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$det_mat3 DD imagerel $LN3
|
||||
DD imagerel $LN3+148
|
||||
DD imagerel $LN3+149
|
||||
DD imagerel $unwind$det_mat3
|
||||
pdata ENDS
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$det_mat3_internal DD imagerel $LN3
|
||||
DD imagerel $LN3+370
|
||||
DD imagerel $LN3+371
|
||||
DD imagerel $unwind$det_mat3_internal
|
||||
pdata ENDS
|
||||
; COMDAT rtc$TMZ
|
||||
@@ -277,143 +277,144 @@ $LN3:
|
||||
00036 48 8d 0d 00 00
|
||||
00 00 lea rcx, OFFSET FLAT:__5527727A_mat3@c
|
||||
0003d e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
||||
00042 90 npad 1
|
||||
|
||||
; 41 : //let adding row aligned
|
||||
; 42 : __m128 addc1 = _mm_shuffle_ps(c1, c1, _MM_SHUFFLE(3, 0, 2, 1));
|
||||
|
||||
00042 48 8b 85 38 02
|
||||
00043 48 8b 85 38 02
|
||||
00 00 mov rax, QWORD PTR c1$[rbp]
|
||||
00049 48 8b 8d 38 02
|
||||
0004a 48 8b 8d 38 02
|
||||
00 00 mov rcx, QWORD PTR c1$[rbp]
|
||||
00050 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
00053 0f c6 01 c9 shufps xmm0, XMMWORD PTR [rcx], 201 ; 000000c9H
|
||||
00057 0f 29 45 10 movaps XMMWORD PTR addc1$[rbp], xmm0
|
||||
00051 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
00054 0f c6 01 c9 shufps xmm0, XMMWORD PTR [rcx], 201 ; 000000c9H
|
||||
00058 0f 29 45 10 movaps XMMWORD PTR addc1$[rbp], xmm0
|
||||
|
||||
; 43 : __m128 addc2 = _mm_shuffle_ps(c2, c2, _MM_SHUFFLE(3, 1, 0, 2));
|
||||
|
||||
0005b 48 8b 85 40 02
|
||||
0005c 48 8b 85 40 02
|
||||
00 00 mov rax, QWORD PTR c2$[rbp]
|
||||
00062 48 8b 8d 40 02
|
||||
00063 48 8b 8d 40 02
|
||||
00 00 mov rcx, QWORD PTR c2$[rbp]
|
||||
00069 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
0006c 0f c6 01 d2 shufps xmm0, XMMWORD PTR [rcx], 210 ; 000000d2H
|
||||
00070 0f 29 45 40 movaps XMMWORD PTR addc2$[rbp], xmm0
|
||||
0006a 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
0006d 0f c6 01 d2 shufps xmm0, XMMWORD PTR [rcx], 210 ; 000000d2H
|
||||
00071 0f 29 45 40 movaps XMMWORD PTR addc2$[rbp], xmm0
|
||||
|
||||
; 44 :
|
||||
; 45 : //let sub row aligned
|
||||
; 46 : __m128 subc1 = _mm_shuffle_ps(c1, c1, _MM_SHUFFLE(3, 1, 0, 2));
|
||||
|
||||
00074 48 8b 85 38 02
|
||||
00075 48 8b 85 38 02
|
||||
00 00 mov rax, QWORD PTR c1$[rbp]
|
||||
0007b 48 8b 8d 38 02
|
||||
0007c 48 8b 8d 38 02
|
||||
00 00 mov rcx, QWORD PTR c1$[rbp]
|
||||
00082 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
00085 0f c6 01 d2 shufps xmm0, XMMWORD PTR [rcx], 210 ; 000000d2H
|
||||
00089 0f 29 45 70 movaps XMMWORD PTR subc1$[rbp], xmm0
|
||||
00083 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
00086 0f c6 01 d2 shufps xmm0, XMMWORD PTR [rcx], 210 ; 000000d2H
|
||||
0008a 0f 29 45 70 movaps XMMWORD PTR subc1$[rbp], xmm0
|
||||
|
||||
; 47 : __m128 subc2 = _mm_shuffle_ps(c2, c2, _MM_SHUFFLE(3, 0, 2, 1));
|
||||
|
||||
0008d 48 8b 85 40 02
|
||||
0008e 48 8b 85 40 02
|
||||
00 00 mov rax, QWORD PTR c2$[rbp]
|
||||
00094 48 8b 8d 40 02
|
||||
00095 48 8b 8d 40 02
|
||||
00 00 mov rcx, QWORD PTR c2$[rbp]
|
||||
0009b 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
0009e 0f c6 01 c9 shufps xmm0, XMMWORD PTR [rcx], 201 ; 000000c9H
|
||||
000a2 0f 29 85 a0 00
|
||||
0009c 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
0009f 0f c6 01 c9 shufps xmm0, XMMWORD PTR [rcx], 201 ; 000000c9H
|
||||
000a3 0f 29 85 a0 00
|
||||
00 00 movaps XMMWORD PTR subc2$[rbp], xmm0
|
||||
|
||||
; 48 :
|
||||
; 49 : //multple all add row
|
||||
; 50 : __m128 cache = _mm_mul_ps(c0, addc1);
|
||||
|
||||
000a9 48 8b 85 30 02
|
||||
000aa 48 8b 85 30 02
|
||||
00 00 mov rax, QWORD PTR c0$[rbp]
|
||||
000b0 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
000b3 0f 59 45 10 mulps xmm0, XMMWORD PTR addc1$[rbp]
|
||||
000b7 0f 29 85 d0 00
|
||||
000b1 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
000b4 0f 59 45 10 mulps xmm0, XMMWORD PTR addc1$[rbp]
|
||||
000b8 0f 29 85 d0 00
|
||||
00 00 movaps XMMWORD PTR cache$[rbp], xmm0
|
||||
|
||||
; 51 : cache = _mm_mul_ps(cache, addc2);
|
||||
|
||||
000be 0f 28 85 d0 00
|
||||
000bf 0f 28 85 d0 00
|
||||
00 00 movaps xmm0, XMMWORD PTR cache$[rbp]
|
||||
000c5 0f 59 45 40 mulps xmm0, XMMWORD PTR addc2$[rbp]
|
||||
000c9 0f 29 85 d0 00
|
||||
000c6 0f 59 45 40 mulps xmm0, XMMWORD PTR addc2$[rbp]
|
||||
000ca 0f 29 85 d0 00
|
||||
00 00 movaps XMMWORD PTR cache$[rbp], xmm0
|
||||
|
||||
; 52 :
|
||||
; 53 : //multiple all sub row
|
||||
; 54 : __m128 sub = _mm_mul_ps(c0, subc1);
|
||||
|
||||
000d0 48 8b 85 30 02
|
||||
000d1 48 8b 85 30 02
|
||||
00 00 mov rax, QWORD PTR c0$[rbp]
|
||||
000d7 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
000da 0f 59 45 70 mulps xmm0, XMMWORD PTR subc1$[rbp]
|
||||
000de 0f 29 85 00 01
|
||||
000d8 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
000db 0f 59 45 70 mulps xmm0, XMMWORD PTR subc1$[rbp]
|
||||
000df 0f 29 85 00 01
|
||||
00 00 movaps XMMWORD PTR sub$[rbp], xmm0
|
||||
|
||||
; 55 : sub = _mm_mul_ps(sub, subc2);
|
||||
|
||||
000e5 0f 28 85 00 01
|
||||
000e6 0f 28 85 00 01
|
||||
00 00 movaps xmm0, XMMWORD PTR sub$[rbp]
|
||||
000ec 0f 59 85 a0 00
|
||||
000ed 0f 59 85 a0 00
|
||||
00 00 mulps xmm0, XMMWORD PTR subc2$[rbp]
|
||||
000f3 0f 29 85 00 01
|
||||
000f4 0f 29 85 00 01
|
||||
00 00 movaps XMMWORD PTR sub$[rbp], xmm0
|
||||
|
||||
; 56 :
|
||||
; 57 : //main-corner sub sub-corner
|
||||
; 58 : cache = _mm_sub_ps(cache, sub);
|
||||
|
||||
000fa 0f 28 85 d0 00
|
||||
000fb 0f 28 85 d0 00
|
||||
00 00 movaps xmm0, XMMWORD PTR cache$[rbp]
|
||||
00101 0f 5c 85 00 01
|
||||
00102 0f 5c 85 00 01
|
||||
00 00 subps xmm0, XMMWORD PTR sub$[rbp]
|
||||
00108 0f 29 85 d0 00
|
||||
00109 0f 29 85 d0 00
|
||||
00 00 movaps XMMWORD PTR cache$[rbp], xmm0
|
||||
|
||||
; 59 :
|
||||
; 60 : __m128 ret = _mm_hadd_ps(cache, cache); //element 1 add element 2
|
||||
|
||||
0010f 0f 28 85 d0 00
|
||||
00110 0f 28 85 d0 00
|
||||
00 00 movaps xmm0, XMMWORD PTR cache$[rbp]
|
||||
00116 f2 0f 7c 85 d0
|
||||
00117 f2 0f 7c 85 d0
|
||||
00 00 00 haddps xmm0, XMMWORD PTR cache$[rbp]
|
||||
0011e 0f 29 85 30 01
|
||||
0011f 0f 29 85 30 01
|
||||
00 00 movaps XMMWORD PTR ret$[rbp], xmm0
|
||||
|
||||
; 61 : ret = _mm_add_ps(ret, cache); //(e1 add e2) add element 3
|
||||
|
||||
00125 0f 28 85 30 01
|
||||
00126 0f 28 85 30 01
|
||||
00 00 movaps xmm0, XMMWORD PTR ret$[rbp]
|
||||
0012c 0f 58 85 d0 00
|
||||
0012d 0f 58 85 d0 00
|
||||
00 00 addps xmm0, XMMWORD PTR cache$[rbp]
|
||||
00133 0f 29 85 30 01
|
||||
00134 0f 29 85 30 01
|
||||
00 00 movaps XMMWORD PTR ret$[rbp], xmm0
|
||||
|
||||
; 62 :
|
||||
; 63 : return ret.m128_f32[2];
|
||||
|
||||
0013a b8 04 00 00 00 mov eax, 4
|
||||
0013f 48 6b c0 02 imul rax, rax, 2
|
||||
00143 f3 0f 10 84 05
|
||||
0013b b8 04 00 00 00 mov eax, 4
|
||||
00140 48 6b c0 02 imul rax, rax, 2
|
||||
00144 f3 0f 10 84 05
|
||||
30 01 00 00 movss xmm0, DWORD PTR ret$[rbp+rax]
|
||||
|
||||
; 64 : }
|
||||
|
||||
0014c f3 0f 7f 44 24
|
||||
0014d f3 0f 7f 44 24
|
||||
20 movdqu XMMWORD PTR [rsp+32], xmm0
|
||||
00152 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48]
|
||||
00156 48 8d 15 00 00
|
||||
00153 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48]
|
||||
00157 48 8d 15 00 00
|
||||
00 00 lea rdx, OFFSET FLAT:det_mat3_internal$rtcFrameData
|
||||
0015d e8 00 00 00 00 call _RTC_CheckStackVars
|
||||
00162 f3 0f 6f 44 24
|
||||
0015e e8 00 00 00 00 call _RTC_CheckStackVars
|
||||
00163 f3 0f 6f 44 24
|
||||
20 movdqu xmm0, XMMWORD PTR [rsp+32]
|
||||
00168 48 8d a5 18 02
|
||||
00169 48 8d a5 18 02
|
||||
00 00 lea rsp, QWORD PTR [rbp+536]
|
||||
0016f 5f pop rdi
|
||||
00170 5d pop rbp
|
||||
00171 c3 ret 0
|
||||
00170 5f pop rdi
|
||||
00171 5d pop rbp
|
||||
00172 c3 ret 0
|
||||
det_mat3_internal ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Odtp /RTCsu /ZI
|
||||
@@ -438,37 +439,38 @@ $LN3:
|
||||
00013 48 8d 0d 00 00
|
||||
00 00 lea rcx, OFFSET FLAT:__5527727A_mat3@c
|
||||
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
||||
0001f 90 npad 1
|
||||
|
||||
; 68 : return det_mat3_internal(
|
||||
|
||||
0001f b8 10 00 00 00 mov eax, 16
|
||||
00024 48 6b c0 02 imul rax, rax, 2
|
||||
00028 48 8b 8d 70 01
|
||||
00020 b8 10 00 00 00 mov eax, 16
|
||||
00025 48 6b c0 02 imul rax, rax, 2
|
||||
00029 48 8b 8d 70 01
|
||||
00 00 mov rcx, QWORD PTR mat$[rbp]
|
||||
0002f 0f 10 04 01 movups xmm0, XMMWORD PTR [rcx+rax]
|
||||
00033 0f 11 85 30 01
|
||||
00030 0f 10 04 01 movups xmm0, XMMWORD PTR [rcx+rax]
|
||||
00034 0f 11 85 30 01
|
||||
00 00 movups XMMWORD PTR $T3[rbp], xmm0
|
||||
0003a b8 10 00 00 00 mov eax, 16
|
||||
0003f 48 6b c0 01 imul rax, rax, 1
|
||||
00043 48 8b 8d 70 01
|
||||
0003b b8 10 00 00 00 mov eax, 16
|
||||
00040 48 6b c0 01 imul rax, rax, 1
|
||||
00044 48 8b 8d 70 01
|
||||
00 00 mov rcx, QWORD PTR mat$[rbp]
|
||||
0004a 0f 10 04 01 movups xmm0, XMMWORD PTR [rcx+rax]
|
||||
0004e 0f 11 85 00 01
|
||||
0004b 0f 10 04 01 movups xmm0, XMMWORD PTR [rcx+rax]
|
||||
0004f 0f 11 85 00 01
|
||||
00 00 movups XMMWORD PTR $T2[rbp], xmm0
|
||||
00055 b8 10 00 00 00 mov eax, 16
|
||||
0005a 48 6b c0 00 imul rax, rax, 0
|
||||
0005e 48 8b 8d 70 01
|
||||
00056 b8 10 00 00 00 mov eax, 16
|
||||
0005b 48 6b c0 00 imul rax, rax, 0
|
||||
0005f 48 8b 8d 70 01
|
||||
00 00 mov rcx, QWORD PTR mat$[rbp]
|
||||
00065 0f 10 04 01 movups xmm0, XMMWORD PTR [rcx+rax]
|
||||
00069 0f 11 85 d0 00
|
||||
00066 0f 10 04 01 movups xmm0, XMMWORD PTR [rcx+rax]
|
||||
0006a 0f 11 85 d0 00
|
||||
00 00 movups XMMWORD PTR $T1[rbp], xmm0
|
||||
00070 4c 8d 85 30 01
|
||||
00071 4c 8d 85 30 01
|
||||
00 00 lea r8, QWORD PTR $T3[rbp]
|
||||
00077 48 8d 95 00 01
|
||||
00078 48 8d 95 00 01
|
||||
00 00 lea rdx, QWORD PTR $T2[rbp]
|
||||
0007e 48 8d 8d d0 00
|
||||
0007f 48 8d 8d d0 00
|
||||
00 00 lea rcx, QWORD PTR $T1[rbp]
|
||||
00085 e8 00 00 00 00 call det_mat3_internal
|
||||
00086 e8 00 00 00 00 call det_mat3_internal
|
||||
|
||||
; 69 : mat->colum[0],
|
||||
; 70 : mat->colum[1],
|
||||
@@ -476,11 +478,11 @@ $LN3:
|
||||
; 72 : );
|
||||
; 73 : }
|
||||
|
||||
0008a 48 8d a5 58 01
|
||||
0008b 48 8d a5 58 01
|
||||
00 00 lea rsp, QWORD PTR [rbp+344]
|
||||
00091 5f pop rdi
|
||||
00092 5d pop rbp
|
||||
00093 c3 ret 0
|
||||
00092 5f pop rdi
|
||||
00093 5d pop rbp
|
||||
00094 c3 ret 0
|
||||
det_mat3 ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Odtp /RTCsu /ZI
|
||||
@@ -508,126 +510,127 @@ $LN3:
|
||||
00018 48 8d 0d 00 00
|
||||
00 00 lea rcx, OFFSET FLAT:__5527727A_mat3@c
|
||||
0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
||||
00024 90 npad 1
|
||||
|
||||
; 28 : __m128 t0 = _mm_shuffle_ps(ALIGN(source->colum[0]), ALIGN(source->colum[1]), _MM_SHUFFLE(1, 0, 1, 0));
|
||||
|
||||
00024 b8 10 00 00 00 mov eax, 16
|
||||
00029 48 6b c0 01 imul rax, rax, 1
|
||||
0002d 48 8b 8d a0 01
|
||||
00025 b8 10 00 00 00 mov eax, 16
|
||||
0002a 48 6b c0 01 imul rax, rax, 1
|
||||
0002e 48 8b 8d a0 01
|
||||
00 00 mov rcx, QWORD PTR source$[rbp]
|
||||
00034 48 03 c8 add rcx, rax
|
||||
00037 48 8b c1 mov rax, rcx
|
||||
0003a 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
0003d b8 10 00 00 00 mov eax, 16
|
||||
00042 48 6b c0 00 imul rax, rax, 0
|
||||
00046 48 8b 8d a0 01
|
||||
00035 48 03 c8 add rcx, rax
|
||||
00038 48 8b c1 mov rax, rcx
|
||||
0003b 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
0003e b8 10 00 00 00 mov eax, 16
|
||||
00043 48 6b c0 00 imul rax, rax, 0
|
||||
00047 48 8b 8d a0 01
|
||||
00 00 mov rcx, QWORD PTR source$[rbp]
|
||||
0004d 48 03 c8 add rcx, rax
|
||||
00050 48 8b c1 mov rax, rcx
|
||||
00053 0f 10 08 movups xmm1, XMMWORD PTR [rax]
|
||||
00056 0f c6 c8 44 shufps xmm1, xmm0, 68 ; 00000044H
|
||||
0005a 0f 28 c1 movaps xmm0, xmm1
|
||||
0005d 0f 29 45 10 movaps XMMWORD PTR t0$[rbp], xmm0
|
||||
0004e 48 03 c8 add rcx, rax
|
||||
00051 48 8b c1 mov rax, rcx
|
||||
00054 0f 10 08 movups xmm1, XMMWORD PTR [rax]
|
||||
00057 0f c6 c8 44 shufps xmm1, xmm0, 68 ; 00000044H
|
||||
0005b 0f 28 c1 movaps xmm0, xmm1
|
||||
0005e 0f 29 45 10 movaps XMMWORD PTR t0$[rbp], xmm0
|
||||
|
||||
; 29 : __m128 t1 = _mm_shuffle_ps(ALIGN(source->colum[0]), ALIGN(source->colum[1]), _MM_SHUFFLE(3, 2, 3, 2));
|
||||
|
||||
00061 b8 10 00 00 00 mov eax, 16
|
||||
00066 48 6b c0 01 imul rax, rax, 1
|
||||
0006a 48 8b 8d a0 01
|
||||
00062 b8 10 00 00 00 mov eax, 16
|
||||
00067 48 6b c0 01 imul rax, rax, 1
|
||||
0006b 48 8b 8d a0 01
|
||||
00 00 mov rcx, QWORD PTR source$[rbp]
|
||||
00071 48 03 c8 add rcx, rax
|
||||
00074 48 8b c1 mov rax, rcx
|
||||
00077 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
0007a b8 10 00 00 00 mov eax, 16
|
||||
0007f 48 6b c0 00 imul rax, rax, 0
|
||||
00083 48 8b 8d a0 01
|
||||
00072 48 03 c8 add rcx, rax
|
||||
00075 48 8b c1 mov rax, rcx
|
||||
00078 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
0007b b8 10 00 00 00 mov eax, 16
|
||||
00080 48 6b c0 00 imul rax, rax, 0
|
||||
00084 48 8b 8d a0 01
|
||||
00 00 mov rcx, QWORD PTR source$[rbp]
|
||||
0008a 48 03 c8 add rcx, rax
|
||||
0008d 48 8b c1 mov rax, rcx
|
||||
00090 0f 10 08 movups xmm1, XMMWORD PTR [rax]
|
||||
00093 0f c6 c8 ee shufps xmm1, xmm0, 238 ; 000000eeH
|
||||
00097 0f 28 c1 movaps xmm0, xmm1
|
||||
0009a 0f 29 45 40 movaps XMMWORD PTR t1$[rbp], xmm0
|
||||
0008b 48 03 c8 add rcx, rax
|
||||
0008e 48 8b c1 mov rax, rcx
|
||||
00091 0f 10 08 movups xmm1, XMMWORD PTR [rax]
|
||||
00094 0f c6 c8 ee shufps xmm1, xmm0, 238 ; 000000eeH
|
||||
00098 0f 28 c1 movaps xmm0, xmm1
|
||||
0009b 0f 29 45 40 movaps XMMWORD PTR t1$[rbp], xmm0
|
||||
|
||||
; 30 : __m128 t2 = _mm_shuffle_ps(ALIGN(source->colum[2]), zeroVec, _MM_SHUFFLE(1, 0, 1, 0));
|
||||
|
||||
0009e 0f 57 c0 xorps xmm0, xmm0
|
||||
000a1 b8 10 00 00 00 mov eax, 16
|
||||
000a6 48 6b c0 02 imul rax, rax, 2
|
||||
000aa 48 8b 8d a0 01
|
||||
0009f 0f 57 c0 xorps xmm0, xmm0
|
||||
000a2 b8 10 00 00 00 mov eax, 16
|
||||
000a7 48 6b c0 02 imul rax, rax, 2
|
||||
000ab 48 8b 8d a0 01
|
||||
00 00 mov rcx, QWORD PTR source$[rbp]
|
||||
000b1 48 03 c8 add rcx, rax
|
||||
000b4 48 8b c1 mov rax, rcx
|
||||
000b7 0f 10 08 movups xmm1, XMMWORD PTR [rax]
|
||||
000ba 0f c6 c8 44 shufps xmm1, xmm0, 68 ; 00000044H
|
||||
000be 0f 28 c1 movaps xmm0, xmm1
|
||||
000c1 0f 29 45 70 movaps XMMWORD PTR t2$[rbp], xmm0
|
||||
000b2 48 03 c8 add rcx, rax
|
||||
000b5 48 8b c1 mov rax, rcx
|
||||
000b8 0f 10 08 movups xmm1, XMMWORD PTR [rax]
|
||||
000bb 0f c6 c8 44 shufps xmm1, xmm0, 68 ; 00000044H
|
||||
000bf 0f 28 c1 movaps xmm0, xmm1
|
||||
000c2 0f 29 45 70 movaps XMMWORD PTR t2$[rbp], xmm0
|
||||
|
||||
; 31 : __m128 t3 = _mm_shuffle_ps(ALIGN(source->colum[2]), zeroVec, _MM_SHUFFLE(3, 2, 3, 2));
|
||||
|
||||
000c5 0f 57 c0 xorps xmm0, xmm0
|
||||
000c8 b8 10 00 00 00 mov eax, 16
|
||||
000cd 48 6b c0 02 imul rax, rax, 2
|
||||
000d1 48 8b 8d a0 01
|
||||
000c6 0f 57 c0 xorps xmm0, xmm0
|
||||
000c9 b8 10 00 00 00 mov eax, 16
|
||||
000ce 48 6b c0 02 imul rax, rax, 2
|
||||
000d2 48 8b 8d a0 01
|
||||
00 00 mov rcx, QWORD PTR source$[rbp]
|
||||
000d8 48 03 c8 add rcx, rax
|
||||
000db 48 8b c1 mov rax, rcx
|
||||
000de 0f 10 08 movups xmm1, XMMWORD PTR [rax]
|
||||
000e1 0f c6 c8 ee shufps xmm1, xmm0, 238 ; 000000eeH
|
||||
000e5 0f 28 c1 movaps xmm0, xmm1
|
||||
000e8 0f 29 85 a0 00
|
||||
000d9 48 03 c8 add rcx, rax
|
||||
000dc 48 8b c1 mov rax, rcx
|
||||
000df 0f 10 08 movups xmm1, XMMWORD PTR [rax]
|
||||
000e2 0f c6 c8 ee shufps xmm1, xmm0, 238 ; 000000eeH
|
||||
000e6 0f 28 c1 movaps xmm0, xmm1
|
||||
000e9 0f 29 85 a0 00
|
||||
00 00 movaps XMMWORD PTR t3$[rbp], xmm0
|
||||
|
||||
; 32 :
|
||||
; 33 : target->colum[0] = _mm_shuffle_ps(t0, t2, _MM_SHUFFLE(2, 0, 2, 0));
|
||||
|
||||
000ef 0f 28 45 10 movaps xmm0, XMMWORD PTR t0$[rbp]
|
||||
000f3 0f c6 45 70 88 shufps xmm0, XMMWORD PTR t2$[rbp], 136 ; 00000088H
|
||||
000f8 b8 10 00 00 00 mov eax, 16
|
||||
000fd 48 6b c0 00 imul rax, rax, 0
|
||||
00101 48 8b 8d a8 01
|
||||
000f0 0f 28 45 10 movaps xmm0, XMMWORD PTR t0$[rbp]
|
||||
000f4 0f c6 45 70 88 shufps xmm0, XMMWORD PTR t2$[rbp], 136 ; 00000088H
|
||||
000f9 b8 10 00 00 00 mov eax, 16
|
||||
000fe 48 6b c0 00 imul rax, rax, 0
|
||||
00102 48 8b 8d a8 01
|
||||
00 00 mov rcx, QWORD PTR target$[rbp]
|
||||
00108 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
00109 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
|
||||
; 34 : target->colum[1] = _mm_shuffle_ps(t0, t2, _MM_SHUFFLE(3, 1, 3, 1));
|
||||
|
||||
0010c 0f 28 45 10 movaps xmm0, XMMWORD PTR t0$[rbp]
|
||||
00110 0f c6 45 70 dd shufps xmm0, XMMWORD PTR t2$[rbp], 221 ; 000000ddH
|
||||
00115 b8 10 00 00 00 mov eax, 16
|
||||
0011a 48 6b c0 01 imul rax, rax, 1
|
||||
0011e 48 8b 8d a8 01
|
||||
0010d 0f 28 45 10 movaps xmm0, XMMWORD PTR t0$[rbp]
|
||||
00111 0f c6 45 70 dd shufps xmm0, XMMWORD PTR t2$[rbp], 221 ; 000000ddH
|
||||
00116 b8 10 00 00 00 mov eax, 16
|
||||
0011b 48 6b c0 01 imul rax, rax, 1
|
||||
0011f 48 8b 8d a8 01
|
||||
00 00 mov rcx, QWORD PTR target$[rbp]
|
||||
00125 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
00126 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
|
||||
; 35 : target->colum[2] = _mm_shuffle_ps(t1, t3, _MM_SHUFFLE(2, 0, 2, 0));
|
||||
|
||||
00129 0f 28 45 40 movaps xmm0, XMMWORD PTR t1$[rbp]
|
||||
0012d 0f c6 85 a0 00
|
||||
0012a 0f 28 45 40 movaps xmm0, XMMWORD PTR t1$[rbp]
|
||||
0012e 0f c6 85 a0 00
|
||||
00 00 88 shufps xmm0, XMMWORD PTR t3$[rbp], 136 ; 00000088H
|
||||
00135 b8 10 00 00 00 mov eax, 16
|
||||
0013a 48 6b c0 02 imul rax, rax, 2
|
||||
0013e 48 8b 8d a8 01
|
||||
00136 b8 10 00 00 00 mov eax, 16
|
||||
0013b 48 6b c0 02 imul rax, rax, 2
|
||||
0013f 48 8b 8d a8 01
|
||||
00 00 mov rcx, QWORD PTR target$[rbp]
|
||||
00145 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
00146 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
|
||||
; 36 : target->colum[3] = _mm_shuffle_ps(t1, t3, _MM_SHUFFLE(3, 1, 3, 1));
|
||||
|
||||
00149 0f 28 45 40 movaps xmm0, XMMWORD PTR t1$[rbp]
|
||||
0014d 0f c6 85 a0 00
|
||||
0014a 0f 28 45 40 movaps xmm0, XMMWORD PTR t1$[rbp]
|
||||
0014e 0f c6 85 a0 00
|
||||
00 00 dd shufps xmm0, XMMWORD PTR t3$[rbp], 221 ; 000000ddH
|
||||
00155 b8 10 00 00 00 mov eax, 16
|
||||
0015a 48 6b c0 03 imul rax, rax, 3
|
||||
0015e 48 8b 8d a8 01
|
||||
00156 b8 10 00 00 00 mov eax, 16
|
||||
0015b 48 6b c0 03 imul rax, rax, 3
|
||||
0015f 48 8b 8d a8 01
|
||||
00 00 mov rcx, QWORD PTR target$[rbp]
|
||||
00165 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
00166 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
|
||||
; 37 : }
|
||||
|
||||
00169 48 8d a5 88 01
|
||||
0016a 48 8d a5 88 01
|
||||
00 00 lea rsp, QWORD PTR [rbp+392]
|
||||
00170 5f pop rdi
|
||||
00171 5d pop rbp
|
||||
00172 c3 ret 0
|
||||
00171 5f pop rdi
|
||||
00172 5d pop rbp
|
||||
00173 c3 ret 0
|
||||
transpose3to4 ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Odtp /RTCsu /ZI
|
||||
@@ -655,115 +658,116 @@ $LN3:
|
||||
00018 48 8d 0d 00 00
|
||||
00 00 lea rcx, OFFSET FLAT:__5527727A_mat3@c
|
||||
0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
||||
00024 90 npad 1
|
||||
|
||||
; 16 : __m128 t0 = _mm_shuffle_ps(ALIGN(source->colum[0]), ALIGN(source->colum[1]), _MM_SHUFFLE(1, 0, 1, 0));
|
||||
|
||||
00024 b8 10 00 00 00 mov eax, 16
|
||||
00029 48 6b c0 01 imul rax, rax, 1
|
||||
0002d 48 8b 8d a0 01
|
||||
00025 b8 10 00 00 00 mov eax, 16
|
||||
0002a 48 6b c0 01 imul rax, rax, 1
|
||||
0002e 48 8b 8d a0 01
|
||||
00 00 mov rcx, QWORD PTR source$[rbp]
|
||||
00034 48 03 c8 add rcx, rax
|
||||
00037 48 8b c1 mov rax, rcx
|
||||
0003a 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
0003d b8 10 00 00 00 mov eax, 16
|
||||
00042 48 6b c0 00 imul rax, rax, 0
|
||||
00046 48 8b 8d a0 01
|
||||
00035 48 03 c8 add rcx, rax
|
||||
00038 48 8b c1 mov rax, rcx
|
||||
0003b 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
0003e b8 10 00 00 00 mov eax, 16
|
||||
00043 48 6b c0 00 imul rax, rax, 0
|
||||
00047 48 8b 8d a0 01
|
||||
00 00 mov rcx, QWORD PTR source$[rbp]
|
||||
0004d 48 03 c8 add rcx, rax
|
||||
00050 48 8b c1 mov rax, rcx
|
||||
00053 0f 10 08 movups xmm1, XMMWORD PTR [rax]
|
||||
00056 0f c6 c8 44 shufps xmm1, xmm0, 68 ; 00000044H
|
||||
0005a 0f 28 c1 movaps xmm0, xmm1
|
||||
0005d 0f 29 45 10 movaps XMMWORD PTR t0$[rbp], xmm0
|
||||
0004e 48 03 c8 add rcx, rax
|
||||
00051 48 8b c1 mov rax, rcx
|
||||
00054 0f 10 08 movups xmm1, XMMWORD PTR [rax]
|
||||
00057 0f c6 c8 44 shufps xmm1, xmm0, 68 ; 00000044H
|
||||
0005b 0f 28 c1 movaps xmm0, xmm1
|
||||
0005e 0f 29 45 10 movaps XMMWORD PTR t0$[rbp], xmm0
|
||||
|
||||
; 17 : __m128 t1 = _mm_shuffle_ps(ALIGN(source->colum[0]), ALIGN(source->colum[1]), _MM_SHUFFLE(3, 2, 3, 2));
|
||||
|
||||
00061 b8 10 00 00 00 mov eax, 16
|
||||
00066 48 6b c0 01 imul rax, rax, 1
|
||||
0006a 48 8b 8d a0 01
|
||||
00062 b8 10 00 00 00 mov eax, 16
|
||||
00067 48 6b c0 01 imul rax, rax, 1
|
||||
0006b 48 8b 8d a0 01
|
||||
00 00 mov rcx, QWORD PTR source$[rbp]
|
||||
00071 48 03 c8 add rcx, rax
|
||||
00074 48 8b c1 mov rax, rcx
|
||||
00077 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
0007a b8 10 00 00 00 mov eax, 16
|
||||
0007f 48 6b c0 00 imul rax, rax, 0
|
||||
00083 48 8b 8d a0 01
|
||||
00072 48 03 c8 add rcx, rax
|
||||
00075 48 8b c1 mov rax, rcx
|
||||
00078 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
0007b b8 10 00 00 00 mov eax, 16
|
||||
00080 48 6b c0 00 imul rax, rax, 0
|
||||
00084 48 8b 8d a0 01
|
||||
00 00 mov rcx, QWORD PTR source$[rbp]
|
||||
0008a 48 03 c8 add rcx, rax
|
||||
0008d 48 8b c1 mov rax, rcx
|
||||
00090 0f 10 08 movups xmm1, XMMWORD PTR [rax]
|
||||
00093 0f c6 c8 ee shufps xmm1, xmm0, 238 ; 000000eeH
|
||||
00097 0f 28 c1 movaps xmm0, xmm1
|
||||
0009a 0f 29 45 40 movaps XMMWORD PTR t1$[rbp], xmm0
|
||||
0008b 48 03 c8 add rcx, rax
|
||||
0008e 48 8b c1 mov rax, rcx
|
||||
00091 0f 10 08 movups xmm1, XMMWORD PTR [rax]
|
||||
00094 0f c6 c8 ee shufps xmm1, xmm0, 238 ; 000000eeH
|
||||
00098 0f 28 c1 movaps xmm0, xmm1
|
||||
0009b 0f 29 45 40 movaps XMMWORD PTR t1$[rbp], xmm0
|
||||
|
||||
; 18 : __m128 t2 = _mm_shuffle_ps(ALIGN(source->colum[2]), zeroVec, _MM_SHUFFLE(1, 0, 1, 0));
|
||||
|
||||
0009e 0f 57 c0 xorps xmm0, xmm0
|
||||
000a1 b8 10 00 00 00 mov eax, 16
|
||||
000a6 48 6b c0 02 imul rax, rax, 2
|
||||
000aa 48 8b 8d a0 01
|
||||
0009f 0f 57 c0 xorps xmm0, xmm0
|
||||
000a2 b8 10 00 00 00 mov eax, 16
|
||||
000a7 48 6b c0 02 imul rax, rax, 2
|
||||
000ab 48 8b 8d a0 01
|
||||
00 00 mov rcx, QWORD PTR source$[rbp]
|
||||
000b1 48 03 c8 add rcx, rax
|
||||
000b4 48 8b c1 mov rax, rcx
|
||||
000b7 0f 10 08 movups xmm1, XMMWORD PTR [rax]
|
||||
000ba 0f c6 c8 44 shufps xmm1, xmm0, 68 ; 00000044H
|
||||
000be 0f 28 c1 movaps xmm0, xmm1
|
||||
000c1 0f 29 45 70 movaps XMMWORD PTR t2$[rbp], xmm0
|
||||
000b2 48 03 c8 add rcx, rax
|
||||
000b5 48 8b c1 mov rax, rcx
|
||||
000b8 0f 10 08 movups xmm1, XMMWORD PTR [rax]
|
||||
000bb 0f c6 c8 44 shufps xmm1, xmm0, 68 ; 00000044H
|
||||
000bf 0f 28 c1 movaps xmm0, xmm1
|
||||
000c2 0f 29 45 70 movaps XMMWORD PTR t2$[rbp], xmm0
|
||||
|
||||
; 19 : __m128 t3 = _mm_shuffle_ps(ALIGN(source->colum[2]), zeroVec, _MM_SHUFFLE(3, 2, 3, 2));
|
||||
|
||||
000c5 0f 57 c0 xorps xmm0, xmm0
|
||||
000c8 b8 10 00 00 00 mov eax, 16
|
||||
000cd 48 6b c0 02 imul rax, rax, 2
|
||||
000d1 48 8b 8d a0 01
|
||||
000c6 0f 57 c0 xorps xmm0, xmm0
|
||||
000c9 b8 10 00 00 00 mov eax, 16
|
||||
000ce 48 6b c0 02 imul rax, rax, 2
|
||||
000d2 48 8b 8d a0 01
|
||||
00 00 mov rcx, QWORD PTR source$[rbp]
|
||||
000d8 48 03 c8 add rcx, rax
|
||||
000db 48 8b c1 mov rax, rcx
|
||||
000de 0f 10 08 movups xmm1, XMMWORD PTR [rax]
|
||||
000e1 0f c6 c8 ee shufps xmm1, xmm0, 238 ; 000000eeH
|
||||
000e5 0f 28 c1 movaps xmm0, xmm1
|
||||
000e8 0f 29 85 a0 00
|
||||
000d9 48 03 c8 add rcx, rax
|
||||
000dc 48 8b c1 mov rax, rcx
|
||||
000df 0f 10 08 movups xmm1, XMMWORD PTR [rax]
|
||||
000e2 0f c6 c8 ee shufps xmm1, xmm0, 238 ; 000000eeH
|
||||
000e6 0f 28 c1 movaps xmm0, xmm1
|
||||
000e9 0f 29 85 a0 00
|
||||
00 00 movaps XMMWORD PTR t3$[rbp], xmm0
|
||||
|
||||
; 20 :
|
||||
; 21 : target->colum[0] = _mm_shuffle_ps(t0, t2, _MM_SHUFFLE(2, 0, 2, 0));
|
||||
|
||||
000ef 0f 28 45 10 movaps xmm0, XMMWORD PTR t0$[rbp]
|
||||
000f3 0f c6 45 70 88 shufps xmm0, XMMWORD PTR t2$[rbp], 136 ; 00000088H
|
||||
000f8 b8 10 00 00 00 mov eax, 16
|
||||
000fd 48 6b c0 00 imul rax, rax, 0
|
||||
00101 48 8b 8d a8 01
|
||||
000f0 0f 28 45 10 movaps xmm0, XMMWORD PTR t0$[rbp]
|
||||
000f4 0f c6 45 70 88 shufps xmm0, XMMWORD PTR t2$[rbp], 136 ; 00000088H
|
||||
000f9 b8 10 00 00 00 mov eax, 16
|
||||
000fe 48 6b c0 00 imul rax, rax, 0
|
||||
00102 48 8b 8d a8 01
|
||||
00 00 mov rcx, QWORD PTR target$[rbp]
|
||||
00108 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
00109 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
|
||||
; 22 : target->colum[1] = _mm_shuffle_ps(t0, t2, _MM_SHUFFLE(3, 1, 3, 1));
|
||||
|
||||
0010c 0f 28 45 10 movaps xmm0, XMMWORD PTR t0$[rbp]
|
||||
00110 0f c6 45 70 dd shufps xmm0, XMMWORD PTR t2$[rbp], 221 ; 000000ddH
|
||||
00115 b8 10 00 00 00 mov eax, 16
|
||||
0011a 48 6b c0 01 imul rax, rax, 1
|
||||
0011e 48 8b 8d a8 01
|
||||
0010d 0f 28 45 10 movaps xmm0, XMMWORD PTR t0$[rbp]
|
||||
00111 0f c6 45 70 dd shufps xmm0, XMMWORD PTR t2$[rbp], 221 ; 000000ddH
|
||||
00116 b8 10 00 00 00 mov eax, 16
|
||||
0011b 48 6b c0 01 imul rax, rax, 1
|
||||
0011f 48 8b 8d a8 01
|
||||
00 00 mov rcx, QWORD PTR target$[rbp]
|
||||
00125 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
00126 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
|
||||
; 23 : target->colum[2] = _mm_shuffle_ps(t1, t3, _MM_SHUFFLE(2, 0, 2, 0));
|
||||
|
||||
00129 0f 28 45 40 movaps xmm0, XMMWORD PTR t1$[rbp]
|
||||
0012d 0f c6 85 a0 00
|
||||
0012a 0f 28 45 40 movaps xmm0, XMMWORD PTR t1$[rbp]
|
||||
0012e 0f c6 85 a0 00
|
||||
00 00 88 shufps xmm0, XMMWORD PTR t3$[rbp], 136 ; 00000088H
|
||||
00135 b8 10 00 00 00 mov eax, 16
|
||||
0013a 48 6b c0 02 imul rax, rax, 2
|
||||
0013e 48 8b 8d a8 01
|
||||
00136 b8 10 00 00 00 mov eax, 16
|
||||
0013b 48 6b c0 02 imul rax, rax, 2
|
||||
0013f 48 8b 8d a8 01
|
||||
00 00 mov rcx, QWORD PTR target$[rbp]
|
||||
00145 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
00146 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
|
||||
; 24 : }
|
||||
|
||||
00149 48 8d a5 88 01
|
||||
0014a 48 8d a5 88 01
|
||||
00 00 lea rsp, QWORD PTR [rbp+392]
|
||||
00150 5f pop rdi
|
||||
00151 5d pop rbp
|
||||
00152 c3 ret 0
|
||||
00151 5f pop rdi
|
||||
00152 5d pop rbp
|
||||
00153 c3 ret 0
|
||||
transpose3to3 ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Odtp /RTCsu /ZI
|
||||
@@ -789,69 +793,70 @@ $LN3:
|
||||
00018 48 8d 0d 00 00
|
||||
00 00 lea rcx, OFFSET FLAT:__5527727A_mat3@c
|
||||
0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
||||
00024 90 npad 1
|
||||
|
||||
; 7 : __m128 t0 = _mm_shuffle_ps(ALIGN(source->colum[0]), ALIGN(source->colum[1]), _MM_SHUFFLE(1, 0, 1, 0));
|
||||
|
||||
00024 b8 10 00 00 00 mov eax, 16
|
||||
00029 48 6b c0 01 imul rax, rax, 1
|
||||
0002d 48 8b 8d 40 01
|
||||
00025 b8 10 00 00 00 mov eax, 16
|
||||
0002a 48 6b c0 01 imul rax, rax, 1
|
||||
0002e 48 8b 8d 40 01
|
||||
00 00 mov rcx, QWORD PTR source$[rbp]
|
||||
00034 48 03 c8 add rcx, rax
|
||||
00037 48 8b c1 mov rax, rcx
|
||||
0003a 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
0003d b8 10 00 00 00 mov eax, 16
|
||||
00042 48 6b c0 00 imul rax, rax, 0
|
||||
00046 48 8b 8d 40 01
|
||||
00035 48 03 c8 add rcx, rax
|
||||
00038 48 8b c1 mov rax, rcx
|
||||
0003b 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
0003e b8 10 00 00 00 mov eax, 16
|
||||
00043 48 6b c0 00 imul rax, rax, 0
|
||||
00047 48 8b 8d 40 01
|
||||
00 00 mov rcx, QWORD PTR source$[rbp]
|
||||
0004d 48 03 c8 add rcx, rax
|
||||
00050 48 8b c1 mov rax, rcx
|
||||
00053 0f 10 08 movups xmm1, XMMWORD PTR [rax]
|
||||
00056 0f c6 c8 44 shufps xmm1, xmm0, 68 ; 00000044H
|
||||
0005a 0f 28 c1 movaps xmm0, xmm1
|
||||
0005d 0f 29 45 10 movaps XMMWORD PTR t0$[rbp], xmm0
|
||||
0004e 48 03 c8 add rcx, rax
|
||||
00051 48 8b c1 mov rax, rcx
|
||||
00054 0f 10 08 movups xmm1, XMMWORD PTR [rax]
|
||||
00057 0f c6 c8 44 shufps xmm1, xmm0, 68 ; 00000044H
|
||||
0005b 0f 28 c1 movaps xmm0, xmm1
|
||||
0005e 0f 29 45 10 movaps XMMWORD PTR t0$[rbp], xmm0
|
||||
|
||||
; 8 : __m128 t2 = _mm_shuffle_ps(ALIGN(source->colum[2]), zeroVec, _MM_SHUFFLE(1, 0, 1, 0));
|
||||
|
||||
00061 0f 57 c0 xorps xmm0, xmm0
|
||||
00064 b8 10 00 00 00 mov eax, 16
|
||||
00069 48 6b c0 02 imul rax, rax, 2
|
||||
0006d 48 8b 8d 40 01
|
||||
00062 0f 57 c0 xorps xmm0, xmm0
|
||||
00065 b8 10 00 00 00 mov eax, 16
|
||||
0006a 48 6b c0 02 imul rax, rax, 2
|
||||
0006e 48 8b 8d 40 01
|
||||
00 00 mov rcx, QWORD PTR source$[rbp]
|
||||
00074 48 03 c8 add rcx, rax
|
||||
00077 48 8b c1 mov rax, rcx
|
||||
0007a 0f 10 08 movups xmm1, XMMWORD PTR [rax]
|
||||
0007d 0f c6 c8 44 shufps xmm1, xmm0, 68 ; 00000044H
|
||||
00081 0f 28 c1 movaps xmm0, xmm1
|
||||
00084 0f 29 45 40 movaps XMMWORD PTR t2$[rbp], xmm0
|
||||
00075 48 03 c8 add rcx, rax
|
||||
00078 48 8b c1 mov rax, rcx
|
||||
0007b 0f 10 08 movups xmm1, XMMWORD PTR [rax]
|
||||
0007e 0f c6 c8 44 shufps xmm1, xmm0, 68 ; 00000044H
|
||||
00082 0f 28 c1 movaps xmm0, xmm1
|
||||
00085 0f 29 45 40 movaps XMMWORD PTR t2$[rbp], xmm0
|
||||
|
||||
; 9 :
|
||||
; 10 : target->colum[0] = _mm_shuffle_ps(t0, t2, _MM_SHUFFLE(2, 0, 2, 0));
|
||||
|
||||
00088 0f 28 45 10 movaps xmm0, XMMWORD PTR t0$[rbp]
|
||||
0008c 0f c6 45 40 88 shufps xmm0, XMMWORD PTR t2$[rbp], 136 ; 00000088H
|
||||
00091 b8 10 00 00 00 mov eax, 16
|
||||
00096 48 6b c0 00 imul rax, rax, 0
|
||||
0009a 48 8b 8d 48 01
|
||||
00089 0f 28 45 10 movaps xmm0, XMMWORD PTR t0$[rbp]
|
||||
0008d 0f c6 45 40 88 shufps xmm0, XMMWORD PTR t2$[rbp], 136 ; 00000088H
|
||||
00092 b8 10 00 00 00 mov eax, 16
|
||||
00097 48 6b c0 00 imul rax, rax, 0
|
||||
0009b 48 8b 8d 48 01
|
||||
00 00 mov rcx, QWORD PTR target$[rbp]
|
||||
000a1 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
000a2 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
|
||||
; 11 : target->colum[1] = _mm_shuffle_ps(t0, t2, _MM_SHUFFLE(3, 1, 3, 1));
|
||||
|
||||
000a5 0f 28 45 10 movaps xmm0, XMMWORD PTR t0$[rbp]
|
||||
000a9 0f c6 45 40 dd shufps xmm0, XMMWORD PTR t2$[rbp], 221 ; 000000ddH
|
||||
000ae b8 10 00 00 00 mov eax, 16
|
||||
000b3 48 6b c0 01 imul rax, rax, 1
|
||||
000b7 48 8b 8d 48 01
|
||||
000a6 0f 28 45 10 movaps xmm0, XMMWORD PTR t0$[rbp]
|
||||
000aa 0f c6 45 40 dd shufps xmm0, XMMWORD PTR t2$[rbp], 221 ; 000000ddH
|
||||
000af b8 10 00 00 00 mov eax, 16
|
||||
000b4 48 6b c0 01 imul rax, rax, 1
|
||||
000b8 48 8b 8d 48 01
|
||||
00 00 mov rcx, QWORD PTR target$[rbp]
|
||||
000be 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
000bf 0f 11 04 01 movups XMMWORD PTR [rcx+rax], xmm0
|
||||
|
||||
; 12 : }
|
||||
|
||||
000c2 48 8d a5 28 01
|
||||
000c3 48 8d a5 28 01
|
||||
00 00 lea rsp, QWORD PTR [rbp+296]
|
||||
000c9 5f pop rdi
|
||||
000ca 5d pop rbp
|
||||
000cb c3 ret 0
|
||||
000ca 5f pop rdi
|
||||
000cb 5d pop rbp
|
||||
000cc c3 ret 0
|
||||
transpose3to2 ENDP
|
||||
_TEXT ENDS
|
||||
END
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<DEFECTS></DEFECTS>
|
||||
Binary file not shown.
Binary file not shown.
+359
-353
File diff suppressed because it is too large
Load Diff
@@ -1,2 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<DEFECTS></DEFECTS>
|
||||
Binary file not shown.
Binary file not shown.
+22956
-22426
File diff suppressed because it is too large
Load Diff
@@ -1,31 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<DEFECTS>
|
||||
<DEFECT>
|
||||
<SFA>
|
||||
<FILEPATH>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\</FILEPATH>
|
||||
<FILENAME>stb_image.c</FILENAME>
|
||||
<LINE>6525</LINE>
|
||||
<COLUMN>13</COLUMN>
|
||||
</SFA>
|
||||
<DEFECTCODE>6262</DEFECTCODE>
|
||||
<DESCRIPTION>函数使用堆叠的 "35036" 字节。请考虑将一些数据移动到堆。</DESCRIPTION>
|
||||
<FUNCTION>stbi__load_gif_main</FUNCTION>
|
||||
<DECORATED>stbi__load_gif_main</DECORATED>
|
||||
<FUNCLINE>6525</FUNCLINE>
|
||||
<PATH></PATH>
|
||||
</DEFECT>
|
||||
<DEFECT>
|
||||
<SFA>
|
||||
<FILEPATH>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\</FILEPATH>
|
||||
<FILENAME>stb_image.c</FILENAME>
|
||||
<LINE>6612</LINE>
|
||||
<COLUMN>13</COLUMN>
|
||||
</SFA>
|
||||
<DEFECTCODE>6262</DEFECTCODE>
|
||||
<DESCRIPTION>函数使用堆叠的 "34980" 字节。请考虑将一些数据移动到堆。</DESCRIPTION>
|
||||
<FUNCTION>stbi__gif_load</FUNCTION>
|
||||
<DECORATED>stbi__gif_load</DECORATED>
|
||||
<FUNCLINE>6612</FUNCLINE>
|
||||
<PATH></PATH>
|
||||
</DEFECT>
|
||||
</DEFECTS>
|
||||
Binary file not shown.
Binary file not shown.
@@ -1,40 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?><DEFECTS><DEFECT>
|
||||
<SFA>
|
||||
<FILEPATH>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\</FILEPATH>
|
||||
<FILENAME>stb_image.c</FILENAME>
|
||||
<LINE>6525</LINE>
|
||||
<COLUMN>13</COLUMN>
|
||||
</SFA>
|
||||
<DEFECTCODE>6262</DEFECTCODE>
|
||||
<DESCRIPTION>函数使用堆叠的 "35036" 字节。请考虑将一些数据移动到堆。</DESCRIPTION>
|
||||
<FUNCTION>stbi__load_gif_main</FUNCTION>
|
||||
<DECORATED>stbi__load_gif_main</DECORATED>
|
||||
<FUNCLINE>6525</FUNCLINE>
|
||||
<PATH></PATH>
|
||||
</DEFECT><DEFECT>
|
||||
<SFA>
|
||||
<FILEPATH>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\</FILEPATH>
|
||||
<FILENAME>stb_image.c</FILENAME>
|
||||
<LINE>6612</LINE>
|
||||
<COLUMN>13</COLUMN>
|
||||
</SFA>
|
||||
<DEFECTCODE>6262</DEFECTCODE>
|
||||
<DESCRIPTION>函数使用堆叠的 "34980" 字节。请考虑将一些数据移动到堆。</DESCRIPTION>
|
||||
<FUNCTION>stbi__gif_load</FUNCTION>
|
||||
<DECORATED>stbi__gif_load</DECORATED>
|
||||
<FUNCLINE>6612</FUNCLINE>
|
||||
<PATH></PATH>
|
||||
</DEFECT><DEFECT>
|
||||
<SFA>
|
||||
<FILEPATH>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\</FILEPATH>
|
||||
<FILENAME>StgSharpC.c</FILENAME>
|
||||
<LINE>33</LINE>
|
||||
<COLUMN>12</COLUMN>
|
||||
</SFA>
|
||||
<DEFECTCODE>6282</DEFECTCODE>
|
||||
<DESCRIPTION>运算符不正确。</DESCRIPTION>
|
||||
<FUNCTION>loadGlfuncDefault</FUNCTION>
|
||||
<DECORATED>loadGlfuncDefault</DECORATED>
|
||||
<FUNCLINE>29</FUNCLINE>
|
||||
<PATH></PATH>
|
||||
</DEFECT></DEFECTS>
|
||||
Binary file not shown.
Binary file not shown.
@@ -1,4 +1,4 @@
|
||||
; Listing generated by Microsoft (R) Optimizing Compiler Version 19.39.33523.0
|
||||
; Listing generated by Microsoft (R) Optimizing Compiler Version 19.41.34120.0
|
||||
|
||||
include listing.inc
|
||||
|
||||
@@ -10,20 +10,20 @@ COMM infolog:BYTE:0200H
|
||||
_DATA ENDS
|
||||
msvcjmc SEGMENT
|
||||
__A19B9DB6_ssgc_framework@h DB 01H
|
||||
__5BC5AF51_mmintrin@h DB 01H
|
||||
__4B783B3C_concurrencysal@h DB 01H
|
||||
__137BB1BE_sal@h DB 01H
|
||||
__805F4069_vadefs@h DB 01H
|
||||
__1EAACA9B_vcruntime@h DB 01H
|
||||
__7583A0D2_mmintrin@h DB 01H
|
||||
__DDA0A690_concurrencysal@h DB 01H
|
||||
__9ECC08BE_sal@h DB 01H
|
||||
__E05D733A_vadefs@h DB 01H
|
||||
__6A355E0E_vcruntime@h DB 01H
|
||||
__1B0272D9_corecrt@h DB 01H
|
||||
__45DED006_corecrt_malloc@h DB 01H
|
||||
__FA77ED4C_malloc@h DB 01H
|
||||
__9E7FA6CF_xmmintrin@h DB 01H
|
||||
__EAE0325A_xmmintrin@h DB 01H
|
||||
__0ED14FEE_winpackagefamily@h DB 01H
|
||||
__F92EF742_winapifamily@h DB 01H
|
||||
__22E515EB_sdkddkver@h DB 01H
|
||||
__1227BCE2_excpt@h DB 01H
|
||||
__CC8D90C0_stdarg@h DB 01H
|
||||
__A09A3A7D_excpt@h DB 01H
|
||||
__AC8FA393_stdarg@h DB 01H
|
||||
__29F49F40_specstrings_undef@h DB 01H
|
||||
__D0F42932_specstrings_strict@h DB 01H
|
||||
__F00405FD_sdv_driverspecs@h DB 01H
|
||||
@@ -34,7 +34,7 @@ __1EC467ED_ctype@h DB 01H
|
||||
__98517906_kernelspecs@h DB 01H
|
||||
__D3497022_basetsd@h DB 01H
|
||||
__61CC25A1_errno@h DB 01H
|
||||
__0504B279_vcruntime_string@h DB 01H
|
||||
__890838BD_vcruntime_string@h DB 01H
|
||||
__E4C945B4_corecrt_memcpy_s@h DB 01H
|
||||
__8EAFF484_corecrt_memory@h DB 01H
|
||||
__6490AEC5_corecrt_wstring@h DB 01H
|
||||
@@ -110,26 +110,26 @@ __577CE3E7_ime_cmodes@h DB 01H
|
||||
__1E72C31E_imm@h DB 01H
|
||||
__E15BF856_windows@h DB 01H
|
||||
__61B03275_ssgc_internal@h DB 01H
|
||||
__F8522E0F_stdint@h DB 01H
|
||||
__98501D5C_stdint@h DB 01H
|
||||
__874AB8BA_khrplatform@h DB 01H
|
||||
__8DCB230D_gl@h DB 01H
|
||||
__5F89FF5A_wgl@h DB 01H
|
||||
__13F5961F_stddef@h DB 01H
|
||||
__B47D1049_glfw3@h DB 01H
|
||||
__FB1D2F03_emmintrin@h DB 01H
|
||||
__24BC478A_pmmintrin@h DB 01H
|
||||
__94653408_tmmintrin@h DB 01H
|
||||
__BD5E218B_smmintrin@h DB 01H
|
||||
__D83CA847_nmmintrin@h DB 01H
|
||||
__0D875209_wmmintrin@h DB 01H
|
||||
__C6131F0E_zmmintrin@h DB 01H
|
||||
__F107BDC4_immintrin@h DB 01H
|
||||
__8F82BB96_emmintrin@h DB 01H
|
||||
__5023D31F_pmmintrin@h DB 01H
|
||||
__E0FAA09D_tmmintrin@h DB 01H
|
||||
__C9C1B51E_smmintrin@h DB 01H
|
||||
__ACA33CD2_nmmintrin@h DB 01H
|
||||
__7918C69C_wmmintrin@h DB 01H
|
||||
__B28C8B9B_zmmintrin@h DB 01H
|
||||
__85982951_immintrin@h DB 01H
|
||||
__44420885_corecrt_stdio_config@h DB 01H
|
||||
__AB601D8D_corecrt_wstdio@h DB 01H
|
||||
__C1EC35D3_stdio@h DB 01H
|
||||
__FD6DBD68_corecrt_search@h DB 01H
|
||||
__E2E33A61_corecrt_wstdlib@h DB 01H
|
||||
__46240030_limits@h DB 01H
|
||||
__26263363_limits@h DB 01H
|
||||
__6E5ACABA_stdlib@h DB 01H
|
||||
__5274102E_stb_image@h DB 01H
|
||||
__CE2BBC10_StgSharpC@h DB 01H
|
||||
@@ -143,7 +143,7 @@ EXTRN __CheckForDebuggerJustMyCode:PROC
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$normalize DD imagerel $LN3
|
||||
DD imagerel $LN3+378
|
||||
DD imagerel $LN3+379
|
||||
DD imagerel $unwind$normalize
|
||||
pdata ENDS
|
||||
; COMDAT rtc$TMZ
|
||||
@@ -195,159 +195,160 @@ $LN3:
|
||||
00018 48 8d 0d 00 00
|
||||
00 00 lea rcx, OFFSET FLAT:__ABB5A48E_vector@c
|
||||
0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
||||
00024 90 npad 1
|
||||
|
||||
; 6 : // 计算source的长度的平方
|
||||
; 7 : __m128 a_length_sq = _mm_mul_ps(*source, *source); // 向量点乘自身
|
||||
|
||||
00024 48 8b 85 00 02
|
||||
00025 48 8b 85 00 02
|
||||
00 00 mov rax, QWORD PTR source$[rbp]
|
||||
0002b 48 8b 8d 00 02
|
||||
0002c 48 8b 8d 00 02
|
||||
00 00 mov rcx, QWORD PTR source$[rbp]
|
||||
00032 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
00035 0f 59 01 mulps xmm0, XMMWORD PTR [rcx]
|
||||
00038 0f 29 45 10 movaps XMMWORD PTR a_length_sq$[rbp], xmm0
|
||||
00033 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
00036 0f 59 01 mulps xmm0, XMMWORD PTR [rcx]
|
||||
00039 0f 29 45 10 movaps XMMWORD PTR a_length_sq$[rbp], xmm0
|
||||
|
||||
; 8 : a_length_sq = _mm_add_ps(a_length_sq, _mm_shuffle_ps(a_length_sq, a_length_sq, _MM_SHUFFLE(2, 3, 0, 1)));
|
||||
|
||||
0003c 0f 28 45 10 movaps xmm0, XMMWORD PTR a_length_sq$[rbp]
|
||||
00040 0f c6 45 10 b1 shufps xmm0, XMMWORD PTR a_length_sq$[rbp], 177 ; 000000b1H
|
||||
00045 0f 28 4d 10 movaps xmm1, XMMWORD PTR a_length_sq$[rbp]
|
||||
00049 0f 58 c8 addps xmm1, xmm0
|
||||
0004c 0f 28 c1 movaps xmm0, xmm1
|
||||
0004f 0f 29 45 10 movaps XMMWORD PTR a_length_sq$[rbp], xmm0
|
||||
0003d 0f 28 45 10 movaps xmm0, XMMWORD PTR a_length_sq$[rbp]
|
||||
00041 0f c6 45 10 b1 shufps xmm0, XMMWORD PTR a_length_sq$[rbp], 177 ; 000000b1H
|
||||
00046 0f 28 4d 10 movaps xmm1, XMMWORD PTR a_length_sq$[rbp]
|
||||
0004a 0f 58 c8 addps xmm1, xmm0
|
||||
0004d 0f 28 c1 movaps xmm0, xmm1
|
||||
00050 0f 29 45 10 movaps XMMWORD PTR a_length_sq$[rbp], xmm0
|
||||
|
||||
; 9 : a_length_sq = _mm_add_ss(a_length_sq, _mm_shuffle_ps(a_length_sq, a_length_sq, _MM_SHUFFLE(0, 0, 3, 2)));
|
||||
|
||||
00053 0f 28 45 10 movaps xmm0, XMMWORD PTR a_length_sq$[rbp]
|
||||
00057 0f c6 45 10 0e shufps xmm0, XMMWORD PTR a_length_sq$[rbp], 14
|
||||
0005c 0f 28 4d 10 movaps xmm1, XMMWORD PTR a_length_sq$[rbp]
|
||||
00060 f3 0f 58 c8 addss xmm1, xmm0
|
||||
00064 0f 29 4d 10 movaps XMMWORD PTR a_length_sq$[rbp], xmm1
|
||||
00054 0f 28 45 10 movaps xmm0, XMMWORD PTR a_length_sq$[rbp]
|
||||
00058 0f c6 45 10 0e shufps xmm0, XMMWORD PTR a_length_sq$[rbp], 14
|
||||
0005d 0f 28 4d 10 movaps xmm1, XMMWORD PTR a_length_sq$[rbp]
|
||||
00061 f3 0f 58 c8 addss xmm1, xmm0
|
||||
00065 0f 29 4d 10 movaps XMMWORD PTR a_length_sq$[rbp], xmm1
|
||||
|
||||
; 10 :
|
||||
; 11 : // 归一化向量source
|
||||
; 12 : __m128 a_inv_length = _mm_rsqrt_ps(a_length_sq); // 计算source长度的倒数平方根
|
||||
|
||||
00068 0f 52 45 10 rsqrtps xmm0, XMMWORD PTR a_length_sq$[rbp]
|
||||
0006c 0f 29 45 40 movaps XMMWORD PTR a_inv_length$[rbp], xmm0
|
||||
00069 0f 52 45 10 rsqrtps xmm0, XMMWORD PTR a_length_sq$[rbp]
|
||||
0006d 0f 29 45 40 movaps XMMWORD PTR a_inv_length$[rbp], xmm0
|
||||
|
||||
; 13 : *source = _mm_mul_ps(*source, a_inv_length); // 用source乘以其长度的倒数平方根得到单位向量
|
||||
|
||||
00070 48 8b 85 00 02
|
||||
00071 48 8b 85 00 02
|
||||
00 00 mov rax, QWORD PTR source$[rbp]
|
||||
00077 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
0007a 0f 59 45 40 mulps xmm0, XMMWORD PTR a_inv_length$[rbp]
|
||||
0007e 48 8b 85 00 02
|
||||
00078 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
0007b 0f 59 45 40 mulps xmm0, XMMWORD PTR a_inv_length$[rbp]
|
||||
0007f 48 8b 85 00 02
|
||||
00 00 mov rax, QWORD PTR source$[rbp]
|
||||
00085 0f 11 00 movups XMMWORD PTR [rax], xmm0
|
||||
00086 0f 11 00 movups XMMWORD PTR [rax], xmm0
|
||||
|
||||
; 14 :
|
||||
; 15 : // 计算target与source的点积
|
||||
; 16 : __m128 dot_product = _mm_mul_ps(*target, *source);
|
||||
|
||||
00088 48 8b 85 08 02
|
||||
00089 48 8b 85 08 02
|
||||
00 00 mov rax, QWORD PTR target$[rbp]
|
||||
0008f 48 8b 8d 00 02
|
||||
00090 48 8b 8d 00 02
|
||||
00 00 mov rcx, QWORD PTR source$[rbp]
|
||||
00096 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
00099 0f 59 01 mulps xmm0, XMMWORD PTR [rcx]
|
||||
0009c 0f 29 45 70 movaps XMMWORD PTR dot_product$[rbp], xmm0
|
||||
00097 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
0009a 0f 59 01 mulps xmm0, XMMWORD PTR [rcx]
|
||||
0009d 0f 29 45 70 movaps XMMWORD PTR dot_product$[rbp], xmm0
|
||||
|
||||
; 17 : dot_product = _mm_add_ps(dot_product, _mm_shuffle_ps(dot_product, dot_product, _MM_SHUFFLE(2, 3, 0, 1)));
|
||||
|
||||
000a0 0f 28 45 70 movaps xmm0, XMMWORD PTR dot_product$[rbp]
|
||||
000a4 0f c6 45 70 b1 shufps xmm0, XMMWORD PTR dot_product$[rbp], 177 ; 000000b1H
|
||||
000a9 0f 28 4d 70 movaps xmm1, XMMWORD PTR dot_product$[rbp]
|
||||
000ad 0f 58 c8 addps xmm1, xmm0
|
||||
000b0 0f 28 c1 movaps xmm0, xmm1
|
||||
000b3 0f 29 45 70 movaps XMMWORD PTR dot_product$[rbp], xmm0
|
||||
000a1 0f 28 45 70 movaps xmm0, XMMWORD PTR dot_product$[rbp]
|
||||
000a5 0f c6 45 70 b1 shufps xmm0, XMMWORD PTR dot_product$[rbp], 177 ; 000000b1H
|
||||
000aa 0f 28 4d 70 movaps xmm1, XMMWORD PTR dot_product$[rbp]
|
||||
000ae 0f 58 c8 addps xmm1, xmm0
|
||||
000b1 0f 28 c1 movaps xmm0, xmm1
|
||||
000b4 0f 29 45 70 movaps XMMWORD PTR dot_product$[rbp], xmm0
|
||||
|
||||
; 18 : dot_product = _mm_add_ss(dot_product, _mm_shuffle_ps(dot_product, dot_product, _MM_SHUFFLE(0, 0, 3, 2)));
|
||||
|
||||
000b7 0f 28 45 70 movaps xmm0, XMMWORD PTR dot_product$[rbp]
|
||||
000bb 0f c6 45 70 0e shufps xmm0, XMMWORD PTR dot_product$[rbp], 14
|
||||
000c0 0f 28 4d 70 movaps xmm1, XMMWORD PTR dot_product$[rbp]
|
||||
000c4 f3 0f 58 c8 addss xmm1, xmm0
|
||||
000c8 0f 29 4d 70 movaps XMMWORD PTR dot_product$[rbp], xmm1
|
||||
000b8 0f 28 45 70 movaps xmm0, XMMWORD PTR dot_product$[rbp]
|
||||
000bc 0f c6 45 70 0e shufps xmm0, XMMWORD PTR dot_product$[rbp], 14
|
||||
000c1 0f 28 4d 70 movaps xmm1, XMMWORD PTR dot_product$[rbp]
|
||||
000c5 f3 0f 58 c8 addss xmm1, xmm0
|
||||
000c9 0f 29 4d 70 movaps XMMWORD PTR dot_product$[rbp], xmm1
|
||||
|
||||
; 19 :
|
||||
; 20 : // 从target中减去source的方向分量,使其垂直于source
|
||||
; 21 : __m128 b_orthogonal = _mm_sub_ps(*target, _mm_mul_ps(*source, dot_product));
|
||||
|
||||
000cc 48 8b 85 00 02
|
||||
000cd 48 8b 85 00 02
|
||||
00 00 mov rax, QWORD PTR source$[rbp]
|
||||
000d3 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
000d6 0f 59 45 70 mulps xmm0, XMMWORD PTR dot_product$[rbp]
|
||||
000da 48 8b 85 08 02
|
||||
000d4 0f 10 00 movups xmm0, XMMWORD PTR [rax]
|
||||
000d7 0f 59 45 70 mulps xmm0, XMMWORD PTR dot_product$[rbp]
|
||||
000db 48 8b 85 08 02
|
||||
00 00 mov rax, QWORD PTR target$[rbp]
|
||||
000e1 0f 10 08 movups xmm1, XMMWORD PTR [rax]
|
||||
000e4 0f 5c c8 subps xmm1, xmm0
|
||||
000e7 0f 28 c1 movaps xmm0, xmm1
|
||||
000ea 0f 29 85 a0 00
|
||||
000e2 0f 10 08 movups xmm1, XMMWORD PTR [rax]
|
||||
000e5 0f 5c c8 subps xmm1, xmm0
|
||||
000e8 0f 28 c1 movaps xmm0, xmm1
|
||||
000eb 0f 29 85 a0 00
|
||||
00 00 movaps XMMWORD PTR b_orthogonal$[rbp], xmm0
|
||||
|
||||
; 22 :
|
||||
; 23 : // 归一化向量b_orthogonal
|
||||
; 24 : __m128 b_length_sq = _mm_mul_ps(b_orthogonal, b_orthogonal);
|
||||
|
||||
000f1 0f 28 85 a0 00
|
||||
000f2 0f 28 85 a0 00
|
||||
00 00 movaps xmm0, XMMWORD PTR b_orthogonal$[rbp]
|
||||
000f8 0f 59 85 a0 00
|
||||
000f9 0f 59 85 a0 00
|
||||
00 00 mulps xmm0, XMMWORD PTR b_orthogonal$[rbp]
|
||||
000ff 0f 29 85 d0 00
|
||||
00100 0f 29 85 d0 00
|
||||
00 00 movaps XMMWORD PTR b_length_sq$[rbp], xmm0
|
||||
|
||||
; 25 : b_length_sq = _mm_add_ps(b_length_sq, _mm_shuffle_ps(b_length_sq, b_length_sq, _MM_SHUFFLE(2, 3, 0, 1)));
|
||||
|
||||
00106 0f 28 85 d0 00
|
||||
00107 0f 28 85 d0 00
|
||||
00 00 movaps xmm0, XMMWORD PTR b_length_sq$[rbp]
|
||||
0010d 0f c6 85 d0 00
|
||||
0010e 0f c6 85 d0 00
|
||||
00 00 b1 shufps xmm0, XMMWORD PTR b_length_sq$[rbp], 177 ; 000000b1H
|
||||
00115 0f 28 8d d0 00
|
||||
00116 0f 28 8d d0 00
|
||||
00 00 movaps xmm1, XMMWORD PTR b_length_sq$[rbp]
|
||||
0011c 0f 58 c8 addps xmm1, xmm0
|
||||
0011f 0f 28 c1 movaps xmm0, xmm1
|
||||
00122 0f 29 85 d0 00
|
||||
0011d 0f 58 c8 addps xmm1, xmm0
|
||||
00120 0f 28 c1 movaps xmm0, xmm1
|
||||
00123 0f 29 85 d0 00
|
||||
00 00 movaps XMMWORD PTR b_length_sq$[rbp], xmm0
|
||||
|
||||
; 26 : b_length_sq = _mm_add_ss(b_length_sq, _mm_shuffle_ps(b_length_sq, b_length_sq, _MM_SHUFFLE(0, 0, 3, 2)));
|
||||
|
||||
00129 0f 28 85 d0 00
|
||||
0012a 0f 28 85 d0 00
|
||||
00 00 movaps xmm0, XMMWORD PTR b_length_sq$[rbp]
|
||||
00130 0f c6 85 d0 00
|
||||
00131 0f c6 85 d0 00
|
||||
00 00 0e shufps xmm0, XMMWORD PTR b_length_sq$[rbp], 14
|
||||
00138 0f 28 8d d0 00
|
||||
00139 0f 28 8d d0 00
|
||||
00 00 movaps xmm1, XMMWORD PTR b_length_sq$[rbp]
|
||||
0013f f3 0f 58 c8 addss xmm1, xmm0
|
||||
00143 0f 29 8d d0 00
|
||||
00140 f3 0f 58 c8 addss xmm1, xmm0
|
||||
00144 0f 29 8d d0 00
|
||||
00 00 movaps XMMWORD PTR b_length_sq$[rbp], xmm1
|
||||
|
||||
; 27 :
|
||||
; 28 : __m128 b_inv_length = _mm_rsqrt_ps(b_length_sq);
|
||||
|
||||
0014a 0f 52 85 d0 00
|
||||
0014b 0f 52 85 d0 00
|
||||
00 00 rsqrtps xmm0, XMMWORD PTR b_length_sq$[rbp]
|
||||
00151 0f 29 85 00 01
|
||||
00152 0f 29 85 00 01
|
||||
00 00 movaps XMMWORD PTR b_inv_length$[rbp], xmm0
|
||||
|
||||
; 29 : *target = _mm_mul_ps(b_orthogonal, b_inv_length);
|
||||
|
||||
00158 0f 28 85 a0 00
|
||||
00159 0f 28 85 a0 00
|
||||
00 00 movaps xmm0, XMMWORD PTR b_orthogonal$[rbp]
|
||||
0015f 0f 59 85 00 01
|
||||
00160 0f 59 85 00 01
|
||||
00 00 mulps xmm0, XMMWORD PTR b_inv_length$[rbp]
|
||||
00166 48 8b 85 08 02
|
||||
00167 48 8b 85 08 02
|
||||
00 00 mov rax, QWORD PTR target$[rbp]
|
||||
0016d 0f 11 00 movups XMMWORD PTR [rax], xmm0
|
||||
0016e 0f 11 00 movups XMMWORD PTR [rax], xmm0
|
||||
|
||||
; 30 :
|
||||
; 31 : }
|
||||
|
||||
00170 48 8d a5 e8 01
|
||||
00171 48 8d a5 e8 01
|
||||
00 00 lea rsp, QWORD PTR [rbp+488]
|
||||
00177 5f pop rdi
|
||||
00178 5d pop rbp
|
||||
00179 c3 ret 0
|
||||
00178 5f pop rdi
|
||||
00179 5d pop rbp
|
||||
0017a c3 ret 0
|
||||
normalize ENDP
|
||||
_TEXT ENDS
|
||||
END
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<DEFECTS></DEFECTS>
|
||||
Binary file not shown.
Binary file not shown.
@@ -5,7 +5,6 @@ include listing.inc
|
||||
INCLUDELIB OLDNAMES
|
||||
|
||||
PUBLIC infolog
|
||||
PUBLIC ??_C@_05JMLLFKBP@?$CFllu?6@ ; `string'
|
||||
PUBLIC ??_C@_0BL@MOJGOJJP@Failed?5to?5load?5OpenGL?5api?3@ ; `string'
|
||||
PUBLIC ??_C@_03OFAPEBGM@?$CFs?6@ ; `string'
|
||||
EXTRN glfwGetProcAddress:PROC
|
||||
@@ -23,16 +22,13 @@ CONST ENDS
|
||||
CONST SEGMENT
|
||||
??_C@_0BL@MOJGOJJP@Failed?5to?5load?5OpenGL?5api?3@ DB 'Failed to load Op'
|
||||
DB 'enGL api:', 00H ; `string'
|
||||
CONST ENDS
|
||||
; COMDAT ??_C@_05JMLLFKBP@?$CFllu?6@
|
||||
CONST SEGMENT
|
||||
??_C@_05JMLLFKBP@?$CFllu?6@ DB '%llu', 0aH, 00H ; `string'
|
||||
PUBLIC readLog
|
||||
PUBLIC unloadImageData
|
||||
PUBLIC loadImageData
|
||||
PUBLIC linkShaderProgram
|
||||
PUBLIC loadGlfuncDefault
|
||||
PUBLIC initGL
|
||||
PUBLIC glCheckShaderStat
|
||||
PUBLIC printf
|
||||
PUBLIC _vfprintf_l
|
||||
PUBLIC __local_stdio_printf_options
|
||||
@@ -51,17 +47,23 @@ pdata ENDS
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$loadGlfuncDefault DD imagerel $LN19
|
||||
DD imagerel $LN19+31
|
||||
DD imagerel $LN19+16
|
||||
DD imagerel $unwind$loadGlfuncDefault
|
||||
pdata ENDS
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$initGL DD imagerel $LN4
|
||||
DD imagerel $LN4+52
|
||||
DD imagerel $LN4+67
|
||||
DD imagerel $unwind$initGL
|
||||
pdata ENDS
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$glCheckShaderStat DD imagerel $LN6
|
||||
DD imagerel $LN6+122
|
||||
DD imagerel $unwind$glCheckShaderStat
|
||||
pdata ENDS
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$printf DD imagerel $LN6
|
||||
DD imagerel $LN6+85
|
||||
DD imagerel $unwind$printf
|
||||
@@ -87,6 +89,15 @@ $unwind$printf DD 041b01H
|
||||
xdata ENDS
|
||||
; COMDAT xdata
|
||||
xdata SEGMENT
|
||||
$unwind$glCheckShaderStat DD 051819H
|
||||
DD 070056209H
|
||||
DD 050036004H
|
||||
DD 03002H
|
||||
DD imagerel __GSHandlerCheck
|
||||
DD 028H
|
||||
xdata ENDS
|
||||
; COMDAT xdata
|
||||
xdata SEGMENT
|
||||
$unwind$initGL DD 020601H
|
||||
DD 030023206H
|
||||
xdata ENDS
|
||||
@@ -108,24 +119,18 @@ xdata SEGMENT
|
||||
$unwind$loadImageData DD 020601H
|
||||
DD 030025206H
|
||||
; Function compile flags: /Ogtpy
|
||||
; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_stdio_config.h
|
||||
; COMDAT __local_stdio_printf_options
|
||||
_TEXT SEGMENT
|
||||
__local_stdio_printf_options PROC ; COMDAT
|
||||
|
||||
; 91 : static unsigned __int64 _OptionsStorage;
|
||||
; 92 : return &_OptionsStorage;
|
||||
|
||||
; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_stdio_config.h
|
||||
; Line 92
|
||||
00000 48 8d 05 00 00
|
||||
00 00 lea rax, OFFSET FLAT:?_OptionsStorage@?1??__local_stdio_printf_options@@9@9 ; `__local_stdio_printf_options'::`2'::_OptionsStorage
|
||||
|
||||
; 93 : }
|
||||
|
||||
; Line 93
|
||||
00007 c3 ret 0
|
||||
__local_stdio_printf_options ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Ogtpy
|
||||
; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stdio.h
|
||||
; COMDAT _vfprintf_l
|
||||
_TEXT SEGMENT
|
||||
_Stream$ = 64
|
||||
@@ -133,9 +138,8 @@ _Format$ = 72
|
||||
_Locale$dead$ = 80
|
||||
_ArgList$ = 88
|
||||
_vfprintf_l PROC ; COMDAT
|
||||
|
||||
; 644 : {
|
||||
|
||||
; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stdio.h
|
||||
; Line 644
|
||||
$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
|
||||
@@ -144,9 +148,7 @@ $LN4:
|
||||
0000f 49 8b d9 mov rbx, r9
|
||||
00012 48 8b fa mov rdi, rdx
|
||||
00015 48 8b f1 mov rsi, rcx
|
||||
|
||||
; 645 : return __stdio_common_vfprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS, _Stream, _Format, _Locale, _ArgList);
|
||||
|
||||
; Line 645
|
||||
00018 e8 00 00 00 00 call __local_stdio_printf_options
|
||||
0001d 45 33 c9 xor r9d, r9d
|
||||
00020 48 89 5c 24 20 mov QWORD PTR [rsp+32], rbx
|
||||
@@ -155,9 +157,7 @@ $LN4:
|
||||
0002b 48 8b 08 mov rcx, QWORD PTR [rax]
|
||||
0002e ff 15 00 00 00
|
||||
00 call QWORD PTR __imp___stdio_common_vfprintf
|
||||
|
||||
; 646 : }
|
||||
|
||||
; Line 646
|
||||
00034 48 8b 5c 24 40 mov rbx, QWORD PTR [rsp+64]
|
||||
00039 48 8b 74 24 48 mov rsi, QWORD PTR [rsp+72]
|
||||
0003e 48 83 c4 30 add rsp, 48 ; 00000030H
|
||||
@@ -166,14 +166,12 @@ $LN4:
|
||||
_vfprintf_l ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Ogtpy
|
||||
; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stdio.h
|
||||
; COMDAT printf
|
||||
_TEXT SEGMENT
|
||||
_Format$ = 80
|
||||
printf PROC ; COMDAT
|
||||
|
||||
; 956 : {
|
||||
|
||||
; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stdio.h
|
||||
; Line 956
|
||||
$LN6:
|
||||
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
|
||||
00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
|
||||
@@ -184,22 +182,14 @@ $LN6:
|
||||
00016 57 push rdi
|
||||
00017 48 83 ec 30 sub rsp, 48 ; 00000030H
|
||||
0001b 48 8b f9 mov rdi, rcx
|
||||
|
||||
; 957 : int _Result;
|
||||
; 958 : va_list _ArgList;
|
||||
; 959 : __crt_va_start(_ArgList, _Format);
|
||||
|
||||
; Line 959
|
||||
0001e 48 8d 74 24 58 lea rsi, QWORD PTR _Format$[rsp+8]
|
||||
|
||||
; 960 : _Result = _vfprintf_l(stdout, _Format, NULL, _ArgList);
|
||||
|
||||
; Line 960
|
||||
00023 b9 01 00 00 00 mov ecx, 1
|
||||
00028 ff 15 00 00 00
|
||||
00 call QWORD PTR __imp___acrt_iob_func
|
||||
0002e 48 8b d8 mov rbx, rax
|
||||
|
||||
; 645 : return __stdio_common_vfprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS, _Stream, _Format, _Locale, _ArgList);
|
||||
|
||||
; Line 645
|
||||
00031 e8 00 00 00 00 call __local_stdio_printf_options
|
||||
00036 45 33 c9 xor r9d, r9d
|
||||
00039 48 89 74 24 20 mov QWORD PTR [rsp+32], rsi
|
||||
@@ -208,11 +198,7 @@ $LN6:
|
||||
00044 48 8b 08 mov rcx, QWORD PTR [rax]
|
||||
00047 ff 15 00 00 00
|
||||
00 call QWORD PTR __imp___stdio_common_vfprintf
|
||||
|
||||
; 961 : __crt_va_end(_ArgList);
|
||||
; 962 : return _Result;
|
||||
; 963 : }
|
||||
|
||||
; Line 963
|
||||
0004d 48 83 c4 30 add rsp, 48 ; 00000030H
|
||||
00051 5f pop rdi
|
||||
00052 5e pop rsi
|
||||
@@ -221,91 +207,122 @@ $LN6:
|
||||
printf ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Ogtpy
|
||||
; COMDAT glCheckShaderStat
|
||||
_TEXT SEGMENT
|
||||
stat$ = 32
|
||||
__$ArrayPad$ = 40
|
||||
context$ = 96
|
||||
shaderHandle$ = 104
|
||||
key$ = 112
|
||||
logRef$ = 120
|
||||
glCheckShaderStat PROC ; COMDAT
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\StgSharpC.c
|
||||
; Line 11
|
||||
$LN6:
|
||||
00000 40 53 push rbx
|
||||
00002 55 push rbp
|
||||
00003 56 push rsi
|
||||
00004 57 push rdi
|
||||
00005 48 83 ec 38 sub rsp, 56 ; 00000038H
|
||||
00009 48 8b 05 00 00
|
||||
00 00 mov rax, QWORD PTR __security_cookie
|
||||
00010 48 33 c4 xor rax, rsp
|
||||
00013 48 89 44 24 28 mov QWORD PTR __$ArrayPad$[rsp], rax
|
||||
00018 41 8b c0 mov eax, r8d
|
||||
; Line 12
|
||||
0001b c7 44 24 20 00
|
||||
00 00 00 mov DWORD PTR stat$[rsp], 0
|
||||
00023 48 8b fa mov rdi, rdx
|
||||
; Line 13
|
||||
00026 4c 8d 44 24 20 lea r8, QWORD PTR stat$[rsp]
|
||||
0002b 48 8b d9 mov rbx, rcx
|
||||
0002e 8b d0 mov edx, eax
|
||||
00030 8b cf mov ecx, edi
|
||||
00032 49 8b f1 mov rsi, r9
|
||||
00035 ff 93 40 1b 00
|
||||
00 call QWORD PTR [rbx+6976]
|
||||
; Line 14
|
||||
0003b 8b 44 24 20 mov eax, DWORD PTR stat$[rsp]
|
||||
0003f 48 8d 2d 00 00
|
||||
00 00 lea rbp, OFFSET FLAT:infolog
|
||||
00046 85 c0 test eax, eax
|
||||
00048 75 17 jne SHORT $LN2@glCheckSha
|
||||
; Line 16
|
||||
0004a 4c 8b cd mov r9, rbp
|
||||
0004d 45 33 c0 xor r8d, r8d
|
||||
00050 ba 00 02 00 00 mov edx, 512 ; 00000200H
|
||||
00055 8b cf mov ecx, edi
|
||||
00057 ff 93 20 1b 00
|
||||
00 call QWORD PTR [rbx+6944]
|
||||
0005d 8b 44 24 20 mov eax, DWORD PTR stat$[rsp]
|
||||
$LN2@glCheckSha:
|
||||
; Line 18
|
||||
00061 48 89 2e mov QWORD PTR [rsi], rbp
|
||||
; Line 20
|
||||
00064 48 8b 4c 24 28 mov rcx, QWORD PTR __$ArrayPad$[rsp]
|
||||
00069 48 33 cc xor rcx, rsp
|
||||
0006c e8 00 00 00 00 call __security_check_cookie
|
||||
00071 48 83 c4 38 add rsp, 56 ; 00000038H
|
||||
00075 5f pop rdi
|
||||
00076 5e pop rsi
|
||||
00077 5d pop rbp
|
||||
00078 5b pop rbx
|
||||
00079 c3 ret 0
|
||||
glCheckShaderStat ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Ogtpy
|
||||
; COMDAT initGL
|
||||
_TEXT SEGMENT
|
||||
majorVersion$ = 48
|
||||
minorVersion$ = 56
|
||||
initGL PROC ; COMDAT
|
||||
|
||||
; 11 : {
|
||||
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\StgSharpC.c
|
||||
; Line 23
|
||||
$LN4:
|
||||
00000 40 53 push rbx
|
||||
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
|
||||
00006 8b da mov ebx, edx
|
||||
|
||||
; 12 : glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, majorVersion);
|
||||
|
||||
; Line 24
|
||||
00008 8b d1 mov edx, ecx
|
||||
0000a b9 02 20 02 00 mov ecx, 139266 ; 00022002H
|
||||
0000f e8 00 00 00 00 call glfwWindowHint
|
||||
|
||||
; 13 : glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, minorVersion);
|
||||
|
||||
; Line 25
|
||||
00014 8b d3 mov edx, ebx
|
||||
00016 b9 03 20 02 00 mov ecx, 139267 ; 00022003H
|
||||
0001b e8 00 00 00 00 call glfwWindowHint
|
||||
|
||||
; 14 : glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);
|
||||
|
||||
; Line 26
|
||||
00020 ba 01 20 03 00 mov edx, 204801 ; 00032001H
|
||||
00025 b9 08 20 02 00 mov ecx, 139272 ; 00022008H
|
||||
|
||||
; 15 : }
|
||||
|
||||
0002a 48 83 c4 20 add rsp, 32 ; 00000020H
|
||||
0002e 5b pop rbx
|
||||
|
||||
; 14 : glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);
|
||||
|
||||
0002f e9 00 00 00 00 jmp glfwWindowHint
|
||||
0002a e8 00 00 00 00 call glfwWindowHint
|
||||
; Line 27
|
||||
0002f ba 01 00 00 00 mov edx, 1
|
||||
00034 b9 03 00 02 00 mov ecx, 131075 ; 00020003H
|
||||
; Line 28
|
||||
00039 48 83 c4 20 add rsp, 32 ; 00000020H
|
||||
0003d 5b pop rbx
|
||||
; Line 27
|
||||
0003e e9 00 00 00 00 jmp glfwWindowHint
|
||||
initGL ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Ogtpy
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\StgSharpC.c
|
||||
; COMDAT loadGlfuncDefault
|
||||
_TEXT SEGMENT
|
||||
procName$ = 48
|
||||
loadGlfuncDefault PROC ; COMDAT
|
||||
|
||||
; 18 : {
|
||||
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\StgSharpC.c
|
||||
; Line 31
|
||||
$LN19:
|
||||
00000 48 83 ec 28 sub rsp, 40 ; 00000028H
|
||||
|
||||
; 19 : void* ret = glfwGetProcAddress(procName);
|
||||
|
||||
; Line 32
|
||||
00004 e8 00 00 00 00 call glfwGetProcAddress
|
||||
|
||||
; 20 : printf("%llu\n", (uint64_t)ret);
|
||||
|
||||
00009 48 8b d0 mov rdx, rax
|
||||
0000c 48 8d 0d 00 00
|
||||
00 00 lea rcx, OFFSET FLAT:??_C@_05JMLLFKBP@?$CFllu?6@
|
||||
00013 e8 00 00 00 00 call printf
|
||||
|
||||
; 21 : if (ret = NULL)
|
||||
; 22 : {
|
||||
; 23 : *infolog = "Failed to load OpenGL api:";
|
||||
; 24 : for (size_t i = 0; i < sizeof(procName); i++)
|
||||
; 25 : {
|
||||
; 26 : infolog[30 + i] = procName[i];
|
||||
; 27 : }
|
||||
; 28 : printf("%s\n", infolog);
|
||||
; 29 : }
|
||||
; 30 : return (GLFWglproc)ret;
|
||||
|
||||
00018 33 c0 xor eax, eax
|
||||
|
||||
; 31 : }
|
||||
|
||||
0001a 48 83 c4 28 add rsp, 40 ; 00000028H
|
||||
0001e c3 ret 0
|
||||
; Line 43
|
||||
00009 33 c0 xor eax, eax
|
||||
; Line 44
|
||||
0000b 48 83 c4 28 add rsp, 40 ; 00000028H
|
||||
0000f c3 ret 0
|
||||
loadGlfuncDefault ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Ogtpy
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\StgSharpC.c
|
||||
; COMDAT linkShaderProgram
|
||||
_TEXT SEGMENT
|
||||
success$ = 32
|
||||
@@ -313,9 +330,8 @@ __$ArrayPad$ = 40
|
||||
context$ = 64
|
||||
shaderProgram$ = 72
|
||||
linkShaderProgram PROC ; COMDAT
|
||||
|
||||
; 34 : {
|
||||
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\StgSharpC.c
|
||||
; Line 47
|
||||
$LN7:
|
||||
00000 48 89 5c 24 18 mov QWORD PTR [rsp+24], rbx
|
||||
00005 57 push rdi
|
||||
@@ -326,31 +342,20 @@ $LN7:
|
||||
00014 48 89 44 24 28 mov QWORD PTR __$ArrayPad$[rsp], rax
|
||||
00019 48 8b f9 mov rdi, rcx
|
||||
0001c 8b da mov ebx, edx
|
||||
|
||||
; 35 : context->LinkProgram(shaderProgram);
|
||||
|
||||
; Line 48
|
||||
0001e 8b ca mov ecx, edx
|
||||
00020 ff 97 80 22 00
|
||||
00 call QWORD PTR [rdi+8832]
|
||||
|
||||
; 36 :
|
||||
; 37 : int success;
|
||||
; 38 : context->GetProgramiv(shaderProgram, GL_LINK_STATUS, &success);
|
||||
|
||||
; Line 51
|
||||
00026 4c 8d 44 24 20 lea r8, QWORD PTR success$[rsp]
|
||||
0002b ba 82 8b 00 00 mov edx, 35714 ; 00008b82H
|
||||
00030 8b cb mov ecx, ebx
|
||||
00032 ff 97 48 1a 00
|
||||
00 call QWORD PTR [rdi+6728]
|
||||
|
||||
; 39 : if (!success)
|
||||
|
||||
; Line 52
|
||||
00038 83 7c 24 20 00 cmp DWORD PTR success$[rsp], 0
|
||||
0003d 75 1b jne SHORT $LN2@linkShader
|
||||
|
||||
; 40 : {
|
||||
; 41 : context->GetProgramInfoLog(shaderProgram, 512, NULL, infolog);
|
||||
|
||||
; Line 54
|
||||
0003f 4c 8d 0d 00 00
|
||||
00 00 lea r9, OFFSET FLAT:infolog
|
||||
00046 45 33 c0 xor r8d, r8d
|
||||
@@ -358,24 +363,14 @@ $LN7:
|
||||
0004e 8b cb mov ecx, ebx
|
||||
00050 ff 97 98 19 00
|
||||
00 call QWORD PTR [rdi+6552]
|
||||
|
||||
; 42 : return 0;
|
||||
|
||||
; Line 55
|
||||
00056 33 c0 xor eax, eax
|
||||
00058 eb 02 jmp SHORT $LN3@linkShader
|
||||
$LN2@linkShader:
|
||||
|
||||
; 43 : }
|
||||
; 44 : else
|
||||
; 45 : {
|
||||
; 46 : return shaderProgram;
|
||||
|
||||
; Line 59
|
||||
0005a 8b c3 mov eax, ebx
|
||||
$LN3@linkShader:
|
||||
|
||||
; 47 : }
|
||||
; 48 : }
|
||||
|
||||
; Line 61
|
||||
0005c 48 8b 4c 24 28 mov rcx, QWORD PTR __$ArrayPad$[rsp]
|
||||
00061 48 33 cc xor rcx, rsp
|
||||
00064 e8 00 00 00 00 call __security_check_cookie
|
||||
@@ -386,27 +381,19 @@ $LN3@linkShader:
|
||||
linkShaderProgram ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Ogtpy
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\StgSharpC.c
|
||||
; COMDAT loadImageData
|
||||
_TEXT SEGMENT
|
||||
location$ = 64
|
||||
out$ = 72
|
||||
loader$ = 80
|
||||
loadImageData PROC ; COMDAT
|
||||
|
||||
; 51 : {
|
||||
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\StgSharpC.c
|
||||
; Line 64
|
||||
$LN5:
|
||||
00000 40 53 push rbx
|
||||
00002 48 83 ec 30 sub rsp, 48 ; 00000030H
|
||||
00006 4d 8b d0 mov r10, r8
|
||||
|
||||
; 52 : if (loader == NULL)
|
||||
; 53 : {
|
||||
; 54 : loader = stbi_load;
|
||||
; 55 : }
|
||||
; 56 : out->pixelPtr = loader(location, &(out->width), &(out->height), &(out->channel), 0);
|
||||
|
||||
; Line 69
|
||||
00009 c7 44 24 20 00
|
||||
00 00 00 mov DWORD PTR [rsp+32], 0
|
||||
00011 4d 85 d2 test r10, r10
|
||||
@@ -418,46 +405,36 @@ $LN5:
|
||||
00026 4c 8d 42 04 lea r8, QWORD PTR [rdx+4]
|
||||
0002a ff d0 call rax
|
||||
0002c 48 89 43 10 mov QWORD PTR [rbx+16], rax
|
||||
|
||||
; 57 : }
|
||||
|
||||
; Line 70
|
||||
00030 48 83 c4 30 add rsp, 48 ; 00000030H
|
||||
00034 5b pop rbx
|
||||
00035 c3 ret 0
|
||||
loadImageData ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Ogtpy
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\StgSharpC.c
|
||||
; COMDAT unloadImageData
|
||||
_TEXT SEGMENT
|
||||
out$ = 8
|
||||
unloadImageData PROC ; COMDAT
|
||||
|
||||
; 61 : free(out->pixelPtr);
|
||||
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\StgSharpC.c
|
||||
; Line 74
|
||||
00000 48 8b 49 10 mov rcx, QWORD PTR [rcx+16]
|
||||
00004 48 ff 25 00 00
|
||||
00 00 rex_jmp QWORD PTR __imp_free
|
||||
unloadImageData ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Ogtpy
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\StgSharpC.c
|
||||
; COMDAT readLog
|
||||
_TEXT SEGMENT
|
||||
readLog PROC ; COMDAT
|
||||
|
||||
; 66 : infolog[511] = '\0';
|
||||
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\StgSharpC.c
|
||||
; Line 79
|
||||
00000 c6 05 ff 01 00
|
||||
00 00 mov BYTE PTR infolog+511, 0
|
||||
|
||||
; 67 : return &infolog;
|
||||
|
||||
; Line 80
|
||||
00007 48 8d 05 00 00
|
||||
00 00 lea rax, OFFSET FLAT:infolog
|
||||
|
||||
; 68 : }
|
||||
|
||||
; Line 81
|
||||
0000e c3 ret 0
|
||||
readLog ENDP
|
||||
_TEXT ENDS
|
||||
|
||||
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.
Binary file not shown.
@@ -205,37 +205,16 @@ CONST SEGMENT
|
||||
__real@3f000000 DD 03f000000r ; 0.5
|
||||
CONST ENDS
|
||||
; Function compile flags: /Ogtpy
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\dllmain.c
|
||||
; COMDAT DllMain
|
||||
_TEXT SEGMENT
|
||||
hModule$ = 8
|
||||
ul_reason_for_call$ = 16
|
||||
lpReserved$ = 24
|
||||
DllMain PROC ; COMDAT
|
||||
|
||||
; 15 : switch (ul_reason_for_call)
|
||||
; 16 : {
|
||||
; 17 : case DLL_PROCESS_ATTACH:
|
||||
; 18 :
|
||||
; 19 : return 1;
|
||||
; 20 :
|
||||
; 21 : case DLL_THREAD_ATTACH:
|
||||
; 22 : return 1;
|
||||
; 23 :
|
||||
; 24 : case DLL_THREAD_DETACH:
|
||||
; 25 : return 1;
|
||||
; 26 :
|
||||
; 27 : case DLL_PROCESS_DETACH:
|
||||
; 28 : return 1;
|
||||
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\dllmain.c
|
||||
; Line 28
|
||||
00000 b8 01 00 00 00 mov eax, 1
|
||||
|
||||
; 29 :
|
||||
; 30 : break;
|
||||
; 31 : }
|
||||
; 32 : return TRUE;
|
||||
; 33 : }
|
||||
|
||||
; Line 33
|
||||
00005 c3 ret 0
|
||||
DllMain ENDP
|
||||
_TEXT ENDS
|
||||
|
||||
Binary file not shown.
@@ -9,102 +9,73 @@ PUBLIC deinit_mat2
|
||||
PUBLIC transpose2to4
|
||||
PUBLIC transpose2to3
|
||||
; Function compile flags: /Ogtpy
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat2.c
|
||||
; COMDAT transpose2to3
|
||||
_TEXT SEGMENT
|
||||
source$ = 8
|
||||
target$ = 16
|
||||
transpose2to3 PROC ; COMDAT
|
||||
|
||||
; 6 : __m128 t0 = _mm_shuffle_ps(ALIGN(source->m[0][0]), ALIGN(source->m[0][1]), _MM_SHUFFLE(1, 0, 1, 0));
|
||||
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat2.c
|
||||
; Line 6
|
||||
00000 0f 10 21 movups xmm4, XMMWORD PTR [rcx]
|
||||
00003 0f 10 59 04 movups xmm3, XMMWORD PTR [rcx+4]
|
||||
00007 0f 28 d4 movaps xmm2, xmm4
|
||||
0000a 0f 57 c0 xorps xmm0, xmm0
|
||||
0000d 0f c6 d3 44 shufps xmm2, xmm3, 68 ; 00000044H
|
||||
|
||||
; 7 : __m128 t1 = _mm_shuffle_ps(ALIGN(source->m[0][0]), ALIGN(source->m[0][1]), _MM_SHUFFLE(3, 2, 3, 2));
|
||||
; 8 :
|
||||
; 9 : target->colum[0] = _mm_shuffle_ps(t0, zeroVec, _MM_SHUFFLE(2, 0, 2, 0));
|
||||
|
||||
00011 0f 28 ca movaps xmm1, xmm2
|
||||
00003 0f 10 59 10 movups xmm3, XMMWORD PTR [rcx+16]
|
||||
00007 0f 28 cc movaps xmm1, xmm4
|
||||
0000a 0f 57 d2 xorps xmm2, xmm2
|
||||
0000d 0f c6 cb 44 shufps xmm1, xmm3, 68 ; 00000044H
|
||||
; Line 9
|
||||
00011 0f 28 c1 movaps xmm0, xmm1
|
||||
00014 0f c6 e3 ee shufps xmm4, xmm3, 238 ; 000000eeH
|
||||
00018 0f c6 c8 88 shufps xmm1, xmm0, 136 ; 00000088H
|
||||
|
||||
; 10 : target->colum[1] = _mm_shuffle_ps(t0, zeroVec, _MM_SHUFFLE(3, 1, 3, 1));
|
||||
|
||||
0001c 0f c6 d0 dd shufps xmm2, xmm0, 221 ; 000000ddH
|
||||
|
||||
; 11 : target->colum[2] = _mm_shuffle_ps(t1, zeroVec, _MM_SHUFFLE(2, 0, 2, 0));
|
||||
|
||||
00020 0f c6 e0 88 shufps xmm4, xmm0, 136 ; 00000088H
|
||||
00024 0f 11 0a movups XMMWORD PTR [rdx], xmm1
|
||||
00027 0f 11 52 10 movups XMMWORD PTR [rdx+16], xmm2
|
||||
00018 0f c6 c2 88 shufps xmm0, xmm2, 136 ; 00000088H
|
||||
; Line 10
|
||||
0001c 0f c6 ca dd shufps xmm1, xmm2, 221 ; 000000ddH
|
||||
; Line 11
|
||||
00020 0f c6 e2 88 shufps xmm4, xmm2, 136 ; 00000088H
|
||||
00024 0f 11 02 movups XMMWORD PTR [rdx], xmm0
|
||||
00027 0f 11 4a 10 movups XMMWORD PTR [rdx+16], xmm1
|
||||
0002b 0f 11 62 20 movups XMMWORD PTR [rdx+32], xmm4
|
||||
|
||||
; 12 : }
|
||||
|
||||
; Line 12
|
||||
0002f c3 ret 0
|
||||
transpose2to3 ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Ogtpy
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat2.c
|
||||
; COMDAT transpose2to4
|
||||
_TEXT SEGMENT
|
||||
source$ = 8
|
||||
target$ = 16
|
||||
transpose2to4 PROC ; COMDAT
|
||||
|
||||
; 16 : __m128 t0 = _mm_shuffle_ps(ALIGN(source->m[0][0]), ALIGN(source->m[0][1]), _MM_SHUFFLE(1, 0, 1, 0));
|
||||
|
||||
00000 0f 10 41 04 movups xmm0, XMMWORD PTR [rcx+4]
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat2.c
|
||||
; Line 16
|
||||
00000 0f 10 41 10 movups xmm0, XMMWORD PTR [rcx+16]
|
||||
00004 0f 10 19 movups xmm3, XMMWORD PTR [rcx]
|
||||
00007 0f 28 d3 movaps xmm2, xmm3
|
||||
|
||||
; 17 : __m128 t1 = _mm_shuffle_ps(ALIGN(source->m[0][0]), ALIGN(source->m[0][1]), _MM_SHUFFLE(3, 2, 3, 2));
|
||||
|
||||
0000a 0f c6 d8 ee shufps xmm3, xmm0, 238 ; 000000eeH
|
||||
0000e 0f c6 d0 44 shufps xmm2, xmm0, 68 ; 00000044H
|
||||
00012 0f 57 c0 xorps xmm0, xmm0
|
||||
|
||||
; 18 :
|
||||
; 19 : target->colum[0] = _mm_shuffle_ps(t0, zeroVec, _MM_SHUFFLE(2, 0, 2, 0));
|
||||
|
||||
00015 0f 28 ca movaps xmm1, xmm2
|
||||
|
||||
; 20 : target->colum[1] = _mm_shuffle_ps(t0, zeroVec, _MM_SHUFFLE(3, 1, 3, 1));
|
||||
|
||||
00018 0f c6 d0 dd shufps xmm2, xmm0, 221 ; 000000ddH
|
||||
0001c 0f c6 c8 88 shufps xmm1, xmm0, 136 ; 00000088H
|
||||
00020 0f 11 0a movups XMMWORD PTR [rdx], xmm1
|
||||
|
||||
; 21 : target->colum[2] = _mm_shuffle_ps(t1, zeroVec, _MM_SHUFFLE(2, 0, 2, 0));
|
||||
|
||||
00023 0f 28 cb movaps xmm1, xmm3
|
||||
00026 0f c6 c8 88 shufps xmm1, xmm0, 136 ; 00000088H
|
||||
|
||||
; 22 : target->colum[3] = _mm_shuffle_ps(t1, zeroVec, _MM_SHUFFLE(3, 1, 3, 1));
|
||||
|
||||
0002a 0f c6 d8 dd shufps xmm3, xmm0, 221 ; 000000ddH
|
||||
0002e 0f 11 4a 20 movups XMMWORD PTR [rdx+32], xmm1
|
||||
00007 0f 57 c9 xorps xmm1, xmm1
|
||||
0000a 0f 28 d3 movaps xmm2, xmm3
|
||||
; Line 17
|
||||
0000d 0f c6 d8 ee shufps xmm3, xmm0, 238 ; 000000eeH
|
||||
00011 0f c6 d0 44 shufps xmm2, xmm0, 68 ; 00000044H
|
||||
; Line 19
|
||||
00015 0f 28 c2 movaps xmm0, xmm2
|
||||
; Line 20
|
||||
00018 0f c6 d1 dd shufps xmm2, xmm1, 221 ; 000000ddH
|
||||
0001c 0f c6 c1 88 shufps xmm0, xmm1, 136 ; 00000088H
|
||||
00020 0f 11 02 movups XMMWORD PTR [rdx], xmm0
|
||||
; Line 21
|
||||
00023 0f 28 c3 movaps xmm0, xmm3
|
||||
00026 0f c6 c1 88 shufps xmm0, xmm1, 136 ; 00000088H
|
||||
; Line 22
|
||||
0002a 0f c6 d9 dd shufps xmm3, xmm1, 221 ; 000000ddH
|
||||
0002e 0f 11 42 20 movups XMMWORD PTR [rdx+32], xmm0
|
||||
00032 0f 11 52 10 movups XMMWORD PTR [rdx+16], xmm2
|
||||
00036 0f 11 5a 30 movups XMMWORD PTR [rdx+48], xmm3
|
||||
|
||||
; 23 : }
|
||||
|
||||
; Line 23
|
||||
0003a c3 ret 0
|
||||
transpose2to4 ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Ogtpy
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat2.c
|
||||
; COMDAT deinit_mat2
|
||||
_TEXT SEGMENT
|
||||
mat$ = 8
|
||||
deinit_mat2 PROC ; COMDAT
|
||||
|
||||
; 27 : _aligned_free(mat);
|
||||
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat2.c
|
||||
; Line 27
|
||||
00000 48 ff 25 00 00
|
||||
00 00 rex_jmp QWORD PTR __imp__aligned_free
|
||||
deinit_mat2 ENDP
|
||||
|
||||
Binary file not shown.
@@ -12,7 +12,7 @@ PUBLIC transpose3to2
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$transpose3to3 DD imagerel $LN4
|
||||
DD imagerel $LN4+83
|
||||
DD imagerel $LN4+79
|
||||
DD imagerel $unwind$transpose3to3
|
||||
; COMDAT xdata
|
||||
xdata SEGMENT
|
||||
@@ -20,293 +20,179 @@ $unwind$transpose3to3 DD 031001H
|
||||
DD 06810H
|
||||
DD 02204H
|
||||
; Function compile flags: /Ogtpy
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat3.c
|
||||
; COMDAT transpose3to2
|
||||
_TEXT SEGMENT
|
||||
source$ = 8
|
||||
target$ = 16
|
||||
transpose3to2 PROC ; COMDAT
|
||||
|
||||
; 7 : __m128 t0 = _mm_shuffle_ps(ALIGN(source->m[0][0]), ALIGN(source->m[0][1]), _MM_SHUFFLE(1, 0, 1, 0));
|
||||
|
||||
00000 0f 10 41 34 movups xmm0, XMMWORD PTR [rcx+52]
|
||||
00004 0f 10 51 30 movups xmm2, XMMWORD PTR [rcx+48]
|
||||
|
||||
; 8 : __m128 t2 = _mm_shuffle_ps(ALIGN(source->m[0][2]), zeroVec, _MM_SHUFFLE(1, 0, 1, 0));
|
||||
|
||||
00008 0f 10 49 38 movups xmm1, XMMWORD PTR [rcx+56]
|
||||
0000c 0f c6 d0 44 shufps xmm2, xmm0, 68 ; 00000044H
|
||||
00010 0f 57 c0 xorps xmm0, xmm0
|
||||
00013 0f c6 c8 44 shufps xmm1, xmm0, 68 ; 00000044H
|
||||
|
||||
; 9 :
|
||||
; 10 : target->colum[0] = _mm_shuffle_ps(t0, t2, _MM_SHUFFLE(2, 0, 2, 0));
|
||||
|
||||
00017 0f 28 c2 movaps xmm0, xmm2
|
||||
0001a 0f c6 c1 88 shufps xmm0, xmm1, 136 ; 00000088H
|
||||
|
||||
; 11 : target->colum[1] = _mm_shuffle_ps(t0, t2, _MM_SHUFFLE(3, 1, 3, 1));
|
||||
|
||||
0001e 0f c6 d1 dd shufps xmm2, xmm1, 221 ; 000000ddH
|
||||
00022 0f 11 02 movups XMMWORD PTR [rdx], xmm0
|
||||
00025 0f 11 52 10 movups XMMWORD PTR [rdx+16], xmm2
|
||||
|
||||
; 12 : }
|
||||
|
||||
00029 c3 ret 0
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat3.c
|
||||
; Line 7
|
||||
00000 0f 10 41 10 movups xmm0, XMMWORD PTR [rcx+16]
|
||||
00004 0f 10 11 movups xmm2, XMMWORD PTR [rcx]
|
||||
; Line 8
|
||||
00007 0f 10 49 20 movups xmm1, XMMWORD PTR [rcx+32]
|
||||
0000b 0f c6 d0 44 shufps xmm2, xmm0, 68 ; 00000044H
|
||||
0000f 0f 57 c0 xorps xmm0, xmm0
|
||||
00012 0f c6 c8 44 shufps xmm1, xmm0, 68 ; 00000044H
|
||||
; Line 10
|
||||
00016 0f 28 c2 movaps xmm0, xmm2
|
||||
00019 0f c6 c1 88 shufps xmm0, xmm1, 136 ; 00000088H
|
||||
; Line 11
|
||||
0001d 0f c6 d1 dd shufps xmm2, xmm1, 221 ; 000000ddH
|
||||
00021 0f 11 02 movups XMMWORD PTR [rdx], xmm0
|
||||
00024 0f 11 52 10 movups XMMWORD PTR [rdx+16], xmm2
|
||||
; Line 12
|
||||
00028 c3 ret 0
|
||||
transpose3to2 ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Ogtpy
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat3.c
|
||||
; COMDAT transpose3to3
|
||||
_TEXT SEGMENT
|
||||
source$ = 32
|
||||
target$ = 40
|
||||
transpose3to3 PROC ; COMDAT
|
||||
|
||||
; 15 : {
|
||||
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat3.c
|
||||
; Line 15
|
||||
$LN4:
|
||||
00000 48 83 ec 18 sub rsp, 24
|
||||
|
||||
; 16 : __m128 t0 = _mm_shuffle_ps(ALIGN(source->m[0][0]), ALIGN(source->m[0][1]), _MM_SHUFFLE(1, 0, 1, 0));
|
||||
; 17 : __m128 t1 = _mm_shuffle_ps(ALIGN(source->m[0][0]), ALIGN(source->m[0][1]), _MM_SHUFFLE(3, 2, 3, 2));
|
||||
; 18 : __m128 t2 = _mm_shuffle_ps(ALIGN(source->m[0][2]), zeroVec, _MM_SHUFFLE(1, 0, 1, 0));
|
||||
|
||||
00004 0f 10 61 38 movups xmm4, XMMWORD PTR [rcx+56]
|
||||
00008 0f 10 69 34 movups xmm5, XMMWORD PTR [rcx+52]
|
||||
; Line 16
|
||||
00004 0f 10 61 10 movups xmm4, XMMWORD PTR [rcx+16]
|
||||
; Line 18
|
||||
00008 0f 10 69 20 movups xmm5, XMMWORD PTR [rcx+32]
|
||||
0000c 0f 29 34 24 movaps XMMWORD PTR [rsp], xmm6
|
||||
00010 0f 57 c0 xorps xmm0, xmm0
|
||||
00013 0f 10 71 30 movups xmm6, XMMWORD PTR [rcx+48]
|
||||
00017 0f 28 cc movaps xmm1, xmm4
|
||||
0001a 0f 57 d2 xorps xmm2, xmm2
|
||||
0001d 0f 28 de movaps xmm3, xmm6
|
||||
00020 0f c6 c8 44 shufps xmm1, xmm0, 68 ; 00000044H
|
||||
00024 0f c6 dd 44 shufps xmm3, xmm5, 68 ; 00000044H
|
||||
00028 0f c6 f5 ee shufps xmm6, xmm5, 238 ; 000000eeH
|
||||
|
||||
; 19 : __m128 t3 = _mm_shuffle_ps(ALIGN(source->m[0][2]), zeroVec, _MM_SHUFFLE(3, 2, 3, 2));
|
||||
; 20 :
|
||||
; 21 : target->colum[0] = _mm_shuffle_ps(t0, t2, _MM_SHUFFLE(2, 0, 2, 0));
|
||||
|
||||
0002c 0f 28 c3 movaps xmm0, xmm3
|
||||
0002f 0f c6 e2 ee shufps xmm4, xmm2, 238 ; 000000eeH
|
||||
|
||||
; 22 : target->colum[1] = _mm_shuffle_ps(t0, t2, _MM_SHUFFLE(3, 1, 3, 1));
|
||||
; 23 : target->colum[2] = _mm_shuffle_ps(t1, t3, _MM_SHUFFLE(2, 0, 2, 0));
|
||||
|
||||
00033 0f c6 f4 88 shufps xmm6, xmm4, 136 ; 00000088H
|
||||
00037 0f c6 c1 88 shufps xmm0, xmm1, 136 ; 00000088H
|
||||
0003b 0f c6 d9 dd shufps xmm3, xmm1, 221 ; 000000ddH
|
||||
0003f 0f 11 72 20 movups XMMWORD PTR [rdx+32], xmm6
|
||||
|
||||
; 24 : }
|
||||
|
||||
00043 0f 28 34 24 movaps xmm6, XMMWORD PTR [rsp]
|
||||
00047 0f 11 02 movups XMMWORD PTR [rdx], xmm0
|
||||
0004a 0f 11 5a 10 movups XMMWORD PTR [rdx+16], xmm3
|
||||
0004e 48 83 c4 18 add rsp, 24
|
||||
00052 c3 ret 0
|
||||
00010 0f 57 db xorps xmm3, xmm3
|
||||
00013 0f 10 31 movups xmm6, XMMWORD PTR [rcx]
|
||||
00016 0f 28 cd movaps xmm1, xmm5
|
||||
; Line 19
|
||||
00019 0f c6 eb ee shufps xmm5, xmm3, 238 ; 000000eeH
|
||||
0001d 0f 28 d6 movaps xmm2, xmm6
|
||||
00020 0f c6 cb 44 shufps xmm1, xmm3, 68 ; 00000044H
|
||||
00024 0f c6 d4 44 shufps xmm2, xmm4, 68 ; 00000044H
|
||||
00028 0f c6 f4 ee shufps xmm6, xmm4, 238 ; 000000eeH
|
||||
; Line 21
|
||||
0002c 0f 28 c2 movaps xmm0, xmm2
|
||||
; Line 23
|
||||
0002f 0f c6 f5 88 shufps xmm6, xmm5, 136 ; 00000088H
|
||||
00033 0f c6 c1 88 shufps xmm0, xmm1, 136 ; 00000088H
|
||||
00037 0f c6 d1 dd shufps xmm2, xmm1, 221 ; 000000ddH
|
||||
0003b 0f 11 72 20 movups XMMWORD PTR [rdx+32], xmm6
|
||||
; Line 24
|
||||
0003f 0f 28 34 24 movaps xmm6, XMMWORD PTR [rsp]
|
||||
00043 0f 11 02 movups XMMWORD PTR [rdx], xmm0
|
||||
00046 0f 11 52 10 movups XMMWORD PTR [rdx+16], xmm2
|
||||
0004a 48 83 c4 18 add rsp, 24
|
||||
0004e c3 ret 0
|
||||
transpose3to3 ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Ogtpy
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat3.c
|
||||
; COMDAT transpose3to4
|
||||
_TEXT SEGMENT
|
||||
source$ = 8
|
||||
target$ = 16
|
||||
transpose3to4 PROC ; COMDAT
|
||||
|
||||
; 28 : __m128 t0 = _mm_shuffle_ps(ALIGN(source->m[0][0]), ALIGN(source->m[0][1]), _MM_SHUFFLE(1, 0, 1, 0));
|
||||
|
||||
00000 0f 10 41 34 movups xmm0, XMMWORD PTR [rcx+52]
|
||||
00004 0f 10 61 30 movups xmm4, XMMWORD PTR [rcx+48]
|
||||
|
||||
; 29 : __m128 t1 = _mm_shuffle_ps(ALIGN(source->m[0][0]), ALIGN(source->m[0][1]), _MM_SHUFFLE(3, 2, 3, 2));
|
||||
; 30 : __m128 t2 = _mm_shuffle_ps(ALIGN(source->m[0][2]), zeroVec, _MM_SHUFFLE(1, 0, 1, 0));
|
||||
|
||||
00008 0f 10 51 38 movups xmm2, XMMWORD PTR [rcx+56]
|
||||
0000c 0f 28 dc movaps xmm3, xmm4
|
||||
0000f 0f c6 e0 ee shufps xmm4, xmm0, 238 ; 000000eeH
|
||||
00013 0f c6 d8 44 shufps xmm3, xmm0, 68 ; 00000044H
|
||||
00017 0f 28 ca movaps xmm1, xmm2
|
||||
0001a 0f 57 c0 xorps xmm0, xmm0
|
||||
0001d 0f c6 c8 44 shufps xmm1, xmm0, 68 ; 00000044H
|
||||
|
||||
; 31 : __m128 t3 = _mm_shuffle_ps(ALIGN(source->m[0][2]), zeroVec, _MM_SHUFFLE(3, 2, 3, 2));
|
||||
|
||||
00021 0f c6 d0 ee shufps xmm2, xmm0, 238 ; 000000eeH
|
||||
|
||||
; 32 :
|
||||
; 33 : target->colum[0] = _mm_shuffle_ps(t0, t2, _MM_SHUFFLE(2, 0, 2, 0));
|
||||
|
||||
00025 0f 28 c3 movaps xmm0, xmm3
|
||||
00028 0f c6 c1 88 shufps xmm0, xmm1, 136 ; 00000088H
|
||||
0002c 0f 11 02 movups XMMWORD PTR [rdx], xmm0
|
||||
|
||||
; 34 : target->colum[1] = _mm_shuffle_ps(t0, t2, _MM_SHUFFLE(3, 1, 3, 1));
|
||||
; 35 : target->colum[2] = _mm_shuffle_ps(t1, t3, _MM_SHUFFLE(2, 0, 2, 0));
|
||||
|
||||
0002f 0f 28 c4 movaps xmm0, xmm4
|
||||
00032 0f c6 c2 88 shufps xmm0, xmm2, 136 ; 00000088H
|
||||
00036 0f c6 d9 dd shufps xmm3, xmm1, 221 ; 000000ddH
|
||||
|
||||
; 36 : target->colum[3] = _mm_shuffle_ps(t1, t3, _MM_SHUFFLE(3, 1, 3, 1));
|
||||
|
||||
0003a 0f c6 e2 dd shufps xmm4, xmm2, 221 ; 000000ddH
|
||||
0003e 0f 11 42 20 movups XMMWORD PTR [rdx+32], xmm0
|
||||
00042 0f 11 5a 10 movups XMMWORD PTR [rdx+16], xmm3
|
||||
00046 0f 11 62 30 movups XMMWORD PTR [rdx+48], xmm4
|
||||
|
||||
; 37 : }
|
||||
|
||||
0004a c3 ret 0
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat3.c
|
||||
; Line 28
|
||||
00000 0f 10 41 10 movups xmm0, XMMWORD PTR [rcx+16]
|
||||
00004 0f 10 21 movups xmm4, XMMWORD PTR [rcx]
|
||||
; Line 30
|
||||
00007 0f 10 51 20 movups xmm2, XMMWORD PTR [rcx+32]
|
||||
0000b 0f 28 dc movaps xmm3, xmm4
|
||||
0000e 0f c6 e0 ee shufps xmm4, xmm0, 238 ; 000000eeH
|
||||
00012 0f c6 d8 44 shufps xmm3, xmm0, 68 ; 00000044H
|
||||
00016 0f 28 ca movaps xmm1, xmm2
|
||||
00019 0f 57 c0 xorps xmm0, xmm0
|
||||
0001c 0f c6 c8 44 shufps xmm1, xmm0, 68 ; 00000044H
|
||||
; Line 31
|
||||
00020 0f c6 d0 ee shufps xmm2, xmm0, 238 ; 000000eeH
|
||||
; Line 33
|
||||
00024 0f 28 c3 movaps xmm0, xmm3
|
||||
00027 0f c6 c1 88 shufps xmm0, xmm1, 136 ; 00000088H
|
||||
0002b 0f 11 02 movups XMMWORD PTR [rdx], xmm0
|
||||
; Line 35
|
||||
0002e 0f 28 c4 movaps xmm0, xmm4
|
||||
00031 0f c6 c2 88 shufps xmm0, xmm2, 136 ; 00000088H
|
||||
00035 0f c6 d9 dd shufps xmm3, xmm1, 221 ; 000000ddH
|
||||
; Line 36
|
||||
00039 0f c6 e2 dd shufps xmm4, xmm2, 221 ; 000000ddH
|
||||
0003d 0f 11 42 20 movups XMMWORD PTR [rdx+32], xmm0
|
||||
00041 0f 11 5a 10 movups XMMWORD PTR [rdx+16], xmm3
|
||||
00045 0f 11 62 30 movups XMMWORD PTR [rdx+48], xmm4
|
||||
; Line 37
|
||||
00049 c3 ret 0
|
||||
transpose3to4 ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Ogtpy
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat3.c
|
||||
; COMDAT det_mat3_internal
|
||||
_TEXT SEGMENT
|
||||
c0$ = 8
|
||||
c1$ = 16
|
||||
c2$ = 24
|
||||
det_mat3_internal PROC ; COMDAT
|
||||
|
||||
; 41 : //let adding row aligned
|
||||
; 42 : __m128 addc1 = _mm_shuffle_ps(c1, c1, _MM_SHUFFLE(3, 0, 2, 1));
|
||||
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat3.c
|
||||
; Line 42
|
||||
00000 0f 10 1a movups xmm3, XMMWORD PTR [rdx]
|
||||
|
||||
; 43 : __m128 addc2 = _mm_shuffle_ps(c2, c2, _MM_SHUFFLE(3, 1, 0, 2));
|
||||
|
||||
; Line 43
|
||||
00003 41 0f 10 10 movups xmm2, XMMWORD PTR [r8]
|
||||
00007 0f 28 e3 movaps xmm4, xmm3
|
||||
0000a 0f c6 e3 c9 shufps xmm4, xmm3, 201 ; 000000c9H
|
||||
0000e 0f 28 c2 movaps xmm0, xmm2
|
||||
|
||||
; 44 :
|
||||
; 45 : //let sub row aligned
|
||||
; 46 : __m128 subc1 = _mm_shuffle_ps(c1, c1, _MM_SHUFFLE(3, 1, 0, 2));
|
||||
; 47 : __m128 subc2 = _mm_shuffle_ps(c2, c2, _MM_SHUFFLE(3, 0, 2, 1));
|
||||
; 48 :
|
||||
; 49 : //multple all add row
|
||||
; 50 : __m128 cache = _mm_mul_ps(c0, addc1);
|
||||
|
||||
; Line 50
|
||||
00011 0f 59 21 mulps xmm4, XMMWORD PTR [rcx]
|
||||
00014 0f c6 c2 d2 shufps xmm0, xmm2, 210 ; 000000d2H
|
||||
00018 0f c6 db d2 shufps xmm3, xmm3, 210 ; 000000d2H
|
||||
|
||||
; 51 : cache = _mm_mul_ps(cache, addc2);
|
||||
; 52 :
|
||||
; 53 : //multiple all sub row
|
||||
; 54 : __m128 sub = _mm_mul_ps(c0, subc1);
|
||||
|
||||
; Line 54
|
||||
0001c 0f 59 19 mulps xmm3, XMMWORD PTR [rcx]
|
||||
0001f 0f 59 e0 mulps xmm4, xmm0
|
||||
00022 0f c6 d2 c9 shufps xmm2, xmm2, 201 ; 000000c9H
|
||||
|
||||
; 55 : sub = _mm_mul_ps(sub, subc2);
|
||||
|
||||
; Line 55
|
||||
00026 0f 59 da mulps xmm3, xmm2
|
||||
|
||||
; 56 :
|
||||
; 57 : //main-corner sub sub-corner
|
||||
; 58 : cache = _mm_sub_ps(cache, sub);
|
||||
|
||||
; Line 58
|
||||
00029 0f 5c e3 subps xmm4, xmm3
|
||||
|
||||
; 59 :
|
||||
; 60 : __m128 ret = _mm_hadd_ps(cache, cache); //element 1 add element 2
|
||||
|
||||
; Line 60
|
||||
0002c 0f 28 c4 movaps xmm0, xmm4
|
||||
0002f f2 0f 7c c4 haddps xmm0, xmm4
|
||||
|
||||
; 61 : ret = _mm_add_ps(ret, cache); //(e1 add e2) add element 3
|
||||
|
||||
; Line 61
|
||||
00033 0f 58 c4 addps xmm0, xmm4
|
||||
|
||||
; 62 :
|
||||
; 63 : return ret.m128_f32[2];
|
||||
|
||||
; Line 63
|
||||
00036 0f c6 c0 aa shufps xmm0, xmm0, 170 ; 000000aaH
|
||||
|
||||
; 64 : }
|
||||
|
||||
; Line 64
|
||||
0003a c3 ret 0
|
||||
det_mat3_internal ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Ogtpy
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat3.c
|
||||
; COMDAT det_mat3
|
||||
_TEXT SEGMENT
|
||||
mat$ = 8
|
||||
det_mat3 PROC ; COMDAT
|
||||
|
||||
; 68 : return det_mat3_internal(
|
||||
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat3.c
|
||||
; Line 68
|
||||
00000 0f 10 59 10 movups xmm3, XMMWORD PTR [rcx+16]
|
||||
00004 0f 10 51 20 movups xmm2, XMMWORD PTR [rcx+32]
|
||||
|
||||
; 42 : __m128 addc1 = _mm_shuffle_ps(c1, c1, _MM_SHUFFLE(3, 0, 2, 1));
|
||||
|
||||
; Line 42
|
||||
00008 0f 28 e3 movaps xmm4, xmm3
|
||||
0000b 0f c6 e3 c9 shufps xmm4, xmm3, 201 ; 000000c9H
|
||||
|
||||
; 43 : __m128 addc2 = _mm_shuffle_ps(c2, c2, _MM_SHUFFLE(3, 1, 0, 2));
|
||||
|
||||
; Line 43
|
||||
0000f 0f 28 c2 movaps xmm0, xmm2
|
||||
|
||||
; 44 :
|
||||
; 45 : //let sub row aligned
|
||||
; 46 : __m128 subc1 = _mm_shuffle_ps(c1, c1, _MM_SHUFFLE(3, 1, 0, 2));
|
||||
; 47 : __m128 subc2 = _mm_shuffle_ps(c2, c2, _MM_SHUFFLE(3, 0, 2, 1));
|
||||
; 48 :
|
||||
; 49 : //multple all add row
|
||||
; 50 : __m128 cache = _mm_mul_ps(c0, addc1);
|
||||
|
||||
; Line 50
|
||||
00012 0f 59 21 mulps xmm4, XMMWORD PTR [rcx]
|
||||
00015 0f c6 c2 d2 shufps xmm0, xmm2, 210 ; 000000d2H
|
||||
00019 0f c6 db d2 shufps xmm3, xmm3, 210 ; 000000d2H
|
||||
|
||||
; 51 : cache = _mm_mul_ps(cache, addc2);
|
||||
; 52 :
|
||||
; 53 : //multiple all sub row
|
||||
; 54 : __m128 sub = _mm_mul_ps(c0, subc1);
|
||||
|
||||
; Line 54
|
||||
0001d 0f 59 19 mulps xmm3, XMMWORD PTR [rcx]
|
||||
00020 0f 59 e0 mulps xmm4, xmm0
|
||||
00023 0f c6 d2 c9 shufps xmm2, xmm2, 201 ; 000000c9H
|
||||
|
||||
; 55 : sub = _mm_mul_ps(sub, subc2);
|
||||
|
||||
; Line 55
|
||||
00027 0f 59 da mulps xmm3, xmm2
|
||||
|
||||
; 56 :
|
||||
; 57 : //main-corner sub sub-corner
|
||||
; 58 : cache = _mm_sub_ps(cache, sub);
|
||||
|
||||
; Line 58
|
||||
0002a 0f 5c e3 subps xmm4, xmm3
|
||||
|
||||
; 59 :
|
||||
; 60 : __m128 ret = _mm_hadd_ps(cache, cache); //element 1 add element 2
|
||||
|
||||
; Line 60
|
||||
0002d 0f 28 c4 movaps xmm0, xmm4
|
||||
00030 f2 0f 7c c4 haddps xmm0, xmm4
|
||||
|
||||
; 61 : ret = _mm_add_ps(ret, cache); //(e1 add e2) add element 3
|
||||
|
||||
; Line 61
|
||||
00034 0f 58 c4 addps xmm0, xmm4
|
||||
|
||||
; 68 : return det_mat3_internal(
|
||||
|
||||
; Line 68
|
||||
00037 0f c6 c0 aa shufps xmm0, xmm0, 170 ; 000000aaH
|
||||
|
||||
; 69 : mat->colum[0],
|
||||
; 70 : mat->colum[1],
|
||||
; 71 : mat->colum[2]
|
||||
; 72 : );
|
||||
; 73 : }
|
||||
|
||||
; Line 73
|
||||
0003b c3 ret 0
|
||||
det_mat3 ENDP
|
||||
_TEXT ENDS
|
||||
|
||||
Binary file not shown.
@@ -36,58 +36,42 @@ $unwind$det_mat4 DD 0b3501H
|
||||
DD 04680eH
|
||||
DD 0a207H
|
||||
; Function compile flags: /Ogtpy
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
; COMDAT transpose4to2
|
||||
_TEXT SEGMENT
|
||||
source$ = 8
|
||||
target$ = 16
|
||||
transpose4to2 PROC ; COMDAT
|
||||
|
||||
; 8 : __m128 t0 = _mm_shuffle_ps(ALIGN(source->colum[0]), ALIGN(source->colum[1]), _MM_SHUFFLE(1, 0, 1, 0));
|
||||
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
; Line 8
|
||||
00000 0f 10 41 10 movups xmm0, XMMWORD PTR [rcx+16]
|
||||
00004 0f 10 11 movups xmm2, XMMWORD PTR [rcx]
|
||||
|
||||
; 9 : __m128 t2 = _mm_shuffle_ps(ALIGN(source->colum[2]), ALIGN(source->colum[3]), _MM_SHUFFLE(1, 0, 1, 0));
|
||||
|
||||
; Line 9
|
||||
00007 0f 10 49 20 movups xmm1, XMMWORD PTR [rcx+32]
|
||||
0000b 0f c6 d0 44 shufps xmm2, xmm0, 68 ; 00000044H
|
||||
0000f 0f 10 41 30 movups xmm0, XMMWORD PTR [rcx+48]
|
||||
00013 0f c6 c8 44 shufps xmm1, xmm0, 68 ; 00000044H
|
||||
|
||||
; 10 :
|
||||
; 11 : target->colum[0] = _mm_shuffle_ps(t0, t2, _MM_SHUFFLE(2, 0, 2, 0));
|
||||
|
||||
; Line 11
|
||||
00017 0f 28 c2 movaps xmm0, xmm2
|
||||
0001a 0f c6 c1 88 shufps xmm0, xmm1, 136 ; 00000088H
|
||||
|
||||
; 12 : target->colum[1] = _mm_shuffle_ps(t0, t2, _MM_SHUFFLE(3, 1, 3, 1));
|
||||
|
||||
; Line 12
|
||||
0001e 0f c6 d1 dd shufps xmm2, xmm1, 221 ; 000000ddH
|
||||
00022 0f 11 02 movups XMMWORD PTR [rdx], xmm0
|
||||
00025 0f 11 52 10 movups XMMWORD PTR [rdx+16], xmm2
|
||||
|
||||
; 13 : }
|
||||
|
||||
; Line 13
|
||||
00029 c3 ret 0
|
||||
transpose4to2 ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Ogtpy
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
; COMDAT transpose4to4
|
||||
_TEXT SEGMENT
|
||||
source$ = 8
|
||||
target$ = 16
|
||||
transpose4to4 PROC ; COMDAT
|
||||
|
||||
; 17 : __m128 t0 = _mm_shuffle_ps(ALIGN(source->colum[0]), ALIGN(source->colum[1]), _MM_SHUFFLE(1, 0, 1, 0));
|
||||
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
; Line 17
|
||||
00000 0f 10 41 10 movups xmm0, XMMWORD PTR [rcx+16]
|
||||
00004 0f 10 21 movups xmm4, XMMWORD PTR [rcx]
|
||||
|
||||
; 18 : __m128 t1 = _mm_shuffle_ps(ALIGN(source->colum[0]), ALIGN(source->colum[1]), _MM_SHUFFLE(3, 2, 3, 2));
|
||||
; 19 : __m128 t2 = _mm_shuffle_ps(ALIGN(source->colum[2]), ALIGN(source->colum[3]), _MM_SHUFFLE(1, 0, 1, 0));
|
||||
|
||||
; Line 19
|
||||
00007 0f 10 51 20 movups xmm2, XMMWORD PTR [rcx+32]
|
||||
0000b 0f 28 dc movaps xmm3, xmm4
|
||||
0000e 0f c6 e0 ee shufps xmm4, xmm0, 238 ; 000000eeH
|
||||
@@ -95,57 +79,38 @@ transpose4to4 PROC ; COMDAT
|
||||
00016 0f 28 ca movaps xmm1, xmm2
|
||||
00019 0f 10 41 30 movups xmm0, XMMWORD PTR [rcx+48]
|
||||
0001d 0f c6 c8 44 shufps xmm1, xmm0, 68 ; 00000044H
|
||||
|
||||
; 20 : __m128 t3 = _mm_shuffle_ps(ALIGN(source->colum[2]), ALIGN(source->colum[3]), _MM_SHUFFLE(3, 2, 3, 2));
|
||||
|
||||
; Line 20
|
||||
00021 0f c6 d0 ee shufps xmm2, xmm0, 238 ; 000000eeH
|
||||
|
||||
; 21 :
|
||||
; 22 : target->colum[0] = _mm_shuffle_ps(t0, t2, _MM_SHUFFLE(2, 0, 2, 0));
|
||||
|
||||
; Line 22
|
||||
00025 0f 28 c3 movaps xmm0, xmm3
|
||||
00028 0f c6 c1 88 shufps xmm0, xmm1, 136 ; 00000088H
|
||||
0002c 0f 11 02 movups XMMWORD PTR [rdx], xmm0
|
||||
|
||||
; 23 : target->colum[1] = _mm_shuffle_ps(t0, t2, _MM_SHUFFLE(3, 1, 3, 1));
|
||||
; 24 : target->colum[2] = _mm_shuffle_ps(t1, t3, _MM_SHUFFLE(2, 0, 2, 0));
|
||||
|
||||
; Line 24
|
||||
0002f 0f 28 c4 movaps xmm0, xmm4
|
||||
00032 0f c6 c2 88 shufps xmm0, xmm2, 136 ; 00000088H
|
||||
00036 0f c6 d9 dd shufps xmm3, xmm1, 221 ; 000000ddH
|
||||
|
||||
; 25 : target->colum[3] = _mm_shuffle_ps(t1, t3, _MM_SHUFFLE(3, 1, 3, 1));
|
||||
|
||||
; Line 25
|
||||
0003a 0f c6 e2 dd shufps xmm4, xmm2, 221 ; 000000ddH
|
||||
0003e 0f 11 42 20 movups XMMWORD PTR [rdx+32], xmm0
|
||||
00042 0f 11 5a 10 movups XMMWORD PTR [rdx+16], xmm3
|
||||
00046 0f 11 62 30 movups XMMWORD PTR [rdx+48], xmm4
|
||||
|
||||
; 26 : }
|
||||
|
||||
; Line 26
|
||||
0004a c3 ret 0
|
||||
transpose4to4 ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Ogtpy
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
; COMDAT transpose4to3
|
||||
_TEXT SEGMENT
|
||||
source$ = 32
|
||||
target$ = 40
|
||||
transpose4to3 PROC ; COMDAT
|
||||
|
||||
; 29 : {
|
||||
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
; Line 29
|
||||
$LN4:
|
||||
00000 48 83 ec 18 sub rsp, 24
|
||||
|
||||
; 30 : __m128 t0 = _mm_shuffle_ps(ALIGN(source->colum[0]), ALIGN(source->colum[1]), _MM_SHUFFLE(1, 0, 1, 0));
|
||||
|
||||
; Line 30
|
||||
00004 0f 10 61 10 movups xmm4, XMMWORD PTR [rcx+16]
|
||||
|
||||
; 31 : __m128 t1 = _mm_shuffle_ps(ALIGN(source->colum[0]), ALIGN(source->colum[1]), _MM_SHUFFLE(3, 2, 3, 2));
|
||||
; 32 : __m128 t2 = _mm_shuffle_ps(ALIGN(source->colum[2]), ALIGN(source->colum[3]), _MM_SHUFFLE(1, 0, 1, 0));
|
||||
|
||||
; Line 32
|
||||
00008 0f 10 69 20 movups xmm5, XMMWORD PTR [rcx+32]
|
||||
0000c 0f 10 59 30 movups xmm3, XMMWORD PTR [rcx+48]
|
||||
00010 0f 29 34 24 movaps XMMWORD PTR [rsp], xmm6
|
||||
@@ -153,28 +118,18 @@ $LN4:
|
||||
00017 0f 10 31 movups xmm6, XMMWORD PTR [rcx]
|
||||
0001a 0f c6 cb 44 shufps xmm1, xmm3, 68 ; 00000044H
|
||||
0001e 0f 28 d6 movaps xmm2, xmm6
|
||||
|
||||
; 33 : __m128 t3 = _mm_shuffle_ps(ALIGN(source->colum[2]), ALIGN(source->colum[3]), _MM_SHUFFLE(3, 2, 3, 2));
|
||||
|
||||
; Line 33
|
||||
00021 0f c6 eb ee shufps xmm5, xmm3, 238 ; 000000eeH
|
||||
00025 0f c6 d4 44 shufps xmm2, xmm4, 68 ; 00000044H
|
||||
00029 0f c6 f4 ee shufps xmm6, xmm4, 238 ; 000000eeH
|
||||
|
||||
; 34 :
|
||||
; 35 : target->colum[0] = _mm_shuffle_ps(t0, t2, _MM_SHUFFLE(2, 0, 2, 0));
|
||||
|
||||
; Line 35
|
||||
0002d 0f 28 c2 movaps xmm0, xmm2
|
||||
|
||||
; 36 : target->colum[1] = _mm_shuffle_ps(t0, t2, _MM_SHUFFLE(3, 1, 3, 1));
|
||||
; 37 : target->colum[2] = _mm_shuffle_ps(t1, t3, _MM_SHUFFLE(2, 0, 2, 0));
|
||||
|
||||
; Line 37
|
||||
00030 0f c6 f5 88 shufps xmm6, xmm5, 136 ; 00000088H
|
||||
00034 0f c6 c1 88 shufps xmm0, xmm1, 136 ; 00000088H
|
||||
00038 0f c6 d1 dd shufps xmm2, xmm1, 221 ; 000000ddH
|
||||
0003c 0f 11 72 20 movups XMMWORD PTR [rdx+32], xmm6
|
||||
|
||||
; 38 : }
|
||||
|
||||
; Line 38
|
||||
00040 0f 28 34 24 movaps xmm6, XMMWORD PTR [rsp]
|
||||
00044 0f 11 02 movups XMMWORD PTR [rdx], xmm0
|
||||
00047 0f 11 52 10 movups XMMWORD PTR [rdx+16], xmm2
|
||||
@@ -183,252 +138,141 @@ $LN4:
|
||||
transpose4to3 ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Ogtpy
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat3.c
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat3.c
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat3.c
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat3.c
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat3.c
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat3.c
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat3.c
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat3.c
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat3.c
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat3.c
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
; COMDAT det_mat4
|
||||
_TEXT SEGMENT
|
||||
matPtr$ = 96
|
||||
transpose$ = 104
|
||||
det_mat4 PROC ; COMDAT
|
||||
|
||||
; 41 : {
|
||||
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
; Line 41
|
||||
$LN12:
|
||||
00000 48 8b c4 mov rax, rsp
|
||||
00003 48 83 ec 58 sub rsp, 88 ; 00000058H
|
||||
|
||||
; 42 : __m128 mc0 = ALIGN(matPtr->colum[0]);
|
||||
|
||||
; Line 42
|
||||
00007 0f 10 29 movups xmm5, XMMWORD PTR [rcx]
|
||||
0000a 0f 29 70 e8 movaps XMMWORD PTR [rax-24], xmm6
|
||||
|
||||
; 47 : __m128 cogeneration = _mm_set_ps(
|
||||
|
||||
; Line 47
|
||||
0000e 0f 10 71 30 movups xmm6, XMMWORD PTR [rcx+48]
|
||||
00012 0f 29 78 d8 movaps XMMWORD PTR [rax-40], xmm7
|
||||
00016 44 0f 29 40 c8 movaps XMMWORD PTR [rax-56], xmm8
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat3.c
|
||||
|
||||
; 43 : __m128 addc2 = _mm_shuffle_ps(c2, c2, _MM_SHUFFLE(3, 1, 0, 2));
|
||||
|
||||
; Line 43
|
||||
0001b 0f 28 de movaps xmm3, xmm6
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
|
||||
; 47 : __m128 cogeneration = _mm_set_ps(
|
||||
|
||||
; Line 47
|
||||
0001e 44 0f 10 41 20 movups xmm8, XMMWORD PTR [rcx+32]
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat3.c
|
||||
|
||||
; 43 : __m128 addc2 = _mm_shuffle_ps(c2, c2, _MM_SHUFFLE(3, 1, 0, 2));
|
||||
|
||||
; Line 43
|
||||
00023 0f c6 de d2 shufps xmm3, xmm6, 210 ; 000000d2H
|
||||
00027 44 0f 29 48 b8 movaps XMMWORD PTR [rax-72], xmm9
|
||||
|
||||
; 42 : __m128 addc1 = _mm_shuffle_ps(c1, c1, _MM_SHUFFLE(3, 0, 2, 1));
|
||||
|
||||
; Line 42
|
||||
0002c 45 0f 28 c8 movaps xmm9, xmm8
|
||||
00030 44 0f 29 14 24 movaps XMMWORD PTR [rsp], xmm10
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
|
||||
; 43 : __m128 mc1 = ALIGN(matPtr->colum[1]);
|
||||
|
||||
; Line 43
|
||||
00035 44 0f 10 51 10 movups xmm10, XMMWORD PTR [rcx+16]
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat3.c
|
||||
|
||||
; 42 : __m128 addc1 = _mm_shuffle_ps(c1, c1, _MM_SHUFFLE(3, 0, 2, 1));
|
||||
|
||||
; Line 42
|
||||
0003a 45 0f c6 c8 c9 shufps xmm9, xmm8, 201 ; 000000c9H
|
||||
|
||||
; 44 :
|
||||
; 45 : //let sub row aligned
|
||||
; 46 : __m128 subc1 = _mm_shuffle_ps(c1, c1, _MM_SHUFFLE(3, 1, 0, 2));
|
||||
|
||||
; Line 46
|
||||
0003f 45 0f c6 c0 d2 shufps xmm8, xmm8, 210 ; 000000d2H
|
||||
|
||||
; 42 : __m128 addc1 = _mm_shuffle_ps(c1, c1, _MM_SHUFFLE(3, 0, 2, 1));
|
||||
|
||||
; Line 42
|
||||
00044 41 0f 28 d2 movaps xmm2, xmm10
|
||||
00048 41 0f c6 d2 c9 shufps xmm2, xmm10, 201 ; 000000c9H
|
||||
|
||||
; 54 : __m128 sub = _mm_mul_ps(c0, subc1);
|
||||
|
||||
; Line 54
|
||||
0004d 41 0f 28 c0 movaps xmm0, xmm8
|
||||
00051 41 0f 59 c2 mulps xmm0, xmm10
|
||||
00055 41 0f 28 c9 movaps xmm1, xmm9
|
||||
00059 41 0f 59 ca mulps xmm1, xmm10
|
||||
0005d 0f c6 f6 c9 shufps xmm6, xmm6, 201 ; 000000c9H
|
||||
|
||||
; 55 : sub = _mm_mul_ps(sub, subc2);
|
||||
|
||||
; Line 55
|
||||
00061 0f 59 c6 mulps xmm0, xmm6
|
||||
00064 0f 59 cb mulps xmm1, xmm3
|
||||
|
||||
; 46 : __m128 subc1 = _mm_shuffle_ps(c1, c1, _MM_SHUFFLE(3, 1, 0, 2));
|
||||
|
||||
; Line 46
|
||||
00067 45 0f c6 d2 d2 shufps xmm10, xmm10, 210 ; 000000d2H
|
||||
|
||||
; 47 : __m128 subc2 = _mm_shuffle_ps(c2, c2, _MM_SHUFFLE(3, 0, 2, 1));
|
||||
; 48 :
|
||||
; 49 : //multple all add row
|
||||
; 50 : __m128 cache = _mm_mul_ps(c0, addc1);
|
||||
|
||||
; Line 50
|
||||
0006c 0f 59 d5 mulps xmm2, xmm5
|
||||
|
||||
; 58 : cache = _mm_sub_ps(cache, sub);
|
||||
|
||||
; Line 58
|
||||
0006f 0f 5c c8 subps xmm1, xmm0
|
||||
|
||||
; 54 : __m128 sub = _mm_mul_ps(c0, subc1);
|
||||
|
||||
; Line 54
|
||||
00072 44 0f 59 d5 mulps xmm10, xmm5
|
||||
00076 41 0f 28 c0 movaps xmm0, xmm8
|
||||
0007a 0f 59 c5 mulps xmm0, xmm5
|
||||
|
||||
; 60 : __m128 ret = _mm_hadd_ps(cache, cache); //element 1 add element 2
|
||||
|
||||
; Line 60
|
||||
0007d 0f 28 f9 movaps xmm7, xmm1
|
||||
00080 f2 0f 7c f9 haddps xmm7, xmm1
|
||||
|
||||
; 55 : sub = _mm_mul_ps(sub, subc2);
|
||||
|
||||
; Line 55
|
||||
00084 0f 59 c6 mulps xmm0, xmm6
|
||||
|
||||
; 61 : ret = _mm_add_ps(ret, cache); //(e1 add e2) add element 3
|
||||
|
||||
; Line 61
|
||||
00087 0f 58 f9 addps xmm7, xmm1
|
||||
|
||||
; 50 : __m128 cache = _mm_mul_ps(c0, addc1);
|
||||
|
||||
; Line 50
|
||||
0008a 41 0f 28 c9 movaps xmm1, xmm9
|
||||
0008e 0f 59 cd mulps xmm1, xmm5
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
|
||||
; 47 : __m128 cogeneration = _mm_set_ps(
|
||||
|
||||
; Line 47
|
||||
00091 0f c6 ff aa shufps xmm7, xmm7, 170 ; 000000aaH
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat3.c
|
||||
|
||||
; 51 : cache = _mm_mul_ps(cache, addc2);
|
||||
|
||||
; Line 51
|
||||
00095 0f 59 cb mulps xmm1, xmm3
|
||||
|
||||
; 58 : cache = _mm_sub_ps(cache, sub);
|
||||
|
||||
; Line 58
|
||||
00098 0f 5c c8 subps xmm1, xmm0
|
||||
|
||||
; 55 : sub = _mm_mul_ps(sub, subc2);
|
||||
|
||||
; Line 55
|
||||
0009b 41 0f 28 c2 movaps xmm0, xmm10
|
||||
0009f 0f 59 c6 mulps xmm0, xmm6
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
|
||||
; 57 : }
|
||||
|
||||
; Line 57
|
||||
000a2 0f 28 70 e8 movaps xmm6, XMMWORD PTR [rax-24]
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat3.c
|
||||
|
||||
; 55 : sub = _mm_mul_ps(sub, subc2);
|
||||
|
||||
; Line 55
|
||||
000a6 45 0f 59 d1 mulps xmm10, xmm9
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
|
||||
; 57 : }
|
||||
|
||||
; Line 57
|
||||
000aa 44 0f 28 48 b8 movaps xmm9, XMMWORD PTR [rax-72]
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat3.c
|
||||
|
||||
; 60 : __m128 ret = _mm_hadd_ps(cache, cache); //element 1 add element 2
|
||||
|
||||
; Line 60
|
||||
000af 0f 28 e1 movaps xmm4, xmm1
|
||||
000b2 f2 0f 7c e1 haddps xmm4, xmm1
|
||||
|
||||
; 61 : ret = _mm_add_ps(ret, cache); //(e1 add e2) add element 3
|
||||
|
||||
; Line 61
|
||||
000b6 0f 58 e1 addps xmm4, xmm1
|
||||
|
||||
; 51 : cache = _mm_mul_ps(cache, addc2);
|
||||
|
||||
; Line 51
|
||||
000b9 0f 28 ca movaps xmm1, xmm2
|
||||
000bc 0f 59 cb mulps xmm1, xmm3
|
||||
000bf 41 0f 59 d0 mulps xmm2, xmm8
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
|
||||
; 57 : }
|
||||
|
||||
; Line 57
|
||||
000c3 44 0f 28 40 c8 movaps xmm8, XMMWORD PTR [rax-56]
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat3.c
|
||||
|
||||
; 58 : cache = _mm_sub_ps(cache, sub);
|
||||
|
||||
; Line 58
|
||||
000c8 0f 5c c8 subps xmm1, xmm0
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
|
||||
; 47 : __m128 cogeneration = _mm_set_ps(
|
||||
|
||||
; Line 47
|
||||
000cb 0f c6 e4 aa shufps xmm4, xmm4, 170 ; 000000aaH
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat3.c
|
||||
|
||||
; 58 : cache = _mm_sub_ps(cache, sub);
|
||||
|
||||
; Line 58
|
||||
000cf 41 0f 5c d2 subps xmm2, xmm10
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
|
||||
; 57 : }
|
||||
|
||||
; Line 57
|
||||
000d3 44 0f 28 14 24 movaps xmm10, XMMWORD PTR [rsp]
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat3.c
|
||||
|
||||
; 60 : __m128 ret = _mm_hadd_ps(cache, cache); //element 1 add element 2
|
||||
|
||||
; Line 60
|
||||
000d8 0f 28 d9 movaps xmm3, xmm1
|
||||
000db f2 0f 7c d9 haddps xmm3, xmm1
|
||||
000df 0f 28 c2 movaps xmm0, xmm2
|
||||
|
||||
; 61 : ret = _mm_add_ps(ret, cache); //(e1 add e2) add element 3
|
||||
|
||||
; Line 61
|
||||
000e2 0f 58 d9 addps xmm3, xmm1
|
||||
|
||||
; 60 : __m128 ret = _mm_hadd_ps(cache, cache); //element 1 add element 2
|
||||
|
||||
; Line 60
|
||||
000e5 f2 0f 7c c2 haddps xmm0, xmm2
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
|
||||
; 47 : __m128 cogeneration = _mm_set_ps(
|
||||
|
||||
; Line 47
|
||||
000e9 0f c6 db aa shufps xmm3, xmm3, 170 ; 000000aaH
|
||||
000ed 0f 28 cb movaps xmm1, xmm3
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat3.c
|
||||
|
||||
; 61 : ret = _mm_add_ps(ret, cache); //(e1 add e2) add element 3
|
||||
|
||||
; Line 61
|
||||
000f0 0f 58 c2 addps xmm0, xmm2
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
|
||||
; 47 : __m128 cogeneration = _mm_set_ps(
|
||||
|
||||
; Line 47
|
||||
000f3 0f 28 df movaps xmm3, xmm7
|
||||
|
||||
; 57 : }
|
||||
|
||||
; Line 57
|
||||
000f6 0f 28 78 d8 movaps xmm7, XMMWORD PTR [rax-40]
|
||||
000fa 0f 14 dc unpcklps xmm3, xmm4
|
||||
000fd 0f c6 c0 aa shufps xmm0, xmm0, 170 ; 000000aaH
|
||||
@@ -446,14 +290,12 @@ $LN12:
|
||||
det_mat4 ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Ogtpy
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
; COMDAT deinit_mat4
|
||||
_TEXT SEGMENT
|
||||
matPtr$ = 8
|
||||
deinit_mat4 PROC ; COMDAT
|
||||
|
||||
; 61 : _aligned_free(matPtr);
|
||||
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
; Line 61
|
||||
00000 48 ff 25 00 00
|
||||
00 00 rex_jmp QWORD PTR __imp__aligned_free
|
||||
deinit_mat4 ENDP
|
||||
|
||||
Binary file not shown.
+13058
-83149
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
@@ -6,102 +6,61 @@ INCLUDELIB OLDNAMES
|
||||
|
||||
PUBLIC normalize
|
||||
; Function compile flags: /Ogtpy
|
||||
; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\vector.c
|
||||
; COMDAT normalize
|
||||
_TEXT SEGMENT
|
||||
source$ = 8
|
||||
target$ = 16
|
||||
normalize PROC ; COMDAT
|
||||
|
||||
; 6 : // 计算source的长度的平方
|
||||
; 7 : __m128 a_length_sq = _mm_mul_ps(*source, *source); // 向量点乘自身
|
||||
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\vector.c
|
||||
; Line 7
|
||||
00000 0f 10 11 movups xmm2, XMMWORD PTR [rcx]
|
||||
00003 0f 28 ca movaps xmm1, xmm2
|
||||
00006 0f 59 ca mulps xmm1, xmm2
|
||||
|
||||
; 8 : a_length_sq = _mm_add_ps(a_length_sq, _mm_shuffle_ps(a_length_sq, a_length_sq, _MM_SHUFFLE(2, 3, 0, 1)));
|
||||
|
||||
; Line 8
|
||||
00009 0f 28 c1 movaps xmm0, xmm1
|
||||
0000c 0f c6 c1 b1 shufps xmm0, xmm1, 177 ; 000000b1H
|
||||
00010 0f 58 c8 addps xmm1, xmm0
|
||||
|
||||
; 9 : a_length_sq = _mm_add_ss(a_length_sq, _mm_shuffle_ps(a_length_sq, a_length_sq, _MM_SHUFFLE(0, 0, 3, 2)));
|
||||
|
||||
; Line 9
|
||||
00013 0f 28 c1 movaps xmm0, xmm1
|
||||
00016 0f c6 c1 0e shufps xmm0, xmm1, 14
|
||||
0001a f3 0f 58 c8 addss xmm1, xmm0
|
||||
|
||||
; 10 :
|
||||
; 11 : // 归一化向量source
|
||||
; 12 : __m128 a_inv_length = _mm_rsqrt_ps(a_length_sq); // 计算source长度的倒数平方根
|
||||
|
||||
; Line 12
|
||||
0001e 0f 52 d9 rsqrtps xmm3, xmm1
|
||||
|
||||
; 13 : *source = _mm_mul_ps(*source, a_inv_length); // 用source乘以其长度的倒数平方根得到单位向量
|
||||
|
||||
; Line 13
|
||||
00021 0f 59 da mulps xmm3, xmm2
|
||||
00024 0f 11 19 movups XMMWORD PTR [rcx], xmm3
|
||||
|
||||
; 14 :
|
||||
; 15 : // 计算target与source的点积
|
||||
; 16 : __m128 dot_product = _mm_mul_ps(*target, *source);
|
||||
|
||||
; Line 16
|
||||
00027 0f 28 cb movaps xmm1, xmm3
|
||||
0002a 0f 10 12 movups xmm2, XMMWORD PTR [rdx]
|
||||
0002d 0f 59 ca mulps xmm1, xmm2
|
||||
|
||||
; 17 : dot_product = _mm_add_ps(dot_product, _mm_shuffle_ps(dot_product, dot_product, _MM_SHUFFLE(2, 3, 0, 1)));
|
||||
|
||||
; Line 17
|
||||
00030 0f 28 c1 movaps xmm0, xmm1
|
||||
00033 0f c6 c1 b1 shufps xmm0, xmm1, 177 ; 000000b1H
|
||||
00037 0f 58 c8 addps xmm1, xmm0
|
||||
|
||||
; 18 : dot_product = _mm_add_ss(dot_product, _mm_shuffle_ps(dot_product, dot_product, _MM_SHUFFLE(0, 0, 3, 2)));
|
||||
|
||||
; Line 18
|
||||
0003a 0f 28 c1 movaps xmm0, xmm1
|
||||
0003d 0f c6 c1 0e shufps xmm0, xmm1, 14
|
||||
00041 f3 0f 58 c8 addss xmm1, xmm0
|
||||
|
||||
; 19 :
|
||||
; 20 : // 从target中减去source的方向分量,使其垂直于source
|
||||
; 21 : __m128 b_orthogonal = _mm_sub_ps(*target, _mm_mul_ps(*source, dot_product));
|
||||
|
||||
; Line 21
|
||||
00045 0f 59 cb mulps xmm1, xmm3
|
||||
00048 0f 5c d1 subps xmm2, xmm1
|
||||
|
||||
; 22 :
|
||||
; 23 : // 归一化向量b_orthogonal
|
||||
; 24 : __m128 b_length_sq = _mm_mul_ps(b_orthogonal, b_orthogonal);
|
||||
|
||||
; Line 24
|
||||
0004b 0f 28 ca movaps xmm1, xmm2
|
||||
0004e 0f 59 ca mulps xmm1, xmm2
|
||||
|
||||
; 25 : b_length_sq = _mm_add_ps(b_length_sq, _mm_shuffle_ps(b_length_sq, b_length_sq, _MM_SHUFFLE(2, 3, 0, 1)));
|
||||
|
||||
; Line 25
|
||||
00051 0f 28 c1 movaps xmm0, xmm1
|
||||
00054 0f c6 c1 b1 shufps xmm0, xmm1, 177 ; 000000b1H
|
||||
00058 0f 58 c8 addps xmm1, xmm0
|
||||
|
||||
; 26 : b_length_sq = _mm_add_ss(b_length_sq, _mm_shuffle_ps(b_length_sq, b_length_sq, _MM_SHUFFLE(0, 0, 3, 2)));
|
||||
|
||||
; Line 26
|
||||
0005b 0f 28 c1 movaps xmm0, xmm1
|
||||
0005e 0f c6 c1 0e shufps xmm0, xmm1, 14
|
||||
00062 f3 0f 58 c8 addss xmm1, xmm0
|
||||
|
||||
; 27 :
|
||||
; 28 : __m128 b_inv_length = _mm_rsqrt_ps(b_length_sq);
|
||||
|
||||
; Line 28
|
||||
00066 0f 52 c9 rsqrtps xmm1, xmm1
|
||||
|
||||
; 29 : *target = _mm_mul_ps(b_orthogonal, b_inv_length);
|
||||
|
||||
; Line 29
|
||||
00069 0f 59 ca mulps xmm1, xmm2
|
||||
0006c 0f 11 0a movups XMMWORD PTR [rdx], xmm1
|
||||
|
||||
; 30 :
|
||||
; 31 : }
|
||||
|
||||
; Line 31
|
||||
0006f c3 ret 0
|
||||
normalize ENDP
|
||||
_TEXT ENDS
|
||||
|
||||
Binary file not shown.
Reference in New Issue
Block a user