daily uodate on 20240411 by nitload youmu, camera complete
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
; Listing generated by Microsoft (R) Optimizing Compiler Version 19.39.33519.0
|
||||
; Listing generated by Microsoft (R) Optimizing Compiler Version 19.39.33523.0
|
||||
|
||||
include listing.inc
|
||||
|
||||
@@ -38,66 +38,427 @@ PUBLIC _vfprintf_l
|
||||
PUBLIC __local_stdio_printf_options
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$loadImageData DD imagerel $LN5@loadImageD
|
||||
DD imagerel $LN5@loadImageD+54
|
||||
$pdata$loadImageData DD imagerel $LN5
|
||||
DD imagerel $LN5+54
|
||||
DD imagerel $unwind$loadImageData
|
||||
pdata ENDS
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$linkShaderProgram DD imagerel $LN7@linkShader
|
||||
DD imagerel $LN7@linkShader+116
|
||||
$pdata$linkShaderProgram DD imagerel $LN7
|
||||
DD imagerel $LN7+116
|
||||
DD imagerel $unwind$linkShaderProgram
|
||||
pdata ENDS
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$loadGlfuncDefault DD imagerel $LN19@loadGlfunc
|
||||
DD imagerel $LN19@loadGlfunc+31
|
||||
$pdata$loadGlfuncDefault DD imagerel $LN19
|
||||
DD imagerel $LN19+31
|
||||
DD imagerel $unwind$loadGlfuncDefault
|
||||
pdata ENDS
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$initGL DD imagerel $LN4@initGL
|
||||
DD imagerel $LN4@initGL+52
|
||||
$pdata$initGL DD imagerel $LN4
|
||||
DD imagerel $LN4+52
|
||||
DD imagerel $unwind$initGL
|
||||
pdata ENDS
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$printf DD imagerel $LN6@printf
|
||||
DD imagerel $LN6@printf+85
|
||||
$pdata$printf DD imagerel $LN6
|
||||
DD imagerel $LN6+85
|
||||
DD imagerel $unwind$printf
|
||||
pdata ENDS
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$_vfprintf_l DD imagerel $LN4@vfprintf_l
|
||||
DD imagerel $LN4@vfprintf_l+68
|
||||
$pdata$_vfprintf_l DD imagerel $LN4
|
||||
DD imagerel $LN4+68
|
||||
DD imagerel $unwind$_vfprintf_l
|
||||
pdata ENDS
|
||||
; COMDAT xdata
|
||||
xdata SEGMENT
|
||||
$unwind$_vfprintf_l DQ 00009640f00060f01r ; 1.30596e-308
|
||||
DQ 0700b520f0008340fr ; 5.30195e+231
|
||||
$unwind$_vfprintf_l DD 060f01H
|
||||
DD 09640fH
|
||||
DD 08340fH
|
||||
DD 0700b520fH
|
||||
xdata ENDS
|
||||
; COMDAT xdata
|
||||
xdata SEGMENT
|
||||
$unwind$printf DQ 07017521b00041b01r ; 9.05146e+231
|
||||
$unwind$printf DD 041b01H
|
||||
DD 07017521bH
|
||||
DD 030156016H
|
||||
xdata ENDS
|
||||
; COMDAT xdata
|
||||
xdata SEGMENT
|
||||
$unwind$initGL DQ 03002320600020601r ; 1.96423e-77
|
||||
$unwind$initGL DD 020601H
|
||||
DD 030023206H
|
||||
xdata ENDS
|
||||
; COMDAT xdata
|
||||
xdata SEGMENT
|
||||
$unwind$loadGlfuncDefault DQ 00000420400010401r ; 3.58617e-310
|
||||
$unwind$loadGlfuncDefault DD 010401H
|
||||
DD 04204H
|
||||
xdata ENDS
|
||||
; COMDAT xdata
|
||||
xdata SEGMENT
|
||||
$unwind$linkShaderProgram DQ 0000a340a00041919r ; 1.41894e-308
|
||||
$unwind$linkShaderProgram DD 041919H
|
||||
DD 0a340aH
|
||||
DD 07006520aH
|
||||
DD imagerel __GSHandlerCheck
|
||||
DD 028H
|
||||
xdata ENDS
|
||||
; COMDAT xdata
|
||||
xdata SEGMENT
|
||||
$unwind$loadImageData DQ 03002520600020601r ; 1.97773e-77
|
||||
$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;
|
||||
|
||||
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 : }
|
||||
|
||||
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
|
||||
_Format$ = 72
|
||||
_Locale$dead$ = 80
|
||||
_ArgList$ = 88
|
||||
_vfprintf_l PROC ; COMDAT
|
||||
|
||||
; 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
|
||||
0000a 57 push rdi
|
||||
0000b 48 83 ec 30 sub rsp, 48 ; 00000030H
|
||||
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);
|
||||
|
||||
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
|
||||
00025 4c 8b c7 mov r8, rdi
|
||||
00028 48 8b d6 mov rdx, rsi
|
||||
0002b 48 8b 08 mov rcx, QWORD PTR [rax]
|
||||
0002e ff 15 00 00 00
|
||||
00 call QWORD PTR __imp___stdio_common_vfprintf
|
||||
|
||||
; 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
|
||||
00042 5f pop rdi
|
||||
00043 c3 ret 0
|
||||
_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 : {
|
||||
|
||||
$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
|
||||
0000a 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8
|
||||
0000f 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9
|
||||
00014 53 push rbx
|
||||
00015 56 push rsi
|
||||
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);
|
||||
|
||||
0001e 48 8d 74 24 58 lea rsi, QWORD PTR _Format$[rsp+8]
|
||||
|
||||
; 960 : _Result = _vfprintf_l(stdout, _Format, NULL, _ArgList);
|
||||
|
||||
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);
|
||||
|
||||
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
|
||||
0003e 4c 8b c7 mov r8, rdi
|
||||
00041 48 8b d3 mov rdx, rbx
|
||||
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 : }
|
||||
|
||||
0004d 48 83 c4 30 add rsp, 48 ; 00000030H
|
||||
00051 5f pop rdi
|
||||
00052 5e pop rsi
|
||||
00053 5b pop rbx
|
||||
00054 c3 ret 0
|
||||
printf ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Ogtpy
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\StgSharpC.c
|
||||
; COMDAT initGL
|
||||
_TEXT SEGMENT
|
||||
majorVersion$ = 48
|
||||
minorVersion$ = 56
|
||||
initGL PROC ; COMDAT
|
||||
|
||||
; 11 : {
|
||||
|
||||
$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);
|
||||
|
||||
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);
|
||||
|
||||
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);
|
||||
|
||||
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
|
||||
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 : {
|
||||
|
||||
$LN19:
|
||||
00000 48 83 ec 28 sub rsp, 40 ; 00000028H
|
||||
|
||||
; 19 : void* ret = glfwGetProcAddress(procName);
|
||||
|
||||
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
|
||||
loadGlfuncDefault ENDP
|
||||
_TEXT ENDS
|
||||
; Function compile flags: /Ogtpy
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\StgSharpC.c
|
||||
; COMDAT linkShaderProgram
|
||||
_TEXT SEGMENT
|
||||
success$ = 32
|
||||
__$ArrayPad$ = 40
|
||||
context$ = 64
|
||||
shaderProgram$ = 72
|
||||
linkShaderProgram PROC ; COMDAT
|
||||
|
||||
; 34 : {
|
||||
|
||||
$LN7:
|
||||
00000 48 89 5c 24 18 mov QWORD PTR [rsp+24], rbx
|
||||
00005 57 push rdi
|
||||
00006 48 83 ec 30 sub rsp, 48 ; 00000030H
|
||||
0000a 48 8b 05 00 00
|
||||
00 00 mov rax, QWORD PTR __security_cookie
|
||||
00011 48 33 c4 xor rax, rsp
|
||||
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);
|
||||
|
||||
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);
|
||||
|
||||
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)
|
||||
|
||||
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);
|
||||
|
||||
0003f 4c 8d 0d 00 00
|
||||
00 00 lea r9, OFFSET FLAT:infolog
|
||||
00046 45 33 c0 xor r8d, r8d
|
||||
00049 ba 00 02 00 00 mov edx, 512 ; 00000200H
|
||||
0004e 8b cb mov ecx, ebx
|
||||
00050 ff 97 98 19 00
|
||||
00 call QWORD PTR [rdi+6552]
|
||||
|
||||
; 42 : return 0;
|
||||
|
||||
00056 33 c0 xor eax, eax
|
||||
00058 eb 02 jmp SHORT $LN3@linkShader
|
||||
$LN2@linkShader:
|
||||
|
||||
; 43 : }
|
||||
; 44 : else
|
||||
; 45 : {
|
||||
; 46 : return shaderProgram;
|
||||
|
||||
0005a 8b c3 mov eax, ebx
|
||||
$LN3@linkShader:
|
||||
|
||||
; 47 : }
|
||||
; 48 : }
|
||||
|
||||
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
|
||||
00069 48 8b 5c 24 50 mov rbx, QWORD PTR [rsp+80]
|
||||
0006e 48 83 c4 30 add rsp, 48 ; 00000030H
|
||||
00072 5f pop rdi
|
||||
00073 c3 ret 0
|
||||
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 : {
|
||||
|
||||
$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);
|
||||
|
||||
00009 c7 44 24 20 00
|
||||
00 00 00 mov DWORD PTR [rsp+32], 0
|
||||
00011 4d 85 d2 test r10, r10
|
||||
00014 48 8d 05 00 00
|
||||
00 00 lea rax, OFFSET FLAT:stbi_load
|
||||
0001b 4c 8d 4a 08 lea r9, QWORD PTR [rdx+8]
|
||||
0001f 48 8b da mov rbx, rdx
|
||||
00022 49 0f 45 c2 cmovne rax, r10
|
||||
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 : }
|
||||
|
||||
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);
|
||||
|
||||
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';
|
||||
|
||||
00000 c6 05 ff 01 00
|
||||
00 00 mov BYTE PTR infolog+511, 0
|
||||
|
||||
; 67 : return &infolog;
|
||||
|
||||
00007 48 8d 05 00 00
|
||||
00 00 lea rax, OFFSET FLAT:infolog
|
||||
|
||||
; 68 : }
|
||||
|
||||
0000e c3 ret 0
|
||||
readLog ENDP
|
||||
_TEXT ENDS
|
||||
END
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@@ -30,12 +30,22 @@ 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”: 宏重定义
|
||||
(编译源文件“StgSharpC.c”)
|
||||
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\glfw3.h(123,1):
|
||||
参见“APIENTRY”的前一个定义
|
||||
|
||||
C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wingdi.h(36,1): warning C4005: “WINGDIAPI”: 宏重定义
|
||||
(编译源文件“StgSharpC.c”)
|
||||
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\glfw3.h(133,1):
|
||||
参见“WINGDIAPI”的前一个定义
|
||||
|
||||
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpC.c(23,18): warning C4047: “=”:“char”与“char [27]”的间接级别不同
|
||||
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpC.c(67,5): warning C4047: “return”:“char *”与“char (*)[512]”的间接级别不同
|
||||
vector.c
|
||||
正在创建库 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.lib 和对象 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.exp
|
||||
正在生成代码
|
||||
0 of 175 functions ( 0.0%) were compiled, the rest were copied from previous compilation.
|
||||
0 functions were new in current compilation
|
||||
0 functions had inline decision re-evaluated but remain unchanged
|
||||
Previous IPDB was built with incompatible compiler, fall back to full compilation.
|
||||
All 176 functions were compiled because no usable IPDB/IOBJ from previous compilation was found.
|
||||
已完成代码的生成
|
||||
StgSharpC.vcxproj -> D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.dll
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -4,3 +4,4 @@ D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharp
|
||||
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c;D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\x64\Release\mat4.obj
|
||||
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\stb_image.c;D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\x64\Release\stb_image.obj
|
||||
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpC.c;D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\x64\Release\StgSharpC.obj
|
||||
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\vector.c;D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\x64\Release\vector.obj
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@@ -1,4 +1,4 @@
|
||||
^D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\GLFW3.LIB|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\GLFW3DLL.LIB|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\GLFW3_MT.LIB|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\RELEASE\DLLMAIN.OBJ|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\RELEASE\MAT2.OBJ|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\RELEASE\MAT3.OBJ|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\RELEASE\MAT4.OBJ|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\RELEASE\STB_IMAGE.OBJ|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\RELEASE\STGSHARPC.OBJ
|
||||
^D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\GLFW3.LIB|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\GLFW3DLL.LIB|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\GLFW3_MT.LIB|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\RELEASE\DLLMAIN.OBJ|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\RELEASE\MAT2.OBJ|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\RELEASE\MAT3.OBJ|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\RELEASE\MAT4.OBJ|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\RELEASE\STB_IMAGE.OBJ|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\RELEASE\STGSHARPC.OBJ|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\RELEASE\VECTOR.OBJ
|
||||
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.lib
|
||||
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.EXP
|
||||
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\x64\Release\StgSharpC.IPDB
|
||||
|
||||
Binary file not shown.
@@ -1,4 +1,4 @@
|
||||
; Listing generated by Microsoft (R) Optimizing Compiler Version 19.39.33519.0
|
||||
; Listing generated by Microsoft (R) Optimizing Compiler Version 19.39.33523.0
|
||||
|
||||
include listing.inc
|
||||
|
||||
@@ -204,4 +204,39 @@ CONST ENDS
|
||||
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;
|
||||
|
||||
00000 b8 01 00 00 00 mov eax, 1
|
||||
|
||||
; 29 :
|
||||
; 30 : break;
|
||||
; 31 : }
|
||||
; 32 : return TRUE;
|
||||
; 33 : }
|
||||
|
||||
00005 c3 ret 0
|
||||
DllMain ENDP
|
||||
_TEXT ENDS
|
||||
END
|
||||
|
||||
Binary file not shown.
@@ -1,4 +1,4 @@
|
||||
; Listing generated by Microsoft (R) Optimizing Compiler Version 19.39.33519.0
|
||||
; Listing generated by Microsoft (R) Optimizing Compiler Version 19.39.33523.0
|
||||
|
||||
include listing.inc
|
||||
|
||||
@@ -8,4 +8,105 @@ EXTRN __imp__aligned_free:PROC
|
||||
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));
|
||||
|
||||
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
|
||||
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
|
||||
0002b 0f 11 62 20 movups XMMWORD PTR [rdx+32], xmm4
|
||||
|
||||
; 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]
|
||||
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
|
||||
00032 0f 11 52 10 movups XMMWORD PTR [rdx+16], xmm2
|
||||
00036 0f 11 5a 30 movups XMMWORD PTR [rdx+48], xmm3
|
||||
|
||||
; 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);
|
||||
|
||||
00000 48 ff 25 00 00
|
||||
00 00 rex_jmp QWORD PTR __imp__aligned_free
|
||||
deinit_mat2 ENDP
|
||||
_TEXT ENDS
|
||||
END
|
||||
|
||||
Binary file not shown.
@@ -1,4 +1,4 @@
|
||||
; Listing generated by Microsoft (R) Optimizing Compiler Version 19.39.33519.0
|
||||
; Listing generated by Microsoft (R) Optimizing Compiler Version 19.39.33523.0
|
||||
|
||||
include listing.inc
|
||||
|
||||
@@ -11,11 +11,303 @@ PUBLIC transpose3to3
|
||||
PUBLIC transpose3to2
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$transpose3to3 DD imagerel $LN4@transpose3
|
||||
DD imagerel $LN4@transpose3+83
|
||||
$pdata$transpose3to3 DD imagerel $LN4
|
||||
DD imagerel $LN4+83
|
||||
DD imagerel $unwind$transpose3to3
|
||||
; COMDAT xdata
|
||||
xdata SEGMENT
|
||||
$unwind$transpose3to3 DQ 00000681000031001r ; 5.653e-310
|
||||
$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
|
||||
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 : {
|
||||
|
||||
$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]
|
||||
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
|
||||
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
|
||||
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));
|
||||
|
||||
00000 0f 10 1a movups xmm3, XMMWORD PTR [rdx]
|
||||
|
||||
; 43 : __m128 addc2 = _mm_shuffle_ps(c2, c2, _MM_SHUFFLE(3, 1, 0, 2));
|
||||
|
||||
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);
|
||||
|
||||
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);
|
||||
|
||||
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);
|
||||
|
||||
00026 0f 59 da mulps xmm3, xmm2
|
||||
|
||||
; 56 :
|
||||
; 57 : //main-corner sub sub-corner
|
||||
; 58 : cache = _mm_sub_ps(cache, sub);
|
||||
|
||||
00029 0f 5c e3 subps xmm4, xmm3
|
||||
|
||||
; 59 :
|
||||
; 60 : __m128 ret = _mm_hadd_ps(cache, cache); //element 1 add element 2
|
||||
|
||||
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
|
||||
|
||||
00033 0f 58 c4 addps xmm0, xmm4
|
||||
|
||||
; 62 :
|
||||
; 63 : return ret.m128_f32[2];
|
||||
|
||||
00036 0f c6 c0 aa shufps xmm0, xmm0, 170 ; 000000aaH
|
||||
|
||||
; 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(
|
||||
|
||||
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));
|
||||
|
||||
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));
|
||||
|
||||
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);
|
||||
|
||||
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);
|
||||
|
||||
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);
|
||||
|
||||
00027 0f 59 da mulps xmm3, xmm2
|
||||
|
||||
; 56 :
|
||||
; 57 : //main-corner sub sub-corner
|
||||
; 58 : cache = _mm_sub_ps(cache, sub);
|
||||
|
||||
0002a 0f 5c e3 subps xmm4, xmm3
|
||||
|
||||
; 59 :
|
||||
; 60 : __m128 ret = _mm_hadd_ps(cache, cache); //element 1 add element 2
|
||||
|
||||
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
|
||||
|
||||
00034 0f 58 c4 addps xmm0, xmm4
|
||||
|
||||
; 68 : return det_mat3_internal(
|
||||
|
||||
00037 0f c6 c0 aa shufps xmm0, xmm0, 170 ; 000000aaH
|
||||
|
||||
; 69 : mat->colum[0],
|
||||
; 70 : mat->colum[1],
|
||||
; 71 : mat->colum[2]
|
||||
; 72 : );
|
||||
; 73 : }
|
||||
|
||||
0003b c3 ret 0
|
||||
det_mat3 ENDP
|
||||
_TEXT ENDS
|
||||
END
|
||||
|
||||
Binary file not shown.
@@ -1,4 +1,4 @@
|
||||
; Listing generated by Microsoft (R) Optimizing Compiler Version 19.39.33519.0
|
||||
; Listing generated by Microsoft (R) Optimizing Compiler Version 19.39.33523.0
|
||||
|
||||
include listing.inc
|
||||
|
||||
@@ -11,24 +11,451 @@ PUBLIC transpose4to4
|
||||
PUBLIC transpose4to2
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$det_mat4 DD imagerel $LN12@det_mat4
|
||||
DD imagerel $LN12@det_mat4+293
|
||||
$pdata$det_mat4 DD imagerel $LN12
|
||||
DD imagerel $LN12+293
|
||||
DD imagerel $unwind$det_mat4
|
||||
pdata ENDS
|
||||
; COMDAT pdata
|
||||
pdata SEGMENT
|
||||
$pdata$transpose4to3 DD imagerel $LN4@transpose4
|
||||
DD imagerel $LN4@transpose4+80
|
||||
$pdata$transpose4to3 DD imagerel $LN4
|
||||
DD imagerel $LN4+80
|
||||
DD imagerel $unwind$transpose4to3
|
||||
; COMDAT xdata
|
||||
xdata SEGMENT
|
||||
$unwind$transpose4to3 DQ 00000681400031401r ; 5.65385e-310
|
||||
$unwind$transpose4to3 DD 031401H
|
||||
DD 06814H
|
||||
DD 02204H
|
||||
xdata ENDS
|
||||
; COMDAT xdata
|
||||
xdata SEGMENT
|
||||
$unwind$det_mat4 DQ 00000a835000b3501r ; 9.13753e-310
|
||||
DQ 00002881b0001982cr ; 3.52071e-309
|
||||
DQ 00004680e00037816r ; 6.12794e-309
|
||||
$unwind$det_mat4 DD 0b3501H
|
||||
DD 0a835H
|
||||
DD 01982cH
|
||||
DD 02881bH
|
||||
DD 037816H
|
||||
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));
|
||||
|
||||
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));
|
||||
|
||||
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));
|
||||
|
||||
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));
|
||||
|
||||
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 : }
|
||||
|
||||
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));
|
||||
|
||||
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));
|
||||
|
||||
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 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));
|
||||
|
||||
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));
|
||||
|
||||
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));
|
||||
|
||||
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));
|
||||
|
||||
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 : }
|
||||
|
||||
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 : {
|
||||
|
||||
$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));
|
||||
|
||||
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));
|
||||
|
||||
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
|
||||
00014 0f 28 cd movaps xmm1, xmm5
|
||||
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));
|
||||
|
||||
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));
|
||||
|
||||
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));
|
||||
|
||||
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 : }
|
||||
|
||||
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
|
||||
0004b 48 83 c4 18 add rsp, 24
|
||||
0004f c3 ret 0
|
||||
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 : {
|
||||
|
||||
$LN12:
|
||||
00000 48 8b c4 mov rax, rsp
|
||||
00003 48 83 ec 58 sub rsp, 88 ; 00000058H
|
||||
|
||||
; 42 : __m128 mc0 = ALIGN(matPtr->colum[0]);
|
||||
|
||||
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(
|
||||
|
||||
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));
|
||||
|
||||
0001b 0f 28 de movaps xmm3, xmm6
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
|
||||
; 47 : __m128 cogeneration = _mm_set_ps(
|
||||
|
||||
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));
|
||||
|
||||
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));
|
||||
|
||||
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]);
|
||||
|
||||
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));
|
||||
|
||||
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));
|
||||
|
||||
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));
|
||||
|
||||
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);
|
||||
|
||||
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);
|
||||
|
||||
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));
|
||||
|
||||
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);
|
||||
|
||||
0006c 0f 59 d5 mulps xmm2, xmm5
|
||||
|
||||
; 58 : cache = _mm_sub_ps(cache, sub);
|
||||
|
||||
0006f 0f 5c c8 subps xmm1, xmm0
|
||||
|
||||
; 54 : __m128 sub = _mm_mul_ps(c0, subc1);
|
||||
|
||||
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
|
||||
|
||||
0007d 0f 28 f9 movaps xmm7, xmm1
|
||||
00080 f2 0f 7c f9 haddps xmm7, xmm1
|
||||
|
||||
; 55 : sub = _mm_mul_ps(sub, subc2);
|
||||
|
||||
00084 0f 59 c6 mulps xmm0, xmm6
|
||||
|
||||
; 61 : ret = _mm_add_ps(ret, cache); //(e1 add e2) add element 3
|
||||
|
||||
00087 0f 58 f9 addps xmm7, xmm1
|
||||
|
||||
; 50 : __m128 cache = _mm_mul_ps(c0, addc1);
|
||||
|
||||
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(
|
||||
|
||||
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);
|
||||
|
||||
00095 0f 59 cb mulps xmm1, xmm3
|
||||
|
||||
; 58 : cache = _mm_sub_ps(cache, sub);
|
||||
|
||||
00098 0f 5c c8 subps xmm1, xmm0
|
||||
|
||||
; 55 : sub = _mm_mul_ps(sub, subc2);
|
||||
|
||||
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 : }
|
||||
|
||||
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);
|
||||
|
||||
000a6 45 0f 59 d1 mulps xmm10, xmm9
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
|
||||
; 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
|
||||
|
||||
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
|
||||
|
||||
000b6 0f 58 e1 addps xmm4, xmm1
|
||||
|
||||
; 51 : cache = _mm_mul_ps(cache, addc2);
|
||||
|
||||
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 : }
|
||||
|
||||
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);
|
||||
|
||||
000c8 0f 5c c8 subps xmm1, xmm0
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
|
||||
; 47 : __m128 cogeneration = _mm_set_ps(
|
||||
|
||||
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);
|
||||
|
||||
000cf 41 0f 5c d2 subps xmm2, xmm10
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
|
||||
; 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
|
||||
|
||||
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
|
||||
|
||||
000e2 0f 58 d9 addps xmm3, xmm1
|
||||
|
||||
; 60 : __m128 ret = _mm_hadd_ps(cache, cache); //element 1 add element 2
|
||||
|
||||
000e5 f2 0f 7c c2 haddps xmm0, xmm2
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
|
||||
; 47 : __m128 cogeneration = _mm_set_ps(
|
||||
|
||||
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
|
||||
|
||||
000f0 0f 58 c2 addps xmm0, xmm2
|
||||
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpC\mat4.c
|
||||
|
||||
; 47 : __m128 cogeneration = _mm_set_ps(
|
||||
|
||||
000f3 0f 28 df movaps xmm3, xmm7
|
||||
|
||||
; 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
|
||||
00101 0f 14 c8 unpcklps xmm1, xmm0
|
||||
00104 0f 10 42 30 movups xmm0, XMMWORD PTR [rdx+48]
|
||||
00108 0f 16 d9 movlhps xmm3, xmm1
|
||||
0010b 0f 59 d8 mulps xmm3, xmm0
|
||||
0010e f2 0f 7d db hsubps xmm3, xmm3
|
||||
00112 f2 0f 7c db haddps xmm3, xmm3
|
||||
00116 0f 57 1d 00 00
|
||||
00 00 xorps xmm3, DWORD PTR __xmm@80000000800000008000000080000000
|
||||
0011d 0f 28 c3 movaps xmm0, xmm3
|
||||
00120 48 83 c4 58 add rsp, 88 ; 00000058H
|
||||
00124 c3 ret 0
|
||||
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);
|
||||
|
||||
00000 48 ff 25 00 00
|
||||
00 00 rex_jmp QWORD PTR __imp__aligned_free
|
||||
deinit_mat4 ENDP
|
||||
_TEXT ENDS
|
||||
END
|
||||
|
||||
Binary file not shown.
+104109
-316
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,108 @@
|
||||
; Listing generated by Microsoft (R) Optimizing Compiler Version 19.39.33523.0
|
||||
|
||||
include listing.inc
|
||||
|
||||
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); // 向量点乘自身
|
||||
|
||||
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)));
|
||||
|
||||
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)));
|
||||
|
||||
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长度的倒数平方根
|
||||
|
||||
0001e 0f 52 d9 rsqrtps xmm3, xmm1
|
||||
|
||||
; 13 : *source = _mm_mul_ps(*source, a_inv_length); // 用source乘以其长度的倒数平方根得到单位向量
|
||||
|
||||
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);
|
||||
|
||||
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)));
|
||||
|
||||
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)));
|
||||
|
||||
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));
|
||||
|
||||
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);
|
||||
|
||||
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)));
|
||||
|
||||
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)));
|
||||
|
||||
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);
|
||||
|
||||
00066 0f 52 c9 rsqrtps xmm1, xmm1
|
||||
|
||||
; 29 : *target = _mm_mul_ps(b_orthogonal, b_inv_length);
|
||||
|
||||
00069 0f 59 ca mulps xmm1, xmm2
|
||||
0006c 0f 11 0a movups XMMWORD PTR [rdx], xmm1
|
||||
|
||||
; 30 :
|
||||
; 31 : }
|
||||
|
||||
0006f c3 ret 0
|
||||
normalize ENDP
|
||||
_TEXT ENDS
|
||||
END
|
||||
Binary file not shown.
Reference in New Issue
Block a user