diff --git a/源代码/.vs/ProjectEvaluation/stgsharpdevelop.metadata.v7.bin b/源代码/.vs/ProjectEvaluation/stgsharpdevelop.metadata.v7.bin index c2bd5e8f..9091d7b3 100644 Binary files a/源代码/.vs/ProjectEvaluation/stgsharpdevelop.metadata.v7.bin and b/源代码/.vs/ProjectEvaluation/stgsharpdevelop.metadata.v7.bin differ diff --git a/源代码/.vs/ProjectEvaluation/stgsharpdevelop.projects.v7.bin b/源代码/.vs/ProjectEvaluation/stgsharpdevelop.projects.v7.bin index fed95760..49483d10 100644 Binary files a/源代码/.vs/ProjectEvaluation/stgsharpdevelop.projects.v7.bin and b/源代码/.vs/ProjectEvaluation/stgsharpdevelop.projects.v7.bin differ diff --git a/源代码/.vs/StgSharpDevelop/DesignTimeBuild/.dtbcache.v2 b/源代码/.vs/StgSharpDevelop/DesignTimeBuild/.dtbcache.v2 index 3f416849..3de376c4 100644 Binary files a/源代码/.vs/StgSharpDevelop/DesignTimeBuild/.dtbcache.v2 and b/源代码/.vs/StgSharpDevelop/DesignTimeBuild/.dtbcache.v2 differ diff --git a/源代码/.vs/StgSharpDevelop/FileContentIndex/0feaa62a-cfad-460c-b208-39dda8cf1a2e.vsidx b/源代码/.vs/StgSharpDevelop/FileContentIndex/0feaa62a-cfad-460c-b208-39dda8cf1a2e.vsidx new file mode 100644 index 00000000..b30d7037 Binary files /dev/null and b/源代码/.vs/StgSharpDevelop/FileContentIndex/0feaa62a-cfad-460c-b208-39dda8cf1a2e.vsidx differ diff --git a/源代码/.vs/StgSharpDevelop/FileContentIndex/1bd663a3-1ba9-4dba-9add-08d33bb3e77e.vsidx b/源代码/.vs/StgSharpDevelop/FileContentIndex/1bd663a3-1ba9-4dba-9add-08d33bb3e77e.vsidx new file mode 100644 index 00000000..fcc6fa7c Binary files /dev/null and b/源代码/.vs/StgSharpDevelop/FileContentIndex/1bd663a3-1ba9-4dba-9add-08d33bb3e77e.vsidx differ diff --git a/源代码/.vs/StgSharpDevelop/FileContentIndex/32d463e5-84ab-427c-9066-b770b73b86ea.vsidx b/源代码/.vs/StgSharpDevelop/FileContentIndex/32d463e5-84ab-427c-9066-b770b73b86ea.vsidx new file mode 100644 index 00000000..8094c699 Binary files /dev/null and b/源代码/.vs/StgSharpDevelop/FileContentIndex/32d463e5-84ab-427c-9066-b770b73b86ea.vsidx differ diff --git a/源代码/.vs/StgSharpDevelop/FileContentIndex/52f5a00e-b90e-42b7-8559-99b1fcfbcffa.vsidx b/源代码/.vs/StgSharpDevelop/FileContentIndex/52f5a00e-b90e-42b7-8559-99b1fcfbcffa.vsidx new file mode 100644 index 00000000..fedef64d Binary files /dev/null and b/源代码/.vs/StgSharpDevelop/FileContentIndex/52f5a00e-b90e-42b7-8559-99b1fcfbcffa.vsidx differ diff --git a/源代码/.vs/StgSharpDevelop/FileContentIndex/566744a5-d1b4-45e1-a1f2-dd05a0d4d9bd.vsidx b/源代码/.vs/StgSharpDevelop/FileContentIndex/566744a5-d1b4-45e1-a1f2-dd05a0d4d9bd.vsidx deleted file mode 100644 index f017cc15..00000000 Binary files a/源代码/.vs/StgSharpDevelop/FileContentIndex/566744a5-d1b4-45e1-a1f2-dd05a0d4d9bd.vsidx and /dev/null differ diff --git a/源代码/.vs/StgSharpDevelop/FileContentIndex/774d42c5-0703-471e-b7ec-7925fd2a042b.vsidx b/源代码/.vs/StgSharpDevelop/FileContentIndex/774d42c5-0703-471e-b7ec-7925fd2a042b.vsidx new file mode 100644 index 00000000..e75338b0 Binary files /dev/null and b/源代码/.vs/StgSharpDevelop/FileContentIndex/774d42c5-0703-471e-b7ec-7925fd2a042b.vsidx differ diff --git a/源代码/.vs/StgSharpDevelop/FileContentIndex/c3abf06d-d9a5-4bff-acd3-07e913657a31.vsidx b/源代码/.vs/StgSharpDevelop/FileContentIndex/c3abf06d-d9a5-4bff-acd3-07e913657a31.vsidx deleted file mode 100644 index 1eeed60a..00000000 Binary files a/源代码/.vs/StgSharpDevelop/FileContentIndex/c3abf06d-d9a5-4bff-acd3-07e913657a31.vsidx and /dev/null differ diff --git a/源代码/.vs/StgSharpDevelop/FileContentIndex/c6c667cf-4fb3-44da-b976-d99d54674cec.vsidx b/源代码/.vs/StgSharpDevelop/FileContentIndex/c6c667cf-4fb3-44da-b976-d99d54674cec.vsidx deleted file mode 100644 index 50f950ec..00000000 Binary files a/源代码/.vs/StgSharpDevelop/FileContentIndex/c6c667cf-4fb3-44da-b976-d99d54674cec.vsidx and /dev/null differ diff --git a/源代码/.vs/StgSharpDevelop/FileContentIndex/d1c31b7a-69ba-459a-9cae-8d07153b5ed8.vsidx b/源代码/.vs/StgSharpDevelop/FileContentIndex/d1c31b7a-69ba-459a-9cae-8d07153b5ed8.vsidx deleted file mode 100644 index cf7af104..00000000 Binary files a/源代码/.vs/StgSharpDevelop/FileContentIndex/d1c31b7a-69ba-459a-9cae-8d07153b5ed8.vsidx and /dev/null differ diff --git a/源代码/.vs/StgSharpDevelop/FileContentIndex/d3d63655-39d9-4458-942e-23ccba7dd0aa.vsidx b/源代码/.vs/StgSharpDevelop/FileContentIndex/d3d63655-39d9-4458-942e-23ccba7dd0aa.vsidx deleted file mode 100644 index 6e3638a6..00000000 Binary files a/源代码/.vs/StgSharpDevelop/FileContentIndex/d3d63655-39d9-4458-942e-23ccba7dd0aa.vsidx and /dev/null differ diff --git a/源代码/.vs/StgSharpDevelop/v17/.futdcache.v2 b/源代码/.vs/StgSharpDevelop/v17/.futdcache.v2 index 0142a82e..e9402ca8 100644 Binary files a/源代码/.vs/StgSharpDevelop/v17/.futdcache.v2 and b/源代码/.vs/StgSharpDevelop/v17/.futdcache.v2 differ diff --git a/源代码/.vs/StgSharpDevelop/v17/.suo b/源代码/.vs/StgSharpDevelop/v17/.suo index ee2a96f1..0c4912bb 100644 Binary files a/源代码/.vs/StgSharpDevelop/v17/.suo and b/源代码/.vs/StgSharpDevelop/v17/.suo differ diff --git a/源代码/.vs/StgSharpDevelop/v17/Browse.VC.db b/源代码/.vs/StgSharpDevelop/v17/Browse.VC.db index 05a445ad..a441590f 100644 Binary files a/源代码/.vs/StgSharpDevelop/v17/Browse.VC.db and b/源代码/.vs/StgSharpDevelop/v17/Browse.VC.db differ diff --git a/源代码/.vs/StgSharpDevelop/v17/Solution.VC.db b/源代码/.vs/StgSharpDevelop/v17/Solution.VC.db index 669b2e7f..094cbfb3 100644 Binary files a/源代码/.vs/StgSharpDevelop/v17/Solution.VC.db and b/源代码/.vs/StgSharpDevelop/v17/Solution.VC.db differ diff --git a/源代码/.vs/StgSharpDevelop/v17/TestStore/0/000.testlog b/源代码/.vs/StgSharpDevelop/v17/TestStore/0/000.testlog new file mode 100644 index 00000000..d68ec94d Binary files /dev/null and b/源代码/.vs/StgSharpDevelop/v17/TestStore/0/000.testlog differ diff --git a/源代码/.vs/StgSharpDevelop/v17/TestStore/0/testlog.manifest b/源代码/.vs/StgSharpDevelop/v17/TestStore/0/testlog.manifest new file mode 100644 index 00000000..e92ede29 Binary files /dev/null and b/源代码/.vs/StgSharpDevelop/v17/TestStore/0/testlog.manifest differ diff --git a/源代码/.vs/StgSharpDevelop/v17/fileList.bin b/源代码/.vs/StgSharpDevelop/v17/fileList.bin index fdc1873a..f485f8cb 100644 Binary files a/源代码/.vs/StgSharpDevelop/v17/fileList.bin and b/源代码/.vs/StgSharpDevelop/v17/fileList.bin differ diff --git a/源代码/.vs/StgSharpDevelop/v17/ipch/AutoPCH/12987a6ddc28b3da/DLLMAIN.ipch b/源代码/.vs/StgSharpDevelop/v17/ipch/AutoPCH/12987a6ddc28b3da/DLLMAIN.ipch index 00c58695..a819fabb 100644 Binary files a/源代码/.vs/StgSharpDevelop/v17/ipch/AutoPCH/12987a6ddc28b3da/DLLMAIN.ipch and b/源代码/.vs/StgSharpDevelop/v17/ipch/AutoPCH/12987a6ddc28b3da/DLLMAIN.ipch differ diff --git a/源代码/BenchMark/BenchMark.csproj b/源代码/BenchMark/BenchMark.csproj index 74dbfc6f..c65c6647 100644 --- a/源代码/BenchMark/BenchMark.csproj +++ b/源代码/BenchMark/BenchMark.csproj @@ -5,7 +5,7 @@ net6.0 enable enable - Debug;Release;Benchmark + Debug;Release;Benchmark;Toollist True diff --git a/源代码/BenchMark/Program.cs b/源代码/BenchMark/Program.cs index 8ac71296..2ca0c267 100644 --- a/源代码/BenchMark/Program.cs +++ b/源代码/BenchMark/Program.cs @@ -6,6 +6,7 @@ using System.Numerics; using System.Runtime.CompilerServices; using System.Runtime.Versioning; using BenchmarkDotNet.Jobs; +using Microsoft.Diagnostics.Tracing.Parsers.Clr; namespace BenchMark { @@ -14,9 +15,9 @@ namespace BenchMark static void Main(string[] args) { - TypeCode c = TypeCode.Int32; - Console.WriteLine(c); - + int[] a = new int[10]; + IntPtr p = GCHandle.Alloc(a, GCHandleType.Pinned).AddrOfPinnedObject(); + Console.WriteLine(*(int*)p); } } diff --git a/源代码/BenchMark/bin/Release/net6.0/BenchMark.deps.json b/源代码/BenchMark/bin/Release/net6.0/BenchMark.deps.json new file mode 100644 index 00000000..940d921f --- /dev/null +++ b/源代码/BenchMark/bin/Release/net6.0/BenchMark.deps.json @@ -0,0 +1,694 @@ +{ + "runtimeTarget": { + "name": ".NETCoreApp,Version=v6.0", + "signature": "" + }, + "compilationOptions": {}, + "targets": { + ".NETCoreApp,Version=v6.0": { + "BenchMark/1.0.0": { + "dependencies": { + "BenchmarkDotNet": "0.13.12" + }, + "runtime": { + "BenchMark.dll": {} + } + }, + "BenchmarkDotNet/0.13.12": { + "dependencies": { + "BenchmarkDotNet.Annotations": "0.13.12", + "CommandLineParser": "2.9.1", + "Gee.External.Capstone": "2.3.0", + "Iced": "1.17.0", + "Microsoft.CodeAnalysis.CSharp": "4.1.0", + "Microsoft.Diagnostics.Runtime": "2.2.332302", + "Microsoft.Diagnostics.Tracing.TraceEvent": "3.0.2", + "Microsoft.DotNet.PlatformAbstractions": "3.1.6", + "Perfolizer": "0.2.1", + "System.Management": "5.0.0" + }, + "runtime": { + "lib/net6.0/BenchmarkDotNet.dll": { + "assemblyVersion": "0.13.12.0", + "fileVersion": "0.13.12.0" + } + } + }, + "BenchmarkDotNet.Annotations/0.13.12": { + "runtime": { + "lib/netstandard2.0/BenchmarkDotNet.Annotations.dll": { + "assemblyVersion": "0.13.12.0", + "fileVersion": "0.13.12.0" + } + } + }, + "CommandLineParser/2.9.1": { + "runtime": { + "lib/netstandard2.0/CommandLine.dll": { + "assemblyVersion": "2.9.1.0", + "fileVersion": "2.9.1.0" + } + } + }, + "Gee.External.Capstone/2.3.0": { + "runtime": { + "lib/net6.0/Gee.External.Capstone.dll": { + "assemblyVersion": "2.3.0.0", + "fileVersion": "2.3.0.0" + } + }, + "runtimeTargets": { + "runtimes/linux-arm/native/libcapstone.so": { + "rid": "linux-arm", + "assetType": "native", + "fileVersion": "0.0.0.0" + }, + "runtimes/linux-arm64/native/libcapstone.so": { + "rid": "linux-arm64", + "assetType": "native", + "fileVersion": "0.0.0.0" + }, + "runtimes/linux-x64/native/libcapstone.so": { + "rid": "linux-x64", + "assetType": "native", + "fileVersion": "0.0.0.0" + }, + "runtimes/linux-x86/native/libcapstone.so": { + "rid": "linux-x86", + "assetType": "native", + "fileVersion": "0.0.0.0" + }, + "runtimes/osx-arm64/native/libcapstone.dylib": { + "rid": "osx-arm64", + "assetType": "native", + "fileVersion": "0.0.0.0" + }, + "runtimes/osx-x64/native/libcapstone.dylib": { + "rid": "osx-x64", + "assetType": "native", + "fileVersion": "0.0.0.0" + }, + "runtimes/win-arm64/native/capstone.dll": { + "rid": "win-arm64", + "assetType": "native", + "fileVersion": "0.0.0.0" + }, + "runtimes/win-x64/native/capstone.dll": { + "rid": "win-x64", + "assetType": "native", + "fileVersion": "0.0.0.0" + }, + "runtimes/win-x86/native/capstone.dll": { + "rid": "win-x86", + "assetType": "native", + "fileVersion": "0.0.0.0" + } + } + }, + "Iced/1.17.0": { + "runtime": { + "lib/netstandard2.1/Iced.dll": { + "assemblyVersion": "1.17.0.0", + "fileVersion": "1.17.0.0" + } + } + }, + "Microsoft.Bcl.AsyncInterfaces/1.1.0": { + "runtime": { + "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { + "assemblyVersion": "1.0.0.0", + "fileVersion": "4.700.19.56404" + } + } + }, + "Microsoft.CodeAnalysis.Analyzers/3.3.3": {}, + "Microsoft.CodeAnalysis.Common/4.1.0": { + "dependencies": { + "Microsoft.CodeAnalysis.Analyzers": "3.3.3", + "System.Collections.Immutable": "5.0.0", + "System.Memory": "4.5.4", + "System.Reflection.Metadata": "5.0.0", + "System.Runtime.CompilerServices.Unsafe": "5.0.0", + "System.Text.Encoding.CodePages": "4.5.1", + "System.Threading.Tasks.Extensions": "4.5.4" + }, + "runtime": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.dll": { + "assemblyVersion": "4.1.0.0", + "fileVersion": "4.100.22.11411" + } + }, + "resources": { + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.CodeAnalysis.CSharp/4.1.0": { + "dependencies": { + "Microsoft.CodeAnalysis.Common": "4.1.0" + }, + "runtime": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.dll": { + "assemblyVersion": "4.1.0.0", + "fileVersion": "4.100.22.11411" + } + }, + "resources": { + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.Diagnostics.NETCore.Client/0.2.251802": { + "dependencies": { + "Microsoft.Bcl.AsyncInterfaces": "1.1.0", + "Microsoft.Extensions.Logging": "2.1.1" + }, + "runtime": { + "lib/netcoreapp3.1/Microsoft.Diagnostics.NETCore.Client.dll": { + "assemblyVersion": "0.2.5.1802", + "fileVersion": "0.2.5.1802" + } + } + }, + "Microsoft.Diagnostics.Runtime/2.2.332302": { + "dependencies": { + "Microsoft.Diagnostics.NETCore.Client": "0.2.251802", + "System.Collections.Immutable": "5.0.0", + "System.Runtime.CompilerServices.Unsafe": "5.0.0" + }, + "runtime": { + "lib/net6.0/Microsoft.Diagnostics.Runtime.dll": { + "assemblyVersion": "2.2.6.32302", + "fileVersion": "2.2.6.32302" + } + } + }, + "Microsoft.Diagnostics.Tracing.TraceEvent/3.0.2": { + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "5.0.0" + }, + "runtime": { + "lib/netstandard2.0/Dia2Lib.dll": { + "assemblyVersion": "2.0.0.0", + "fileVersion": "2.0.0.0" + }, + "lib/netstandard2.0/Microsoft.Diagnostics.FastSerialization.dll": { + "assemblyVersion": "3.0.2.0", + "fileVersion": "3.0.2.0" + }, + "lib/netstandard2.0/Microsoft.Diagnostics.Tracing.TraceEvent.dll": { + "assemblyVersion": "3.0.2.0", + "fileVersion": "3.0.2.0" + }, + "lib/netstandard2.0/OSExtensions.dll": { + "assemblyVersion": "1.0.0.0", + "fileVersion": "1.0.0.0" + }, + "lib/netstandard2.0/TraceReloggerLib.dll": { + "assemblyVersion": "0.0.0.0", + "fileVersion": "0.0.0.0" + } + } + }, + "Microsoft.DotNet.PlatformAbstractions/3.1.6": { + "runtime": { + "lib/netstandard2.0/Microsoft.DotNet.PlatformAbstractions.dll": { + "assemblyVersion": "3.1.6.0", + "fileVersion": "3.100.620.31604" + } + } + }, + "Microsoft.Extensions.Configuration/2.1.1": { + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "2.1.1" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.dll": { + "assemblyVersion": "2.1.1.0", + "fileVersion": "2.1.1.18157" + } + } + }, + "Microsoft.Extensions.Configuration.Abstractions/2.1.1": { + "dependencies": { + "Microsoft.Extensions.Primitives": "2.1.1" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Abstractions.dll": { + "assemblyVersion": "2.1.1.0", + "fileVersion": "2.1.1.18157" + } + } + }, + "Microsoft.Extensions.Configuration.Binder/2.1.1": { + "dependencies": { + "Microsoft.Extensions.Configuration": "2.1.1" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Binder.dll": { + "assemblyVersion": "2.1.1.0", + "fileVersion": "2.1.1.18157" + } + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/2.1.1": { + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { + "assemblyVersion": "2.1.1.0", + "fileVersion": "2.1.1.18157" + } + } + }, + "Microsoft.Extensions.Logging/2.1.1": { + "dependencies": { + "Microsoft.Extensions.Configuration.Binder": "2.1.1", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.1.1", + "Microsoft.Extensions.Logging.Abstractions": "2.1.1", + "Microsoft.Extensions.Options": "2.1.1" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Logging.dll": { + "assemblyVersion": "2.1.1.0", + "fileVersion": "2.1.1.18157" + } + } + }, + "Microsoft.Extensions.Logging.Abstractions/2.1.1": { + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.dll": { + "assemblyVersion": "2.1.1.0", + "fileVersion": "2.1.1.18157" + } + } + }, + "Microsoft.Extensions.Options/2.1.1": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.1.1", + "Microsoft.Extensions.Primitives": "2.1.1" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Options.dll": { + "assemblyVersion": "2.1.1.0", + "fileVersion": "2.1.1.18157" + } + } + }, + "Microsoft.Extensions.Primitives/2.1.1": { + "dependencies": { + "System.Memory": "4.5.4", + "System.Runtime.CompilerServices.Unsafe": "5.0.0" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Primitives.dll": { + "assemblyVersion": "2.1.1.0", + "fileVersion": "2.1.1.18157" + } + } + }, + "Microsoft.NETCore.Platforms/5.0.0": {}, + "Microsoft.Win32.Registry/5.0.0": { + "dependencies": { + "System.Security.AccessControl": "5.0.0", + "System.Security.Principal.Windows": "5.0.0" + } + }, + "Perfolizer/0.2.1": { + "dependencies": { + "System.Memory": "4.5.4" + }, + "runtime": { + "lib/netstandard2.0/Perfolizer.dll": { + "assemblyVersion": "0.2.1.0", + "fileVersion": "0.2.1.0" + } + } + }, + "System.CodeDom/5.0.0": { + "runtime": { + "lib/netstandard2.0/System.CodeDom.dll": { + "assemblyVersion": "5.0.0.0", + "fileVersion": "5.0.20.51904" + } + } + }, + "System.Collections.Immutable/5.0.0": {}, + "System.Management/5.0.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "Microsoft.Win32.Registry": "5.0.0", + "System.CodeDom": "5.0.0" + }, + "runtime": { + "lib/netstandard2.0/System.Management.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "5.0.20.51904" + } + }, + "runtimeTargets": { + "runtimes/win/lib/netcoreapp2.0/System.Management.dll": { + "rid": "win", + "assetType": "runtime", + "assemblyVersion": "4.0.0.0", + "fileVersion": "5.0.20.51904" + } + } + }, + "System.Memory/4.5.4": {}, + "System.Reflection.Metadata/5.0.0": {}, + "System.Runtime.CompilerServices.Unsafe/5.0.0": {}, + "System.Security.AccessControl/5.0.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "System.Security.Principal.Windows": "5.0.0" + } + }, + "System.Security.Principal.Windows/5.0.0": {}, + "System.Text.Encoding.CodePages/4.5.1": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "System.Runtime.CompilerServices.Unsafe": "5.0.0" + } + }, + "System.Threading.Tasks.Extensions/4.5.4": {} + } + }, + "libraries": { + "BenchMark/1.0.0": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "BenchmarkDotNet/0.13.12": { + "type": "package", + "serviceable": true, + "sha512": "sha512-aKnzpUZJJfLBHG7zcfQZhCexZQKcJgElC8qcFUTXPMYFlVauJBobuOmtRnmrapqC2j7EjjZCsPxa3yLvFLx5/Q==", + "path": "benchmarkdotnet/0.13.12", + "hashPath": "benchmarkdotnet.0.13.12.nupkg.sha512" + }, + "BenchmarkDotNet.Annotations/0.13.12": { + "type": "package", + "serviceable": true, + "sha512": "sha512-4zmFOOJqW1GrEP/t5XKgh97LH9r6zixGy2IA0JAaoTNNnZ8kPBt9u/XagsGNyV0e7rglOpFcWc6wI5EjefKpKA==", + "path": "benchmarkdotnet.annotations/0.13.12", + "hashPath": "benchmarkdotnet.annotations.0.13.12.nupkg.sha512" + }, + "CommandLineParser/2.9.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-OE0sl1/sQ37bjVsPKKtwQlWDgqaxWgtme3xZz7JssWUzg5JpMIyHgCTY9MVMxOg48fJ1AgGT3tgdH5m/kQ5xhA==", + "path": "commandlineparser/2.9.1", + "hashPath": "commandlineparser.2.9.1.nupkg.sha512" + }, + "Gee.External.Capstone/2.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-2ap/rYmjtzCOT8hxrnEW/QeiOt+paD8iRrIcdKX0cxVwWLFa1e+JDBNeECakmccXrSFeBQuu5AV8SNkipFMMMw==", + "path": "gee.external.capstone/2.3.0", + "hashPath": "gee.external.capstone.2.3.0.nupkg.sha512" + }, + "Iced/1.17.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-8x+HCVTl/HHTGpscH3vMBhV8sknN/muZFw9s3TsI8SA6+c43cOTCi2+jE4KsU8pNLbJ++iF2ZFcpcXHXtDglnw==", + "path": "iced/1.17.0", + "hashPath": "iced.1.17.0.nupkg.sha512" + }, + "Microsoft.Bcl.AsyncInterfaces/1.1.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-1Am6l4Vpn3/K32daEqZI+FFr96OlZkgwK2LcT3pZ2zWubR5zTPW3/FkO1Rat9kb7oQOa4rxgl9LJHc5tspCWfg==", + "path": "microsoft.bcl.asyncinterfaces/1.1.0", + "hashPath": "microsoft.bcl.asyncinterfaces.1.1.0.nupkg.sha512" + }, + "Microsoft.CodeAnalysis.Analyzers/3.3.3": { + "type": "package", + "serviceable": true, + "sha512": "sha512-j/rOZtLMVJjrfLRlAMckJLPW/1rze9MT1yfWqSIbUPGRu1m1P0fuo9PmqapwsmePfGB5PJrudQLvmUOAMF0DqQ==", + "path": "microsoft.codeanalysis.analyzers/3.3.3", + "hashPath": "microsoft.codeanalysis.analyzers.3.3.3.nupkg.sha512" + }, + "Microsoft.CodeAnalysis.Common/4.1.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-bNzTyxP3iD5FPFHfVDl15Y6/wSoI7e3MeV0lOaj9igbIKTjgrmuw6LoVJ06jUNFA7+KaDC/OIsStWl/FQJz6sQ==", + "path": "microsoft.codeanalysis.common/4.1.0", + "hashPath": "microsoft.codeanalysis.common.4.1.0.nupkg.sha512" + }, + "Microsoft.CodeAnalysis.CSharp/4.1.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-sbu6kDGzo9bfQxuqWpeEE7I9P30bSuZEnpDz9/qz20OU6pm79Z63+/BsAzO2e/R/Q97kBrpj647wokZnEVr97w==", + "path": "microsoft.codeanalysis.csharp/4.1.0", + "hashPath": "microsoft.codeanalysis.csharp.4.1.0.nupkg.sha512" + }, + "Microsoft.Diagnostics.NETCore.Client/0.2.251802": { + "type": "package", + "serviceable": true, + "sha512": "sha512-bqnYl6AdSeboeN4v25hSukK6Odm6/54E3Y2B8rBvgqvAW0mF8fo7XNRVE2DMOG7Rk0fiuA079QIH28+V+W1Zdg==", + "path": "microsoft.diagnostics.netcore.client/0.2.251802", + "hashPath": "microsoft.diagnostics.netcore.client.0.2.251802.nupkg.sha512" + }, + "Microsoft.Diagnostics.Runtime/2.2.332302": { + "type": "package", + "serviceable": true, + "sha512": "sha512-Hp84ivxSKIMTBzYSATxmUsm3YSXHWivcwiRRbsydGmqujMUK8BAueLN0ssAVEOkOBmh0vjUBhrq7YcroT7VCug==", + "path": "microsoft.diagnostics.runtime/2.2.332302", + "hashPath": "microsoft.diagnostics.runtime.2.2.332302.nupkg.sha512" + }, + "Microsoft.Diagnostics.Tracing.TraceEvent/3.0.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-Pr7t+Z/qBe6DxCow4BmYmDycHe2MrGESaflWXRcSUI4XNGyznx1ttS+9JNOxLuBZSoBSPTKw9Dyheo01Yi6anQ==", + "path": "microsoft.diagnostics.tracing.traceevent/3.0.2", + "hashPath": "microsoft.diagnostics.tracing.traceevent.3.0.2.nupkg.sha512" + }, + "Microsoft.DotNet.PlatformAbstractions/3.1.6": { + "type": "package", + "serviceable": true, + "sha512": "sha512-jek4XYaQ/PGUwDKKhwR8K47Uh1189PFzMeLqO83mXrXQVIpARZCcfuDedH50YDTepBkfijCZN5U/vZi++erxtg==", + "path": "microsoft.dotnet.platformabstractions/3.1.6", + "hashPath": "microsoft.dotnet.platformabstractions.3.1.6.nupkg.sha512" + }, + "Microsoft.Extensions.Configuration/2.1.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-LjVKO6P2y52c5ZhTLX/w8zc5H4Y3J/LJsgqTBj49TtFq/hAtVNue/WA0F6/7GMY90xhD7K0MDZ4qpOeWXbLvzg==", + "path": "microsoft.extensions.configuration/2.1.1", + "hashPath": "microsoft.extensions.configuration.2.1.1.nupkg.sha512" + }, + "Microsoft.Extensions.Configuration.Abstractions/2.1.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-VfuZJNa0WUshZ/+8BFZAhwFKiKuu/qOUCFntfdLpHj7vcRnsGHqd3G2Hse78DM+pgozczGM63lGPRLmy+uhUOA==", + "path": "microsoft.extensions.configuration.abstractions/2.1.1", + "hashPath": "microsoft.extensions.configuration.abstractions.2.1.1.nupkg.sha512" + }, + "Microsoft.Extensions.Configuration.Binder/2.1.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-fcLCTS03poWE4v9tSNBr3pWn0QwGgAn1vzqHXlXgvqZeOc7LvQNzaWcKRQZTdEc3+YhQKwMsOtm3VKSA2aWQ8w==", + "path": "microsoft.extensions.configuration.binder/2.1.1", + "hashPath": "microsoft.extensions.configuration.binder.2.1.1.nupkg.sha512" + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/2.1.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-MgYpU5cwZohUMKKg3sbPhvGG+eAZ/59E9UwPwlrUkyXU+PGzqwZg9yyQNjhxuAWmoNoFReoemeCku50prYSGzA==", + "path": "microsoft.extensions.dependencyinjection.abstractions/2.1.1", + "hashPath": "microsoft.extensions.dependencyinjection.abstractions.2.1.1.nupkg.sha512" + }, + "Microsoft.Extensions.Logging/2.1.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-hh+mkOAQDTp6XH80xJt3+wwYVzkbwYQl9XZRCz4Um0JjP/o7N9vHM3rZ6wwwtr+BBe/L6iBO2sz0px6OWBzqZQ==", + "path": "microsoft.extensions.logging/2.1.1", + "hashPath": "microsoft.extensions.logging.2.1.1.nupkg.sha512" + }, + "Microsoft.Extensions.Logging.Abstractions/2.1.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-XRzK7ZF+O6FzdfWrlFTi1Rgj2080ZDsd46vzOjadHUB0Cz5kOvDG8vI7caa5YFrsHQpcfn0DxtjS4E46N4FZsA==", + "path": "microsoft.extensions.logging.abstractions/2.1.1", + "hashPath": "microsoft.extensions.logging.abstractions.2.1.1.nupkg.sha512" + }, + "Microsoft.Extensions.Options/2.1.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-V7lXCU78lAbzaulCGFKojcCyG8RTJicEbiBkPJjFqiqXwndEBBIehdXRMWEVU3UtzQ1yDvphiWUL9th6/4gJ7w==", + "path": "microsoft.extensions.options/2.1.1", + "hashPath": "microsoft.extensions.options.2.1.1.nupkg.sha512" + }, + "Microsoft.Extensions.Primitives/2.1.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-scJ1GZNIxMmjpENh0UZ8XCQ6vzr/LzeF9WvEA51Ix2OQGAs9WPgPu8ABVUdvpKPLuor/t05gm6menJK3PwqOXg==", + "path": "microsoft.extensions.primitives/2.1.1", + "hashPath": "microsoft.extensions.primitives.2.1.1.nupkg.sha512" + }, + "Microsoft.NETCore.Platforms/5.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-VyPlqzH2wavqquTcYpkIIAQ6WdenuKoFN0BdYBbCWsclXacSOHNQn66Gt4z5NBqEYW0FAPm5rlvki9ZiCij5xQ==", + "path": "microsoft.netcore.platforms/5.0.0", + "hashPath": "microsoft.netcore.platforms.5.0.0.nupkg.sha512" + }, + "Microsoft.Win32.Registry/5.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-dDoKi0PnDz31yAyETfRntsLArTlVAVzUzCIvvEDsDsucrl33Dl8pIJG06ePTJTI3tGpeyHS9Cq7Foc/s4EeKcg==", + "path": "microsoft.win32.registry/5.0.0", + "hashPath": "microsoft.win32.registry.5.0.0.nupkg.sha512" + }, + "Perfolizer/0.2.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-Dt4aCxCT8NPtWBKA8k+FsN/RezOQ2C6omNGm5o/qmYRiIwlQYF93UgFmeF1ezVNsztTnkg7P5P63AE+uNkLfrw==", + "path": "perfolizer/0.2.1", + "hashPath": "perfolizer.0.2.1.nupkg.sha512" + }, + "System.CodeDom/5.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-JPJArwA1kdj8qDAkY2XGjSWoYnqiM7q/3yRNkt6n28Mnn95MuEGkZXUbPBf7qc3IjwrGY5ttQon7yqHZyQJmOQ==", + "path": "system.codedom/5.0.0", + "hashPath": "system.codedom.5.0.0.nupkg.sha512" + }, + "System.Collections.Immutable/5.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-FXkLXiK0sVVewcso0imKQoOxjoPAj42R8HtjjbSjVPAzwDfzoyoznWxgA3c38LDbN9SJux1xXoXYAhz98j7r2g==", + "path": "system.collections.immutable/5.0.0", + "hashPath": "system.collections.immutable.5.0.0.nupkg.sha512" + }, + "System.Management/5.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-MF1CHaRcC+MLFdnDthv4/bKWBZnlnSpkGqa87pKukQefgEdwtb9zFW6zs0GjPp73qtpYYg4q6PEKbzJbxCpKfw==", + "path": "system.management/5.0.0", + "hashPath": "system.management.5.0.0.nupkg.sha512" + }, + "System.Memory/4.5.4": { + "type": "package", + "serviceable": true, + "sha512": "sha512-1MbJTHS1lZ4bS4FmsJjnuGJOu88ZzTT2rLvrhW7Ygic+pC0NWA+3hgAen0HRdsocuQXCkUTdFn9yHJJhsijDXw==", + "path": "system.memory/4.5.4", + "hashPath": "system.memory.4.5.4.nupkg.sha512" + }, + "System.Reflection.Metadata/5.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-5NecZgXktdGg34rh1OenY1rFNDCI8xSjFr+Z4OU4cU06AQHUdRnIIEeWENu3Wl4YowbzkymAIMvi3WyK9U53pQ==", + "path": "system.reflection.metadata/5.0.0", + "hashPath": "system.reflection.metadata.5.0.0.nupkg.sha512" + }, + "System.Runtime.CompilerServices.Unsafe/5.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-ZD9TMpsmYJLrxbbmdvhwt9YEgG5WntEnZ/d1eH8JBX9LBp+Ju8BSBhUGbZMNVHHomWo2KVImJhTDl2hIgw/6MA==", + "path": "system.runtime.compilerservices.unsafe/5.0.0", + "hashPath": "system.runtime.compilerservices.unsafe.5.0.0.nupkg.sha512" + }, + "System.Security.AccessControl/5.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-dagJ1mHZO3Ani8GH0PHpPEe/oYO+rVdbQjvjJkBRNQkX4t0r1iaeGn8+/ybkSLEan3/slM0t59SVdHzuHf2jmw==", + "path": "system.security.accesscontrol/5.0.0", + "hashPath": "system.security.accesscontrol.5.0.0.nupkg.sha512" + }, + "System.Security.Principal.Windows/5.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-t0MGLukB5WAVU9bO3MGzvlGnyJPgUlcwerXn1kzBRjwLKixT96XV0Uza41W49gVd8zEMFu9vQEFlv0IOrytICA==", + "path": "system.security.principal.windows/5.0.0", + "hashPath": "system.security.principal.windows.5.0.0.nupkg.sha512" + }, + "System.Text.Encoding.CodePages/4.5.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-4J2JQXbftjPMppIHJ7IC+VXQ9XfEagN92vZZNoG12i+zReYlim5dMoXFC1Zzg7tsnKDM7JPo5bYfFK4Jheq44w==", + "path": "system.text.encoding.codepages/4.5.1", + "hashPath": "system.text.encoding.codepages.4.5.1.nupkg.sha512" + }, + "System.Threading.Tasks.Extensions/4.5.4": { + "type": "package", + "serviceable": true, + "sha512": "sha512-zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", + "path": "system.threading.tasks.extensions/4.5.4", + "hashPath": "system.threading.tasks.extensions.4.5.4.nupkg.sha512" + } + } +} \ No newline at end of file diff --git a/源代码/BenchMark/bin/Release/net6.0/BenchMark.dll b/源代码/BenchMark/bin/Release/net6.0/BenchMark.dll new file mode 100644 index 00000000..ce3820dd Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/BenchMark.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/BenchMark.exe b/源代码/BenchMark/bin/Release/net6.0/BenchMark.exe new file mode 100644 index 00000000..608ea17d Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/BenchMark.exe differ diff --git a/源代码/BenchMark/bin/Release/net6.0/BenchMark.pdb b/源代码/BenchMark/bin/Release/net6.0/BenchMark.pdb new file mode 100644 index 00000000..4b950cc5 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/BenchMark.pdb differ diff --git a/源代码/Output/x64/RealDebug/net6.0/StgSharpDebug.runtimeconfig.json b/源代码/BenchMark/bin/Release/net6.0/BenchMark.runtimeconfig.json similarity index 100% rename from 源代码/Output/x64/RealDebug/net6.0/StgSharpDebug.runtimeconfig.json rename to 源代码/BenchMark/bin/Release/net6.0/BenchMark.runtimeconfig.json diff --git a/源代码/BenchMark/bin/Release/net6.0/BenchmarkDotNet.Annotations.dll b/源代码/BenchMark/bin/Release/net6.0/BenchmarkDotNet.Annotations.dll new file mode 100644 index 00000000..6ea42361 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/BenchmarkDotNet.Annotations.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/BenchmarkDotNet.dll b/源代码/BenchMark/bin/Release/net6.0/BenchmarkDotNet.dll new file mode 100644 index 00000000..7d9a613b Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/BenchmarkDotNet.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/CommandLine.dll b/源代码/BenchMark/bin/Release/net6.0/CommandLine.dll new file mode 100644 index 00000000..3eab2be2 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/CommandLine.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/Dia2Lib.dll b/源代码/BenchMark/bin/Release/net6.0/Dia2Lib.dll new file mode 100644 index 00000000..68b11b65 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/Dia2Lib.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/Gee.External.Capstone.dll b/源代码/BenchMark/bin/Release/net6.0/Gee.External.Capstone.dll new file mode 100644 index 00000000..035e1483 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/Gee.External.Capstone.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/Iced.dll b/源代码/BenchMark/bin/Release/net6.0/Iced.dll new file mode 100644 index 00000000..bc4d149d Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/Iced.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/Microsoft.Bcl.AsyncInterfaces.dll b/源代码/BenchMark/bin/Release/net6.0/Microsoft.Bcl.AsyncInterfaces.dll new file mode 100644 index 00000000..c695bdd5 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/Microsoft.Bcl.AsyncInterfaces.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/Microsoft.CodeAnalysis.CSharp.dll b/源代码/BenchMark/bin/Release/net6.0/Microsoft.CodeAnalysis.CSharp.dll new file mode 100644 index 00000000..5a19219a Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/Microsoft.CodeAnalysis.CSharp.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/Microsoft.CodeAnalysis.dll b/源代码/BenchMark/bin/Release/net6.0/Microsoft.CodeAnalysis.dll new file mode 100644 index 00000000..6fbab494 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/Microsoft.CodeAnalysis.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/Microsoft.Diagnostics.FastSerialization.dll b/源代码/BenchMark/bin/Release/net6.0/Microsoft.Diagnostics.FastSerialization.dll new file mode 100644 index 00000000..e207037a Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/Microsoft.Diagnostics.FastSerialization.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/Microsoft.Diagnostics.NETCore.Client.dll b/源代码/BenchMark/bin/Release/net6.0/Microsoft.Diagnostics.NETCore.Client.dll new file mode 100644 index 00000000..90f1f99f Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/Microsoft.Diagnostics.NETCore.Client.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/Microsoft.Diagnostics.Runtime.dll b/源代码/BenchMark/bin/Release/net6.0/Microsoft.Diagnostics.Runtime.dll new file mode 100644 index 00000000..b6bf84cd Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/Microsoft.Diagnostics.Runtime.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/Microsoft.Diagnostics.Tracing.TraceEvent.dll b/源代码/BenchMark/bin/Release/net6.0/Microsoft.Diagnostics.Tracing.TraceEvent.dll new file mode 100644 index 00000000..23118e81 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/Microsoft.Diagnostics.Tracing.TraceEvent.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/Microsoft.DotNet.PlatformAbstractions.dll b/源代码/BenchMark/bin/Release/net6.0/Microsoft.DotNet.PlatformAbstractions.dll new file mode 100644 index 00000000..558229b6 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/Microsoft.DotNet.PlatformAbstractions.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/Microsoft.Extensions.Configuration.Abstractions.dll b/源代码/BenchMark/bin/Release/net6.0/Microsoft.Extensions.Configuration.Abstractions.dll new file mode 100644 index 00000000..80d73edd Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/Microsoft.Extensions.Configuration.Abstractions.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/Microsoft.Extensions.Configuration.Binder.dll b/源代码/BenchMark/bin/Release/net6.0/Microsoft.Extensions.Configuration.Binder.dll new file mode 100644 index 00000000..2415b679 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/Microsoft.Extensions.Configuration.Binder.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/Microsoft.Extensions.Configuration.dll b/源代码/BenchMark/bin/Release/net6.0/Microsoft.Extensions.Configuration.dll new file mode 100644 index 00000000..aa1f010c Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/Microsoft.Extensions.Configuration.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll b/源代码/BenchMark/bin/Release/net6.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll new file mode 100644 index 00000000..7d8769b8 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/Microsoft.Extensions.Logging.Abstractions.dll b/源代码/BenchMark/bin/Release/net6.0/Microsoft.Extensions.Logging.Abstractions.dll new file mode 100644 index 00000000..98b2019d Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/Microsoft.Extensions.Logging.Abstractions.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/Microsoft.Extensions.Logging.dll b/源代码/BenchMark/bin/Release/net6.0/Microsoft.Extensions.Logging.dll new file mode 100644 index 00000000..662d975f Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/Microsoft.Extensions.Logging.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/Microsoft.Extensions.Options.dll b/源代码/BenchMark/bin/Release/net6.0/Microsoft.Extensions.Options.dll new file mode 100644 index 00000000..065d0157 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/Microsoft.Extensions.Options.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/Microsoft.Extensions.Primitives.dll b/源代码/BenchMark/bin/Release/net6.0/Microsoft.Extensions.Primitives.dll new file mode 100644 index 00000000..1999bace Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/Microsoft.Extensions.Primitives.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/OSExtensions.dll b/源代码/BenchMark/bin/Release/net6.0/OSExtensions.dll new file mode 100644 index 00000000..49d7a56f Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/OSExtensions.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/Perfolizer.dll b/源代码/BenchMark/bin/Release/net6.0/Perfolizer.dll new file mode 100644 index 00000000..27947cc5 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/Perfolizer.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/System.CodeDom.dll b/源代码/BenchMark/bin/Release/net6.0/System.CodeDom.dll new file mode 100644 index 00000000..873495d3 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/System.CodeDom.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/System.Management.dll b/源代码/BenchMark/bin/Release/net6.0/System.Management.dll new file mode 100644 index 00000000..c3a0320e Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/System.Management.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/TraceReloggerLib.dll b/源代码/BenchMark/bin/Release/net6.0/TraceReloggerLib.dll new file mode 100644 index 00000000..1a8280b9 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/TraceReloggerLib.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/amd64/KernelTraceControl.dll b/源代码/BenchMark/bin/Release/net6.0/amd64/KernelTraceControl.dll new file mode 100644 index 00000000..9a96bc79 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/amd64/KernelTraceControl.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/amd64/msdia140.dll b/源代码/BenchMark/bin/Release/net6.0/amd64/msdia140.dll new file mode 100644 index 00000000..9d280f50 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/amd64/msdia140.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/amd64/msvcp140.dll b/源代码/BenchMark/bin/Release/net6.0/amd64/msvcp140.dll new file mode 100644 index 00000000..b12c9085 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/amd64/msvcp140.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/amd64/vcruntime140.dll b/源代码/BenchMark/bin/Release/net6.0/amd64/vcruntime140.dll new file mode 100644 index 00000000..63e4eba7 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/amd64/vcruntime140.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/amd64/vcruntime140_1.dll b/源代码/BenchMark/bin/Release/net6.0/amd64/vcruntime140_1.dll new file mode 100644 index 00000000..6230c020 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/amd64/vcruntime140_1.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/arm64/KernelTraceControl.dll b/源代码/BenchMark/bin/Release/net6.0/arm64/KernelTraceControl.dll new file mode 100644 index 00000000..2ca64281 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/arm64/KernelTraceControl.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/arm64/msdia140.dll b/源代码/BenchMark/bin/Release/net6.0/arm64/msdia140.dll new file mode 100644 index 00000000..b34eb25f Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/arm64/msdia140.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/arm64/msvcp140.dll b/源代码/BenchMark/bin/Release/net6.0/arm64/msvcp140.dll new file mode 100644 index 00000000..56cacc4e Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/arm64/msvcp140.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/arm64/vcruntime140.dll b/源代码/BenchMark/bin/Release/net6.0/arm64/vcruntime140.dll new file mode 100644 index 00000000..24f202aa Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/arm64/vcruntime140.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/arm64/vcruntime140_1.dll b/源代码/BenchMark/bin/Release/net6.0/arm64/vcruntime140_1.dll new file mode 100644 index 00000000..66492fba Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/arm64/vcruntime140_1.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/cs/Microsoft.CodeAnalysis.CSharp.resources.dll b/源代码/BenchMark/bin/Release/net6.0/cs/Microsoft.CodeAnalysis.CSharp.resources.dll new file mode 100644 index 00000000..c5e5708c Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/cs/Microsoft.CodeAnalysis.CSharp.resources.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/cs/Microsoft.CodeAnalysis.resources.dll b/源代码/BenchMark/bin/Release/net6.0/cs/Microsoft.CodeAnalysis.resources.dll new file mode 100644 index 00000000..b620565d Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/cs/Microsoft.CodeAnalysis.resources.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/de/Microsoft.CodeAnalysis.CSharp.resources.dll b/源代码/BenchMark/bin/Release/net6.0/de/Microsoft.CodeAnalysis.CSharp.resources.dll new file mode 100644 index 00000000..87be0062 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/de/Microsoft.CodeAnalysis.CSharp.resources.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/de/Microsoft.CodeAnalysis.resources.dll b/源代码/BenchMark/bin/Release/net6.0/de/Microsoft.CodeAnalysis.resources.dll new file mode 100644 index 00000000..859490d8 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/de/Microsoft.CodeAnalysis.resources.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/es/Microsoft.CodeAnalysis.CSharp.resources.dll b/源代码/BenchMark/bin/Release/net6.0/es/Microsoft.CodeAnalysis.CSharp.resources.dll new file mode 100644 index 00000000..e868e23e Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/es/Microsoft.CodeAnalysis.CSharp.resources.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/es/Microsoft.CodeAnalysis.resources.dll b/源代码/BenchMark/bin/Release/net6.0/es/Microsoft.CodeAnalysis.resources.dll new file mode 100644 index 00000000..f57cafe2 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/es/Microsoft.CodeAnalysis.resources.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/fr/Microsoft.CodeAnalysis.CSharp.resources.dll b/源代码/BenchMark/bin/Release/net6.0/fr/Microsoft.CodeAnalysis.CSharp.resources.dll new file mode 100644 index 00000000..adccb684 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/fr/Microsoft.CodeAnalysis.CSharp.resources.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/fr/Microsoft.CodeAnalysis.resources.dll b/源代码/BenchMark/bin/Release/net6.0/fr/Microsoft.CodeAnalysis.resources.dll new file mode 100644 index 00000000..56d66a02 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/fr/Microsoft.CodeAnalysis.resources.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/it/Microsoft.CodeAnalysis.CSharp.resources.dll b/源代码/BenchMark/bin/Release/net6.0/it/Microsoft.CodeAnalysis.CSharp.resources.dll new file mode 100644 index 00000000..c0c8ba59 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/it/Microsoft.CodeAnalysis.CSharp.resources.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/it/Microsoft.CodeAnalysis.resources.dll b/源代码/BenchMark/bin/Release/net6.0/it/Microsoft.CodeAnalysis.resources.dll new file mode 100644 index 00000000..e4cb7cb4 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/it/Microsoft.CodeAnalysis.resources.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/ja/Microsoft.CodeAnalysis.CSharp.resources.dll b/源代码/BenchMark/bin/Release/net6.0/ja/Microsoft.CodeAnalysis.CSharp.resources.dll new file mode 100644 index 00000000..a73426e8 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/ja/Microsoft.CodeAnalysis.CSharp.resources.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/ja/Microsoft.CodeAnalysis.resources.dll b/源代码/BenchMark/bin/Release/net6.0/ja/Microsoft.CodeAnalysis.resources.dll new file mode 100644 index 00000000..98b55744 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/ja/Microsoft.CodeAnalysis.resources.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/ko/Microsoft.CodeAnalysis.CSharp.resources.dll b/源代码/BenchMark/bin/Release/net6.0/ko/Microsoft.CodeAnalysis.CSharp.resources.dll new file mode 100644 index 00000000..ac308094 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/ko/Microsoft.CodeAnalysis.CSharp.resources.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/ko/Microsoft.CodeAnalysis.resources.dll b/源代码/BenchMark/bin/Release/net6.0/ko/Microsoft.CodeAnalysis.resources.dll new file mode 100644 index 00000000..516c840d Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/ko/Microsoft.CodeAnalysis.resources.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/pl/Microsoft.CodeAnalysis.CSharp.resources.dll b/源代码/BenchMark/bin/Release/net6.0/pl/Microsoft.CodeAnalysis.CSharp.resources.dll new file mode 100644 index 00000000..c3d1e3ef Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/pl/Microsoft.CodeAnalysis.CSharp.resources.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/pl/Microsoft.CodeAnalysis.resources.dll b/源代码/BenchMark/bin/Release/net6.0/pl/Microsoft.CodeAnalysis.resources.dll new file mode 100644 index 00000000..fd7a08aa Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/pl/Microsoft.CodeAnalysis.resources.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll b/源代码/BenchMark/bin/Release/net6.0/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll new file mode 100644 index 00000000..eca37ce3 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/pt-BR/Microsoft.CodeAnalysis.resources.dll b/源代码/BenchMark/bin/Release/net6.0/pt-BR/Microsoft.CodeAnalysis.resources.dll new file mode 100644 index 00000000..9723ccce Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/pt-BR/Microsoft.CodeAnalysis.resources.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/ru/Microsoft.CodeAnalysis.CSharp.resources.dll b/源代码/BenchMark/bin/Release/net6.0/ru/Microsoft.CodeAnalysis.CSharp.resources.dll new file mode 100644 index 00000000..1c58cdda Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/ru/Microsoft.CodeAnalysis.CSharp.resources.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/ru/Microsoft.CodeAnalysis.resources.dll b/源代码/BenchMark/bin/Release/net6.0/ru/Microsoft.CodeAnalysis.resources.dll new file mode 100644 index 00000000..f60218d8 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/ru/Microsoft.CodeAnalysis.resources.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/runtimes/linux-arm/native/libcapstone.so b/源代码/BenchMark/bin/Release/net6.0/runtimes/linux-arm/native/libcapstone.so new file mode 100644 index 00000000..d2c5e8fe Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/runtimes/linux-arm/native/libcapstone.so differ diff --git a/源代码/BenchMark/bin/Release/net6.0/runtimes/linux-arm64/native/libcapstone.so b/源代码/BenchMark/bin/Release/net6.0/runtimes/linux-arm64/native/libcapstone.so new file mode 100644 index 00000000..00815df9 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/runtimes/linux-arm64/native/libcapstone.so differ diff --git a/源代码/BenchMark/bin/Release/net6.0/runtimes/linux-x64/native/libcapstone.so b/源代码/BenchMark/bin/Release/net6.0/runtimes/linux-x64/native/libcapstone.so new file mode 100644 index 00000000..e7778125 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/runtimes/linux-x64/native/libcapstone.so differ diff --git a/源代码/BenchMark/bin/Release/net6.0/runtimes/linux-x86/native/libcapstone.so b/源代码/BenchMark/bin/Release/net6.0/runtimes/linux-x86/native/libcapstone.so new file mode 100644 index 00000000..2a3dac36 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/runtimes/linux-x86/native/libcapstone.so differ diff --git a/源代码/BenchMark/bin/Release/net6.0/runtimes/osx-arm64/native/libcapstone.dylib b/源代码/BenchMark/bin/Release/net6.0/runtimes/osx-arm64/native/libcapstone.dylib new file mode 100644 index 00000000..ef96a6b0 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/runtimes/osx-arm64/native/libcapstone.dylib differ diff --git a/源代码/BenchMark/bin/Release/net6.0/runtimes/osx-x64/native/libcapstone.dylib b/源代码/BenchMark/bin/Release/net6.0/runtimes/osx-x64/native/libcapstone.dylib new file mode 100644 index 00000000..b9653dde Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/runtimes/osx-x64/native/libcapstone.dylib differ diff --git a/源代码/BenchMark/bin/Release/net6.0/runtimes/win-arm64/native/capstone.dll b/源代码/BenchMark/bin/Release/net6.0/runtimes/win-arm64/native/capstone.dll new file mode 100644 index 00000000..c77717fb Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/runtimes/win-arm64/native/capstone.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/runtimes/win-x64/native/capstone.dll b/源代码/BenchMark/bin/Release/net6.0/runtimes/win-x64/native/capstone.dll new file mode 100644 index 00000000..4eb46278 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/runtimes/win-x64/native/capstone.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/runtimes/win-x86/native/capstone.dll b/源代码/BenchMark/bin/Release/net6.0/runtimes/win-x86/native/capstone.dll new file mode 100644 index 00000000..4728b4c1 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/runtimes/win-x86/native/capstone.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/runtimes/win/lib/netcoreapp2.0/System.Management.dll b/源代码/BenchMark/bin/Release/net6.0/runtimes/win/lib/netcoreapp2.0/System.Management.dll new file mode 100644 index 00000000..a3a1f451 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/runtimes/win/lib/netcoreapp2.0/System.Management.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/tr/Microsoft.CodeAnalysis.CSharp.resources.dll b/源代码/BenchMark/bin/Release/net6.0/tr/Microsoft.CodeAnalysis.CSharp.resources.dll new file mode 100644 index 00000000..3c6ff564 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/tr/Microsoft.CodeAnalysis.CSharp.resources.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/tr/Microsoft.CodeAnalysis.resources.dll b/源代码/BenchMark/bin/Release/net6.0/tr/Microsoft.CodeAnalysis.resources.dll new file mode 100644 index 00000000..67f93548 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/tr/Microsoft.CodeAnalysis.resources.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/x86/KernelTraceControl.Win61.dll b/源代码/BenchMark/bin/Release/net6.0/x86/KernelTraceControl.Win61.dll new file mode 100644 index 00000000..63bd7805 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/x86/KernelTraceControl.Win61.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/x86/KernelTraceControl.dll b/源代码/BenchMark/bin/Release/net6.0/x86/KernelTraceControl.dll new file mode 100644 index 00000000..cf35dfa8 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/x86/KernelTraceControl.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/x86/msdia140.dll b/源代码/BenchMark/bin/Release/net6.0/x86/msdia140.dll new file mode 100644 index 00000000..8bd61c23 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/x86/msdia140.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/x86/msvcp140.dll b/源代码/BenchMark/bin/Release/net6.0/x86/msvcp140.dll new file mode 100644 index 00000000..02285ab6 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/x86/msvcp140.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/x86/vcruntime140.dll b/源代码/BenchMark/bin/Release/net6.0/x86/vcruntime140.dll new file mode 100644 index 00000000..bb623b6b Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/x86/vcruntime140.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll b/源代码/BenchMark/bin/Release/net6.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll new file mode 100644 index 00000000..9c795310 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/zh-Hans/Microsoft.CodeAnalysis.resources.dll b/源代码/BenchMark/bin/Release/net6.0/zh-Hans/Microsoft.CodeAnalysis.resources.dll new file mode 100644 index 00000000..8d24aefd Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/zh-Hans/Microsoft.CodeAnalysis.resources.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll b/源代码/BenchMark/bin/Release/net6.0/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll new file mode 100644 index 00000000..8b0d4dfc Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll differ diff --git a/源代码/BenchMark/bin/Release/net6.0/zh-Hant/Microsoft.CodeAnalysis.resources.dll b/源代码/BenchMark/bin/Release/net6.0/zh-Hant/Microsoft.CodeAnalysis.resources.dll new file mode 100644 index 00000000..e949a2c8 Binary files /dev/null and b/源代码/BenchMark/bin/Release/net6.0/zh-Hant/Microsoft.CodeAnalysis.resources.dll differ diff --git a/源代码/BenchMark/obj/Debug/net6.0/BenchMark.assets.cache b/源代码/BenchMark/obj/Debug/net6.0/BenchMark.assets.cache index ff435c15..083cf6ed 100644 Binary files a/源代码/BenchMark/obj/Debug/net6.0/BenchMark.assets.cache and b/源代码/BenchMark/obj/Debug/net6.0/BenchMark.assets.cache differ diff --git a/源代码/BenchMark/obj/Release/net6.0/BenchMark.AssemblyInfo.cs b/源代码/BenchMark/obj/Release/net6.0/BenchMark.AssemblyInfo.cs new file mode 100644 index 00000000..877e82b6 --- /dev/null +++ b/源代码/BenchMark/obj/Release/net6.0/BenchMark.AssemblyInfo.cs @@ -0,0 +1,23 @@ +//------------------------------------------------------------------------------ +// +// 此代码由工具生成。 +// 运行时版本:4.0.30319.42000 +// +// 对此文件的更改可能会导致不正确的行为,并且如果 +// 重新生成代码,这些更改将会丢失。 +// +//------------------------------------------------------------------------------ + +using System; +using System.Reflection; + +[assembly: System.Reflection.AssemblyCompanyAttribute("BenchMark")] +[assembly: System.Reflection.AssemblyConfigurationAttribute("Release")] +[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] +[assembly: System.Reflection.AssemblyProductAttribute("BenchMark")] +[assembly: System.Reflection.AssemblyTitleAttribute("BenchMark")] +[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] + +// 由 MSBuild WriteCodeFragment 类生成。 + diff --git a/源代码/BenchMark/obj/Release/net6.0/BenchMark.AssemblyInfoInputs.cache b/源代码/BenchMark/obj/Release/net6.0/BenchMark.AssemblyInfoInputs.cache new file mode 100644 index 00000000..d6b3dfe5 --- /dev/null +++ b/源代码/BenchMark/obj/Release/net6.0/BenchMark.AssemblyInfoInputs.cache @@ -0,0 +1 @@ +81cd96abd59d726cc4a64183c0d1b58d4a9d05079cd1c8dd14213fa2567ef984 diff --git a/源代码/BenchMark/obj/Release/net6.0/BenchMark.GeneratedMSBuildEditorConfig.editorconfig b/源代码/BenchMark/obj/Release/net6.0/BenchMark.GeneratedMSBuildEditorConfig.editorconfig new file mode 100644 index 00000000..2fb28716 --- /dev/null +++ b/源代码/BenchMark/obj/Release/net6.0/BenchMark.GeneratedMSBuildEditorConfig.editorconfig @@ -0,0 +1,13 @@ +is_global = true +build_property.TargetFramework = net6.0 +build_property.TargetPlatformMinVersion = +build_property.UsingMicrosoftNETSdkWeb = +build_property.ProjectTypeGuids = +build_property.InvariantGlobalization = +build_property.PlatformNeutralAssembly = +build_property.EnforceExtendedAnalyzerRules = +build_property._SupportedPlatformList = Linux,macOS,Windows +build_property.RootNamespace = BenchMark +build_property.ProjectDir = D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\ +build_property.EnableComHosting = +build_property.EnableGeneratedComInterfaceComImportInterop = diff --git a/源代码/BenchMark/obj/Release/net6.0/BenchMark.assets.cache b/源代码/BenchMark/obj/Release/net6.0/BenchMark.assets.cache index 5d2c4e49..db30617c 100644 Binary files a/源代码/BenchMark/obj/Release/net6.0/BenchMark.assets.cache and b/源代码/BenchMark/obj/Release/net6.0/BenchMark.assets.cache differ diff --git a/源代码/BenchMark/obj/Release/net6.0/BenchMark.csproj.AssemblyReference.cache b/源代码/BenchMark/obj/Release/net6.0/BenchMark.csproj.AssemblyReference.cache new file mode 100644 index 00000000..98e0ad1d Binary files /dev/null and b/源代码/BenchMark/obj/Release/net6.0/BenchMark.csproj.AssemblyReference.cache differ diff --git a/源代码/BenchMark/obj/Release/net6.0/BenchMark.csproj.CopyComplete b/源代码/BenchMark/obj/Release/net6.0/BenchMark.csproj.CopyComplete new file mode 100644 index 00000000..e69de29b diff --git a/源代码/BenchMark/obj/Release/net6.0/BenchMark.csproj.CoreCompileInputs.cache b/源代码/BenchMark/obj/Release/net6.0/BenchMark.csproj.CoreCompileInputs.cache new file mode 100644 index 00000000..7befced0 --- /dev/null +++ b/源代码/BenchMark/obj/Release/net6.0/BenchMark.csproj.CoreCompileInputs.cache @@ -0,0 +1 @@ +7ffa5eae9915894d5cf49861d340a328d8a97487bea694d511768ea0ca4ccc43 diff --git a/源代码/BenchMark/obj/Release/net6.0/BenchMark.csproj.FileListAbsolute.txt b/源代码/BenchMark/obj/Release/net6.0/BenchMark.csproj.FileListAbsolute.txt index e69de29b..f0c04cff 100644 --- a/源代码/BenchMark/obj/Release/net6.0/BenchMark.csproj.FileListAbsolute.txt +++ b/源代码/BenchMark/obj/Release/net6.0/BenchMark.csproj.FileListAbsolute.txt @@ -0,0 +1,95 @@ +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\TraceReloggerLib.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\Dia2Lib.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\OSExtensions.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\x86\KernelTraceControl.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\x86\KernelTraceControl.Win61.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\x86\msdia140.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\x86\msvcp140.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\x86\vcruntime140.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\amd64\KernelTraceControl.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\amd64\msdia140.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\amd64\msvcp140.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\amd64\vcruntime140.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\amd64\vcruntime140_1.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\arm64\KernelTraceControl.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\arm64\msdia140.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\arm64\msvcp140.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\arm64\vcruntime140.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\arm64\vcruntime140_1.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\BenchMark.exe +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\BenchMark.deps.json +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\BenchMark.runtimeconfig.json +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\BenchMark.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\BenchMark.pdb +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\BenchmarkDotNet.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\BenchmarkDotNet.Annotations.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\CommandLine.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\Gee.External.Capstone.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\Iced.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\Microsoft.Bcl.AsyncInterfaces.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\Microsoft.CodeAnalysis.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\Microsoft.CodeAnalysis.CSharp.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\Microsoft.Diagnostics.NETCore.Client.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\Microsoft.Diagnostics.Runtime.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\Microsoft.Diagnostics.FastSerialization.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\Microsoft.Diagnostics.Tracing.TraceEvent.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\Microsoft.DotNet.PlatformAbstractions.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\Microsoft.Extensions.Configuration.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\Microsoft.Extensions.Configuration.Abstractions.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\Microsoft.Extensions.Configuration.Binder.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\Microsoft.Extensions.DependencyInjection.Abstractions.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\Microsoft.Extensions.Logging.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\Microsoft.Extensions.Logging.Abstractions.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\Microsoft.Extensions.Options.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\Microsoft.Extensions.Primitives.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\Perfolizer.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\System.CodeDom.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\System.Management.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\cs\Microsoft.CodeAnalysis.resources.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\de\Microsoft.CodeAnalysis.resources.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\es\Microsoft.CodeAnalysis.resources.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\fr\Microsoft.CodeAnalysis.resources.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\it\Microsoft.CodeAnalysis.resources.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\ja\Microsoft.CodeAnalysis.resources.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\ko\Microsoft.CodeAnalysis.resources.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\pl\Microsoft.CodeAnalysis.resources.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\pt-BR\Microsoft.CodeAnalysis.resources.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\ru\Microsoft.CodeAnalysis.resources.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\tr\Microsoft.CodeAnalysis.resources.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\zh-Hans\Microsoft.CodeAnalysis.resources.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\zh-Hant\Microsoft.CodeAnalysis.resources.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\cs\Microsoft.CodeAnalysis.CSharp.resources.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\de\Microsoft.CodeAnalysis.CSharp.resources.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\es\Microsoft.CodeAnalysis.CSharp.resources.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\fr\Microsoft.CodeAnalysis.CSharp.resources.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\it\Microsoft.CodeAnalysis.CSharp.resources.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\ja\Microsoft.CodeAnalysis.CSharp.resources.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\ko\Microsoft.CodeAnalysis.CSharp.resources.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\pl\Microsoft.CodeAnalysis.CSharp.resources.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\pt-BR\Microsoft.CodeAnalysis.CSharp.resources.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\ru\Microsoft.CodeAnalysis.CSharp.resources.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\tr\Microsoft.CodeAnalysis.CSharp.resources.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\zh-Hans\Microsoft.CodeAnalysis.CSharp.resources.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\zh-Hant\Microsoft.CodeAnalysis.CSharp.resources.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\runtimes\linux-arm\native\libcapstone.so +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\runtimes\linux-arm64\native\libcapstone.so +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\runtimes\linux-x64\native\libcapstone.so +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\runtimes\linux-x86\native\libcapstone.so +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\runtimes\osx-arm64\native\libcapstone.dylib +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\runtimes\osx-x64\native\libcapstone.dylib +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\runtimes\win-arm64\native\capstone.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\runtimes\win-x64\native\capstone.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\runtimes\win-x86\native\capstone.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\runtimes\win\lib\netcoreapp2.0\System.Management.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\obj\Release\net6.0\BenchMark.csproj.AssemblyReference.cache +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\obj\Release\net6.0\BenchMark.GeneratedMSBuildEditorConfig.editorconfig +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\obj\Release\net6.0\BenchMark.AssemblyInfoInputs.cache +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\obj\Release\net6.0\BenchMark.AssemblyInfo.cs +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\obj\Release\net6.0\BenchMark.csproj.CoreCompileInputs.cache +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\obj\Release\net6.0\BenchMark.sourcelink.json +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\obj\Release\net6.0\BenchMark.csproj.CopyComplete +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\obj\Release\net6.0\BenchMark.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\obj\Release\net6.0\refint\BenchMark.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\obj\Release\net6.0\BenchMark.pdb +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\obj\Release\net6.0\BenchMark.genruntimeconfig.cache +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\obj\Release\net6.0\ref\BenchMark.dll diff --git a/源代码/BenchMark/obj/Release/net6.0/BenchMark.dll b/源代码/BenchMark/obj/Release/net6.0/BenchMark.dll new file mode 100644 index 00000000..ce3820dd Binary files /dev/null and b/源代码/BenchMark/obj/Release/net6.0/BenchMark.dll differ diff --git a/源代码/BenchMark/obj/Release/net6.0/BenchMark.genruntimeconfig.cache b/源代码/BenchMark/obj/Release/net6.0/BenchMark.genruntimeconfig.cache new file mode 100644 index 00000000..cbc778d7 --- /dev/null +++ b/源代码/BenchMark/obj/Release/net6.0/BenchMark.genruntimeconfig.cache @@ -0,0 +1 @@ +0172166ad456d5aa696d69b035a37cc80103854c98e758f935d13563a382db43 diff --git a/源代码/BenchMark/obj/Release/net6.0/BenchMark.pdb b/源代码/BenchMark/obj/Release/net6.0/BenchMark.pdb new file mode 100644 index 00000000..4b950cc5 Binary files /dev/null and b/源代码/BenchMark/obj/Release/net6.0/BenchMark.pdb differ diff --git a/源代码/BenchMark/obj/Release/net6.0/BenchMark.sourcelink.json b/源代码/BenchMark/obj/Release/net6.0/BenchMark.sourcelink.json new file mode 100644 index 00000000..88f19103 --- /dev/null +++ b/源代码/BenchMark/obj/Release/net6.0/BenchMark.sourcelink.json @@ -0,0 +1 @@ +{"documents":{"D:\\NitloadIndustry\\研究项目\\1-Flagship\\TH2020\\ProjectFile\\*":"https://raw.githubusercontent.com/Nitload-NSI/CCD_Github/839156948261837c173ee878d930fc868fce223e/*"}} \ No newline at end of file diff --git a/源代码/BenchMark/obj/Release/net6.0/apphost.exe b/源代码/BenchMark/obj/Release/net6.0/apphost.exe index 45338796..608ea17d 100644 Binary files a/源代码/BenchMark/obj/Release/net6.0/apphost.exe and b/源代码/BenchMark/obj/Release/net6.0/apphost.exe differ diff --git a/源代码/BenchMark/obj/Release/net6.0/ref/BenchMark.dll b/源代码/BenchMark/obj/Release/net6.0/ref/BenchMark.dll new file mode 100644 index 00000000..496c4e5a Binary files /dev/null and b/源代码/BenchMark/obj/Release/net6.0/ref/BenchMark.dll differ diff --git a/源代码/BenchMark/obj/Release/net6.0/refint/BenchMark.dll b/源代码/BenchMark/obj/Release/net6.0/refint/BenchMark.dll new file mode 100644 index 00000000..496c4e5a Binary files /dev/null and b/源代码/BenchMark/obj/Release/net6.0/refint/BenchMark.dll differ diff --git a/源代码/BenchMark/obj/Toollist/net6.0/.NETCoreApp,Version=v6.0.AssemblyAttributes.cs b/源代码/BenchMark/obj/Toollist/net6.0/.NETCoreApp,Version=v6.0.AssemblyAttributes.cs new file mode 100644 index 00000000..ed926950 --- /dev/null +++ b/源代码/BenchMark/obj/Toollist/net6.0/.NETCoreApp,Version=v6.0.AssemblyAttributes.cs @@ -0,0 +1,4 @@ +// +using System; +using System.Reflection; +[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v6.0", FrameworkDisplayName = ".NET 6.0")] diff --git a/源代码/BenchMark/obj/Toollist/net6.0/BenchMark.AssemblyInfo.cs b/源代码/BenchMark/obj/Toollist/net6.0/BenchMark.AssemblyInfo.cs new file mode 100644 index 00000000..d522059d --- /dev/null +++ b/源代码/BenchMark/obj/Toollist/net6.0/BenchMark.AssemblyInfo.cs @@ -0,0 +1,23 @@ +//------------------------------------------------------------------------------ +// +// 此代码由工具生成。 +// 运行时版本:4.0.30319.42000 +// +// 对此文件的更改可能会导致不正确的行为,并且如果 +// 重新生成代码,这些更改将会丢失。 +// +//------------------------------------------------------------------------------ + +using System; +using System.Reflection; + +[assembly: System.Reflection.AssemblyCompanyAttribute("BenchMark")] +[assembly: System.Reflection.AssemblyConfigurationAttribute("Toollist")] +[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] +[assembly: System.Reflection.AssemblyProductAttribute("BenchMark")] +[assembly: System.Reflection.AssemblyTitleAttribute("BenchMark")] +[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] + +// 由 MSBuild WriteCodeFragment 类生成。 + diff --git a/源代码/BenchMark/obj/Toollist/net6.0/BenchMark.AssemblyInfoInputs.cache b/源代码/BenchMark/obj/Toollist/net6.0/BenchMark.AssemblyInfoInputs.cache new file mode 100644 index 00000000..8bf4cb10 --- /dev/null +++ b/源代码/BenchMark/obj/Toollist/net6.0/BenchMark.AssemblyInfoInputs.cache @@ -0,0 +1 @@ +8ed2c20c676efb77e900f819d507315a0cc1f6d1bb78826bbc74fe20dcd7015d diff --git a/源代码/BenchMark/obj/Toollist/net6.0/BenchMark.GeneratedMSBuildEditorConfig.editorconfig b/源代码/BenchMark/obj/Toollist/net6.0/BenchMark.GeneratedMSBuildEditorConfig.editorconfig new file mode 100644 index 00000000..2fb28716 --- /dev/null +++ b/源代码/BenchMark/obj/Toollist/net6.0/BenchMark.GeneratedMSBuildEditorConfig.editorconfig @@ -0,0 +1,13 @@ +is_global = true +build_property.TargetFramework = net6.0 +build_property.TargetPlatformMinVersion = +build_property.UsingMicrosoftNETSdkWeb = +build_property.ProjectTypeGuids = +build_property.InvariantGlobalization = +build_property.PlatformNeutralAssembly = +build_property.EnforceExtendedAnalyzerRules = +build_property._SupportedPlatformList = Linux,macOS,Windows +build_property.RootNamespace = BenchMark +build_property.ProjectDir = D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\ +build_property.EnableComHosting = +build_property.EnableGeneratedComInterfaceComImportInterop = diff --git a/源代码/BenchMark/obj/Toollist/net6.0/BenchMark.GlobalUsings.g.cs b/源代码/BenchMark/obj/Toollist/net6.0/BenchMark.GlobalUsings.g.cs new file mode 100644 index 00000000..8578f3d0 --- /dev/null +++ b/源代码/BenchMark/obj/Toollist/net6.0/BenchMark.GlobalUsings.g.cs @@ -0,0 +1,8 @@ +// +global using global::System; +global using global::System.Collections.Generic; +global using global::System.IO; +global using global::System.Linq; +global using global::System.Net.Http; +global using global::System.Threading; +global using global::System.Threading.Tasks; diff --git a/源代码/BenchMark/obj/Toollist/net6.0/BenchMark.assets.cache b/源代码/BenchMark/obj/Toollist/net6.0/BenchMark.assets.cache new file mode 100644 index 00000000..ad26d624 Binary files /dev/null and b/源代码/BenchMark/obj/Toollist/net6.0/BenchMark.assets.cache differ diff --git a/源代码/BenchMark/obj/Toollist/net6.0/BenchMark.csproj.AssemblyReference.cache b/源代码/BenchMark/obj/Toollist/net6.0/BenchMark.csproj.AssemblyReference.cache new file mode 100644 index 00000000..98e0ad1d Binary files /dev/null and b/源代码/BenchMark/obj/Toollist/net6.0/BenchMark.csproj.AssemblyReference.cache differ diff --git a/源代码/BenchMark/obj/project.assets.json b/源代码/BenchMark/obj/project.assets.json index 8e0988b8..74de2aa4 100644 --- a/源代码/BenchMark/obj/project.assets.json +++ b/源代码/BenchMark/obj/project.assets.json @@ -1822,5 +1822,13 @@ "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.100\\RuntimeIdentifierGraph.json" } } - } + }, + "logs": [ + { + "code": "NU1900", + "level": "Warning", + "warningLevel": 1, + "message": "获取包漏洞数据时出错: 从传输流收到意外的 EOF 或 0 个字节。" + } + ] } \ No newline at end of file diff --git a/源代码/BenchMark/obj/project.nuget.cache b/源代码/BenchMark/obj/project.nuget.cache index ece4110f..143f627c 100644 --- a/源代码/BenchMark/obj/project.nuget.cache +++ b/源代码/BenchMark/obj/project.nuget.cache @@ -39,5 +39,12 @@ "C:\\Users\\Nitlo\\.nuget\\packages\\system.text.encoding.codepages\\4.5.1\\system.text.encoding.codepages.4.5.1.nupkg.sha512", "C:\\Users\\Nitlo\\.nuget\\packages\\system.threading.tasks.extensions\\4.5.4\\system.threading.tasks.extensions.4.5.4.nupkg.sha512" ], - "logs": [] + "logs": [ + { + "code": "NU1900", + "level": "Warning", + "warningLevel": 1, + "message": "获取包漏洞数据时出错: 从传输流收到意外的 EOF 或 0 个字节。" + } + ] } \ No newline at end of file diff --git a/源代码/Output/x64/Benchmark/net6.0/StgSharpC.dll b/源代码/Output/x64/Benchmark/net6.0/StgSharpC.dll deleted file mode 100644 index c8cc9fa8..00000000 Binary files a/源代码/Output/x64/Benchmark/net6.0/StgSharpC.dll and /dev/null differ diff --git a/源代码/Output/x64/Debug/net6.0/SS_errorlog.log b/源代码/Output/x64/Debug/net6.0/SS_errorlog.log index 675618bc..8b648996 100644 --- a/源代码/Output/x64/Debug/net6.0/SS_errorlog.log +++ b/源代码/Output/x64/Debug/net6.0/SS_errorlog.log @@ -2,73 +2,27 @@ -Info @ 2024-01-03T11:51:40.4340523+08:00 +Info @ 2024-02-12T22:23:25.9065242+08:00 Program start -Info @ 2024-01-03T11:51:40.6745399+08:00 -Successfully load GLFW APIs. StgSharp is now working on p/invoke mode -Info @ 2024-01-03T11:51:42.9888934+08:00 -Successfully create a context binded to current form. Its ID is 1443106161584 -Info @ 2024-01-03T11:51:43.3177952+08:00 -Find core OpenGL version. -Successfully load all OpenGL 1.0 APIs -Successfully load all OpenGL 1.1 APIs -Successfully load all OpenGL 1.2 APIs -Successfully load all OpenGL 1.3 APIs -Successfully load all OpenGL 1.4 APIs -Successfully load all OpenGL 1.5 APIs -Successfully load all OpenGL 2.0 APIs -Successfully load all OpenGL 2.1 APIs -Successfully load all OpenGL 3.0 APIs -Successfully load all OpenGL 3.1 APIs -Successfully load all OpenGL 3.2 APIs -Successfully load all OpenGL 3.3 APIs -Successfully load all OpenGL 4.0 APIs -Successfully load all OpenGL 4.1 APIs -Successfully load all OpenGL 4.2 APIs -Successfully load all OpenGL 4.3 APIs -Successfully load all OpenGL 4.4 APIs -Cannot load OpenGL api called glGetnTexImage, this api may not exist or supported. -Cannot load OpenGL api called glGetnUniformdv, this api may not exist or supported. -Successfully load all OpenGL 4.5 APIs -Cannot load OpenGL api called glMultiDrawArraysIndirectCount, this api may not exist or supported. -Cannot load OpenGL api called glMultiDrawElementsIndirectCount, this api may not exist or supported. -Successfully load all OpenGL 4.6 APIs -Info @ 2024-01-03T11:51:43.3362791+08:00 -No supported OpenGL extensions are found. +Info @ 2024-02-12T22:23:25.9411194+08:00 +Successfully create a context binded to current form. Its ID is 1863060439520 +Cannot load OpenGL api called glGetString, this api may not exist or supported. +Error @ 2024-02-12T22:23:26.0974980+08:00 +Cannot load gl + at StgSharp.Graphics.glManager.LoadGLapi(Form form, GLfuncLoader loader) in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\Graphics\GL\glApiManager.cs:line 52 + at StgSharp.StgSharpDemoForm.Init(Object[] args) in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\Program.cs:line 69 + at StgSharp.Program.Main(String[] args) in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\Program.cs:line 204 -Info @ 2024-01-03T20:22:16.2158195+08:00 +Info @ 2024-02-12T22:25:17.1308881+08:00 Program start -Info @ 2024-01-03T20:22:16.2555343+08:00 -Successfully load GLFW APIs. StgSharp is now working on p/invoke mode -Info @ 2024-01-03T20:22:16.2633088+08:00 -Successfully create a context binded to current form. Its ID is 2975850861888 -Info @ 2024-01-03T20:22:16.4447679+08:00 -Find core OpenGL version. -Successfully load all OpenGL 1.0 APIs -Successfully load all OpenGL 1.1 APIs -Successfully load all OpenGL 1.2 APIs -Successfully load all OpenGL 1.3 APIs -Successfully load all OpenGL 1.4 APIs -Successfully load all OpenGL 1.5 APIs -Successfully load all OpenGL 2.0 APIs -Successfully load all OpenGL 2.1 APIs -Successfully load all OpenGL 3.0 APIs -Successfully load all OpenGL 3.1 APIs -Successfully load all OpenGL 3.2 APIs -Successfully load all OpenGL 3.3 APIs -Successfully load all OpenGL 4.0 APIs -Successfully load all OpenGL 4.1 APIs -Successfully load all OpenGL 4.2 APIs -Successfully load all OpenGL 4.3 APIs -Successfully load all OpenGL 4.4 APIs -Cannot load OpenGL api called glGetnTexImage, this api may not exist or supported. -Cannot load OpenGL api called glGetnUniformdv, this api may not exist or supported. -Successfully load all OpenGL 4.5 APIs -Cannot load OpenGL api called glMultiDrawArraysIndirectCount, this api may not exist or supported. -Cannot load OpenGL api called glMultiDrawElementsIndirectCount, this api may not exist or supported. -Successfully load all OpenGL 4.6 APIs -Info @ 2024-01-03T20:22:16.4632028+08:00 -No supported OpenGL extensions are found. +Info @ 2024-02-12T22:25:17.1649973+08:00 +Successfully create a context binded to current form. Its ID is 2430545600432 +Cannot load OpenGL api called glGetString, this api may not exist or supported. +Error @ 2024-02-12T22:25:17.3222564+08:00 +Cannot load gl + at StgSharp.Graphics.glManager.LoadGLapi(Form form, GLfuncLoader loader) in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\Graphics\GL\glApiManager.cs:line 52 + at StgSharp.StgSharpDemoForm.Init(Object[] args) in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\Program.cs:line 69 + at StgSharp.Program.Main(String[] args) in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\Program.cs:line 204 diff --git a/源代码/Output/x64/RealDebug/net6.0/Shader/Image1.png b/源代码/Output/x64/Debug/net6.0/Shader/Image1.png similarity index 100% rename from 源代码/Output/x64/RealDebug/net6.0/Shader/Image1.png rename to 源代码/Output/x64/Debug/net6.0/Shader/Image1.png diff --git a/源代码/Output/x64/RealDebug/net6.0/Shader/awesomeface.png b/源代码/Output/x64/Debug/net6.0/Shader/awesomeface.png similarity index 100% rename from 源代码/Output/x64/RealDebug/net6.0/Shader/awesomeface.png rename to 源代码/Output/x64/Debug/net6.0/Shader/awesomeface.png diff --git a/源代码/Output/x64/RealDebug/net6.0/Shader/fragment.frag b/源代码/Output/x64/Debug/net6.0/Shader/fragment.frag similarity index 100% rename from 源代码/Output/x64/RealDebug/net6.0/Shader/fragment.frag rename to 源代码/Output/x64/Debug/net6.0/Shader/fragment.frag diff --git a/源代码/Output/x64/RealDebug/net6.0/Shader/vertex.vert b/源代码/Output/x64/Debug/net6.0/Shader/vertex.vert similarity index 100% rename from 源代码/Output/x64/RealDebug/net6.0/Shader/vertex.vert rename to 源代码/Output/x64/Debug/net6.0/Shader/vertex.vert diff --git a/源代码/Output/x64/Debug/net6.0/StgSharpC.dll b/源代码/Output/x64/Debug/net6.0/StgSharpC.dll index c8cc9fa8..e84be773 100644 Binary files a/源代码/Output/x64/Debug/net6.0/StgSharpC.dll and b/源代码/Output/x64/Debug/net6.0/StgSharpC.dll differ diff --git a/源代码/Output/x64/Debug/net6.0/StgSharpC.dll.i64 b/源代码/Output/x64/Debug/net6.0/StgSharpC.dll.i64 deleted file mode 100644 index 19abfb90..00000000 Binary files a/源代码/Output/x64/Debug/net6.0/StgSharpC.dll.i64 and /dev/null differ diff --git a/源代码/Output/x64/Debug/net6.0/StgSharpC.dll.id0 b/源代码/Output/x64/Debug/net6.0/StgSharpC.dll.id0 new file mode 100644 index 00000000..a39d2632 Binary files /dev/null and b/源代码/Output/x64/Debug/net6.0/StgSharpC.dll.id0 differ diff --git a/源代码/Output/x64/Debug/net6.0/StgSharpC.dll.id1 b/源代码/Output/x64/Debug/net6.0/StgSharpC.dll.id1 new file mode 100644 index 00000000..ae1ee7d1 Binary files /dev/null and b/源代码/Output/x64/Debug/net6.0/StgSharpC.dll.id1 differ diff --git a/源代码/Output/x64/Debug/net6.0/StgSharpC.dll.id2 b/源代码/Output/x64/Debug/net6.0/StgSharpC.dll.id2 new file mode 100644 index 00000000..ece39c01 Binary files /dev/null and b/源代码/Output/x64/Debug/net6.0/StgSharpC.dll.id2 differ diff --git a/源代码/Output/x64/Debug/net6.0/StgSharpC.dll.nam b/源代码/Output/x64/Debug/net6.0/StgSharpC.dll.nam new file mode 100644 index 00000000..828c5f09 Binary files /dev/null and b/源代码/Output/x64/Debug/net6.0/StgSharpC.dll.nam differ diff --git a/源代码/Output/x64/Debug/net6.0/StgSharpC.dll.til b/源代码/Output/x64/Debug/net6.0/StgSharpC.dll.til new file mode 100644 index 00000000..7dd0c0c8 Binary files /dev/null and b/源代码/Output/x64/Debug/net6.0/StgSharpC.dll.til differ diff --git a/源代码/Output/x64/Debug/net6.0/StgSharpDebug.deps.json b/源代码/Output/x64/Debug/net6.0/StgSharpDebug.deps.json new file mode 100644 index 00000000..3ae4a3fa --- /dev/null +++ b/源代码/Output/x64/Debug/net6.0/StgSharpDebug.deps.json @@ -0,0 +1,86 @@ +{ + "runtimeTarget": { + "name": ".NETCoreApp,Version=v6.0", + "signature": "" + }, + "compilationOptions": {}, + "targets": { + ".NETCoreApp,Version=v6.0": { + "StgSharpDebug/1.0.0": { + "dependencies": { + "Microsoft.Windows.CsWin32": "0.3.49-beta" + }, + "runtime": { + "StgSharpDebug.dll": {} + } + }, + "Microsoft.Windows.CsWin32/0.3.49-beta": { + "dependencies": { + "Microsoft.Windows.SDK.Win32Docs": "0.1.42-alpha", + "Microsoft.Windows.SDK.Win32Metadata": "55.0.45-preview", + "Microsoft.Windows.WDK.Win32Metadata": "0.9.9-experimental", + "System.Memory": "4.5.5", + "System.Runtime.CompilerServices.Unsafe": "6.0.0" + } + }, + "Microsoft.Windows.SDK.Win32Docs/0.1.42-alpha": {}, + "Microsoft.Windows.SDK.Win32Metadata/55.0.45-preview": {}, + "Microsoft.Windows.WDK.Win32Metadata/0.9.9-experimental": { + "dependencies": { + "Microsoft.Windows.SDK.Win32Metadata": "55.0.45-preview" + } + }, + "System.Memory/4.5.5": {}, + "System.Runtime.CompilerServices.Unsafe/6.0.0": {} + } + }, + "libraries": { + "StgSharpDebug/1.0.0": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Microsoft.Windows.CsWin32/0.3.49-beta": { + "type": "package", + "serviceable": true, + "sha512": "sha512-/iAXplVDKESFyLz/MShuVYVx62YFvFePpq3qrzREl8KScQqG6Z2kV7r9UJTjQS1g+hfy3V+e4m1x9lsu24YNSg==", + "path": "microsoft.windows.cswin32/0.3.49-beta", + "hashPath": "microsoft.windows.cswin32.0.3.49-beta.nupkg.sha512" + }, + "Microsoft.Windows.SDK.Win32Docs/0.1.42-alpha": { + "type": "package", + "serviceable": true, + "sha512": "sha512-Z/9po23gUA9aoukirh2ItMU2ZS9++Js9Gdds9fu5yuMojDrmArvY2y+tq9985tR3cxFxpZO1O35Wjfo0khj5HA==", + "path": "microsoft.windows.sdk.win32docs/0.1.42-alpha", + "hashPath": "microsoft.windows.sdk.win32docs.0.1.42-alpha.nupkg.sha512" + }, + "Microsoft.Windows.SDK.Win32Metadata/55.0.45-preview": { + "type": "package", + "serviceable": true, + "sha512": "sha512-2i1kVIk8rMuMCYtoeYeWbmCRLqNgb63Berac3Gv+J/pjp0oucopasKgLQNslryhsgBl4xex9ENhJX2MXEW5vdA==", + "path": "microsoft.windows.sdk.win32metadata/55.0.45-preview", + "hashPath": "microsoft.windows.sdk.win32metadata.55.0.45-preview.nupkg.sha512" + }, + "Microsoft.Windows.WDK.Win32Metadata/0.9.9-experimental": { + "type": "package", + "serviceable": true, + "sha512": "sha512-cncPlxLqR25mFOuvpxZPgXgJqRmXyV5eTULj/9w8AQvO/c1xJDEapohRsWkYaia7hCR/EwEzBHr7RU9u93T03w==", + "path": "microsoft.windows.wdk.win32metadata/0.9.9-experimental", + "hashPath": "microsoft.windows.wdk.win32metadata.0.9.9-experimental.nupkg.sha512" + }, + "System.Memory/4.5.5": { + "type": "package", + "serviceable": true, + "sha512": "sha512-XIWiDvKPXaTveaB7HVganDlOCRoj03l+jrwNvcge/t8vhGYKvqV+dMv6G4SAX2NoNmN0wZfVPTAlFwZcZvVOUw==", + "path": "system.memory/4.5.5", + "hashPath": "system.memory.4.5.5.nupkg.sha512" + }, + "System.Runtime.CompilerServices.Unsafe/6.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-/iUeP3tq1S0XdNNoMz5C9twLSrM/TH+qElHkXWaPvuNOt+99G75NrV0OS2EqHx5wMN7popYjpc8oTjC1y16DLg==", + "path": "system.runtime.compilerservices.unsafe/6.0.0", + "hashPath": "system.runtime.compilerservices.unsafe.6.0.0.nupkg.sha512" + } + } +} \ No newline at end of file diff --git a/源代码/Output/x64/Debug/net6.0/StgSharpDebug.dll b/源代码/Output/x64/Debug/net6.0/StgSharpDebug.dll new file mode 100644 index 00000000..3d12cd20 Binary files /dev/null and b/源代码/Output/x64/Debug/net6.0/StgSharpDebug.dll differ diff --git a/源代码/Output/x64/RealDebug/net6.0/StgSharpDebug.exe b/源代码/Output/x64/Debug/net6.0/StgSharpDebug.exe similarity index 99% rename from 源代码/Output/x64/RealDebug/net6.0/StgSharpDebug.exe rename to 源代码/Output/x64/Debug/net6.0/StgSharpDebug.exe index bb29fa59..31a6e81e 100644 Binary files a/源代码/Output/x64/RealDebug/net6.0/StgSharpDebug.exe and b/源代码/Output/x64/Debug/net6.0/StgSharpDebug.exe differ diff --git a/源代码/Output/x64/Debug/net6.0/StgSharpDebug.pdb b/源代码/Output/x64/Debug/net6.0/StgSharpDebug.pdb new file mode 100644 index 00000000..8bff6e94 Binary files /dev/null and b/源代码/Output/x64/Debug/net6.0/StgSharpDebug.pdb differ diff --git a/源代码/Output/x64/Debug/net6.0/StgSharpDebug.runtimeconfig.json b/源代码/Output/x64/Debug/net6.0/StgSharpDebug.runtimeconfig.json new file mode 100644 index 00000000..4986d16e --- /dev/null +++ b/源代码/Output/x64/Debug/net6.0/StgSharpDebug.runtimeconfig.json @@ -0,0 +1,9 @@ +{ + "runtimeOptions": { + "tfm": "net6.0", + "framework": { + "name": "Microsoft.NETCore.App", + "version": "6.0.0" + } + } +} \ No newline at end of file diff --git a/源代码/Output/x64/Debug/net6.0/StgSharpDebug.xml b/源代码/Output/x64/Debug/net6.0/StgSharpDebug.xml new file mode 100644 index 00000000..012826b0 --- /dev/null +++ b/源代码/Output/x64/Debug/net6.0/StgSharpDebug.xml @@ -0,0 +1,1584 @@ + + + + StgSharpDebug + + + + + Get the status of a certain key on the keyboard. + + + + + + + + Function handler to load an opengl function by serching its name. + + the name of the Opengl function + An intptr value representing the pointer to the function + + + + + + + + + OpenGL package used by current form context. + + + + + Height of this form, represent in + + + + + Representing + + + + + Width of this form, represent in + + + + + Width of this form, represent in + + + + + Init an OpenGl context if current form has not been binded to any context. + and set the context binded to current form as current OpenGL context. + + Something goes wrong and + StgSharp fails in creating a new OpenGL context. + + + + Set all necessary metadata to current form instance + + + + + Resize the current form + + New width of the window + New height of the window + + + + Resize the current form + + + A (width,height) representing the new size of current form + + + + + Set the size limit of current form + + Minimum width of current form + Minimum height of current form + Maximum width of curent form + Maximum height of current form + + + + Set the size limit of current form + + + Minimun size of current form. In form of a of (width,height) + + + Maximum size of current form. In form of a of (width,height) + + + + + Necessary operation to init this form. + + + + + + Behaviour of current form when in a render cycle. + When this form + + + + + + Init this form and render it on screen, and respond with operation + + + + + Get OpenGL library of this form's context. + + A package contains all opengl APIs + + + + Define how current form render in one frame. + + + Please define this befor calling any OpenGL api and other graphic methods. + + + + + Create a set of . + + Amount of EBO to be created. + + + + + Create a set of . + + Amount of VAO to be crated. + + + + + Create a sets of + + Amount of textures to be crated. + + + + + Create aset of . + + Amount of Object to be created. + + + + + Create an instance of program + + New instance of instance. + + + + A timer counting frames after its construction. + + + + + Frames after this timer created. + + + + + Convert a into uint value. + this will get total frames since the timer was created. + + to be converted + + + + Interface of all kinds OpenGL buffer onjects + + + + + Get the only handle to one of the Object instance + + + + + + + Bind a buffer instance to OpenGL + + Index of handle of the object in this instance to be bind + + + + + + + A collecion of handle to Element Buffer Object in OpenGL. + Each value indexed from instance of this class this + is the only handle to one Element Buffer Object. + + + + + + + + + + + + Set data to current vertex buffer object + + Type of bufferData + Index to find certain VBO in this instance + Data to write in + How OpenGL use these data, defined by + + + + Set data to current vertex buffer object + + Type of bufferData + Index to find certain VBO in this instance + A array of data to write in + How OpenGL use these data, defined by + + + + + + + + + Load all aupportable OpenGL APIs and bind them to given context. + + The used as current OpenGL context + A delegate that can get o + + + + Get the function pointer of given OpenGL api name + + Name of the OpenGL api + The funtion pointer of the api in form of + + + + Compile the vertex shader to be attached to this shader. + + GLSL code of vertex shader. + + + + + + + + + + + Inti a shader with no program attached. + + + + + Link the shader to current context. + + + + + Get a uniform form current shader, + the value type of the uniform should be provided. + + Name of the Uniform in shader code + + + + + Get a uniform form current shader, + the value type of the uniform should be provided. + + Name of the Uniform in shader code + + + + + Get a uniform form current shader, + the value type of the uniform should be provided. + + Name of the Uniform in shader code + + + + + Let the current context use this shader. + + + + + Same function as OpenGL api glActiveTexture + + type of texture to activate + + + + Operation after alignment by calling . + No calling of this method is acceptable, but it will bring the risk + of that relevant code will not run if it is interrupted by frame overtime. + Please call this method immediately after calling , + too early or sonner may cause . + + The form used as frame update benchmark. + Operation after frame update alignment. + The action binded to a wrong alignment. + + + + Align a sets of code to frame update of a . + Usually, a call of is required. + This method is used as sigle thread method. If more than one + alignment is requested, a will throw. + + The form used as frame update benchmark. + More than one alingment attached to one form timer + + + + Same fucntion as OpenGL api glAttachShader. + Only the first in handle + will be attached to the first in handle. + The rest shader and program will be ignored. + + Shader program to be attachec + A shader part to attach + + + + Bind the indexed buffer object to certain type of buffer + + + + + + + Same function as OpenGL api, glBindTexture. + + Type of texture to bind + Sign of texture + + + + Same function as OpenGL api, glBindVertexArray + + + + + + Clear buffers to preset values + + + + + + Call apiClearColor in OpenGL + specifies the red, green, blue, and alpha values used by apiClear to clear the color buffers. + Values specified by apiClearColor are clamped to the range [0,1] + + Specify the red values used when the color buffers are cleared. + Specify the red values used when the color buffers are cleared. + Specify the red values used when the color buffers are cleared. + Specify the red values used when the color buffers are cleared. + + + + Conpile the provided shader code in string form. + + A string array contains all shaders' code + An enum represent the type of the shader to + conpile, including vertex shader and fragment shader. + An handle of conpiled shader + + + + Same function as OpenGL api, glCreateProgram + + A handle representing a single shader program + + + + Same function as OpenGL api, glCreateProgram. + Used for creating multiple shader program. + + A handle representing all shader programs + + + + Creates a form and its associated + + Required width + Required width + Tittle of the window + + + + + + + Same function as OpenGL api, glDeleteBuffer. This method can delete one buffer in one call + + a handle representing the buffer to be deleted + + + + Same function as OpenGL api, glDeleteBuffer. This method can delete a sets of buffers in one call. + + Array of buffers to be deleted + + + + Same function as OpenGL api, glDeleteVertexArrays + + Handle of vertex objects. + + + + + + + + + + + + + Same fucntion as the OpenGL api glGenBuffers + + + + + + + Same fucnction as OpenGL api glGenTextures. + + amount of textures to generate + + + + Same fucntion as OpenGL api, glGenVertexArray + + Amount of vao to be generated + + + + Same fucntion as OpenGL api, glGetUniformLocation + + Shader program to find the uniform + Name of the uniform + + + + + Make the OpenGL context of a certain as the activated OpenGL context. + + + + + + Set data value to a float , + all types of parameters are float. + + The target + The first value to be set + The second value to be set + The third value to be set + The forth value to be set + + + + Set data value to a float , + all types of parameters are float. + + The target + A packing four parameters of the uniform + + + + Set data value to a float , + all types of parameters are float. + + The target + The first value to be set + The second value to be set + The third value to be set + + + + Set data value to a float , + all types of parameters are float. + + The target + The first value to be set + The second value to be set + + + + Set data value to a float , + all types of parameters are float. + + The target + The value to be set + + + + Set data value to a int , + all types of parameters are int. + + The target + The value to be set + + + + Set data value to a float , + all types of parameters are . + + The target + A value of the uniform + + + + Set how a shader parameter read data from a VBO. + + Serial number of the parameter + Amount of data each elements contains + Type of data read by shader + + Pixels stride of each sets of data + + + + + Same function as OpenGL api glTexImage2d + + texture target to load image in + level of mipmap, 0 if default + OpenGL's internal color channel format + width of image + height of image + color channels of this image + how this image express each pixel + data array of pixels + + + + Same fucntion as OpenGL api glTexParameteri + + texture target to set parameters + name of parameter + value of parameter + + + + Same fucntion as OpenGL api glUseShader. + + Sign of program to be used + + + + Same function as the OpenGL api, glViewPort + + + + + + + + + A sensor used for cheking out if a bullet hit a player or something else + + + + + A 2D vector presenting the position of an enemy entity, position can also be visited by X, Y + + + + + X position of an enenmy entity + + + + + Y position of an enemy entity + + + + + Version of current StgSharp platform. + Main version represent in hundred's digit, + and sub version represent in ten's digit. + + + + + Init an instance of OpenGL program, + This method should be called before other + graphic methods, after LoadGL method. + + + + + Write a log message to log file, and mark the level of this message. + + A string contains information of how current evironment runs. + The severity of current message. + + + + Part of a circle. All points on a arc has the same distance to their center. + + + + + A collection of all point on the same plain and has the same distance to a point + + + + + The origin of this coordinate. + + + + + The horizontial axis of the coordinate. + Point to the right direction. + + + + + The vertical axis of the coordinate. + Point to the top direction. + + + + + 当几何体调用了过多的CalcVec方法时,产生UnusedVertexException异常 + + + + + Caculate the movement of a point. + + The game tick represent time passed by + A 3d vector representing movement + + + + Move begin side of a line. + It is recommended to override this function rather than + loading an with same function. + + Time passed since current line was created. + + + + Move end side of a line. + It is recommended to override this function rather than + loading an with same function. + + Time passed since current line was created. + + + + + Move the third vertix. this is a useless method for Parallelograms. + + Current time tick + + Geometry overdefined + + + + Move the third vertix. This method is useless for Parallelograms. + + Current time tick + + Geometry overdefined + + + + 平面几何体。包含三角形,对称四边形,自由多边形等。最多可由16个点参数定义。 + + + + + Tick time this geometry eas crested + + + + + Get all sides of this . + + A array contains all straight s of current geometry item. + + + + Get a flat cincide with current geometry. + + + + + + Update the coordinate of the point. If this is a moving point, + (Points on sides or surface if other geometry items) + please do not define any motion here, codes will be ignored by program + + Time passes since the program begin, counted by frames + + + + 计算中心点相对于参考原点的位移 + + 当前游戏刻 + + + + + A square + + + + + A linear data structure with dynamic length. + It contains a of , + each is twice longer than the former one. + + + + + + Init a with a certain amount of elements prepared. + + Amount of elements to be prepared. + + + + Create a new instance of , + and fill the begining ones of elemtns as given instance. + + Amount of beginning elements to be filled + + + + + Length of this + + + + + A pair of value + + + + + A value. + The lower byte is , + and higher byte is . + + + + + The first value. + + + + + The second value. + + + + + Whether this linked list has no members or not. + + + + + The first memeber of this linkec list. + Set value to this property will reset the first node. + + + + + The last memeber of this linkec list. + Set value to this property will reset the first node. + + + + + Add an item to the tail of linked list. + + The item ready to add to the list + + + + Remove all members from this list + + + + + Insert a member to current linkedlist, + the new member will be after a certain existed member. + + New member will be inserted after this member + The new member to be inserted + + + + Remove a member from this linkedlist. + + Member to be removed from this list + + + + remove the first member of the list + + + + + remove the last member of the list + + + + + OpenGL numeric type. + An IEEE-754 floating-point value, clamped to the range [0,1]. + + + + + OpenGL numeric type. + An IEEE-754 double precision floating-point value, clamped to the range [0,1]. + + + + + A two dimension vector defined by two elements. + Vec2Ds in StgSharp are defaultly usaed as colum vector. + + + + + Reurns the value of ArcSin(x) + + The sine value of the angle + + + + + + Get the value of E ^ x; + + + + + + + + + + + Returns the value of ln(x). + + + + + calculate the value of x^y + + + + Returns the value of x^y + + + + + + + + + + returns a random float number between 0 and 1. + + + + + + Generates a random seed in int value. + + + + + + A handle to an OpenGL object, + must be indexed from a . + Direct call will cause + + + + + A handle to an OpenGL object. + + + + + temporarily release the handle of GLhandle sets. + Please call method before indexing. + + + + + Realse all resource in this handle. + This will release all resource in this . + This will be not usable. + + + + The COLORREF value is used to specify an RGB color. + + When specifying an explicit [RGB](/windows/desktop/api/Wingdi/nf-wingdi-rgb) color, the **COLORREF** value has the following hexadecimal form: `0x00bbggrr` The low-order byte contains a value for the relative intensity of red; the second byte contains a value for green; and the third byte contains a value for blue. The high-order byte must be zero. The maximum value for a single byte is 0xFF. To create a **COLORREF** color value, use the [RGB](/windows/desktop/api/Wingdi/nf-wingdi-rgb) macro. To extract the individual values for the red, green, and blue components of a color value, use the [**GetRValue**](/windows/desktop/api/Wingdi/nf-wingdi-getrvalue), [GetGValue](/windows/desktop/api/Wingdi/nf-wingdi-getgvalue), and [GetBValue](/windows/desktop/api/Wingdi/nf-wingdi-getbvalue) macros, respectively. + Read more on docs.microsoft.com. + + + + + A pointer to a null-terminated, constant, ANSI character string. + + + + + A pointer to the first character in the string. The content should be considered readonly, as it was typed as constant in the SDK. + + + + + Gets the number of characters up to the first null character (exclusive). + + + + + Returns a with a copy of this character array, decoding as UTF-8. + + A , or if is . + + + + Returns a span of the characters in this string, up to the first null character (exclusive). + + + + + A pointer to a null-terminated, constant character string. + + + + + A pointer to the first character in the string. The content should be considered readonly, as it was typed as constant in the SDK. + + + + + Gets the number of characters up to the first null character (exclusive). + + + + + Returns a with a copy of this character array, up to the first null character (exclusive). + + A , or if is . + + + + Returns a span of the characters in this string, up to the first null character (exclusive). + + + + The GLYPHMETRICSFLOAT structure contains information about the placement and orientation of a glyph in a character cell. + The values of GLYPHMETRICSFLOAT are specified as notional units. + + + Specifies the width of the smallest rectangle (the glyph's black box) that completely encloses the glyph. + + + Specifies the height of the smallest rectangle (the glyph's black box) that completely encloses the glyph. + + + Specifies the x and y coordinates of the upper-left corner of the smallest rectangle that completely encloses the glyph. + + + Specifies the horizontal distance from the origin of the current character cell to the origin of the next character cell. + + + Specifies the vertical distance from the origin of the current character cell to the origin of the next character cell. + + + The LAYERPLANEDESCRIPTOR structure describes the pixel format of a drawing surface. + Please notice, as documented above, that certain layer plane properties are not supported in the current implementation. The implementation is the Microsoft GDI software implementation of OpenGL. Hardware manufacturers that enhance parts of OpenGL may support some layer plane properties not supported by the generic implementation. + + + Specifies the size of this data structure. Set this value to sizeof(LAYERPLANEDESCRIPTOR). + + + Specifies the version of this data structure. Set this value to 1. + + + + A set of bit flags that specify properties of the layer plane. The properties are generally not mutually exclusive; any combination of bit flags can be set, with the exceptions noted. The following bit flag constants are defined. + This doc was truncated. + Read more on docs.microsoft.com. + + + + + Specifies the type of pixel data. The following types are defined. + This doc was truncated. + Read more on docs.microsoft.com. + + + + Specifies the number of color bitplanes in each color buffer. For RGBA pixel types, it is the size of the color buffer, excluding the alpha bitplanes. For color-index pixels, it is the size of the color-index buffer. + + + Specifies the number of red bitplanes in each RGBA color buffer. + + + Specifies the shift count for red bitplanes in each RGBA color buffer. + + + Specifies the number of green bitplanes in each RGBA color buffer. + + + Specifies the shift count for green bitplanes in each RGBA color buffer. + + + Specifies the number of blue bitplanes in each RGBA color buffer. + + + Specifies the shift count for blue bitplanes in each RGBA color buffer. + + + Specifies the number of alpha bitplanes in each RGBA color buffer. Alpha bitplanes are not supported. + + + Specifies the shift count for alpha bitplanes in each RGBA color buffer. Alpha bitplanes are not supported. + + + Specifies the total number of bitplanes in the accumulation buffer. + + + Specifies the number of red bitplanes in the accumulation buffer. + + + Specifies the number of green bitplanes in the accumulation buffer. + + + Specifies the number of blue bitplanes in the accumulation buffer. + + + Specifies the number of alpha bitplanes in the accumulation buffer. + + + Specifies the depth of the depth (z-axis) buffer. + + + Specifies the depth of the stencil buffer. + + + Specifies the number of auxiliary buffers. Auxiliary buffers are not supported. + + + + + + Not used. Must be zero. + + + When the LPD_TRANSPARENT flag is set, specifies the transparent color or index value. Typically the value is zero. + + + The PIXELFORMATDESCRIPTOR structure describes the pixel format of a drawing surface. + Please notice carefully, as documented above, that certain pixel format properties are not supported in the current generic implementation. The generic implementation is the Microsoft GDI software implementation of OpenGL. Hardware manufacturers may enhance parts of OpenGL, and may support some pixel format properties not supported by the generic implementation. + + + Specifies the size of this data structure. This value should be set to sizeof(PIXELFORMATDESCRIPTOR). + + + Specifies the version of this data structure. This value should be set to 1. + + + + A set of bit flags that specify properties of the pixel buffer. The properties are generally not mutually exclusive; you can set any combination of bit flags, with the exceptions noted. The following bit flag constants are defined. + This doc was truncated. + Read more on docs.microsoft.com. + + + + + Specifies the type of pixel data. The following types are defined. + This doc was truncated. + Read more on docs.microsoft.com. + + + + Specifies the number of color bitplanes in each color buffer. For RGBA pixel types, it is the size of the color buffer, excluding the alpha bitplanes. For color-index pixels, it is the size of the color-index buffer. + + + Specifies the number of red bitplanes in each RGBA color buffer. + + + Specifies the shift count for red bitplanes in each RGBA color buffer. + + + Specifies the number of green bitplanes in each RGBA color buffer. + + + Specifies the shift count for green bitplanes in each RGBA color buffer. + + + Specifies the number of blue bitplanes in each RGBA color buffer. + + + Specifies the shift count for blue bitplanes in each RGBA color buffer. + + + Specifies the number of alpha bitplanes in each RGBA color buffer. Alpha bitplanes are not supported. + + + Specifies the shift count for alpha bitplanes in each RGBA color buffer. Alpha bitplanes are not supported. + + + Specifies the total number of bitplanes in the accumulation buffer. + + + Specifies the number of red bitplanes in the accumulation buffer. + + + Specifies the number of green bitplanes in the accumulation buffer. + + + Specifies the number of blue bitplanes in the accumulation buffer. + + + Specifies the number of alpha bitplanes in the accumulation buffer. + + + Specifies the depth of the depth (z-axis) buffer. + + + Specifies the depth of the stencil buffer. + + + Specifies the number of auxiliary buffers. Auxiliary buffers are not supported. + + + Specifies the number of overlay and underlay planes. Bits 0 through 3 specify up to 15 overlay planes and bits 4 through 7 specify up to 15 underlay planes. + + + Ignored. Earlier implementations of OpenGL used this member, but it is no longer used. + + + Specifies the transparent color or index of an underlay plane. When the pixel type is RGBA, dwVisibleMask is a transparent RGB color value. When the pixel type is color index, it is a transparent index value. + + + Ignored. Earlier implementations of OpenGL used this member, but it is no longer used. + + + The POINTFLOAT structure contains the x and y coordinates of a point. + + Learn more about this API from docs.microsoft.com. + + + + Specifies the horizontal (x) coordinate of a point. + + + Specifies the vertical (y) coordinate of a point. + + + + Contains extern methods from "GDI32.dll". + + + Contains extern methods from "KERNEL32.dll". + + + Contains extern methods from "OPENGL32.dll". + + + Contains extern methods from "USER32.dll". + + + + + + + The ChoosePixelFormat function attempts to match an appropriate pixel format supported by a device context to a given pixel format specification. + Specifies the device context that the function examines to determine the best match for the pixel format descriptor pointed to by ppfd. + + Pointer to a PIXELFORMATDESCRIPTOR structure that specifies the requested pixel format. In this context, the members of the PIXELFORMATDESCRIPTOR structure that ppfd points to are used as follows: + This doc was truncated. + Read more on docs.microsoft.com. + + + If the function succeeds, the return value is a pixel format index (one-based) that is the closest match to the given pixel format descriptor. If the function fails, the return value is zero. To get extended error information, call GetLastError. + + You must ensure that the pixel format matched by the ChoosePixelFormat function satisfies your requirements. For example, if you request a pixel format with a 24-bit RGB color buffer but the device context offers only 8-bit RGB color buffers, the function returns a pixel format with an 8-bit RGB color buffer. + + + The DescribePixelFormat function obtains information about the pixel format identified by iPixelFormat of the device associated with hdc. The function sets the members of the PIXELFORMATDESCRIPTOR structure pointed to by ppfd with that pixel format data. + Specifies the device context. + Index that specifies the pixel format. The pixel formats that a device context supports are identified by positive one-based integer indexes. + The size, in bytes, of the structure pointed to by ppfd. The DescribePixelFormat function stores no more than nBytes bytes of data to that structure. Set this value to sizeof(PIXELFORMATDESCRIPTOR). + Pointer to a PIXELFORMATDESCRIPTOR structure whose members the function sets with pixel format data. The function stores the number of bytes copied to the structure in the structure's nSize member. If, upon entry, ppfd is NULL, the function writes no data to the structure. This is useful when you only want to obtain the maximum pixel format index of a device context. + + If the function succeeds, the return value is the maximum pixel format index of the device context. In addition, the function sets the members of the PIXELFORMATDESCRIPTOR structure pointed to by ppfd according to the specified pixel format. If the function fails, the return value is zero. To get extended error information, call GetLastError. + + + Learn more about this API from docs.microsoft.com. + + + + The DeleteEnhMetaFile function deletes an enhanced-format metafile or an enhanced-format metafile handle. + A handle to an enhanced metafile. + + If the function succeeds, the return value is nonzero. If the function fails, the return value is zero. + + If the hemf parameter identifies an enhanced metafile stored in memory, the DeleteEnhMetaFile function deletes the metafile. If hemf identifies a metafile stored on a disk, the function deletes the metafile handle but does not destroy the actual metafile. An application can retrieve the file by calling the GetEnhMetaFile function. + + + + + + The GetEnhMetaFilePixelFormat function retrieves pixel format information for an enhanced metafile. + Identifies the enhanced metafile. + Specifies the size, in bytes, of the buffer into which the pixel format information is copied. + Pointer to a PIXELFORMATDESCRIPTOR structure that contains the logical pixel format specification. The metafile uses this structure to record the logical pixel format specification. + + If the function succeeds and finds a pixel format, the return value is the size of the metafile's pixel format. If no pixel format is present, the return value is zero. If an error occurs and the function fails, the return value is GDI_ERROR. To get extended error information, call GetLastError. + + + When an enhanced metafile specifies a pixel format in its ENHMETAHEADER structure and the pixel format fits in the buffer, the pixel format information is copied into ppfd. When cbBuffer is too small to contain the pixel format of the metafile, the pixel format is not copied to the buffer. In either case, the function returns the size of the metafile's pixel format. For information on metafile recording and other operations, see Enhanced Metafile Operations. + Read more on docs.microsoft.com. + + + + The GetPixelFormat function obtains the index of the currently selected pixel format of the specified device context. + Specifies the device context of the currently selected pixel format index returned by the function. + + If the function succeeds, the return value is the currently selected pixel format index of the specified device context. This is a positive, one-based index value. If the function fails, the return value is zero. To get extended error information, call GetLastError. + + + Learn more about this API from docs.microsoft.com. + + + + + + + The SetPixelFormat function sets the pixel format of the specified device context to the format specified by the iPixelFormat index. + Specifies the device context whose pixel format the function attempts to set. + Index that identifies the pixel format to set. The various pixel formats supported by a device context are identified by one-based indexes. + Pointer to a PIXELFORMATDESCRIPTOR structure that contains the logical pixel format specification. The system's metafile component uses this structure to record the logical pixel format specification. The structure has no other effect upon the behavior of the SetPixelFormat function. + + If the function succeeds, the return value is TRUE. If the function fails, the return value is FALSE. To get extended error information, call GetLastError. + + + If hdc references a window, calling the SetPixelFormat function also changes the pixel format of the window. Setting the pixel format of a window more than once can lead to significant complications for the Window Manager and for multithread applications, so it is not allowed. An application can only set the pixel format of a window one time. Once a window's pixel format is set, it cannot be changed. You should select a pixel format in the device context before calling the wglCreateContext function. The wglCreateContext function creates a rendering context for drawing on the device in the selected pixel format of the device context. An OpenGL window has its own pixel format. Because of this, only device contexts retrieved for the client area of an OpenGL window are allowed to draw into the window. As a result, an OpenGL window should be created with the WS_CLIPCHILDREN and WS_CLIPSIBLINGS styles. Additionally, the window class attribute should not include the CS_PARENTDC style. + Read more on docs.microsoft.com. + + + + The SwapBuffers function exchanges the front and back buffers if the current pixel format for the window referenced by the specified device context includes a back buffer. + + If the function succeeds, the return value is TRUE. If the function fails, the return value is FALSE. To get extended error information, call GetLastError. + + + If the current pixel format for the window referenced by the device context does not include a back buffer, this call has no effect and the content of the back buffer is undefined when the function returns. With multithread applications, flush the drawing commands in any other threads drawing to the same window before calling SwapBuffers. + Read more on docs.microsoft.com. + + + + Closes an open object handle. + A valid handle to an open object. + + If the function succeeds, the return value is nonzero. If the function fails, the return value is zero. To get extended error information, call GetLastError. If the application is running under a debugger, the function will throw an exception if it receives either a handle value that is not valid or a pseudo-handle value. This can happen if you close a handle twice, or if you call CloseHandle on a handle returned by the FindFirstFile function instead of calling the FindClose function. + + + The CloseHandle function closes handles to the following objects: + This doc was truncated. + Read more on docs.microsoft.com. + + + + Frees the loaded dynamic-link library (DLL) module and, if necessary, decrements its reference count. + + A handle to the loaded library module. The LoadLibrary, LoadLibraryEx, GetModuleHandle, or GetModuleHandleEx function returns this handle. + Read more on docs.microsoft.com. + + + If the function succeeds, the return value is nonzero. If the function fails, the return value is zero. To get extended error information, call the GetLastError function. + + + The system maintains a per-process reference count for each loaded module. A module that was loaded at process initialization due to load-time dynamic linking has a reference count of one. The reference count for a module is incremented each time the module is loaded by a call to LoadLibrary. The reference count is also incremented by a call to LoadLibraryEx unless the module is being loaded for the first time and is being loaded as a data or image file. The reference count is decremented each time the FreeLibrary or FreeLibraryAndExitThread function is called for the module. When a module's reference count reaches zero or the process terminates, the system unloads the module from the address space of the process. Before unloading a library module, the system enables the module to detach from the process by calling the module's DllMain function, if it has one, with the DLL_PROCESS_DETACH value. Doing so gives the library module an opportunity to clean up resources allocated on behalf of the current process. After the entry-point function returns, the library module is removed from the address space of the current process. It is not safe to call FreeLibrary from DllMain. For more information, see the Remarks section in DllMain. Calling FreeLibrary does not affect other processes that are using the same module. Use caution when calling FreeLibrary with a handle returned by GetModuleHandle. The GetModuleHandle function does not increment a module's reference count, so passing this handle to FreeLibrary can cause a module to be unloaded prematurely. A thread that must unload the DLL in which it is executing and then terminate itself should call FreeLibraryAndExitThread instead of calling FreeLibrary and ExitThread separately. Otherwise, a race condition can occur. For details, see the Remarks section of FreeLibraryAndExitThread. + Read more on docs.microsoft.com. + + + + The wglDeleteContext function deletes a specified OpenGL rendering context. + + If the function succeeds, the return value is TRUE. If the function fails, the return value is FALSE. To get extended error information, call GetLastError. + + + It is an error to delete an OpenGL rendering context that is the current context of another thread. However, if a rendering context is the calling thread's current context, the wglDeleteContext function changes the rendering context to being not current before deleting it. The wglDeleteContext function does not delete the device context associated with the OpenGL rendering context when you call the wglMakeCurrent function. After calling wglDeleteContext, you must call DeleteDC to delete the associated device context. + Read more on docs.microsoft.com. + + + + + + + The wglCreateContext function creates a new OpenGL rendering context, which is suitable for drawing on the device referenced by hdc. The rendering context has the same pixel format as the device context. + + If the function succeeds, the return value is a valid handle to an OpenGL rendering context. If the function fails, the return value is NULL. To get extended error information, call GetLastError. + + + A rendering context is not the same as a device context. Set the pixel format of the device context before creating a rendering context. For more information on setting the device context's pixel format, see the SetPixelFormat function. To use OpenGL, you create a rendering context, select it as a thread's current rendering context, and then call OpenGL functions. When you are finished with the rendering context, you dispose of it by calling the wglDeleteContext function. The following code example shows wglCreateContext usage. + + This doc was truncated. + Read more on docs.microsoft.com. + + + + + + + The wglCreateLayerContext function creates a new OpenGL rendering context for drawing to a specified layer plane on a device context. + + If the function succeeds, the return value is a handle to an OpenGL rendering context. If the function fails, the return value is NULL. To get extended error information, call GetLastError. + + + A rendering context is a port through which all OpenGL commands pass. Every thread that makes OpenGL calls must have one current, active rendering context. A rendering context is not the same as a device context; a rendering context contains information specific to OpenGL, while a device context contains information specific to GDI. Before you create a rendering context, set the pixel format of the device context with the SetPixelFormat function. You can use a rendering context in a specified layer plane of a window with identical pixel formats only. With OpenGL applications that use multiple threads, you create a rendering context, select it as the current rendering context of a thread, and make OpenGL calls for the specified thread. When you are finished with the rendering context of the thread, call the wglDeleteContext function. + Read more on docs.microsoft.com. + + + + + + + The wglCopyContext function copies selected groups of rendering states from one OpenGL rendering context to another. + If the function succeeds, the return value is TRUE. If the function fails, the return value is FALSE. To get extended error information, call GetLastError. + + Using the wglCopyContext function, you can synchronize the rendering state of two rendering contexts. You can only copy the rendering state between two rendering contexts within the same process. The rendering contexts must be from the same OpenGL implementation. For example, you can always copy a rendering state between two rendering contexts with identical pixel format in the same process. You can copy the same state information available only with the glPushAttrib function. You cannot copy some state information, such as pixel pack/unpack state, render mode state, select state, and feedback state. When you call wglCopyContext, make sure that the destination rendering context, hglrcDst, is not current to any thread. + Read more on docs.microsoft.com. + + + + + + + The wglDescribeLayerPlane function obtains information about the layer planes of a given pixel format. + + If the function succeeds, the return value is TRUE. In addition, the wglDescribeLayerPlane function sets the members of the LAYERPLANEDESCRIPTOR structure pointed to by plpd according to the specified layer plane (iLayerPlane ) of the specified pixel format (iPixelFormat ). If the function fails, the return value is FALSE. + + The numbering of planes (iLayerPlane ) determines their order. Higher-numbered planes overlay lower-numbered planes. + + + + + + The wglGetCurrentContext function obtains a handle to the current OpenGL rendering context of the calling thread. + If the calling thread has a current OpenGL rendering context, wglGetCurrentContext returns a handle to that rendering context. Otherwise, the return value is NULL. + The current OpenGL rendering context of a thread is associated with a device context by means of the wglMakeCurrent function. You can use the wglGetCurrentDC function to obtain a handle to the device context associated with the current OpenGL rendering context. + + + The wglGetCurrentDC function obtains a handle to the device context that is associated with the current OpenGL rendering context of the calling thread. + If the calling thread has a current OpenGL rendering context, the function returns a handle to the device context associated with that rendering context by means of the wglMakeCurrent function. Otherwise, the return value is NULL. + You associate a device context with an OpenGL rendering context when it calls the wglMakeCurrent function. You can use the wglGetCurrentContext function to obtain a handle to the calling thread's current OpenGL rendering context. + + + + + + Retrieves the palette entries from a given color-index layer plane for a specified device context. + + Type: int If the function succeeds, the return value is the number of entries that were set in the palette in the specified layer plane of the window. If the function fails or when no pixel format is selected, the return value is zero. To get extended error information, call GetLastError. + + + Each color-index layer plane in a window has a palette with a size 2^n, where n is the number of bit planes in the layer plane. You cannot modify the transparent index of a palette. Use the wglRealizeLayerPalette function to realize the layer palette. Initially the layer palette contains only entries for white. + Read more on docs.microsoft.com. + + + + + + + The wglGetProcAddress function returns the address of an OpenGL extension function for use with the current OpenGL rendering context. + + When the function succeeds, the return value is the address of the extension function. When no current rendering context exists or the function fails, the return value is NULL. To get extended error information, call GetLastError. + + + The OpenGL library supports multiple implementations of its functions. Extension functions supported in one rendering context are not necessarily available in a separate rendering context. Thus, for a given rendering context in an application, use the function addresses returned by the wglGetProcAddress function only. The spelling and the case of the extension function pointed to by lpszProc must be identical to that of a function supported and implemented by OpenGL. Because extension functions are not exported by OpenGL, you must use wglGetProcAddress to get the addresses of vendor-specific extension functions. The extension function addresses are unique for each pixel format. All rendering contexts of a given pixel format share the same extension function addresses. + Read more on docs.microsoft.com. + + + + + + + The wglMakeCurrent function makes a specified OpenGL rendering context the calling thread's current rendering context. + When the wglMakeCurrent function succeeds, the return value is TRUE; otherwise the return value is FALSE. To get extended error information, call GetLastError. + + The hdc parameter must refer to a drawing surface supported by OpenGL. It need not be the same hdc that was passed to wglCreateContext when hglrc was created, but it must be on the same device and have the same pixel format. GDI transformation and clipping in hdc are not supported by the rendering context. The current rendering context uses the hdc device context until the rendering context is no longer current. Before switching to the new rendering context, OpenGL flushes any previous rendering context that was current to the calling thread. A thread can have one current rendering context. A process can have multiple rendering contexts by means of multithreading. A thread must set a current rendering context before calling any OpenGL functions. Otherwise, all OpenGL calls are ignored. A rendering context can be current to only one thread at a time. You cannot make a rendering context current to multiple threads. An application can perform multithread drawing by making different rendering contexts current to different threads, supplying each thread with its own rendering context and device context. If an error occurs, the wglMakeCurrent function makes the thread's current rendering context not current before returning. + Read more on docs.microsoft.com. + + + + The wglRealizeLayerPalette function maps palette entries from a given color-index layer plane into the physical palette or initializes the palette of an RGBA layer plane. + If the function succeeds, the return value is TRUE, even if bRealize is TRUE and the physical palette is not available. If the function fails or when no pixel format is selected, the return value is FALSE. To get extended error information, call GetLastError. + + The physical palette for a layer plane is a shared resource among windows with layer planes. When more than one window attempts to realize a palette for a given physical layer plane, only one palette at a time is realized. When you call the wglRealizeLayerPalette function, the layer palette of a foreground window is always realized first. When a window's layer palette is realized, its palette entries are always mapped one-to-one into the physical palette. Unlike GDI logical palettes, with wglRealizeLayerPalette there is no mapping of other windows' layer palettes to the current physical palette. Whenever a window becomes the foreground window, call wglRealizeLayerPalette to realize its layer palettes again, even if the pixel type of the layer plane is RGBA. Because wglRealizeLayerPalette doesn't realize the palette of the main plane, use GDI palette functions to realize the main plane palette. + Read more on docs.microsoft.com. + + + + + + + Sets the palette entries in a given color-index layer plane for a specified device context. + + Type: int If the function succeeds, the return value is the number of entries that were set in the palette in the specified layer plane of the window. If the function fails or no pixel format is selected, the return value is zero. To get extended error information, call GetLastError. + + + Each color-index plane in a window has a palette with a size 2^n, where n is the number of bit planes in the layer plane. You cannot modify the transparent index of a palette. Use the wglRealizeLayerPalette function to realize the layer palette. Initially the layer palette contains only entries for white. The wglSetLayerPaletteEntries function doesn't set the palette entries of the main plane palette. To update the main plane palette, use GDI palette functions. + Read more on docs.microsoft.com. + + + + + + + The wglShareLists function enables multiple OpenGL rendering contexts to share a single display-list space. + + When the function succeeds, the return value is TRUE. When the function fails, the return value is FALSE and the display lists are not shared. To get extended error information, call GetLastError. + + + When you create an OpenGL rendering context, it has its own display-list space. The wglShareLists function enables a rendering context to share the display-list space of another rendering context; any number of rendering contexts can share a single display-list space. Once a rendering context shares a display-list space, the rendering context always uses the display-list space until the rendering context is deleted. When the last rendering context of a shared display-list space is deleted, the shared display-list space is deleted. All the indexes and definitions of display lists in a shared display-list space are shared. You can only share display lists with rendering contexts within the same process. However, not all rendering contexts in a process can share display lists. Rendering contexts can share display lists only if they use the same implementation of OpenGL functions. All client rendering contexts of a given pixel format can always share display lists. All rendering contexts of a shared display list must use an identical pixel format. Otherwise the results depend on the implementation of OpenGL used.
Note  The wglShareLists function is only available with OpenGL version 1.01 or later. To determine the version number of the implementation of OpenGL, call glGetString.
 
+ Read more on docs.microsoft.com. +
+
+ + The wglSwapLayerBuffers function swaps the front and back buffers in the overlay, underlay, and main planes of the window referenced by a specified device context. + If the function succeeds, the return value is TRUE. If the function fails, the return value is FALSE. To get extended error information, call GetLastError. + + When a layer plane doesn't include a back buffer, calling the wglSwapLayerBuffers function has no effect on that layer plane. After you call wglSwapLayerBuffers, the state of the back buffer content is given in the corresponding LAYERPLANEDESCRIPTOR structure of the layer plane or in the PIXELFORMATDESCRIPTOR structure of the main plane. The wglSwapLayerBuffers function swaps the front and back buffers in the specified layer planes simultaneously. Some devices don't support swapping layer planes individually; they swap all layer planes as a group. When the PFD_SWAP_LAYER_BUFFERS flag of the PIXELFORMATDESCRIPTOR structure is set, it indicates that a device can swap individual layer planes and that you can call wglSwapLayerBuffers. With applications that use multiple threads, before calling wglSwapLayerBuffers, clear all drawing commands in all threads drawing to the same window. + Read more on docs.microsoft.com. + + + + The wglUseFontBitmaps function creates a set of bitmap display lists for use in the current OpenGL rendering context. (Unicode) + + If the function succeeds, the return value is TRUE. If the function fails, the return value is FALSE. To get extended error information, call GetLastError. + + + The wglUseFontBitmaps function defines count display lists in the current OpenGL rendering context. Each display list has an identifying number, starting at listBase. Each display list consists of a single call to glBitmap. The definition of bitmap listBase + i is taken from the glyph first + i of the font currently selected in the device context specified by hdc. If a glyph is not defined, then the function defines an empty display list for it. The wglUseFontBitmaps function creates bitmap text in the plane of the screen. It enables the labeling of objects in OpenGL. In the current version of Microsoft's implementation of OpenGL, you cannot make GDI calls to a device context that has a double-buffered pixel format. Therefore, you cannot use the GDI fonts and text functions with such device contexts. You can use the wglUseFontBitmaps function to circumvent this limitation and draw text in a double-buffered device context. The function determines the parameters of each call to glBitmap as follows. + This doc was truncated. + Read more on docs.microsoft.com. + + + + + + + The wglUseFontOutlines function creates a set of display lists, one for each glyph of the currently selected outline font of a device context, for use with the current rendering context. (Unicode) + + When the function succeeds, the return value is TRUE. When the function fails, the return value is FALSE and no display lists are generated. To get extended error information, call GetLastError. + + + The wglUseFontOutlines function defines the glyphs of an outline font with display lists in the current rendering context. The wglUseFontOutlines function works with TrueType fonts only; stroke and raster fonts are not supported. Each display list consists of either line segments or polygons, and has a unique identifying number starting with the listBase number. The wglUseFontOutlines function approximates glyph outlines by subdividing the quadratic B-spline curves of the outline into line segments, until the distance between the outline and the interpolated midpoint is within the value specified by deviation. This is the final format used when format is WGL_FONT_LINES. When you specify WGL_FONT_OUTLINES, the display lists created don't contain any normals; thus lighting doesn't work properly. To get the correct lighting of lines use WGL_FONT_POLYGONS and set glPolygonMode( GL_FRONT, GL_LINE ). When you specify format as WGL_FONT_POLYGONS the outlines are further tessellated into separate triangles, triangle fans, triangle strips, or quadrilateral strips to create the surface of each glyph. With WGL_FONT_POLYGONS, the created display lists call glFrontFace( GL_CW ) or glFrontFace( GL_CCW ); thus the current front-face value might be altered. For the best appearance of text with WGL_FONT_POLYGONS, cull the back faces as follows: + + This doc was truncated. + Read more on docs.microsoft.com. + + + + Destroys the specified menu and frees any memory that the menu occupies. + + Type: HMENU A handle to the menu to be destroyed. + Read more on docs.microsoft.com. + + + Type: BOOL If the function succeeds, the return value is nonzero. If the function fails, the return value is zero. To get extended error information, call GetLastError. + + + Before closing, an application must use the DestroyMenu function to destroy a menu not assigned to a window. A menu that is assigned to a window is automatically destroyed when the application closes. DestroyMenu is recursive, that is, it will destroy the menu and all its submenus. + Read more on docs.microsoft.com. + + + + + + + Creates an overlapped, pop-up, or child window with an extended window style; otherwise, this function is identical to the CreateWindow function. (Unicode) + + Type: DWORD The extended window style of the window being created. For a list of possible values, see Extended Window Styles. + Read more on docs.microsoft.com. + + + Type: LPCTSTR A null-terminated string or a class atom created by a previous call to the RegisterClass or RegisterClassEx function. The atom must be in the low-order word of lpClassName; the high-order word must be zero. If lpClassName is a string, it specifies the window class name. The class name can be any name registered with RegisterClass or RegisterClassEx, provided that the module that registers the class is also the module that creates the window. The class name can also be any of the predefined system class names. + Read more on docs.microsoft.com. + + + Type: LPCTSTR The window name. If the window style specifies a title bar, the window title pointed to by lpWindowName is displayed in the title bar. When using CreateWindow to create controls, such as buttons, check boxes, and static controls, use lpWindowName to specify the text of the control. When creating a static control with the SS_ICON style, use lpWindowName to specify the icon name or identifier. To specify an identifier, use the syntax "#num". + Read more on docs.microsoft.com. + + + Type: DWORD The style of the window being created. This parameter can be a combination of the window style values, plus the control styles indicated in the Remarks section. + Read more on docs.microsoft.com. + + + Type: int The initial horizontal position of the window. For an overlapped or pop-up window, the x parameter is the initial x-coordinate of the window's upper-left corner, in screen coordinates. For a child window, x is the x-coordinate of the upper-left corner of the window relative to the upper-left corner of the parent window's client area. If x is set to CW_USEDEFAULT, the system selects the default position for the window's upper-left corner and ignores the y parameter. CW_USEDEFAULT is valid only for overlapped windows; if it is specified for a pop-up or child window, the x and y parameters are set to zero. + Read more on docs.microsoft.com. + + + Type: int The initial vertical position of the window. For an overlapped or pop-up window, the y parameter is the initial y-coordinate of the window's upper-left corner, in screen coordinates. For a child window, y is the initial y-coordinate of the upper-left corner of the child window relative to the upper-left corner of the parent window's client area. For a list box y is the initial y-coordinate of the upper-left corner of the list box's client area relative to the upper-left corner of the parent window's client area. + If an overlapped window is created with the WS_VISIBLE style bit set and the x parameter is set to CW_USEDEFAULT, then the y parameter determines how the window is shown. If the y parameter is CW_USEDEFAULT, then the window manager calls ShowWindow with the SW_SHOW flag after the window has been created. If the y parameter is some other value, then the window manager calls ShowWindow with that value as the nCmdShow parameter. + Read more on docs.microsoft.com. + + + Type: int The width, in device units, of the window. For overlapped windows, nWidth is the window's width, in screen coordinates, or CW_USEDEFAULT. If nWidth is CW_USEDEFAULT, the system selects a default width and height for the window; the default width extends from the initial x-coordinates to the right edge of the screen; the default height extends from the initial y-coordinate to the top of the icon area. CW_USEDEFAULT is valid only for overlapped windows; if CW_USEDEFAULT is specified for a pop-up or child window, the nWidth and nHeight parameter are set to zero. + Read more on docs.microsoft.com. + + + Type: int The height, in device units, of the window. For overlapped windows, nHeight is the window's height, in screen coordinates. If the nWidth parameter is set to CW_USEDEFAULT, the system ignores nHeight. + Read more on docs.microsoft.com. + + + Type: HWND A handle to the parent or owner window of the window being created. To create a child window or an owned window, supply a valid window handle. This parameter is optional for pop-up windows. To create a message-only window, supply HWND_MESSAGE or a handle to an existing message-only window. + Read more on docs.microsoft.com. + + + Type: HMENU A handle to a menu, or specifies a child-window identifier, depending on the window style. For an overlapped or pop-up window, hMenu identifies the menu to be used with the window; it can be NULL if the class menu is to be used. For a child window, hMenu specifies the child-window identifier, an integer value used by a dialog box control to notify its parent about events. The application determines the child-window identifier; it must be unique for all child windows with the same parent window. + Read more on docs.microsoft.com. + + + Type: HINSTANCE A handle to the instance of the module to be associated with the window. + Read more on docs.microsoft.com. + + + Type: LPVOID Pointer to a value to be passed to the window through the CREATESTRUCT structure (lpCreateParams member) pointed to by the lParam param of the WM_CREATE message. This message is sent to the created window by this function before it returns. If an application calls CreateWindow to create a MDI client window, lpParam should point to a CLIENTCREATESTRUCT structure. If an MDI client window calls CreateWindow to create an MDI child window, lpParam should point to a MDICREATESTRUCT structure. lpParam may be NULL if no additional data is needed. + Read more on docs.microsoft.com. + + + Type: HWND If the function succeeds, the return value is a handle to the new window. If the function fails, the return value is NULL. To get extended error information, call GetLastError. This function typically fails for one of the following reasons: + This doc was truncated. + + + The CreateWindowEx function sends WM_NCCREATE, WM_NCCALCSIZE, and WM_CREATE messages to the window being created. If the created window is a child window, its default position is at the bottom of the Z-order. If the created window is a top-level window, its default position is at the top of the Z-order (but beneath all topmost windows unless the created window is itself topmost). For information on controlling whether the Taskbar displays a button for the created window, see Managing Taskbar Buttons. For information on removing a window, see the DestroyWindow function. The following predefined control classes can be specified in the lpClassName parameter. Note the corresponding control styles you can use in the dwStyle parameter. + This doc was truncated. + Read more on docs.microsoft.com. + + + + + Represents a Win32 handle that can be closed with . + + +
+
diff --git a/源代码/Output/x64/RealDebug/net6.0/StgSharpC.dll b/源代码/Output/x64/RealDebug/net6.0/StgSharpC.dll deleted file mode 100644 index 0fbd72c6..00000000 Binary files a/源代码/Output/x64/RealDebug/net6.0/StgSharpC.dll and /dev/null differ diff --git a/源代码/Output/x64/RealDebug/net6.0/StgSharpDebug.deps.json b/源代码/Output/x64/RealDebug/net6.0/StgSharpDebug.deps.json deleted file mode 100644 index feca3f1f..00000000 --- a/源代码/Output/x64/RealDebug/net6.0/StgSharpDebug.deps.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "runtimeTarget": { - "name": ".NETCoreApp,Version=v6.0", - "signature": "" - }, - "compilationOptions": {}, - "targets": { - ".NETCoreApp,Version=v6.0": { - "StgSharpDebug/1.0.0": { - "runtime": { - "StgSharpDebug.dll": {} - } - } - } - }, - "libraries": { - "StgSharpDebug/1.0.0": { - "type": "project", - "serviceable": false, - "sha512": "" - } - } -} \ No newline at end of file diff --git a/源代码/Output/x64/RealDebug/net6.0/StgSharpDebug.dll b/源代码/Output/x64/RealDebug/net6.0/StgSharpDebug.dll deleted file mode 100644 index d54870c3..00000000 Binary files a/源代码/Output/x64/RealDebug/net6.0/StgSharpDebug.dll and /dev/null differ diff --git a/源代码/Output/x64/RealDebug/net6.0/StgSharpDebug.pdb b/源代码/Output/x64/RealDebug/net6.0/StgSharpDebug.pdb deleted file mode 100644 index 3f8fb7eb..00000000 Binary files a/源代码/Output/x64/RealDebug/net6.0/StgSharpDebug.pdb and /dev/null differ diff --git a/源代码/Output/x64/RealDebug/net6.0/StgSharpDebug.xml b/源代码/Output/x64/RealDebug/net6.0/StgSharpDebug.xml deleted file mode 100644 index 8cb77a1e..00000000 --- a/源代码/Output/x64/RealDebug/net6.0/StgSharpDebug.xml +++ /dev/null @@ -1,453 +0,0 @@ - - - - StgSharpDebug - - - - - Add a pool to timeline controller, and return the instance of the pool. - - - - - - Get the status of a certain key on the keyboard. - - - - - - - - Function handler to load an opengl function by serching its name. - - the name of the Opengl function - An intptr value representing the pointer to the function - - - - - - - - - Constructor of a Form, creats an instance of a form and - initilize all the customizing operations. - - - - - - - - - - - Resize the current form - - New width of the window - New height of the window - - - - Resize the current form - - - A (width,height) representing the new size of current form - - - - - Set the size limit of current form - - Minimum width of current form - Minimum height of current form - Maximum width of curent form - Maximum height of current form - - - - Set the size limit of current form - - - Minimun size of current form. In form of a of (width,height) - - - Maximum size of current form. In form of a of (width,height) - - - - - - - - - - - - - - - - - - - - - - - - - - Call apiClearColor in OpenGL - specifies the red, green, blue, and alpha values used by apiClear to clear the color buffers. - Values specified by apiClearColor are clamped to the range [0,1] - - Specify the red values used when the color buffers are cleared. - Specify the red values used when the color buffers are cleared. - Specify the red values used when the color buffers are cleared. - Specify the red values used when the color buffers are cleared. - - - - Bind the indexed buffer object to certain type of buffer - - - - - - - Clear buffers to preset values - - - - - - Conpile the provided shader code in string form. - - A string represent the shader's code - An enum represent the type of the shader to - conpile, including vertex shader and fragment shader. - An uint value as the only mark of conpiled shader - - - - Creates a form and its associated - - Required width - Required width - Tittle of the window - - - The instance of created form - - - - - sets the framebuffer resize callback of the specified , - which is called when the framebuffer of the specified is resized. - - The only signiture stands for the to be controlled - Method hadler - - - - Set how a shader parameter read data from a VBO. - - Serial number of the parameter - Amount of data each elements contains - Type of data read by shader - - Pixels stride of each sets of data - - - - - Set data value to a float , - all types of parameters are float. - - The target - The value to be set - - - - Set data value to a int , - all types of parameters are int. - - The target - The value to be set - - - - Set data value to a float , - all types of parameters are float. - - The target - The first value to be set - The second value to be set - - - - Set data value to a float , - all types of parameters are float. - - The target - The first value to be set - The second value to be set - The third value to be set - - - - Set data value to a float , - all types of parameters are float. - - The target - The first value to be set - The second value to be set - The third value to be set - The forth value to be set - - - - Set data value to a float , - all types of parameters are float. - - The target - A packing four parameters of the uniform - - - - Set data value to a float , - all types of parameters are . - - The target - A value of the uniform - - - - Create an instance of program - - New instance of instance. - - - - A value represent this shader. - - - - - Inti a shader with no program attached. - - - - - Compile the vertex shader to be attached to this shader. - - GLSL code of vertex shader. - - - - Compile the fragment shader to be attached to this shader. - - GLSL code of fragment shader. - - - - Link the shader to current context. - - - - - Get a uniform form current shader, - the value type of the uniform should be provided. - - - - - - - Let the current context use this shader. - - - - - Load all aupportable OpenGL APIs and bind them to given context. - - The used as current OpenGL context - A delegate that can get o - - - - Get the function pointer of given OpenGL api name - - Name of the OpenGL api - The funtion pointer of the api in form of - - - - Init an instance of OpenGL program, - This method should be called before other - graphic methods, after LoadGL method. - - - - - Tick counter count the frames passed since the program start. - - - - - A sensor used for cheking out if a bullet hit a player or something else - - - - - A 2D vector presenting the position of an enemy entity, position can also be visited by X, Y - - - - - X position of an enenmy entity - - - - - Y position of an enemy entity - - - - - Write a log message to log file, and mark the level of this message. - - A string contains information of how current evironment runs. - The severity of current message. - - - - The origin of this coordinate. - - - - - The horizontial axis of the coordinate. - Point to the right direction. - - - - - The vertical axis of the coordinate. - Point to the top direction. - - - - - 当几何体调用了过多的CalcVec方法时,产生UnusedVertexException异常 - - - - - Caculate the movement of a point. - - The game tick represent time passed by - A 3d vector representing movement - - - - Move the third vertix. this is a useless method for Parallelograms. - - Current time tick - - Geometry overdefined - - - - Move the third vertix. This method is useless for Parallelograms. - - Current time tick - - Geometry overdefined - - - - 平面几何体。包含三角形,对称四边形,自由多边形等。最多可由16个点参数定义。 - - - - - Update the coordinate of the point. If this is a moving point, - (Points on sides or surface if other geometry items) - please do not define any motion here, codes will be ignored by program - - Time passes since the program begin, counted by frames - - - - 计算中心点相对于参考原点的位移 - - 当前游戏刻 - - - - - A square - - - - - Add an item to the tail of linked list. - - The item ready to add to the list - - - - A two dimension vector defined by two elements. - Vec2Ds in StgSharp are defaultly usaed as colum vector. - - - - - Reurns the value of ArcSin(x) - - The sine value of the angle - - - - - - Get the value of E ^ x; - - - - - - - - - - - Returns the value of ln(x). - - - - - calculate the value of x^y - - - - Returns the value of x^y - - - - returns a random float number between 0 and 1. - - - - - - Generates a random seed in int value. - - - - - diff --git a/源代码/StgSharp/Control/IO/GLIO.cs b/源代码/StgSharp/Control/IO/GLIO.cs index 26898940..5b386815 100644 --- a/源代码/StgSharp/Control/IO/GLIO.cs +++ b/源代码/StgSharp/Control/IO/GLIO.cs @@ -17,25 +17,24 @@ namespace StgSharp [DllImport(SSC_libname, EntryPoint = "linkShaderProgram", CallingConvention = CallingConvention.Cdecl)] - internal static extern uint InternalLinkShaderProgram(uint shaderProgram); + internal static extern unsafe uint InternalLinkShaderProgram(GLcontext* context, uint shaderProgram); [DllImport(SSC_libname, EntryPoint = "loadShaderCode", CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi)] - internal static extern unsafe uint InternalLoadShaderCode(byte* shaderCode, int shaderType); - - - [DllImport(SSC_libname, EntryPoint = "setCurrentGLContext", - CallingConvention = CallingConvention.Cdecl)] - internal static extern unsafe void InternalSetCurrentGLContext(IntPtr windowID, GLcontext* context); + internal static extern unsafe uint InternalLoadShaderCode(GLcontext* context, byte* shaderCode, int shaderType); [DllImport(SSC_libname, EntryPoint = "readLog", CallingConvention = CallingConvention.Cdecl)] - internal static extern unsafe IntPtr InternalReadLog(); + internal static extern unsafe IntPtr InternalReadSSCLog(); [DllImport(SSC_libname, EntryPoint = "loadImageData", CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi)] internal static extern unsafe void InternalLoadImage(string fileName, Image.ImageInfo* output, ImageLoader loader); + [DllImport(SSC_libname, EntryPoint = "unloadImageData", + CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi)] + internal static extern unsafe void InternalUnloadImage(Image.ImageInfo* output); + #endregion } @@ -53,7 +52,6 @@ namespace StgSharp.Graphics #region glapi - internal unsafe delegate* glAccumxOES; internal unsafe delegate* glAcquireKeyedMutexWin32EXT; internal unsafe delegate* glActiveProgramEXT; diff --git a/源代码/StgSharp/Control/IO/InternalIO.cs b/源代码/StgSharp/Control/IO/InternalIO.cs index 997b42f8..a812657a 100644 --- a/源代码/StgSharp/Control/IO/InternalIO.cs +++ b/源代码/StgSharp/Control/IO/InternalIO.cs @@ -1,9 +1,12 @@ using StgSharp.Geometries; using StgSharp.Graphics; using System; +using System.Collections.Generic; using System.IO; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; +using Windows.Win32; +using Windows.Win32.Foundation; namespace StgSharp { @@ -16,7 +19,20 @@ namespace StgSharp InfoWarning, } + internal class LibHandle : SafeHandle + { + public LibHandle(IntPtr invalidHandleValue, bool ownsHandle) : base(invalidHandleValue, ownsHandle) + { + } + + public override bool IsInvalid => throw new NotImplementedException(); + + protected override bool ReleaseHandle() + { + return PInvoke.FreeLibrary(new HMODULE(handle)); + } + } internal static unsafe partial class InternalIO { @@ -42,11 +58,16 @@ namespace StgSharp GLtype.Add(TypeCode.Byte, GLconst.UNSIGNED_BYTE); } - internal static T InternalLoadProc(IntPtr libPtr, string name) where T : Delegate + internal static T InternalLoadProc(LibHandle lib, string name) where T : Delegate { try { - IntPtr procPtr = InternalGetWINproc(libPtr, name); + IntPtr procPtr = +#if Windows + PInvoke.GetProcAddress(lib, name); +#elif Linux + +#endif T ret = Marshal.GetDelegateForFunctionPointer(procPtr); return ret; } @@ -70,17 +91,6 @@ namespace StgSharp } } - [DllImport("kernal32.dll", EntryPoint = "FreeLibrary", - CharSet = CharSet.Ansi)] - internal extern static IntPtr InternalFreeWINlib(IntPtr libPtr); - - [DllImport("kernel32.dll", EntryPoint = "GetPeocAddress", - CharSet = CharSet.Ansi)] - internal extern static IntPtr InternalGetWINproc(IntPtr libPtr, string procName); - - [DllImport("kernel32.dll", EntryPoint = "LoadLibrary", - CharSet = CharSet.Ansi)] - internal extern static IntPtr InternalLoadWINlib(string name); internal static void InternalWriteLog(string beforeTime, string logLine, LogType logType) { diff --git a/源代码/StgSharp/Environment/Platform.cs b/源代码/StgSharp/Environment/Platform.cs index 1c7783c2..bc6fa3d4 100644 --- a/源代码/StgSharp/Environment/Platform.cs +++ b/源代码/StgSharp/Environment/Platform.cs @@ -1,13 +1,26 @@ -using StgSharp.Graphics; +using StgSharp.Envitronment; +using StgSharp.Envitronment.Win32; +using StgSharp.Graphics; +using StgSharp.Math; using System; using System.Collections.Generic; +using System.ComponentModel; using System.Linq; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using System.Text; using System.Threading.Tasks; +using Windows.Win32.UI.WindowsAndMessaging; + +#if Windows +using Windows.Win32; +using Windows.Win32.Foundation; +using Windows.Win32.Graphics.OpenGL; +using Windows.Win32.Graphics.Gdi; +using Windows.Win32.UI; +#endif namespace StgSharp { internal enum GraphicAPI : byte @@ -17,10 +30,21 @@ namespace StgSharp VK } - public static class Platform + public static partial class Platform { - internal static GraphicAPI API; + internal static GraphicAPI API = default; + + private static uint markCount = 0; + + public static void Mark(bool needConsole) + { + markCount++; + if (needConsole) + { + Console.WriteLine(markCount); + } + } /// /// Version of current StgSharp platform. @@ -37,6 +61,11 @@ namespace StgSharp [MethodImpl(MethodImplOptions.AggressiveInlining)] public static void InitGL(int majorVersion, int minorVersion) { + if (API != default) + { + return; + } + InternalIO.InternalInitGL(majorVersion, minorVersion); } @@ -86,5 +115,26 @@ namespace StgSharp } } + public static void Track( + object target, + string message, + [CallerFilePath] string filePath = "", + [CallerMemberName] string callerName = "", + [CallerLineNumber] int lineNumber = 0 + ) + { + string log = $"Tracked object: {nameof(target)}\n"; + Type t = target.GetType(); + FieldInfo[] fieldInfo = t.GetFields(BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Instance); + log += "|\tFieldName\t|\tFieldType\t|\tFieldValue\t|\n"; + foreach (FieldInfo field in fieldInfo) + { + log += $"|{field.Name}\t\t|{field.FieldType}\t\t|{field.GetValue(target)}\t\t|\n"; + } + log += $"Tracking at:\n{filePath}\t{callerName}\tline {lineNumber}\n"; + log += $"Additional information:\n{message}\n"; + InternalIO.InternalWriteLog(log, LogType.Info); + } + } } diff --git a/源代码/StgSharp/Environment/Win32.cs b/源代码/StgSharp/Environment/Win32.cs new file mode 100644 index 00000000..62727baf --- /dev/null +++ b/源代码/StgSharp/Environment/Win32.cs @@ -0,0 +1,199 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Runtime.CompilerServices; +using Windows.Win32.Foundation; +using System.Runtime.InteropServices; +using System.Reflection; +using StgSharpDebug.Environment; +using StgSharp.Math; + + + + + + +#if Windows +#pragma warning disable CA1416 // 验证平台兼容性 +using Microsoft.Win32.SafeHandles; +using StgSharp.Envitronment.Win32; +using Windows.Win32; +using Windows.Win32.Graphics.OpenGL; +using Windows.Win32.Graphics.Gdi; +using Windows.Win32.UI.WindowsAndMessaging; + + +namespace StgSharp +{ + public unsafe static partial class Platform + { + + internal static unsafe void CreatDummyContext() + { + string winclass_name = "Dummy_WGL_context"; + WNDCLASSW window_class = new WNDCLASSW() + { + style = WNDCLASS_STYLES.CS_HREDRAW | WNDCLASS_STYLES.CS_VREDRAW | WNDCLASS_STYLES.CS_OWNDC, + lpfnWndProc = PInvoke.DefWindowProc, + hInstance = new HINSTANCE(PInvoke.GetModuleHandle("").DangerousGetHandle()), + lpszClassName = new PCWSTR((char*)Marshal.StringToHGlobalUni(winclass_name)) + }; + + if (PInvoke.RegisterClass(window_class) != 0) + { + throw new Exception("Failed in registing OpenGL window."); + } + + HWND h = PInvoke.CreateWindowEx( + Windows.Win32.UI.WindowsAndMessaging.WINDOW_EX_STYLE.WS_EX_LTRREADING, + winclass_name, + "Dummy OpenGL window", + Windows.Win32.UI.WindowsAndMessaging.WINDOW_STYLE.WS_OVERLAPPED, + 0, + 0, + 0, + 0, + default, + default, + new LibHandle(window_class.hInstance.Value, false), + default + ); + if (h == default) + { + throw new Exception("Failed in registing OpenGL window."); + } + HDC hdc = PInvoke.GetDC(h); + + PIXELFORMATDESCRIPTOR pfd = new PIXELFORMATDESCRIPTOR(); + pfd.nSize = (ushort)Marshal.SizeOf(pfd); + pfd.nVersion = 1; + pfd.dwFlags = PFD_FLAGS.PFD_DRAW_TO_WINDOW | PFD_FLAGS.PFD_SUPPORT_OPENGL + | PFD_FLAGS.PFD_DOUBLEBUFFER; + pfd.iPixelType = PFD_PIXEL_TYPE.PFD_TYPE_RGBA; + pfd.cColorBits = 32; + pfd.cDepthBits = 24; + pfd.cStencilBits = 8; + pfd.iLayerType = PFD_LAYER_TYPE.PFD_MAIN_PLANE; + + int pixelFormat = PInvoke.ChoosePixelFormat(hdc, &pfd); + + if (pixelFormat == 0) + { + throw new Exception("Failed in registing OpenGL window."); + } + if (PInvoke.SetPixelFormat(hdc, pixelFormat, &pfd)) + { + throw new Exception("Failed in registing OpenGL window."); + } + HGLRC hglrc = PInvoke.wglCreateContext(hdc); + + PInvoke.wglMakeCurrent(hdc, hglrc); + + wglEx.LoadWGLex(); + + PInvoke.wglMakeCurrent(hdc, HGLRC.Null); + PInvoke.wglDeleteContext(hglrc); + PInvoke.ReleaseDC(h, hdc); + PInvoke.DestroyWindow(h); + + } + + internal static unsafe HGLRC InitGL(HDC realHDC) + { + CreatDummyContext(); + + int[] pixelFormatAttribute = new int[] { + WGLconst.DRAW_TO_WINDOW_ARB, 1, + WGLconst.SUPPORT_OPENGL_ARB, 1, + WGLconst.DOUBLE_BUFFER_ARB, 1, + WGLconst.ACCELERATION_ARB, WGLconst.FULL_ACCELERATION_ARB, + WGLconst.PIXEL_TYPE_ARB, WGLconst.TYPE_RGBA_ARB, + WGLconst.COLOR_BITS_ARB, 32, + WGLconst.DEPTH_BITS_ARB, 24, + WGLconst.STENCIL_BITS_ARB,8 + }; + + int piFormat; + uint length; + + wglEx.glChoosePixelFormatARB(new DeviceContextHandle(realHDC), pixelFormatAttribute, out piFormat, out length); + if (length == 0) + { + throw new Exception("Failed in creating OpenGL core profile."); + } + PIXELFORMATDESCRIPTOR pfd = default; + PInvoke.DescribePixelFormat(realHDC, piFormat, (uint)Marshal.SizeOf(pfd), &pfd); + if (PInvoke.SetPixelFormat(realHDC, piFormat, in pfd)) + { + throw new Exception("Failed in creating OpenGL core profile."); + } + int[] glVersionAttribute = new int[] { + WGLconst.CONTEXT_MAJOR_VERSION_ARB,4, + WGLconst.CONTEXT_MINOR_VERSION_ARB,6, + WGLconst.CONTEXT_PROFILE_MASK_ARB, WGLconst.CONTEXT_CORE_PROFILE_BIT_ARB + }; + + HGLRC coreGL = new(wglEx.wglCreateContextAttribsARB( + new DeviceContextHandle(realHDC), GlRenderContextHandle.Null, glVersionAttribute).Value); + if (coreGL.Value == IntPtr.Zero) + { + throw new Exception("Failed in creating OpenGL core profile."); + } + + return coreGL; + + } + + internal static unsafe LRESULT window_callback( + HWND window, uint msg, WPARAM wparam, LPARAM lparam) + { + LRESULT ret = new LRESULT(0); + switch (msg) + { + case 0x0010: break; + case 0x0002: + PInvoke.PostQuitMessage(0); + break; + default: + ret = PInvoke.DefWindowProc(window, msg, wparam, lparam); + break; + } + return ret; + } + + internal static unsafe IntPtr CreateForm(HINSTANCE inst) + { + string formName = "Hello Stg#!"; + + WNDCLASSW window_class = new WNDCLASSW() + { + style = WNDCLASS_STYLES.CS_VREDRAW | WNDCLASS_STYLES.CS_HREDRAW | WNDCLASS_STYLES.CS_OWNDC, + lpfnWndProc = window_callback, + hInstance = inst, + hCursor = new HCURSOR(PInvoke.LoadCursor(default, "IDC_ARROW").DangerousGetHandle()), + hbrBackground = HBRUSH.Null, + lpszClassName = new PCWSTR((char*)Marshal.StringToHGlobalUni(formName)) + }; + + if (PInvoke.RegisterClass(in window_class) == 0) + { + throw new Exception("Failed to create window instace."); + } + + RECT rect = default; + rect.right = 1024; + rect.bottom = 576; + + uint window_style = WGLconst.WS_OVERLAPPEDWINDOW; + PInvoke.AdjustWindowRect(ref rect, (WINDOW_STYLE)window_style, false); + + + } + } +} + + +#pragma warning restore CA1416 // 验证平台兼容性 +#endif \ No newline at end of file diff --git a/源代码/StgSharp/Environment/Win32Struct.cs b/源代码/StgSharp/Environment/Win32Struct.cs new file mode 100644 index 00000000..4bfe7f87 --- /dev/null +++ b/源代码/StgSharp/Environment/Win32Struct.cs @@ -0,0 +1,279 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Runtime.InteropServices; + + + +#if Windows +using Microsoft.Win32.SafeHandles; +using Windows.Win32; +using Windows.Win32.Graphics.OpenGL; +using Windows.Win32.Graphics.Gdi; + +namespace StgSharp.Envitronment.Win32 +{ + public readonly partial struct DeviceContextHandle + : IEquatable + { + internal readonly IntPtr Value; + + internal DeviceContextHandle(nint value) => this.Value = value; + + public static explicit operator DeviceContextHandle(IntPtr value) => new DeviceContextHandle(value); + + public static implicit operator IntPtr(DeviceContextHandle value) => value.Value; + public static bool operator !=(DeviceContextHandle left, DeviceContextHandle right) => !(left == right); + + public static bool operator ==(DeviceContextHandle left, DeviceContextHandle right) => left.Value == right.Value; + public bool Equals(DeviceContextHandle other) => this.Value == other.Value; + + public override bool Equals(object obj) => obj is DeviceContextHandle other && this.Equals(other); + + public override int GetHashCode() => this.Value.GetHashCode(); + + public override string ToString() => $"0x{this.Value:x}"; + } + + public readonly partial struct GlRenderContextHandle + : IEquatable + { + internal readonly IntPtr Value; + + internal GlRenderContextHandle(IntPtr value) => this.Value = value; + + internal static GlRenderContextHandle Null => default; + + internal bool IsNull => Value == default; + + public static explicit operator GlRenderContextHandle(IntPtr value) => new GlRenderContextHandle(value); + + public static implicit operator IntPtr(GlRenderContextHandle value) => value.Value; + public static bool operator !=(GlRenderContextHandle left, GlRenderContextHandle right) => !(left == right); + + public static bool operator ==(GlRenderContextHandle left, GlRenderContextHandle right) => left.Value == right.Value; + public bool Equals(GlRenderContextHandle other) => this.Value == other.Value; + + public override bool Equals(object obj) => obj is GlRenderContextHandle other && this.Equals(other); + + public override int GetHashCode() => this.Value.GetHashCode(); + + public override string ToString() => $"0x{this.Value:x}"; + } + + public struct WGLconst + { + #region Attribute + public const int ACCELERATION_ARB = 0x2003; + public const int ACCUM_ALPHA_BITS_ARB = 0x2021; + public const int ACCUM_BITS_ARB = 0x201D; + public const int ACCUM_BLUE_BITS_ARB = 0x2020; + public const int ACCUM_GREEN_BITS_ARB = 0x201F; + public const int ACCUM_RED_BITS_ARB = 0x201E; + public const int ALPHA_BITS_ARB = 0x201B; + public const int ALPHA_SHIFT_ARB = 0x201C; + public const int AUX_BUFFERS_ARB = 0x2024; + public const int BLUE_BITS_ARB = 0x2019; + public const int BLUE_SHIFT_ARB = 0x201A; + public const int COLOR_BITS_ARB = 0x2014; + public const int DEPTH_BITS_ARB = 0x2022; + public const int DOUBLE_BUFFER_ARB = 0x2011; + public const int DRAW_TO_BITMAP_ARB = 0x2002; + public const int DRAW_TO_WINDOW_ARB = 0x2001; + public const int FULL_ACCELERATION_ARB = 0x2027; + public const int GENERIC_ACCELERATION_ARB = 0x2026; + public const int GREEN_BITS_ARB = 0x2017; + public const int GREEN_SHIFT_ARB = 0x2018; + public const int NEED_PALETTE_ARB = 0x2004; + public const int NEED_SYSTEM_PALETTE_ARB = 0x2005; + public const int NO_ACCELERATION_ARB = 0x2025; + public const int NUMBER_OVERLAYS_ARB = 0x2008; + public const int NUMBER_PIXEL_FORMATS_ARB = 0x2000; + public const int NUMBER_UNDERLAYS_ARB = 0x2009; + public const int PIXEL_TYPE_ARB = 0x2013; + public const int RED_BITS_ARB = 0x2015; + public const int RED_SHIFT_ARB = 0x2016; + public const int SHARE_ACCUM_ARB = 0x200E; + public const int SHARE_DEPTH_ARB = 0x200C; + public const int SHARE_STENCIL_ARB = 0x200D; + public const int STENCIL_BITS_ARB = 0x2023; + public const int STEREO_ARB = 0x2012; + public const int SUPPORT_GDI_ARB = 0x200F; + public const int SUPPORT_OPENGL_ARB = 0x2010; + public const int SWAP_COPY_ARB = 0x2029; + public const int SWAP_EXCHANGE_ARB = 0x2028; + public const int SWAP_LAYER_BUFFERS_ARB = 0x2006; + public const int SWAP_METHOD_ARB = 0x2007; + public const int SWAP_UNDEFINED_ARB = 0x202A; + public const int TRANSPARENT_ALPHA_VALUE_ARB = 0x203A; + public const int TRANSPARENT_ARB = 0x200A; + public const int TRANSPARENT_BLUE_VALUE_ARB = 0x2039; + public const int TRANSPARENT_GREEN_VALUE_ARB = 0x2038; + public const int TRANSPARENT_INDEX_VALUE_ARB = 0x203B; + public const int TRANSPARENT_RED_VALUE_ARB = 0x2037; + public const int TYPE_COLORINDEX_ARB = 0x202C; + public const int TYPE_RGBA_ARB = 0x202B; + #endregion + #region context + + public const int CONTEXT_MAJOR_VERSION_ARB = 0x2091; + public const int CONTEXT_MINOR_VERSION_ARB = 0x2092; + public const int CONTEXT_LAYER_PLANE_ARB = 0x2093; + public const int CONTEXT_FLAGS_ARB = 0x2094; + public const int CONTEXT_PROFILE_MASK_ARB = 0x9126; + public const int CONTEXT_DEBUG_BIT_ARB = 0x0001; + public const int CONTEXT_FORWARD_COMPATIBLE_BIT_ARB = 0x0002; + public const int CONTEXT_CORE_PROFILE_BIT_ARB = 0x00000001; + public const int CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB = 0x00000002; + public const int ERROR_INVALID_VERSION_ARB = 0x2095; + public const int ERROR_INVALID_PROFILE_ARB = 0x2096; + + #endregion + #region + + public const uint WS_OVERLAPPED = 0x00000000; + public const uint WS_POPUP = 0x80000000; + public const uint WS_CHILD = 0x40000000; + public const uint WS_MINIMIZE = 0x20000000; + public const uint WS_VISIBLE = 0x10000000; + public const uint WS_DISABLED = 0x08000000; + public const uint WS_CLIPSIBLINGS = 0x04000000; + public const uint WS_CLIPCHILDREN = 0x02000000; + public const uint WS_MAXIMIZE = 0x01000000; + public const uint WS_CAPTION = 0x00C00000; /* WS_BORDER | WS_DLGFRAME */ + public const uint WS_BORDER = 0x00800000; + public const uint WS_DLGFRAME = 0x00400000; + public const uint WS_VSCROLL = 0x00200000; + public const uint WS_HSCROLL = 0x00100000; + public const uint WS_SYSMENU = 0x00080000; + public const uint WS_THICKFRAME = 0x00040000; + public const uint WS_GROUP = 0x00020000; + public const uint WS_TABSTOP = 0x00010000; + public const uint WS_MINIMIZEBOX = 0x00020000; + public const uint WS_MAXIMIZEBOX = 0x00010000; + + public const uint WS_OVERLAPPEDWINDOW = WS_OVERLAPPED | + WS_CAPTION | + WS_SYSMENU | + WS_THICKFRAME | + WS_MINIMIZEBOX | + WS_MAXIMIZEBOX; + + #endregion + } + public readonly partial struct WindowHandle + : IEquatable + { + internal readonly IntPtr Value; + + internal WindowHandle(IntPtr value) => this.Value = value; + + internal static WindowHandle Null => default; + + internal bool IsNull => Value == default; + + public static explicit operator WindowHandle(IntPtr value) => new WindowHandle(value); + + public static implicit operator IntPtr(WindowHandle value) => value.Value; + public static bool operator !=(WindowHandle left, WindowHandle right) => !(left == right); + + public static bool operator ==(WindowHandle left, WindowHandle right) => left.Value == right.Value; + public bool Equals(WindowHandle other) => this.Value == other.Value; + + public override bool Equals(object obj) => obj is WindowHandle other && this.Equals(other); + + public override int GetHashCode() => this.Value.GetHashCode(); + + public override string ToString() => $"0x{this.Value:x}"; + + //public static implicit operator HANDLE(WindowHandle value) => new HANDLE(value.Value); + } + + [StructLayout(LayoutKind.Sequential)] + public class PixelFormatDescriptor + { + // 定义类的成员变量,使用与 C/C++ 中相同的数据类型 + public ushort nSize; + public ushort nVersion; + public uint dwFlags; + [MarshalAs(UnmanagedType.U1)] + public byte iPixelType; + [MarshalAs(UnmanagedType.U1)] + public byte cColorBits; + [MarshalAs(UnmanagedType.U1)] + public byte cRedBits; + [MarshalAs(UnmanagedType.U1)] + public byte cRedShift; + [MarshalAs(UnmanagedType.U1)] + public byte cGreenBits; + [MarshalAs(UnmanagedType.U1)] + public byte cGreenShift; + [MarshalAs(UnmanagedType.U1)] + public byte cBlueBits; + [MarshalAs(UnmanagedType.U1)] + public byte cBlueShift; + [MarshalAs(UnmanagedType.U1)] + public byte cAlphaBits; + [MarshalAs(UnmanagedType.U1)] + public byte cAlphaShift; + [MarshalAs(UnmanagedType.U1)] + public byte cAccumBits; + [MarshalAs(UnmanagedType.U1)] + public byte cAccumRedBits; + [MarshalAs(UnmanagedType.U1)] + public byte cAccumGreenBits; + [MarshalAs(UnmanagedType.U1)] + public byte cAccumBlueBits; + [MarshalAs(UnmanagedType.U1)] + public byte cAccumAlphaBits; + [MarshalAs(UnmanagedType.U1)] + public byte cDepthBits; + [MarshalAs(UnmanagedType.U1)] + public byte cStencilBits; + [MarshalAs(UnmanagedType.U1)] + public byte cAuxBuffers; + [MarshalAs(UnmanagedType.U1)] + public byte iLayerType; + [MarshalAs(UnmanagedType.U1)] + public byte bReserved; + public uint dwLayerMask; + public uint dwVisibleMask; + public uint dwDamageMask; + + // 定义一个构造函数,用于设置类的成员变量的默认值 + public PixelFormatDescriptor() + { + nSize = (ushort)Marshal.SizeOf(this); // 设置 nSize 为类的大小 + nVersion = 1; // 设置 nVersion 为 1 + dwFlags = 0; // 设置 dwFlags 为 0 + iPixelType = 0; // 设置 iPixelType 为 0 + cColorBits = 0; // 设置 cColorBits 为 0 + cRedBits = 0; // 设置 cRedBits 为 0 + cRedShift = 0; // 设置 cRedShift 为 0 + cGreenBits = 0; // 设置 cGreenBits 为 0 + cGreenShift = 0; // 设置 cGreenShift 为 0 + cBlueBits = 0; // 设置 cBlueBits 为 0 + cBlueShift = 0; // 设置 cBlueShift 为 0 + cAlphaBits = 0; // 设置 cAlphaBits 为 0 + cAlphaShift = 0; // 设置 cAlphaShift 为 0 + cAccumBits = 0; // 设置 cAccumBits 为 0 + cAccumRedBits = 0; // 设置 cAccumRedBits 为 0 + cAccumGreenBits = 0; // 设置 cAccumGreenBits 为 0 + cAccumBlueBits = 0; // 设置 cAccumBlueBits 为 0 + cAccumAlphaBits = 0; // 设置 cAccumAlphaBits 为 0 + cDepthBits = 0; // 设置 cDepthBits 为 0 + cStencilBits = 0; // 设置 cStencilBits 为 0 + cAuxBuffers = 0; // 设置 cAuxBuffers 为 0 + iLayerType = 0; // 设置 iLayerType 为 0 + bReserved = 0; // 设置 bReserved 为 0 + dwLayerMask = 0; // 设置 dwLayerMask 为 0 + dwVisibleMask = 0; // 设置 dwVisibleMask 为 0 + dwDamageMask = 0; // 设置 dwDamageMask 为 0 + } + } + +} + +#endif \ No newline at end of file diff --git a/源代码/StgSharp/Environment/Win32wgl.cs b/源代码/StgSharp/Environment/Win32wgl.cs new file mode 100644 index 00000000..fde05cb2 --- /dev/null +++ b/源代码/StgSharp/Environment/Win32wgl.cs @@ -0,0 +1,31 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Runtime.CompilerServices; +using Windows.Win32.Foundation; + + +#if Windows +using Microsoft.Win32.SafeHandles; +using Windows.Win32; +using Windows.Win32.Graphics.OpenGL; +using Windows.Win32.Graphics.Gdi; + +namespace StgSharp.Envitronment.Win32 +{ + public class WGL + { + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public static GlRenderContextHandle CreateContext(DeviceContextHandle param0) + { + return new(PInvoke.wglCreateContext(new HDC(param0.Value)).Value); + } + + + + } +} + +#endif \ No newline at end of file diff --git a/源代码/StgSharp/Environment/win32wglEx.cs b/源代码/StgSharp/Environment/win32wglEx.cs new file mode 100644 index 00000000..1cf06a68 --- /dev/null +++ b/源代码/StgSharp/Environment/win32wglEx.cs @@ -0,0 +1,78 @@ +using StgSharp.Envitronment.Win32; +using StgSharp.Graphics; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Net.Http.Headers; +using System.Runtime.InteropServices; +using System.Text; +using System.Threading.Tasks; + +#if Windows +#pragma warning disable CA1416 + +using Windows.Win32.Graphics.Gdi; +using Windows.Win32.Graphics.OpenGL; + + +namespace StgSharpDebug.Environment +{ + public static unsafe class wglEx + { + + private static delegate* unmanaged[Stdcall] wglChoosePixelFormatARBpointer; + private static delegate* unmanaged[Stdcall] wglCreateContextAttribsARBpointer; + + public static unsafe bool glChoosePixelFormatARB( + DeviceContextHandle hdc, + int[] pixelIntAttributeList, + out int piFormats, + out uint piFormatCount) + { + if ((ulong)wglChoosePixelFormatARBpointer < 10) + { + piFormats = 0; + piFormatCount = 0; + return false; + } + pixelIntAttributeList = pixelIntAttributeList.Concat([0]).ToArray(); + int pf; + uint nf; + fixed (int* pial = pixelIntAttributeList) + { + bool ret = wglChoosePixelFormatARBpointer(new HDC(hdc.Value), pial, (float*)0, 1, &pf, &nf); + piFormats = pf; + piFormatCount = nf; + return ret; + } + } + + public static unsafe GlRenderContextHandle wglCreateContextAttribsARB( + DeviceContextHandle hdc, + GlRenderContextHandle hglrc, + int[] pixelFormat) + { + if ((ulong)wglCreateContextAttribsARBpointer < 10) + { + return default; + } + HGLRC h, h_share = new HGLRC(hglrc.Value); + HDC h_dc = new HDC(hdc.Value); + fixed (int* format = pixelFormat) + { + h = wglCreateContextAttribsARBpointer(h_dc, h_share, format); + return new GlRenderContextHandle(h); + } + } + + internal static void LoadWGLex() + { + wglChoosePixelFormatARBpointer = (delegate* unmanaged[Stdcall])glManager.LoadGLfunc("wglChoosePixelFormatARB"); + wglCreateContextAttribsARBpointer = (delegate* unmanaged[Stdcall])glManager.LoadGLfunc("wglCreateContextAttribsARB"); + } + } + +} + +#pragma warning restore CA1416 // 验证平台兼容性 +#endif diff --git a/源代码/StgSharp/Geometries/PlainGeometry/Rectangle.cs b/源代码/StgSharp/Geometries/PlainGeometry/Rectangle.cs index ca355702..064648b7 100644 --- a/源代码/StgSharp/Geometries/PlainGeometry/Rectangle.cs +++ b/源代码/StgSharp/Geometries/PlainGeometry/Rectangle.cs @@ -5,8 +5,6 @@ namespace StgSharp.Geometries { public class Rectangle : Parallelogram { - internal Point center; - public Rectangle( float v0x, float v0y, float v0z, float v1x, float v1y, float v1z, diff --git a/源代码/StgSharp/Graphics/Form.cs b/源代码/StgSharp/Graphics/Form.cs index 2a7cd956..0f99b3bb 100644 --- a/源代码/StgSharp/Graphics/Form.cs +++ b/源代码/StgSharp/Graphics/Form.cs @@ -11,7 +11,6 @@ using System.Linq; using System.Numerics; using System.Reflection; using System.Reflection.Emit; -using System.Reflection.Metadata; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using System.Security.Principal; @@ -38,7 +37,7 @@ namespace StgSharp.Graphics internal int width; internal IntPtr windowID; private bool closed; - private IglFunc gl; + internal IglFunc gl; #endregion #region form thread setting @@ -180,7 +179,7 @@ namespace StgSharp.Graphics windowID = windowPtr; } } - InternalIO.InternalSetCurrentGLContext(windowID, contextID); + gl.SwitchContext(); } /// @@ -267,7 +266,7 @@ namespace StgSharp.Graphics else { M128 m = default; - m.IntPtr0 = windowID; + m.UInt64[0] = (ulong)windowID; GLonUpdate glu = gl as GLonUpdate; glu.frameworkHandleEnqueue( (IntPtr)(delegate*)&InternalSwapBuffer, m); diff --git a/源代码/StgSharp/Graphics/GL/Buffer/IBufferObject.cs b/源代码/StgSharp/Graphics/GL/Buffer/BufferObjectBase.cs similarity index 78% rename from 源代码/StgSharp/Graphics/GL/Buffer/IBufferObject.cs rename to 源代码/StgSharp/Graphics/GL/Buffer/BufferObjectBase.cs index df42b0b1..18f5c18e 100644 --- a/源代码/StgSharp/Graphics/GL/Buffer/IBufferObject.cs +++ b/源代码/StgSharp/Graphics/GL/Buffer/BufferObjectBase.cs @@ -9,7 +9,7 @@ namespace StgSharp.Graphics /// /// Interface of all kinds OpenGL buffer onjects /// - public abstract class IBufferObject : IDisposable + public abstract class BufferObjectBase : IDisposable { protected glHandleSet _bufferHandle; protected IglFunc GL; @@ -30,9 +30,15 @@ namespace StgSharp.Graphics /// Index of handle of the object in this instance to be bind public abstract void Bind(int index); + /// + public override string ToString() + { + return $"This is a {GetType().FullName}, containing {_bufferHandle.length} buffer handles: {_bufferHandle.ToString()}."; + } + protected abstract void Dispose(bool disposing); - ~IBufferObject() + ~BufferObjectBase() { Dispose(disposing: false); } diff --git a/源代码/StgSharp/Graphics/GL/Buffer/EBO.cs b/源代码/StgSharp/Graphics/GL/Buffer/EBO.cs index 148f3bd1..9c2124fb 100644 --- a/源代码/StgSharp/Graphics/GL/Buffer/EBO.cs +++ b/源代码/StgSharp/Graphics/GL/Buffer/EBO.cs @@ -14,7 +14,7 @@ namespace StgSharp.Graphics /// Each value indexed from instance of this class this /// is the only handle to one Element Buffer Object. /// - public unsafe class ElementBuffer : IBufferObject + public unsafe class ElementBuffer : BufferObjectBase { internal ElementBuffer(int n, IglFunc gl) { @@ -22,10 +22,6 @@ namespace StgSharp.Graphics _bufferHandle = GL.GenBuffers(n); } - public glHandle this[int n] - { - get { return _bufferHandle[n]; } - } public override void Bind(int index) { diff --git a/源代码/StgSharp/Graphics/GL/Buffer/VAO.cs b/源代码/StgSharp/Graphics/GL/Buffer/VAO.cs index 1d74eaf3..319cc3bd 100644 --- a/源代码/StgSharp/Graphics/GL/Buffer/VAO.cs +++ b/源代码/StgSharp/Graphics/GL/Buffer/VAO.cs @@ -6,7 +6,7 @@ using System.Text; namespace StgSharp.Graphics { - public unsafe class VertexArray : IBufferObject + public unsafe class VertexArray : BufferObjectBase { internal VertexArray(int n, IglFunc gl) { diff --git a/源代码/StgSharp/Graphics/GL/Buffer/VBO.cs b/源代码/StgSharp/Graphics/GL/Buffer/VBO.cs index 0fceda2e..4ba62084 100644 --- a/源代码/StgSharp/Graphics/GL/Buffer/VBO.cs +++ b/源代码/StgSharp/Graphics/GL/Buffer/VBO.cs @@ -10,7 +10,7 @@ using System.Text; namespace StgSharp.Graphics { - public unsafe class VertexBuffer : IBufferObject + public unsafe class VertexBuffer : BufferObjectBase { internal VertexBuffer(int n, IglFunc glFunc) { @@ -58,6 +58,8 @@ namespace StgSharp.Graphics { GL.BindBuffer(BufferType.ARRAY_BUFFER, glHandle.Zero); } + + [MethodImpl(MethodImplOptions.AggressiveInlining)] internal void ChangeEnvironment(IglFunc gl) { GL = gl; diff --git a/源代码/StgSharp/Graphics/GL/Buffer/texture.cs b/源代码/StgSharp/Graphics/GL/Buffer/texture.cs index 5164bc8e..e8bd868b 100644 --- a/源代码/StgSharp/Graphics/GL/Buffer/texture.cs +++ b/源代码/StgSharp/Graphics/GL/Buffer/texture.cs @@ -41,12 +41,12 @@ namespace StgSharp.Graphics /// public unsafe void LoadTexture(int index, string name, ImageLoader loader) { - sourceList[index] = new Image(); - fixed (Image.ImageInfo* textureInfo = &sourceList[index].info) - { - InternalIO.InternalLoadImage(name, textureInfo, loader); - } - + Image.ImageInfo info = default; + InternalIO.InternalLoadImage(name, &info, loader); + Console.WriteLine(info); + sourceList[index] = new Image(info); + InternalIO.InternalUnloadImage(&info); + Console.WriteLine(sourceList[index]); if (sourceList[index].info.pixelPtr != IntPtr.Zero) { uint channel; diff --git a/源代码/StgSharp/Graphics/GL/GLonRender.cs b/源代码/StgSharp/Graphics/GL/GLonRender.cs index c774f108..1eb89ff2 100644 --- a/源代码/StgSharp/Graphics/GL/GLonRender.cs +++ b/源代码/StgSharp/Graphics/GL/GLonRender.cs @@ -21,6 +21,11 @@ namespace StgSharp.Graphics api = context; } + GLcontext* IglFunc.Context + { + get => api; + } + void IglFunc.SwitchContext() { @@ -104,11 +109,11 @@ namespace StgSharp.Graphics byte[] data = Encoding.UTF8.GetBytes(shaderCodeArray[i] + '\0'); fixed (byte* codePtr = data) { - shaderID = InternalIO.InternalLoadShaderCode(codePtr, (int)shaderType); + shaderID = InternalIO.InternalLoadShaderCode(api, codePtr, (int)shaderType); } if (shaderID == 0) //compile error handler { - IntPtr logPtr = InternalIO.InternalReadLog(); + IntPtr logPtr = InternalIO.InternalReadSSCLog(); string log; try { @@ -326,6 +331,7 @@ namespace StgSharp.Graphics [MethodImpl(MethodImplOptions.AggressiveInlining)] void IglFunc.TextureImage2d(int target, int level, uint internalformat, uint width, uint height, uint format, uint type, T[] pixels) { + Console.WriteLine(pixels); IntPtr source = GCHandle.Alloc(pixels, GCHandleType.Pinned).AddrOfPinnedObject(); api->glTexImage2D( (uint)target, level, internalformat, width, height, 0, format, type, (void*)source diff --git a/源代码/StgSharp/Graphics/GL/GLonTimeout.cs b/源代码/StgSharp/Graphics/GL/GLonTimeout.cs index 75e84940..12bd33a6 100644 --- a/源代码/StgSharp/Graphics/GL/GLonTimeout.cs +++ b/源代码/StgSharp/Graphics/GL/GLonTimeout.cs @@ -17,6 +17,8 @@ namespace StgSharp.Graphics FrameTimeoutException refreshSIgnal = new FrameTimeoutException(); FrameTimeoutException signal = new FrameTimeoutException("This frame is timeout"); + unsafe GLcontext* IglFunc.Context => throw signal; + private GLonTimeout() { } void IglFunc.ActiveTexture(uint type) => throw signal; diff --git a/源代码/StgSharp/Graphics/GL/GLonUpdate.cs b/源代码/StgSharp/Graphics/GL/GLonUpdate.cs index 2a04dc33..297dc721 100644 --- a/源代码/StgSharp/Graphics/GL/GLonUpdate.cs +++ b/源代码/StgSharp/Graphics/GL/GLonUpdate.cs @@ -20,8 +20,15 @@ namespace StgSharp.Graphics private static GLparamQueue paramQueue; private FrameTimeoutException refreshSignal = new(); + private GLcontext* api; + private IntPtr SwapBufferPtr = (IntPtr)(delegate*)&InternalIO.glfwSwapBuffers; + GLcontext* IglFunc.Context + { + get => api; + } + internal GLonUpdate(GLcontext* context) { if (paramQueue == null) @@ -29,6 +36,7 @@ namespace StgSharp.Graphics paramQueue = new GLparamQueue(); } glActionQueue = new ConcurrentQueue(); + api = context; } internal static GLparamQueue ParamQueue @@ -78,7 +86,7 @@ namespace StgSharp.Graphics { M128 m = default; m.UInt32[0] = (uint)bufferType; - m.IntPtr1 = handle.Handle; + m.UInt64[1] = (ulong)handle.Handle; paramQueue.Enqueue(m); glActionQueue.Enqueue(BindBufferPtr); } @@ -86,7 +94,8 @@ namespace StgSharp.Graphics [MethodImpl(MethodImplOptions.AggressiveInlining)] void IglFunc.BindTexture(uint type, glHandle texture) { - M128 m = new M128 { IntPtr1 = (IntPtr)texture.valuePtr }; + M128 m = default; + m.UInt64[1] = (ulong)texture.valuePtr; m.UInt32[0] = (uint)type; paramQueue.Enqueue(m); glActionQueue.Enqueue(BindTexturePtr); @@ -150,7 +159,7 @@ namespace StgSharp.Graphics { M128 m = default; glHandleSet h = new glHandleSet(count); - m.IntPtr0 = (IntPtr)h.handle; + m.UInt64[0] = (ulong)h.handle; m.Int32[2] = count; paramQueue.Enqueue(m); glActionQueue.Enqueue(CreateProgramSetPtr); @@ -194,7 +203,8 @@ namespace StgSharp.Graphics [MethodImpl(MethodImplOptions.AggressiveInlining)] unsafe void IglFunc.DeleteBuffer(glHandle handle) { - M128 m = new M128() { IntPtr0 = handle.Handle }; + M128 m = default; + m.UInt64[0] = (ulong)handle.Handle; m.UInt32[2] = 1; paramQueue.Enqueue(m); glActionQueue.Enqueue(DeleBufferPtr); @@ -204,14 +214,14 @@ namespace StgSharp.Graphics { M128 m = default; m.UInt32[2] = (uint)handle.length; - m.IntPtr0 = (IntPtr)handle.handle; + m.UInt64[0] = (ulong)handle.handle; paramQueue.Enqueue(m); glActionQueue.Enqueue(DeleBufferPtr); } unsafe void IglFunc.DeleteVertexArrays(glHandleSet arrays) { - M128 m = new() { IntPtr1 = (IntPtr)arrays.handle }; + M128 m = default; m.UInt64[1] = (ulong)arrays.handle; m.Int32[0] = arrays.length; paramQueue.Enqueue(m); glActionQueue.Enqueue(DeleteVertexArrayPtr); @@ -246,7 +256,7 @@ namespace StgSharp.Graphics unsafe glHandleSet IglFunc.GenBuffers(int count) { glHandleSet h = new glHandleSet(count); - M128 m = default; m.UInt32[2] = (uint)count; m.IntPtr0 = (IntPtr)h.handle; + M128 m = default; m.UInt32[2] = (uint)count; m.UInt64[0] = (ulong)h.handle; paramQueue.Enqueue(m); glActionQueue.Enqueue(GenBufferPtr); return h; @@ -255,7 +265,7 @@ namespace StgSharp.Graphics unsafe glHandleSet IglFunc.GenTextures(int count) { glHandleSet h = new glHandleSet(count); - M128 m = default; m.UInt32[2] = (uint)count; m.IntPtr0 = (IntPtr)h.handle; + M128 m = default; m.UInt32[2] = (uint)count; m.UInt64[0] = (ulong)h.handle; paramQueue.Enqueue(m); glActionQueue.Enqueue(GenTexturesPtr); return h; @@ -264,7 +274,7 @@ namespace StgSharp.Graphics unsafe glHandleSet IglFunc.GenVertexArrays(int count) { glHandleSet h = new glHandleSet(count); - M128 m = default; m.UInt32[2] = (uint)count; m.IntPtr0 = (IntPtr)h.handle; + M128 m = default; m.UInt32[2] = (uint)count; m.UInt64[0] = (ulong)h.handle; paramQueue.Enqueue(m); glActionQueue.Enqueue(GenTexturesPtr); return h; @@ -275,8 +285,8 @@ namespace StgSharp.Graphics { glSHandle h = glSHandle.Alloc(0); M128 m; - m.IntPtr0 = program.Handle; - m.IntPtr1 = GCHandle.Alloc(Encoding.UTF8.GetBytes(ptr)).AddrOfPinnedObject(); + m.UInt64[0] = (ulong)program.Handle; + m.UInt64[1] = (ulong)GCHandle.Alloc(Encoding.UTF8.GetBytes(ptr)).AddrOfPinnedObject(); paramQueue.Enqueue(m); paramQueue.Enqueue((IntPtr)h.valuePtr); glActionQueue.Enqueue(GetUniformLocationPtr); diff --git a/源代码/StgSharp/Graphics/GL/GLonUpdateInternal.cs b/源代码/StgSharp/Graphics/GL/GLonUpdateInternal.cs index 07b7852a..951600cd 100644 --- a/源代码/StgSharp/Graphics/GL/GLonUpdateInternal.cs +++ b/源代码/StgSharp/Graphics/GL/GLonUpdateInternal.cs @@ -57,14 +57,14 @@ namespace StgSharp.Graphics { M128 m = default; paramQueue.TryDequeue(out m); - paramQueue.context->glBindBuffer(m.UInt32[0], *(uint*)m.IntPtr1); + paramQueue.context->glBindBuffer(m.UInt32[0], *(uint*)m.UInt64[1]); } private static void InternalBindTexture() { M128 m = default; paramQueue.TryDequeue(out m); - paramQueue.context->glBindTexture(m.UInt32[0], *(uint*)m.IntPtr1); + paramQueue.context->glBindTexture(m.UInt32[0], *(uint*)m.UInt64[1]); } private static void InternalBindVertexArray() @@ -101,10 +101,10 @@ namespace StgSharp.Graphics for (int i = 0; i < count; i++) { paramQueue.TryDequeue(out shaderHandle, out codeHandle); - *(uint*)shaderHandle = InternalIO.InternalLoadShaderCode((byte*)codeHandle, type); + *(uint*)shaderHandle = InternalIO.InternalLoadShaderCode(paramQueue.context, (byte*)codeHandle, type); if (*(uint*)shaderHandle == 0) { - IntPtr logPtr = InternalIO.InternalReadLog(); + IntPtr logPtr = InternalIO.InternalReadSSCLog(); string log; try { @@ -146,13 +146,13 @@ namespace StgSharp.Graphics private static void InternalCreateProgramSet() { - IntPtr programHandle; + uint* programHandle; M128 m = default; paramQueue.TryDequeue(out m); - programHandle = m.IntPtr0; + programHandle = (uint*)m.UInt64[0]; for (int i = 0; i < m.Int32[2]; i++) { - *((uint*)programHandle + i) = paramQueue.context->glCreateProgram(); + *(programHandle + i) = paramQueue.context->glCreateProgram(); } } @@ -160,14 +160,14 @@ namespace StgSharp.Graphics { M128 m = default; paramQueue.TryDequeue(out m); - paramQueue.context->glDeleteBuffers(m.UInt32[2], (uint*)m.IntPtr0); + paramQueue.context->glDeleteBuffers(m.UInt32[2], (uint*)m.UInt64[0]); } private static void InternalDeleteVertexArrays() { M128 m = default; paramQueue.TryDequeue(out m); - paramQueue.context->glDeleteVertexArrays((uint)m.Int32[0], (uint*)m.IntPtr1); + paramQueue.context->glDeleteVertexArrays((uint)m.Int32[0], (uint*)m.UInt64[0]); } private static void InternalDrawElements() @@ -183,21 +183,21 @@ namespace StgSharp.Graphics { M128 m = default; paramQueue.TryDequeue(out m); - paramQueue.context->glGenBuffers(m.UInt32[2], (uint*)m.IntPtr0); + paramQueue.context->glGenBuffers(m.UInt32[2], (uint*)m.UInt64[0]); } private static void InternalGenTextures() { M128 m = default; paramQueue.TryDequeue(out m); - paramQueue.context->glGenTextures(m.UInt32[2], (uint*)m.IntPtr0); + paramQueue.context->glGenTextures(m.UInt32[2], (uint*)m.UInt64[0]); } private static void InternalGenVertexArrays() { M128 m = default; paramQueue.TryDequeue(out m); - paramQueue.context->glGenVertexArrays(m.UInt32[2], (uint*)m.IntPtr0); + paramQueue.context->glGenVertexArrays(m.UInt32[2], (uint*)m.UInt64[0]); } private static void InternalGetUniformLocation() diff --git a/源代码/StgSharp/Graphics/GL/ShaderEdit/Shader.cs b/源代码/StgSharp/Graphics/GL/ShaderEdit/Shader.cs index 2579f7c3..46a753a1 100644 --- a/源代码/StgSharp/Graphics/GL/ShaderEdit/Shader.cs +++ b/源代码/StgSharp/Graphics/GL/ShaderEdit/Shader.cs @@ -41,10 +41,10 @@ namespace StgSharp.Graphics /// /// Compile the vertex shader to be attached to this shader. /// - /// GLSL code of vertex shader. - public unsafe void Compile(ShaderType usage, params string[] code) + /// GLSL code of vertex shader. + public unsafe void Compile(params string[] code) { - glHandleSet.Copy(GL.CompileShader(usage, code), handle); + glHandleSet.Copy(GL.CompileShader(type, code), handle); } //TODO:写链接着色器的文档注释 @@ -59,6 +59,10 @@ namespace StgSharp.Graphics GL.AttachShader(target.handle, handle[index]); } + public override string ToString() + { + return $"This is a {type} shader, its shader handles are {handle.ToString()}."; + } } public class ShaderProgram @@ -78,11 +82,11 @@ namespace StgSharp.Graphics /// /// Link the shader to current context. /// - public void Link() + public unsafe void Link() { - if (InternalIO.InternalLinkShaderProgram(handle.Value) == 0) + if (InternalIO.InternalLinkShaderProgram(GL.Context, handle.Value) == 0) { - IntPtr logPtr = InternalIO.InternalReadLog(); + IntPtr logPtr = InternalIO.InternalReadSSCLog(); try { byte[] logByte = new byte[512]; @@ -143,6 +147,5 @@ namespace StgSharp.Graphics { GL.UseProgram(handle); } - } } diff --git a/源代码/StgSharp/Graphics/GL/ShaderEdit/Uniform.cs b/源代码/StgSharp/Graphics/GL/ShaderEdit/Uniform.cs index 83ccead6..36b94267 100644 --- a/源代码/StgSharp/Graphics/GL/ShaderEdit/Uniform.cs +++ b/源代码/StgSharp/Graphics/GL/ShaderEdit/Uniform.cs @@ -139,69 +139,111 @@ namespace StgSharp.Graphics internal unsafe partial class GLonUpdate { + private IntPtr UniformVal1fPtr = (IntPtr)(delegate*)&UniformVal1f; + private IntPtr UniformVal1fvPtr = (IntPtr)(delegate*)&UniformVal1fv; + private IntPtr UniformVal1iPtr = (IntPtr)(delegate*)&UniformVal1i; + private IntPtr UniformVal2fPtr = (IntPtr)(delegate*)&UniformVal2f; private IntPtr UniformVal3fPtr = (IntPtr)(delegate*)&UniformVal3f; - //TODO xontinue here - private static void UniformVal3f() - { + private IntPtr UniformVal4fPtr = (IntPtr)(delegate*)&UniformVal4f; - paramQueue. + unsafe void IglFunc.SetValue(Uniform uniform, float f0, float f1, float f2) + { + paramQueue.Enqueue((IntPtr)uniform.id.valuePtr); + paramQueue.Enqueue(f0, f1, f2); + glActionQueue.Enqueue(UniformVal3fPtr); } - unsafe void IglFunc.SetValue(Uniform uniform, float v0, float v1, float v2) + unsafe void IglFunc.SetValue(Uniform uniform, float f0, float f1) { - glActionQueue.Enqueue( - () => { api->glUniform3f(uniform.id, v0, v1, v2); } - ); + M128 m = default; + m.UInt64[0] = (ulong)uniform.id.valuePtr; + m.Single[2] = f0; m.Single[3] = f1; + paramQueue.Enqueue(m); + glActionQueue.Enqueue(UniformVal2fPtr); } - unsafe void IglFunc.SetValue(Uniform uniform, float v0, float v1) + unsafe void IglFunc.SetValue(Uniform uniform, float f0, float f1, float f2, float f3) { - glActionQueue.Enqueue( - () => { api->glUniform2f(uniform.id, v0, v1); } - ); - } - - unsafe void IglFunc.SetValue(Uniform uniform, float v0, float v1, float v2, float v3) - { - glActionQueue.Enqueue( - () => { api->glUniform4f(uniform.id, v0, v1, v2, v3); } - ); + paramQueue.Enqueue((IntPtr)uniform.id.valuePtr); + paramQueue.Enqueue(f0, f1, f2, f3); + glActionQueue.Enqueue(UniformVal4fPtr); } unsafe void IglFunc.SetValue(Uniform uniform, Vec4d vec) { - glActionQueue.Enqueue( - () => - { - Vec4d cache = vec; - api->glUniform1fv(uniform.id, 4, &cache); - } - ); + Vec4d m = vec; + paramQueue.Enqueue((IntPtr)uniform.id.valuePtr, (IntPtr)(Vec4d*)&m); + glActionQueue.Enqueue(UniformVal1fvPtr); } - unsafe void IglFunc.SetValue(Uniform uniform, float v0) + unsafe void IglFunc.SetValue(Uniform uniform, float f0) { - glActionQueue.Enqueue( - () => { api->glUniform1f(uniform.id, v0); } - ); + M128 m = default; + m.UInt64[0] = (ulong)uniform.id.valuePtr; + m.Single[2] = f0; + paramQueue.Enqueue(m); + glActionQueue.Enqueue(UniformVal1fPtr); } unsafe void IglFunc.SetValue(Uniform uniform, int i0) { - glActionQueue.Enqueue( - () => { api->glUniform1d(uniform.id, i0); } - ); + M128 m = default; + m.UInt64[0] = (ulong)uniform.id.valuePtr; + m.Int32[2] = i0; + paramQueue.Enqueue(m); + glActionQueue.Enqueue(UniformVal1fPtr); } unsafe void IglFunc.SetValue(Uniform uniform, Vec4d vec) { - glActionQueue.Enqueue( - () => - { - Vec4d cache = vec; - api->glUniform1fv(uniform.id, 4, &cache); - } - ); + Vec4d m = vec; + paramQueue.Enqueue((IntPtr)uniform.id.valuePtr, (IntPtr)(Vec4d*)&m); + glActionQueue.Enqueue(UniformVal1fvPtr); + } + + private static void UniformVal1f() + { + M128 m = default; + paramQueue.TryDequeue(out m); + paramQueue.context->glUniform1f(*(int*)m.UInt64[0], m.Single[2]); + } + + private static unsafe void UniformVal1fv() + { + M128 m = default; + paramQueue.TryDequeue(out m); + paramQueue.context->glUniform1fv(*(int*)m.UInt64[0], 4, (Vec4d*)m.UInt64[0]); + } + + private static void UniformVal1i() + { + M128 m = default; + paramQueue.TryDequeue(out m); + paramQueue.context->glUniform1i(*(int*)m.UInt64[0], m.Int32[2]); + } + + private static void UniformVal2f() + { + M128 m = default; + paramQueue.TryDequeue(out m); + paramQueue.context->glUniform2f(*(int*)m.UInt64[0], m.Single[2], m.Single[3]); + } + + private static void UniformVal3f() + { + IntPtr handle = IntPtr.Zero; + M128 m = default; + paramQueue.TryDequeue(out handle); + paramQueue.TryDequeue(out m); + paramQueue.context->glUniform3f(*(int*)handle, m.Single[0], m.Single[1], m.Single[2]); + } + private static void UniformVal4f() + { + IntPtr handle = IntPtr.Zero; + M128 m = default; + paramQueue.TryDequeue(out handle); + paramQueue.TryDequeue(out m); + paramQueue.context->glUniform4f(*(int*)handle, m.Single[0], m.Single[1], m.Single[2], m.Single[2]); } } } diff --git a/源代码/StgSharp/Graphics/GL/framework.cs b/源代码/StgSharp/Graphics/GL/framework.cs index b5effb92..85ede8f6 100644 --- a/源代码/StgSharp/Graphics/GL/framework.cs +++ b/源代码/StgSharp/Graphics/GL/framework.cs @@ -4,7 +4,10 @@ using System.Collections.Generic; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; - +using System.Text; +#if Windows +using Windows.Win32; +#endif namespace StgSharp { internal partial class InternalIO @@ -131,6 +134,8 @@ namespace StgSharp //[DllImport(InternalIO.SSC_libname, EntryPoint = "glfwCreateWindowSurface")] internal extern unsafe static VkResult glfwCreateWindowSurface(VkInstance instance, IntPtr window, VkAllocationCallbacks* allocator, VkSurfaceKHR* surface); #endregion + + } } diff --git a/源代码/StgSharp/Graphics/GL/glApiManager.cs b/源代码/StgSharp/Graphics/GL/glApiManager.cs index 707fd294..a1e08076 100644 --- a/源代码/StgSharp/Graphics/GL/glApiManager.cs +++ b/源代码/StgSharp/Graphics/GL/glApiManager.cs @@ -45,6 +45,14 @@ namespace StgSharp.Graphics IntPtr proc = loader("glGetString"); context->glGetString = (delegate*)proc; + if ((IntPtr)context->glGetString == IntPtr.Zero) + { +#if DEBUG + Console.WriteLine("Cannot load GL."); + throw new Exception("Cannot load gl"); +#endif + } + string coreVersion; if (context->glGetString(glVersion) == IntPtr.Zero) { diff --git a/源代码/StgSharp/Graphics/IglFunc.cs b/源代码/StgSharp/Graphics/IglFunc.cs index 939977b1..4635a5cb 100644 --- a/源代码/StgSharp/Graphics/IglFunc.cs +++ b/源代码/StgSharp/Graphics/IglFunc.cs @@ -298,5 +298,10 @@ namespace StgSharp.Graphics void Viewport(int x, int y, uint width, uint height); internal void SwitchContext(); + + internal unsafe GLcontext* Context + { + get; + } } } \ No newline at end of file diff --git a/源代码/StgSharp/Graphics/Image.cs b/源代码/StgSharp/Graphics/Image.cs index 22ec5807..f1ebbb74 100644 --- a/源代码/StgSharp/Graphics/Image.cs +++ b/源代码/StgSharp/Graphics/Image.cs @@ -30,13 +30,29 @@ namespace StgSharp.Graphics internal Image(ImageInfo information) { info = information; + int length = info.width * info.height * info.channel; + pixelArray = new byte[length]; Marshal.Copy( source: info.pixelPtr, destination: pixelArray, startIndex: 0, - length: info.width * info.height * info.channel + length: length ); - Marshal.FreeHGlobal(info.pixelPtr); + } + + internal byte[] PixelArray + { + get + { + if (pixelArray == null) + { + pixelArray = new byte[info.width * info.height * info.channel]; + Marshal.Copy(source: info.pixelPtr, destination: pixelArray, + startIndex: 0, length: info.width * info.height * info.channel); + Marshal.FreeHGlobal(info.pixelPtr); + } + return pixelArray; + } } public unsafe Image() diff --git a/源代码/StgSharp/Logic/glParamQueue.cs b/源代码/StgSharp/Logic/glParamQueue.cs index 9356d825..74af7188 100644 --- a/源代码/StgSharp/Logic/glParamQueue.cs +++ b/源代码/StgSharp/Logic/glParamQueue.cs @@ -58,9 +58,19 @@ namespace StgSharp.Logic m.UInt32[1] = u1; m.UInt32[2] = u2; paramQueue.Enqueue(m); - } + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Enqueue(float f0, float f1, float f2) + { + M128 m = default; + m.Single[0] = f0; + m.Single[1] = f1; + m.Single[2] = f2; + paramQueue.Enqueue(m); + } + + [MethodImpl(MethodImplOptions.AggressiveInlining)] public void Enqueue(float f0, float f1, float f2, float f3) { @@ -76,8 +86,8 @@ namespace StgSharp.Logic public void Enqueue(IntPtr p0, IntPtr p1) { M128 m = default; - m.IntPtr0 = p0; - m.IntPtr1 = p1; + m.UInt64[0] = (ulong)p0; + m.UInt64[1] = (ulong)p1; paramQueue.Enqueue(m); } @@ -85,7 +95,7 @@ namespace StgSharp.Logic public void Enqueue(IntPtr p) { M128 m = default; - m.IntPtr0 = p; + m.UInt64[0] = (ulong)p; paramQueue.Enqueue(m); } @@ -93,7 +103,7 @@ namespace StgSharp.Logic public void Enqueue(glHandle handle) { M128 m = default; - m.IntPtr0 = (IntPtr)handle.valuePtr; + m.UInt64[0] = (ulong)handle.valuePtr; paramQueue.Enqueue(m); } @@ -101,8 +111,8 @@ namespace StgSharp.Logic public void Enqueue(glHandle handle, glHandle handle1) { M128 m = default; - m.IntPtr0 = (IntPtr)handle.valuePtr; - m.IntPtr1 = (IntPtr)handle1.valuePtr; + m.UInt64[0] = (ulong)handle.valuePtr; + m.UInt64[1] = (ulong)handle1.valuePtr; paramQueue.Enqueue(m); } @@ -235,7 +245,7 @@ namespace StgSharp.Logic M128 ret; if (paramQueue.TryDequeue(out ret)) { - p = ret.IntPtr0; + p = (IntPtr)ret.UInt64[0]; } else { @@ -251,8 +261,8 @@ namespace StgSharp.Logic M128 ret; if (paramQueue.TryDequeue(out ret)) { - p0 = ret.IntPtr0; - p1 = ret.IntPtr1; + p0 = (IntPtr)ret.UInt64[0]; + p1 = (IntPtr)ret.UInt64[1]; } else { @@ -279,6 +289,23 @@ namespace StgSharp.Logic } } + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TryDequeue(out float f0, out float f1, out float f2) + { + M128 ret; + if (paramQueue.TryDequeue(out ret)) + { + f0 = ret.UInt32[0]; + f1 = ret.UInt32[1]; + f2 = ret.UInt32[2]; + } + else + { + InternalIO.InternalWriteLog("No param in buffer when calling gl function.", LogType.Error); + throw new Exception(); + } + } + [MethodImpl(MethodImplOptions.AggressiveInlining)] public void TryDequeue(out uint u0) { diff --git a/源代码/StgSharp/Math/Linear/vec4d.cs b/源代码/StgSharp/Math/Linear/vec4d.cs index 714f1196..63995026 100644 --- a/源代码/StgSharp/Math/Linear/vec4d.cs +++ b/源代码/StgSharp/Math/Linear/vec4d.cs @@ -22,11 +22,6 @@ namespace StgSharp.Math [FieldOffset(0)] internal fixed ushort UInt16[8]; [FieldOffset(0)] internal fixed uint UInt32[4]; [FieldOffset(0)] internal fixed ulong UInt64[2]; - - [FieldOffset(0)] internal IntPtr IntPtr0; - [FieldOffset(1)] internal IntPtr IntPtr1; - - } [StructLayout(LayoutKind.Explicit, Size = 16, Pack = 16)] diff --git a/源代码/StgSharp/Math/Scalar/Random.cs b/源代码/StgSharp/Math/Scalar/Random.cs index 59097bf7..f7dd4a1c 100644 --- a/源代码/StgSharp/Math/Scalar/Random.cs +++ b/源代码/StgSharp/Math/Scalar/Random.cs @@ -13,7 +13,7 @@ namespace StgSharp.Math #if DEBUG = 0.5f; #else - = Calc.Abs(System.DateTime.UtcNow.GetHashCode()); + = Abs(System.DateTime.UtcNow.GetHashCode()); #endif /// diff --git a/源代码/StgSharp/NativeMethods.txt b/源代码/StgSharp/NativeMethods.txt new file mode 100644 index 00000000..020ca06d --- /dev/null +++ b/源代码/StgSharp/NativeMethods.txt @@ -0,0 +1,37 @@ +WNDCLASSA +ChoosePixelFormat +CreateWindowEx +DefWindowProc +DescribePixelFormat +DestroyWindow +FreeLibrary +GetDC +GetEnhMetaFilePixelFormat +GetModuleHandle +GetPixelFormat +GetProcAddress +LoadCursor +LoadLibrary +PostQuitMessage +RegisterClass +RegisterClassA +ReleaseDC +SetPixelFormat +SwapBuffers +wglGetProcAddress +wglCreateContext +wglCreateLayerContext +wglCopyContext +wglDeleteContext +wglDescribeLayerPlane +wglGetCurrentContext +wglGetCurrentDC +wglGetLayerPaletteEntries +wglGetProcAddress +wglMakeCurrent +wglRealizeLayerPalette +wglSetLayerPaletteEntries +wglShareLists +wglSwapLayerBuffers +wglUseFontBitmaps +wglUseFontOutlines \ No newline at end of file diff --git a/源代码/StgSharp/StgSharp.csproj b/源代码/StgSharp/StgSharp.csproj index 329f4f48..2c040058 100644 --- a/源代码/StgSharp/StgSharp.csproj +++ b/源代码/StgSharp/StgSharp.csproj @@ -14,7 +14,7 @@ preview-all Library enable - Debug;Release;NoOps;RealDebug;Benchmark + Debug;Release;NoOps;RealDebug;Benchmark;Toollist @@ -22,7 +22,11 @@ - True + True + + + + True @@ -36,9 +40,15 @@ - True - embedded - 1701;1702;0649;1591;0169 + True + embedded + 1701;1702;0649;1591;0169 + + + + True + embedded + 1701;1702;0649;1591;0169 @@ -54,9 +64,15 @@ - embedded - True - 1701;1702;0649;1591;0169 + embedded + True + 1701;1702;0649;1591;0169 + + + + embedded + True + 1701;1702;0649;1591;0169 @@ -75,11 +91,28 @@ 1701;1702;0649;1591;0169 + + true + true + true + + + + Windows + + + OSX + + + Linux + - + + all + diff --git a/源代码/StgSharp/bin/x64/Debug/netstandard2.1/StgSharp.deps.json b/源代码/StgSharp/bin/x64/Debug/netstandard2.1/StgSharp.deps.json new file mode 100644 index 00000000..94d9af4b --- /dev/null +++ b/源代码/StgSharp/bin/x64/Debug/netstandard2.1/StgSharp.deps.json @@ -0,0 +1,152 @@ +{ + "runtimeTarget": { + "name": ".NETStandard,Version=v2.1/", + "signature": "" + }, + "compilationOptions": {}, + "targets": { + ".NETStandard,Version=v2.1": {}, + ".NETStandard,Version=v2.1/": { + "StgSharp/1.0.0": { + "dependencies": { + "Microsoft.CSharp": "4.7.0", + "Microsoft.Windows.CsWin32": "0.3.49-beta" + }, + "runtime": { + "StgSharp.dll": {} + } + }, + "Microsoft.CSharp/4.7.0": { + "runtime": { + "lib/netstandard2.0/Microsoft.CSharp.dll": { + "assemblyVersion": "4.0.5.0", + "fileVersion": "4.700.19.56404" + } + } + }, + "Microsoft.Windows.CsWin32/0.3.49-beta": { + "dependencies": { + "Microsoft.Windows.SDK.Win32Docs": "0.1.42-alpha", + "Microsoft.Windows.SDK.Win32Metadata": "55.0.45-preview", + "Microsoft.Windows.WDK.Win32Metadata": "0.9.9-experimental", + "System.Memory": "4.5.5", + "System.Runtime.CompilerServices.Unsafe": "6.0.0" + } + }, + "Microsoft.Windows.SDK.Win32Docs/0.1.42-alpha": {}, + "Microsoft.Windows.SDK.Win32Metadata/55.0.45-preview": {}, + "Microsoft.Windows.WDK.Win32Metadata/0.9.9-experimental": { + "dependencies": { + "Microsoft.Windows.SDK.Win32Metadata": "55.0.45-preview" + } + }, + "System.Buffers/4.5.1": { + "runtime": { + "lib/netstandard2.0/System.Buffers.dll": { + "assemblyVersion": "4.0.3.0", + "fileVersion": "4.6.28619.1" + } + } + }, + "System.Memory/4.5.5": { + "dependencies": { + "System.Buffers": "4.5.1", + "System.Numerics.Vectors": "4.4.0", + "System.Runtime.CompilerServices.Unsafe": "6.0.0" + }, + "runtime": { + "lib/netstandard2.0/System.Memory.dll": { + "assemblyVersion": "4.0.1.2", + "fileVersion": "4.6.31308.1" + } + } + }, + "System.Numerics.Vectors/4.4.0": { + "runtime": { + "lib/netstandard2.0/System.Numerics.Vectors.dll": { + "assemblyVersion": "4.1.3.0", + "fileVersion": "4.6.25519.3" + } + } + }, + "System.Runtime.CompilerServices.Unsafe/6.0.0": { + "runtime": { + "lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.21.52210" + } + } + } + } + }, + "libraries": { + "StgSharp/1.0.0": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Microsoft.CSharp/4.7.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==", + "path": "microsoft.csharp/4.7.0", + "hashPath": "microsoft.csharp.4.7.0.nupkg.sha512" + }, + "Microsoft.Windows.CsWin32/0.3.49-beta": { + "type": "package", + "serviceable": true, + "sha512": "sha512-/iAXplVDKESFyLz/MShuVYVx62YFvFePpq3qrzREl8KScQqG6Z2kV7r9UJTjQS1g+hfy3V+e4m1x9lsu24YNSg==", + "path": "microsoft.windows.cswin32/0.3.49-beta", + "hashPath": "microsoft.windows.cswin32.0.3.49-beta.nupkg.sha512" + }, + "Microsoft.Windows.SDK.Win32Docs/0.1.42-alpha": { + "type": "package", + "serviceable": true, + "sha512": "sha512-Z/9po23gUA9aoukirh2ItMU2ZS9++Js9Gdds9fu5yuMojDrmArvY2y+tq9985tR3cxFxpZO1O35Wjfo0khj5HA==", + "path": "microsoft.windows.sdk.win32docs/0.1.42-alpha", + "hashPath": "microsoft.windows.sdk.win32docs.0.1.42-alpha.nupkg.sha512" + }, + "Microsoft.Windows.SDK.Win32Metadata/55.0.45-preview": { + "type": "package", + "serviceable": true, + "sha512": "sha512-2i1kVIk8rMuMCYtoeYeWbmCRLqNgb63Berac3Gv+J/pjp0oucopasKgLQNslryhsgBl4xex9ENhJX2MXEW5vdA==", + "path": "microsoft.windows.sdk.win32metadata/55.0.45-preview", + "hashPath": "microsoft.windows.sdk.win32metadata.55.0.45-preview.nupkg.sha512" + }, + "Microsoft.Windows.WDK.Win32Metadata/0.9.9-experimental": { + "type": "package", + "serviceable": true, + "sha512": "sha512-cncPlxLqR25mFOuvpxZPgXgJqRmXyV5eTULj/9w8AQvO/c1xJDEapohRsWkYaia7hCR/EwEzBHr7RU9u93T03w==", + "path": "microsoft.windows.wdk.win32metadata/0.9.9-experimental", + "hashPath": "microsoft.windows.wdk.win32metadata.0.9.9-experimental.nupkg.sha512" + }, + "System.Buffers/4.5.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-Rw7ijyl1qqRS0YQD/WycNst8hUUMgrMH4FCn1nNm27M4VxchZ1js3fVjQaANHO5f3sN4isvP4a+Met9Y4YomAg==", + "path": "system.buffers/4.5.1", + "hashPath": "system.buffers.4.5.1.nupkg.sha512" + }, + "System.Memory/4.5.5": { + "type": "package", + "serviceable": true, + "sha512": "sha512-XIWiDvKPXaTveaB7HVganDlOCRoj03l+jrwNvcge/t8vhGYKvqV+dMv6G4SAX2NoNmN0wZfVPTAlFwZcZvVOUw==", + "path": "system.memory/4.5.5", + "hashPath": "system.memory.4.5.5.nupkg.sha512" + }, + "System.Numerics.Vectors/4.4.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==", + "path": "system.numerics.vectors/4.4.0", + "hashPath": "system.numerics.vectors.4.4.0.nupkg.sha512" + }, + "System.Runtime.CompilerServices.Unsafe/6.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-/iUeP3tq1S0XdNNoMz5C9twLSrM/TH+qElHkXWaPvuNOt+99G75NrV0OS2EqHx5wMN7popYjpc8oTjC1y16DLg==", + "path": "system.runtime.compilerservices.unsafe/6.0.0", + "hashPath": "system.runtime.compilerservices.unsafe.6.0.0.nupkg.sha512" + } + } +} \ No newline at end of file diff --git a/源代码/StgSharp/bin/x64/Debug/netstandard2.1/StgSharp.dll b/源代码/StgSharp/bin/x64/Debug/netstandard2.1/StgSharp.dll new file mode 100644 index 00000000..8991cb5d Binary files /dev/null and b/源代码/StgSharp/bin/x64/Debug/netstandard2.1/StgSharp.dll differ diff --git a/源代码/StgSharp/bin/x64/Debug/netstandard2.1/StgSharp.xml b/源代码/StgSharp/bin/x64/Debug/netstandard2.1/StgSharp.xml new file mode 100644 index 00000000..7333b66a --- /dev/null +++ b/源代码/StgSharp/bin/x64/Debug/netstandard2.1/StgSharp.xml @@ -0,0 +1,1448 @@ + + + + StgSharp + + + + + Get the status of a certain key on the keyboard. + + + + + + + + Function handler to load an opengl function by serching its name. + + the name of the Opengl function + An intptr value representing the pointer to the function + + + + + + + + + OpenGL package used by current form context. + + + + + Height of this form, represent in + + + + + Representing + + + + + Width of this form, represent in + + + + + Width of this form, represent in + + + + + Init an OpenGl context if current form has not been binded to any context. + and set the context binded to current form as current OpenGL context. + + Something goes wrong and + StgSharp fails in creating a new OpenGL context. + + + + Set all necessary metadata to current form instance + + + + + Resize the current form + + New width of the window + New height of the window + + + + Resize the current form + + + A (width,height) representing the new size of current form + + + + + Set the size limit of current form + + Minimum width of current form + Minimum height of current form + Maximum width of curent form + Maximum height of current form + + + + Set the size limit of current form + + + Minimun size of current form. In form of a of (width,height) + + + Maximum size of current form. In form of a of (width,height) + + + + + Necessary operation to init this form. + + + + + + Behaviour of current form when in a render cycle. + When this form + + + + + + Init this form and render it on screen, and respond with operation + + + + + Get OpenGL library of this form's context. + + A package contains all opengl APIs + + + + Define how current form render in one frame. + + + Please define this befor calling any OpenGL api and other graphic methods. + + + + + Create a set of . + + Amount of EBO to be created. + + + + + Create a set of . + + Amount of VAO to be crated. + + + + + Create a sets of + + Amount of textures to be crated. + + + + + Create aset of . + + Amount of Object to be created. + + + + + Create an instance of program + + New instance of instance. + + + + A timer counting frames after its construction. + + + + + Frames after this timer created. + + + + + Convert a into uint value. + this will get total frames since the timer was created. + + to be converted + + + + Interface of all kinds OpenGL buffer onjects + + + + + Get the only handle to one of the Object instance + + + + + + + Bind a buffer instance to OpenGL + + Index of handle of the object in this instance to be bind + + + + + + + A collecion of handle to Element Buffer Object in OpenGL. + Each value indexed from instance of this class this + is the only handle to one Element Buffer Object. + + + + + + + + + + + + Set data to current vertex buffer object + + Type of bufferData + Index to find certain VBO in this instance + Data to write in + How OpenGL use these data, defined by + + + + Set data to current vertex buffer object + + Type of bufferData + Index to find certain VBO in this instance + A array of data to write in + How OpenGL use these data, defined by + + + + + + + + + Load all aupportable OpenGL APIs and bind them to given context. + + The used as current OpenGL context + A delegate that can get o + + + + Get the function pointer of given OpenGL api name + + Name of the OpenGL api + The funtion pointer of the api in form of + + + + Compile the vertex shader to be attached to this shader. + + GLSL code of vertex shader. + + + + + + + + + + + Inti a shader with no program attached. + + + + + Link the shader to current context. + + + + + Get a uniform form current shader, + the value type of the uniform should be provided. + + Name of the Uniform in shader code + + + + + Get a uniform form current shader, + the value type of the uniform should be provided. + + Name of the Uniform in shader code + + + + + Get a uniform form current shader, + the value type of the uniform should be provided. + + Name of the Uniform in shader code + + + + + Let the current context use this shader. + + + + + Same function as OpenGL api glActiveTexture + + type of texture to activate + + + + Operation after alignment by calling . + No calling of this method is acceptable, but it will bring the risk + of that relevant code will not run if it is interrupted by frame overtime. + Please call this method immediately after calling , + too early or sonner may cause . + + The form used as frame update benchmark. + Operation after frame update alignment. + The action binded to a wrong alignment. + + + + Align a sets of code to frame update of a . + Usually, a call of is required. + This method is used as sigle thread method. If more than one + alignment is requested, a will throw. + + The form used as frame update benchmark. + More than one alingment attached to one form timer + + + + Same fucntion as OpenGL api glAttachShader. + Only the first in handle + will be attached to the first in handle. + The rest shader and program will be ignored. + + Shader program to be attachec + A shader part to attach + + + + Bind the indexed buffer object to certain type of buffer + + + + + + + Same function as OpenGL api, glBindTexture. + + Type of texture to bind + Sign of texture + + + + Same function as OpenGL api, glBindVertexArray + + + + + + Clear buffers to preset values + + + + + + Call apiClearColor in OpenGL + specifies the red, green, blue, and alpha values used by apiClear to clear the color buffers. + Values specified by apiClearColor are clamped to the range [0,1] + + Specify the red values used when the color buffers are cleared. + Specify the red values used when the color buffers are cleared. + Specify the red values used when the color buffers are cleared. + Specify the red values used when the color buffers are cleared. + + + + Conpile the provided shader code in string form. + + A string array contains all shaders' code + An enum represent the type of the shader to + conpile, including vertex shader and fragment shader. + An handle of conpiled shader + + + + Same function as OpenGL api, glCreateProgram + + A handle representing a single shader program + + + + Same function as OpenGL api, glCreateProgram. + Used for creating multiple shader program. + + A handle representing all shader programs + + + + Creates a form and its associated + + Required width + Required width + Tittle of the window + + + + + + + Same function as OpenGL api, glDeleteBuffer. This method can delete one buffer in one call + + a handle representing the buffer to be deleted + + + + Same function as OpenGL api, glDeleteBuffer. This method can delete a sets of buffers in one call. + + Array of buffers to be deleted + + + + Same function as OpenGL api, glDeleteVertexArrays + + Handle of vertex objects. + + + + + + + + + + + + + Same fucntion as the OpenGL api glGenBuffers + + + + + + + Same fucnction as OpenGL api glGenTextures. + + amount of textures to generate + + + + Same fucntion as OpenGL api, glGenVertexArray + + Amount of vao to be generated + + + + Same fucntion as OpenGL api, glGetUniformLocation + + Shader program to find the uniform + Name of the uniform + + + + + Make the OpenGL context of a certain as the activated OpenGL context. + + + + + + Set data value to a float , + all types of parameters are float. + + The target + The first value to be set + The second value to be set + The third value to be set + The forth value to be set + + + + Set data value to a float , + all types of parameters are float. + + The target + A packing four parameters of the uniform + + + + Set data value to a float , + all types of parameters are float. + + The target + The first value to be set + The second value to be set + The third value to be set + + + + Set data value to a float , + all types of parameters are float. + + The target + The first value to be set + The second value to be set + + + + Set data value to a float , + all types of parameters are float. + + The target + The value to be set + + + + Set data value to a int , + all types of parameters are int. + + The target + The value to be set + + + + Set data value to a float , + all types of parameters are . + + The target + A value of the uniform + + + + Set how a shader parameter read data from a VBO. + + Serial number of the parameter + Amount of data each elements contains + Type of data read by shader + + Pixels stride of each sets of data + + + + + Same function as OpenGL api glTexImage2d + + texture target to load image in + level of mipmap, 0 if default + OpenGL's internal color channel format + width of image + height of image + color channels of this image + how this image express each pixel + data array of pixels + + + + Same fucntion as OpenGL api glTexParameteri + + texture target to set parameters + name of parameter + value of parameter + + + + Same fucntion as OpenGL api glUseShader. + + Sign of program to be used + + + + Same function as the OpenGL api, glViewPort + + + + + + + + + A sensor used for cheking out if a bullet hit a player or something else + + + + + A 2D vector presenting the position of an enemy entity, position can also be visited by X, Y + + + + + X position of an enenmy entity + + + + + Y position of an enemy entity + + + + + Version of current StgSharp platform. + Main version represent in hundred's digit, + and sub version represent in ten's digit. + + + + + Init an instance of OpenGL program, + This method should be called before other + graphic methods, after LoadGL method. + + + + + Write a log message to log file, and mark the level of this message. + + A string contains information of how current evironment runs. + The severity of current message. + + + + Part of a circle. All points on a arc has the same distance to their center. + + + + + A collection of all point on the same plain and has the same distance to a point + + + + + The origin of this coordinate. + + + + + The horizontial axis of the coordinate. + Point to the right direction. + + + + + The vertical axis of the coordinate. + Point to the top direction. + + + + + 当几何体调用了过多的CalcVec方法时,产生UnusedVertexException异常 + + + + + Caculate the movement of a point. + + The game tick represent time passed by + A 3d vector representing movement + + + + Move begin side of a line. + It is recommended to override this function rather than + loading an with same function. + + Time passed since current line was created. + + + + Move end side of a line. + It is recommended to override this function rather than + loading an with same function. + + Time passed since current line was created. + + + + + Move the third vertix. this is a useless method for Parallelograms. + + Current time tick + + Geometry overdefined + + + + Move the third vertix. This method is useless for Parallelograms. + + Current time tick + + Geometry overdefined + + + + 平面几何体。包含三角形,对称四边形,自由多边形等。最多可由16个点参数定义。 + + + + + Tick time this geometry eas crested + + + + + Get all sides of this . + + A array contains all straight s of current geometry item. + + + + Get a flat cincide with current geometry. + + + + + + Update the coordinate of the point. If this is a moving point, + (Points on sides or surface if other geometry items) + please do not define any motion here, codes will be ignored by program + + Time passes since the program begin, counted by frames + + + + 计算中心点相对于参考原点的位移 + + 当前游戏刻 + + + + + A square + + + + + A linear data structure with dynamic length. + It contains a of , + each is twice longer than the former one. + + + + + + Init a with a certain amount of elements prepared. + + Amount of elements to be prepared. + + + + Create a new instance of , + and fill the begining ones of elemtns as given instance. + + Amount of beginning elements to be filled + + + + + Length of this + + + + + A pair of value + + + + + A value. + The lower byte is , + and higher byte is . + + + + + The first value. + + + + + The second value. + + + + + Whether this linked list has no members or not. + + + + + The first memeber of this linkec list. + Set value to this property will reset the first node. + + + + + The last memeber of this linkec list. + Set value to this property will reset the first node. + + + + + Add an item to the tail of linked list. + + The item ready to add to the list + + + + Remove all members from this list + + + + + Insert a member to current linkedlist, + the new member will be after a certain existed member. + + New member will be inserted after this member + The new member to be inserted + + + + Remove a member from this linkedlist. + + Member to be removed from this list + + + + remove the first member of the list + + + + + remove the last member of the list + + + + + OpenGL numeric type. + An IEEE-754 floating-point value, clamped to the range [0,1]. + + + + + OpenGL numeric type. + An IEEE-754 double precision floating-point value, clamped to the range [0,1]. + + + + + A two dimension vector defined by two elements. + Vec2Ds in StgSharp are defaultly usaed as colum vector. + + + + + Reurns the value of ArcSin(x) + + The sine value of the angle + + + + + + Get the value of E ^ x; + + + + + + + + + + + Returns the value of ln(x). + + + + + calculate the value of x^y + + + + Returns the value of x^y + + + + + + + + + + returns a random float number between 0 and 1. + + + + + + Generates a random seed in int value. + + + + + + A handle to an OpenGL object, + must be indexed from a . + Direct call will cause + + + + + A handle to an OpenGL object. + + + + + temporarily release the handle of GLhandle sets. + Please call method before indexing. + + + + + Realse all resource in this handle. + This will release all resource in this . + This will be not usable. + + + + The COLORREF value is used to specify an RGB color. + + When specifying an explicit [RGB](/windows/desktop/api/Wingdi/nf-wingdi-rgb) color, the **COLORREF** value has the following hexadecimal form: `0x00bbggrr` The low-order byte contains a value for the relative intensity of red; the second byte contains a value for green; and the third byte contains a value for blue. The high-order byte must be zero. The maximum value for a single byte is 0xFF. To create a **COLORREF** color value, use the [RGB](/windows/desktop/api/Wingdi/nf-wingdi-rgb) macro. To extract the individual values for the red, green, and blue components of a color value, use the [**GetRValue**](/windows/desktop/api/Wingdi/nf-wingdi-getrvalue), [GetGValue](/windows/desktop/api/Wingdi/nf-wingdi-getgvalue), and [GetBValue](/windows/desktop/api/Wingdi/nf-wingdi-getbvalue) macros, respectively. + Read more on docs.microsoft.com. + + + + + A pointer to a null-terminated, constant, ANSI character string. + + + + + A pointer to the first character in the string. The content should be considered readonly, as it was typed as constant in the SDK. + + + + + Gets the number of characters up to the first null character (exclusive). + + + + + Returns a with a copy of this character array, decoding as UTF-8. + + A , or if is . + + + + Returns a span of the characters in this string, up to the first null character (exclusive). + + + + The GLYPHMETRICSFLOAT structure contains information about the placement and orientation of a glyph in a character cell. + The values of GLYPHMETRICSFLOAT are specified as notional units. + + + Specifies the width of the smallest rectangle (the glyph's black box) that completely encloses the glyph. + + + Specifies the height of the smallest rectangle (the glyph's black box) that completely encloses the glyph. + + + Specifies the x and y coordinates of the upper-left corner of the smallest rectangle that completely encloses the glyph. + + + Specifies the horizontal distance from the origin of the current character cell to the origin of the next character cell. + + + Specifies the vertical distance from the origin of the current character cell to the origin of the next character cell. + + + The LAYERPLANEDESCRIPTOR structure describes the pixel format of a drawing surface. + Please notice, as documented above, that certain layer plane properties are not supported in the current implementation. The implementation is the Microsoft GDI software implementation of OpenGL. Hardware manufacturers that enhance parts of OpenGL may support some layer plane properties not supported by the generic implementation. + + + Specifies the size of this data structure. Set this value to sizeof(LAYERPLANEDESCRIPTOR). + + + Specifies the version of this data structure. Set this value to 1. + + + + A set of bit flags that specify properties of the layer plane. The properties are generally not mutually exclusive; any combination of bit flags can be set, with the exceptions noted. The following bit flag constants are defined. + This doc was truncated. + Read more on docs.microsoft.com. + + + + + Specifies the type of pixel data. The following types are defined. + This doc was truncated. + Read more on docs.microsoft.com. + + + + Specifies the number of color bitplanes in each color buffer. For RGBA pixel types, it is the size of the color buffer, excluding the alpha bitplanes. For color-index pixels, it is the size of the color-index buffer. + + + Specifies the number of red bitplanes in each RGBA color buffer. + + + Specifies the shift count for red bitplanes in each RGBA color buffer. + + + Specifies the number of green bitplanes in each RGBA color buffer. + + + Specifies the shift count for green bitplanes in each RGBA color buffer. + + + Specifies the number of blue bitplanes in each RGBA color buffer. + + + Specifies the shift count for blue bitplanes in each RGBA color buffer. + + + Specifies the number of alpha bitplanes in each RGBA color buffer. Alpha bitplanes are not supported. + + + Specifies the shift count for alpha bitplanes in each RGBA color buffer. Alpha bitplanes are not supported. + + + Specifies the total number of bitplanes in the accumulation buffer. + + + Specifies the number of red bitplanes in the accumulation buffer. + + + Specifies the number of green bitplanes in the accumulation buffer. + + + Specifies the number of blue bitplanes in the accumulation buffer. + + + Specifies the number of alpha bitplanes in the accumulation buffer. + + + Specifies the depth of the depth (z-axis) buffer. + + + Specifies the depth of the stencil buffer. + + + Specifies the number of auxiliary buffers. Auxiliary buffers are not supported. + + + + + + Not used. Must be zero. + + + When the LPD_TRANSPARENT flag is set, specifies the transparent color or index value. Typically the value is zero. + + + The PIXELFORMATDESCRIPTOR structure describes the pixel format of a drawing surface. + Please notice carefully, as documented above, that certain pixel format properties are not supported in the current generic implementation. The generic implementation is the Microsoft GDI software implementation of OpenGL. Hardware manufacturers may enhance parts of OpenGL, and may support some pixel format properties not supported by the generic implementation. + + + Specifies the size of this data structure. This value should be set to sizeof(PIXELFORMATDESCRIPTOR). + + + Specifies the version of this data structure. This value should be set to 1. + + + + A set of bit flags that specify properties of the pixel buffer. The properties are generally not mutually exclusive; you can set any combination of bit flags, with the exceptions noted. The following bit flag constants are defined. + This doc was truncated. + Read more on docs.microsoft.com. + + + + + Specifies the type of pixel data. The following types are defined. + This doc was truncated. + Read more on docs.microsoft.com. + + + + Specifies the number of color bitplanes in each color buffer. For RGBA pixel types, it is the size of the color buffer, excluding the alpha bitplanes. For color-index pixels, it is the size of the color-index buffer. + + + Specifies the number of red bitplanes in each RGBA color buffer. + + + Specifies the shift count for red bitplanes in each RGBA color buffer. + + + Specifies the number of green bitplanes in each RGBA color buffer. + + + Specifies the shift count for green bitplanes in each RGBA color buffer. + + + Specifies the number of blue bitplanes in each RGBA color buffer. + + + Specifies the shift count for blue bitplanes in each RGBA color buffer. + + + Specifies the number of alpha bitplanes in each RGBA color buffer. Alpha bitplanes are not supported. + + + Specifies the shift count for alpha bitplanes in each RGBA color buffer. Alpha bitplanes are not supported. + + + Specifies the total number of bitplanes in the accumulation buffer. + + + Specifies the number of red bitplanes in the accumulation buffer. + + + Specifies the number of green bitplanes in the accumulation buffer. + + + Specifies the number of blue bitplanes in the accumulation buffer. + + + Specifies the number of alpha bitplanes in the accumulation buffer. + + + Specifies the depth of the depth (z-axis) buffer. + + + Specifies the depth of the stencil buffer. + + + Specifies the number of auxiliary buffers. Auxiliary buffers are not supported. + + + Specifies the number of overlay and underlay planes. Bits 0 through 3 specify up to 15 overlay planes and bits 4 through 7 specify up to 15 underlay planes. + + + Ignored. Earlier implementations of OpenGL used this member, but it is no longer used. + + + Specifies the transparent color or index of an underlay plane. When the pixel type is RGBA, dwVisibleMask is a transparent RGB color value. When the pixel type is color index, it is a transparent index value. + + + Ignored. Earlier implementations of OpenGL used this member, but it is no longer used. + + + The POINTFLOAT structure contains the x and y coordinates of a point. + + Learn more about this API from docs.microsoft.com. + + + + Specifies the horizontal (x) coordinate of a point. + + + Specifies the vertical (y) coordinate of a point. + + + + Contains extern methods from "GDI32.dll". + + + Contains extern methods from "OPENGL32.dll". + + + + + + + The ChoosePixelFormat function attempts to match an appropriate pixel format supported by a device context to a given pixel format specification. + Specifies the device context that the function examines to determine the best match for the pixel format descriptor pointed to by ppfd. + + Pointer to a PIXELFORMATDESCRIPTOR structure that specifies the requested pixel format. In this context, the members of the PIXELFORMATDESCRIPTOR structure that ppfd points to are used as follows: + This doc was truncated. + Read more on docs.microsoft.com. + + + If the function succeeds, the return value is a pixel format index (one-based) that is the closest match to the given pixel format descriptor. If the function fails, the return value is zero. To get extended error information, call GetLastError. + + You must ensure that the pixel format matched by the ChoosePixelFormat function satisfies your requirements. For example, if you request a pixel format with a 24-bit RGB color buffer but the device context offers only 8-bit RGB color buffers, the function returns a pixel format with an 8-bit RGB color buffer. + + + The DescribePixelFormat function obtains information about the pixel format identified by iPixelFormat of the device associated with hdc. The function sets the members of the PIXELFORMATDESCRIPTOR structure pointed to by ppfd with that pixel format data. + Specifies the device context. + Index that specifies the pixel format. The pixel formats that a device context supports are identified by positive one-based integer indexes. + The size, in bytes, of the structure pointed to by ppfd. The DescribePixelFormat function stores no more than nBytes bytes of data to that structure. Set this value to sizeof(PIXELFORMATDESCRIPTOR). + Pointer to a PIXELFORMATDESCRIPTOR structure whose members the function sets with pixel format data. The function stores the number of bytes copied to the structure in the structure's nSize member. If, upon entry, ppfd is NULL, the function writes no data to the structure. This is useful when you only want to obtain the maximum pixel format index of a device context. + + If the function succeeds, the return value is the maximum pixel format index of the device context. In addition, the function sets the members of the PIXELFORMATDESCRIPTOR structure pointed to by ppfd according to the specified pixel format. If the function fails, the return value is zero. To get extended error information, call GetLastError. + + + Learn more about this API from docs.microsoft.com. + + + + The DeleteEnhMetaFile function deletes an enhanced-format metafile or an enhanced-format metafile handle. + A handle to an enhanced metafile. + + If the function succeeds, the return value is nonzero. If the function fails, the return value is zero. + + If the hemf parameter identifies an enhanced metafile stored in memory, the DeleteEnhMetaFile function deletes the metafile. If hemf identifies a metafile stored on a disk, the function deletes the metafile handle but does not destroy the actual metafile. An application can retrieve the file by calling the GetEnhMetaFile function. + + + + + + The GetEnhMetaFilePixelFormat function retrieves pixel format information for an enhanced metafile. + Identifies the enhanced metafile. + Specifies the size, in bytes, of the buffer into which the pixel format information is copied. + Pointer to a PIXELFORMATDESCRIPTOR structure that contains the logical pixel format specification. The metafile uses this structure to record the logical pixel format specification. + + If the function succeeds and finds a pixel format, the return value is the size of the metafile's pixel format. If no pixel format is present, the return value is zero. If an error occurs and the function fails, the return value is GDI_ERROR. To get extended error information, call GetLastError. + + + When an enhanced metafile specifies a pixel format in its ENHMETAHEADER structure and the pixel format fits in the buffer, the pixel format information is copied into ppfd. When cbBuffer is too small to contain the pixel format of the metafile, the pixel format is not copied to the buffer. In either case, the function returns the size of the metafile's pixel format. For information on metafile recording and other operations, see Enhanced Metafile Operations. + Read more on docs.microsoft.com. + + + + The GetPixelFormat function obtains the index of the currently selected pixel format of the specified device context. + Specifies the device context of the currently selected pixel format index returned by the function. + + If the function succeeds, the return value is the currently selected pixel format index of the specified device context. This is a positive, one-based index value. If the function fails, the return value is zero. To get extended error information, call GetLastError. + + + Learn more about this API from docs.microsoft.com. + + + + + + + The SetPixelFormat function sets the pixel format of the specified device context to the format specified by the iPixelFormat index. + Specifies the device context whose pixel format the function attempts to set. + Index that identifies the pixel format to set. The various pixel formats supported by a device context are identified by one-based indexes. + Pointer to a PIXELFORMATDESCRIPTOR structure that contains the logical pixel format specification. The system's metafile component uses this structure to record the logical pixel format specification. The structure has no other effect upon the behavior of the SetPixelFormat function. + + If the function succeeds, the return value is TRUE. If the function fails, the return value is FALSE. To get extended error information, call GetLastError. + + + If hdc references a window, calling the SetPixelFormat function also changes the pixel format of the window. Setting the pixel format of a window more than once can lead to significant complications for the Window Manager and for multithread applications, so it is not allowed. An application can only set the pixel format of a window one time. Once a window's pixel format is set, it cannot be changed. You should select a pixel format in the device context before calling the wglCreateContext function. The wglCreateContext function creates a rendering context for drawing on the device in the selected pixel format of the device context. An OpenGL window has its own pixel format. Because of this, only device contexts retrieved for the client area of an OpenGL window are allowed to draw into the window. As a result, an OpenGL window should be created with the WS_CLIPCHILDREN and WS_CLIPSIBLINGS styles. Additionally, the window class attribute should not include the CS_PARENTDC style. + Read more on docs.microsoft.com. + + + + The SwapBuffers function exchanges the front and back buffers if the current pixel format for the window referenced by the specified device context includes a back buffer. + + If the function succeeds, the return value is TRUE. If the function fails, the return value is FALSE. To get extended error information, call GetLastError. + + + If the current pixel format for the window referenced by the device context does not include a back buffer, this call has no effect and the content of the back buffer is undefined when the function returns. With multithread applications, flush the drawing commands in any other threads drawing to the same window before calling SwapBuffers. + Read more on docs.microsoft.com. + + + + The wglDeleteContext function deletes a specified OpenGL rendering context. + + If the function succeeds, the return value is TRUE. If the function fails, the return value is FALSE. To get extended error information, call GetLastError. + + + It is an error to delete an OpenGL rendering context that is the current context of another thread. However, if a rendering context is the calling thread's current context, the wglDeleteContext function changes the rendering context to being not current before deleting it. The wglDeleteContext function does not delete the device context associated with the OpenGL rendering context when you call the wglMakeCurrent function. After calling wglDeleteContext, you must call DeleteDC to delete the associated device context. + Read more on docs.microsoft.com. + + + + + + + The wglCreateContext function creates a new OpenGL rendering context, which is suitable for drawing on the device referenced by hdc. The rendering context has the same pixel format as the device context. + + If the function succeeds, the return value is a valid handle to an OpenGL rendering context. If the function fails, the return value is NULL. To get extended error information, call GetLastError. + + + A rendering context is not the same as a device context. Set the pixel format of the device context before creating a rendering context. For more information on setting the device context's pixel format, see the SetPixelFormat function. To use OpenGL, you create a rendering context, select it as a thread's current rendering context, and then call OpenGL functions. When you are finished with the rendering context, you dispose of it by calling the wglDeleteContext function. The following code example shows wglCreateContext usage. + + This doc was truncated. + Read more on docs.microsoft.com. + + + + + + + The wglCreateLayerContext function creates a new OpenGL rendering context for drawing to a specified layer plane on a device context. + + If the function succeeds, the return value is a handle to an OpenGL rendering context. If the function fails, the return value is NULL. To get extended error information, call GetLastError. + + + A rendering context is a port through which all OpenGL commands pass. Every thread that makes OpenGL calls must have one current, active rendering context. A rendering context is not the same as a device context; a rendering context contains information specific to OpenGL, while a device context contains information specific to GDI. Before you create a rendering context, set the pixel format of the device context with the SetPixelFormat function. You can use a rendering context in a specified layer plane of a window with identical pixel formats only. With OpenGL applications that use multiple threads, you create a rendering context, select it as the current rendering context of a thread, and make OpenGL calls for the specified thread. When you are finished with the rendering context of the thread, call the wglDeleteContext function. + Read more on docs.microsoft.com. + + + + + + + The wglCopyContext function copies selected groups of rendering states from one OpenGL rendering context to another. + If the function succeeds, the return value is TRUE. If the function fails, the return value is FALSE. To get extended error information, call GetLastError. + + Using the wglCopyContext function, you can synchronize the rendering state of two rendering contexts. You can only copy the rendering state between two rendering contexts within the same process. The rendering contexts must be from the same OpenGL implementation. For example, you can always copy a rendering state between two rendering contexts with identical pixel format in the same process. You can copy the same state information available only with the glPushAttrib function. You cannot copy some state information, such as pixel pack/unpack state, render mode state, select state, and feedback state. When you call wglCopyContext, make sure that the destination rendering context, hglrcDst, is not current to any thread. + Read more on docs.microsoft.com. + + + + + + + The wglDescribeLayerPlane function obtains information about the layer planes of a given pixel format. + + If the function succeeds, the return value is TRUE. In addition, the wglDescribeLayerPlane function sets the members of the LAYERPLANEDESCRIPTOR structure pointed to by plpd according to the specified layer plane (iLayerPlane ) of the specified pixel format (iPixelFormat ). If the function fails, the return value is FALSE. + + The numbering of planes (iLayerPlane ) determines their order. Higher-numbered planes overlay lower-numbered planes. + + + + + + The wglGetCurrentContext function obtains a handle to the current OpenGL rendering context of the calling thread. + If the calling thread has a current OpenGL rendering context, wglGetCurrentContext returns a handle to that rendering context. Otherwise, the return value is NULL. + The current OpenGL rendering context of a thread is associated with a device context by means of the wglMakeCurrent function. You can use the wglGetCurrentDC function to obtain a handle to the device context associated with the current OpenGL rendering context. + + + The wglGetCurrentDC function obtains a handle to the device context that is associated with the current OpenGL rendering context of the calling thread. + If the calling thread has a current OpenGL rendering context, the function returns a handle to the device context associated with that rendering context by means of the wglMakeCurrent function. Otherwise, the return value is NULL. + You associate a device context with an OpenGL rendering context when it calls the wglMakeCurrent function. You can use the wglGetCurrentContext function to obtain a handle to the calling thread's current OpenGL rendering context. + + + + + + Retrieves the palette entries from a given color-index layer plane for a specified device context. + + Type: int If the function succeeds, the return value is the number of entries that were set in the palette in the specified layer plane of the window. If the function fails or when no pixel format is selected, the return value is zero. To get extended error information, call GetLastError. + + + Each color-index layer plane in a window has a palette with a size 2^n, where n is the number of bit planes in the layer plane. You cannot modify the transparent index of a palette. Use the wglRealizeLayerPalette function to realize the layer palette. Initially the layer palette contains only entries for white. + Read more on docs.microsoft.com. + + + + + + + The wglGetProcAddress function returns the address of an OpenGL extension function for use with the current OpenGL rendering context. + + When the function succeeds, the return value is the address of the extension function. When no current rendering context exists or the function fails, the return value is NULL. To get extended error information, call GetLastError. + + + The OpenGL library supports multiple implementations of its functions. Extension functions supported in one rendering context are not necessarily available in a separate rendering context. Thus, for a given rendering context in an application, use the function addresses returned by the wglGetProcAddress function only. The spelling and the case of the extension function pointed to by lpszProc must be identical to that of a function supported and implemented by OpenGL. Because extension functions are not exported by OpenGL, you must use wglGetProcAddress to get the addresses of vendor-specific extension functions. The extension function addresses are unique for each pixel format. All rendering contexts of a given pixel format share the same extension function addresses. + Read more on docs.microsoft.com. + + + + + + + The wglMakeCurrent function makes a specified OpenGL rendering context the calling thread's current rendering context. + When the wglMakeCurrent function succeeds, the return value is TRUE; otherwise the return value is FALSE. To get extended error information, call GetLastError. + + The hdc parameter must refer to a drawing surface supported by OpenGL. It need not be the same hdc that was passed to wglCreateContext when hglrc was created, but it must be on the same device and have the same pixel format. GDI transformation and clipping in hdc are not supported by the rendering context. The current rendering context uses the hdc device context until the rendering context is no longer current. Before switching to the new rendering context, OpenGL flushes any previous rendering context that was current to the calling thread. A thread can have one current rendering context. A process can have multiple rendering contexts by means of multithreading. A thread must set a current rendering context before calling any OpenGL functions. Otherwise, all OpenGL calls are ignored. A rendering context can be current to only one thread at a time. You cannot make a rendering context current to multiple threads. An application can perform multithread drawing by making different rendering contexts current to different threads, supplying each thread with its own rendering context and device context. If an error occurs, the wglMakeCurrent function makes the thread's current rendering context not current before returning. + Read more on docs.microsoft.com. + + + + The wglRealizeLayerPalette function maps palette entries from a given color-index layer plane into the physical palette or initializes the palette of an RGBA layer plane. + If the function succeeds, the return value is TRUE, even if bRealize is TRUE and the physical palette is not available. If the function fails or when no pixel format is selected, the return value is FALSE. To get extended error information, call GetLastError. + + The physical palette for a layer plane is a shared resource among windows with layer planes. When more than one window attempts to realize a palette for a given physical layer plane, only one palette at a time is realized. When you call the wglRealizeLayerPalette function, the layer palette of a foreground window is always realized first. When a window's layer palette is realized, its palette entries are always mapped one-to-one into the physical palette. Unlike GDI logical palettes, with wglRealizeLayerPalette there is no mapping of other windows' layer palettes to the current physical palette. Whenever a window becomes the foreground window, call wglRealizeLayerPalette to realize its layer palettes again, even if the pixel type of the layer plane is RGBA. Because wglRealizeLayerPalette doesn't realize the palette of the main plane, use GDI palette functions to realize the main plane palette. + Read more on docs.microsoft.com. + + + + + + + Sets the palette entries in a given color-index layer plane for a specified device context. + + Type: int If the function succeeds, the return value is the number of entries that were set in the palette in the specified layer plane of the window. If the function fails or no pixel format is selected, the return value is zero. To get extended error information, call GetLastError. + + + Each color-index plane in a window has a palette with a size 2^n, where n is the number of bit planes in the layer plane. You cannot modify the transparent index of a palette. Use the wglRealizeLayerPalette function to realize the layer palette. Initially the layer palette contains only entries for white. The wglSetLayerPaletteEntries function doesn't set the palette entries of the main plane palette. To update the main plane palette, use GDI palette functions. + Read more on docs.microsoft.com. + + + + + + + The wglShareLists function enables multiple OpenGL rendering contexts to share a single display-list space. + + When the function succeeds, the return value is TRUE. When the function fails, the return value is FALSE and the display lists are not shared. To get extended error information, call GetLastError. + + + When you create an OpenGL rendering context, it has its own display-list space. The wglShareLists function enables a rendering context to share the display-list space of another rendering context; any number of rendering contexts can share a single display-list space. Once a rendering context shares a display-list space, the rendering context always uses the display-list space until the rendering context is deleted. When the last rendering context of a shared display-list space is deleted, the shared display-list space is deleted. All the indexes and definitions of display lists in a shared display-list space are shared. You can only share display lists with rendering contexts within the same process. However, not all rendering contexts in a process can share display lists. Rendering contexts can share display lists only if they use the same implementation of OpenGL functions. All client rendering contexts of a given pixel format can always share display lists. All rendering contexts of a shared display list must use an identical pixel format. Otherwise the results depend on the implementation of OpenGL used.
Note  The wglShareLists function is only available with OpenGL version 1.01 or later. To determine the version number of the implementation of OpenGL, call glGetString.
 
+ Read more on docs.microsoft.com. +
+
+ + The wglSwapLayerBuffers function swaps the front and back buffers in the overlay, underlay, and main planes of the window referenced by a specified device context. + If the function succeeds, the return value is TRUE. If the function fails, the return value is FALSE. To get extended error information, call GetLastError. + + When a layer plane doesn't include a back buffer, calling the wglSwapLayerBuffers function has no effect on that layer plane. After you call wglSwapLayerBuffers, the state of the back buffer content is given in the corresponding LAYERPLANEDESCRIPTOR structure of the layer plane or in the PIXELFORMATDESCRIPTOR structure of the main plane. The wglSwapLayerBuffers function swaps the front and back buffers in the specified layer planes simultaneously. Some devices don't support swapping layer planes individually; they swap all layer planes as a group. When the PFD_SWAP_LAYER_BUFFERS flag of the PIXELFORMATDESCRIPTOR structure is set, it indicates that a device can swap individual layer planes and that you can call wglSwapLayerBuffers. With applications that use multiple threads, before calling wglSwapLayerBuffers, clear all drawing commands in all threads drawing to the same window. + Read more on docs.microsoft.com. + + + + The wglUseFontBitmaps function creates a set of bitmap display lists for use in the current OpenGL rendering context. (Unicode) + + If the function succeeds, the return value is TRUE. If the function fails, the return value is FALSE. To get extended error information, call GetLastError. + + + The wglUseFontBitmaps function defines count display lists in the current OpenGL rendering context. Each display list has an identifying number, starting at listBase. Each display list consists of a single call to glBitmap. The definition of bitmap listBase + i is taken from the glyph first + i of the font currently selected in the device context specified by hdc. If a glyph is not defined, then the function defines an empty display list for it. The wglUseFontBitmaps function creates bitmap text in the plane of the screen. It enables the labeling of objects in OpenGL. In the current version of Microsoft's implementation of OpenGL, you cannot make GDI calls to a device context that has a double-buffered pixel format. Therefore, you cannot use the GDI fonts and text functions with such device contexts. You can use the wglUseFontBitmaps function to circumvent this limitation and draw text in a double-buffered device context. The function determines the parameters of each call to glBitmap as follows. + This doc was truncated. + Read more on docs.microsoft.com. + + + + + + + The wglUseFontOutlines function creates a set of display lists, one for each glyph of the currently selected outline font of a device context, for use with the current rendering context. (Unicode) + + When the function succeeds, the return value is TRUE. When the function fails, the return value is FALSE and no display lists are generated. To get extended error information, call GetLastError. + + + The wglUseFontOutlines function defines the glyphs of an outline font with display lists in the current rendering context. The wglUseFontOutlines function works with TrueType fonts only; stroke and raster fonts are not supported. Each display list consists of either line segments or polygons, and has a unique identifying number starting with the listBase number. The wglUseFontOutlines function approximates glyph outlines by subdividing the quadratic B-spline curves of the outline into line segments, until the distance between the outline and the interpolated midpoint is within the value specified by deviation. This is the final format used when format is WGL_FONT_LINES. When you specify WGL_FONT_OUTLINES, the display lists created don't contain any normals; thus lighting doesn't work properly. To get the correct lighting of lines use WGL_FONT_POLYGONS and set glPolygonMode( GL_FRONT, GL_LINE ). When you specify format as WGL_FONT_POLYGONS the outlines are further tessellated into separate triangles, triangle fans, triangle strips, or quadrilateral strips to create the surface of each glyph. With WGL_FONT_POLYGONS, the created display lists call glFrontFace( GL_CW ) or glFrontFace( GL_CCW ); thus the current front-face value might be altered. For the best appearance of text with WGL_FONT_POLYGONS, cull the back faces as follows: + + This doc was truncated. + Read more on docs.microsoft.com. + + + + + Represents a Win32 handle that can be closed with . + + +
+
diff --git a/源代码/StgSharp/obj/StgSharp.csproj.nuget.dgspec.json b/源代码/StgSharp/obj/StgSharp.csproj.nuget.dgspec.json index 091a1eaa..2ad40cba 100644 --- a/源代码/StgSharp/obj/StgSharp.csproj.nuget.dgspec.json +++ b/源代码/StgSharp/obj/StgSharp.csproj.nuget.dgspec.json @@ -45,13 +45,14 @@ "netstandard2.1": { "targetAlias": "netstandard2.1", "dependencies": { - "Microsoft.Bcl.HashCode": { - "target": "Package", - "version": "[1.1.1, )" - }, "Microsoft.CSharp": { "target": "Package", "version": "[4.7.0, )" + }, + "Microsoft.Windows.CsWin32": { + "suppressParent": "All", + "target": "Package", + "version": "[0.3.49-beta, )" } }, "imports": [ diff --git a/源代码/StgSharp/obj/StgSharp.csproj.nuget.g.props b/源代码/StgSharp/obj/StgSharp.csproj.nuget.g.props index 0d4f25bf..70135f16 100644 --- a/源代码/StgSharp/obj/StgSharp.csproj.nuget.g.props +++ b/源代码/StgSharp/obj/StgSharp.csproj.nuget.g.props @@ -13,4 +13,13 @@
+ + + + + + + + C:\Users\Nitlo\.nuget\packages\microsoft.windows.cswin32\0.3.49-beta + \ No newline at end of file diff --git a/源代码/StgSharp/obj/project.assets.json b/源代码/StgSharp/obj/project.assets.json index f82c5bbb..66899e7a 100644 --- a/源代码/StgSharp/obj/project.assets.json +++ b/源代码/StgSharp/obj/project.assets.json @@ -2,17 +2,6 @@ "version": 3, "targets": { ".NETStandard,Version=v2.1": { - "Microsoft.Bcl.HashCode/1.1.1": { - "type": "package", - "compile": { - "ref/netstandard2.1/Microsoft.Bcl.HashCode.dll": {} - }, - "runtime": { - "lib/netstandard2.1/Microsoft.Bcl.HashCode.dll": { - "related": ".xml" - } - } - }, "Microsoft.CSharp/4.7.0": { "type": "package", "compile": { @@ -25,38 +14,111 @@ "related": ".xml" } } + }, + "Microsoft.Windows.CsWin32/0.3.49-beta": { + "type": "package", + "dependencies": { + "Microsoft.Windows.SDK.Win32Docs": "0.1.42-alpha", + "Microsoft.Windows.SDK.Win32Metadata": "55.0.45-preview", + "Microsoft.Windows.WDK.Win32Metadata": "0.9.9-experimental", + "System.Memory": "4.5.5", + "System.Runtime.CompilerServices.Unsafe": "6.0.0" + }, + "build": { + "build/netstandard1.0/Microsoft.Windows.CsWin32.props": {} + } + }, + "Microsoft.Windows.SDK.Win32Docs/0.1.42-alpha": { + "type": "package", + "compile": { + "lib/netstandard2.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/_._": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netstandard1.0/Microsoft.Windows.SDK.Win32Docs.props": {} + } + }, + "Microsoft.Windows.SDK.Win32Metadata/55.0.45-preview": { + "type": "package", + "build": { + "buildTransitive/netstandard1.0/Microsoft.Windows.SDK.Win32Metadata.props": {} + } + }, + "Microsoft.Windows.WDK.Win32Metadata/0.9.9-experimental": { + "type": "package", + "dependencies": { + "Microsoft.Windows.SDK.Win32Metadata": "55.0.45-preview" + }, + "build": { + "buildTransitive/netstandard1.0/Microsoft.Windows.WDK.Win32Metadata.props": {} + } + }, + "System.Buffers/4.5.1": { + "type": "package", + "compile": { + "ref/netstandard2.0/System.Buffers.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/System.Buffers.dll": { + "related": ".xml" + } + } + }, + "System.Memory/4.5.5": { + "type": "package", + "dependencies": { + "System.Buffers": "4.5.1", + "System.Numerics.Vectors": "4.4.0", + "System.Runtime.CompilerServices.Unsafe": "4.5.3" + }, + "compile": { + "lib/netstandard2.0/System.Memory.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/System.Memory.dll": { + "related": ".xml" + } + } + }, + "System.Numerics.Vectors/4.4.0": { + "type": "package", + "compile": { + "ref/netstandard2.0/System.Numerics.Vectors.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/System.Numerics.Vectors.dll": { + "related": ".xml" + } + } + }, + "System.Runtime.CompilerServices.Unsafe/6.0.0": { + "type": "package", + "compile": { + "lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.dll": { + "related": ".xml" + } + } } } }, "libraries": { - "Microsoft.Bcl.HashCode/1.1.1": { - "sha512": "MalY0Y/uM/LjXtHfX/26l2VtN4LDNZ2OE3aumNOHDLsT4fNYy2hiHXI4CXCqKpNUNm7iJ2brrc4J89UdaL56FA==", - "type": "package", - "path": "microsoft.bcl.hashcode/1.1.1", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "THIRD-PARTY-NOTICES.TXT", - "lib/net461/Microsoft.Bcl.HashCode.dll", - "lib/net461/Microsoft.Bcl.HashCode.xml", - "lib/netcoreapp2.1/Microsoft.Bcl.HashCode.dll", - "lib/netcoreapp2.1/Microsoft.Bcl.HashCode.xml", - "lib/netstandard2.0/Microsoft.Bcl.HashCode.dll", - "lib/netstandard2.0/Microsoft.Bcl.HashCode.xml", - "lib/netstandard2.1/Microsoft.Bcl.HashCode.dll", - "lib/netstandard2.1/Microsoft.Bcl.HashCode.xml", - "microsoft.bcl.hashcode.1.1.1.nupkg.sha512", - "microsoft.bcl.hashcode.nuspec", - "ref/net461/Microsoft.Bcl.HashCode.dll", - "ref/netcoreapp2.1/Microsoft.Bcl.HashCode.dll", - "ref/netstandard2.0/Microsoft.Bcl.HashCode.dll", - "ref/netstandard2.1/Microsoft.Bcl.HashCode.dll", - "useSharedDesignerContext.txt", - "version.txt" - ] - }, "Microsoft.CSharp/4.7.0": { "sha512": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==", "type": "package", @@ -125,12 +187,219 @@ "useSharedDesignerContext.txt", "version.txt" ] + }, + "Microsoft.Windows.CsWin32/0.3.49-beta": { + "sha512": "/iAXplVDKESFyLz/MShuVYVx62YFvFePpq3qrzREl8KScQqG6Z2kV7r9UJTjQS1g+hfy3V+e4m1x9lsu24YNSg==", + "type": "package", + "path": "microsoft.windows.cswin32/0.3.49-beta", + "hasTools": true, + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "NOTICE.txt", + "README.md", + "analyzers/cs/MessagePack.Annotations.dll", + "analyzers/cs/MessagePack.dll", + "analyzers/cs/Microsoft.Bcl.AsyncInterfaces.dll", + "analyzers/cs/Microsoft.Windows.CsWin32.dll", + "analyzers/cs/Microsoft.Windows.SDK.Win32Docs.dll", + "analyzers/cs/System.Text.Encodings.Web.dll", + "analyzers/cs/System.Text.Json.dll", + "build/Microsoft.Windows.CsWin32.props", + "build/net20/Microsoft.Windows.CsWin32.props", + "build/netstandard1.0/Microsoft.Windows.CsWin32.props", + "microsoft.windows.cswin32.0.3.49-beta.nupkg.sha512", + "microsoft.windows.cswin32.nuspec", + "readme.txt", + "tools/install.ps1", + "tools/uninstall.ps1" + ] + }, + "Microsoft.Windows.SDK.Win32Docs/0.1.42-alpha": { + "sha512": "Z/9po23gUA9aoukirh2ItMU2ZS9++Js9Gdds9fu5yuMojDrmArvY2y+tq9985tR3cxFxpZO1O35Wjfo0khj5HA==", + "type": "package", + "path": "microsoft.windows.sdk.win32docs/0.1.42-alpha", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "apidocs.msgpack", + "buildTransitive/Microsoft.Windows.SDK.Win32Docs.props", + "buildTransitive/net20/Microsoft.Windows.SDK.Win32Docs.props", + "buildTransitive/netstandard1.0/Microsoft.Windows.SDK.Win32Docs.props", + "images/windows.png", + "lib/netstandard2.0/Microsoft.Windows.SDK.Win32Docs.dll", + "lib/netstandard2.0/Microsoft.Windows.SDK.Win32Docs.xml", + "microsoft.windows.sdk.win32docs.0.1.42-alpha.nupkg.sha512", + "microsoft.windows.sdk.win32docs.nuspec" + ] + }, + "Microsoft.Windows.SDK.Win32Metadata/55.0.45-preview": { + "sha512": "2i1kVIk8rMuMCYtoeYeWbmCRLqNgb63Berac3Gv+J/pjp0oucopasKgLQNslryhsgBl4xex9ENhJX2MXEW5vdA==", + "type": "package", + "path": "microsoft.windows.sdk.win32metadata/55.0.45-preview", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Windows.Win32.winmd", + "build/Microsoft.Windows.SDK.Win32Metadata.props", + "build/net20/Microsoft.Windows.SDK.Win32Metadata.props", + "build/netstandard1.0/Microsoft.Windows.SDK.Win32Metadata.props", + "buildTransitive/Microsoft.Windows.SDK.Win32Metadata.props", + "buildTransitive/net20/Microsoft.Windows.SDK.Win32Metadata.props", + "buildTransitive/netstandard1.0/Microsoft.Windows.SDK.Win32Metadata.props", + "images/windows.png", + "microsoft.windows.sdk.win32metadata.55.0.45-preview.nupkg.sha512", + "microsoft.windows.sdk.win32metadata.nuspec", + "sdk_license.txt" + ] + }, + "Microsoft.Windows.WDK.Win32Metadata/0.9.9-experimental": { + "sha512": "cncPlxLqR25mFOuvpxZPgXgJqRmXyV5eTULj/9w8AQvO/c1xJDEapohRsWkYaia7hCR/EwEzBHr7RU9u93T03w==", + "type": "package", + "path": "microsoft.windows.wdk.win32metadata/0.9.9-experimental", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Windows.Wdk.winmd", + "build/Microsoft.Windows.WDK.Win32Metadata.props", + "build/net20/Microsoft.Windows.WDK.Win32Metadata.props", + "build/netstandard1.0/Microsoft.Windows.WDK.Win32Metadata.props", + "buildTransitive/Microsoft.Windows.WDK.Win32Metadata.props", + "buildTransitive/net20/Microsoft.Windows.WDK.Win32Metadata.props", + "buildTransitive/netstandard1.0/Microsoft.Windows.WDK.Win32Metadata.props", + "images/windows.png", + "microsoft.windows.wdk.win32metadata.0.9.9-experimental.nupkg.sha512", + "microsoft.windows.wdk.win32metadata.nuspec", + "sdk_license.txt" + ] + }, + "System.Buffers/4.5.1": { + "sha512": "Rw7ijyl1qqRS0YQD/WycNst8hUUMgrMH4FCn1nNm27M4VxchZ1js3fVjQaANHO5f3sN4isvP4a+Met9Y4YomAg==", + "type": "package", + "path": "system.buffers/4.5.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/net461/System.Buffers.dll", + "lib/net461/System.Buffers.xml", + "lib/netcoreapp2.0/_._", + "lib/netstandard1.1/System.Buffers.dll", + "lib/netstandard1.1/System.Buffers.xml", + "lib/netstandard2.0/System.Buffers.dll", + "lib/netstandard2.0/System.Buffers.xml", + "lib/uap10.0.16299/_._", + "ref/net45/System.Buffers.dll", + "ref/net45/System.Buffers.xml", + "ref/netcoreapp2.0/_._", + "ref/netstandard1.1/System.Buffers.dll", + "ref/netstandard1.1/System.Buffers.xml", + "ref/netstandard2.0/System.Buffers.dll", + "ref/netstandard2.0/System.Buffers.xml", + "ref/uap10.0.16299/_._", + "system.buffers.4.5.1.nupkg.sha512", + "system.buffers.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Memory/4.5.5": { + "sha512": "XIWiDvKPXaTveaB7HVganDlOCRoj03l+jrwNvcge/t8vhGYKvqV+dMv6G4SAX2NoNmN0wZfVPTAlFwZcZvVOUw==", + "type": "package", + "path": "system.memory/4.5.5", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/net461/System.Memory.dll", + "lib/net461/System.Memory.xml", + "lib/netcoreapp2.1/_._", + "lib/netstandard1.1/System.Memory.dll", + "lib/netstandard1.1/System.Memory.xml", + "lib/netstandard2.0/System.Memory.dll", + "lib/netstandard2.0/System.Memory.xml", + "ref/netcoreapp2.1/_._", + "system.memory.4.5.5.nupkg.sha512", + "system.memory.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Numerics.Vectors/4.4.0": { + "sha512": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==", + "type": "package", + "path": "system.numerics.vectors/4.4.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Numerics.Vectors.dll", + "lib/net46/System.Numerics.Vectors.xml", + "lib/netcoreapp2.0/_._", + "lib/netstandard1.0/System.Numerics.Vectors.dll", + "lib/netstandard1.0/System.Numerics.Vectors.xml", + "lib/netstandard2.0/System.Numerics.Vectors.dll", + "lib/netstandard2.0/System.Numerics.Vectors.xml", + "lib/portable-net45+win8+wp8+wpa81/System.Numerics.Vectors.dll", + "lib/portable-net45+win8+wp8+wpa81/System.Numerics.Vectors.xml", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Numerics.Vectors.dll", + "ref/net46/System.Numerics.Vectors.xml", + "ref/netcoreapp2.0/_._", + "ref/netstandard1.0/System.Numerics.Vectors.dll", + "ref/netstandard1.0/System.Numerics.Vectors.xml", + "ref/netstandard2.0/System.Numerics.Vectors.dll", + "ref/netstandard2.0/System.Numerics.Vectors.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.numerics.vectors.4.4.0.nupkg.sha512", + "system.numerics.vectors.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Runtime.CompilerServices.Unsafe/6.0.0": { + "sha512": "/iUeP3tq1S0XdNNoMz5C9twLSrM/TH+qElHkXWaPvuNOt+99G75NrV0OS2EqHx5wMN7popYjpc8oTjC1y16DLg==", + "type": "package", + "path": "system.runtime.compilerservices.unsafe/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.Runtime.CompilerServices.Unsafe.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/net461/System.Runtime.CompilerServices.Unsafe.dll", + "lib/net461/System.Runtime.CompilerServices.Unsafe.xml", + "lib/net6.0/System.Runtime.CompilerServices.Unsafe.dll", + "lib/net6.0/System.Runtime.CompilerServices.Unsafe.xml", + "lib/netcoreapp3.1/System.Runtime.CompilerServices.Unsafe.dll", + "lib/netcoreapp3.1/System.Runtime.CompilerServices.Unsafe.xml", + "lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.dll", + "lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.xml", + "system.runtime.compilerservices.unsafe.6.0.0.nupkg.sha512", + "system.runtime.compilerservices.unsafe.nuspec", + "useSharedDesignerContext.txt" + ] } }, "projectFileDependencyGroups": { ".NETStandard,Version=v2.1": [ - "Microsoft.Bcl.HashCode >= 1.1.1", - "Microsoft.CSharp >= 4.7.0" + "Microsoft.CSharp >= 4.7.0", + "Microsoft.Windows.CsWin32 >= 0.3.49-beta" ] }, "packageFolders": { @@ -178,13 +447,14 @@ "netstandard2.1": { "targetAlias": "netstandard2.1", "dependencies": { - "Microsoft.Bcl.HashCode": { - "target": "Package", - "version": "[1.1.1, )" - }, "Microsoft.CSharp": { "target": "Package", "version": "[4.7.0, )" + }, + "Microsoft.Windows.CsWin32": { + "suppressParent": "All", + "target": "Package", + "version": "[0.3.49-beta, )" } }, "imports": [ diff --git a/源代码/StgSharp/obj/project.nuget.cache b/源代码/StgSharp/obj/project.nuget.cache index 6ff015b4..e72a65e9 100644 --- a/源代码/StgSharp/obj/project.nuget.cache +++ b/源代码/StgSharp/obj/project.nuget.cache @@ -1,11 +1,18 @@ { "version": 2, - "dgSpecHash": "ZEy1DcAzD4VzqbKZ5b1WNXVTJ7ASngWdyWRK3Jo9EkNF5hdjST+BQi5eUbwUu+yqpwt9s24aXl+nV1XHMtDxuQ==", + "dgSpecHash": "SScQmL5WQ0AzrZMLauY1KTdFWwXiNxuI2NAO+HKzMT6yvbrrHCjXhkO2hF1YkSE8A1s0fckrWrToL0C9zq4zOw==", "success": true, "projectFilePath": "D:\\NitloadIndustry\\研究项目\\1-Flagship\\TH2020\\ProjectFile\\源代码\\StgSharp\\StgSharp.csproj", "expectedPackageFiles": [ - "C:\\Users\\Nitlo\\.nuget\\packages\\microsoft.bcl.hashcode\\1.1.1\\microsoft.bcl.hashcode.1.1.1.nupkg.sha512", - "C:\\Users\\Nitlo\\.nuget\\packages\\microsoft.csharp\\4.7.0\\microsoft.csharp.4.7.0.nupkg.sha512" + "C:\\Users\\Nitlo\\.nuget\\packages\\microsoft.csharp\\4.7.0\\microsoft.csharp.4.7.0.nupkg.sha512", + "C:\\Users\\Nitlo\\.nuget\\packages\\microsoft.windows.cswin32\\0.3.49-beta\\microsoft.windows.cswin32.0.3.49-beta.nupkg.sha512", + "C:\\Users\\Nitlo\\.nuget\\packages\\microsoft.windows.sdk.win32docs\\0.1.42-alpha\\microsoft.windows.sdk.win32docs.0.1.42-alpha.nupkg.sha512", + "C:\\Users\\Nitlo\\.nuget\\packages\\microsoft.windows.sdk.win32metadata\\55.0.45-preview\\microsoft.windows.sdk.win32metadata.55.0.45-preview.nupkg.sha512", + "C:\\Users\\Nitlo\\.nuget\\packages\\microsoft.windows.wdk.win32metadata\\0.9.9-experimental\\microsoft.windows.wdk.win32metadata.0.9.9-experimental.nupkg.sha512", + "C:\\Users\\Nitlo\\.nuget\\packages\\system.buffers\\4.5.1\\system.buffers.4.5.1.nupkg.sha512", + "C:\\Users\\Nitlo\\.nuget\\packages\\system.memory\\4.5.5\\system.memory.4.5.5.nupkg.sha512", + "C:\\Users\\Nitlo\\.nuget\\packages\\system.numerics.vectors\\4.4.0\\system.numerics.vectors.4.4.0.nupkg.sha512", + "C:\\Users\\Nitlo\\.nuget\\packages\\system.runtime.compilerservices.unsafe\\6.0.0\\system.runtime.compilerservices.unsafe.6.0.0.nupkg.sha512" ], "logs": [] } \ No newline at end of file diff --git a/源代码/StgSharp/obj/x64/Benchmark/netstandard2.1/StgSharp.assets.cache b/源代码/StgSharp/obj/x64/Benchmark/netstandard2.1/StgSharp.assets.cache index 93c10ef6..d6831eb4 100644 Binary files a/源代码/StgSharp/obj/x64/Benchmark/netstandard2.1/StgSharp.assets.cache and b/源代码/StgSharp/obj/x64/Benchmark/netstandard2.1/StgSharp.assets.cache differ diff --git a/源代码/StgSharp/obj/x64/Debug/netstandard2.1/StgSharp.GeneratedMSBuildEditorConfig.editorconfig b/源代码/StgSharp/obj/x64/Debug/netstandard2.1/StgSharp.GeneratedMSBuildEditorConfig.editorconfig index f1c64107..44183f7b 100644 --- a/源代码/StgSharp/obj/x64/Debug/netstandard2.1/StgSharp.GeneratedMSBuildEditorConfig.editorconfig +++ b/源代码/StgSharp/obj/x64/Debug/netstandard2.1/StgSharp.GeneratedMSBuildEditorConfig.editorconfig @@ -1,4 +1,6 @@ is_global = true +build_property.CsWin32InputMetadataPaths = C:\Users\Nitlo\.nuget\packages\microsoft.windows.sdk.win32metadata\55.0.45-preview\Windows.Win32.winmd|C:\Users\Nitlo\.nuget\packages\microsoft.windows.wdk.win32metadata\0.9.9-experimental\Windows.Wdk.winmd +build_property.CsWin32InputDocPaths = C:\Users\Nitlo\.nuget\packages\microsoft.windows.sdk.win32docs\0.1.42-alpha\apidocs.msgpack build_property.TargetFramework = netstandard2.1 build_property.TargetPlatformMinVersion = 7.0 build_property.UsingMicrosoftNETSdkWeb = diff --git a/源代码/StgSharp/obj/x64/Debug/netstandard2.1/StgSharp.assets.cache b/源代码/StgSharp/obj/x64/Debug/netstandard2.1/StgSharp.assets.cache index d68cec53..a4611503 100644 Binary files a/源代码/StgSharp/obj/x64/Debug/netstandard2.1/StgSharp.assets.cache and b/源代码/StgSharp/obj/x64/Debug/netstandard2.1/StgSharp.assets.cache differ diff --git a/源代码/StgSharp/obj/x64/Debug/netstandard2.1/StgSharp.csproj.AssemblyReference.cache b/源代码/StgSharp/obj/x64/Debug/netstandard2.1/StgSharp.csproj.AssemblyReference.cache index d05e3e18..950133b6 100644 Binary files a/源代码/StgSharp/obj/x64/Debug/netstandard2.1/StgSharp.csproj.AssemblyReference.cache and b/源代码/StgSharp/obj/x64/Debug/netstandard2.1/StgSharp.csproj.AssemblyReference.cache differ diff --git a/源代码/StgSharp/obj/x64/Debug/netstandard2.1/StgSharp.csproj.CoreCompileInputs.cache b/源代码/StgSharp/obj/x64/Debug/netstandard2.1/StgSharp.csproj.CoreCompileInputs.cache index bcaec325..38bcf888 100644 --- a/源代码/StgSharp/obj/x64/Debug/netstandard2.1/StgSharp.csproj.CoreCompileInputs.cache +++ b/源代码/StgSharp/obj/x64/Debug/netstandard2.1/StgSharp.csproj.CoreCompileInputs.cache @@ -1 +1 @@ -782e3dab3e04efa45b725f294fb2f3a1dfe839a8105c1f07be6261ca6a4264ec +58a5acf3308fca3681fb52b5a33573286589d74ed6bfbc0feef0b87bad84cd81 diff --git a/源代码/StgSharp/obj/x64/Debug/netstandard2.1/StgSharp.csproj.FileListAbsolute.txt b/源代码/StgSharp/obj/x64/Debug/netstandard2.1/StgSharp.csproj.FileListAbsolute.txt index 2d005132..45b90905 100644 --- a/源代码/StgSharp/obj/x64/Debug/netstandard2.1/StgSharp.csproj.FileListAbsolute.txt +++ b/源代码/StgSharp/obj/x64/Debug/netstandard2.1/StgSharp.csproj.FileListAbsolute.txt @@ -1,6 +1,13 @@ +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharp\bin\x64\Debug\netstandard2.1\StgSharp.deps.json +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharp\bin\x64\Debug\netstandard2.1\StgSharp.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharp\bin\x64\Debug\netstandard2.1\StgSharp.xml D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharp\obj\x64\Debug\netstandard2.1\StgSharp.csproj.AssemblyReference.cache D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharp\obj\x64\Debug\netstandard2.1\StgSharp.GeneratedMSBuildEditorConfig.editorconfig D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharp\obj\x64\Debug\netstandard2.1\StgSharp.AssemblyInfoInputs.cache D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharp\obj\x64\Debug\netstandard2.1\StgSharp.AssemblyInfo.cs D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharp\obj\x64\Debug\netstandard2.1\StgSharp.csproj.CoreCompileInputs.cache D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharp\obj\x64\Debug\netstandard2.1\StgSharp.sourcelink.json +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharp\obj\x64\Debug\netstandard2.1\StgSharp.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharp\obj\x64\Debug\netstandard2.1\refint\StgSharp.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharp\obj\x64\Debug\netstandard2.1\StgSharp.xml +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharp\obj\x64\Debug\netstandard2.1\ref\StgSharp.dll diff --git a/源代码/StgSharp/obj/x64/Debug/netstandard2.1/StgSharp.dll b/源代码/StgSharp/obj/x64/Debug/netstandard2.1/StgSharp.dll new file mode 100644 index 00000000..8991cb5d Binary files /dev/null and b/源代码/StgSharp/obj/x64/Debug/netstandard2.1/StgSharp.dll differ diff --git a/源代码/StgSharp/obj/x64/Debug/netstandard2.1/StgSharp.sourcelink.json b/源代码/StgSharp/obj/x64/Debug/netstandard2.1/StgSharp.sourcelink.json index 0fffb972..88f19103 100644 --- a/源代码/StgSharp/obj/x64/Debug/netstandard2.1/StgSharp.sourcelink.json +++ b/源代码/StgSharp/obj/x64/Debug/netstandard2.1/StgSharp.sourcelink.json @@ -1 +1 @@ -{"documents":{"D:\\NitloadIndustry\\研究项目\\1-Flagship\\TH2020\\ProjectFile\\*":"https://raw.githubusercontent.com/Nitload-NSI/CCD_Github/5d778e0f2f6e677453cebc990919697968c771f9/*"}} \ No newline at end of file +{"documents":{"D:\\NitloadIndustry\\研究项目\\1-Flagship\\TH2020\\ProjectFile\\*":"https://raw.githubusercontent.com/Nitload-NSI/CCD_Github/839156948261837c173ee878d930fc868fce223e/*"}} \ No newline at end of file diff --git a/源代码/StgSharp/obj/x64/Debug/netstandard2.1/StgSharp.xml b/源代码/StgSharp/obj/x64/Debug/netstandard2.1/StgSharp.xml new file mode 100644 index 00000000..7333b66a --- /dev/null +++ b/源代码/StgSharp/obj/x64/Debug/netstandard2.1/StgSharp.xml @@ -0,0 +1,1448 @@ + + + + StgSharp + + + + + Get the status of a certain key on the keyboard. + + + + + + + + Function handler to load an opengl function by serching its name. + + the name of the Opengl function + An intptr value representing the pointer to the function + + + + + + + + + OpenGL package used by current form context. + + + + + Height of this form, represent in + + + + + Representing + + + + + Width of this form, represent in + + + + + Width of this form, represent in + + + + + Init an OpenGl context if current form has not been binded to any context. + and set the context binded to current form as current OpenGL context. + + Something goes wrong and + StgSharp fails in creating a new OpenGL context. + + + + Set all necessary metadata to current form instance + + + + + Resize the current form + + New width of the window + New height of the window + + + + Resize the current form + + + A (width,height) representing the new size of current form + + + + + Set the size limit of current form + + Minimum width of current form + Minimum height of current form + Maximum width of curent form + Maximum height of current form + + + + Set the size limit of current form + + + Minimun size of current form. In form of a of (width,height) + + + Maximum size of current form. In form of a of (width,height) + + + + + Necessary operation to init this form. + + + + + + Behaviour of current form when in a render cycle. + When this form + + + + + + Init this form and render it on screen, and respond with operation + + + + + Get OpenGL library of this form's context. + + A package contains all opengl APIs + + + + Define how current form render in one frame. + + + Please define this befor calling any OpenGL api and other graphic methods. + + + + + Create a set of . + + Amount of EBO to be created. + + + + + Create a set of . + + Amount of VAO to be crated. + + + + + Create a sets of + + Amount of textures to be crated. + + + + + Create aset of . + + Amount of Object to be created. + + + + + Create an instance of program + + New instance of instance. + + + + A timer counting frames after its construction. + + + + + Frames after this timer created. + + + + + Convert a into uint value. + this will get total frames since the timer was created. + + to be converted + + + + Interface of all kinds OpenGL buffer onjects + + + + + Get the only handle to one of the Object instance + + + + + + + Bind a buffer instance to OpenGL + + Index of handle of the object in this instance to be bind + + + + + + + A collecion of handle to Element Buffer Object in OpenGL. + Each value indexed from instance of this class this + is the only handle to one Element Buffer Object. + + + + + + + + + + + + Set data to current vertex buffer object + + Type of bufferData + Index to find certain VBO in this instance + Data to write in + How OpenGL use these data, defined by + + + + Set data to current vertex buffer object + + Type of bufferData + Index to find certain VBO in this instance + A array of data to write in + How OpenGL use these data, defined by + + + + + + + + + Load all aupportable OpenGL APIs and bind them to given context. + + The used as current OpenGL context + A delegate that can get o + + + + Get the function pointer of given OpenGL api name + + Name of the OpenGL api + The funtion pointer of the api in form of + + + + Compile the vertex shader to be attached to this shader. + + GLSL code of vertex shader. + + + + + + + + + + + Inti a shader with no program attached. + + + + + Link the shader to current context. + + + + + Get a uniform form current shader, + the value type of the uniform should be provided. + + Name of the Uniform in shader code + + + + + Get a uniform form current shader, + the value type of the uniform should be provided. + + Name of the Uniform in shader code + + + + + Get a uniform form current shader, + the value type of the uniform should be provided. + + Name of the Uniform in shader code + + + + + Let the current context use this shader. + + + + + Same function as OpenGL api glActiveTexture + + type of texture to activate + + + + Operation after alignment by calling . + No calling of this method is acceptable, but it will bring the risk + of that relevant code will not run if it is interrupted by frame overtime. + Please call this method immediately after calling , + too early or sonner may cause . + + The form used as frame update benchmark. + Operation after frame update alignment. + The action binded to a wrong alignment. + + + + Align a sets of code to frame update of a . + Usually, a call of is required. + This method is used as sigle thread method. If more than one + alignment is requested, a will throw. + + The form used as frame update benchmark. + More than one alingment attached to one form timer + + + + Same fucntion as OpenGL api glAttachShader. + Only the first in handle + will be attached to the first in handle. + The rest shader and program will be ignored. + + Shader program to be attachec + A shader part to attach + + + + Bind the indexed buffer object to certain type of buffer + + + + + + + Same function as OpenGL api, glBindTexture. + + Type of texture to bind + Sign of texture + + + + Same function as OpenGL api, glBindVertexArray + + + + + + Clear buffers to preset values + + + + + + Call apiClearColor in OpenGL + specifies the red, green, blue, and alpha values used by apiClear to clear the color buffers. + Values specified by apiClearColor are clamped to the range [0,1] + + Specify the red values used when the color buffers are cleared. + Specify the red values used when the color buffers are cleared. + Specify the red values used when the color buffers are cleared. + Specify the red values used when the color buffers are cleared. + + + + Conpile the provided shader code in string form. + + A string array contains all shaders' code + An enum represent the type of the shader to + conpile, including vertex shader and fragment shader. + An handle of conpiled shader + + + + Same function as OpenGL api, glCreateProgram + + A handle representing a single shader program + + + + Same function as OpenGL api, glCreateProgram. + Used for creating multiple shader program. + + A handle representing all shader programs + + + + Creates a form and its associated + + Required width + Required width + Tittle of the window + + + + + + + Same function as OpenGL api, glDeleteBuffer. This method can delete one buffer in one call + + a handle representing the buffer to be deleted + + + + Same function as OpenGL api, glDeleteBuffer. This method can delete a sets of buffers in one call. + + Array of buffers to be deleted + + + + Same function as OpenGL api, glDeleteVertexArrays + + Handle of vertex objects. + + + + + + + + + + + + + Same fucntion as the OpenGL api glGenBuffers + + + + + + + Same fucnction as OpenGL api glGenTextures. + + amount of textures to generate + + + + Same fucntion as OpenGL api, glGenVertexArray + + Amount of vao to be generated + + + + Same fucntion as OpenGL api, glGetUniformLocation + + Shader program to find the uniform + Name of the uniform + + + + + Make the OpenGL context of a certain as the activated OpenGL context. + + + + + + Set data value to a float , + all types of parameters are float. + + The target + The first value to be set + The second value to be set + The third value to be set + The forth value to be set + + + + Set data value to a float , + all types of parameters are float. + + The target + A packing four parameters of the uniform + + + + Set data value to a float , + all types of parameters are float. + + The target + The first value to be set + The second value to be set + The third value to be set + + + + Set data value to a float , + all types of parameters are float. + + The target + The first value to be set + The second value to be set + + + + Set data value to a float , + all types of parameters are float. + + The target + The value to be set + + + + Set data value to a int , + all types of parameters are int. + + The target + The value to be set + + + + Set data value to a float , + all types of parameters are . + + The target + A value of the uniform + + + + Set how a shader parameter read data from a VBO. + + Serial number of the parameter + Amount of data each elements contains + Type of data read by shader + + Pixels stride of each sets of data + + + + + Same function as OpenGL api glTexImage2d + + texture target to load image in + level of mipmap, 0 if default + OpenGL's internal color channel format + width of image + height of image + color channels of this image + how this image express each pixel + data array of pixels + + + + Same fucntion as OpenGL api glTexParameteri + + texture target to set parameters + name of parameter + value of parameter + + + + Same fucntion as OpenGL api glUseShader. + + Sign of program to be used + + + + Same function as the OpenGL api, glViewPort + + + + + + + + + A sensor used for cheking out if a bullet hit a player or something else + + + + + A 2D vector presenting the position of an enemy entity, position can also be visited by X, Y + + + + + X position of an enenmy entity + + + + + Y position of an enemy entity + + + + + Version of current StgSharp platform. + Main version represent in hundred's digit, + and sub version represent in ten's digit. + + + + + Init an instance of OpenGL program, + This method should be called before other + graphic methods, after LoadGL method. + + + + + Write a log message to log file, and mark the level of this message. + + A string contains information of how current evironment runs. + The severity of current message. + + + + Part of a circle. All points on a arc has the same distance to their center. + + + + + A collection of all point on the same plain and has the same distance to a point + + + + + The origin of this coordinate. + + + + + The horizontial axis of the coordinate. + Point to the right direction. + + + + + The vertical axis of the coordinate. + Point to the top direction. + + + + + 当几何体调用了过多的CalcVec方法时,产生UnusedVertexException异常 + + + + + Caculate the movement of a point. + + The game tick represent time passed by + A 3d vector representing movement + + + + Move begin side of a line. + It is recommended to override this function rather than + loading an with same function. + + Time passed since current line was created. + + + + Move end side of a line. + It is recommended to override this function rather than + loading an with same function. + + Time passed since current line was created. + + + + + Move the third vertix. this is a useless method for Parallelograms. + + Current time tick + + Geometry overdefined + + + + Move the third vertix. This method is useless for Parallelograms. + + Current time tick + + Geometry overdefined + + + + 平面几何体。包含三角形,对称四边形,自由多边形等。最多可由16个点参数定义。 + + + + + Tick time this geometry eas crested + + + + + Get all sides of this . + + A array contains all straight s of current geometry item. + + + + Get a flat cincide with current geometry. + + + + + + Update the coordinate of the point. If this is a moving point, + (Points on sides or surface if other geometry items) + please do not define any motion here, codes will be ignored by program + + Time passes since the program begin, counted by frames + + + + 计算中心点相对于参考原点的位移 + + 当前游戏刻 + + + + + A square + + + + + A linear data structure with dynamic length. + It contains a of , + each is twice longer than the former one. + + + + + + Init a with a certain amount of elements prepared. + + Amount of elements to be prepared. + + + + Create a new instance of , + and fill the begining ones of elemtns as given instance. + + Amount of beginning elements to be filled + + + + + Length of this + + + + + A pair of value + + + + + A value. + The lower byte is , + and higher byte is . + + + + + The first value. + + + + + The second value. + + + + + Whether this linked list has no members or not. + + + + + The first memeber of this linkec list. + Set value to this property will reset the first node. + + + + + The last memeber of this linkec list. + Set value to this property will reset the first node. + + + + + Add an item to the tail of linked list. + + The item ready to add to the list + + + + Remove all members from this list + + + + + Insert a member to current linkedlist, + the new member will be after a certain existed member. + + New member will be inserted after this member + The new member to be inserted + + + + Remove a member from this linkedlist. + + Member to be removed from this list + + + + remove the first member of the list + + + + + remove the last member of the list + + + + + OpenGL numeric type. + An IEEE-754 floating-point value, clamped to the range [0,1]. + + + + + OpenGL numeric type. + An IEEE-754 double precision floating-point value, clamped to the range [0,1]. + + + + + A two dimension vector defined by two elements. + Vec2Ds in StgSharp are defaultly usaed as colum vector. + + + + + Reurns the value of ArcSin(x) + + The sine value of the angle + + + + + + Get the value of E ^ x; + + + + + + + + + + + Returns the value of ln(x). + + + + + calculate the value of x^y + + + + Returns the value of x^y + + + + + + + + + + returns a random float number between 0 and 1. + + + + + + Generates a random seed in int value. + + + + + + A handle to an OpenGL object, + must be indexed from a . + Direct call will cause + + + + + A handle to an OpenGL object. + + + + + temporarily release the handle of GLhandle sets. + Please call method before indexing. + + + + + Realse all resource in this handle. + This will release all resource in this . + This will be not usable. + + + + The COLORREF value is used to specify an RGB color. + + When specifying an explicit [RGB](/windows/desktop/api/Wingdi/nf-wingdi-rgb) color, the **COLORREF** value has the following hexadecimal form: `0x00bbggrr` The low-order byte contains a value for the relative intensity of red; the second byte contains a value for green; and the third byte contains a value for blue. The high-order byte must be zero. The maximum value for a single byte is 0xFF. To create a **COLORREF** color value, use the [RGB](/windows/desktop/api/Wingdi/nf-wingdi-rgb) macro. To extract the individual values for the red, green, and blue components of a color value, use the [**GetRValue**](/windows/desktop/api/Wingdi/nf-wingdi-getrvalue), [GetGValue](/windows/desktop/api/Wingdi/nf-wingdi-getgvalue), and [GetBValue](/windows/desktop/api/Wingdi/nf-wingdi-getbvalue) macros, respectively. + Read more on docs.microsoft.com. + + + + + A pointer to a null-terminated, constant, ANSI character string. + + + + + A pointer to the first character in the string. The content should be considered readonly, as it was typed as constant in the SDK. + + + + + Gets the number of characters up to the first null character (exclusive). + + + + + Returns a with a copy of this character array, decoding as UTF-8. + + A , or if is . + + + + Returns a span of the characters in this string, up to the first null character (exclusive). + + + + The GLYPHMETRICSFLOAT structure contains information about the placement and orientation of a glyph in a character cell. + The values of GLYPHMETRICSFLOAT are specified as notional units. + + + Specifies the width of the smallest rectangle (the glyph's black box) that completely encloses the glyph. + + + Specifies the height of the smallest rectangle (the glyph's black box) that completely encloses the glyph. + + + Specifies the x and y coordinates of the upper-left corner of the smallest rectangle that completely encloses the glyph. + + + Specifies the horizontal distance from the origin of the current character cell to the origin of the next character cell. + + + Specifies the vertical distance from the origin of the current character cell to the origin of the next character cell. + + + The LAYERPLANEDESCRIPTOR structure describes the pixel format of a drawing surface. + Please notice, as documented above, that certain layer plane properties are not supported in the current implementation. The implementation is the Microsoft GDI software implementation of OpenGL. Hardware manufacturers that enhance parts of OpenGL may support some layer plane properties not supported by the generic implementation. + + + Specifies the size of this data structure. Set this value to sizeof(LAYERPLANEDESCRIPTOR). + + + Specifies the version of this data structure. Set this value to 1. + + + + A set of bit flags that specify properties of the layer plane. The properties are generally not mutually exclusive; any combination of bit flags can be set, with the exceptions noted. The following bit flag constants are defined. + This doc was truncated. + Read more on docs.microsoft.com. + + + + + Specifies the type of pixel data. The following types are defined. + This doc was truncated. + Read more on docs.microsoft.com. + + + + Specifies the number of color bitplanes in each color buffer. For RGBA pixel types, it is the size of the color buffer, excluding the alpha bitplanes. For color-index pixels, it is the size of the color-index buffer. + + + Specifies the number of red bitplanes in each RGBA color buffer. + + + Specifies the shift count for red bitplanes in each RGBA color buffer. + + + Specifies the number of green bitplanes in each RGBA color buffer. + + + Specifies the shift count for green bitplanes in each RGBA color buffer. + + + Specifies the number of blue bitplanes in each RGBA color buffer. + + + Specifies the shift count for blue bitplanes in each RGBA color buffer. + + + Specifies the number of alpha bitplanes in each RGBA color buffer. Alpha bitplanes are not supported. + + + Specifies the shift count for alpha bitplanes in each RGBA color buffer. Alpha bitplanes are not supported. + + + Specifies the total number of bitplanes in the accumulation buffer. + + + Specifies the number of red bitplanes in the accumulation buffer. + + + Specifies the number of green bitplanes in the accumulation buffer. + + + Specifies the number of blue bitplanes in the accumulation buffer. + + + Specifies the number of alpha bitplanes in the accumulation buffer. + + + Specifies the depth of the depth (z-axis) buffer. + + + Specifies the depth of the stencil buffer. + + + Specifies the number of auxiliary buffers. Auxiliary buffers are not supported. + + + + + + Not used. Must be zero. + + + When the LPD_TRANSPARENT flag is set, specifies the transparent color or index value. Typically the value is zero. + + + The PIXELFORMATDESCRIPTOR structure describes the pixel format of a drawing surface. + Please notice carefully, as documented above, that certain pixel format properties are not supported in the current generic implementation. The generic implementation is the Microsoft GDI software implementation of OpenGL. Hardware manufacturers may enhance parts of OpenGL, and may support some pixel format properties not supported by the generic implementation. + + + Specifies the size of this data structure. This value should be set to sizeof(PIXELFORMATDESCRIPTOR). + + + Specifies the version of this data structure. This value should be set to 1. + + + + A set of bit flags that specify properties of the pixel buffer. The properties are generally not mutually exclusive; you can set any combination of bit flags, with the exceptions noted. The following bit flag constants are defined. + This doc was truncated. + Read more on docs.microsoft.com. + + + + + Specifies the type of pixel data. The following types are defined. + This doc was truncated. + Read more on docs.microsoft.com. + + + + Specifies the number of color bitplanes in each color buffer. For RGBA pixel types, it is the size of the color buffer, excluding the alpha bitplanes. For color-index pixels, it is the size of the color-index buffer. + + + Specifies the number of red bitplanes in each RGBA color buffer. + + + Specifies the shift count for red bitplanes in each RGBA color buffer. + + + Specifies the number of green bitplanes in each RGBA color buffer. + + + Specifies the shift count for green bitplanes in each RGBA color buffer. + + + Specifies the number of blue bitplanes in each RGBA color buffer. + + + Specifies the shift count for blue bitplanes in each RGBA color buffer. + + + Specifies the number of alpha bitplanes in each RGBA color buffer. Alpha bitplanes are not supported. + + + Specifies the shift count for alpha bitplanes in each RGBA color buffer. Alpha bitplanes are not supported. + + + Specifies the total number of bitplanes in the accumulation buffer. + + + Specifies the number of red bitplanes in the accumulation buffer. + + + Specifies the number of green bitplanes in the accumulation buffer. + + + Specifies the number of blue bitplanes in the accumulation buffer. + + + Specifies the number of alpha bitplanes in the accumulation buffer. + + + Specifies the depth of the depth (z-axis) buffer. + + + Specifies the depth of the stencil buffer. + + + Specifies the number of auxiliary buffers. Auxiliary buffers are not supported. + + + Specifies the number of overlay and underlay planes. Bits 0 through 3 specify up to 15 overlay planes and bits 4 through 7 specify up to 15 underlay planes. + + + Ignored. Earlier implementations of OpenGL used this member, but it is no longer used. + + + Specifies the transparent color or index of an underlay plane. When the pixel type is RGBA, dwVisibleMask is a transparent RGB color value. When the pixel type is color index, it is a transparent index value. + + + Ignored. Earlier implementations of OpenGL used this member, but it is no longer used. + + + The POINTFLOAT structure contains the x and y coordinates of a point. + + Learn more about this API from docs.microsoft.com. + + + + Specifies the horizontal (x) coordinate of a point. + + + Specifies the vertical (y) coordinate of a point. + + + + Contains extern methods from "GDI32.dll". + + + Contains extern methods from "OPENGL32.dll". + + + + + + + The ChoosePixelFormat function attempts to match an appropriate pixel format supported by a device context to a given pixel format specification. + Specifies the device context that the function examines to determine the best match for the pixel format descriptor pointed to by ppfd. + + Pointer to a PIXELFORMATDESCRIPTOR structure that specifies the requested pixel format. In this context, the members of the PIXELFORMATDESCRIPTOR structure that ppfd points to are used as follows: + This doc was truncated. + Read more on docs.microsoft.com. + + + If the function succeeds, the return value is a pixel format index (one-based) that is the closest match to the given pixel format descriptor. If the function fails, the return value is zero. To get extended error information, call GetLastError. + + You must ensure that the pixel format matched by the ChoosePixelFormat function satisfies your requirements. For example, if you request a pixel format with a 24-bit RGB color buffer but the device context offers only 8-bit RGB color buffers, the function returns a pixel format with an 8-bit RGB color buffer. + + + The DescribePixelFormat function obtains information about the pixel format identified by iPixelFormat of the device associated with hdc. The function sets the members of the PIXELFORMATDESCRIPTOR structure pointed to by ppfd with that pixel format data. + Specifies the device context. + Index that specifies the pixel format. The pixel formats that a device context supports are identified by positive one-based integer indexes. + The size, in bytes, of the structure pointed to by ppfd. The DescribePixelFormat function stores no more than nBytes bytes of data to that structure. Set this value to sizeof(PIXELFORMATDESCRIPTOR). + Pointer to a PIXELFORMATDESCRIPTOR structure whose members the function sets with pixel format data. The function stores the number of bytes copied to the structure in the structure's nSize member. If, upon entry, ppfd is NULL, the function writes no data to the structure. This is useful when you only want to obtain the maximum pixel format index of a device context. + + If the function succeeds, the return value is the maximum pixel format index of the device context. In addition, the function sets the members of the PIXELFORMATDESCRIPTOR structure pointed to by ppfd according to the specified pixel format. If the function fails, the return value is zero. To get extended error information, call GetLastError. + + + Learn more about this API from docs.microsoft.com. + + + + The DeleteEnhMetaFile function deletes an enhanced-format metafile or an enhanced-format metafile handle. + A handle to an enhanced metafile. + + If the function succeeds, the return value is nonzero. If the function fails, the return value is zero. + + If the hemf parameter identifies an enhanced metafile stored in memory, the DeleteEnhMetaFile function deletes the metafile. If hemf identifies a metafile stored on a disk, the function deletes the metafile handle but does not destroy the actual metafile. An application can retrieve the file by calling the GetEnhMetaFile function. + + + + + + The GetEnhMetaFilePixelFormat function retrieves pixel format information for an enhanced metafile. + Identifies the enhanced metafile. + Specifies the size, in bytes, of the buffer into which the pixel format information is copied. + Pointer to a PIXELFORMATDESCRIPTOR structure that contains the logical pixel format specification. The metafile uses this structure to record the logical pixel format specification. + + If the function succeeds and finds a pixel format, the return value is the size of the metafile's pixel format. If no pixel format is present, the return value is zero. If an error occurs and the function fails, the return value is GDI_ERROR. To get extended error information, call GetLastError. + + + When an enhanced metafile specifies a pixel format in its ENHMETAHEADER structure and the pixel format fits in the buffer, the pixel format information is copied into ppfd. When cbBuffer is too small to contain the pixel format of the metafile, the pixel format is not copied to the buffer. In either case, the function returns the size of the metafile's pixel format. For information on metafile recording and other operations, see Enhanced Metafile Operations. + Read more on docs.microsoft.com. + + + + The GetPixelFormat function obtains the index of the currently selected pixel format of the specified device context. + Specifies the device context of the currently selected pixel format index returned by the function. + + If the function succeeds, the return value is the currently selected pixel format index of the specified device context. This is a positive, one-based index value. If the function fails, the return value is zero. To get extended error information, call GetLastError. + + + Learn more about this API from docs.microsoft.com. + + + + + + + The SetPixelFormat function sets the pixel format of the specified device context to the format specified by the iPixelFormat index. + Specifies the device context whose pixel format the function attempts to set. + Index that identifies the pixel format to set. The various pixel formats supported by a device context are identified by one-based indexes. + Pointer to a PIXELFORMATDESCRIPTOR structure that contains the logical pixel format specification. The system's metafile component uses this structure to record the logical pixel format specification. The structure has no other effect upon the behavior of the SetPixelFormat function. + + If the function succeeds, the return value is TRUE. If the function fails, the return value is FALSE. To get extended error information, call GetLastError. + + + If hdc references a window, calling the SetPixelFormat function also changes the pixel format of the window. Setting the pixel format of a window more than once can lead to significant complications for the Window Manager and for multithread applications, so it is not allowed. An application can only set the pixel format of a window one time. Once a window's pixel format is set, it cannot be changed. You should select a pixel format in the device context before calling the wglCreateContext function. The wglCreateContext function creates a rendering context for drawing on the device in the selected pixel format of the device context. An OpenGL window has its own pixel format. Because of this, only device contexts retrieved for the client area of an OpenGL window are allowed to draw into the window. As a result, an OpenGL window should be created with the WS_CLIPCHILDREN and WS_CLIPSIBLINGS styles. Additionally, the window class attribute should not include the CS_PARENTDC style. + Read more on docs.microsoft.com. + + + + The SwapBuffers function exchanges the front and back buffers if the current pixel format for the window referenced by the specified device context includes a back buffer. + + If the function succeeds, the return value is TRUE. If the function fails, the return value is FALSE. To get extended error information, call GetLastError. + + + If the current pixel format for the window referenced by the device context does not include a back buffer, this call has no effect and the content of the back buffer is undefined when the function returns. With multithread applications, flush the drawing commands in any other threads drawing to the same window before calling SwapBuffers. + Read more on docs.microsoft.com. + + + + The wglDeleteContext function deletes a specified OpenGL rendering context. + + If the function succeeds, the return value is TRUE. If the function fails, the return value is FALSE. To get extended error information, call GetLastError. + + + It is an error to delete an OpenGL rendering context that is the current context of another thread. However, if a rendering context is the calling thread's current context, the wglDeleteContext function changes the rendering context to being not current before deleting it. The wglDeleteContext function does not delete the device context associated with the OpenGL rendering context when you call the wglMakeCurrent function. After calling wglDeleteContext, you must call DeleteDC to delete the associated device context. + Read more on docs.microsoft.com. + + + + + + + The wglCreateContext function creates a new OpenGL rendering context, which is suitable for drawing on the device referenced by hdc. The rendering context has the same pixel format as the device context. + + If the function succeeds, the return value is a valid handle to an OpenGL rendering context. If the function fails, the return value is NULL. To get extended error information, call GetLastError. + + + A rendering context is not the same as a device context. Set the pixel format of the device context before creating a rendering context. For more information on setting the device context's pixel format, see the SetPixelFormat function. To use OpenGL, you create a rendering context, select it as a thread's current rendering context, and then call OpenGL functions. When you are finished with the rendering context, you dispose of it by calling the wglDeleteContext function. The following code example shows wglCreateContext usage. + + This doc was truncated. + Read more on docs.microsoft.com. + + + + + + + The wglCreateLayerContext function creates a new OpenGL rendering context for drawing to a specified layer plane on a device context. + + If the function succeeds, the return value is a handle to an OpenGL rendering context. If the function fails, the return value is NULL. To get extended error information, call GetLastError. + + + A rendering context is a port through which all OpenGL commands pass. Every thread that makes OpenGL calls must have one current, active rendering context. A rendering context is not the same as a device context; a rendering context contains information specific to OpenGL, while a device context contains information specific to GDI. Before you create a rendering context, set the pixel format of the device context with the SetPixelFormat function. You can use a rendering context in a specified layer plane of a window with identical pixel formats only. With OpenGL applications that use multiple threads, you create a rendering context, select it as the current rendering context of a thread, and make OpenGL calls for the specified thread. When you are finished with the rendering context of the thread, call the wglDeleteContext function. + Read more on docs.microsoft.com. + + + + + + + The wglCopyContext function copies selected groups of rendering states from one OpenGL rendering context to another. + If the function succeeds, the return value is TRUE. If the function fails, the return value is FALSE. To get extended error information, call GetLastError. + + Using the wglCopyContext function, you can synchronize the rendering state of two rendering contexts. You can only copy the rendering state between two rendering contexts within the same process. The rendering contexts must be from the same OpenGL implementation. For example, you can always copy a rendering state between two rendering contexts with identical pixel format in the same process. You can copy the same state information available only with the glPushAttrib function. You cannot copy some state information, such as pixel pack/unpack state, render mode state, select state, and feedback state. When you call wglCopyContext, make sure that the destination rendering context, hglrcDst, is not current to any thread. + Read more on docs.microsoft.com. + + + + + + + The wglDescribeLayerPlane function obtains information about the layer planes of a given pixel format. + + If the function succeeds, the return value is TRUE. In addition, the wglDescribeLayerPlane function sets the members of the LAYERPLANEDESCRIPTOR structure pointed to by plpd according to the specified layer plane (iLayerPlane ) of the specified pixel format (iPixelFormat ). If the function fails, the return value is FALSE. + + The numbering of planes (iLayerPlane ) determines their order. Higher-numbered planes overlay lower-numbered planes. + + + + + + The wglGetCurrentContext function obtains a handle to the current OpenGL rendering context of the calling thread. + If the calling thread has a current OpenGL rendering context, wglGetCurrentContext returns a handle to that rendering context. Otherwise, the return value is NULL. + The current OpenGL rendering context of a thread is associated with a device context by means of the wglMakeCurrent function. You can use the wglGetCurrentDC function to obtain a handle to the device context associated with the current OpenGL rendering context. + + + The wglGetCurrentDC function obtains a handle to the device context that is associated with the current OpenGL rendering context of the calling thread. + If the calling thread has a current OpenGL rendering context, the function returns a handle to the device context associated with that rendering context by means of the wglMakeCurrent function. Otherwise, the return value is NULL. + You associate a device context with an OpenGL rendering context when it calls the wglMakeCurrent function. You can use the wglGetCurrentContext function to obtain a handle to the calling thread's current OpenGL rendering context. + + + + + + Retrieves the palette entries from a given color-index layer plane for a specified device context. + + Type: int If the function succeeds, the return value is the number of entries that were set in the palette in the specified layer plane of the window. If the function fails or when no pixel format is selected, the return value is zero. To get extended error information, call GetLastError. + + + Each color-index layer plane in a window has a palette with a size 2^n, where n is the number of bit planes in the layer plane. You cannot modify the transparent index of a palette. Use the wglRealizeLayerPalette function to realize the layer palette. Initially the layer palette contains only entries for white. + Read more on docs.microsoft.com. + + + + + + + The wglGetProcAddress function returns the address of an OpenGL extension function for use with the current OpenGL rendering context. + + When the function succeeds, the return value is the address of the extension function. When no current rendering context exists or the function fails, the return value is NULL. To get extended error information, call GetLastError. + + + The OpenGL library supports multiple implementations of its functions. Extension functions supported in one rendering context are not necessarily available in a separate rendering context. Thus, for a given rendering context in an application, use the function addresses returned by the wglGetProcAddress function only. The spelling and the case of the extension function pointed to by lpszProc must be identical to that of a function supported and implemented by OpenGL. Because extension functions are not exported by OpenGL, you must use wglGetProcAddress to get the addresses of vendor-specific extension functions. The extension function addresses are unique for each pixel format. All rendering contexts of a given pixel format share the same extension function addresses. + Read more on docs.microsoft.com. + + + + + + + The wglMakeCurrent function makes a specified OpenGL rendering context the calling thread's current rendering context. + When the wglMakeCurrent function succeeds, the return value is TRUE; otherwise the return value is FALSE. To get extended error information, call GetLastError. + + The hdc parameter must refer to a drawing surface supported by OpenGL. It need not be the same hdc that was passed to wglCreateContext when hglrc was created, but it must be on the same device and have the same pixel format. GDI transformation and clipping in hdc are not supported by the rendering context. The current rendering context uses the hdc device context until the rendering context is no longer current. Before switching to the new rendering context, OpenGL flushes any previous rendering context that was current to the calling thread. A thread can have one current rendering context. A process can have multiple rendering contexts by means of multithreading. A thread must set a current rendering context before calling any OpenGL functions. Otherwise, all OpenGL calls are ignored. A rendering context can be current to only one thread at a time. You cannot make a rendering context current to multiple threads. An application can perform multithread drawing by making different rendering contexts current to different threads, supplying each thread with its own rendering context and device context. If an error occurs, the wglMakeCurrent function makes the thread's current rendering context not current before returning. + Read more on docs.microsoft.com. + + + + The wglRealizeLayerPalette function maps palette entries from a given color-index layer plane into the physical palette or initializes the palette of an RGBA layer plane. + If the function succeeds, the return value is TRUE, even if bRealize is TRUE and the physical palette is not available. If the function fails or when no pixel format is selected, the return value is FALSE. To get extended error information, call GetLastError. + + The physical palette for a layer plane is a shared resource among windows with layer planes. When more than one window attempts to realize a palette for a given physical layer plane, only one palette at a time is realized. When you call the wglRealizeLayerPalette function, the layer palette of a foreground window is always realized first. When a window's layer palette is realized, its palette entries are always mapped one-to-one into the physical palette. Unlike GDI logical palettes, with wglRealizeLayerPalette there is no mapping of other windows' layer palettes to the current physical palette. Whenever a window becomes the foreground window, call wglRealizeLayerPalette to realize its layer palettes again, even if the pixel type of the layer plane is RGBA. Because wglRealizeLayerPalette doesn't realize the palette of the main plane, use GDI palette functions to realize the main plane palette. + Read more on docs.microsoft.com. + + + + + + + Sets the palette entries in a given color-index layer plane for a specified device context. + + Type: int If the function succeeds, the return value is the number of entries that were set in the palette in the specified layer plane of the window. If the function fails or no pixel format is selected, the return value is zero. To get extended error information, call GetLastError. + + + Each color-index plane in a window has a palette with a size 2^n, where n is the number of bit planes in the layer plane. You cannot modify the transparent index of a palette. Use the wglRealizeLayerPalette function to realize the layer palette. Initially the layer palette contains only entries for white. The wglSetLayerPaletteEntries function doesn't set the palette entries of the main plane palette. To update the main plane palette, use GDI palette functions. + Read more on docs.microsoft.com. + + + + + + + The wglShareLists function enables multiple OpenGL rendering contexts to share a single display-list space. + + When the function succeeds, the return value is TRUE. When the function fails, the return value is FALSE and the display lists are not shared. To get extended error information, call GetLastError. + + + When you create an OpenGL rendering context, it has its own display-list space. The wglShareLists function enables a rendering context to share the display-list space of another rendering context; any number of rendering contexts can share a single display-list space. Once a rendering context shares a display-list space, the rendering context always uses the display-list space until the rendering context is deleted. When the last rendering context of a shared display-list space is deleted, the shared display-list space is deleted. All the indexes and definitions of display lists in a shared display-list space are shared. You can only share display lists with rendering contexts within the same process. However, not all rendering contexts in a process can share display lists. Rendering contexts can share display lists only if they use the same implementation of OpenGL functions. All client rendering contexts of a given pixel format can always share display lists. All rendering contexts of a shared display list must use an identical pixel format. Otherwise the results depend on the implementation of OpenGL used.
Note  The wglShareLists function is only available with OpenGL version 1.01 or later. To determine the version number of the implementation of OpenGL, call glGetString.
 
+ Read more on docs.microsoft.com. +
+
+ + The wglSwapLayerBuffers function swaps the front and back buffers in the overlay, underlay, and main planes of the window referenced by a specified device context. + If the function succeeds, the return value is TRUE. If the function fails, the return value is FALSE. To get extended error information, call GetLastError. + + When a layer plane doesn't include a back buffer, calling the wglSwapLayerBuffers function has no effect on that layer plane. After you call wglSwapLayerBuffers, the state of the back buffer content is given in the corresponding LAYERPLANEDESCRIPTOR structure of the layer plane or in the PIXELFORMATDESCRIPTOR structure of the main plane. The wglSwapLayerBuffers function swaps the front and back buffers in the specified layer planes simultaneously. Some devices don't support swapping layer planes individually; they swap all layer planes as a group. When the PFD_SWAP_LAYER_BUFFERS flag of the PIXELFORMATDESCRIPTOR structure is set, it indicates that a device can swap individual layer planes and that you can call wglSwapLayerBuffers. With applications that use multiple threads, before calling wglSwapLayerBuffers, clear all drawing commands in all threads drawing to the same window. + Read more on docs.microsoft.com. + + + + The wglUseFontBitmaps function creates a set of bitmap display lists for use in the current OpenGL rendering context. (Unicode) + + If the function succeeds, the return value is TRUE. If the function fails, the return value is FALSE. To get extended error information, call GetLastError. + + + The wglUseFontBitmaps function defines count display lists in the current OpenGL rendering context. Each display list has an identifying number, starting at listBase. Each display list consists of a single call to glBitmap. The definition of bitmap listBase + i is taken from the glyph first + i of the font currently selected in the device context specified by hdc. If a glyph is not defined, then the function defines an empty display list for it. The wglUseFontBitmaps function creates bitmap text in the plane of the screen. It enables the labeling of objects in OpenGL. In the current version of Microsoft's implementation of OpenGL, you cannot make GDI calls to a device context that has a double-buffered pixel format. Therefore, you cannot use the GDI fonts and text functions with such device contexts. You can use the wglUseFontBitmaps function to circumvent this limitation and draw text in a double-buffered device context. The function determines the parameters of each call to glBitmap as follows. + This doc was truncated. + Read more on docs.microsoft.com. + + + + + + + The wglUseFontOutlines function creates a set of display lists, one for each glyph of the currently selected outline font of a device context, for use with the current rendering context. (Unicode) + + When the function succeeds, the return value is TRUE. When the function fails, the return value is FALSE and no display lists are generated. To get extended error information, call GetLastError. + + + The wglUseFontOutlines function defines the glyphs of an outline font with display lists in the current rendering context. The wglUseFontOutlines function works with TrueType fonts only; stroke and raster fonts are not supported. Each display list consists of either line segments or polygons, and has a unique identifying number starting with the listBase number. The wglUseFontOutlines function approximates glyph outlines by subdividing the quadratic B-spline curves of the outline into line segments, until the distance between the outline and the interpolated midpoint is within the value specified by deviation. This is the final format used when format is WGL_FONT_LINES. When you specify WGL_FONT_OUTLINES, the display lists created don't contain any normals; thus lighting doesn't work properly. To get the correct lighting of lines use WGL_FONT_POLYGONS and set glPolygonMode( GL_FRONT, GL_LINE ). When you specify format as WGL_FONT_POLYGONS the outlines are further tessellated into separate triangles, triangle fans, triangle strips, or quadrilateral strips to create the surface of each glyph. With WGL_FONT_POLYGONS, the created display lists call glFrontFace( GL_CW ) or glFrontFace( GL_CCW ); thus the current front-face value might be altered. For the best appearance of text with WGL_FONT_POLYGONS, cull the back faces as follows: + + This doc was truncated. + Read more on docs.microsoft.com. + + + + + Represents a Win32 handle that can be closed with . + + +
+
diff --git a/源代码/StgSharp/obj/x64/Debug/netstandard2.1/ref/StgSharp.dll b/源代码/StgSharp/obj/x64/Debug/netstandard2.1/ref/StgSharp.dll new file mode 100644 index 00000000..6caae110 Binary files /dev/null and b/源代码/StgSharp/obj/x64/Debug/netstandard2.1/ref/StgSharp.dll differ diff --git a/源代码/StgSharp/obj/x64/Debug/netstandard2.1/refint/StgSharp.dll b/源代码/StgSharp/obj/x64/Debug/netstandard2.1/refint/StgSharp.dll new file mode 100644 index 00000000..6caae110 Binary files /dev/null and b/源代码/StgSharp/obj/x64/Debug/netstandard2.1/refint/StgSharp.dll differ diff --git a/源代码/StgSharp/obj/x64/RealDebug/netstandard2.1/StgSharp.AssemblyInfo.cs b/源代码/StgSharp/obj/x64/RealDebug/netstandard2.1/StgSharp.AssemblyInfo.cs index 49308e10..b97c071a 100644 --- a/源代码/StgSharp/obj/x64/RealDebug/netstandard2.1/StgSharp.AssemblyInfo.cs +++ b/源代码/StgSharp/obj/x64/RealDebug/netstandard2.1/StgSharp.AssemblyInfo.cs @@ -14,7 +14,7 @@ using System.Reflection; [assembly: System.Reflection.AssemblyCompanyAttribute("StgSharp")] [assembly: System.Reflection.AssemblyConfigurationAttribute("RealDebug")] [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] -[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+8148c10acd65bd764d3e12418a1ebd37938d8501")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] [assembly: System.Reflection.AssemblyProductAttribute("StgSharp")] [assembly: System.Reflection.AssemblyTitleAttribute("StgSharp")] [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] diff --git a/源代码/StgSharp/obj/x64/RealDebug/netstandard2.1/StgSharp.AssemblyInfoInputs.cache b/源代码/StgSharp/obj/x64/RealDebug/netstandard2.1/StgSharp.AssemblyInfoInputs.cache index 6f336787..8d6be633 100644 --- a/源代码/StgSharp/obj/x64/RealDebug/netstandard2.1/StgSharp.AssemblyInfoInputs.cache +++ b/源代码/StgSharp/obj/x64/RealDebug/netstandard2.1/StgSharp.AssemblyInfoInputs.cache @@ -1 +1 @@ -ca93447f31769911dc8294620befd7f0decfe42c9da322cc9f2b829b17d173fb +be8c87457a5494f89505f86881a5a0a81b016a0af5e05652a33e90ae26d1de26 diff --git a/源代码/StgSharp/obj/x64/RealDebug/netstandard2.1/StgSharp.assets.cache b/源代码/StgSharp/obj/x64/RealDebug/netstandard2.1/StgSharp.assets.cache index 5278710d..a6cd5153 100644 Binary files a/源代码/StgSharp/obj/x64/RealDebug/netstandard2.1/StgSharp.assets.cache and b/源代码/StgSharp/obj/x64/RealDebug/netstandard2.1/StgSharp.assets.cache differ diff --git a/源代码/StgSharp/obj/x64/Release/netstandard2.1/StgSharp.AssemblyInfoInputs.cache b/源代码/StgSharp/obj/x64/Release/netstandard2.1/StgSharp.AssemblyInfoInputs.cache index 738cc5f0..17fd3871 100644 --- a/源代码/StgSharp/obj/x64/Release/netstandard2.1/StgSharp.AssemblyInfoInputs.cache +++ b/源代码/StgSharp/obj/x64/Release/netstandard2.1/StgSharp.AssemblyInfoInputs.cache @@ -1 +1 @@ -d47c253e0b58efcf07d2b8af9d7bf025c4cd7551 +c1862356ddd7e2959b23a52710009da43652ba23933b4b87c911fea2ba456025 diff --git a/源代码/StgSharp/obj/x64/Release/netstandard2.1/StgSharp.GeneratedMSBuildEditorConfig.editorconfig b/源代码/StgSharp/obj/x64/Release/netstandard2.1/StgSharp.GeneratedMSBuildEditorConfig.editorconfig index 8874ea55..f1c64107 100644 --- a/源代码/StgSharp/obj/x64/Release/netstandard2.1/StgSharp.GeneratedMSBuildEditorConfig.editorconfig +++ b/源代码/StgSharp/obj/x64/Release/netstandard2.1/StgSharp.GeneratedMSBuildEditorConfig.editorconfig @@ -9,3 +9,5 @@ build_property.EnforceExtendedAnalyzerRules = build_property._SupportedPlatformList = Linux,macOS,Windows build_property.RootNamespace = StgSharp build_property.ProjectDir = D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharp\ +build_property.EnableComHosting = +build_property.EnableGeneratedComInterfaceComImportInterop = diff --git a/源代码/StgSharp/obj/x64/Release/netstandard2.1/StgSharp.assets.cache b/源代码/StgSharp/obj/x64/Release/netstandard2.1/StgSharp.assets.cache index b2ac604a..fce2fb56 100644 Binary files a/源代码/StgSharp/obj/x64/Release/netstandard2.1/StgSharp.assets.cache and b/源代码/StgSharp/obj/x64/Release/netstandard2.1/StgSharp.assets.cache differ diff --git a/源代码/StgSharp/obj/x64/Toollist/netstandard2.1/.NETStandard,Version=v2.1.AssemblyAttributes.cs b/源代码/StgSharp/obj/x64/Toollist/netstandard2.1/.NETStandard,Version=v2.1.AssemblyAttributes.cs new file mode 100644 index 00000000..348b87f0 --- /dev/null +++ b/源代码/StgSharp/obj/x64/Toollist/netstandard2.1/.NETStandard,Version=v2.1.AssemblyAttributes.cs @@ -0,0 +1,4 @@ +// +using System; +using System.Reflection; +[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETStandard,Version=v2.1", FrameworkDisplayName = ".NET Standard 2.1")] diff --git a/源代码/StgSharp/obj/x64/Toollist/netstandard2.1/StgSharp.AssemblyInfo.cs b/源代码/StgSharp/obj/x64/Toollist/netstandard2.1/StgSharp.AssemblyInfo.cs new file mode 100644 index 00000000..3f3eae7a --- /dev/null +++ b/源代码/StgSharp/obj/x64/Toollist/netstandard2.1/StgSharp.AssemblyInfo.cs @@ -0,0 +1,23 @@ +//------------------------------------------------------------------------------ +// +// 此代码由工具生成。 +// 运行时版本:4.0.30319.42000 +// +// 对此文件的更改可能会导致不正确的行为,并且如果 +// 重新生成代码,这些更改将会丢失。 +// +//------------------------------------------------------------------------------ + +using System; +using System.Reflection; + +[assembly: System.Reflection.AssemblyCompanyAttribute("StgSharp")] +[assembly: System.Reflection.AssemblyConfigurationAttribute("Toollist")] +[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] +[assembly: System.Reflection.AssemblyProductAttribute("StgSharp")] +[assembly: System.Reflection.AssemblyTitleAttribute("StgSharp")] +[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] + +// 由 MSBuild WriteCodeFragment 类生成。 + diff --git a/源代码/StgSharp/obj/x64/Toollist/netstandard2.1/StgSharp.AssemblyInfoInputs.cache b/源代码/StgSharp/obj/x64/Toollist/netstandard2.1/StgSharp.AssemblyInfoInputs.cache new file mode 100644 index 00000000..7728f6fa --- /dev/null +++ b/源代码/StgSharp/obj/x64/Toollist/netstandard2.1/StgSharp.AssemblyInfoInputs.cache @@ -0,0 +1 @@ +004645ff71b6cc11f94f0960e2cc1e083099895685eb8875acaea7993c5ea8da diff --git a/源代码/StgSharp/obj/x64/Toollist/netstandard2.1/StgSharp.GeneratedMSBuildEditorConfig.editorconfig b/源代码/StgSharp/obj/x64/Toollist/netstandard2.1/StgSharp.GeneratedMSBuildEditorConfig.editorconfig new file mode 100644 index 00000000..44183f7b --- /dev/null +++ b/源代码/StgSharp/obj/x64/Toollist/netstandard2.1/StgSharp.GeneratedMSBuildEditorConfig.editorconfig @@ -0,0 +1,15 @@ +is_global = true +build_property.CsWin32InputMetadataPaths = C:\Users\Nitlo\.nuget\packages\microsoft.windows.sdk.win32metadata\55.0.45-preview\Windows.Win32.winmd|C:\Users\Nitlo\.nuget\packages\microsoft.windows.wdk.win32metadata\0.9.9-experimental\Windows.Wdk.winmd +build_property.CsWin32InputDocPaths = C:\Users\Nitlo\.nuget\packages\microsoft.windows.sdk.win32docs\0.1.42-alpha\apidocs.msgpack +build_property.TargetFramework = netstandard2.1 +build_property.TargetPlatformMinVersion = 7.0 +build_property.UsingMicrosoftNETSdkWeb = +build_property.ProjectTypeGuids = +build_property.InvariantGlobalization = +build_property.PlatformNeutralAssembly = +build_property.EnforceExtendedAnalyzerRules = +build_property._SupportedPlatformList = Linux,macOS,Windows +build_property.RootNamespace = StgSharp +build_property.ProjectDir = D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharp\ +build_property.EnableComHosting = +build_property.EnableGeneratedComInterfaceComImportInterop = diff --git a/源代码/StgSharp/obj/x64/Toollist/netstandard2.1/StgSharp.assets.cache b/源代码/StgSharp/obj/x64/Toollist/netstandard2.1/StgSharp.assets.cache new file mode 100644 index 00000000..f53fb816 Binary files /dev/null and b/源代码/StgSharp/obj/x64/Toollist/netstandard2.1/StgSharp.assets.cache differ diff --git a/源代码/StgSharp/obj/x64/Toollist/netstandard2.1/StgSharp.csproj.AssemblyReference.cache b/源代码/StgSharp/obj/x64/Toollist/netstandard2.1/StgSharp.csproj.AssemblyReference.cache new file mode 100644 index 00000000..cf9cb2a3 Binary files /dev/null and b/源代码/StgSharp/obj/x64/Toollist/netstandard2.1/StgSharp.csproj.AssemblyReference.cache differ diff --git a/源代码/StgSharp/runsdvui.cmd b/源代码/StgSharp/runsdvui.cmd deleted file mode 100644 index 6d82e217..00000000 --- a/源代码/StgSharp/runsdvui.cmd +++ /dev/null @@ -1,2 +0,0 @@ -cd /d "D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharp" &msbuild "StgSharp.csproj" /t:sdvViewer /p:configuration="Debug" /p:platform="x64" /p:SolutionDir="D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码" -exit %errorlevel% \ No newline at end of file diff --git a/源代码/StgSharpC.dll b/源代码/StgSharpC.dll index c8cc9fa8..e84be773 100644 Binary files a/源代码/StgSharpC.dll and b/源代码/StgSharpC.dll differ diff --git a/源代码/StgSharpC.exp b/源代码/StgSharpC.exp index c0792a89..3afca114 100644 Binary files a/源代码/StgSharpC.exp and b/源代码/StgSharpC.exp differ diff --git a/源代码/StgSharpC.lib b/源代码/StgSharpC.lib index 150305a7..fa85b596 100644 Binary files a/源代码/StgSharpC.lib and b/源代码/StgSharpC.lib differ diff --git a/源代码/StgSharpC.pdb b/源代码/StgSharpC.pdb index 814ffe23..6f374ca3 100644 Binary files a/源代码/StgSharpC.pdb and b/源代码/StgSharpC.pdb differ diff --git a/源代码/StgSharpC/StgSharpC.c b/源代码/StgSharpC/StgSharpC.c index 28131e42..520d0f7b 100644 --- a/源代码/StgSharpC/StgSharpC.c +++ b/源代码/StgSharpC/StgSharpC.c @@ -30,18 +30,19 @@ SSCAPI void _cdecl initGL(int majorVersion, int minorVersion) -SSCAPI unsigned int loadShaderCode(char* const shaderCode, GLint shadertype) +SSCAPI unsigned int loadShaderCode(GladGLContext* context, char* const shaderCode, GLint shadertype) { if (currentContext != NULL) { - unsigned int shader = currentContext->CreateShader(shadertype); - currentContext->ShaderSource(shader, 1, &shaderCode, NULL); - currentContext->CompileShader(shader); + unsigned int shader = context->CreateShader(shadertype); + context->ShaderSource(shader, 1, &shaderCode, NULL); + context->CompileShader(shader); int success; - currentContext->GetShaderiv(shader, GL_COMPILE_STATUS, &success); + context->GetShaderiv(shader, GL_COMPILE_STATUS, &success); if (!success) { - currentContext->GetShaderInfoLog(shader, 512, NULL, infolog); + context->GetShaderInfoLog(shader, 512, NULL, infolog); + infolog[511] = '\0'; return 0; } else @@ -55,15 +56,15 @@ SSCAPI unsigned int loadShaderCode(char* const shaderCode, GLint shadertype) } } -SSCAPI unsigned int linkShaderProgram(GLuint shaderProgram) +SSCAPI unsigned int linkShaderProgram(GladGLContext* context, GLuint shaderProgram) { - currentContext->LinkProgram(shaderProgram); + context->LinkProgram(shaderProgram); int success; - currentContext->GetProgramiv(shaderProgram, GL_LINK_STATUS, &success); + context->GetProgramiv(shaderProgram, GL_LINK_STATUS, &success); if (!success) { - currentContext->GetProgramInfoLog(shaderProgram, 512, NULL, infolog); + context->GetProgramInfoLog(shaderProgram, 512, NULL, infolog); return 0; } else @@ -82,15 +83,16 @@ SSCAPI void SSCDECL loadImageData(char* location, Image* out, imageLoader loader out->pixelPtr = loader(location, &(out->width), &(out->height), &(out->channel), 0); } +SSCAPI void SSCDECL unloadImageData(Image* out) +{ + free(out->pixelPtr); +} + char* _cdecl readLog() { infolog[511] = '\0'; return &infolog; } -SSCAPI void SSCDECL setCurrentGLContext(GLFWwindow* window, GladGLContext* contextPtr) -{ - glfwMakeContextCurrent(window); - currentContext = contextPtr; -} + diff --git a/源代码/StgSharpC/StgSharpGraphic.vcxproj b/源代码/StgSharpC/StgSharpGraphic.vcxproj index ae300e8f..6ccf757b 100644 --- a/源代码/StgSharpC/StgSharpGraphic.vcxproj +++ b/源代码/StgSharpC/StgSharpGraphic.vcxproj @@ -33,6 +33,14 @@ Release x64 + + Toollist + Win32 + + + Toollist + x64 + 17.0 @@ -55,6 +63,12 @@ v143 Unicode + + DynamicLibrary + true + v143 + Unicode + DynamicLibrary true @@ -82,6 +96,13 @@ Unicode x64 + + DynamicLibrary + true + v143 + Unicode + x64 + DynamicLibrary true @@ -108,6 +129,9 @@ + + + @@ -120,6 +144,9 @@ + + + @@ -139,6 +166,12 @@ $(SolutionDir) $(VC_LibraryPath_x64);$(WindowsSDK_LibraryPath_x64);$(ProjectDir)lib + + StgSharpC + $(VC_IncludePath);$(WindowsSDK_IncludePath);$(ProjectDir)include + $(SolutionDir) + $(VC_LibraryPath_x64);$(WindowsSDK_LibraryPath_x64);$(ProjectDir)lib + StgSharpC $(VC_IncludePath);$(WindowsSDK_IncludePath);$(ProjectDir)include @@ -151,6 +184,9 @@ StgSharpGraphic + + StgSharpGraphic + StgSharpGraphic @@ -189,6 +225,19 @@ false + + + Level3 + true + WIN32;_DEBUG;STGSHARPGRAPHIC_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + true + + + Windows + true + false + + Level3 @@ -261,6 +310,27 @@ LinkVerbose + + + Level3 + true + GLFW_BUILD_DLL;_DEBUG;STGSHARPGRAPHIC_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + true + stdcpp20 + stdc17 + CompileAsC + true + All + + + Windows + true + false + $(ProjectDir)lib + OpenGL32.lib;glfw3.lib;$(CoreLibraryDependencies);%(AdditionalDependencies) + LinkVerbose + + Level3 diff --git a/源代码/StgSharpC/cache.cpp b/源代码/StgSharpC/cache.cpp new file mode 100644 index 00000000..7c7c24ec --- /dev/null +++ b/源代码/StgSharpC/cache.cpp @@ -0,0 +1,393 @@ +#include +#include +#include +#include + + +#define SIMPLE_DEMO 0 + +#if defined SIMPLE_DEMO && SIMPLE_DEMO ==1 + +LRESULT CALLBACK WindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam); + +int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) +{ + // Create a window + const char* className = "OpenGLWindowClass"; + const char* windowTitle = "OpenGL Window"; + const int windowWidth = 800; + const int windowHeight = 600; + + WNDCLASSEX wc = {}; + wc.cbSize = sizeof(WNDCLASSEX); + wc.style = CS_HREDRAW | CS_VREDRAW | CS_OWNDC; + wc.lpfnWndProc = WindowProc; + wc.hInstance = hInstance; + wc.hCursor = LoadCursor(NULL, IDC_ARROW); + wc.lpszClassName = _T("OpenGLWindowClass"); + + if (!RegisterClassEx(&wc)) + { + MessageBox(NULL, _T("Failed to register window class"), _T("Error"), MB_OK | MB_ICONERROR); + return -1; + } + + HWND hwnd = CreateWindowEx( + 0, //窗口扩展风格 + _T("OpenGLWindowClass"), //指向注册类名的指针 + _T("OpenGL Window"), //指向窗口名称的指针 + WS_OVERLAPPEDWINDOW, //窗口风格 + CW_USEDEFAULT, //窗口水平位置 + CW_USEDEFAULT, //窗口垂直位置 + windowWidth, //窗口宽度 + windowHeight, //窗口深度 + NULL, //父窗口的句柄 + NULL, //菜单的句柄或是子窗口的标识符 + hInstance, //应用程序实例的句柄 + NULL //指向窗口的创建数据 + ); + + if (!hwnd) + { + MessageBox(NULL, _T("Failed to create window"), _T("Error"), MB_OK | MB_ICONERROR); + return -1; + } + else + { + UpdateWindow(hwnd); + ShowWindow(hwnd, SW_SHOW); + } + + HDC hdc = GetDC(hwnd); + + // Set pixel format + PIXELFORMATDESCRIPTOR pfd = {}; + pfd.nSize = sizeof(PIXELFORMATDESCRIPTOR); + pfd.nVersion = 1; + pfd.dwFlags = PFD_DRAW_TO_WINDOW | PFD_SUPPORT_OPENGL | PFD_DOUBLEBUFFER; + pfd.iPixelType = PFD_TYPE_RGBA; + pfd.cColorBits = 32; + pfd.cDepthBits = 24; + pfd.cStencilBits = 8; + pfd.iLayerType = PFD_MAIN_PLANE; + + int pixelFormat = ChoosePixelFormat(hdc, &pfd); + if (!SetPixelFormat(hdc, pixelFormat, &pfd)) + { + MessageBox(NULL, _T("Failed to set pixel format"), _T("Error"), MB_OK | MB_ICONERROR); + return -1; + } + + // Create and activate OpenGL context + HGLRC hglrc = wglCreateContext(hdc); + if (!wglMakeCurrent(hdc, hglrc)) + { + MessageBox(NULL, _T("Failed to make OpenGL context current"), _T("Error"), MB_OK | MB_ICONERROR); + return -1; + } + + MessageBoxA(0, (char*)glGetString(GL_VERSION), "OPENGL VERSION", 0); + + // Now you have an active OpenGL context + + // Main message loop + MSG msg = {}; + while (GetMessage(&msg, NULL, 0, 0)) + { + TranslateMessage(&msg); + DispatchMessage(&msg); + } + + + // Clean up and exit + wglMakeCurrent(NULL, NULL); + wglDeleteContext(hglrc); + ReleaseDC(hwnd, hdc); + DestroyWindow(hwnd); + + return 0; +} + +LRESULT CALLBACK WindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam) +{ + switch (uMsg) + { + case WM_CLOSE: + PostQuitMessage(0); + return 0; + + case WM_DESTROY: + return 0; + } + return DefWindowProc(hwnd, uMsg, wParam, lParam); +} + +#else +// Sample code showing how to create a modern OpenGL window and rendering context on Win32. + +#include + +typedef HGLRC WINAPI wglCreateContextAttribsARB_type(HDC hdc, HGLRC hShareContext, const int* attribList); + +wglCreateContextAttribsARB_type* wglCreateContextAttribsARB; + +// See https://www.opengl.org/registry/specs/ARB/wgl_create_context.txt for all values +#define WGL_CONTEXT_MAJOR_VERSION_ARB 0x2091 +#define WGL_CONTEXT_MINOR_VERSION_ARB 0x2092 +#define WGL_CONTEXT_PROFILE_MASK_ARB 0x9126 + +#define WGL_CONTEXT_CORE_PROFILE_BIT_ARB 0x00000001 + +typedef BOOL WINAPI wglChoosePixelFormatARB_type(HDC hdc, const int* piAttribIList, const FLOAT* pfAttribFList, UINT nMaxFormats, int* piFormats, UINT* nNumFormats); + +wglChoosePixelFormatARB_type* wglChoosePixelFormatARB; + +// See https://www.opengl.org/registry/specs/ARB/wgl_pixel_format.txt for all values +#define WGL_DRAW_TO_WINDOW_ARB 0x2001 +#define WGL_ACCELERATION_ARB 0x2003 +#define WGL_SUPPORT_OPENGL_ARB 0x2010 +#define WGL_DOUBLE_BUFFER_ARB 0x2011 +#define WGL_PIXEL_TYPE_ARB 0x2013 +#define WGL_COLOR_BITS_ARB 0x2014 +#define WGL_DEPTH_BITS_ARB 0x2022 +#define WGL_STENCIL_BITS_ARB 0x2023 + +#define WGL_FULL_ACCELERATION_ARB 0x2027 +#define WGL_TYPE_RGBA_ARB 0x202B + +static void +fatal_error(const char* msg) +{ + MessageBoxA(NULL, msg, "Error", MB_OK | MB_ICONEXCLAMATION); + exit(EXIT_FAILURE); +} + +static void +init_opengl_extensions(void) +{ + // Before we can load extensions, we need a dummy OpenGL context, created using a dummy window. + // We use a dummy window because you can only set the pixel format for a window once. For the + // real window, we want to use wglChoosePixelFormatARB (so we can potentially specify options + // that aren't available in PIXELFORMATDESCRIPTOR), but we can't load and use that before we + // have a context. + WNDCLASSA window_class = {}; + window_class.style = CS_HREDRAW | CS_VREDRAW | CS_OWNDC; + window_class.lpfnWndProc = DefWindowProcA; + window_class.hInstance = GetModuleHandle(0); + window_class.lpszClassName = "Dummy_WGL_djuasiodwa"; + + if (!RegisterClassA(&window_class)) { + fatal_error("Failed to register dummy OpenGL window."); + } + + HWND dummy_window = CreateWindowExA( + 0, + window_class.lpszClassName, + "Dummy OpenGL Window", + 0, + CW_USEDEFAULT, + CW_USEDEFAULT, + CW_USEDEFAULT, + CW_USEDEFAULT, + 0, + 0, + window_class.hInstance, + 0); + + if (!dummy_window) { + fatal_error("Failed to create dummy OpenGL window."); + } + + HDC dummy_dc = GetDC(dummy_window); + + PIXELFORMATDESCRIPTOR pfd = {}; + pfd.nSize = sizeof(pfd); + pfd.nVersion = 1; + pfd.iPixelType = PFD_TYPE_RGBA; + pfd.dwFlags = PFD_DRAW_TO_WINDOW | PFD_SUPPORT_OPENGL | PFD_DOUBLEBUFFER; + pfd.cColorBits = 32; + pfd.cAlphaBits = 8; + pfd.iLayerType = PFD_MAIN_PLANE; + pfd.cDepthBits = 24; + pfd.cStencilBits = 8; + + int pixel_format = ChoosePixelFormat(dummy_dc, &pfd); + if (!pixel_format) { + fatal_error("Failed to find a suitable pixel format."); + } + if (!SetPixelFormat(dummy_dc, pixel_format, &pfd)) { + fatal_error("Failed to set the pixel format."); + } + + HGLRC dummy_context = wglCreateContext(dummy_dc); + if (!dummy_context) { + fatal_error("Failed to create a dummy OpenGL rendering context."); + } + + if (!wglMakeCurrent(dummy_dc, dummy_context)) { + fatal_error("Failed to activate dummy OpenGL rendering context."); + } + + wglCreateContextAttribsARB = (wglCreateContextAttribsARB_type*)wglGetProcAddress("wglCreateContextAttribsARB"); + wglChoosePixelFormatARB = (wglChoosePixelFormatARB_type*)wglGetProcAddress("wglChoosePixelFormatARB"); + + wglMakeCurrent(dummy_dc, 0); + wglDeleteContext(dummy_context); + ReleaseDC(dummy_window, dummy_dc); + DestroyWindow(dummy_window); +} + +static HGLRC +init_opengl(HDC real_dc) +{ + init_opengl_extensions(); + + // Now we can choose a pixel format the modern way, using wglChoosePixelFormatARB. + int pixel_format_attribs[] = { + WGL_DRAW_TO_WINDOW_ARB, GL_TRUE, + WGL_SUPPORT_OPENGL_ARB, GL_TRUE, + WGL_DOUBLE_BUFFER_ARB, GL_TRUE, + WGL_ACCELERATION_ARB, WGL_FULL_ACCELERATION_ARB, + WGL_PIXEL_TYPE_ARB, WGL_TYPE_RGBA_ARB, + WGL_COLOR_BITS_ARB, 32, + WGL_DEPTH_BITS_ARB, 24, + WGL_STENCIL_BITS_ARB, 8, + 0 + }; + + int pixel_format; + UINT num_formats; + wglChoosePixelFormatARB(real_dc, pixel_format_attribs, 0, 1, &pixel_format, &num_formats); + if (!num_formats) { + fatal_error("Failed to set the OpenGL 3.3 pixel format."); + } + + PIXELFORMATDESCRIPTOR pfd; + DescribePixelFormat(real_dc, pixel_format, sizeof(pfd), &pfd); + if (!SetPixelFormat(real_dc, pixel_format, &pfd)) { + fatal_error("Failed to set the OpenGL 3.3 pixel format."); + } + + // Specify that we want to create an OpenGL 4.6 core profile context + int gl33_attribs[] = { + WGL_CONTEXT_MAJOR_VERSION_ARB, 4, + WGL_CONTEXT_MINOR_VERSION_ARB, 6, + WGL_CONTEXT_PROFILE_MASK_ARB, WGL_CONTEXT_CORE_PROFILE_BIT_ARB, + 0, + }; + + HGLRC gl33_context = wglCreateContextAttribsARB(real_dc, 0, gl33_attribs); + if (!gl33_context) { + fatal_error("Failed to create OpenGL 3.3 context."); + } + + if (!wglMakeCurrent(real_dc, gl33_context)) { + fatal_error("Failed to activate OpenGL 3.3 rendering context."); + } + + return gl33_context; +} + +static LRESULT CALLBACK +window_callback(HWND window, UINT msg, WPARAM wparam, LPARAM lparam) +{ + LRESULT result = 0; + + switch (msg) { + case WM_CLOSE: + case WM_DESTROY: + PostQuitMessage(0); + break; + default: + result = DefWindowProcA(window, msg, wparam, lparam); + break; + } + + return result; +} + +static HWND +create_window(HINSTANCE inst) +{ + WNDCLASSA window_class = {}; + window_class.style = CS_HREDRAW | CS_VREDRAW | CS_OWNDC; + window_class.lpfnWndProc = window_callback; + window_class.hInstance = inst; + window_class.hCursor = LoadCursor(0, IDC_ARROW); + window_class.hbrBackground = 0; + window_class.lpszClassName = "WGL_fdjhsklf"; + + if (!RegisterClassA(&window_class)) { + fatal_error("Failed to register window."); + } + + // Specify a desired width and height, then adjust the rect so the window's client area will be + // that size. + RECT rect = { }; + rect.right = 1024; + rect.bottom = 576; + + DWORD window_style = WS_OVERLAPPEDWINDOW; + AdjustWindowRect(&rect, window_style, false); + + HWND window = CreateWindowExA( + 0, + window_class.lpszClassName, + "OpenGL", + window_style, + CW_USEDEFAULT, + CW_USEDEFAULT, + rect.right - rect.left, + rect.bottom - rect.top, + 0, + 0, + inst, + 0); + + if (!window) { + fatal_error("Failed to create window."); + } + + return window; +} + + +int WINAPI +WinMain(HINSTANCE inst, HINSTANCE prev, LPSTR cmd_line, int show) +{ + HWND window = create_window(inst); + HDC gldc = GetDC(window); + HGLRC glrc = init_opengl(gldc); + + ShowWindow(window, show); + UpdateWindow(window); + + + + + bool running = true; + while (running) { + MSG msg; + while (PeekMessageA(&msg, 0, 0, 0, PM_REMOVE)) { + if (msg.message == WM_QUIT) { + running = false; + } + else { + TranslateMessage(&msg); + DispatchMessageA(&msg); + } + } + + glClearColor(1.0f, 0.5f, 0.5f, 1.0f); + glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); + + // Do OpenGL rendering here + + SwapBuffers(gldc); + } + + return 0; +} + +#endif + diff --git a/源代码/StgSharpC/include/StgSharpC.h b/源代码/StgSharpC/include/StgSharpC.h index f8dfb459..8bfecae9 100644 --- a/源代码/StgSharpC/include/StgSharpC.h +++ b/源代码/StgSharpC/include/StgSharpC.h @@ -47,11 +47,12 @@ extern "C" SSCAPI char* infolog[512]; SSCAPI void SSCDECL initGL(int majorVersion, int minorVersion); - SSCAPI unsigned int SSCDECL loadShaderCode(char* const shaderCode, GLint shadertype); - SSCAPI unsigned int SSCDECL linkShaderProgram(GLuint shadertype); + SSCAPI unsigned int SSCDECL loadShaderCode(GladGLContext* context, char* const shaderCode, GLint shadertype); + SSCAPI unsigned int SSCDECL linkShaderProgram(GladGLContext* context, GLuint shadertype); SSCAPI void SSCDECL loadImageData(char* location, Image* out, imageLoader loader); - SSCAPI void _cdecl setCurrentGLContext(GLFWwindow* window, GladGLContext* contextPtr); - SSCAPI char* _cdecl readLog(void); + SSCAPI void SSCDECL unloadImageData(Image* out); + SSCAPI void SSCDECL setCurrentGLContext(GLFWwindow* window, GladGLContext* contextPtr); + SSCAPI char* SSCDECL readLog(void); //linear related function diff --git a/源代码/StgSharpC/include/stb_image.h b/源代码/StgSharpC/include/stb_image.h index ad094d00..d4d50020 100644 --- a/源代码/StgSharpC/include/stb_image.h +++ b/源代码/StgSharpC/include/stb_image.h @@ -425,6 +425,7 @@ extern "C" { #ifndef STBI_NO_STDIO STBIDEF stbi_uc* stbi_load(char const* filename, int* x, int* y, int* channels_in_file, int desired_channels); + STBIDEF void stbi_load_to_target(char const* filename, int* x, int* y, stbi_uc* target, int* channels_in_file, int desired_channels); STBIDEF stbi_uc* stbi_load_from_file(FILE* f, int* x, int* y, int* channels_in_file, int desired_channels); // for stbi_load_from_file, file pointer is left pointing immediately after image #endif diff --git a/源代码/StgSharpC/stb_image.c b/源代码/StgSharpC/stb_image.c index c3c75a86..73e0575d 100644 --- a/源代码/StgSharpC/stb_image.c +++ b/源代码/StgSharpC/stb_image.c @@ -828,6 +828,19 @@ STBIDEF stbi_uc* stbi_load(char const* filename, int* x, int* y, int* comp, int return result; } +STBIDEF void stbi_load_to_target(char const* filename, int* x, int* y, stbi_uc* target, int* comp, int req_comp) +{ + FILE* f = stbi__fopen(filename, "rb"); + unsigned char* result; + if (!f) + { + *target = "can't fopen, Unable to open file"; return; + } + result = stbi_load_from_file(f, x, y, comp, req_comp); + fclose(f); +} + + STBIDEF stbi_uc* stbi_load_from_file(FILE* f, int* x, int* y, int* comp, int req_comp) { unsigned char* result; diff --git a/源代码/StgSharpC/x64/Debug/StgSharpC.Build.CppClean.log b/源代码/StgSharpC/x64/Debug/StgSharpC.Build.CppClean.log index f2bdb400..e69de29b 100644 --- a/源代码/StgSharpC/x64/Debug/StgSharpC.Build.CppClean.log +++ b/源代码/StgSharpC/x64/Debug/StgSharpC.Build.CppClean.log @@ -1,35 +0,0 @@ -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\vc143.pdb -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\vc143.idb -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\wgl.obj -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\wgl.cod -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\stgsharpc.obj -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\stgsharpc.cod -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\stb_image.obj -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\stb_image.cod -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\mat4.obj -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\mat4.cod -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\mat3.obj -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\mat3.cod -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\mat2.obj -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\mat2.cod -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\linear.obj -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\linear.cod -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\glsc2.obj -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\glsc2.cod -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\dllmain.obj -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\dllmain.cod -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\debuger.obj -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\debuger.cod -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\stgsharpc.ilk -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc.dll -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc.pdb -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.tlog\cl.command.1.tlog -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\stgsharpc.tlog\cl.items.tlog -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\stgsharpc.tlog\cl.read.1.tlog -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\stgsharpc.tlog\cl.write.1.tlog -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\stgsharpc.tlog\link.command.1.tlog -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\stgsharpc.tlog\link.read.1.tlog -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\stgsharpc.tlog\link.write.1.tlog -d:\nitloadindustry\研究项目\1-flagship\th2020\projectfile\源代码\stgsharpc\x64\debug\stgsharpc.tlog\link.write.2u.tlog diff --git a/源代码/StgSharpC/x64/Debug/StgSharpC.cod b/源代码/StgSharpC/x64/Debug/StgSharpC.cod index 142da976..193c0ce0 100644 --- a/源代码/StgSharpC/x64/Debug/StgSharpC.cod +++ b/源代码/StgSharpC/x64/Debug/StgSharpC.cod @@ -326,12 +326,12 @@ PUBLIC initGL PUBLIC loadShaderCode PUBLIC linkShaderProgram PUBLIC loadImageData -PUBLIC setCurrentGLContext +PUBLIC unloadImageData PUBLIC readLog PUBLIC __JustMyCode_Default EXTRN glfwInit:PROC EXTRN glfwWindowHint:PROC -EXTRN glfwMakeContextCurrent:PROC +EXTRN __imp_free:PROC EXTRN __imp___acrt_iob_func:PROC EXTRN __imp___stdio_common_vfprintf:PROC EXTRN stbi_load:PROC @@ -378,13 +378,13 @@ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$loadShaderCode DD imagerel $LN7 - DD imagerel $LN7+284 + DD imagerel $LN7+317 DD imagerel $unwind$loadShaderCode pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$linkShaderProgram DD imagerel $LN5 - DD imagerel $LN5+217 + DD imagerel $LN5+223 DD imagerel $unwind$linkShaderProgram pdata ENDS ; COMDAT pdata @@ -395,9 +395,9 @@ $pdata$loadImageData DD imagerel $LN4 pdata ENDS ; COMDAT pdata pdata SEGMENT -$pdata$setCurrentGLContext DD imagerel $LN3 - DD imagerel $LN3+72 - DD imagerel $unwind$setCurrentGLContext +$pdata$unloadImageData DD imagerel $LN3 + DD imagerel $LN3+58 + DD imagerel $unwind$unloadImageData pdata ENDS ; COMDAT pdata pdata SEGMENT @@ -422,10 +422,10 @@ $unwind$readLog DD 025050f01H xdata ENDS ; COMDAT xdata xdata SEGMENT -$unwind$setCurrentGLContext DD 025051801H - DD 01132318H - DD 0700c001dH - DD 0500bH +$unwind$unloadImageData DD 025051301H + DD 010e2313H + DD 07007001dH + DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT @@ -436,15 +436,15 @@ $unwind$loadImageData DD 035051d01H xdata ENDS ; COMDAT voltbl voltbl SEGMENT -_volmd DB 034H - DB 0c0H +_volmd DB 03aH + DB 0c6H voltbl ENDS ; COMDAT xdata xdata SEGMENT -$unwind$linkShaderProgram DD 025053b19H - DD 010d2312H - DD 070060021H - DD 05005H +$unwind$linkShaderProgram DD 025054119H + DD 01122317H + DD 0700b0021H + DD 0500aH DD imagerel __GSHandlerCheck DD 0f8H xdata ENDS @@ -469,15 +469,15 @@ linkShaderProgram$rtcFrameData DD 01H CONST ENDS ; COMDAT voltbl voltbl SEGMENT -_volmd DW 03aH - DW 0103H +_volmd DW 040H + DW 0124H voltbl ENDS ; COMDAT xdata xdata SEGMENT -$unwind$loadShaderCode DD 025054119H - DD 01122317H - DD 0700b0025H - DD 0500aH +$unwind$loadShaderCode DD 025054719H + DD 0118231dH + DD 070110025H + DD 05010H DD imagerel __GSHandlerCheck DD 0118H xdata ENDS @@ -575,7 +575,7 @@ _TEXT ENDS _TEXT SEGMENT readLog PROC ; COMDAT -; 86 : { +; 92 : { $LN3: 00000 40 55 push rbp @@ -587,7 +587,7 @@ $LN3: 00 00 lea rcx, OFFSET FLAT:__59F96598_StgSharpC@c 00016 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 87 : infolog[511] = '\0'; +; 93 : infolog[511] = '\0'; 0001b b8 08 00 00 00 mov eax, 8 00020 48 69 c0 ff 01 @@ -597,12 +597,12 @@ $LN3: 0002e 48 c7 04 01 00 00 00 00 mov QWORD PTR [rcx+rax], 0 -; 88 : return &infolog; +; 94 : return &infolog; 00036 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:infolog -; 89 : } +; 95 : } 0003d 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] @@ -613,47 +613,40 @@ readLog ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File D:\NitloadIndustry\Ñо¿ÏîĿ\1-Flagship\TH2020\ProjectFile\Դ´úÂë\StgSharpC\StgSharpC.c -; COMDAT setCurrentGLContext +; COMDAT unloadImageData _TEXT SEGMENT -window$ = 224 -contextPtr$ = 232 -setCurrentGLContext PROC ; COMDAT +out$ = 224 +unloadImageData PROC ; COMDAT -; 92 : { +; 87 : { $LN3: - 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx - 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx - 0000a 55 push rbp - 0000b 57 push rdi - 0000c 48 81 ec e8 00 + 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx + 00005 55 push rbp + 00006 57 push rdi + 00007 48 81 ec e8 00 00 00 sub rsp, 232 ; 000000e8H - 00013 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] - 00018 48 8d 0d 00 00 + 0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] + 00013 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__59F96598_StgSharpC@c - 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode + 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 93 : glfwMakeContextCurrent(window); +; 88 : free(out->pixelPtr); - 00024 48 8b 8d e0 00 - 00 00 mov rcx, QWORD PTR window$[rbp] - 0002b e8 00 00 00 00 call glfwMakeContextCurrent + 0001f 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 + 00 call QWORD PTR __imp_free -; 94 : currentContext = contextPtr; +; 89 : } - 00030 48 8b 85 e8 00 - 00 00 mov rax, QWORD PTR contextPtr$[rbp] - 00037 48 89 05 00 00 - 00 00 mov QWORD PTR currentContext, rax - -; 95 : } - - 0003e 48 8d a5 c8 00 + 00030 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] - 00045 5f pop rdi - 00046 5d pop rbp - 00047 c3 ret 0 -setCurrentGLContext ENDP + 00037 5f pop rdi + 00038 5d pop rbp + 00039 c3 ret 0 +unloadImageData ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File D:\NitloadIndustry\Ñо¿ÏîĿ\1-Flagship\TH2020\ProjectFile\Դ´úÂë\StgSharpC\StgSharpC.c @@ -664,7 +657,7 @@ out$ = 232 loader$ = 240 loadImageData PROC ; COMDAT -; 77 : { +; 78 : { $LN4: 00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -679,14 +672,14 @@ $LN4: 00 00 lea rcx, OFFSET FLAT:__59F96598_StgSharpC@c 00024 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 78 : if (loader == NULL) +; 79 : if (loader == NULL) 00029 48 83 bd f0 00 00 00 00 cmp QWORD PTR loader$[rbp], 0 00031 75 0e jne SHORT $LN2@loadImageD -; 79 : { -; 80 : loader = stbi_load; +; 80 : { +; 81 : loader = stbi_load; 00033 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:stbi_load @@ -694,8 +687,8 @@ $LN4: 00 00 mov QWORD PTR loader$[rbp], rax $LN2@loadImageD: -; 81 : } -; 82 : out->pixelPtr = loader(location, &(out->width), &(out->height), &(out->channel), 0); +; 82 : } +; 83 : out->pixelPtr = loader(location, &(out->width), &(out->height), &(out->channel), 0); 00041 48 8b 85 e8 00 00 00 mov rax, QWORD PTR out$[rbp] @@ -717,7 +710,7 @@ $LN2@loadImageD: 00 00 mov rcx, QWORD PTR out$[rbp] 00080 48 89 41 10 mov QWORD PTR [rcx+16], rax -; 83 : } +; 84 : } 00084 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] @@ -732,112 +725,114 @@ _TEXT ENDS _TEXT SEGMENT success$ = 4 __$ArrayPad$ = 216 -shaderProgram$ = 256 +context$ = 256 +shaderProgram$ = 264 linkShaderProgram PROC ; COMDAT -; 59 : { +; 60 : { $LN5: - 00000 89 4c 24 08 mov DWORD PTR [rsp+8], ecx - 00004 55 push rbp - 00005 57 push rdi - 00006 48 81 ec 08 01 + 00000 89 54 24 10 mov DWORD PTR [rsp+16], edx + 00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx + 00009 55 push rbp + 0000a 57 push rdi + 0000b 48 81 ec 08 01 00 00 sub rsp, 264 ; 00000108H - 0000d 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] - 00012 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32] - 00017 b9 0a 00 00 00 mov ecx, 10 - 0001c b8 cc cc cc cc mov eax, -858993460 ; ccccccccH - 00021 f3 ab rep stosd - 00023 8b 8c 24 28 01 - 00 00 mov ecx, DWORD PTR [rsp+296] - 0002a 48 8b 05 00 00 + 00012 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] + 00017 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32] + 0001c b9 0a 00 00 00 mov ecx, 10 + 00021 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH + 00026 f3 ab rep stosd + 00028 48 8b 8c 24 28 + 01 00 00 mov rcx, QWORD PTR [rsp+296] + 00030 48 8b 05 00 00 00 00 mov rax, QWORD PTR __security_cookie - 00031 48 33 c5 xor rax, rbp - 00034 48 89 85 d8 00 + 00037 48 33 c5 xor rax, rbp + 0003a 48 89 85 d8 00 00 00 mov QWORD PTR __$ArrayPad$[rbp], rax - 0003b 48 8d 0d 00 00 + 00041 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__59F96598_StgSharpC@c - 00042 e8 00 00 00 00 call __CheckForDebuggerJustMyCode + 00048 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 60 : currentContext->LinkProgram(shaderProgram); +; 61 : context->LinkProgram(shaderProgram); - 00047 8b 8d 00 01 00 + 0004d 8b 8d 08 01 00 00 mov ecx, DWORD PTR shaderProgram$[rbp] - 0004d 48 8b 05 00 00 - 00 00 mov rax, QWORD PTR currentContext - 00054 ff 90 88 22 00 + 00053 48 8b 85 00 01 + 00 00 mov rax, QWORD PTR context$[rbp] + 0005a ff 90 88 22 00 00 call QWORD PTR [rax+8840] -; 61 : -; 62 : int success; -; 63 : currentContext->GetProgramiv(shaderProgram, GL_LINK_STATUS, &success); +; 62 : +; 63 : int success; +; 64 : context->GetProgramiv(shaderProgram, GL_LINK_STATUS, &success); - 0005a 4c 8d 45 04 lea r8, QWORD PTR success$[rbp] - 0005e ba 82 8b 00 00 mov edx, 35714 ; 00008b82H - 00063 8b 8d 00 01 00 + 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 00 mov ecx, DWORD PTR shaderProgram$[rbp] - 00069 48 8b 05 00 00 - 00 00 mov rax, QWORD PTR currentContext - 00070 ff 90 50 1a 00 + 0006f 48 8b 85 00 01 + 00 00 mov rax, QWORD PTR context$[rbp] + 00076 ff 90 50 1a 00 00 call QWORD PTR [rax+6736] -; 64 : if (!success) +; 65 : if (!success) - 00076 83 7d 04 00 cmp DWORD PTR success$[rbp], 0 - 0007a 75 28 jne SHORT $LN2@linkShader + 0007c 83 7d 04 00 cmp DWORD PTR success$[rbp], 0 + 00080 75 28 jne SHORT $LN2@linkShader -; 65 : { -; 66 : currentContext->GetProgramInfoLog(shaderProgram, 512, NULL, infolog); +; 66 : { +; 67 : context->GetProgramInfoLog(shaderProgram, 512, NULL, infolog); - 0007c 4c 8d 0d 00 00 + 00082 4c 8d 0d 00 00 00 00 lea r9, OFFSET FLAT:infolog - 00083 45 33 c0 xor r8d, r8d - 00086 ba 00 02 00 00 mov edx, 512 ; 00000200H - 0008b 8b 8d 00 01 00 + 00089 45 33 c0 xor r8d, r8d + 0008c ba 00 02 00 00 mov edx, 512 ; 00000200H + 00091 8b 8d 08 01 00 00 mov ecx, DWORD PTR shaderProgram$[rbp] - 00091 48 8b 05 00 00 - 00 00 mov rax, QWORD PTR currentContext - 00098 ff 90 a0 19 00 + 00097 48 8b 85 00 01 + 00 00 mov rax, QWORD PTR context$[rbp] + 0009e ff 90 a0 19 00 00 call QWORD PTR [rax+6560] -; 67 : return 0; +; 68 : return 0; - 0009e 33 c0 xor eax, eax - 000a0 eb 08 jmp SHORT $LN1@linkShader + 000a4 33 c0 xor eax, eax + 000a6 eb 08 jmp SHORT $LN1@linkShader -; 68 : } +; 69 : } - 000a2 eb 06 jmp SHORT $LN3@linkShader + 000a8 eb 06 jmp SHORT $LN3@linkShader $LN2@linkShader: -; 69 : else -; 70 : { -; 71 : return shaderProgram; +; 70 : else +; 71 : { +; 72 : return shaderProgram; - 000a4 8b 85 00 01 00 + 000aa 8b 85 08 01 00 00 mov eax, DWORD PTR shaderProgram$[rbp] $LN3@linkShader: $LN1@linkShader: -; 72 : } -; 73 : -; 74 : } +; 73 : } +; 74 : +; 75 : } - 000aa 48 8b f8 mov rdi, rax - 000ad 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] - 000b1 48 8d 15 00 00 + 000b0 48 8b f8 mov rdi, rax + 000b3 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] + 000b7 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:linkShaderProgram$rtcFrameData - 000b8 e8 00 00 00 00 call _RTC_CheckStackVars - 000bd 48 8b c7 mov rax, rdi - 000c0 48 8b 8d d8 00 + 000be e8 00 00 00 00 call _RTC_CheckStackVars + 000c3 48 8b c7 mov rax, rdi + 000c6 48 8b 8d d8 00 00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp] - 000c7 48 33 cd xor rcx, rbp - 000ca e8 00 00 00 00 call __security_check_cookie - 000cf 48 8d a5 e8 00 + 000cd 48 33 cd xor rcx, rbp + 000d0 e8 00 00 00 00 call __security_check_cookie + 000d5 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] - 000d6 5f pop rdi - 000d7 5d pop rbp - 000d8 c3 ret 0 + 000dc 5f pop rdi + 000dd 5d pop rbp + 000de c3 ret 0 linkShaderProgram ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI @@ -847,152 +842,164 @@ _TEXT SEGMENT shader$4 = 4 success$5 = 36 __$ArrayPad$ = 248 -shaderCode$ = 288 -shadertype$ = 296 +context$ = 288 +shaderCode$ = 296 +shadertype$ = 304 loadShaderCode PROC ; COMDAT ; 34 : { $LN7: - 00000 89 54 24 10 mov DWORD PTR [rsp+16], edx - 00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx - 00009 55 push rbp - 0000a 57 push rdi - 0000b 48 81 ec 28 01 + 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d + 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx + 0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx + 0000f 55 push rbp + 00010 57 push rdi + 00011 48 81 ec 28 01 00 00 sub rsp, 296 ; 00000128H - 00012 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] - 00017 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32] - 0001c b9 12 00 00 00 mov ecx, 18 - 00021 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH - 00026 f3 ab rep stosd - 00028 48 8b 8c 24 48 + 00018 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] + 0001d 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32] + 00022 b9 12 00 00 00 mov ecx, 18 + 00027 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH + 0002c f3 ab rep stosd + 0002e 48 8b 8c 24 48 01 00 00 mov rcx, QWORD PTR [rsp+328] - 00030 48 8b 05 00 00 + 00036 48 8b 05 00 00 00 00 mov rax, QWORD PTR __security_cookie - 00037 48 33 c5 xor rax, rbp - 0003a 48 89 85 f8 00 + 0003d 48 33 c5 xor rax, rbp + 00040 48 89 85 f8 00 00 00 mov QWORD PTR __$ArrayPad$[rbp], rax - 00041 48 8d 0d 00 00 + 00047 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__59F96598_StgSharpC@c - 00048 e8 00 00 00 00 call __CheckForDebuggerJustMyCode + 0004e e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 35 : if (currentContext != NULL) - 0004d 48 83 3d 00 00 + 00053 48 83 3d 00 00 00 00 00 cmp QWORD PTR currentContext, 0 - 00055 0f 84 90 00 00 + 0005b 0f 84 ab 00 00 00 je $LN2@loadShader ; 36 : { -; 37 : unsigned int shader = currentContext->CreateShader(shadertype); +; 37 : unsigned int shader = context->CreateShader(shadertype); - 0005b 8b 8d 28 01 00 + 00061 8b 8d 30 01 00 00 mov ecx, DWORD PTR shadertype$[rbp] - 00061 48 8b 05 00 00 - 00 00 mov rax, QWORD PTR currentContext - 00068 ff 90 f8 09 00 + 00067 48 8b 85 20 01 + 00 00 mov rax, QWORD PTR context$[rbp] + 0006e ff 90 f8 09 00 00 call QWORD PTR [rax+2552] - 0006e 89 45 04 mov DWORD PTR shader$4[rbp], eax + 00074 89 45 04 mov DWORD PTR shader$4[rbp], eax -; 38 : currentContext->ShaderSource(shader, 1, &shaderCode, NULL); +; 38 : context->ShaderSource(shader, 1, &shaderCode, NULL); - 00071 45 33 c9 xor r9d, r9d - 00074 4c 8d 85 20 01 + 00077 45 33 c9 xor r9d, r9d + 0007a 4c 8d 85 28 01 00 00 lea r8, QWORD PTR shaderCode$[rbp] - 0007b ba 01 00 00 00 mov edx, 1 - 00080 8b 4d 04 mov ecx, DWORD PTR shader$4[rbp] - 00083 48 8b 05 00 00 - 00 00 mov rax, QWORD PTR currentContext - 0008a ff 90 58 37 00 + 00081 ba 01 00 00 00 mov edx, 1 + 00086 8b 4d 04 mov ecx, DWORD PTR shader$4[rbp] + 00089 48 8b 85 20 01 + 00 00 mov rax, QWORD PTR context$[rbp] + 00090 ff 90 58 37 00 00 call QWORD PTR [rax+14168] -; 39 : currentContext->CompileShader(shader); +; 39 : context->CompileShader(shader); - 00090 8b 4d 04 mov ecx, DWORD PTR shader$4[rbp] - 00093 48 8b 05 00 00 - 00 00 mov rax, QWORD PTR currentContext - 0009a ff 90 20 07 00 + 00096 8b 4d 04 mov ecx, DWORD PTR shader$4[rbp] + 00099 48 8b 85 20 01 + 00 00 mov rax, QWORD PTR context$[rbp] + 000a0 ff 90 20 07 00 00 call QWORD PTR [rax+1824] ; 40 : int success; -; 41 : currentContext->GetShaderiv(shader, GL_COMPILE_STATUS, &success); +; 41 : context->GetShaderiv(shader, GL_COMPILE_STATUS, &success); - 000a0 4c 8d 45 24 lea r8, QWORD PTR success$5[rbp] - 000a4 ba 81 8b 00 00 mov edx, 35713 ; 00008b81H - 000a9 8b 4d 04 mov ecx, DWORD PTR shader$4[rbp] - 000ac 48 8b 05 00 00 - 00 00 mov rax, QWORD PTR currentContext - 000b3 ff 90 48 1b 00 + 000a6 4c 8d 45 24 lea r8, QWORD PTR success$5[rbp] + 000aa ba 81 8b 00 00 mov edx, 35713 ; 00008b81H + 000af 8b 4d 04 mov ecx, DWORD PTR shader$4[rbp] + 000b2 48 8b 85 20 01 + 00 00 mov rax, QWORD PTR context$[rbp] + 000b9 ff 90 48 1b 00 00 call QWORD PTR [rax+6984] ; 42 : if (!success) - 000b9 83 7d 24 00 cmp DWORD PTR success$5[rbp], 0 - 000bd 75 25 jne SHORT $LN4@loadShader + 000bf 83 7d 24 00 cmp DWORD PTR success$5[rbp], 0 + 000c3 75 40 jne SHORT $LN4@loadShader ; 43 : { -; 44 : currentContext->GetShaderInfoLog(shader, 512, NULL, infolog); +; 44 : context->GetShaderInfoLog(shader, 512, NULL, infolog); - 000bf 4c 8d 0d 00 00 + 000c5 4c 8d 0d 00 00 00 00 lea r9, OFFSET FLAT:infolog - 000c6 45 33 c0 xor r8d, r8d - 000c9 ba 00 02 00 00 mov edx, 512 ; 00000200H - 000ce 8b 4d 04 mov ecx, DWORD PTR shader$4[rbp] - 000d1 48 8b 05 00 00 - 00 00 mov rax, QWORD PTR currentContext - 000d8 ff 90 28 1b 00 + 000cc 45 33 c0 xor r8d, r8d + 000cf ba 00 02 00 00 mov edx, 512 ; 00000200H + 000d4 8b 4d 04 mov ecx, DWORD PTR shader$4[rbp] + 000d7 48 8b 85 20 01 + 00 00 mov rax, QWORD PTR context$[rbp] + 000de ff 90 28 1b 00 00 call QWORD PTR [rax+6952] -; 45 : return 0; +; 45 : infolog[511] = '\0'; - 000de 33 c0 xor eax, eax - 000e0 eb 0b jmp SHORT $LN1@loadShader + 000e4 b8 08 00 00 00 mov eax, 8 + 000e9 48 69 c0 ff 01 + 00 00 imul rax, rax, 511 ; 000001ffH + 000f0 48 8d 0d 00 00 + 00 00 lea rcx, OFFSET FLAT:infolog + 000f7 48 c7 04 01 00 + 00 00 00 mov QWORD PTR [rcx+rax], 0 -; 46 : } +; 46 : return 0; - 000e2 eb 05 jmp SHORT $LN5@loadShader + 000ff 33 c0 xor eax, eax + 00101 eb 0b jmp SHORT $LN1@loadShader + +; 47 : } + + 00103 eb 05 jmp SHORT $LN5@loadShader $LN4@loadShader: -; 47 : else -; 48 : { -; 49 : return shader; +; 48 : else +; 49 : { +; 50 : return shader; - 000e4 8b 45 04 mov eax, DWORD PTR shader$4[rbp] - 000e7 eb 04 jmp SHORT $LN1@loadShader + 00105 8b 45 04 mov eax, DWORD PTR shader$4[rbp] + 00108 eb 04 jmp SHORT $LN1@loadShader $LN5@loadShader: -; 50 : } -; 51 : } +; 51 : } +; 52 : } - 000e9 eb 02 jmp SHORT $LN3@loadShader + 0010a eb 02 jmp SHORT $LN3@loadShader $LN2@loadShader: -; 52 : else -; 53 : { -; 54 : return 0; +; 53 : else +; 54 : { +; 55 : return 0; - 000eb 33 c0 xor eax, eax + 0010c 33 c0 xor eax, eax $LN3@loadShader: $LN1@loadShader: -; 55 : } -; 56 : } +; 56 : } +; 57 : } - 000ed 48 8b f8 mov rdi, rax - 000f0 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] - 000f4 48 8d 15 00 00 + 0010e 48 8b f8 mov rdi, rax + 00111 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] + 00115 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:loadShaderCode$rtcFrameData - 000fb e8 00 00 00 00 call _RTC_CheckStackVars - 00100 48 8b c7 mov rax, rdi - 00103 48 8b 8d f8 00 + 0011c e8 00 00 00 00 call _RTC_CheckStackVars + 00121 48 8b c7 mov rax, rdi + 00124 48 8b 8d f8 00 00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp] - 0010a 48 33 cd xor rcx, rbp - 0010d e8 00 00 00 00 call __security_check_cookie - 00112 48 8d a5 08 01 + 0012b 48 33 cd xor rcx, rbp + 0012e e8 00 00 00 00 call __security_check_cookie + 00133 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] - 00119 5f pop rdi - 0011a 5d pop rbp - 0011b c3 ret 0 + 0013a 5f pop rdi + 0013b 5d pop rbp + 0013c c3 ret 0 loadShaderCode ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI diff --git a/源代码/StgSharpC/x64/Debug/StgSharpC.ilk b/源代码/StgSharpC/x64/Debug/StgSharpC.ilk index 7615f2fb..0420c371 100644 Binary files a/源代码/StgSharpC/x64/Debug/StgSharpC.ilk and b/源代码/StgSharpC/x64/Debug/StgSharpC.ilk differ diff --git a/源代码/StgSharpC/x64/Debug/StgSharpC.obj b/源代码/StgSharpC/x64/Debug/StgSharpC.obj index 3d6f1e8a..eef84da7 100644 Binary files a/源代码/StgSharpC/x64/Debug/StgSharpC.obj and b/源代码/StgSharpC/x64/Debug/StgSharpC.obj differ diff --git a/源代码/StgSharpC/x64/Debug/StgSharpC.tlog/CL.command.1.tlog b/源代码/StgSharpC/x64/Debug/StgSharpC.tlog/CL.command.1.tlog index 439c71cc..32ac7ecb 100644 Binary files a/源代码/StgSharpC/x64/Debug/StgSharpC.tlog/CL.command.1.tlog and b/源代码/StgSharpC/x64/Debug/StgSharpC.tlog/CL.command.1.tlog differ diff --git a/源代码/StgSharpC/x64/Debug/StgSharpC.tlog/CL.read.1.tlog b/源代码/StgSharpC/x64/Debug/StgSharpC.tlog/CL.read.1.tlog index 4ee85ca4..5cc21106 100644 Binary files a/源代码/StgSharpC/x64/Debug/StgSharpC.tlog/CL.read.1.tlog and b/源代码/StgSharpC/x64/Debug/StgSharpC.tlog/CL.read.1.tlog differ diff --git a/源代码/StgSharpC/x64/Debug/StgSharpC.tlog/CL.write.1.tlog b/源代码/StgSharpC/x64/Debug/StgSharpC.tlog/CL.write.1.tlog index 3995a273..39c2515c 100644 Binary files a/源代码/StgSharpC/x64/Debug/StgSharpC.tlog/CL.write.1.tlog and b/源代码/StgSharpC/x64/Debug/StgSharpC.tlog/CL.write.1.tlog differ diff --git a/源代码/StgSharpC/x64/Debug/StgSharpGraphic.log b/源代码/StgSharpC/x64/Debug/StgSharpGraphic.log index aa3ecb39..4f1bd2f1 100644 --- a/源代码/StgSharpC/x64/Debug/StgSharpGraphic.log +++ b/源代码/StgSharpC/x64/Debug/StgSharpGraphic.log @@ -1,8 +1,10 @@ -22:29:41.927 0>将用于 $(MSBuildExtensionsPath) 的搜索路径为 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild;$(MSBuildProgramFiles32)\MSBuild +22:23:17.921 0>将用于 $(MSBuildExtensionsPath) 的搜索路径为 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild;$(MSBuildProgramFiles32)\MSBuild + 程序集加载期间 Evaluation: System.Collections.Immutable, Version=7.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a (位置: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\System.Collections.Immutable.dll, MVID: 5f9ff90f-0d16-4469-a104-76829d3705e2, AppDomain: [Default]) 尝试使用扩展路径 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild 导入 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\$(MSBuildToolsVersion)\Microsoft.Common.props 在 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Microsoft.Common.props (60,5) 处重新分配属性: $(MSBuildProjectExtensionsPath)=“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\obj\”(先前值:“obj\”) 将用于 $(MSBuildExtensionsPath) 的搜索路径为 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild;$(MSBuildProgramFiles32)\MSBuild 尝试使用扩展路径 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild 导入 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\$(MSBuildToolsVersion)\Imports\Microsoft.Common.props\ImportBefore\* + 程序集加载期间 Evaluation: Microsoft.IO.Redist, Version=6.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51 (位置: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\Microsoft.IO.Redist.dll, MVID: d528d43e-4d35-4c28-8aa6-a5ce49a5eba7, AppDomain: [Default]) 值为“17.0”的属性“VisualStudioVersion”从环境中展开。 “Configuration”属性是全局属性,不能修改。 将用于 $(MSBuildExtensionsPath) 的搜索路径为 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild;$(MSBuildProgramFiles32)\MSBuild @@ -11,9 +13,10 @@ “LangID”属性是全局属性,不能修改。 “SolutionDir”属性是全局属性,不能修改。 值为“C:\Users\Nitlo\AppData\Local”的属性“LOCALAPPDATA”从环境中展开。 - 在 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj (72,5) 处重新分配属性: $(ConfigurationType)=“DynamicLibrary”(先前值:“Application”) - 在 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj (73,5) 处重新分配属性: $(UseDebugLibraries)=“true”(先前值:“false”) - 在 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj (75,5) 处重新分配属性: $(CharacterSet)=“Unicode”(先前值:“NotSet”) + 在 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj (86,5) 处重新分配属性: $(ConfigurationType)=“DynamicLibrary”(先前值:“Application”) + 在 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj (87,5) 处重新分配属性: $(UseDebugLibraries)=“true”(先前值:“false”) + 在 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj (89,5) 处重新分配属性: $(CharacterSet)=“Unicode”(先前值:“NotSet”) + 程序集加载期间 Evaluation: Microsoft.Build.Utilities.Core, Version=15.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a (位置: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\Microsoft.Build.Utilities.Core.dll, MVID: cf5905a7-b070-4231-858a-c6cf6328dab5, AppDomain: [Default]) 值为“AMD64”的属性“PROCESSOR_ARCHITECTURE”从环境中展开。 在 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.Cpp.WindowsSDK.props (18,5) 处重新分配属性: $(WindowsSdkDir_10)=“C:\Program Files (x86)\Windows Kits\10\”(先前值:“”) 在 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.Cpp.WindowsSDK.props (41,5) 处重新分配属性: $(NETFXKitsDir)=“C:\Program Files (x86)\Windows Kits\NETFXSDK\4.8.1\”(先前值:“”) @@ -67,9 +70,9 @@ 在 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Platforms\x64\PlatformToolsets\v143\ImportAfter\Intel.oneAPI.Libs.v143.props (93,5) 处重新分配属性: $(SuiteVer)=“[Intel Compiler is not installed]”(先前值:“2022”) 在 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Platforms\x64\PlatformToolsets\v143\ImportAfter\Intel.oneAPI.Libs.v143.props (96,7) 处重新分配属性: $(SuiteVer)=“19.2”(先前值:“[Intel Compiler is not installed]”) 在 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Platforms\x64\PlatformToolsets\v143\ImportAfter\Intel.oneAPI.Libs.v143.props (101,7) 处重新分配属性: $(SuiteVer)=“[Intel Compiler is not installed]”(先前值:“19.2”) - 在 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj (132,5) 处重新分配属性: $(IncludePath)=“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include;;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\atlmfc\include;;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\VS\include;;C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt;;;C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared;C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\winrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\cppwinrt;C:\Program Files (x86)\Windows Kits\NETFXSDK\4.8.1\Include\um;D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include”(先前值:“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include;;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\atlmfc\include;;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\VS\include;;C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt;;;C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared;C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\winrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\cppwinrt;C:\Program Files (x86)\Windows Kits\NETFXSDK\4.8.1\Include\um;”) - 在 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj (133,5) 处重新分配属性: $(OutDir)=“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\”(先前值:“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\x64\Debug\”) - 在 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj (134,5) 处重新分配属性: $(LibraryPath)=“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\lib\x64;;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\atlmfc\lib\x64;;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\VS\lib\x64;;C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\ucrt\x64;;;C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64;C:\Program Files (x86)\Windows Kits\NETFXSDK\4.8.1\lib\um\x64;;D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\lib”(先前值:“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\lib\x64;;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\atlmfc\lib\x64;;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\VS\lib\x64;;C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\ucrt\x64;;;C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64;C:\Program Files (x86)\Windows Kits\NETFXSDK\4.8.1\lib\um\x64;”) + 在 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj (159,5) 处重新分配属性: $(IncludePath)=“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include;;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\atlmfc\include;;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\VS\include;;C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt;;;C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared;C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\winrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\cppwinrt;C:\Program Files (x86)\Windows Kits\NETFXSDK\4.8.1\Include\um;D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include”(先前值:“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include;;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\atlmfc\include;;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\VS\include;;C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt;;;C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared;C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\winrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\cppwinrt;C:\Program Files (x86)\Windows Kits\NETFXSDK\4.8.1\Include\um;”) + 在 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj (160,5) 处重新分配属性: $(OutDir)=“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\”(先前值:“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\x64\Debug\”) + 在 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj (161,5) 处重新分配属性: $(LibraryPath)=“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\lib\x64;;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\atlmfc\lib\x64;;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\VS\lib\x64;;C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\ucrt\x64;;;C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64;C:\Program Files (x86)\Windows Kits\NETFXSDK\4.8.1\lib\um\x64;;D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\lib”(先前值:“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\lib\x64;;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\atlmfc\lib\x64;;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\VS\lib\x64;;C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\ucrt\x64;;;C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64;C:\Program Files (x86)\Windows Kits\NETFXSDK\4.8.1\lib\um\x64;”) “SolutionExt”属性是全局属性,不能修改。 在 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets (40,5) 处重新分配属性: $(ExtensionsToDeleteOnClean)=“*.cdf;*.cache;*.obj;*.obj.enc;*.ilk;*.ipdb;*.iobj;*.resources;*.tlb;*.tli;*.tlh;*.tmp;*.rsp;*.pgc;*.pgd;*.meta;*.tlog;*.manifest;*.res;*.pch;*.exp;*.idb;*.rep;*.xdc;*.pdb;*_manifest.rc;*.bsc;*.sbr;*.xml;*.metagen;*.bi;D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.dll.manifest;D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.tlb;D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.pdb;D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.dll;D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.bsc;D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.ilk;D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.dll.intermediate.manifest;x64\Debug\StgSharpGraphic.vcxproj.FileListAbsolute.txt”(先前值:“*.cdf;*.cache;*.obj;*.obj.enc;*.ilk;*.ipdb;*.iobj;*.resources;*.tlb;*.tli;*.tlh;*.tmp;*.rsp;*.pgc;*.pgd;*.meta;*.tlog;*.manifest;*.res;*.pch;*.exp;*.idb;*.rep;*.xdc;*.pdb;*_manifest.rc;*.bsc;*.sbr;*.xml;*.metagen;*.bi”) 在 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.BuildSteps.Targets (32,5) 处重新分配属性: $(DebugType)=“none”(先前值:“”) @@ -838,9 +841,9 @@ 正在使用项目“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets”中的目标“GetNativeManifest”重写项目“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“GetNativeManifest”。 正在使用项目“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Platforms\x64\PlatformToolsets\v143\ImportAfter\Intel.Libs.oneDAL.v143.targets”中的目标“CheckIntelEnvironmentForVCLibsoneDAL”重写项目“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Platforms\x64\PlatformToolsets\v143\ImportBefore\Intel.Libs.oneDAL.v143.targets”中的目标“CheckIntelEnvironmentForVCLibsoneDAL”。 正在使用项目“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.Cpp.DesignTime.targets”中的目标“GetTargetPathWithTargetPlatformMoniker”重写项目“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“GetTargetPathWithTargetPlatformMoniker”。 -生成启动时间为 2024/2/4 22:29:42。 -日志记录详细程度设置为: Diagnostic。22:29:42.060 1>项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”在节点 2 上(Build 个目标)。 -22:29:42.060 1>初始属性: +生成启动时间为 2024/2/12 22:23:18。 +日志记录详细程度设置为: Diagnostic。22:23:18.135 1>项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”在节点 2 上(Build 个目标)。 +22:23:18.135 1>初始属性: _ApplicableDebuggers = Desktop _ApplicationTypeAndRevisionFound = true _BuildActionType = Build @@ -1647,6 +1650,7 @@ DocumentationProjectOutputGroupDependsOn = ResolvedXDCMake;ComputeCLCompileGeneratedXDCFiles DocumentLibraryDependencies = true + DotNetNativeLibraryVersion = DotNetSdk_IncludePath = C:\Program Files (x86)\Windows Kits\NETFXSDK\4.8.1\Include\um DotNetSdk_LibraryPath = C:\Program Files (x86)\Windows Kits\NETFXSDK\4.8.1\lib\um DotNetSdk_LibraryPath_arm = C:\Program Files (x86)\Windows Kits\NETFXSDK\4.8.1\lib\um\arm @@ -1900,6 +1904,8 @@ MultiProcMaxCount = 0 MultiProcMIDL = false MultiToolTask = false + NetfxCoreRuntimeSettingsTargets = C:\Program Files (x86)\MSBuild\15.0\.Net\CoreRuntime\Microsoft.Net.CoreRuntime.Settings.targets + NetfxCoreRuntimeTargets = C:\Program Files (x86)\MSBuild\15.0\.Net\CoreRuntime\Microsoft.Net.CoreRuntime.targets NETFXKitsDir = C:\Program Files (x86)\Windows Kits\NETFXSDK\4.8.1\ NETFXSDK_UseAnyInstalledVersion = true NETFXSDK_Version = 4.8.1 @@ -2005,6 +2011,8 @@ ProjectGuid = {00ef73c2-cc73-4478-884e-08979f4a429a} ProjectLockFile = obj\project.assets.json ProjectName = StgSharpC + ProjectNSettingsTargets = C:\Program Files (x86)\MSBuild\15.0\.Net\.NetNative\15.0.24211\Microsoft.NetNative.Settings.targets + ProjectNTargets = C:\Program Files (x86)\MSBuild\15.0\.Net\.NetNative\15.0.24211\Microsoft.NetNative.targets ProjectPath = D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj PublishableProject = PublishBuildDependsOn = @@ -2218,6 +2226,7 @@ UseCommonOutputDirectory = false UseDebugLibraries = true UseDefaultPlatformLookupTables = true + UseDotNetNativeToolchain = UseILP64Interfaces1A = false UseIntelIPP1A = false UseIntelMPI = false @@ -2371,8 +2380,8 @@ VSIDEResolvedNonMSBuildProjectOutputs = VSInstallDir = C:\Program Files\Microsoft Visual Studio\2022\Enterprise\ VsInstallRoot = C:\Program Files\Microsoft Visual Studio\2022\Enterprise - VSTEL_CurrentSolutionBuildID = 2905402811 - VSTEL_SolutionSessionID = {48E94E3E-52C3-49A6-A14F-E607B2A7E0A7} + VSTEL_CurrentSolutionBuildID = 2098870177 + VSTEL_SolutionSessionID = {BD19EC2B-1F18-4508-9B61-F606F2EA8C63} VSVersion = $(VisualStudioVersion) WDKBuildFolder = 10.0 WebBrowserDebuggerDebuggerType = Auto @@ -2434,8 +2443,8 @@ XamlTemporaryAssemblyName = StgSharpGraphic YieldDuringToolExecution = true -22:29:42.061 1>由于条件的计算结果为 false,已跳过目标“EnableIntermediateOutputPathMismatchWarning”;('$(RestoreProjectStyle)' == 'PackageReference')的计算结果为('' == 'PackageReference')。 -22:29:42.061 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“_CheckForInvalidConfigurationAndPlatform: (目标 ID: 2)”(目标“SetTelemetryEnvironmentVariables”依赖于它): +22:23:18.136 1>由于条件的计算结果为 false,已跳过目标“EnableIntermediateOutputPathMismatchWarning”;('$(RestoreProjectStyle)' == 'PackageReference')的计算结果为('' == 'PackageReference')。 +22:23:18.136 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“_CheckForInvalidConfigurationAndPlatform: (目标 ID: 2)”(目标“SetTelemetryEnvironmentVariables”依赖于它): 设置属性: _InvalidConfigurationMessageText=The BaseOutputPath/OutputPath property is not set for project 'StgSharpGraphic.vcxproj'. Please check to make sure that you have specified a valid combination of Configuration and Platform for this project. Configuration='Debug' Platform='x64'. 设置属性: _InvalidConfigurationMessageText=The BaseOutputPath/OutputPath property is not set for project 'StgSharpGraphic.vcxproj'. Please check to make sure that you have specified a valid combination of Configuration and Platform for this project. Configuration='Debug' Platform='x64'. This error may also appear if some other project is trying to follow a project-to-project reference to this project, this project has been unloaded or is not included in the solution, and the referencing project does not build using the same or an equivalent Configuration or Platform. 由于 false 条件,已跳过任务“Error”;( '$(_InvalidConfigurationError)' == 'true' )计算为( '' == 'true' )。 @@ -2456,21 +2465,21 @@ 由于 false 条件,已跳过任务“Error”;('$(BaseIntermediateOutputPath)' != '' and !HasTrailingSlash('$(BaseIntermediateOutputPath)'))计算为('obj\' != '' and !HasTrailingSlash('obj\'))。 由于 false 条件,已跳过任务“Error”;( '$(_InitialMSBuildProjectExtensionsPath)' != '' And '$(MSBuildProjectExtensionsPath)' != '$(_InitialMSBuildProjectExtensionsPath)' )计算为( 'D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\obj\' != '' And 'D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\obj\' != 'D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\obj\' )。 由于 false 条件,已跳过任务“Warning”;( '$(EnableBaseIntermediateOutputPathMismatchWarning)' == 'true' And '$(_InitialBaseIntermediateOutputPath)' != '$(BaseIntermediateOutputPath)' And '$(BaseIntermediateOutputPath)' != '$(MSBuildProjectExtensionsPath)' )计算为( '' == 'true' And 'obj\' != 'obj\' And 'obj\' != 'D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\obj\' )。 -22:29:42.063 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_CheckForInvalidConfigurationAndPlatform”的操作。: (目标 ID: 2) +22:23:18.148 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_CheckForInvalidConfigurationAndPlatform”的操作。: (目标 ID: 2) 已跳过目标“_CheckForInvalidConfigurationAndPlatform”。以前的生成已成功。 -22:29:42.063 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.Cpp.DesignTime.targets”中的目标“SetTelemetryEnvironmentVariables: (目标 ID: 3)”(目标“Build”依赖于它): +22:23:18.148 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.Cpp.DesignTime.targets”中的目标“SetTelemetryEnvironmentVariables: (目标 ID: 3)”(目标“Build”依赖于它): 正在使用程序集“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.Build.CppTasks.Common.dll”中的“SetEnv”任务。 任务“SetEnv” (任务 ID: 4) 任务参数:Prefix=False (任务 ID: 4) - 任务参数:Value={48E94E3E-52C3-49A6-A14F-E607B2A7E0A7} (任务 ID: 4) + 任务参数:Value={BD19EC2B-1F18-4508-9B61-F606F2EA8C63} (任务 ID: 4) 任务参数:Name=VSTEL_SolutionSessionID (任务 ID: 4) - VSTEL_SolutionSessionID={48E94E3E-52C3-49A6-A14F-E607B2A7E0A7} (任务 ID: 4) + VSTEL_SolutionSessionID={BD19EC2B-1F18-4508-9B61-F606F2EA8C63} (任务 ID: 4) 已完成执行任务“SetEnv”的操作。 (任务 ID: 4) 任务“SetEnv” (任务 ID: 5) 任务参数:Prefix=False (任务 ID: 5) - 任务参数:Value=2905402811 (任务 ID: 5) + 任务参数:Value=2098870177 (任务 ID: 5) 任务参数:Name=VSTEL_CurrentSolutionBuildID (任务 ID: 5) - VSTEL_CurrentSolutionBuildID=2905402811 (任务 ID: 5) + VSTEL_CurrentSolutionBuildID=2098870177 (任务 ID: 5) 已完成执行任务“SetEnv”的操作。 (任务 ID: 5) 任务“SetEnv” (任务 ID: 6) 任务参数:Prefix=False (任务 ID: 6) @@ -2485,26 +2494,26 @@ VSTEL_ProjectID={00ef73c2-cc73-4478-884e-08979f4a429a} (任务 ID: 7) 输出属性: VSTEL_ProjectID={00ef73c2-cc73-4478-884e-08979f4a429a} (任务 ID: 7) 已完成执行任务“SetEnv”的操作。 (任务 ID: 7) -22:29:42.071 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“SetTelemetryEnvironmentVariables”的操作。: (目标 ID: 3) -22:29:42.071 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.BuildSteps.Targets”中的目标“_PrepareForBuild: (目标 ID: 4)”(目标“Build”依赖于它): +22:23:18.156 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“SetTelemetryEnvironmentVariables”的操作。: (目标 ID: 3) +22:23:18.156 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.BuildSteps.Targets”中的目标“_PrepareForBuild: (目标 ID: 4)”(目标“Build”依赖于它): 设置属性: BuildType=Build 设置属性: _BuildActionType=Build 由于 false 条件,已跳过任务“CreateItem”;('%(CustomBuild.IncludeFileToTool)'!='')计算为(''!='')。 删除的项: CustomBuildStep=StgSharpC -22:29:42.072 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_PrepareForBuild”的操作。: (目标 ID: 4) -22:29:42.072 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_PrepareForReferenceResolution: (目标 ID: 5)”(目标“ResolveReferences”依赖于它): +22:23:18.156 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_PrepareForBuild”的操作。: (目标 ID: 4) +22:23:18.156 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_PrepareForReferenceResolution: (目标 ID: 5)”(目标“ResolveReferences”依赖于它): 由于 false 条件,已跳过任务“VCMessage”;('$(WarnAboutIndividualManagedFiles)' == 'true')计算为('' == 'true')。 设置属性: TargetFrameworkMoniker= 设置属性: _FindDependencies=false 设置属性: AdditionalExplicitAssemblyReferences= 由于 false 条件,已跳过任务“Message”;('$(_REFERENCE_DEBUG)'=='true')计算为(''=='true')。 -22:29:42.072 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_PrepareForReferenceResolution”的操作。: (目标 ID: 5) +22:23:18.156 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_PrepareForReferenceResolution”的操作。: (目标 ID: 5) 由于条件的计算结果为 false,已跳过目标“ComputeCrtSDKReference”;('@(ClCompile)'!='' and '$(WindowsAppContainer)'=='true' and '$(UseCrtSDKReference)' != 'false')的计算结果为('debuger.c;dllmain.c;glsc2.c;...'!='' and 'false'=='true' and '' != 'false')。 -22:29:42.072 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“BeforeResolveReferences: (目标 ID: 6)”(目标“ResolveReferences”依赖于它): -22:29:42.072 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“BeforeResolveReferences”的操作。: (目标 ID: 6) -22:29:42.072 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“IgnoreJavaScriptOutputAssembly: (目标 ID: 7)”(目标“AssignProjectConfiguration”依赖于它): -22:29:42.072 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“IgnoreJavaScriptOutputAssembly”的操作。: (目标 ID: 7) -22:29:42.072 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“AssignProjectConfiguration: (目标 ID: 8)”(目标“ResolveReferences”依赖于它): +22:23:18.157 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“BeforeResolveReferences: (目标 ID: 6)”(目标“ResolveReferences”依赖于它): +22:23:18.157 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“BeforeResolveReferences”的操作。: (目标 ID: 6) +22:23:18.157 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“IgnoreJavaScriptOutputAssembly: (目标 ID: 7)”(目标“AssignProjectConfiguration”依赖于它): +22:23:18.157 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“IgnoreJavaScriptOutputAssembly”的操作。: (目标 ID: 7) +22:23:18.157 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“AssignProjectConfiguration: (目标 ID: 8)”(目标“ResolveReferences”依赖于它): 设置属性: ShouldUnsetParentConfigurationAndPlatform=true 正在使用程序集“Microsoft.Build.Tasks.Core, Version=15.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”中的“AssignProjectConfiguration”任务。 任务“AssignProjectConfiguration” (任务 ID: 8) @@ -2523,14 +2532,14 @@ 任务参数:OnlyReferenceAndBuildProjectsEnabledInSolutionConfiguration=True (任务 ID: 8) 任务参数:CurrentProjectConfiguration=Debug (任务 ID: 8) 已完成执行任务“AssignProjectConfiguration”的操作。 (任务 ID: 8) -22:29:42.074 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“AssignProjectConfiguration”的操作。: (目标 ID: 8) +22:23:18.158 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“AssignProjectConfiguration”的操作。: (目标 ID: 8) 已跳过目标“AssignProjectConfiguration”。以前的生成已成功。 -22:29:42.074 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“_SplitProjectReferencesByFileExistence: (目标 ID: 9)”(目标“PrepareProjectReferences”依赖于它): +22:23:18.158 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“_SplitProjectReferencesByFileExistence: (目标 ID: 9)”(目标“PrepareProjectReferences”依赖于它): 由于 false 条件,已跳过任务“ResolveNonMSBuildProjectOutput”;('$(BuildingInsideVisualStudio)'=='true' and '@(ProjectReferenceWithConfiguration)'!='')计算为('true'=='true' and ''!='')。 -22:29:42.074 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_SplitProjectReferencesByFileExistence”的操作。: (目标 ID: 9) -22:29:42.074 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“_AddOutputPathToGlobalPropertiesToRemove: (目标 ID: 10)”(目标“_GetProjectReferenceTargetFrameworkProperties”依赖于它): -22:29:42.074 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_AddOutputPathToGlobalPropertiesToRemove”的操作。: (目标 ID: 10) -22:29:42.074 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“_GetProjectReferenceTargetFrameworkProperties: (目标 ID: 11)”(目标“PrepareProjectReferences”依赖于它): +22:23:18.158 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_SplitProjectReferencesByFileExistence”的操作。: (目标 ID: 9) +22:23:18.158 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“_AddOutputPathToGlobalPropertiesToRemove: (目标 ID: 10)”(目标“_GetProjectReferenceTargetFrameworkProperties”依赖于它): +22:23:18.158 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_AddOutputPathToGlobalPropertiesToRemove”的操作。: (目标 ID: 10) +22:23:18.158 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“_GetProjectReferenceTargetFrameworkProperties: (目标 ID: 11)”(目标“PrepareProjectReferences”依赖于它): 设置属性: ReferringTargetFrameworkForProjectReferences= 正在使用程序集“Microsoft.Build.Tasks.Core, Version=15.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”中的“MSBuild”任务。 任务“MSBuild” (任务 ID: 9) @@ -2549,29 +2558,29 @@ 正在使用程序集“Microsoft.Build.Tasks.Core, Version=15.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”中的“SetRidAgnosticValueForProjects”任务。 任务“SetRidAgnosticValueForProjects” (任务 ID: 10) 已完成执行任务“SetRidAgnosticValueForProjects”的操作。 (任务 ID: 10) -22:29:42.077 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_GetProjectReferenceTargetFrameworkProperties”的操作。: (目标 ID: 11) +22:23:18.195 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_GetProjectReferenceTargetFrameworkProperties”的操作。: (目标 ID: 11) 由于条件的计算结果为 false,已跳过目标“_GetProjectReferencePlatformProperties”;('$(EnableDynamicPlatformResolution)' == 'true' and '@(_MSBuildProjectReferenceExistent)' != '')的计算结果为('' == 'true' and '' != '')。 -22:29:42.077 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“PrepareProjectReferences: (目标 ID: 12)”(目标“ResolveProjectReferences”依赖于它): -22:29:42.077 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“PrepareProjectReferences”的操作。: (目标 ID: 12) +22:23:18.195 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“PrepareProjectReferences: (目标 ID: 12)”(目标“ResolveProjectReferences”依赖于它): +22:23:18.195 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“PrepareProjectReferences”的操作。: (目标 ID: 12) 由于条件的计算结果为 false,已跳过目标“_RemoveNameMetadataFromProjectReferenceItems”;('@(ProjectReference)'!='')的计算结果为(''!='')。 -22:29:42.077 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“ResolveProjectReferences: (目标 ID: 13)”(目标“ResolveReferences”依赖于它): +22:23:18.195 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“ResolveProjectReferences: (目标 ID: 13)”(目标“ResolveReferences”依赖于它): 由于 false 条件,已跳过任务“MSBuild”;('%(_MSBuildProjectReferenceExistent.BuildReference)' == 'true' and '@(ProjectReferenceWithConfiguration)' != '' and ('$(BuildingInsideVisualStudio)' == 'true' or '$(BuildProjectReferences)' != 'true') and '$(VisualStudioVersion)' != '10.0' and '@(_MSBuildProjectReferenceExistent)' != '')计算为('' == 'true' and '' != '' and ('true' == 'true' or 'true' != 'true') and '17.0' != '10.0' and '' != '')。 由于 false 条件,已跳过任务“MSBuild”;('%(_MSBuildProjectReferenceExistent.BuildReference)' == 'true' and '@(ProjectReferenceWithConfiguration)' != '' and '$(BuildingInsideVisualStudio)' != 'true' and '$(BuildProjectReferences)' == 'true' and '@(_MSBuildProjectReferenceExistent)' != '')计算为('' == 'true' and '' != '' and 'true' != 'true' and 'true' == 'true' and '' != '')。 由于 false 条件,已跳过任务“MSBuild”;('%(_MSBuildProjectReferenceExistent.BuildReference)' == 'true' and '@(ProjectReferenceWithConfiguration)' != '' and '$(BuildingProject)' == 'true' and '@(_MSBuildProjectReferenceExistent)' != '')计算为('' == 'true' and '' != '' and 'true' == 'true' and '' != '')。 由于 false 条件,已跳过任务“Warning”;('@(ProjectReferenceWithConfiguration)' != '' and '@(_MSBuildProjectReferenceNonexistent)' != '')计算为('' != '' and '' != '')。 -22:29:42.088 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ResolveProjectReferences”的操作。: (目标 ID: 13) +22:23:18.195 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ResolveProjectReferences”的操作。: (目标 ID: 13) 由于条件的计算结果为 false,已跳过目标“FindInvalidProjectReferences”;('$(FindInvalidProjectReferences)' == 'true')的计算结果为('' == 'true')。 由于条件的计算结果为 false,已跳过目标“ResolveNativeReferences”;('@(NativeReference)'!='')的计算结果为(''!='')。 已跳过目标“_PrepareForReferenceResolution”。以前的生成已成功。 已跳过目标“ResolveProjectReferences”。以前的生成已成功。 由于条件的计算结果为 false,已跳过目标“FindInvalidProjectReferences”;('$(FindInvalidProjectReferences)' == 'true')的计算结果为('' == 'true')。 -22:29:42.088 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“GetFrameworkPaths: (目标 ID: 14)”(目标“ResolveAssemblyReferences”依赖于它): -22:29:42.088 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“GetFrameworkPaths”的操作。: (目标 ID: 14) +22:23:18.195 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“GetFrameworkPaths: (目标 ID: 14)”(目标“ResolveAssemblyReferences”依赖于它): +22:23:18.195 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“GetFrameworkPaths”的操作。: (目标 ID: 14) 已跳过目标“_PrepareForReferenceResolution”。以前的生成已成功。 已跳过目标“GetFrameworkPaths”。以前的生成已成功。 -22:29:42.088 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“GetReferenceAssemblyPaths: (目标 ID: 15)”(目标“ResolveAssemblyReferences”依赖于它): +22:23:18.195 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“GetReferenceAssemblyPaths: (目标 ID: 15)”(目标“ResolveAssemblyReferences”依赖于它): 设置属性: TargetFrameworkDirectory= 由于 false 条件,已跳过任务“GetReferenceAssemblyPaths”;('$(TargetFrameworkMoniker)' != '' and ('$(_TargetFrameworkDirectories)' == '' or '$(_FullFrameworkReferenceAssemblyPaths)' == ''))计算为('' != '' and ('' == '' or '' == ''))。 设置属性: TargetFrameworkDirectory=;; @@ -2579,8 +2588,8 @@ 设置属性: RemoveAssemblyFoldersIfNoTargetFramework=true 设置属性: AssemblySearchPaths={CandidateAssemblyFiles};C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\atlmfc\lib\x64;;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\lib\x64;;{HintPathFromItem};{TargetFrameworkDirectory};{AssemblyFoldersFromConfig:C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\AssemblyFolders.config,};;{Registry:Software\Microsoft\,,AssemblyFoldersEx};;{GAC};{RawFileName};D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\ 设置属性: TargetFrameworkProfile= -22:29:42.089 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“GetReferenceAssemblyPaths”的操作。: (目标 ID: 15) -22:29:42.089 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.Cpp.Current.targets”中的目标“AddExternalIncludDirectoriesToPaths: (目标 ID: 16)”(目标“SetBuildDefaultEnvironmentVariables”依赖于它): +22:23:18.197 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“GetReferenceAssemblyPaths”的操作。: (目标 ID: 15) +22:23:18.197 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.Cpp.Current.targets”中的目标“AddExternalIncludDirectoriesToPaths: (目标 ID: 16)”(目标“SetBuildDefaultEnvironmentVariables”依赖于它): 添加的项: _ExternalIncludePathToInclude= C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include @@ -2625,8 +2634,8 @@ C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\winrt C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\cppwinrt C:\Program Files (x86)\Windows Kits\NETFXSDK\4.8.1\Include\um -22:29:42.090 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“AddExternalIncludDirectoriesToPaths”的操作。: (目标 ID: 16) -22:29:42.090 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.Cpp.Current.targets”中的目标“SetBuildDefaultEnvironmentVariables: (目标 ID: 17)”(目标“PrepareForBuild”依赖于它): +22:23:18.197 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“AddExternalIncludDirectoriesToPaths”的操作。: (目标 ID: 16) +22:23:18.197 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.Cpp.Current.targets”中的目标“SetBuildDefaultEnvironmentVariables: (目标 ID: 17)”(目标“PrepareForBuild”依赖于它): 任务“SetEnv” (任务 ID: 11) 任务参数:Prefix=False (任务 ID: 11) 任务参数:Value=C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\bin\HostX64\x64;C:\Program Files (x86)\Windows Kits\10\bin\10.0.22621.0\x64;;C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8.1 Tools\x64;C:\Program Files (x86)\Windows Kits\10\bin\10.0.22621.0\x86;;C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8.1 Tools;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\tools;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\ide;C:\Program Files (x86)\HTML Help Workshop;;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64;C:\Windows\Microsoft.NET\Framework64\v4.0.30319\;C:\Windows\Microsoft.NET\Framework\v4.0.30319\;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin;C:\Windows\Microsoft.NET\Framework\v4.0.30319\;;C:\Program Files (x86)\VMware\VMware Workstation\bin\;C:\Program Files\Microsoft\jdk-11.0.16.101-hotspot\bin;C:\Program Files\Docker\Docker\resources\bin;C:\Program Files\dotnet\;C:\Program Files\Git\cmd;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\110\Tools\Binn\;C:\Program Files\Microsoft SQL Server\120\DTS\Binn\;C:\Program Files\Microsoft VS Code\bin;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;C:\Program Files\Anaconda3;C:\Program Files\Anaconda3\Library\mingw-w64\bin;C:\Program Files\Anaconda3\Library\usr\bin;C:\Program Files\Anaconda3\Library\bin;C:\Program Files\Anaconda3\Scripts;C:\Users\Nitlo\.cargo\bin;C:\Users\Nitlo\AppData\Local\Microsoft\WindowsApps;C:\Users\Nitlo\.dotnet\tools;C:\Asm\nasm.exe;C:\Asm\vsyasm.exe;C:\Windows\System32;;C:\Users\Nitlo\AppData\Local\Programs\oh-my-posh\bin; (任务 ID: 11) @@ -2668,10 +2677,10 @@ 任务参数:Name=VSTEL_MSBuildProjectFullPath (任务 ID: 16) VSTEL_MSBuildProjectFullPath=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj (任务 ID: 16) 已完成执行任务“SetEnv”的操作。 (任务 ID: 16) -22:29:42.091 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“SetBuildDefaultEnvironmentVariables”的操作。: (目标 ID: 17) +22:23:18.198 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“SetBuildDefaultEnvironmentVariables”的操作。: (目标 ID: 17) 由于条件的计算结果为 false,已跳过目标“SetUserMacroEnvironmentVariables”;('@(BuildMacro)' != '' and '$(DesignTimeBuild)' != 'true')的计算结果为('' != '' and '' != 'true')。 已跳过目标“_PrepareForReferenceResolution”。以前的生成已成功。 -22:29:42.091 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“GetResolvedWinMD: (目标 ID: 18)”(目标“PrepareForBuild”依赖于它): +22:23:18.198 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“GetResolvedWinMD: (目标 ID: 18)”(目标“PrepareForBuild”依赖于它): 添加的项: Link= tmp @@ -2762,8 +2771,8 @@ TypeLibraryResourceID=1 UACExecutionLevel=AsInvoker UACUIAccess=false -22:29:42.091 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“GetResolvedWinMD”的操作。: (目标 ID: 18) -22:29:42.091 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.Cpp.WindowsSDK.targets”中的目标“_CheckWindowsSDKInstalled: (目标 ID: 19)”(目标“PrepareForBuild”依赖于它): +22:23:18.199 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“GetResolvedWinMD”的操作。: (目标 ID: 18) +22:23:18.199 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.Cpp.WindowsSDK.targets”中的目标“_CheckWindowsSDKInstalled: (目标 ID: 19)”(目标“PrepareForBuild”依赖于它): 设置属性: WindowsSDKInstalled=false 设置属性: WindowsSDK_UAP_Support=false 设置属性: WindowsSDK_Desktop_Support=false @@ -2772,11 +2781,11 @@ 设置属性: WindowsSDK_Desktop_Support=true 由于 false 条件,已跳过任务“VCMessage”;('$(WindowsSDKInstalled)' != 'true')计算为('true' != 'true')。 由于 false 条件,已跳过任务“VCMessage”;('$(WindowsAppContainer)' != 'true' and '$(WindowsSDK_Desktop_Support)' != true)计算为('false' != 'true' and 'true' != true)。 -22:29:42.094 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_CheckWindowsSDKInstalled”的操作。: (目标 ID: 19) +22:23:18.199 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_CheckWindowsSDKInstalled”的操作。: (目标 ID: 19) 已跳过目标“GetFrameworkPaths”。以前的生成已成功。 已跳过目标“GetReferenceAssemblyPaths”。以前的生成已成功。 由于条件的计算结果为 false,已跳过目标“AssignLinkMetadata”;( '$(SynthesizeLinkMetadata)' == 'true' )的计算结果为( '' == 'true' )。 -22:29:42.094 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VisualStudio\v17.0\CodeAnalysis\Microsoft.CodeAnalysis.targets”中的目标“SetCABuildNativeEnvironmentVariables: (目标 ID: 20)”(目标“PrepareForBuild”依赖于它): +22:23:18.199 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VisualStudio\v17.0\CodeAnalysis\Microsoft.CodeAnalysis.targets”中的目标“SetCABuildNativeEnvironmentVariables: (目标 ID: 20)”(目标“PrepareForBuild”依赖于它): 任务“SetEnv” (任务 ID: 17) 任务参数:Prefix=False (任务 ID: 17) 任务参数:Value=C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\atlmfc\include;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include;C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt;;C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared;C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\winrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\cppwinrt;C:\Program Files (x86)\Windows Kits\NETFXSDK\4.8.1\Include\um; (任务 ID: 17) @@ -2784,8 +2793,8 @@ CAExcludePath=C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\atlmfc\include;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include;C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt;;C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared;C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\winrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\cppwinrt;C:\Program Files (x86)\Windows Kits\NETFXSDK\4.8.1\Include\um; (任务 ID: 17) 已完成执行任务“SetEnv”的操作。 (任务 ID: 17) 由于 false 条件,已跳过任务“SetEnv”;('$(RunMsvcAnalysis)'=='true' and '$(VCCodeAnalysisUX)'=='true')计算为('false'=='true' and 'true'=='true')。 -22:29:42.094 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“SetCABuildNativeEnvironmentVariables”的操作。: (目标 ID: 20) -22:29:42.094 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“PrepareForBuild: (目标 ID: 21)”(目标“ResolveAssemblyReferences”依赖于它): +22:23:18.200 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“SetCABuildNativeEnvironmentVariables”的操作。: (目标 ID: 20) +22:23:18.200 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“PrepareForBuild: (目标 ID: 21)”(目标“ResolveAssemblyReferences”依赖于它): 设置属性: TargetDir=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\ 设置属性: LocalDebuggerCommand=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.dll 设置属性: BuildProjectReferences=false @@ -2924,7 +2933,7 @@ 任务参数:Arguments=StgSharpGraphic.vcxproj;x64\Debug\ (任务 ID: 20) 任务参数:Code=MSB8028 (任务 ID: 20) 任务参数:Type=Warning (任务 ID: 20) -22:29:42.111 1>C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets(531,5): warning MSB8028: 中间目录(x64\Debug\)包含从另一个项目(StgSharpGraphic.vcxproj)共享的文件。 这会导致错误的清除和重新生成行为。 +22:23:18.219 1>C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets(531,5): warning MSB8028: 中间目录(x64\Debug\)包含从另一个项目(StgSharpGraphic.vcxproj)共享的文件。 这会导致错误的清除和重新生成行为。 已完成执行任务“VCMessage”的操作。 (任务 ID: 20) 设置属性: _Tmp=C:\Users\Nitlo\AppData\Local\Temp 设置属性: _Temp=C:\Users\Nitlo\AppData\Local\Temp @@ -2944,20 +2953,20 @@ D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\ x64\Debug\StgSharpC.tlog\ (任务 ID: 22) 已完成执行任务“MakeDir”的操作。 (任务 ID: 22) -22:29:42.117 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“PrepareForBuild”的操作。: (目标 ID: 21) +22:23:18.225 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“PrepareForBuild”的操作。: (目标 ID: 21) 已跳过目标“_PrepareForReferenceResolution”。以前的生成已成功。 由于条件的计算结果为 false,已跳过目标“ComputeCrtSDKReference”;('@(ClCompile)'!='' and '$(WindowsAppContainer)'=='true' and '$(UseCrtSDKReference)' != 'false')的计算结果为('debuger.c;dllmain.c;glsc2.c;...'!='' and 'false'=='true' and '' != 'false')。 由于条件的计算结果为 false,已跳过目标“GetInstalledSDKLocations”;('@(SDKReference)' != '')的计算结果为('' != '')。 -22:29:42.117 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“ResolveSDKReferences: (目标 ID: 22)”(目标“ResolveAssemblyReferences”依赖于它): +22:23:18.225 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“ResolveSDKReferences: (目标 ID: 22)”(目标“ResolveAssemblyReferences”依赖于它): 由于 false 条件,已跳过任务“ResolveSDKReference”;('@(SDKReference)'!='')计算为(''!='')。 -22:29:42.117 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ResolveSDKReferences”的操作。: (目标 ID: 22) +22:23:18.225 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ResolveSDKReferences”的操作。: (目标 ID: 22) 已跳过目标“ResolveSDKReferences”。以前的生成已成功。 -22:29:42.117 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“ExpandSDKReferences: (目标 ID: 23)”(目标“ResolveAssemblyReferences”依赖于它): +22:23:18.225 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“ExpandSDKReferences: (目标 ID: 23)”(目标“ResolveAssemblyReferences”依赖于它): 由于 false 条件,已跳过任务“GetSDKReferenceFiles”;('@(ResolvedSDKReference)'!='')计算为(''!='')。 -22:29:42.117 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ExpandSDKReferences”的操作。: (目标 ID: 23) +22:23:18.225 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ExpandSDKReferences”的操作。: (目标 ID: 23) 由于条件的计算结果为 false,已跳过目标“ResolveNuGetPackageAssets”;('$(ResolveNuGetPackages)' == 'true' and exists('$(ProjectLockFile)'))的计算结果为('true' == 'true' and exists('obj\project.assets.json'))。 由于条件的计算结果为 false,已跳过目标“FakesGenerateBeforeBuild”;(@(Fakes) != '' AND $(BuildingProject) AND $(FakesUseV2Generation) != 'true')的计算结果为( != '' AND true AND != 'true')。 -22:29:42.117 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“ResolveAssemblyReferences: (目标 ID: 24)”(目标“ResolveReferences”依赖于它): +22:23:18.225 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“ResolveAssemblyReferences: (目标 ID: 24)”(目标“ResolveReferences”依赖于它): 添加的项: _ReferenceInstalledAssemblyDirectory=C:\Program Files (x86)\Windows Kits\10\References 设置属性: ResolveAssemblyReferencesStateFile=x64\Debug\StgSharpGraphic.vcxproj.AssemblyReference.cache 设置属性: ResolveAssemblyReferencesSilent=false @@ -2968,22 +2977,26 @@ 设置属性: ResolveAssemblyReferenceOutputUnresolvedAssemblyConflicts=false 设置属性: FindDependenciesOfExternallyResolvedReferences=false 由于 false 条件,已跳过任务“ResolveAssemblyReference”;('@(Reference)'!='' or '@(_ResolvedProjectReferencePaths)'!='' or '@(_ExplicitReference)' != '')计算为(''!='' or ''!='' or '' != '')。 -22:29:42.117 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ResolveAssemblyReferences”的操作。: (目标 ID: 24) +22:23:18.226 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ResolveAssemblyReferences”的操作。: (目标 ID: 24) 由于条件的计算结果为 false,已跳过目标“GenerateFakes”;($(BuildingProject) AND $(FakesUseV2Generation) == 'true')的计算结果为(true AND == 'true')。 由于条件的计算结果为 false,已跳过目标“GenerateBindingRedirects”;('$(AutoGenerateBindingRedirects)' == 'true' and '$(GenerateBindingRedirectsOutputType)' == 'true' and '@(SuggestedBindingRedirects)' != '' and '$(DesignTimeBuild)' != 'true' and '$(BuildingProject)' == 'true')的计算结果为('' == 'true' and '' == 'true' and '' != '' and '' != 'true' and 'true' == 'true')。 由于条件的计算结果为 false,已跳过目标“GenerateBindingRedirectsUpdateAppConfig”;('$(AutoGenerateBindingRedirects)' == 'true' and '$(GenerateBindingRedirectsOutputType)' == 'true')的计算结果为('' == 'true' and '' == 'true')。 由于条件的计算结果为 false,已跳过目标“ResolveComReferences”;('@(COMReference)'!='' or '@(COMFileReference)'!='')的计算结果为(''!='' or ''!='')。 -22:29:42.117 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“AfterResolveReferences: (目标 ID: 25)”(目标“ResolveReferences”依赖于它): -22:29:42.117 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“AfterResolveReferences”的操作。: (目标 ID: 25) +22:23:18.226 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“AfterResolveReferences: (目标 ID: 25)”(目标“ResolveReferences”依赖于它): +22:23:18.226 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“AfterResolveReferences”的操作。: (目标 ID: 25) 由于条件的计算结果为 false,已跳过目标“ResolveTestReferences”;('@(Shadow)'!='')的计算结果为(''!='')。 -22:29:42.117 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“ResolveReferences: (目标 ID: 26)”(目标“Build”依赖于它): -22:29:42.117 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ResolveReferences”的操作。: (目标 ID: 26) +22:23:18.226 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“ResolveReferences: (目标 ID: 26)”(目标“Build”依赖于它): +22:23:18.226 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ResolveReferences”的操作。: (目标 ID: 26) 已跳过目标“PrepareForBuild”。以前的生成已成功。 已跳过目标“PrepareForBuild”。以前的生成已成功。 -22:29:42.118 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“InitializeBuildStatus: (目标 ID: 27)”(目标“Build”依赖于它): +22:23:18.226 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“InitializeBuildStatus: (目标 ID: 27)”(目标“Build”依赖于它): 正在使用程序集“Microsoft.Build.Tasks.Core, Version=15.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”中的“ReadLinesFromFile”任务。 任务“ReadLinesFromFile” (任务 ID: 23) 任务参数:File=x64\Debug\StgSharpC.tlog\StgSharpC.lastbuildstate (任务 ID: 23) + 输出项: + _ReadProjectStateLine= + PlatformToolSet=v143:VCToolArchitecture=Native64Bit:VCToolsVersion=14.38.33130:TargetPlatformVersion=10.0.22621.0: + Debug|x64|D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\| (任务 ID: 23) 已完成执行任务“ReadLinesFromFile”的操作。 (任务 ID: 23) 设置属性: ProjectStateLine=TargetPlatformVersion=10.0.22621.0: 设置属性: ProjectStateLine=VCToolsVersion=14.38.33130:TargetPlatformVersion=10.0.22621.0: @@ -3005,33 +3018,33 @@ 正在创建“x64\Debug\StgSharpC.tlog\unsuccessfulbuild”,因为已指定“AlwaysCreate”。 (任务 ID: 25) 正在对“x64\Debug\StgSharpC.tlog\unsuccessfulbuild”执行 Touch 任务。 (任务 ID: 25) 已完成执行任务“Touch”的操作。 (任务 ID: 25) -22:29:42.121 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“InitializeBuildStatus”的操作。: (目标 ID: 27) +22:23:18.235 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“InitializeBuildStatus”的操作。: (目标 ID: 27) 已跳过目标“PrepareProjectReferences”。以前的生成已成功。 -22:29:42.121 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“BuildGenerateSourcesTraverse: (目标 ID: 28)”(目标“BuildGenerateSources”依赖于它): +22:23:18.236 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“BuildGenerateSourcesTraverse: (目标 ID: 28)”(目标“BuildGenerateSources”依赖于它): 由于 false 条件,已跳过任务“MSBuild”;('$(BuildPassReferences)' == 'true' and '@(ProjectReferenceWithConfiguration)' != '' and '@(_MSBuildProjectReferenceExistent)' != '' and '%(_MSBuildProjectReferenceExistent.BuildReference)' == 'true')计算为('' == 'true' and '' != '' and '' != '' and '' == 'true')。 -22:29:42.121 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“BuildGenerateSourcesTraverse”的操作。: (目标 ID: 28) +22:23:18.236 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“BuildGenerateSourcesTraverse”的操作。: (目标 ID: 28) 已跳过目标“PrepareForBuild”。以前的生成已成功。 已跳过目标“ResolveReferences”。以前的生成已成功。 -22:29:42.121 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.BuildSteps.Targets”中的目标“BeforeBuildGenerateSources: (目标 ID: 29)”(目标“_BuildGenerateSourcesAction”依赖于它): -22:29:42.121 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“BeforeBuildGenerateSources”的操作。: (目标 ID: 29) -22:29:42.121 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets”中的目标“PreBuildEvent: (目标 ID: 30)”(目标“_BuildGenerateSourcesAction”依赖于它): +22:23:18.236 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.BuildSteps.Targets”中的目标“BeforeBuildGenerateSources: (目标 ID: 29)”(目标“_BuildGenerateSourcesAction”依赖于它): +22:23:18.236 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“BeforeBuildGenerateSources”的操作。: (目标 ID: 29) +22:23:18.236 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets”中的目标“PreBuildEvent: (目标 ID: 30)”(目标“_BuildGenerateSourcesAction”依赖于它): 由于 false 条件,已跳过任务“Message”;('%(PreBuildEvent.Message)' != '' and '%(PreBuildEvent.Command)' != '')计算为('' != '' and '' != '')。 由于 false 条件,已跳过任务“Exec”;('%(PreBuildEvent.Command)' != '')计算为('' != '')。 -22:29:42.121 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“PreBuildEvent”的操作。: (目标 ID: 30) +22:23:18.236 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“PreBuildEvent”的操作。: (目标 ID: 30) 已跳过目标“PrepareForBuild”。以前的生成已成功。 已跳过目标“InitializeBuildStatus”。以前的生成已成功。 已跳过目标“SetBuildDefaultEnvironmentVariables”。以前的生成已成功。 由于条件的计算结果为 false,已跳过目标“SetUserMacroEnvironmentVariables”;('@(BuildMacro)' != '' and '$(DesignTimeBuild)' != 'true')的计算结果为('' != '' and '' != 'true')。 -22:29:42.121 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_SelectedFiles: (目标 ID: 31)”(目标“SelectCustomBuild”依赖于它): -22:29:42.121 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_SelectedFiles”的操作。: (目标 ID: 31) -22:29:42.121 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“SelectCustomBuild: (目标 ID: 32)”(目标“CustomBuild”依赖于它): -22:29:42.121 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“SelectCustomBuild”的操作。: (目标 ID: 32) -22:29:42.121 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ComputeCustomBuildOutput: (目标 ID: 33)”(目标“CustomBuild”依赖于它): +22:23:18.236 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_SelectedFiles: (目标 ID: 31)”(目标“SelectCustomBuild”依赖于它): +22:23:18.236 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_SelectedFiles”的操作。: (目标 ID: 31) +22:23:18.236 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“SelectCustomBuild: (目标 ID: 32)”(目标“CustomBuild”依赖于它): +22:23:18.236 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“SelectCustomBuild”的操作。: (目标 ID: 32) +22:23:18.236 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ComputeCustomBuildOutput: (目标 ID: 33)”(目标“CustomBuild”依赖于它): 由于 false 条件,已跳过任务“CreateItem”;('%(CustomBuildOutputs.OutputItemType)'!='')计算为(''!='')。 任务“MakeDir” (任务 ID: 26) 已完成执行任务“MakeDir”的操作。 (任务 ID: 26) -22:29:42.122 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeCustomBuildOutput”的操作。: (目标 ID: 33) -22:29:42.122 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets”中的目标“CustomBuild: (目标 ID: 34)”(目标“_BuildGenerateSourcesAction”依赖于它): +22:23:18.236 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeCustomBuildOutput”的操作。: (目标 ID: 33) +22:23:18.236 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets”中的目标“CustomBuild: (目标 ID: 34)”(目标“_BuildGenerateSourcesAction”依赖于它): 设置属性: CustomBuildToolArchitecture=Native32Bit 正在使用程序集“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.Build.CppTasks.Common.dll”中的“GetOutOfDateItems”任务。 任务“GetOutOfDateItems” (任务 ID: 27) @@ -3053,12 +3066,12 @@ 已完成执行任务“GetOutOfDateItems”的操作。 (任务 ID: 28) 由于 false 条件,已跳过任务“ParallelCustomBuild”;('@(_ParallelCustomBuild)' != '')计算为('' != '')。 由于 false 条件,已跳过任务“CustomBuild”;('@(_CustomBuild)' != '')计算为('' != '')。 -22:29:42.130 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“CustomBuild”的操作。: (目标 ID: 34) +22:23:18.245 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“CustomBuild”的操作。: (目标 ID: 34) 由于条件的计算结果为 false,已跳过目标“FxExport”;('@(FxCompile)' != '')的计算结果为('' != '')。 由于条件的计算结果为 false,已跳过目标“FxCompile”;('@(FxCompile)' != '')的计算结果为('' != '')。 由于条件的计算结果为 false,已跳过目标“_CreateCopyFileItems”;('@(CopyFileToFolders)' != '')的计算结果为('' != '')。 已跳过目标“_SelectedFiles”。以前的生成已成功。 -22:29:42.130 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets”中的目标“CopyFileToFolders: (目标 ID: 35)”(目标“_BuildGenerateSourcesAction”依赖于它): +22:23:18.245 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets”中的目标“CopyFileToFolders: (目标 ID: 35)”(目标“_BuildGenerateSourcesAction”依赖于它): 任务“GetOutOfDateItems” (任务 ID: 29) 任务参数:TLogNamePrefix=CopyFile (任务 ID: 29) 任务参数:TLogDirectory=x64\Debug\StgSharpC.tlog\ (任务 ID: 29) @@ -3067,58 +3080,58 @@ 任务参数:TrackFileAccess=True (任务 ID: 29) 已完成执行任务“GetOutOfDateItems”的操作。 (任务 ID: 29) 由于 false 条件,已跳过任务“Copy”;('@(_OutOfDateCopyFile)' != '')计算为('' != '')。 -22:29:42.131 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“CopyFileToFolders”的操作。: (目标 ID: 35) +22:23:18.245 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“CopyFileToFolders”的操作。: (目标 ID: 35) 由于条件的计算结果为 false,已跳过目标“Xsd”;('@(Xsd)' != '')的计算结果为('' != '')。 -22:29:42.131 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_Xsd: (目标 ID: 36)”(目标“_BuildGenerateSourcesAction”依赖于它): -22:29:42.131 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_Xsd”的操作。: (目标 ID: 36) -22:29:42.131 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“MakeDirsForMidl: (目标 ID: 37)”(目标“_Midl”依赖于它): +22:23:18.245 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_Xsd: (目标 ID: 36)”(目标“_BuildGenerateSourcesAction”依赖于它): +22:23:18.245 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_Xsd”的操作。: (目标 ID: 36) +22:23:18.246 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“MakeDirsForMidl: (目标 ID: 37)”(目标“_Midl”依赖于它): 设置属性: Midl_OutputDir= 任务“Makedir” (任务 ID: 30) 已完成执行任务“Makedir”的操作。 (任务 ID: 30) -22:29:42.132 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“MakeDirsForMidl”的操作。: (目标 ID: 37) +22:23:18.246 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“MakeDirsForMidl”的操作。: (目标 ID: 37) 由于条件的计算结果为 false,已跳过目标“Midl”;('@(Midl)' != '')的计算结果为('' != '')。 由于条件的计算结果为 false,已跳过目标“FxExport”;('@(FxCompile)' != '')的计算结果为('' != '')。 由于条件的计算结果为 false,已跳过目标“FxCompile”;('@(FxCompile)' != '')的计算结果为('' != '')。 -22:29:42.132 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ComputeMIDLGeneratedCompileInputs: (目标 ID: 38)”(目标“_Midl”依赖于它): +22:23:18.246 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ComputeMIDLGeneratedCompileInputs: (目标 ID: 38)”(目标“_Midl”依赖于它): 设置属性: Midl_OutputDir= -22:29:42.132 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeMIDLGeneratedCompileInputs”的操作。: (目标 ID: 38) -22:29:42.132 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“AfterMidl: (目标 ID: 39)”(目标“_Midl”依赖于它): -22:29:42.132 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“AfterMidl”的操作。: (目标 ID: 39) -22:29:42.132 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_Midl: (目标 ID: 40)”(目标“_BuildGenerateSourcesAction”依赖于它): -22:29:42.132 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_Midl”的操作。: (目标 ID: 40) -22:29:42.132 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.BuildSteps.Targets”中的目标“AfterBuildGenerateSources: (目标 ID: 41)”(目标“_BuildGenerateSourcesAction”依赖于它): -22:29:42.132 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“AfterBuildGenerateSources”的操作。: (目标 ID: 41) -22:29:42.132 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“AfterBuildGenerateSourcesEvent: (目标 ID: 42)”(目标“_BuildGenerateSourcesAction”依赖于它): -22:29:42.132 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“AfterBuildGenerateSourcesEvent”的操作。: (目标 ID: 42) -22:29:42.132 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_BuildGenerateSourcesAction: (目标 ID: 43)”(目标“BuildGenerateSources”依赖于它): -22:29:42.132 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_BuildGenerateSourcesAction”的操作。: (目标 ID: 43) -22:29:42.132 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“BuildGenerateSources: (目标 ID: 44)”(目标“Build”依赖于它): -22:29:42.132 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“BuildGenerateSources”的操作。: (目标 ID: 44) +22:23:18.246 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeMIDLGeneratedCompileInputs”的操作。: (目标 ID: 38) +22:23:18.246 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“AfterMidl: (目标 ID: 39)”(目标“_Midl”依赖于它): +22:23:18.246 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“AfterMidl”的操作。: (目标 ID: 39) +22:23:18.246 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_Midl: (目标 ID: 40)”(目标“_BuildGenerateSourcesAction”依赖于它): +22:23:18.246 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_Midl”的操作。: (目标 ID: 40) +22:23:18.246 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.BuildSteps.Targets”中的目标“AfterBuildGenerateSources: (目标 ID: 41)”(目标“_BuildGenerateSourcesAction”依赖于它): +22:23:18.246 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“AfterBuildGenerateSources”的操作。: (目标 ID: 41) +22:23:18.246 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“AfterBuildGenerateSourcesEvent: (目标 ID: 42)”(目标“_BuildGenerateSourcesAction”依赖于它): +22:23:18.246 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“AfterBuildGenerateSourcesEvent”的操作。: (目标 ID: 42) +22:23:18.246 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_BuildGenerateSourcesAction: (目标 ID: 43)”(目标“BuildGenerateSources”依赖于它): +22:23:18.246 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_BuildGenerateSourcesAction”的操作。: (目标 ID: 43) +22:23:18.246 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“BuildGenerateSources: (目标 ID: 44)”(目标“Build”依赖于它): +22:23:18.246 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“BuildGenerateSources”的操作。: (目标 ID: 44) 已跳过目标“PrepareProjectReferences”。以前的生成已成功。 -22:29:42.132 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“BuildCompileTraverse: (目标 ID: 45)”(目标“BuildCompile”依赖于它): +22:23:18.246 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“BuildCompileTraverse: (目标 ID: 45)”(目标“BuildCompile”依赖于它): 由于 false 条件,已跳过任务“MSBuild”;('$(BuildPassReferences)' == 'true' and '@(ProjectReferenceWithConfiguration)' != '' and '@(_MSBuildProjectReferenceExistent)' != '' and '%(_MSBuildProjectReferenceExistent.BuildReference)' == 'true')计算为('' == 'true' and '' != '' and '' != '' and '' == 'true')。 -22:29:42.132 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“BuildCompileTraverse”的操作。: (目标 ID: 45) +22:23:18.246 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“BuildCompileTraverse”的操作。: (目标 ID: 45) 已跳过目标“PrepareForBuild”。以前的生成已成功。 已跳过目标“ResolveReferences”。以前的生成已成功。 -22:29:42.132 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“BeforeClCompile: (目标 ID: 46)”(目标“_ClCompile”依赖于它): -22:29:42.132 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“BeforeClCompile”的操作。: (目标 ID: 46) +22:23:18.246 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“BeforeClCompile: (目标 ID: 46)”(目标“_ClCompile”依赖于它): +22:23:18.246 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“BeforeClCompile”的操作。: (目标 ID: 46) 由于条件的计算结果为 false,已跳过目标“GenerateTargetFrameworkMonikerAttribute”;('$(GenerateTargetFrameworkAttribute)' == 'true')的计算结果为('false' == 'true')。 已跳过目标“ComputeMIDLGeneratedCompileInputs”。以前的生成已成功。 -22:29:42.132 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ComputeCLInputPDBName: (目标 ID: 47)”(目标“_ClCompile”依赖于它): -22:29:42.132 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeCLInputPDBName”的操作。: (目标 ID: 47) +22:23:18.246 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ComputeCLInputPDBName: (目标 ID: 47)”(目标“_ClCompile”依赖于它): +22:23:18.246 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeCLInputPDBName”的操作。: (目标 ID: 47) 已跳过目标“ResolveReferences”。以前的生成已成功。 -22:29:42.132 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“FindReferenceAssembliesForReferences: (目标 ID: 48)”(目标“ComputeReferenceCLInput”依赖于它): -22:29:42.132 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“FindReferenceAssembliesForReferences”的操作。: (目标 ID: 48) +22:23:18.246 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“FindReferenceAssembliesForReferences: (目标 ID: 48)”(目标“ComputeReferenceCLInput”依赖于它): +22:23:18.246 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“FindReferenceAssembliesForReferences”的操作。: (目标 ID: 48) 由于条件的计算结果为 false,已跳过目标“AppendGeneratedFakesAssemblyReferences”;($(FakesUseV2Generation) == 'true' AND Exists('$(FakesOutputPath)'))的计算结果为( == 'true' AND Exists('D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\FakesAssemblies'))。 -22:29:42.132 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“GetReferencedVCProjectsInfo: (目标 ID: 49)”(目标“ComputeReferenceCLInput”依赖于它): +22:23:18.246 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“GetReferencedVCProjectsInfo: (目标 ID: 49)”(目标“ComputeReferenceCLInput”依赖于它): 由于 false 条件,已跳过任务“MSBuild”;('%(_MSBuildProjectReferenceExistent.Extension)' == '.vcxproj' and '@(ProjectReferenceWithConfiguration)' != '' and '@(_MSBuildProjectReferenceExistent)' != '')计算为('' == '.vcxproj' and '' != '' and '' != '')。 -22:29:42.132 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“GetReferencedVCProjectsInfo”的操作。: (目标 ID: 49) -22:29:42.132 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ComputeReferenceCLInput: (目标 ID: 50)”(目标“_ClCompile”依赖于它): +22:23:18.246 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“GetReferencedVCProjectsInfo”的操作。: (目标 ID: 49) +22:23:18.246 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ComputeReferenceCLInput: (目标 ID: 50)”(目标“_ClCompile”依赖于它): 由于 false 条件,已跳过任务“WriteLinesToFile”;('@(_ReferenceOutputsToCopyLocally)'!='' and '$(DesignTimeBuild)' != 'true' and '$(TrackFileAccess)' == 'true')计算为(''!='' and '' != 'true' and 'true' == 'true')。 由于 false 条件,已跳过任务“WriteLinesToFile”;('@(_ReferenceOutputsToCopyLocally)'!='' and '$(DesignTimeBuild)' != 'true' and '$(TrackFileAccess)' == 'true')计算为(''!='' and '' != 'true' and 'true' == 'true')。 由于 false 条件,已跳过任务“Message”;('$(_REFERENCE_DEBUG)'=='true')计算为(''=='true')。 -22:29:42.133 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeReferenceCLInput”的操作。: (目标 ID: 50) -22:29:42.133 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“WarnCompileDuplicatedFilename: (目标 ID: 51)”(目标“_ClCompile”依赖于它): +22:23:18.247 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeReferenceCLInput”的操作。: (目标 ID: 50) +22:23:18.247 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“WarnCompileDuplicatedFilename: (目标 ID: 51)”(目标“_ClCompile”依赖于它): 由于 false 条件,已跳过任务“VCMessage”;('%(ClCompile.ExcludedFromBuild)' != 'true' and '%(Filename)%(Extension)' != '@(ClCompile->'%(Filename)%(Extension)')' and '%(ObjectFileName)' == '@(ClCompile->Metadata(ObjectFileName)->Distinct())')计算为('' != 'true' and 'debuger.c' != 'debuger.c' and 'x64\Debug\' == 'x64\Debug\')。 由于 false 条件,已跳过任务“VCMessage”;('%(ClCompile.ExcludedFromBuild)' != 'true' and '%(Filename)%(Extension)' != '@(ClCompile->'%(Filename)%(Extension)')' and '%(ObjectFileName)' == '@(ClCompile->Metadata(ObjectFileName)->Distinct())')计算为('' != 'true' and 'dllmain.c' != 'dllmain.c' and 'x64\Debug\' == 'x64\Debug\')。 由于 false 条件,已跳过任务“VCMessage”;('%(ClCompile.ExcludedFromBuild)' != 'true' and '%(Filename)%(Extension)' != '@(ClCompile->'%(Filename)%(Extension)')' and '%(ObjectFileName)' == '@(ClCompile->Metadata(ObjectFileName)->Distinct())')计算为('' != 'true' and 'glsc2.c' != 'glsc2.c' and 'x64\Debug\' == 'x64\Debug\')。 @@ -3129,16 +3142,16 @@ 由于 false 条件,已跳过任务“VCMessage”;('%(ClCompile.ExcludedFromBuild)' != 'true' and '%(Filename)%(Extension)' != '@(ClCompile->'%(Filename)%(Extension)')' and '%(ObjectFileName)' == '@(ClCompile->Metadata(ObjectFileName)->Distinct())')计算为('' != 'true' and 'stb_image.c' != 'stb_image.c' and 'x64\Debug\' == 'x64\Debug\')。 由于 false 条件,已跳过任务“VCMessage”;('%(ClCompile.ExcludedFromBuild)' != 'true' and '%(Filename)%(Extension)' != '@(ClCompile->'%(Filename)%(Extension)')' and '%(ObjectFileName)' == '@(ClCompile->Metadata(ObjectFileName)->Distinct())')计算为('' != 'true' and 'StgSharpC.c' != 'StgSharpC.c' and 'x64\Debug\' == 'x64\Debug\')。 由于 false 条件,已跳过任务“VCMessage”;('%(ClCompile.ExcludedFromBuild)' != 'true' and '%(Filename)%(Extension)' != '@(ClCompile->'%(Filename)%(Extension)')' and '%(ObjectFileName)' == '@(ClCompile->Metadata(ObjectFileName)->Distinct())')计算为('' != 'true' and 'wgl.c' != 'wgl.c' and 'x64\Debug\' == 'x64\Debug\')。 -22:29:42.134 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“WarnCompileDuplicatedFilename”的操作。: (目标 ID: 51) -22:29:42.134 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets”中的目标“ComputeStdModulesCompileInputs: (目标 ID: 52)”(目标“_ClCompile”依赖于它): +22:23:18.248 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“WarnCompileDuplicatedFilename”的操作。: (目标 ID: 51) +22:23:18.248 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets”中的目标“ComputeStdModulesCompileInputs: (目标 ID: 52)”(目标“_ClCompile”依赖于它): 由于 false 条件,已跳过任务“GetLibraryModuleSources”;('@(LibraryManifests)' != '')计算为('' != '')。 -22:29:42.135 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeStdModulesCompileInputs”的操作。: (目标 ID: 52) -22:29:42.135 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets”中的目标“FixupCLCompileOptions: (目标 ID: 53)”(目标“_ClCompile”依赖于它): +22:23:18.249 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeStdModulesCompileInputs”的操作。: (目标 ID: 52) +22:23:18.249 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets”中的目标“FixupCLCompileOptions: (目标 ID: 53)”(目标“_ClCompile”依赖于它): 设置属性: EnableCppModules=true 设置属性: EnableCppModules=false 设置属性: _PCHForceSyncWrite=true -22:29:42.137 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“FixupCLCompileOptions”的操作。: (目标 ID: 53) -22:29:42.137 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“MakeDirsForCl: (目标 ID: 54)”(目标“_ClCompile”依赖于它): +22:23:18.252 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“FixupCLCompileOptions”的操作。: (目标 ID: 53) +22:23:18.252 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“MakeDirsForCl: (目标 ID: 54)”(目标“_ClCompile”依赖于它): 添加的项: ClDirsToMake=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\x64\Debug 添加的项: ClDirsToMake=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\x64\Debug 添加的项: ClDirsToMake=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\x64\Debug @@ -3160,7 +3173,7 @@ D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\x64\Debug D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\x64\Debug D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\x64\Debug -22:29:42.138 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“MakeDirsForCl”的操作。: (目标 ID: 54) +22:23:18.253 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“MakeDirsForCl”的操作。: (目标 ID: 54) 已跳过目标“_SelectedFiles”。以前的生成已成功。 由于条件的计算结果为 false,已跳过目标“GenerateTargetFrameworkMonikerAttribute”;('$(GenerateTargetFrameworkAttribute)' == 'true')的计算结果为('false' == 'true')。 已跳过目标“ComputeMIDLGeneratedCompileInputs”。以前的生成已成功。 @@ -3171,8 +3184,8 @@ 已跳过目标“FixupCLCompileOptions”。以前的生成已成功。 已跳过目标“SelectCustomBuild”。以前的生成已成功。 由于条件的计算结果为 false,已跳过目标“SetModuleDependencies”;('$(DesignTimeBuild)' != 'true' and '$(EnableCppModules)' == 'true')的计算结果为('' != 'true' and 'false' == 'true')。 -22:29:42.138 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“SelectClCompile: (目标 ID: 55)”(目标“ClCompile”依赖于它): -22:29:42.138 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“SelectClCompile”的操作。: (目标 ID: 55) +22:23:18.253 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“SelectClCompile: (目标 ID: 55)”(目标“ClCompile”依赖于它): +22:23:18.253 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“SelectClCompile”的操作。: (目标 ID: 55) 由于条件的计算结果为 false,已跳过目标“SelectAnalysisManifest”;('$(RunMsvcAnalysis)'=='true' and '$(SelectedFiles)'!='')的计算结果为('false'=='true' and ''!='')。 由于条件的计算结果为 false,已跳过目标“SetVConeMKLEnvironment”;('$(UseInteloneMKL)' != '' AND '$(UseInteloneMKL)' != 'No' AND '$(PlatformToolset)' == 'v143' AND '$(oneMKLProductDir)' != '')的计算结果为('No' != '' AND 'No' != 'No' AND 'v143' == 'v143' AND 'C:\Program Files (x86)\Intel\oneAPI\mkl\2022.2.1' != '')。 由于条件的计算结果为 false,已跳过目标“CheckInstalledVCLibsoneMKL”;('$(UseInteloneMKL)' != '' AND '$(UseInteloneMKL)' != 'No' AND '$(PlatformToolset)' == 'v143')的计算结果为('No' != '' AND 'No' != 'No' AND 'v143' == 'v143')。 @@ -3181,27 +3194,25 @@ 由于条件的计算结果为 false,已跳过目标“CheckIntelEnvironmentForVCLibsoneDAL”;('$(UseInteloneDAL)' != '' AND '$(UseInteloneDAL)' != 'false' AND '$(UseEnv)' != 'true' AND '$(PlatformToolset)' == 'v143')的计算结果为('false' != '' AND 'false' != 'false' AND '' != 'true' AND 'v143' == 'v143')。 由于条件的计算结果为 false,已跳过目标“CheckIntelEnvironmentForVCLibsoneMKL”;('$(UseInteloneMKL)' != '' AND '$(UseInteloneMKL)' != 'No' AND '$(UseEnv)' != 'true' AND '$(PlatformToolset)' == 'v143')的计算结果为('No' != '' AND 'No' != 'No' AND '' != 'true' AND 'v143' == 'v143')。 由于条件的计算结果为 false,已跳过目标“CheckIntelEnvironmentForVCLibsoneTBB”;('$(PlatformToolset)' == 'v143' AND '$(UseInteloneTBB)' == 'true' AND '$(UseEnv)' != 'true')的计算结果为('v143' == 'v143' AND 'false' == 'true' AND '' != 'true')。 -22:29:42.138 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Platforms\x64\PlatformToolsets\v143\ImportAfter\Intel.oneAPI.Libs.v143.targets”中的目标“CheckMixedPerfLibUsageVC: (目标 ID: 56)”(目标“ClCompile”依赖于它): +22:23:18.253 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Platforms\x64\PlatformToolsets\v143\ImportAfter\Intel.oneAPI.Libs.v143.targets”中的目标“CheckMixedPerfLibUsageVC: (目标 ID: 56)”(目标“ClCompile”依赖于它): 设置属性: oneAPIPerfLibsInstalled=true 由于 false 条件,已跳过任务“ICMessage”;('$(CnLPerfLibsUsed)'=='true' AND '$(oneAPIPerfLibsUsed)'=='true')计算为(''=='true' AND ''=='true')。 -22:29:42.139 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“CheckMixedPerfLibUsageVC”的操作。: (目标 ID: 56) -22:29:42.139 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets”中的目标“ClCompile: (目标 ID: 57)”(目标“_ClCompile”依赖于它): +22:23:18.253 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“CheckMixedPerfLibUsageVC”的操作。: (目标 ID: 56) +22:23:18.253 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets”中的目标“ClCompile: (目标 ID: 57)”(目标“_ClCompile”依赖于它): 设置属性: CLToolArchitecture=Native64Bit - 正在使用程序集“Microsoft.Build.Tasks.Core, Version=15.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”中的“Delete”任务。 - 任务“Delete” (任务 ID: 32) - 已完成执行任务“Delete”的操作。 (任务 ID: 32) + 由于 false 条件,已跳过任务“Delete”;('%(ClCompile.DebugInformationFormat)' != '' and '%(ClCompile.DebugInformationFormat)' != 'None' and '%(ClCompile.DebugInformationFormat)' != 'OldStyle' and '%(ClCompile.ProgramDataBaseFileName)' != '' and !Exists(%(ClCompile.ProgramDataBaseFileName)))计算为('EditAndContinue' != '' and 'EditAndContinue' != 'None' and 'EditAndContinue' != 'OldStyle' and 'x64\Debug\vc143.pdb' != '' and !Exists(x64\Debug\vc143.pdb))。 由于 false 条件,已跳过任务“MultiToolTask”;('%(ClCompile.CompilerIteration)' == 'Modules')计算为('' == 'Modules')。 由于 false 条件,已跳过任务“MultiToolTask”;('%(ClCompile.CompilerIteration)' == '' and '$(MultiProcCL)' == 'true')计算为('' == '' and 'false' == 'true')。 由于 false 条件,已跳过任务“CL”;('%(ClCompile.PrecompiledHeader)' == 'Create' and '%(ClCompile.CompilerIteration)' == '' and '$(MultiProcCL)' != 'true')计算为('NotUsing' == 'Create' and '' == '' and 'false' != 'true')。 正在使用程序集“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.Build.CppTasks.Common.dll”中的“CL”任务。 - 任务“CL” (任务 ID: 33) - 任务参数:IgnoreStandardIncludePath=False (任务 ID: 33) - 任务参数:SmallerTypeCheck=False (任务 ID: 33) - 任务参数:SupportJustMyCode=True (任务 ID: 33) - 任务参数:ConformanceMode=true (任务 ID: 33) - 任务参数:PrecompiledHeader=NotUsing (任务 ID: 33) - 任务参数:BrowseInformation=False (任务 ID: 33) - 任务参数:PreprocessSuppressLineNumbers=False (任务 ID: 33) + 任务“CL” (任务 ID: 32) + 任务参数:IgnoreStandardIncludePath=False (任务 ID: 32) + 任务参数:SmallerTypeCheck=False (任务 ID: 32) + 任务参数:SupportJustMyCode=True (任务 ID: 32) + 任务参数:ConformanceMode=true (任务 ID: 32) + 任务参数:PrecompiledHeader=NotUsing (任务 ID: 32) + 任务参数:BrowseInformation=False (任务 ID: 32) + 任务参数:PreprocessSuppressLineNumbers=False (任务 ID: 32) 任务参数: ExcludedInputPaths= C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include @@ -3243,31 +3254,31 @@ C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\lib\x64 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\atlmfc\lib\x64 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\VS\lib\x64 - C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\ucrt\x64 (任务 ID: 33) - 任务参数:BufferSecurityCheck=true (任务 ID: 33) - 任务参数:TreatAngleIncludeAsExternal=False (任务 ID: 33) - 任务参数:CompileAs=CompileAsC (任务 ID: 33) - 任务参数:MinimalRebuildFromTracking=True (任务 ID: 33) - 任务参数:ModuleDependenciesFile=x64\Debug\ (任务 ID: 33) - 任务参数:BuildingInIde=True (任务 ID: 33) - 任务参数:WholeProgramOptimization=False (任务 ID: 33) - 任务参数:ToolArchitecture=Native64Bit (任务 ID: 33) - 任务参数:TrackerLogDirectory=x64\Debug\StgSharpC.tlog\ (任务 ID: 33) - 任务参数:WarningLevel=Level3 (任务 ID: 33) - 任务参数:TreatWChar_tAsBuiltInType=True (任务 ID: 33) - 任务参数:SpectreMitigation=false (任务 ID: 33) - 任务参数:WinRTNoStdLib=False (任务 ID: 33) - 任务参数:BrowseInformationFile=x64\Debug\ (任务 ID: 33) - 任务参数:XMLDocumentationFileName=x64\Debug\ (任务 ID: 33) - 任务参数:ExpandAttributedSource=False (任务 ID: 33) - 任务参数:DebugInformationFormat=EditAndContinue (任务 ID: 33) - 任务参数:EnableFuzzer=False (任务 ID: 33) - 任务参数:MinimalRebuild=False (任务 ID: 33) - 任务参数:Optimization=Disabled (任务 ID: 33) - 任务参数:SourceDependenciesFile=x64\Debug\ (任务 ID: 33) - 任务参数:InlineFunctionExpansion=Default (任务 ID: 33) - 任务参数:GenerateModuleDependencies=False (任务 ID: 33) - 任务参数:SDLCheck=True (任务 ID: 33) + C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\ucrt\x64 (任务 ID: 32) + 任务参数:BufferSecurityCheck=true (任务 ID: 32) + 任务参数:TreatAngleIncludeAsExternal=False (任务 ID: 32) + 任务参数:CompileAs=CompileAsC (任务 ID: 32) + 任务参数:MinimalRebuildFromTracking=True (任务 ID: 32) + 任务参数:ModuleDependenciesFile=x64\Debug\ (任务 ID: 32) + 任务参数:BuildingInIde=True (任务 ID: 32) + 任务参数:WholeProgramOptimization=False (任务 ID: 32) + 任务参数:ToolArchitecture=Native64Bit (任务 ID: 32) + 任务参数:TrackerLogDirectory=x64\Debug\StgSharpC.tlog\ (任务 ID: 32) + 任务参数:WarningLevel=Level3 (任务 ID: 32) + 任务参数:TreatWChar_tAsBuiltInType=True (任务 ID: 32) + 任务参数:SpectreMitigation=false (任务 ID: 32) + 任务参数:WinRTNoStdLib=False (任务 ID: 32) + 任务参数:BrowseInformationFile=x64\Debug\ (任务 ID: 32) + 任务参数:XMLDocumentationFileName=x64\Debug\ (任务 ID: 32) + 任务参数:ExpandAttributedSource=False (任务 ID: 32) + 任务参数:DebugInformationFormat=EditAndContinue (任务 ID: 32) + 任务参数:EnableFuzzer=False (任务 ID: 32) + 任务参数:MinimalRebuild=False (任务 ID: 32) + 任务参数:Optimization=Disabled (任务 ID: 32) + 任务参数:SourceDependenciesFile=x64\Debug\ (任务 ID: 32) + 任务参数:InlineFunctionExpansion=Default (任务 ID: 32) + 任务参数:GenerateModuleDependencies=False (任务 ID: 32) + 任务参数:SDLCheck=True (任务 ID: 32) 任务参数: Sources= debuger.c @@ -4109,13 +4120,13 @@ WarningLevel=Level3 WholeProgramOptimization=false WinRTNoStdLib=false - XMLDocumentationFileName=x64\Debug\ (任务 ID: 33) - 任务参数:ProgramDataBaseFileName=x64\Debug\vc143.pdb (任务 ID: 33) - 任务参数:RemoveUnreferencedCodeData=True (任务 ID: 33) - 任务参数:FloatingPointModel=Precise (任务 ID: 33) - 任务参数:StructMemberAlignment=Default (任务 ID: 33) - 任务参数:UseStructuredOutput=True (任务 ID: 33) - 任务参数:ExternalWarningLevel=Level3 (任务 ID: 33) + XMLDocumentationFileName=x64\Debug\ (任务 ID: 32) + 任务参数:ProgramDataBaseFileName=x64\Debug\vc143.pdb (任务 ID: 32) + 任务参数:RemoveUnreferencedCodeData=True (任务 ID: 32) + 任务参数:FloatingPointModel=Precise (任务 ID: 32) + 任务参数:StructMemberAlignment=Default (任务 ID: 32) + 任务参数:UseStructuredOutput=True (任务 ID: 32) + 任务参数:ExternalWarningLevel=Level3 (任务 ID: 32) 任务参数: PreprocessorDefinitions= GLFW_BUILD_DLL @@ -4125,1357 +4136,95 @@ _USRDLL _WINDLL _UNICODE - UNICODE (任务 ID: 33) - 任务参数:TranslateIncludes=False (任务 ID: 33) - 任务参数:YieldDuringToolExecution=True (任务 ID: 33) - 任务参数:ErrorReporting=Prompt (任务 ID: 33) - 任务参数:EnableFiberSafeOptimizations=False (任务 ID: 33) - 任务参数:GenerateXMLDocumentationFiles=False (任务 ID: 33) - 任务参数:DeleteOutputBeforeExecute=True (任务 ID: 33) - 任务参数:EnableASAN=False (任务 ID: 33) - 任务参数:IntelJCCErratum=False (任务 ID: 33) - 任务参数:TreatWarningAsError=False (任务 ID: 33) - 任务参数:ForceConformanceInForLoopScope=True (任务 ID: 33) - 任务参数:BasicRuntimeChecks=EnableFastChecks (任务 ID: 33) - 任务参数:LanguageStandard_C=stdc17 (任务 ID: 33) - 任务参数:EnableEnhancedInstructionSet=NotSet (任务 ID: 33) - 任务参数:CallingConvention=Cdecl (任务 ID: 33) - 任务参数:PreprocessToFile=False (任务 ID: 33) - 任务参数:ShowIncludes=True (任务 ID: 33) - 任务参数:IntrinsicFunctions=False (任务 ID: 33) - 任务参数:RuntimeLibrary=MultiThreadedDebugDll (任务 ID: 33) - 任务参数:LanguageStandard=stdcpp20 (任务 ID: 33) - 任务参数:UseFullPaths=True (任务 ID: 33) - 任务参数:AssemblerListingLocation=x64\Debug\ (任务 ID: 33) - 任务参数:TrackFileAccess=True (任务 ID: 33) - 任务参数:GenerateSourceDependencies=False (任务 ID: 33) - 任务参数:ExceptionHandling=Sync (任务 ID: 33) - 任务参数:SuppressStartupBanner=True (任务 ID: 33) - 任务参数:OmitDefaultLibName=False (任务 ID: 33) - 任务参数:DisableLanguageExtensions=False (任务 ID: 33) - 任务参数:ObjectFileName=x64\Debug\ (任务 ID: 33) - 任务参数:PreprocessKeepComments=False (任务 ID: 33) - 任务参数:UndefineAllPreprocessorDefinitions=False (任务 ID: 33) - 任务参数:AssemblerOutput=All (任务 ID: 33) - 任务参数:FavorSizeOrSpeed=Neither (任务 ID: 33) - 任务参数:DiagnosticsFormat=Column (任务 ID: 33) - 因缺少 PDB“x64\Debug\vc143.pdb”而强行要求对所有源文件重新编译。 (任务 ID: 33) - 传递给工具的环境变量为: (任务 ID: 33) - VS_UNICODE_OUTPUT=1484 (任务 ID: 33) - SARIF_OUTPUT_PIPE=2012 (任务 ID: 33) - C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\bin\HostX64\x64\CL.exe /c /ZI /JMC /nologo /W3 /WX- /diagnostics:column /sdl /Od /D GLFW_BUILD_DLL /D _DEBUG /D STGSHARPGRAPHIC_EXPORTS /D _WINDOWS /D _USRDLL /D _WINDLL /D _UNICODE /D UNICODE /Gm- /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /std:c17 /permissive- /FAcs /Fa"x64\Debug\\" /Fo"x64\Debug\\" /Fd"x64\Debug\vc143.pdb" /external:W3 /Gd /TC /showIncludes /FC /errorReport:prompt debuger.c dllmain.c glsc2.c linear.c mat2.c mat3.c mat4.c stb_image.c StgSharpC.c wgl.c (任务 ID: 33) - 跟踪命令: (任务 ID: 33) - C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Tracker.exe /d "C:\Program Files (x86)\MSBuild\15.0\FileTracker\FileTracker32.dll" /i "D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\x64\Debug\StgSharpC.tlog" /r "D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\DEBUGER.C|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\DLLMAIN.C|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\GLSC2.C|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\LINEAR.C|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\MAT2.C|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\MAT3.C|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\MAT4.C|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\STB_IMAGE.C|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\STGSHARPC.C|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\WGL.C" /b MSBuildConsole_CancelEventa3408f17a7a6486cabff9e7e6efad6dd /c "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\bin\HostX64\x64\CL.exe" /c /ZI /JMC /nologo /W3 /WX- /diagnostics:column /sdl /Od /D GLFW_BUILD_DLL /D _DEBUG /D STGSHARPGRAPHIC_EXPORTS /D _WINDOWS /D _USRDLL /D _WINDLL /D _UNICODE /D UNICODE /Gm- /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /std:c17 /permissive- /FAcs /Fa"x64\Debug\\" /Fo"x64\Debug\\" /Fd"x64\Debug\vc143.pdb" /external:W3 /Gd /TC /showIncludes /FC /errorReport:prompt debuger.c dllmain.c glsc2.c linear.c mat2.c mat3.c mat4.c stb_image.c StgSharpC.c wgl.c (任务 ID: 33) - debuger.c (任务 ID: 33) - dllmain.c (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\./include/ssgc_framework.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\windows.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\winapifamily.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\winpackagefamily.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\sdkddkver.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\excpt.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\vcruntime.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\sal.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\concurrencysal.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\vadefs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\stdarg.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\windef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\minwindef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\specstrings.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\specstrings_strict.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\specstrings_undef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\driverspecs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\sdv_driverspecs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winnt.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\ctype.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wctype.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\kernelspecs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\basetsd.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\guiddef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\string.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_memory.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_memcpy_s.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\errno.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\vcruntime_string.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wstring.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack8.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack1.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack1.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\apiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\ktmtypes.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winbase.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\apisetcconv.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\minwinbase.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\apiquery2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\processenv.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\fileapifromapp.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\fileapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\debugapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\utilapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\handleapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\errhandlingapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\fibersapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\namedpipeapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\profileapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\heapapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\ioapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\synchapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\interlockedapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\processthreadsapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\sysinfoapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\memoryapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\enclaveapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\threadpoollegacyapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\threadpoolapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\jobapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\jobapi2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wow64apiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\libloaderapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\securitybaseapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\namespaceapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\systemtopologyapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\processtopologyapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\securityappcontainer.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\realtimeapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\winerror.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\timezoneapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wingdi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack1.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winuser.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\tvout.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winnls.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\datetimeapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\stringapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winnls.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wincon.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wincontypes.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\consoleapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\consoleapi2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\consoleapi3.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winver.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\verrsrc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winreg.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\reason.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winnetwk.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\wnnc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\stralign.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winsvc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\mcx.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\imm.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\ime_cmodes.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\./include/StgSharpC.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\ssgc_internal.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\glad_gl.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\khrplatform.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\stdint.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\glad_wgl.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\glfw3.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stddef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\immintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\wmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\nmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\smmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\tmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\pmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\emmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\xmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\mmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\malloc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_malloc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\zmmintrin.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\stb_image.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stdio.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wstdio.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_stdio_config.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stdlib.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_search.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wstdlib.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\limits.h (任务 ID: 33) - glsc2.c (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stdio.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\vcruntime.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\sal.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\concurrencysal.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\vadefs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wstdio.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_stdio_config.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stdlib.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_malloc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_search.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stddef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wstdlib.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\limits.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\string.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_memory.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_memcpy_s.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\errno.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\vcruntime_string.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wstring.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\./include/glad_glsc2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\winapifamily.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\winpackagefamily.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\khrplatform.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\stdint.h (任务 ID: 33) - linear.c (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\./include/StgSharpC.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\ssgc_framework.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\windows.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\winapifamily.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\winpackagefamily.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\sdkddkver.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\excpt.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\vcruntime.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\sal.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\concurrencysal.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\vadefs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\stdarg.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\windef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\minwindef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\specstrings.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\specstrings_strict.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\specstrings_undef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\driverspecs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\sdv_driverspecs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winnt.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\ctype.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wctype.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\kernelspecs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\basetsd.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\guiddef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\string.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_memory.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_memcpy_s.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\errno.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\vcruntime_string.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wstring.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack8.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack1.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack1.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\apiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\ktmtypes.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winbase.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\apisetcconv.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\minwinbase.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\apiquery2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\processenv.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\fileapifromapp.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\fileapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\debugapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\utilapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\handleapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\errhandlingapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\fibersapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\namedpipeapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\profileapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\heapapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\ioapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\synchapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\interlockedapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\processthreadsapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\sysinfoapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\memoryapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\enclaveapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\threadpoollegacyapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\threadpoolapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\jobapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\jobapi2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wow64apiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\libloaderapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\securitybaseapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\namespaceapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\systemtopologyapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\processtopologyapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\securityappcontainer.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\realtimeapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\winerror.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\timezoneapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wingdi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack1.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winuser.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\tvout.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winnls.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\datetimeapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\stringapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winnls.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wincon.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wincontypes.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\consoleapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\consoleapi2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\consoleapi3.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winver.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\verrsrc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winreg.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\reason.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winnetwk.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\wnnc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\stralign.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winsvc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\mcx.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\imm.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\ime_cmodes.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\ssgc_internal.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\glad_gl.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\khrplatform.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\stdint.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\glad_wgl.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\glfw3.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stddef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\immintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\wmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\nmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\smmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\tmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\pmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\emmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\xmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\mmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\malloc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_malloc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\zmmintrin.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\stb_image.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stdio.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wstdio.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_stdio_config.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stdlib.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_search.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wstdlib.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\limits.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stdalign.h (任务 ID: 33) - mat2.c (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\./include/StgSharpC.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\ssgc_framework.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\windows.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\winapifamily.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\winpackagefamily.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\sdkddkver.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\excpt.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\vcruntime.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\sal.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\concurrencysal.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\vadefs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\stdarg.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\windef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\minwindef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\specstrings.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\specstrings_strict.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\specstrings_undef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\driverspecs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\sdv_driverspecs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winnt.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\ctype.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wctype.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\kernelspecs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\basetsd.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\guiddef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\string.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_memory.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_memcpy_s.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\errno.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\vcruntime_string.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wstring.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack8.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack1.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack1.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\apiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\ktmtypes.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winbase.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\apisetcconv.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\minwinbase.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\apiquery2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\processenv.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\fileapifromapp.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\fileapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\debugapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\utilapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\handleapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\errhandlingapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\fibersapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\namedpipeapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\profileapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\heapapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\ioapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\synchapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\interlockedapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\processthreadsapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\sysinfoapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\memoryapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\enclaveapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\threadpoollegacyapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\threadpoolapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\jobapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\jobapi2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wow64apiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\libloaderapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\securitybaseapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\namespaceapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\systemtopologyapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\processtopologyapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\securityappcontainer.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\realtimeapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\winerror.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\timezoneapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wingdi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack1.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winuser.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\tvout.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winnls.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\datetimeapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\stringapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winnls.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wincon.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wincontypes.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\consoleapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\consoleapi2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\consoleapi3.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winver.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\verrsrc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winreg.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\reason.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winnetwk.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\wnnc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\stralign.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winsvc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\mcx.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\imm.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\ime_cmodes.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\ssgc_internal.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\glad_gl.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\khrplatform.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\stdint.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\glad_wgl.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\glfw3.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stddef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\immintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\wmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\nmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\smmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\tmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\pmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\emmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\xmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\mmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\malloc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_malloc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\zmmintrin.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\stb_image.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stdio.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wstdio.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_stdio_config.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stdlib.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_search.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wstdlib.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\limits.h (任务 ID: 33) - mat3.c (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\./include/StgSharpC.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\ssgc_framework.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\windows.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\winapifamily.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\winpackagefamily.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\sdkddkver.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\excpt.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\vcruntime.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\sal.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\concurrencysal.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\vadefs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\stdarg.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\windef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\minwindef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\specstrings.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\specstrings_strict.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\specstrings_undef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\driverspecs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\sdv_driverspecs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winnt.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\ctype.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wctype.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\kernelspecs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\basetsd.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\guiddef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\string.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_memory.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_memcpy_s.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\errno.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\vcruntime_string.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wstring.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack8.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack1.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack1.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\apiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\ktmtypes.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winbase.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\apisetcconv.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\minwinbase.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\apiquery2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\processenv.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\fileapifromapp.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\fileapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\debugapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\utilapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\handleapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\errhandlingapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\fibersapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\namedpipeapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\profileapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\heapapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\ioapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\synchapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\interlockedapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\processthreadsapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\sysinfoapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\memoryapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\enclaveapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\threadpoollegacyapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\threadpoolapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\jobapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\jobapi2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wow64apiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\libloaderapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\securitybaseapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\namespaceapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\systemtopologyapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\processtopologyapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\securityappcontainer.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\realtimeapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\winerror.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\timezoneapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wingdi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack1.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winuser.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\tvout.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winnls.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\datetimeapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\stringapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winnls.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wincon.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wincontypes.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\consoleapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\consoleapi2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\consoleapi3.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winver.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\verrsrc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winreg.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\reason.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winnetwk.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\wnnc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\stralign.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winsvc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\mcx.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\imm.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\ime_cmodes.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\ssgc_internal.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\glad_gl.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\khrplatform.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\stdint.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\glad_wgl.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\glfw3.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stddef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\immintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\wmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\nmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\smmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\tmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\pmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\emmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\xmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\mmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\malloc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_malloc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\zmmintrin.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\stb_image.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stdio.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wstdio.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_stdio_config.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stdlib.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_search.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wstdlib.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\limits.h (任务 ID: 33) - mat4.c (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\./include/StgSharpC.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\ssgc_framework.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\windows.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\winapifamily.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\winpackagefamily.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\sdkddkver.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\excpt.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\vcruntime.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\sal.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\concurrencysal.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\vadefs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\stdarg.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\windef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\minwindef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\specstrings.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\specstrings_strict.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\specstrings_undef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\driverspecs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\sdv_driverspecs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winnt.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\ctype.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wctype.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\kernelspecs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\basetsd.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\guiddef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\string.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_memory.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_memcpy_s.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\errno.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\vcruntime_string.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wstring.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack8.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack1.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack1.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\apiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\ktmtypes.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winbase.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\apisetcconv.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\minwinbase.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\apiquery2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\processenv.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\fileapifromapp.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\fileapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\debugapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\utilapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\handleapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\errhandlingapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\fibersapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\namedpipeapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\profileapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\heapapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\ioapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\synchapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\interlockedapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\processthreadsapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\sysinfoapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\memoryapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\enclaveapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\threadpoollegacyapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\threadpoolapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\jobapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\jobapi2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wow64apiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\libloaderapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\securitybaseapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\namespaceapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\systemtopologyapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\processtopologyapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\securityappcontainer.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\realtimeapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\winerror.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\timezoneapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wingdi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack1.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winuser.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\tvout.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winnls.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\datetimeapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\stringapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winnls.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wincon.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wincontypes.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\consoleapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\consoleapi2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\consoleapi3.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winver.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\verrsrc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winreg.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\reason.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winnetwk.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\wnnc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\stralign.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winsvc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\mcx.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\imm.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\ime_cmodes.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\ssgc_internal.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\glad_gl.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\khrplatform.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\stdint.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\glad_wgl.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\glfw3.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stddef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\immintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\wmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\nmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\smmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\tmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\pmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\emmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\xmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\mmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\malloc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_malloc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\zmmintrin.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\stb_image.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stdio.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wstdio.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_stdio_config.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stdlib.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_search.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wstdlib.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\limits.h (任务 ID: 33) - Sarif: {"ruleId":"C4133","message":{"text":"“函数”: 从“__m128 *”到“const float *”的类型不兼容"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"file:///D:/NitloadIndustry/研究项目/1-Flagship/TH2020/ProjectFile/源代码/StgSharpC/mat4.c"},"region":{"startLine":10,"startColumn":32}}}]} (任务 ID: 33) -22:29:44.295 1>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(10,32): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - Sarif: {"ruleId":"C4133","message":{"text":"“函数”: 从“__m128 *”到“const float *”的类型不兼容"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"file:///D:/NitloadIndustry/研究项目/1-Flagship/TH2020/ProjectFile/源代码/StgSharpC/mat4.c"},"region":{"startLine":10,"startColumn":57}}}]} (任务 ID: 33) -22:29:44.298 1>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(10,57): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - Sarif: {"ruleId":"C4133","message":{"text":"“函数”: 从“__m128 *”到“const float *”的类型不兼容"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"file:///D:/NitloadIndustry/研究项目/1-Flagship/TH2020/ProjectFile/源代码/StgSharpC/mat4.c"},"region":{"startLine":11,"startColumn":32}}}]} (任务 ID: 33) -22:29:44.298 1>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(11,32): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - Sarif: {"ruleId":"C4133","message":{"text":"“函数”: 从“__m128 *”到“const float *”的类型不兼容"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"file:///D:/NitloadIndustry/研究项目/1-Flagship/TH2020/ProjectFile/源代码/StgSharpC/mat4.c"},"region":{"startLine":11,"startColumn":57}}}]} (任务 ID: 33) -22:29:44.298 1>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(11,57): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - Sarif: {"ruleId":"C4133","message":{"text":"“函数”: 从“__m128 *”到“const float *”的类型不兼容"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"file:///D:/NitloadIndustry/研究项目/1-Flagship/TH2020/ProjectFile/源代码/StgSharpC/mat4.c"},"region":{"startLine":19,"startColumn":32}}}]} (任务 ID: 33) -22:29:44.298 1>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(19,32): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - Sarif: {"ruleId":"C4133","message":{"text":"“函数”: 从“__m128 *”到“const float *”的类型不兼容"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"file:///D:/NitloadIndustry/研究项目/1-Flagship/TH2020/ProjectFile/源代码/StgSharpC/mat4.c"},"region":{"startLine":19,"startColumn":57}}}]} (任务 ID: 33) -22:29:44.298 1>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(19,57): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - Sarif: {"ruleId":"C4133","message":{"text":"“函数”: 从“__m128 *”到“const float *”的类型不兼容"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"file:///D:/NitloadIndustry/研究项目/1-Flagship/TH2020/ProjectFile/源代码/StgSharpC/mat4.c"},"region":{"startLine":20,"startColumn":32}}}]} (任务 ID: 33) -22:29:44.298 1>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(20,32): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - Sarif: {"ruleId":"C4133","message":{"text":"“函数”: 从“__m128 *”到“const float *”的类型不兼容"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"file:///D:/NitloadIndustry/研究项目/1-Flagship/TH2020/ProjectFile/源代码/StgSharpC/mat4.c"},"region":{"startLine":20,"startColumn":57}}}]} (任务 ID: 33) -22:29:44.299 1>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(20,57): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - Sarif: {"ruleId":"C4133","message":{"text":"“函数”: 从“__m128 *”到“const float *”的类型不兼容"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"file:///D:/NitloadIndustry/研究项目/1-Flagship/TH2020/ProjectFile/源代码/StgSharpC/mat4.c"},"region":{"startLine":21,"startColumn":32}}}]} (任务 ID: 33) -22:29:44.299 1>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(21,32): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - Sarif: {"ruleId":"C4133","message":{"text":"“函数”: 从“__m128 *”到“const float *”的类型不兼容"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"file:///D:/NitloadIndustry/研究项目/1-Flagship/TH2020/ProjectFile/源代码/StgSharpC/mat4.c"},"region":{"startLine":21,"startColumn":57}}}]} (任务 ID: 33) -22:29:44.299 1>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(21,57): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - Sarif: {"ruleId":"C4133","message":{"text":"“函数”: 从“__m128 *”到“const float *”的类型不兼容"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"file:///D:/NitloadIndustry/研究项目/1-Flagship/TH2020/ProjectFile/源代码/StgSharpC/mat4.c"},"region":{"startLine":22,"startColumn":32}}}]} (任务 ID: 33) -22:29:44.299 1>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(22,32): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - Sarif: {"ruleId":"C4133","message":{"text":"“函数”: 从“__m128 *”到“const float *”的类型不兼容"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"file:///D:/NitloadIndustry/研究项目/1-Flagship/TH2020/ProjectFile/源代码/StgSharpC/mat4.c"},"region":{"startLine":22,"startColumn":57}}}]} (任务 ID: 33) -22:29:44.299 1>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(22,57): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - Sarif: {"ruleId":"C4133","message":{"text":"“函数”: 从“__m128 *”到“const float *”的类型不兼容"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"file:///D:/NitloadIndustry/研究项目/1-Flagship/TH2020/ProjectFile/源代码/StgSharpC/mat4.c"},"region":{"startLine":33,"startColumn":32}}}]} (任务 ID: 33) -22:29:44.299 1>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(33,32): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - Sarif: {"ruleId":"C4133","message":{"text":"“函数”: 从“__m128 *”到“const float *”的类型不兼容"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"file:///D:/NitloadIndustry/研究项目/1-Flagship/TH2020/ProjectFile/源代码/StgSharpC/mat4.c"},"region":{"startLine":33,"startColumn":57}}}]} (任务 ID: 33) -22:29:44.299 1>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(33,57): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - Sarif: {"ruleId":"C4133","message":{"text":"“函数”: 从“__m128 *”到“const float *”的类型不兼容"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"file:///D:/NitloadIndustry/研究项目/1-Flagship/TH2020/ProjectFile/源代码/StgSharpC/mat4.c"},"region":{"startLine":34,"startColumn":32}}}]} (任务 ID: 33) -22:29:44.299 1>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(34,32): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - Sarif: {"ruleId":"C4133","message":{"text":"“函数”: 从“__m128 *”到“const float *”的类型不兼容"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"file:///D:/NitloadIndustry/研究项目/1-Flagship/TH2020/ProjectFile/源代码/StgSharpC/mat4.c"},"region":{"startLine":34,"startColumn":57}}}]} (任务 ID: 33) -22:29:44.299 1>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(34,57): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - Sarif: {"ruleId":"C4133","message":{"text":"“函数”: 从“__m128 *”到“const float *”的类型不兼容"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"file:///D:/NitloadIndustry/研究项目/1-Flagship/TH2020/ProjectFile/源代码/StgSharpC/mat4.c"},"region":{"startLine":35,"startColumn":32}}}]} (任务 ID: 33) -22:29:44.299 1>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(35,32): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - Sarif: {"ruleId":"C4133","message":{"text":"“函数”: 从“__m128 *”到“const float *”的类型不兼容"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"file:///D:/NitloadIndustry/研究项目/1-Flagship/TH2020/ProjectFile/源代码/StgSharpC/mat4.c"},"region":{"startLine":35,"startColumn":57}}}]} (任务 ID: 33) -22:29:44.299 1>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(35,57): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - Sarif: {"ruleId":"C4133","message":{"text":"“函数”: 从“__m128 *”到“const float *”的类型不兼容"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"file:///D:/NitloadIndustry/研究项目/1-Flagship/TH2020/ProjectFile/源代码/StgSharpC/mat4.c"},"region":{"startLine":36,"startColumn":32}}}]} (任务 ID: 33) -22:29:44.299 1>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(36,32): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - Sarif: {"ruleId":"C4133","message":{"text":"“函数”: 从“__m128 *”到“const float *”的类型不兼容"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"file:///D:/NitloadIndustry/研究项目/1-Flagship/TH2020/ProjectFile/源代码/StgSharpC/mat4.c"},"region":{"startLine":36,"startColumn":57}}}]} (任务 ID: 33) -22:29:44.299 1>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(36,57): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - Sarif: {"ruleId":"C4133","message":{"text":"“函数”: 从“__m128 *”到“const float *”的类型不兼容"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"file:///D:/NitloadIndustry/研究项目/1-Flagship/TH2020/ProjectFile/源代码/StgSharpC/mat4.c"},"region":{"startLine":48,"startColumn":18}}}]} (任务 ID: 33) -22:29:44.299 1>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(48,18): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - Sarif: {"ruleId":"C4133","message":{"text":"“函数”: 从“__m128 *”到“const float *”的类型不兼容"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"file:///D:/NitloadIndustry/研究项目/1-Flagship/TH2020/ProjectFile/源代码/StgSharpC/mat4.c"},"region":{"startLine":49,"startColumn":18}}}]} (任务 ID: 33) -22:29:44.299 1>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(49,18): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - Sarif: {"ruleId":"C4133","message":{"text":"“函数”: 从“__m128 *”到“const float *”的类型不兼容"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"file:///D:/NitloadIndustry/研究项目/1-Flagship/TH2020/ProjectFile/源代码/StgSharpC/mat4.c"},"region":{"startLine":50,"startColumn":18}}}]} (任务 ID: 33) -22:29:44.299 1>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(50,18): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - Sarif: {"ruleId":"C4133","message":{"text":"“函数”: 从“__m128 *”到“const float *”的类型不兼容"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"file:///D:/NitloadIndustry/研究项目/1-Flagship/TH2020/ProjectFile/源代码/StgSharpC/mat4.c"},"region":{"startLine":51,"startColumn":18}}}]} (任务 ID: 33) -22:29:44.299 1>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(51,18): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - Sarif: {"ruleId":"C4133","message":{"text":"“函数”: 从“__m128 *”到“const float *”的类型不兼容"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"file:///D:/NitloadIndustry/研究项目/1-Flagship/TH2020/ProjectFile/源代码/StgSharpC/mat4.c"},"region":{"startLine":59,"startColumn":32}}}]} (任务 ID: 33) -22:29:44.299 1>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(59,32): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - stb_image.c (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include/stb_image.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stdio.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\vcruntime.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\sal.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\concurrencysal.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\vadefs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wstdio.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_stdio_config.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stdlib.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_malloc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_search.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stddef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wstdlib.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\limits.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\stdarg.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\string.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_memory.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_memcpy_s.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\errno.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\vcruntime_string.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wstring.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\math.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_math.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\assert.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\emmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\xmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\mmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\malloc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\intrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\intrin0.inl.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\setjmp.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\immintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\wmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\nmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\smmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\tmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\pmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\zmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\ammintrin.h (任务 ID: 33) - StgSharpC.c (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\./include/ssgc_framework.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\windows.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\winapifamily.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\winpackagefamily.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\sdkddkver.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\excpt.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\vcruntime.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\sal.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\concurrencysal.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\vadefs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\stdarg.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\windef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\minwindef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\specstrings.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\specstrings_strict.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\specstrings_undef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\driverspecs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\sdv_driverspecs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winnt.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\ctype.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wctype.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\kernelspecs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\basetsd.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\guiddef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\string.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_memory.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_memcpy_s.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\errno.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\vcruntime_string.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wstring.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack8.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack1.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack1.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\apiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\ktmtypes.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winbase.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\apisetcconv.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\minwinbase.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\apiquery2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\processenv.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\fileapifromapp.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\fileapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\debugapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\utilapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\handleapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\errhandlingapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\fibersapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\namedpipeapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\profileapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\heapapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\ioapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\synchapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\interlockedapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\processthreadsapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\sysinfoapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\memoryapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\enclaveapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\threadpoollegacyapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\threadpoolapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\jobapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\jobapi2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wow64apiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\libloaderapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\securitybaseapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\namespaceapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\systemtopologyapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\processtopologyapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\securityappcontainer.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\realtimeapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\winerror.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\timezoneapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wingdi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack1.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winuser.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\tvout.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winnls.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\datetimeapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\stringapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winnls.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wincon.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wincontypes.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\consoleapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\consoleapi2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\consoleapi3.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winver.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\verrsrc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winreg.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\reason.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winnetwk.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\wnnc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\stralign.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winsvc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\mcx.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\imm.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\ime_cmodes.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\./include/glad_gl.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\ssgc_internal.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\khrplatform.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\stdint.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\./include/glfw3.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stddef.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\./include/StgSharpC.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\glad_wgl.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\immintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\wmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\nmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\smmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\tmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\pmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\emmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\xmmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\mmintrin.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\malloc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_malloc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\zmmintrin.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\stb_image.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stdio.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wstdio.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_stdio_config.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stdlib.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_search.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wstdlib.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\limits.h (任务 ID: 33) - Sarif: {"ruleId":"C4047","message":{"text":"“函数”:“GLchar *”与“char *[512]”的间接级别不同"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"file:///D:/NitloadIndustry/研究项目/1-Flagship/TH2020/ProjectFile/源代码/StgSharpC/StgSharpC.c"},"region":{"startLine":44,"startColumn":65}}}]} (任务 ID: 33) -22:29:44.669 1>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpC.c(44,65): warning C4047: “函数”:“GLchar *”与“char *[512]”的间接级别不同 - Sarif: {"ruleId":"C4024","message":{"text":"“通过指针的函数”: 形参和实参 4 的类型不同"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"file:///D:/NitloadIndustry/研究项目/1-Flagship/TH2020/ProjectFile/源代码/StgSharpC/StgSharpC.c"},"region":{"startLine":44,"startColumn":65}}}]} (任务 ID: 33) -22:29:44.670 1>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpC.c(44,65): warning C4024: “通过指针的函数”: 形参和实参 4 的类型不同 - Sarif: {"ruleId":"C4047","message":{"text":"“函数”:“GLchar *”与“char *[512]”的间接级别不同"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"file:///D:/NitloadIndustry/研究项目/1-Flagship/TH2020/ProjectFile/源代码/StgSharpC/StgSharpC.c"},"region":{"startLine":66,"startColumn":69}}}]} (任务 ID: 33) -22:29:44.671 1>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpC.c(66,69): warning C4047: “函数”:“GLchar *”与“char *[512]”的间接级别不同 - Sarif: {"ruleId":"C4024","message":{"text":"“通过指针的函数”: 形参和实参 4 的类型不同"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"file:///D:/NitloadIndustry/研究项目/1-Flagship/TH2020/ProjectFile/源代码/StgSharpC/StgSharpC.c"},"region":{"startLine":66,"startColumn":69}}}]} (任务 ID: 33) -22:29:44.671 1>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpC.c(66,69): warning C4024: “通过指针的函数”: 形参和实参 4 的类型不同 - Sarif: {"ruleId":"C4047","message":{"text":"“return”:“char *”与“char *(*)[512]”的间接级别不同"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"file:///D:/NitloadIndustry/研究项目/1-Flagship/TH2020/ProjectFile/源代码/StgSharpC/StgSharpC.c"},"region":{"startLine":88,"startColumn":5}}}]} (任务 ID: 33) -22:29:44.671 1>D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpC.c(88,5): warning C4047: “return”:“char *”与“char *(*)[512]”的间接级别不同 - wgl.c (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stdio.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\vcruntime.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\sal.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\concurrencysal.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\vadefs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wstdio.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_stdio_config.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stdlib.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_malloc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_search.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stddef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wstdlib.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\limits.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\string.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_memory.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_memcpy_s.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\errno.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\vcruntime_string.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wstring.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\./include/glad_wgl.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\windows.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\winapifamily.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\winpackagefamily.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\sdkddkver.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\excpt.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\stdarg.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\windef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\minwindef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\specstrings.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\specstrings_strict.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\specstrings_undef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\driverspecs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\sdv_driverspecs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winnt.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\ctype.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_wctype.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\kernelspecs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\basetsd.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\guiddef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack8.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack1.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack1.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\apiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\ktmtypes.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winbase.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\apisetcconv.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\minwinbase.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\apiquery2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\processenv.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\fileapifromapp.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\fileapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\debugapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\utilapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\handleapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\errhandlingapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\fibersapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\namedpipeapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\profileapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\heapapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\ioapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\synchapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\interlockedapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\processthreadsapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\sysinfoapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\memoryapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\enclaveapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\threadpoollegacyapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\threadpoolapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\jobapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\jobapi2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wow64apiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\libloaderapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\securitybaseapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\namespaceapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\systemtopologyapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\processtopologyapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\securityappcontainer.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\realtimeapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\winerror.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\timezoneapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wingdi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack1.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack4.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winuser.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\tvout.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winnls.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\datetimeapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\stringapiset.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winnls.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wincon.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wincontypes.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\consoleapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\consoleapi2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\consoleapi3.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winver.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\verrsrc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winreg.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\reason.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winnetwk.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\wnnc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\cderr.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\dde.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\ddeml.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\dlgs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\lzexpand.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\mmsystem.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\mmsyscom.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack1.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack1.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\mciapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\mmiscapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\mmiscapi2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\playsoundapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\mmeapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\timeapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\joystickapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\nb30.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\rpc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack8.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\rpcdce.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\rpcdcep.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\rpcnsi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\rpcnterr.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\rpcasync.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack8.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\shellapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winperf.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack8.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winsock.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\inaddr.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\wincrypt.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\bcrypt.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\ncrypt.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\dpapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winefs.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winscard.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\wtypes.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\rpcndr.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack8.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\rpcnsip.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\rpcsal.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\wtypesbase.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\guiddef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winioctl.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack1.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack1.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack1.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack1.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack1.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack1.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack1.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\winsmcrd.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winspool.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\prsht.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack8.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\ole2.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack8.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\objbase.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack8.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\combaseapi.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack8.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\unknwnbase.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\objidlbase.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\guiddef.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\cguid.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\coml2api.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\objidl.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\unknwn.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\propidlbase.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\oaidl.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\urlmon.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\oleidl.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\servprov.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\msxml.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\propidl.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\oleauto.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\pshpack8.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\poppack.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\commdlg.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\prsht.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\stralign.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\winsvc.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\mcx.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\imm.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um\ime_cmodes.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\./glad_gl.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\ssgc_internal.h (任务 ID: 33) - 注意: 包含文件: D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\include\khrplatform.h (任务 ID: 33) - 注意: 包含文件: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\stdint.h (任务 ID: 33) - 正在生成代码... (任务 ID: 33) - 已完成执行任务“CL”的操作。 (任务 ID: 33) -22:29:45.492 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ClCompile”的操作。: (目标 ID: 57) + UNICODE (任务 ID: 32) + 任务参数:TranslateIncludes=False (任务 ID: 32) + 任务参数:YieldDuringToolExecution=True (任务 ID: 32) + 任务参数:ErrorReporting=Prompt (任务 ID: 32) + 任务参数:EnableFiberSafeOptimizations=False (任务 ID: 32) + 任务参数:GenerateXMLDocumentationFiles=False (任务 ID: 32) + 任务参数:DeleteOutputBeforeExecute=True (任务 ID: 32) + 任务参数:EnableASAN=False (任务 ID: 32) + 任务参数:IntelJCCErratum=False (任务 ID: 32) + 任务参数:TreatWarningAsError=False (任务 ID: 32) + 任务参数:ForceConformanceInForLoopScope=True (任务 ID: 32) + 任务参数:BasicRuntimeChecks=EnableFastChecks (任务 ID: 32) + 任务参数:LanguageStandard_C=stdc17 (任务 ID: 32) + 任务参数:EnableEnhancedInstructionSet=NotSet (任务 ID: 32) + 任务参数:CallingConvention=Cdecl (任务 ID: 32) + 任务参数:PreprocessToFile=False (任务 ID: 32) + 任务参数:ShowIncludes=True (任务 ID: 32) + 任务参数:IntrinsicFunctions=False (任务 ID: 32) + 任务参数:RuntimeLibrary=MultiThreadedDebugDll (任务 ID: 32) + 任务参数:LanguageStandard=stdcpp20 (任务 ID: 32) + 任务参数:UseFullPaths=True (任务 ID: 32) + 任务参数:AssemblerListingLocation=x64\Debug\ (任务 ID: 32) + 任务参数:TrackFileAccess=True (任务 ID: 32) + 任务参数:GenerateSourceDependencies=False (任务 ID: 32) + 任务参数:ExceptionHandling=Sync (任务 ID: 32) + 任务参数:SuppressStartupBanner=True (任务 ID: 32) + 任务参数:OmitDefaultLibName=False (任务 ID: 32) + 任务参数:DisableLanguageExtensions=False (任务 ID: 32) + 任务参数:ObjectFileName=x64\Debug\ (任务 ID: 32) + 任务参数:PreprocessKeepComments=False (任务 ID: 32) + 任务参数:UndefineAllPreprocessorDefinitions=False (任务 ID: 32) + 任务参数:AssemblerOutput=All (任务 ID: 32) + 任务参数:FavorSizeOrSpeed=Neither (任务 ID: 32) + 任务参数:DiagnosticsFormat=Column (任务 ID: 32) + 读取跟踪日志: (任务 ID: 32) + x64\Debug\StgSharpC.tlog\CL.read.1.tlog (任务 ID: 32) + D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\DEBUGER.C|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\DLLMAIN.C|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\GLSC2.C|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\LINEAR.C|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\MAT2.C|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\MAT3.C|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\MAT4.C|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\STB_IMAGE.C|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\STGSHARPC.C|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\WGL.C 的输出: (任务 ID: 32) + D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\DEBUG\DEBUGER.OBJ (任务 ID: 32) + D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\DEBUG\DLLMAIN.OBJ (任务 ID: 32) + D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\DEBUG\GLSC2.OBJ (任务 ID: 32) + D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\DEBUG\LINEAR.OBJ (任务 ID: 32) + D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\DEBUG\MAT2.OBJ (任务 ID: 32) + D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\DEBUG\MAT3.OBJ (任务 ID: 32) + D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\DEBUG\MAT4.OBJ (任务 ID: 32) + D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\DEBUG\STB_IMAGE.OBJ (任务 ID: 32) + D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\DEBUG\STGSHARPC.OBJ (任务 ID: 32) + D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\DEBUG\WGL.OBJ (任务 ID: 32) + 所有输出均为最新。 (任务 ID: 32) + 已完成执行任务“CL”的操作。 (任务 ID: 32) +22:23:18.358 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ClCompile”的操作。: (目标 ID: 57) 由于条件的计算结果为 false,已跳过目标“RunSelectedFileNativeCodeAnalysis”;('$(RunMsvcAnalysis)'=='true' and '$(SelectedFiles)'!='')的计算结果为('false'=='true' and ''!='')。 由于条件的计算结果为 false,已跳过目标“ManagedIncrementalBuildPostProcessDependencyGraph”;('@(ClCompile)' != '' and '$(EnableManagedIncrementalBuild)' == 'True')的计算结果为('debuger.c;dllmain.c;glsc2.c;...' != '' and 'false' == 'True')。 由于条件的计算结果为 false,已跳过目标“NoAnalysisToolEnabledWarning”;('$(RunCppAnalysis)'=='true' AND '$(EnableMicrosoftCodeAnalysis)'=='false' AND '$(EnableClangTidyCodeAnalysis)'=='false')的计算结果为('false'=='true' AND 'true'=='false' AND 'false'=='false')。 由于条件的计算结果为 false,已跳过目标“RunSelectedFileClangTidy”;('$(RunClangCppAnalysis)'=='true' AND '$(SelectedFiles)'!='')的计算结果为('false'=='true' AND ''!='')。 由于条件的计算结果为 false,已跳过目标“MicrosoftAnalysisIncompatiableWithClangCl”;('$(RunCppAnalysis)'=='true' AND '$(EnableMicrosoftCodeAnalysis)'=='true' AND '$(UseClangCl)'=='true')的计算结果为('false'=='true' AND 'true'=='true' AND ''=='true')。 -22:29:45.492 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“AfterClCompile: (目标 ID: 58)”(目标“_ClCompile”依赖于它): -22:29:45.492 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“AfterClCompile”的操作。: (目标 ID: 58) -22:29:45.492 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_ClCompile: (目标 ID: 59)”(目标“_BuildCompileAction”依赖于它): -22:29:45.492 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_ClCompile”的操作。: (目标 ID: 59) +22:23:18.358 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“AfterClCompile: (目标 ID: 58)”(目标“_ClCompile”依赖于它): +22:23:18.358 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“AfterClCompile”的操作。: (目标 ID: 58) +22:23:18.358 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_ClCompile: (目标 ID: 59)”(目标“_BuildCompileAction”依赖于它): +22:23:18.358 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_ClCompile”的操作。: (目标 ID: 59) 由于条件的计算结果为 false,已跳过目标“_ResGen”;('@(EmbeddedResource)'!='')的计算结果为(''!='')。 -22:29:45.492 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“BeforeResourceCompile: (目标 ID: 60)”(目标“_ResourceCompile”依赖于它): -22:29:45.492 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“BeforeResourceCompile”的操作。: (目标 ID: 60) -22:29:45.492 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“MakeDirsForResourceCompile: (目标 ID: 61)”(目标“_ResourceCompile”依赖于它): +22:23:18.359 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“BeforeResourceCompile: (目标 ID: 60)”(目标“_ResourceCompile”依赖于它): +22:23:18.359 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“BeforeResourceCompile”的操作。: (目标 ID: 60) +22:23:18.359 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“MakeDirsForResourceCompile: (目标 ID: 61)”(目标“_ResourceCompile”依赖于它): 添加的项: RcDirsToMake=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\x64\Debug - 任务“MakeDir” (任务 ID: 34) - 任务参数:Directories=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\x64\Debug (任务 ID: 34) - 已完成执行任务“MakeDir”的操作。 (任务 ID: 34) + 任务“MakeDir” (任务 ID: 33) + 任务参数:Directories=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\x64\Debug (任务 ID: 33) + 已完成执行任务“MakeDir”的操作。 (任务 ID: 33) 删除的项: RcDirsToMake=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\x64\Debug -22:29:45.493 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“MakeDirsForResourceCompile”的操作。: (目标 ID: 61) +22:23:18.359 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“MakeDirsForResourceCompile”的操作。: (目标 ID: 61) 由于条件的计算结果为 false,已跳过目标“ResourceCompile”;('@(ResourceCompile)' != '')的计算结果为('' != '')。 -22:29:45.493 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“AfterResourceCompile: (目标 ID: 62)”(目标“_ResourceCompile”依赖于它): -22:29:45.493 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“AfterResourceCompile”的操作。: (目标 ID: 62) -22:29:45.493 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_ResourceCompile: (目标 ID: 63)”(目标“_BuildCompileAction”依赖于它): -22:29:45.493 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_ResourceCompile”的操作。: (目标 ID: 63) +22:23:18.359 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“AfterResourceCompile: (目标 ID: 62)”(目标“_ResourceCompile”依赖于它): +22:23:18.359 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“AfterResourceCompile”的操作。: (目标 ID: 62) +22:23:18.359 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_ResourceCompile: (目标 ID: 63)”(目标“_BuildCompileAction”依赖于它): +22:23:18.359 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_ResourceCompile”的操作。: (目标 ID: 63) 由于条件的计算结果为 false,已跳过目标“_ImpLib”;('$(ImpLibCompiled)' == 'true')的计算结果为('' == 'true')。 由于条件的计算结果为 false,已跳过目标“_Lib”;('$(LibCompiled)' == 'true')的计算结果为('' == 'true')。 -22:29:45.493 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“AfterBuildCompileEvent: (目标 ID: 64)”(目标“_BuildCompileAction”依赖于它): -22:29:45.493 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“AfterBuildCompileEvent”的操作。: (目标 ID: 64) -22:29:45.493 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_BuildCompileAction: (目标 ID: 65)”(目标“BuildCompile”依赖于它): -22:29:45.493 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_BuildCompileAction”的操作。: (目标 ID: 65) -22:29:45.493 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“BuildCompile: (目标 ID: 66)”(目标“Build”依赖于它): -22:29:45.493 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“BuildCompile”的操作。: (目标 ID: 66) +22:23:18.359 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“AfterBuildCompileEvent: (目标 ID: 64)”(目标“_BuildCompileAction”依赖于它): +22:23:18.359 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“AfterBuildCompileEvent”的操作。: (目标 ID: 64) +22:23:18.359 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_BuildCompileAction: (目标 ID: 65)”(目标“BuildCompile”依赖于它): +22:23:18.359 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_BuildCompileAction”的操作。: (目标 ID: 65) +22:23:18.359 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“BuildCompile: (目标 ID: 66)”(目标“Build”依赖于它): +22:23:18.359 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“BuildCompile”的操作。: (目标 ID: 66) 已跳过目标“PrepareProjectReferences”。以前的生成已成功。 -22:29:45.493 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“BuildLinkTraverse: (目标 ID: 67)”(目标“BuildLink”依赖于它): +22:23:18.359 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“BuildLinkTraverse: (目标 ID: 67)”(目标“BuildLink”依赖于它): 由于 false 条件,已跳过任务“MSBuild”;('$(BuildPassReferences)' == 'true' and '@(ProjectReferenceWithConfiguration)' != '' and '@(_MSBuildProjectReferenceExistent)' != '' and '%(_MSBuildProjectReferenceExistent.BuildReference)' == 'true')计算为('' == 'true' and '' != '' and '' != '' and '' == 'true')。 -22:29:45.493 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“BuildLinkTraverse”的操作。: (目标 ID: 67) +22:23:18.359 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“BuildLinkTraverse”的操作。: (目标 ID: 67) 已跳过目标“PrepareForBuild”。以前的生成已成功。 已跳过目标“ResolveReferences”。以前的生成已成功。 -22:29:45.493 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ComputeLegacyManifestEmbedding: (目标 ID: 68)”(目标“_BuildLinkAction”依赖于它): +22:23:18.359 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ComputeLegacyManifestEmbedding: (目标 ID: 68)”(目标“_BuildLinkAction”依赖于它): 添加的项: Manifest= temp @@ -5505,15 +4254,15 @@ UpdateFileHashes=false VerboseOutput=true _LocalVariable=true -22:29:45.493 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeLegacyManifestEmbedding”的操作。: (目标 ID: 68) -22:29:45.493 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“BeforeLink: (目标 ID: 69)”(目标“_Link”依赖于它): -22:29:45.493 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“BeforeLink”的操作。: (目标 ID: 69) -22:29:45.493 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ComputeRCOutputs: (目标 ID: 70)”(目标“ComputeRCGeneratedLinkInputs”依赖于它): -22:29:45.493 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeRCOutputs”的操作。: (目标 ID: 70) -22:29:45.493 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ComputeRCGeneratedLinkInputs: (目标 ID: 71)”(目标“_Link”依赖于它): -22:29:45.493 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeRCGeneratedLinkInputs”的操作。: (目标 ID: 71) -22:29:45.494 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ComputeManifestGeneratedLinkerInputs: (目标 ID: 72)”(目标“_Link”依赖于它): -22:29:45.494 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeManifestGeneratedLinkerInputs”的操作。: (目标 ID: 72) +22:23:18.359 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeLegacyManifestEmbedding”的操作。: (目标 ID: 68) +22:23:18.359 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“BeforeLink: (目标 ID: 69)”(目标“_Link”依赖于它): +22:23:18.359 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“BeforeLink”的操作。: (目标 ID: 69) +22:23:18.359 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ComputeRCOutputs: (目标 ID: 70)”(目标“ComputeRCGeneratedLinkInputs”依赖于它): +22:23:18.360 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeRCOutputs”的操作。: (目标 ID: 70) +22:23:18.360 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ComputeRCGeneratedLinkInputs: (目标 ID: 71)”(目标“_Link”依赖于它): +22:23:18.360 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeRCGeneratedLinkInputs”的操作。: (目标 ID: 71) +22:23:18.360 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ComputeManifestGeneratedLinkerInputs: (目标 ID: 72)”(目标“_Link”依赖于它): +22:23:18.360 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeManifestGeneratedLinkerInputs”的操作。: (目标 ID: 72) 已跳过目标“ComputeCustomBuildOutput”。以前的生成已成功。 由于条件的计算结果为 false,已跳过目标“GenerateTargetFrameworkMonikerAttribute”;('$(GenerateTargetFrameworkAttribute)' == 'true')的计算结果为('false' == 'true')。 已跳过目标“ComputeMIDLGeneratedCompileInputs”。以前的生成已成功。 @@ -5523,7 +4272,7 @@ 已跳过目标“ComputeStdModulesCompileInputs”。以前的生成已成功。 已跳过目标“FixupCLCompileOptions”。以前的生成已成功。 由于条件的计算结果为 false,已跳过目标“SetModuleDependencies”;('$(DesignTimeBuild)' != 'true' and '$(EnableCppModules)' == 'true')的计算结果为('' != 'true' and 'false' == 'true')。 -22:29:45.494 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ComputeCLOutputs: (目标 ID: 73)”(目标“ComputeCLGeneratedLinkInputs”依赖于它): +22:23:18.360 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ComputeCLOutputs: (目标 ID: 73)”(目标“ComputeCLGeneratedLinkInputs”依赖于它): 添加的项: Obj= x64\Debug\debuger.obj @@ -6366,8 +5115,8 @@ WholeProgramOptimization=false WinRTNoStdLib=false XMLDocumentationFileName=x64\Debug\ -22:29:45.494 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeCLOutputs”的操作。: (目标 ID: 73) -22:29:45.494 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ComputeCLGeneratedLinkInputs: (目标 ID: 74)”(目标“_Link”依赖于它): +22:23:18.360 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeCLOutputs”的操作。: (目标 ID: 73) +22:23:18.360 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ComputeCLGeneratedLinkInputs: (目标 ID: 74)”(目标“_Link”依赖于它): 添加的项: Link= x64\Debug\debuger.obj @@ -6790,8 +5539,8 @@ TypeLibraryResourceID=1 UACExecutionLevel=AsInvoker UACUIAccess=false -22:29:45.494 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeCLGeneratedLinkInputs”的操作。: (目标 ID: 74) -22:29:45.494 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ComputeLinkInputsFromProject: (目标 ID: 75)”(目标“_Link”依赖于它): +22:23:18.360 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeCLGeneratedLinkInputs”的操作。: (目标 ID: 74) +22:23:18.360 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ComputeLinkInputsFromProject: (目标 ID: 75)”(目标“_Link”依赖于它): 添加的项: Link= lib\glfw3.lib @@ -6920,9 +5669,9 @@ TypeLibraryResourceID=1 UACExecutionLevel=AsInvoker UACUIAccess=false -22:29:45.494 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeLinkInputsFromProject”的操作。: (目标 ID: 75) +22:23:18.360 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeLinkInputsFromProject”的操作。: (目标 ID: 75) 由于条件的计算结果为 false,已跳过目标“ComputeReferenceLinkInputs”;(@(ProjectReference) != '')的计算结果为( != '')。 -22:29:45.494 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ComputeManifestInputsTargets: (目标 ID: 76)”(目标“_Link”依赖于它): +22:23:18.360 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ComputeManifestInputsTargets: (目标 ID: 76)”(目标“_Link”依赖于它): 添加的项: Manifest= temp @@ -6953,10 +5702,13 @@ UpdateFileHashes=false VerboseOutput=true _LocalVariable=true -22:29:45.494 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeManifestInputsTargets”的操作。: (目标 ID: 76) +22:23:18.361 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeManifestInputsTargets”的操作。: (目标 ID: 76) 由于条件的计算结果为 false,已跳过目标“ManifestResourceCompile”;('$(EmbedManifestBy)' == 'LINK' and '@(Manifest)' != '')的计算结果为('LINK' == 'LINK' and '' != '')。 -22:29:45.494 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“AssignTargetPaths: (目标 ID: 77)”(目标“PrepareResourceNames”依赖于它): +22:23:18.361 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“AssignTargetPaths: (目标 ID: 77)”(目标“PrepareResourceNames”依赖于它): 正在使用程序集“Microsoft.Build.Tasks.Core, Version=15.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”中的“AssignTargetPath”任务。 + 任务“AssignTargetPath” (任务 ID: 34) + 任务参数:RootFolder=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC (任务 ID: 34) + 已完成执行任务“AssignTargetPath”的操作。 (任务 ID: 34) 任务“AssignTargetPath” (任务 ID: 35) 任务参数:RootFolder=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC (任务 ID: 35) 已完成执行任务“AssignTargetPath”的操作。 (任务 ID: 35) @@ -6966,41 +5718,38 @@ 任务“AssignTargetPath” (任务 ID: 37) 任务参数:RootFolder=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC (任务 ID: 37) 已完成执行任务“AssignTargetPath”的操作。 (任务 ID: 37) - 任务“AssignTargetPath” (任务 ID: 38) - 任务参数:RootFolder=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC (任务 ID: 38) - 已完成执行任务“AssignTargetPath”的操作。 (任务 ID: 38) 由于 false 条件,已跳过任务“AssignTargetPath”;('@(_DeploymentBaseManifestWithTargetPath)'=='' and '%(None.Extension)'=='.manifest')计算为(''=='' and ''=='.manifest')。 -22:29:45.495 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“AssignTargetPaths”的操作。: (目标 ID: 77) +22:23:18.362 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“AssignTargetPaths”的操作。: (目标 ID: 77) 已跳过目标“AssignTargetPaths”。以前的生成已成功。 -22:29:45.495 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“SplitResourcesByCulture: (目标 ID: 78)”(目标“PrepareResourceNames”依赖于它): +22:23:18.362 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“SplitResourcesByCulture: (目标 ID: 78)”(目标“PrepareResourceNames”依赖于它): 由于 false 条件,已跳过任务“Warning”;('@(ResxWithNoCulture)'!='')计算为(''!='')。 由于 false 条件,已跳过任务“Warning”;('@(ResxWithCulture)'!='')计算为(''!='')。 由于 false 条件,已跳过任务“Warning”;('@(NonResxWithCulture)'!='')计算为(''!='')。 由于 false 条件,已跳过任务“Warning”;('@(NonResxWithNoCulture)'!='')计算为(''!='')。 正在使用程序集“Microsoft.Build.Tasks.Core, Version=15.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”中的“AssignCulture”任务。 - 任务“AssignCulture” (任务 ID: 39) - 已完成执行任务“AssignCulture”的操作。 (任务 ID: 39) -22:29:45.496 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“SplitResourcesByCulture”的操作。: (目标 ID: 78) + 任务“AssignCulture” (任务 ID: 38) + 已完成执行任务“AssignCulture”的操作。 (任务 ID: 38) +22:23:18.363 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“SplitResourcesByCulture”的操作。: (目标 ID: 78) 由于条件的计算结果为 false,已跳过目标“CreateManifestResourceNames”;('@(EmbeddedResource)' != '')的计算结果为('' != '')。 -22:29:45.496 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“CreateCustomManifestResourceNames: (目标 ID: 79)”(目标“PrepareResourceNames”依赖于它): -22:29:45.496 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“CreateCustomManifestResourceNames”的操作。: (目标 ID: 79) -22:29:45.496 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“PrepareResourceNames: (目标 ID: 80)”(目标“_Link”依赖于它): -22:29:45.496 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“PrepareResourceNames”的操作。: (目标 ID: 80) -22:29:45.496 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“MakeDirsForLink: (目标 ID: 81)”(目标“_Link”依赖于它): +22:23:18.363 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“CreateCustomManifestResourceNames: (目标 ID: 79)”(目标“PrepareResourceNames”依赖于它): +22:23:18.363 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“CreateCustomManifestResourceNames”的操作。: (目标 ID: 79) +22:23:18.363 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“PrepareResourceNames: (目标 ID: 80)”(目标“_Link”依赖于它): +22:23:18.363 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“PrepareResourceNames”的操作。: (目标 ID: 80) +22:23:18.363 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“MakeDirsForLink: (目标 ID: 81)”(目标“_Link”依赖于它): 设置属性: _LinkImportLibrary=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.lib 添加的项: _LinkImportLibraryFile=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.lib 添加的项: LinkDirsToMake=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码 添加的项: LinkDirsToMake=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\x64\Debug 添加的项: LinkDirsToMake=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码 添加的项: LinkDirsToMake=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\ - 任务“MakeDir” (任务 ID: 40) + 任务“MakeDir” (任务 ID: 39) 任务参数: Directories= D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\x64\Debug D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码 - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\ (任务 ID: 40) - 已完成执行任务“MakeDir”的操作。 (任务 ID: 40) + D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\ (任务 ID: 39) + 已完成执行任务“MakeDir”的操作。 (任务 ID: 39) 删除的项: LinkDirsToMake= D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码 @@ -7008,39 +5757,39 @@ D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\ 删除的项: _LinkImportLibraryFile=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.lib -22:29:45.497 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“MakeDirsForLink”的操作。: (目标 ID: 81) -22:29:45.497 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“DoLinkOutputFilesMatch: (目标 ID: 82)”(目标“_Link”依赖于它): +22:23:18.363 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“MakeDirsForLink”的操作。: (目标 ID: 81) +22:23:18.363 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“DoLinkOutputFilesMatch: (目标 ID: 82)”(目标“_Link”依赖于它): 添加的项: _OutputFileFromLink=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.dll 由于 false 条件,已跳过任务“VCMessage”;('@(_OutputFileFromLink)' == '')计算为('D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.dll' == '')。 由于 false 条件,已跳过任务“VCMessage”;('@(_OutputFileFromLink)' != '' and '%(_OutputFileFromLink.FullPath)' != '$([System.IO.Path]::GetFullPath($(TargetPath)))')计算为('D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.dll' != '' and 'D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.dll' != 'D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.dll')。 由于 false 条件,已跳过任务“VCMessage”;('@(_OutputFileFromLink)' != '' and '%(_OutputFileFromLink.Extension)' != '' and '%(_OutputFileFromLink.Extension)' != '$(TargetExt)')计算为('D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.dll' != '' and '.dll' != '' and '.dll' != '.dll')。 由于 false 条件,已跳过任务“VCMessage”;('@(_OutputFileFromLink)' != '' and '%(_OutputFileFromLink.Filename)' != '' and '%(_OutputFileFromLink.Filename)' != '$(TargetName)')计算为('D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.dll' != '' and 'StgSharpC' != '' and 'StgSharpC' != 'StgSharpC')。 由于 false 条件,已跳过任务“VCMessage”;('%(Link.MinimumRequiredVersion)' != '' and ('%(Link.Subsystem)' == '' or '%(Link.Subsystem)' == 'NotSet'))计算为('' != '' and ('Windows' == '' or 'Windows' == 'NotSet'))。 -22:29:45.497 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“DoLinkOutputFilesMatch”的操作。: (目标 ID: 82) -22:29:45.497 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets”中的目标“PreLinkEvent: (目标 ID: 83)”(目标“_Link”依赖于它): +22:23:18.364 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“DoLinkOutputFilesMatch”的操作。: (目标 ID: 82) +22:23:18.364 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets”中的目标“PreLinkEvent: (目标 ID: 83)”(目标“_Link”依赖于它): 由于 false 条件,已跳过任务“Message”;('%(PreLinkEvent.Message)' != '' and '%(PreLinkEvent.Command)' != '')计算为('' != '' and '' != '')。 由于 false 条件,已跳过任务“Exec”;('%(PreLinkEvent.Command)' != '')计算为('' != '')。 -22:29:45.497 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“PreLinkEvent”的操作。: (目标 ID: 83) -22:29:45.497 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets”中的目标“ComputeLinkSwitches: (目标 ID: 84)”(目标“Link”依赖于它): +22:23:18.364 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“PreLinkEvent”的操作。: (目标 ID: 83) +22:23:18.364 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets”中的目标“ComputeLinkSwitches: (目标 ID: 84)”(目标“Link”依赖于它): 设置属性: Link_MinimalRebuildFromTracking=true 设置属性: LinkToolArchitecture=Native64Bit 设置属性: _GenerateWindowsMetadata= -22:29:45.498 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeLinkSwitches”的操作。: (目标 ID: 84) +22:23:18.364 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeLinkSwitches”的操作。: (目标 ID: 84) 由于条件的计算结果为 false,已跳过目标“SetVConeMKLEnvironment”;('$(UseInteloneMKL)' != '' AND '$(UseInteloneMKL)' != 'No' AND '$(PlatformToolset)' == 'v143' AND '$(oneMKLProductDir)' != '')的计算结果为('No' != '' AND 'No' != 'No' AND 'v143' == 'v143' AND 'C:\Program Files (x86)\Intel\oneAPI\mkl\2022.2.1' != '')。 由于条件的计算结果为 false,已跳过目标“SetVCLinkLiboneMKLEnvironment”;('$(UseInteloneMKL)' != '' AND '$(UseInteloneMKL)' != 'No' AND '$(PlatformToolset)' == 'v143')的计算结果为('No' != '' AND 'No' != 'No' AND 'v143' == 'v143')。 由于条件的计算结果为 false,已跳过目标“SetMPIEnvironment”;('$(UseIntelMPI)' == 'true')的计算结果为('false' == 'true')。 -22:29:45.498 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets”中的目标“Link: (目标 ID: 85)”(目标“_Link”依赖于它): +22:23:18.364 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets”中的目标“Link: (目标 ID: 85)”(目标“_Link”依赖于它): 正在使用程序集“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.Build.CppTasks.Common.dll”中的“Link”任务。 - 任务“Link” (任务 ID: 41) - 任务参数:OutputFile=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.dll (任务 ID: 41) - 任务参数:SwapRunFromCD=False (任务 ID: 41) - 任务参数:GenerateManifest=True (任务 ID: 41) - 任务参数:Profile=False (任务 ID: 41) - 任务参数:NoEntryPoint=False (任务 ID: 41) - 任务参数:DataExecutionPrevention=True (任务 ID: 41) - 任务参数:Driver=NotSet (任务 ID: 41) - 任务参数:ProgramDatabaseFile=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.pdb (任务 ID: 41) - 任务参数:TurnOffAssemblyGeneration=False (任务 ID: 41) + 任务“Link” (任务 ID: 40) + 任务参数:OutputFile=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.dll (任务 ID: 40) + 任务参数:SwapRunFromCD=False (任务 ID: 40) + 任务参数:GenerateManifest=True (任务 ID: 40) + 任务参数:Profile=False (任务 ID: 40) + 任务参数:NoEntryPoint=False (任务 ID: 40) + 任务参数:DataExecutionPrevention=True (任务 ID: 40) + 任务参数:Driver=NotSet (任务 ID: 40) + 任务参数:ProgramDatabaseFile=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.pdb (任务 ID: 40) + 任务参数:TurnOffAssemblyGeneration=False (任务 ID: 40) 任务参数: ExcludedInputPaths= C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include @@ -7082,9 +5831,9 @@ C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\lib\x64 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\atlmfc\lib\x64 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\VS\lib\x64 - C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\ucrt\x64 (任务 ID: 41) - 任务参数:RandomizedBaseAddress=True (任务 ID: 41) - 任务参数:MapExports=False (任务 ID: 41) + C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\ucrt\x64 (任务 ID: 40) + 任务参数:RandomizedBaseAddress=True (任务 ID: 40) + 任务参数:MapExports=False (任务 ID: 40) 任务参数: AdditionalDependencies= OpenGL32.lib @@ -7112,17 +5861,17 @@ oleaut32.lib uuid.lib odbc32.lib - odbccp32.lib (任务 ID: 41) - 任务参数:AllowIsolation=True (任务 ID: 41) - 任务参数:SetChecksum=False (任务 ID: 41) - 任务参数:MinimalRebuildFromTracking=True (任务 ID: 41) - 任务参数:BuildingInIde=True (任务 ID: 41) - 任务参数:ToolArchitecture=Native64Bit (任务 ID: 41) - 任务参数:TrackerLogDirectory=x64\Debug\StgSharpC.tlog\ (任务 ID: 41) - 任务参数:ImportLibrary=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.lib (任务 ID: 41) - 任务参数:GenerateDebugInformation=true (任务 ID: 41) - 任务参数:LinkDLL=True (任务 ID: 41) - 任务参数:TargetMachine=MachineX64 (任务 ID: 41) + odbccp32.lib (任务 ID: 40) + 任务参数:AllowIsolation=True (任务 ID: 40) + 任务参数:SetChecksum=False (任务 ID: 40) + 任务参数:MinimalRebuildFromTracking=True (任务 ID: 40) + 任务参数:BuildingInIde=True (任务 ID: 40) + 任务参数:ToolArchitecture=Native64Bit (任务 ID: 40) + 任务参数:TrackerLogDirectory=x64\Debug\StgSharpC.tlog\ (任务 ID: 40) + 任务参数:ImportLibrary=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.lib (任务 ID: 40) + 任务参数:GenerateDebugInformation=true (任务 ID: 40) + 任务参数:LinkDLL=True (任务 ID: 40) + 任务参数:TargetMachine=MachineX64 (任务 ID: 40) 任务参数: Sources= x64\Debug\debuger.obj @@ -7774,1870 +6523,70 @@ WindowsMetadataKeyContainer= WindowsMetadataLinkDelaySign= WindowsMetadataLinkKeyFile= - WindowsMetadataSignHash= (任务 ID: 41) - 任务参数:SwapRunFromNET=False (任务 ID: 41) - 任务参数:CLRImageType=Default (任务 ID: 41) - 任务参数:LinkIncremental=True (任务 ID: 41) - 任务参数:UACExecutionLevel=AsInvoker (任务 ID: 41) - 任务参数:SubSystem=Windows (任务 ID: 41) - 任务参数:EnableUAC=False (任务 ID: 41) - 任务参数:LinkTimeCodeGenerationObjectFile=x64\Debug\StgSharpC.iobj (任务 ID: 41) - 任务参数:GenerateMapFile=False (任务 ID: 41) - 任务参数:LinkErrorReporting=PromptImmediately (任务 ID: 41) - 任务参数:TrackFileAccess=True (任务 ID: 41) - 任务参数:IncrementalLinkDatabaseFile=x64\Debug\StgSharpC.ilk (任务 ID: 41) - 任务参数:SuppressStartupBanner=True (任务 ID: 41) - 任务参数:ShowProgress=LinkVerbose (任务 ID: 41) - 任务参数:UACUIAccess=False (任务 ID: 41) - 任务参数:AdditionalLibraryDirectories=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\lib (任务 ID: 41) - 任务参数:ManifestEmbed=True (任务 ID: 41) - 任务参数:IgnoreEmbeddedIDL=False (任务 ID: 41) - 任务参数:TypeLibraryResourceID=1 (任务 ID: 41) - 并非所有源文件都是最新的: 缺少命令 TLog“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\x64\Debug\StgSharpC.tlog\link.command.1.tlog”。 (任务 ID: 41) - 传递给工具的环境变量为: (任务 ID: 41) - VS_UNICODE_OUTPUT=2284 (任务 ID: 41) - C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\bin\HostX64\x64\link.exe /ERRORREPORT:PROMPT /OUT:"D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.dll" /VERBOSE /INCREMENTAL /ILK:"x64\Debug\StgSharpC.ilk" /NOLOGO /LIBPATH:"D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\lib" OpenGL32.lib glfw3.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /MANIFEST /MANIFESTUAC:NO /manifest:embed /DEBUG /PDB:"D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.pdb" /SUBSYSTEM:WINDOWS /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:"D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.lib" /MACHINE:X64 /DLL x64\Debug\debuger.obj - x64\Debug\dllmain.obj - x64\Debug\glsc2.obj - x64\Debug\linear.obj - x64\Debug\mat2.obj - x64\Debug\mat3.obj - x64\Debug\mat4.obj - x64\Debug\stb_image.obj - x64\Debug\StgSharpC.obj - x64\Debug\wgl.obj - lib\glfw3.lib - lib\glfw3dll.lib - lib\glfw3_mt.lib (任务 ID: 41) - 跟踪命令: (任务 ID: 41) - C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Tracker.exe /a /d "C:\Program Files (x86)\MSBuild\15.0\FileTracker\FileTracker32.dll" /i "D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\x64\Debug\StgSharpC.tlog" /r "D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\LIB\GLFW3.LIB|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\LIB\GLFW3DLL.LIB|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\LIB\GLFW3_MT.LIB|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\DEBUG\DEBUGER.OBJ|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\DEBUG\DLLMAIN.OBJ|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\DEBUG\GLSC2.OBJ|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\DEBUG\LINEAR.OBJ|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\DEBUG\MAT2.OBJ|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\DEBUG\MAT3.OBJ|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\DEBUG\MAT4.OBJ|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\DEBUG\STB_IMAGE.OBJ|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\DEBUG\STGSHARPC.OBJ|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\DEBUG\WGL.OBJ" /b MSBuildConsole_CancelEvent95f0f40edb9c455db45e751b82275e58 /c "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\bin\HostX64\x64\link.exe" /ERRORREPORT:PROMPT /OUT:"D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.dll" /VERBOSE /INCREMENTAL /ILK:"x64\Debug\StgSharpC.ilk" /NOLOGO /LIBPATH:"D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\lib" OpenGL32.lib glfw3.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /MANIFEST /MANIFESTUAC:NO /manifest:embed /DEBUG /PDB:"D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.pdb" /SUBSYSTEM:WINDOWS /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:"D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.lib" /MACHINE:X64 /DLL x64\Debug\debuger.obj - x64\Debug\dllmain.obj - x64\Debug\glsc2.obj - x64\Debug\linear.obj - x64\Debug\mat2.obj - x64\Debug\mat3.obj - x64\Debug\mat4.obj - x64\Debug\stb_image.obj - x64\Debug\StgSharpC.obj - x64\Debug\wgl.obj - lib\glfw3.lib - lib\glfw3dll.lib - lib\glfw3_mt.lib (任务 ID: 41) - 正在启动传递 1 (任务 ID: 41) - 已处理 /DEFAULTLIB: MSVCRTD (任务 ID: 41) - 已处理 /DEFAULTLIB: OLDNAMES (任务 ID: 41) - 已处理 /DEFAULTLIB: glfw3.lib (任务 ID: 41) - 已处理 /DEFAULTLIB: uuid.lib (任务 ID: 41) - 正在搜索库 (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\OpenGL32.lib: (任务 ID: 41) - 已找到 __imp_wglGetProcAddress (任务 ID: 41) - 已在 wgl.obj 中引用 (任务 ID: 41) - 已加载 OpenGL32.lib(OPENGL32.dll) (任务 ID: 41) - 已找到 __IMPORT_DESCRIPTOR_OPENGL32 (任务 ID: 41) - 已在 OpenGL32.lib(OPENGL32.dll) 中引用 (任务 ID: 41) - 已加载 OpenGL32.lib(OPENGL32.dll) (任务 ID: 41) - 已找到 __NULL_IMPORT_DESCRIPTOR (任务 ID: 41) - 已在 OpenGL32.lib(OPENGL32.dll) 中引用 (任务 ID: 41) - 已加载 OpenGL32.lib(OPENGL32.dll) (任务 ID: 41) - 已找到 OPENGL32_NULL_THUNK_DATA (任务 ID: 41) - 已在 OpenGL32.lib(OPENGL32.dll) 中引用 (任务 ID: 41) - 已加载 OpenGL32.lib(OPENGL32.dll) (任务 ID: 41) - 正在搜索 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\lib\glfw3.lib: (任务 ID: 41) - 已找到 glfwInit (任务 ID: 41) - 已在 StgSharpC.obj 中引用 (任务 ID: 41) - 已加载 glfw3.lib(init.obj) (任务 ID: 41) - 已找到 glfwWindowHint (任务 ID: 41) - 已在 StgSharpC.obj 中引用 (任务 ID: 41) - 已加载 glfw3.lib(window.obj) (任务 ID: 41) - 已找到 glfwMakeContextCurrent (任务 ID: 41) - 已在 StgSharpC.obj 中引用 (任务 ID: 41) - 已在 glfw3.lib(window.obj) 中引用 (任务 ID: 41) - 已加载 glfw3.lib(context.obj) (任务 ID: 41) - 已找到 glfwDestroyCursor (任务 ID: 41) - 已在 glfw3.lib(init.obj) 中引用 (任务 ID: 41) - 已加载 glfw3.lib(input.obj) (任务 ID: 41) -22:29:46.290 1>glfw3.lib(init.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(init.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - 已找到 _glfwPlatformInitTimer (任务 ID: 41) - 已在 glfw3.lib(init.obj) 中引用 (任务 ID: 41) - 已加载 glfw3.lib(win32_time.obj) (任务 ID: 41) -22:29:46.290 1>glfw3.lib(window.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(window.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - 已找到 _glfwPlatformCreateTls (任务 ID: 41) - 已在 glfw3.lib(init.obj) 中引用 (任务 ID: 41) - 已加载 glfw3.lib(win32_thread.obj) (任务 ID: 41) - 已找到 _glfwSelectPlatform (任务 ID: 41) - 已在 glfw3.lib(init.obj) 中引用 (任务 ID: 41) -22:29:46.290 1>glfw3.lib(context.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(context.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - 已加载 glfw3.lib(platform.obj) (任务 ID: 41) - 已找到 _glfwFreeMonitor (任务 ID: 41) - 已在 glfw3.lib(init.obj) 中引用 (任务 ID: 41) -22:29:46.290 1>glfw3.lib(input.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(input.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - 已加载 glfw3.lib(monitor.obj) (任务 ID: 41) -22:29:46.290 1>glfw3.lib(win32_time.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(win32_time.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - 已找到 _glfwTerminateVulkan (任务 ID: 41) - 已在 glfw3.lib(init.obj) 中引用 (任务 ID: 41) - 已加载 glfw3.lib(vulkan.obj) (任务 ID: 41) -22:29:46.290 1>glfw3.lib(win32_thread.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(win32_thread.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - 已找到 _glfwConnectWin32 (任务 ID: 41) - 已在 glfw3.lib(platform.obj) 中引用 (任务 ID: 41) - 已加载 glfw3.lib(win32_init.obj) (任务 ID: 41) -22:29:46.290 1>glfw3.lib(platform.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(platform.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - 已找到 _glfwConnectNull (任务 ID: 41) - 已在 glfw3.lib(platform.obj) 中引用 (任务 ID: 41) - 已加载 glfw3.lib(null_init.obj) (任务 ID: 41) -22:29:46.290 1>glfw3.lib(monitor.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(monitor.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - 已找到 _glfwPlatformLoadModule (任务 ID: 41) - 已在 glfw3.lib(vulkan.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) - 已加载 glfw3.lib(win32_module.obj) (任务 ID: 41) - 已找到 _glfwPollMonitorsWin32 (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) - 已加载 glfw3.lib(win32_monitor.obj) (任务 ID: 41) -22:29:46.290 1>glfw3.lib(vulkan.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(vulkan.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - 已找到 _glfwCreateWindowWin32 (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) - 已加载 glfw3.lib(win32_window.obj) (任务 ID: 41) -22:29:46.290 1>glfw3.lib(win32_init.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(win32_init.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - 已找到 _glfwInitJoysticksWin32 (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) - 已加载 glfw3.lib(win32_joystick.obj) (任务 ID: 41) - 已找到 _glfwTerminateWGL (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) -22:29:46.290 1>glfw3.lib(null_init.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(null_init.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - 已加载 glfw3.lib(wgl_context.obj) (任务 ID: 41) - 已找到 _glfwTerminateEGL (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(null_init.obj) 中引用 (任务 ID: 41) -22:29:46.290 1>glfw3.lib(win32_module.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(win32_module.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - 已加载 glfw3.lib(egl_context.obj) (任务 ID: 41) - 已找到 _glfwTerminateOSMesa (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(null_init.obj) 中引用 (任务 ID: 41) - 已加载 glfw3.lib(osmesa_context.obj) (任务 ID: 41) -22:29:46.290 1>glfw3.lib(win32_monitor.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(win32_monitor.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - 已找到 _glfwPollMonitorsNull (任务 ID: 41) - 已在 glfw3.lib(null_init.obj) 中引用 (任务 ID: 41) -22:29:46.291 1>glfw3.lib(win32_window.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(win32_window.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - 已加载 glfw3.lib(null_monitor.obj) (任务 ID: 41) - 已找到 _glfwCreateWindowNull (任务 ID: 41) - 已在 glfw3.lib(null_init.obj) 中引用 (任务 ID: 41) -22:29:46.291 1>glfw3.lib(win32_joystick.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(win32_joystick.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - 已加载 glfw3.lib(null_window.obj) (任务 ID: 41) -22:29:46.291 1>glfw3.lib(wgl_context.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(wgl_context.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - 已找到 _glfwInitJoysticksNull (任务 ID: 41) - 已在 glfw3.lib(null_init.obj) 中引用 (任务 ID: 41) - 已加载 glfw3.lib(null_joystick.obj) (任务 ID: 41) -22:29:46.291 1>glfw3.lib(egl_context.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(egl_context.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 -22:29:46.291 1>glfw3.lib(osmesa_context.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(osmesa_context.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 -22:29:46.291 1>glfw3.lib(null_monitor.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(null_monitor.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\kernel32.lib: (任务 ID: 41) - 已找到 __imp_QueryPerformanceCounter (任务 ID: 41) - 已在 glfw3.lib(win32_time.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) -22:29:46.292 1>glfw3.lib(null_window.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(null_window.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - 已找到 __imp_QueryPerformanceFrequency (任务 ID: 41) - 已在 glfw3.lib(win32_time.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_InitializeCriticalSection (任务 ID: 41) - 已在 glfw3.lib(win32_thread.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_EnterCriticalSection (任务 ID: 41) - 已在 glfw3.lib(win32_thread.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_LeaveCriticalSection (任务 ID: 41) - 已在 glfw3.lib(win32_thread.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_DeleteCriticalSection (任务 ID: 41) - 已在 glfw3.lib(win32_thread.obj) 中引用 (任务 ID: 41) -22:29:46.292 1>glfw3.lib(null_joystick.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(null_joystick.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_TlsAlloc (任务 ID: 41) - 已在 glfw3.lib(win32_thread.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_TlsGetValue (任务 ID: 41) - 已在 glfw3.lib(win32_thread.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_TlsSetValue (任务 ID: 41) - 已在 glfw3.lib(win32_thread.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_TlsFree (任务 ID: 41) - 已在 glfw3.lib(win32_thread.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_VerSetConditionMask (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_GetLastError (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(wgl_context.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_GetModuleHandleExW (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_FormatMessageW (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_MultiByteToWideChar (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_WideCharToMultiByte (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_monitor.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_joystick.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_FreeLibrary (任务 ID: 41) - 已在 glfw3.lib(win32_module.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_GetProcAddress (任务 ID: 41) - 已在 glfw3.lib(win32_module.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_LoadLibraryA (任务 ID: 41) - 已在 glfw3.lib(win32_module.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_GetModuleHandleW (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_GlobalAlloc (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_GlobalUnlock (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_GlobalLock (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_GlobalFree (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_SetThreadExecutionState (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __IMPORT_DESCRIPTOR_KERNEL32 (任务 ID: 41) - 已在 kernel32.lib(KERNEL32.dll) 中引用 (任务 ID: 41) - 已在 kernel32.lib(KERNEL32.dll) 中引用 (任务 ID: 41) - 已在 kernel32.lib(KERNEL32.dll) 中引用 (任务 ID: 41) - 已在 kernel32.lib(KERNEL32.dll) 中引用 (任务 ID: 41) - 已在 kernel32.lib(KERNEL32.dll) 中引用 (任务 ID: 41) - 已在 kernel32.lib(KERNEL32.dll) 中引用 (任务 ID: 41) - 已在 kernel32.lib(KERNEL32.dll) 中引用 (任务 ID: 41) - 已在 kernel32.lib(KERNEL32.dll) 中引用 (任务 ID: 41) - 已在 kernel32.lib(KERNEL32.dll) 中引用 (任务 ID: 41) - 已在 kernel32.lib(KERNEL32.dll) 中引用 (任务 ID: 41) - 已在 kernel32.lib(KERNEL32.dll) 中引用 (任务 ID: 41) - 已在 kernel32.lib(KERNEL32.dll) 中引用 (任务 ID: 41) - 已在 kernel32.lib(KERNEL32.dll) 中引用 (任务 ID: 41) - 已在 kernel32.lib(KERNEL32.dll) 中引用 (任务 ID: 41) - 已在 kernel32.lib(KERNEL32.dll) 中引用 (任务 ID: 41) - 已在 kernel32.lib(KERNEL32.dll) 中引用 (任务 ID: 41) - 已在 kernel32.lib(KERNEL32.dll) 中引用 (任务 ID: 41) - 已在 kernel32.lib(KERNEL32.dll) 中引用 (任务 ID: 41) - 已在 kernel32.lib(KERNEL32.dll) 中引用 (任务 ID: 41) - 已在 kernel32.lib(KERNEL32.dll) 中引用 (任务 ID: 41) - 已在 kernel32.lib(KERNEL32.dll) 中引用 (任务 ID: 41) - 已在 kernel32.lib(KERNEL32.dll) 中引用 (任务 ID: 41) - 已在 kernel32.lib(KERNEL32.dll) 中引用 (任务 ID: 41) - 已在 kernel32.lib(KERNEL32.dll) 中引用 (任务 ID: 41) - 已在 kernel32.lib(KERNEL32.dll) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 KERNEL32_NULL_THUNK_DATA (任务 ID: 41) - 已在 kernel32.lib(KERNEL32.dll) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\user32.lib: (任务 ID: 41) - 已找到 __imp_TranslateMessage (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_DispatchMessageW (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_PeekMessageW (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_RegisterDeviceNotificationW (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_UnregisterDeviceNotification (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_DefWindowProcW (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_UnregisterClassW (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_RegisterClassExW (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_CreateWindowExW (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_DestroyWindow (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_ShowWindow (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_ToUnicode (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_MapVirtualKeyW (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_GetDC (任务 ID: 41) - 已在 glfw3.lib(win32_monitor.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(wgl_context.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_ReleaseDC (任务 ID: 41) - 已在 glfw3.lib(win32_monitor.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_ChangeDisplaySettingsExW (任务 ID: 41) - 已在 glfw3.lib(win32_monitor.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_EnumDisplaySettingsW (任务 ID: 41) - 已在 glfw3.lib(win32_monitor.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_EnumDisplaySettingsExW (任务 ID: 41) - 已在 glfw3.lib(win32_monitor.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_EnumDisplayDevicesW (任务 ID: 41) - 已在 glfw3.lib(win32_monitor.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_GetMonitorInfoW (任务 ID: 41) - 已在 glfw3.lib(win32_monitor.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_EnumDisplayMonitors (任务 ID: 41) - 已在 glfw3.lib(win32_monitor.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_TrackMouseEvent (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_GetMessageTime (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_SendMessageW (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_PostMessageW (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_WaitMessage (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_GetLayeredWindowAttributes (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_SetLayeredWindowAttributes (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_FlashWindow (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_MoveWindow (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_SetWindowPos (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_GetWindowPlacement (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_SetWindowPlacement (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_IsWindowVisible (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_IsIconic (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_BringWindowToTop (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_IsZoomed (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_OpenClipboard (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_CloseClipboard (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_SetClipboardData (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_GetClipboardData (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_EmptyClipboard (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_SetFocus (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_GetActiveWindow (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_GetKeyState (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_SetCapture (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_ReleaseCapture (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_MsgWaitForMultipleObjects (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_GetSystemMetrics (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_SetForegroundWindow (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_SetPropW (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_GetPropW (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_RemovePropW (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_SetWindowTextW (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_GetClientRect (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_GetWindowRect (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_AdjustWindowRectEx (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_SetCursorPos (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_SetCursor (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_GetCursorPos (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_ClientToScreen (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_ScreenToClient (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_WindowFromPoint (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_ClipCursor (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_SetRect (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_OffsetRect (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_PtInRect (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_GetWindowLongW (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_SetWindowLongW (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_GetClassLongPtrW (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_LoadCursorW (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_DestroyIcon (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_LoadImageW (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_CreateIconIndirect (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_SystemParametersInfoW (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_MonitorFromWindow (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_GetRawInputData (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_RegisterRawInputDevices (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_GetRawInputDeviceInfoA (任务 ID: 41) - 已在 glfw3.lib(win32_joystick.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __imp_GetRawInputDeviceList (任务 ID: 41) - 已在 glfw3.lib(win32_joystick.obj) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 __IMPORT_DESCRIPTOR_USER32 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 已找到 USER32_NULL_THUNK_DATA (任务 ID: 41) - 已在 user32.lib(USER32.dll) 中引用 (任务 ID: 41) - 已加载 user32.lib(USER32.dll) (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\gdi32.lib: (任务 ID: 41) - 已找到 __imp_CreateDCW (任务 ID: 41) - 已在 glfw3.lib(win32_monitor.obj) 中引用 (任务 ID: 41) - 已加载 gdi32.lib(GDI32.dll) (任务 ID: 41) - 已找到 __imp_DeleteDC (任务 ID: 41) - 已在 glfw3.lib(win32_monitor.obj) 中引用 (任务 ID: 41) - 已加载 gdi32.lib(GDI32.dll) (任务 ID: 41) - 已找到 __imp_GetDeviceCaps (任务 ID: 41) - 已在 glfw3.lib(win32_monitor.obj) 中引用 (任务 ID: 41) - 已加载 gdi32.lib(GDI32.dll) (任务 ID: 41) - 已找到 __imp_GetDeviceGammaRamp (任务 ID: 41) - 已在 glfw3.lib(win32_monitor.obj) 中引用 (任务 ID: 41) - 已加载 gdi32.lib(GDI32.dll) (任务 ID: 41) - 已找到 __imp_SetDeviceGammaRamp (任务 ID: 41) - 已在 glfw3.lib(win32_monitor.obj) 中引用 (任务 ID: 41) - 已加载 gdi32.lib(GDI32.dll) (任务 ID: 41) - 已找到 __imp_CreateBitmap (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 gdi32.lib(GDI32.dll) (任务 ID: 41) - 已找到 __imp_CreateRectRgn (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 gdi32.lib(GDI32.dll) (任务 ID: 41) - 已找到 __imp_DeleteObject (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 gdi32.lib(GDI32.dll) (任务 ID: 41) - 已找到 __imp_CreateDIBSection (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 gdi32.lib(GDI32.dll) (任务 ID: 41) - 已找到 __imp_ChoosePixelFormat (任务 ID: 41) - 已在 glfw3.lib(wgl_context.obj) 中引用 (任务 ID: 41) - 已加载 gdi32.lib(GDI32.dll) (任务 ID: 41) - 已找到 __imp_DescribePixelFormat (任务 ID: 41) - 已在 glfw3.lib(wgl_context.obj) 中引用 (任务 ID: 41) - 已加载 gdi32.lib(GDI32.dll) (任务 ID: 41) - 已找到 __imp_SetPixelFormat (任务 ID: 41) - 已在 glfw3.lib(wgl_context.obj) 中引用 (任务 ID: 41) - 已加载 gdi32.lib(GDI32.dll) (任务 ID: 41) - 已找到 __imp_SwapBuffers (任务 ID: 41) - 已在 glfw3.lib(wgl_context.obj) 中引用 (任务 ID: 41) - 已加载 gdi32.lib(GDI32.dll) (任务 ID: 41) - 已找到 __IMPORT_DESCRIPTOR_GDI32 (任务 ID: 41) - 已在 gdi32.lib(GDI32.dll) 中引用 (任务 ID: 41) - 已在 gdi32.lib(GDI32.dll) 中引用 (任务 ID: 41) - 已在 gdi32.lib(GDI32.dll) 中引用 (任务 ID: 41) - 已在 gdi32.lib(GDI32.dll) 中引用 (任务 ID: 41) - 已在 gdi32.lib(GDI32.dll) 中引用 (任务 ID: 41) - 已在 gdi32.lib(GDI32.dll) 中引用 (任务 ID: 41) - 已在 gdi32.lib(GDI32.dll) 中引用 (任务 ID: 41) - 已在 gdi32.lib(GDI32.dll) 中引用 (任务 ID: 41) - 已在 gdi32.lib(GDI32.dll) 中引用 (任务 ID: 41) - 已在 gdi32.lib(GDI32.dll) 中引用 (任务 ID: 41) - 已在 gdi32.lib(GDI32.dll) 中引用 (任务 ID: 41) - 已在 gdi32.lib(GDI32.dll) 中引用 (任务 ID: 41) - 已在 gdi32.lib(GDI32.dll) 中引用 (任务 ID: 41) - 已加载 gdi32.lib(GDI32.dll) (任务 ID: 41) - 已找到 GDI32_NULL_THUNK_DATA (任务 ID: 41) - 已在 gdi32.lib(GDI32.dll) 中引用 (任务 ID: 41) - 已加载 gdi32.lib(GDI32.dll) (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\winspool.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\comdlg32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\advapi32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\shell32.lib: (任务 ID: 41) - 已找到 __imp_DragQueryFileW (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 shell32.lib(SHELL32.dll) (任务 ID: 41) - 已找到 __imp_DragQueryPoint (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 shell32.lib(SHELL32.dll) (任务 ID: 41) - 已找到 __imp_DragFinish (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 shell32.lib(SHELL32.dll) (任务 ID: 41) - 已找到 __imp_DragAcceptFiles (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已加载 shell32.lib(SHELL32.dll) (任务 ID: 41) - 已找到 __IMPORT_DESCRIPTOR_SHELL32 (任务 ID: 41) - 已在 shell32.lib(SHELL32.dll) 中引用 (任务 ID: 41) - 已在 shell32.lib(SHELL32.dll) 中引用 (任务 ID: 41) - 已在 shell32.lib(SHELL32.dll) 中引用 (任务 ID: 41) - 已在 shell32.lib(SHELL32.dll) 中引用 (任务 ID: 41) - 已加载 shell32.lib(SHELL32.dll) (任务 ID: 41) - 已找到 SHELL32_NULL_THUNK_DATA (任务 ID: 41) - 已在 shell32.lib(SHELL32.dll) 中引用 (任务 ID: 41) - 已加载 shell32.lib(SHELL32.dll) (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\ole32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\oleaut32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\uuid.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\odbc32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\odbccp32.lib: (任务 ID: 41) - 正在搜索 lib\glfw3dll.lib: (任务 ID: 41) - 正在搜索 lib\glfw3_mt.lib: (任务 ID: 41) - 正在搜索 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\lib\x64\MSVCRTD.lib: (任务 ID: 41) - 已找到 _RTC_InitBase (任务 ID: 41) - 已在 glfw3.lib(null_window.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(null_joystick.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(wgl_context.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(egl_context.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(osmesa_context.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(null_monitor.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_module.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_monitor.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_joystick.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(monitor.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(vulkan.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(null_init.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(input.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_time.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_thread.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(platform.obj) 中引用 (任务 ID: 41) - 已在 wgl.obj 中引用 (任务 ID: 41) - 已在 glfw3.lib(init.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(window.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(context.obj) 中引用 (任务 ID: 41) - 已在 mat3.obj 中引用 (任务 ID: 41) - 已在 mat4.obj 中引用 (任务 ID: 41) - 已在 stb_image.obj 中引用 (任务 ID: 41) - 已在 StgSharpC.obj 中引用 (任务 ID: 41) - 已在 dllmain.obj 中引用 (任务 ID: 41) - 已在 glsc2.obj 中引用 (任务 ID: 41) - 已在 linear.obj 中引用 (任务 ID: 41) - 已在 mat2.obj 中引用 (任务 ID: 41) - 已加载 MSVCRTD.lib(init.obj) (任务 ID: 41) - 已找到 __CheckForDebuggerJustMyCode (任务 ID: 41) - 已在 wgl.obj 中引用 (任务 ID: 41) - 已在 mat3.obj 中引用 (任务 ID: 41) - 已在 mat4.obj 中引用 (任务 ID: 41) - 已在 stb_image.obj 中引用 (任务 ID: 41) - 已在 StgSharpC.obj 中引用 (任务 ID: 41) - 已在 dllmain.obj 中引用 (任务 ID: 41) - 已在 glsc2.obj 中引用 (任务 ID: 41) - 已在 linear.obj 中引用 (任务 ID: 41) - 已在 mat2.obj 中引用 (任务 ID: 41) - 已加载 MSVCRTD.lib(debugger_jmc.obj) (任务 ID: 41) - 已找到 _RTC_CheckStackVars (任务 ID: 41) - 已在 glfw3.lib(null_monitor.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(null_window.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_joystick.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(wgl_context.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(egl_context.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(osmesa_context.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(null_init.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_monitor.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(input.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_time.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(monitor.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(vulkan.obj) 中引用 (任务 ID: 41) - 已在 StgSharpC.obj 中引用 (任务 ID: 41) - 已在 glfw3.lib(init.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(window.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(context.obj) 中引用 (任务 ID: 41) - 已在 glsc2.obj 中引用 (任务 ID: 41) - 已在 mat3.obj 中引用 (任务 ID: 41) - 已在 mat4.obj 中引用 (任务 ID: 41) - 已在 stb_image.obj 中引用 (任务 ID: 41) - 已加载 MSVCRTD.lib(stack.obj) (任务 ID: 41) - 已找到 __GSHandlerCheck (任务 ID: 41) - 已在 glfw3.lib(egl_context.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(osmesa_context.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(null_monitor.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(null_window.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_monitor.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_joystick.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(wgl_context.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(window.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(context.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(input.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) - 已在 glsc2.obj 中引用 (任务 ID: 41) - 已在 stb_image.obj 中引用 (任务 ID: 41) - 已在 StgSharpC.obj 中引用 (任务 ID: 41) - 已在 glfw3.lib(init.obj) 中引用 (任务 ID: 41) - 已加载 MSVCRTD.lib(gshandler.obj) (任务 ID: 41) - 已找到 __security_check_cookie (任务 ID: 41) - 已在 MSVCRTD.lib(gshandler.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(egl_context.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(osmesa_context.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(null_monitor.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(null_window.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_monitor.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_joystick.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(wgl_context.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(window.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(context.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(input.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) - 已在 glsc2.obj 中引用 (任务 ID: 41) - 已在 stb_image.obj 中引用 (任务 ID: 41) - 已在 StgSharpC.obj 中引用 (任务 ID: 41) - 已在 glfw3.lib(init.obj) 中引用 (任务 ID: 41) - 已加载 MSVCRTD.lib(amdsecgs.obj) (任务 ID: 41) - 已找到 __security_cookie (任务 ID: 41) - 已在 MSVCRTD.lib(amdsecgs.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(egl_context.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(osmesa_context.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(null_monitor.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(null_window.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_monitor.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_joystick.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(wgl_context.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(window.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(context.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(input.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) - 已在 glsc2.obj 中引用 (任务 ID: 41) - 已在 stb_image.obj 中引用 (任务 ID: 41) - 已在 StgSharpC.obj 中引用 (任务 ID: 41) - 已在 glfw3.lib(init.obj) 中引用 (任务 ID: 41) - 已加载 MSVCRTD.lib(gs_cookie.obj) (任务 ID: 41) - 已找到 _fltused (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_joystick.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(null_monitor.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(null_window.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(window.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(input.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(monitor.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_monitor.obj) 中引用 (任务 ID: 41) - 已在 mat3.obj 中引用 (任务 ID: 41) - 已在 mat4.obj 中引用 (任务 ID: 41) - 已在 stb_image.obj 中引用 (任务 ID: 41) - 已在 glfw3.lib(init.obj) 中引用 (任务 ID: 41) - 已加载 MSVCRTD.lib(fltused.obj) (任务 ID: 41) - 已找到 __chkstk (任务 ID: 41) - 已在 stb_image.obj 中引用 (任务 ID: 41) - 已加载 MSVCRTD.lib(chkstk.obj) (任务 ID: 41) - 已找到 _tls_index (任务 ID: 41) - 已在 stb_image.obj 中引用 (任务 ID: 41) - 已加载 MSVCRTD.lib(tlssup.obj) (任务 ID: 41) - 已找到 _DllMainCRTStartup (任务 ID: 41) - 已加载 MSVCRTD.lib(dll_dllmain.obj) (任务 ID: 41) - 已找到 __report_rangecheckfailure (任务 ID: 41) - 已在 glfw3.lib(init.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(input.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_joystick.obj) 中引用 (任务 ID: 41) - 已加载 MSVCRTD.lib(gs_report.obj) (任务 ID: 41) - 已找到 _RTC_SetErrorFuncW (任务 ID: 41) - 已在 MSVCRTD.lib(init.obj) 中引用 (任务 ID: 41) - 已加载 MSVCRTD.lib(userapi.obj) (任务 ID: 41) - 已找到 "void __cdecl _RTC_StackFailure(void *,char const *)" (?_RTC_StackFailure@@YAXPEAXPEBD@Z) (任务 ID: 41) - 已在 MSVCRTD.lib(stack.obj) 中引用 (任务 ID: 41) - 已加载 MSVCRTD.lib(error.obj) (任务 ID: 41) - 已找到 __security_init_cookie (任务 ID: 41) - 已在 MSVCRTD.lib(dll_dllmain.obj) 中引用 (任务 ID: 41) - 已加载 MSVCRTD.lib(gs_support.obj) (任务 ID: 41) - 已找到 "void __cdecl __scrt_initialize_type_info(void)" (?__scrt_initialize_type_info@@YAXXZ) (任务 ID: 41) - 已在 MSVCRTD.lib(dll_dllmain.obj) 中引用 (任务 ID: 41) - 已加载 MSVCRTD.lib(tncleanup.obj) (任务 ID: 41) - 已找到 __scrt_initialize_default_local_stdio_options (任务 ID: 41) - 已在 MSVCRTD.lib(dll_dllmain.obj) 中引用 (任务 ID: 41) - 已加载 MSVCRTD.lib(default_local_stdio_options.obj) (任务 ID: 41) - 已找到 __scrt_is_nonwritable_in_current_image (任务 ID: 41) - 已在 MSVCRTD.lib(dll_dllmain.obj) 中引用 (任务 ID: 41) - 已加载 MSVCRTD.lib(utility.obj) (任务 ID: 41) - 已找到 __scrt_get_dyn_tls_init_callback (任务 ID: 41) - 已在 MSVCRTD.lib(dll_dllmain.obj) 中引用 (任务 ID: 41) - 已加载 MSVCRTD.lib(dyn_tls_init.obj) (任务 ID: 41) - 已找到 __scrt_fastfail (任务 ID: 41) - 已在 MSVCRTD.lib(dll_dllmain.obj) 中引用 (任务 ID: 41) - 已在 MSVCRTD.lib(utility.obj) 中引用 (任务 ID: 41) - 已加载 MSVCRTD.lib(utility_desktop.obj) (任务 ID: 41) - 已找到 _RTC_Initialize (任务 ID: 41) - 已在 MSVCRTD.lib(dll_dllmain.obj) 中引用 (任务 ID: 41) - 已加载 MSVCRTD.lib(initsect.obj) (任务 ID: 41) - 已找到 __xi_a (任务 ID: 41) - 已在 MSVCRTD.lib(dll_dllmain.obj) 中引用 (任务 ID: 41) - 已加载 MSVCRTD.lib(initializers.obj) (任务 ID: 41) - 已处理 /DEFAULTLIB: kernel32.lib (任务 ID: 41) - 已处理 /DISALLOWLIB: msvcrt.lib (任务 ID: 41) - 已处理 /DISALLOWLIB: libcmt.lib (任务 ID: 41) - 已处理 /DISALLOWLIB: libcmtd.lib (任务 ID: 41) - 已处理 /DISALLOWLIB: vcruntime.lib (任务 ID: 41) - 已处理 /DEFAULTLIB: vcruntimed.lib (任务 ID: 41) - 已处理 /DISALLOWLIB: libvcruntime.lib (任务 ID: 41) - 已处理 /DISALLOWLIB: libvcruntimed.lib (任务 ID: 41) - 已处理 /DISALLOWLIB: ucrt.lib (任务 ID: 41) - 已处理 /DEFAULTLIB: ucrtd.lib (任务 ID: 41) - 已处理 /DISALLOWLIB: libucrt.lib (任务 ID: 41) - 已处理 /DISALLOWLIB: libucrtd.lib (任务 ID: 41) - 已找到 __guard_dispatch_icall_fptr (任务 ID: 41) - 已在 MSVCRTD.lib(dll_dllmain.obj) 中引用 (任务 ID: 41) - 已在 MSVCRTD.lib(error.obj) 中引用 (任务 ID: 41) - 已在 MSVCRTD.lib(utility.obj) 中引用 (任务 ID: 41) - 已在 MSVCRTD.lib(initsect.obj) 中引用 (任务 ID: 41) - 已加载 MSVCRTD.lib(guard_support.obj) (任务 ID: 41) - 已找到 "int __cdecl _RTC_GetSrcLine(unsigned char *,wchar_t *,unsigned long,int *,wchar_t *,unsigned long)" (?_RTC_GetSrcLine@@YAHPEAEPEA_WKPEAH1K@Z) (任务 ID: 41) - 已在 MSVCRTD.lib(error.obj) 中引用 (任务 ID: 41) - 已加载 MSVCRTD.lib(pdblkup.obj) (任务 ID: 41) - 已找到 __isa_available_init (任务 ID: 41) - 已在 MSVCRTD.lib(utility.obj) 中引用 (任务 ID: 41) - 已加载 MSVCRTD.lib(cpu_disp.obj) (任务 ID: 41) - 已找到 _get_startup_argv_mode (任务 ID: 41) - 已在 MSVCRTD.lib(utility.obj) 中引用 (任务 ID: 41) - 已加载 MSVCRTD.lib(argv_mode.obj) (任务 ID: 41) - 已找到 __scrt_is_ucrt_dll_in_use (任务 ID: 41) - 已在 MSVCRTD.lib(utility.obj) 中引用 (任务 ID: 41) - 已加载 MSVCRTD.lib(ucrt_detection.obj) (任务 ID: 41) - 已找到 _guard_dispatch_icall_nop (任务 ID: 41) - 已在 MSVCRTD.lib(guard_support.obj) 中引用 (任务 ID: 41) - 已加载 MSVCRTD.lib(guard_dispatch.obj) (任务 ID: 41) - 已找到 _guard_xfg_dispatch_icall_nop (任务 ID: 41) - 已在 MSVCRTD.lib(guard_support.obj) 中引用 (任务 ID: 41) - 已加载 MSVCRTD.lib(guard_xfg_dispatch.obj) (任务 ID: 41) - 正在搜索 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\lib\x64\OLDNAMES.lib: (任务 ID: 41) - 正在搜索 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\lib\x64\vcruntimed.lib: (任务 ID: 41) - 已找到 strstr (任务 ID: 41) - 已在 glsc2.obj 中引用 (任务 ID: 41) - 已在 wgl.obj 中引用 (任务 ID: 41) - 已在 glfw3.lib(context.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_joystick.obj) 中引用 (任务 ID: 41) - 已加载 vcruntimed.lib(VCRUNTIME140D.dll) (任务 ID: 41) - 已找到 memcpy (任务 ID: 41) - 已在 stb_image.obj 中引用 (任务 ID: 41) - 已在 glfw3.lib(input.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_monitor.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(null_monitor.obj) 中引用 (任务 ID: 41) - 已加载 vcruntimed.lib(VCRUNTIME140D.dll) (任务 ID: 41) - 已找到 memset (任务 ID: 41) - 已在 glfw3.lib(win32_monitor.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_joystick.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(wgl_context.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_thread.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(monitor.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_init.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(null_init.obj) 中引用 (任务 ID: 41) - 已在 stb_image.obj 中引用 (任务 ID: 41) - 已在 glfw3.lib(init.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(window.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(input.obj) 中引用 (任务 ID: 41) - 已加载 vcruntimed.lib(VCRUNTIME140D.dll) (任务 ID: 41) - 已找到 memmove (任务 ID: 41) - 已在 glfw3.lib(monitor.obj) 中引用 (任务 ID: 41) - 已加载 vcruntimed.lib(VCRUNTIME140D.dll) (任务 ID: 41) - 已找到 memcmp (任务 ID: 41) - 已在 glfw3.lib(win32_joystick.obj) 中引用 (任务 ID: 41) - 已加载 vcruntimed.lib(VCRUNTIME140D.dll) (任务 ID: 41) - 已找到 __C_specific_handler (任务 ID: 41) - 已在 MSVCRTD.lib(dll_dllmain.obj) 中引用 (任务 ID: 41) - 已在 MSVCRTD.lib(utility.obj) 中引用 (任务 ID: 41) - 已加载 vcruntimed.lib(VCRUNTIME140D.dll) (任务 ID: 41) - 已找到 __C_specific_handler_noexcept (任务 ID: 41) - 已在 MSVCRTD.lib(error.obj) 中引用 (任务 ID: 41) - 已加载 vcruntimed.lib(VCRUNTIME140D.dll) (任务 ID: 41) - 已找到 __std_type_info_destroy_list (任务 ID: 41) - 已在 MSVCRTD.lib(tncleanup.obj) 中引用 (任务 ID: 41) - 已加载 vcruntimed.lib(VCRUNTIME140D.dll) (任务 ID: 41) - 已找到 __current_exception (任务 ID: 41) - 已在 MSVCRTD.lib(utility_desktop.obj) 中引用 (任务 ID: 41) - 已加载 vcruntimed.lib(VCRUNTIME140D.dll) (任务 ID: 41) - 已找到 __current_exception_context (任务 ID: 41) - 已在 MSVCRTD.lib(utility_desktop.obj) 中引用 (任务 ID: 41) - 已加载 vcruntimed.lib(VCRUNTIME140D.dll) (任务 ID: 41) - 已找到 __vcrt_GetModuleFileNameW (任务 ID: 41) - 已在 MSVCRTD.lib(pdblkup.obj) 中引用 (任务 ID: 41) - 已加载 vcruntimed.lib(VCRUNTIME140D.dll) (任务 ID: 41) - 已找到 __vcrt_GetModuleHandleW (任务 ID: 41) - 已在 MSVCRTD.lib(pdblkup.obj) 中引用 (任务 ID: 41) - 已加载 vcruntimed.lib(VCRUNTIME140D.dll) (任务 ID: 41) - 已找到 __vcrt_LoadLibraryExW (任务 ID: 41) - 已在 MSVCRTD.lib(pdblkup.obj) 中引用 (任务 ID: 41) - 已加载 vcruntimed.lib(VCRUNTIME140D.dll) (任务 ID: 41) - 已找到 __IMPORT_DESCRIPTOR_VCRUNTIME140D (任务 ID: 41) - 已在 vcruntimed.lib(VCRUNTIME140D.dll) 中引用 (任务 ID: 41) - 已在 vcruntimed.lib(VCRUNTIME140D.dll) 中引用 (任务 ID: 41) - 已在 vcruntimed.lib(VCRUNTIME140D.dll) 中引用 (任务 ID: 41) - 已在 vcruntimed.lib(VCRUNTIME140D.dll) 中引用 (任务 ID: 41) - 已在 vcruntimed.lib(VCRUNTIME140D.dll) 中引用 (任务 ID: 41) - 已在 vcruntimed.lib(VCRUNTIME140D.dll) 中引用 (任务 ID: 41) - 已在 vcruntimed.lib(VCRUNTIME140D.dll) 中引用 (任务 ID: 41) - 已在 vcruntimed.lib(VCRUNTIME140D.dll) 中引用 (任务 ID: 41) - 已在 vcruntimed.lib(VCRUNTIME140D.dll) 中引用 (任务 ID: 41) - 已在 vcruntimed.lib(VCRUNTIME140D.dll) 中引用 (任务 ID: 41) - 已在 vcruntimed.lib(VCRUNTIME140D.dll) 中引用 (任务 ID: 41) - 已在 vcruntimed.lib(VCRUNTIME140D.dll) 中引用 (任务 ID: 41) - 已在 vcruntimed.lib(VCRUNTIME140D.dll) 中引用 (任务 ID: 41) - 已加载 vcruntimed.lib(VCRUNTIME140D.dll) (任务 ID: 41) - 已找到 VCRUNTIME140D_NULL_THUNK_DATA (任务 ID: 41) - 已在 vcruntimed.lib(VCRUNTIME140D.dll) 中引用 (任务 ID: 41) - 已加载 vcruntimed.lib(VCRUNTIME140D.dll) (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\ucrt\x64\ucrtd.lib: (任务 ID: 41) - 已找到 __imp__aligned_malloc (任务 ID: 41) - 已在 dllmain.obj 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __imp___stdio_common_vsscanf (任务 ID: 41) - 已在 glsc2.obj 中引用 (任务 ID: 41) - 已在 glfw3.lib(context.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __imp_free (任务 ID: 41) - 已在 glsc2.obj 中引用 (任务 ID: 41) - 已在 stb_image.obj 中引用 (任务 ID: 41) - 已在 glfw3.lib(init.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(null_init.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 strcmp (任务 ID: 41) - 已在 glfw3.lib(vulkan.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_joystick.obj) 中引用 (任务 ID: 41) - 已在 glsc2.obj 中引用 (任务 ID: 41) - 已在 stb_image.obj 中引用 (任务 ID: 41) - 已在 glfw3.lib(context.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(input.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 strlen (任务 ID: 41) - 已在 glfw3.lib(input.obj) 中引用 (任务 ID: 41) - 已在 glsc2.obj 中引用 (任务 ID: 41) - 已在 wgl.obj 中引用 (任务 ID: 41) - 已在 glfw3.lib(init.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(context.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __imp_strncmp (任务 ID: 41) - 已在 glfw3.lib(input.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(egl_context.obj) 中引用 (任务 ID: 41) - 已在 glsc2.obj 中引用 (任务 ID: 41) - 已在 stb_image.obj 中引用 (任务 ID: 41) - 已在 glfw3.lib(init.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(context.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __imp__aligned_free (任务 ID: 41) - 已在 mat2.obj 中引用 (任务 ID: 41) - 已在 mat4.obj 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __imp_fopen_s (任务 ID: 41) - 已在 stb_image.obj 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __imp_fclose (任务 ID: 41) - 已在 stb_image.obj 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __imp_feof (任务 ID: 41) - 已在 stb_image.obj 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __imp_ferror (任务 ID: 41) - 已在 stb_image.obj 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __imp_fgetc (任务 ID: 41) - 已在 stb_image.obj 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __imp_fread (任务 ID: 41) - 已在 stb_image.obj 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __imp_fseek (任务 ID: 41) - 已在 stb_image.obj 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __imp_ftell (任务 ID: 41) - 已在 stb_image.obj 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __imp_ungetc (任务 ID: 41) - 已在 stb_image.obj 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __imp_malloc (任务 ID: 41) - 已在 stb_image.obj 中引用 (任务 ID: 41) - 已在 glfw3.lib(init.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __imp_realloc (任务 ID: 41) - 已在 stb_image.obj 中引用 (任务 ID: 41) - 已在 glfw3.lib(init.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 abs (任务 ID: 41) - 已在 stb_image.obj 中引用 (任务 ID: 41) - 已在 glfw3.lib(monitor.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_window.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(wgl_context.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 _lrotl (任务 ID: 41) - 已在 stb_image.obj 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __imp_strtol (任务 ID: 41) - 已在 stb_image.obj 中引用 (任务 ID: 41) - 已在 glfw3.lib(init.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 pow (任务 ID: 41) - 已在 stb_image.obj 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __imp_ldexp (任务 ID: 41) - 已在 stb_image.obj 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __imp__wassert (任务 ID: 41) - 已在 glfw3.lib(egl_context.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(osmesa_context.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_thread.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(monitor.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(vulkan.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(wgl_context.obj) 中引用 (任务 ID: 41) - 已在 stb_image.obj 中引用 (任务 ID: 41) - 已在 glfw3.lib(window.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(context.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(input.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __imp___acrt_iob_func (任务 ID: 41) - 已在 StgSharpC.obj 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __imp___stdio_common_vfprintf (任务 ID: 41) - 已在 StgSharpC.obj 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 strcpy (任务 ID: 41) - 已在 glfw3.lib(init.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __imp_strtok (任务 ID: 41) - 已在 glfw3.lib(init.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __imp___stdio_common_vsprintf (任务 ID: 41) - 已在 glfw3.lib(init.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_joystick.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __imp_strncpy (任务 ID: 41) - 已在 glfw3.lib(window.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(input.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(monitor.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_joystick.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __imp_strcspn (任务 ID: 41) - 已在 glfw3.lib(input.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __imp_strspn (任务 ID: 41) - 已在 glfw3.lib(input.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __imp_strtoul (任务 ID: 41) - 已在 glfw3.lib(input.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __imp_qsort (任务 ID: 41) - 已在 glfw3.lib(monitor.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(win32_joystick.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __imp_powf (任务 ID: 41) - 已在 glfw3.lib(monitor.obj) 中引用 (任务 ID: 41) - 已在 glfw3.lib(null_monitor.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __imp_wcscmp (任务 ID: 41) - 已在 glfw3.lib(win32_monitor.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __imp_wcscpy (任务 ID: 41) - 已在 glfw3.lib(win32_monitor.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 _CrtDbgReport (任务 ID: 41) - 已在 MSVCRTD.lib(init.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 _CrtDbgReportW (任务 ID: 41) - 已在 MSVCRTD.lib(init.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 _initterm (任务 ID: 41) - 已在 MSVCRTD.lib(dll_dllmain.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 _initterm_e (任务 ID: 41) - 已在 MSVCRTD.lib(dll_dllmain.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 strcpy_s (任务 ID: 41) - 已在 MSVCRTD.lib(error.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 strcat_s (任务 ID: 41) - 已在 MSVCRTD.lib(error.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __stdio_common_vsprintf_s (任务 ID: 41) - 已在 MSVCRTD.lib(error.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 _seh_filter_dll (任务 ID: 41) - 已在 MSVCRTD.lib(utility.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 _configure_narrow_argv (任务 ID: 41) - 已在 MSVCRTD.lib(utility.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 _initialize_narrow_environment (任务 ID: 41) - 已在 MSVCRTD.lib(utility.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 _initialize_onexit_table (任务 ID: 41) - 已在 MSVCRTD.lib(utility.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 _register_onexit_function (任务 ID: 41) - 已在 MSVCRTD.lib(utility.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 _execute_onexit_table (任务 ID: 41) - 已在 MSVCRTD.lib(utility.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 _crt_atexit (任务 ID: 41) - 已在 MSVCRTD.lib(utility.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 _crt_at_quick_exit (任务 ID: 41) - 已在 MSVCRTD.lib(utility.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 _cexit (任务 ID: 41) - 已在 MSVCRTD.lib(utility.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 terminate (任务 ID: 41) - 已在 MSVCRTD.lib(utility_desktop.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 _wmakepath_s (任务 ID: 41) - 已在 MSVCRTD.lib(pdblkup.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 _wsplitpath_s (任务 ID: 41) - 已在 MSVCRTD.lib(pdblkup.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 wcscpy_s (任务 ID: 41) - 已在 MSVCRTD.lib(pdblkup.obj) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 __IMPORT_DESCRIPTOR_ucrtbased (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已找到 ucrtbased_NULL_THUNK_DATA (任务 ID: 41) - 已在 ucrtd.lib(ucrtbased.dll) 中引用 (任务 ID: 41) - 已加载 ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\OpenGL32.lib: (任务 ID: 41) - 正在搜索 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\lib\glfw3.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\kernel32.lib: (任务 ID: 41) - 已找到 __imp_GetCurrentThreadId (任务 ID: 41) - 已在 MSVCRTD.lib(debugger_jmc.obj) 中引用 (任务 ID: 41) - 已在 MSVCRTD.lib(gs_support.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_RtlCaptureContext (任务 ID: 41) - 已在 MSVCRTD.lib(gs_report.obj) 中引用 (任务 ID: 41) - 已在 MSVCRTD.lib(utility_desktop.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_RtlLookupFunctionEntry (任务 ID: 41) - 已在 MSVCRTD.lib(gs_report.obj) 中引用 (任务 ID: 41) - 已在 MSVCRTD.lib(utility_desktop.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_RtlVirtualUnwind (任务 ID: 41) - 已在 MSVCRTD.lib(gs_report.obj) 中引用 (任务 ID: 41) - 已在 MSVCRTD.lib(utility_desktop.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_UnhandledExceptionFilter (任务 ID: 41) - 已在 MSVCRTD.lib(gs_report.obj) 中引用 (任务 ID: 41) - 已在 MSVCRTD.lib(utility_desktop.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_SetUnhandledExceptionFilter (任务 ID: 41) - 已在 MSVCRTD.lib(gs_report.obj) 中引用 (任务 ID: 41) - 已在 MSVCRTD.lib(utility_desktop.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_GetCurrentProcess (任务 ID: 41) - 已在 MSVCRTD.lib(gs_report.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_TerminateProcess (任务 ID: 41) - 已在 MSVCRTD.lib(gs_report.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_IsProcessorFeaturePresent (任务 ID: 41) - 已在 MSVCRTD.lib(gs_report.obj) 中引用 (任务 ID: 41) - 已在 MSVCRTD.lib(utility_desktop.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_IsDebuggerPresent (任务 ID: 41) - 已在 MSVCRTD.lib(error.obj) 中引用 (任务 ID: 41) - 已在 MSVCRTD.lib(utility_desktop.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_RaiseException (任务 ID: 41) - 已在 MSVCRTD.lib(error.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_GetCurrentProcessId (任务 ID: 41) - 已在 MSVCRTD.lib(gs_support.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_GetSystemTimeAsFileTime (任务 ID: 41) - 已在 MSVCRTD.lib(gs_support.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_InitializeSListHead (任务 ID: 41) - 已在 MSVCRTD.lib(tncleanup.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_GetStartupInfoW (任务 ID: 41) - 已在 MSVCRTD.lib(utility_desktop.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_HeapAlloc (任务 ID: 41) - 已在 MSVCRTD.lib(pdblkup.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_HeapFree (任务 ID: 41) - 已在 MSVCRTD.lib(pdblkup.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_GetProcessHeap (任务 ID: 41) - 已在 MSVCRTD.lib(pdblkup.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 已找到 __imp_VirtualQuery (任务 ID: 41) - 已在 MSVCRTD.lib(pdblkup.obj) 中引用 (任务 ID: 41) - 已加载 kernel32.lib(KERNEL32.dll) (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\user32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\gdi32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\winspool.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\comdlg32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\advapi32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\shell32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\ole32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\oleaut32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\uuid.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\odbc32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\odbccp32.lib: (任务 ID: 41) - 正在搜索 lib\glfw3dll.lib: (任务 ID: 41) - 正在搜索 lib\glfw3_mt.lib: (任务 ID: 41) - 正在搜索 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\lib\x64\MSVCRTD.lib: (任务 ID: 41) - 正在搜索 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\lib\x64\OLDNAMES.lib: (任务 ID: 41) - 正在搜索 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\lib\x64\vcruntimed.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\ucrt\x64\ucrtd.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\OpenGL32.lib: (任务 ID: 41) - 正在搜索 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\lib\glfw3.lib: (任务 ID: 41) - 已完成库搜索 (任务 ID: 41) - 正在生成 .exp 文件 (任务 ID: 41) - 正在创建库 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.lib 和对象 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.exp (任务 ID: 41) - 已完成 .exp 文件生成 (任务 ID: 41) - 正在搜索库 (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\OpenGL32.lib: (任务 ID: 41) - 正在搜索 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\lib\glfw3.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\kernel32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\user32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\gdi32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\winspool.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\comdlg32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\advapi32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\shell32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\ole32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\oleaut32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\uuid.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\odbc32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\odbccp32.lib: (任务 ID: 41) - 正在搜索 lib\glfw3dll.lib: (任务 ID: 41) - 正在搜索 lib\glfw3_mt.lib: (任务 ID: 41) - 正在搜索 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\lib\x64\MSVCRTD.lib: (任务 ID: 41) - 正在搜索 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\lib\x64\OLDNAMES.lib: (任务 ID: 41) - 正在搜索 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\lib\x64\vcruntimed.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\ucrt\x64\ucrtd.lib: (任务 ID: 41) - 已完成库搜索 (任务 ID: 41) - 正在搜索库 (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\OpenGL32.lib: (任务 ID: 41) - 正在搜索 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\lib\glfw3.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\kernel32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\user32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\gdi32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\winspool.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\comdlg32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\advapi32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\shell32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\ole32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\oleaut32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\uuid.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\odbc32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\odbccp32.lib: (任务 ID: 41) - 正在搜索 lib\glfw3dll.lib: (任务 ID: 41) - 正在搜索 lib\glfw3_mt.lib: (任务 ID: 41) - 正在搜索 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\lib\x64\MSVCRTD.lib: (任务 ID: 41) - 已找到 __scrt_stub_for_acrt_initialize (任务 ID: 41) - 已加载 MSVCRTD.lib(ucrt_stubs.obj) (任务 ID: 41) - 正在搜索 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\lib\x64\OLDNAMES.lib: (任务 ID: 41) - 正在搜索 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\lib\x64\vcruntimed.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\ucrt\x64\ucrtd.lib: (任务 ID: 41) - 已完成库搜索 (任务 ID: 41) - 正在搜索库 (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\OpenGL32.lib: (任务 ID: 41) - 正在搜索 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\lib\glfw3.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\kernel32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\user32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\gdi32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\winspool.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\comdlg32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\advapi32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\shell32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\ole32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\oleaut32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\uuid.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\odbc32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\odbccp32.lib: (任务 ID: 41) - 正在搜索 lib\glfw3dll.lib: (任务 ID: 41) - 正在搜索 lib\glfw3_mt.lib: (任务 ID: 41) - 正在搜索 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\lib\x64\MSVCRTD.lib: (任务 ID: 41) - 正在搜索 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\lib\x64\OLDNAMES.lib: (任务 ID: 41) - 正在搜索 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\lib\x64\vcruntimed.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\ucrt\x64\ucrtd.lib: (任务 ID: 41) - 已完成库搜索 (任务 ID: 41) - 正在搜索库 (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\OpenGL32.lib: (任务 ID: 41) - 正在搜索 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\lib\glfw3.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\kernel32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\user32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\gdi32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\winspool.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\comdlg32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\advapi32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\shell32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\ole32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\oleaut32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\uuid.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\odbc32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\odbccp32.lib: (任务 ID: 41) - 正在搜索 lib\glfw3dll.lib: (任务 ID: 41) - 正在搜索 lib\glfw3_mt.lib: (任务 ID: 41) - 正在搜索 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\lib\x64\MSVCRTD.lib: (任务 ID: 41) - 正在搜索 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\lib\x64\OLDNAMES.lib: (任务 ID: 41) - 正在搜索 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\lib\x64\vcruntimed.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\ucrt\x64\ucrtd.lib: (任务 ID: 41) - 已完成库搜索 (任务 ID: 41) - 已完成传递 1 (任务 ID: 41) - 正在搜索库 (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\OpenGL32.lib: (任务 ID: 41) - 正在搜索 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\lib\glfw3.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\kernel32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\user32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\gdi32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\winspool.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\comdlg32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\advapi32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\shell32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\ole32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\oleaut32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\uuid.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\odbc32.lib: (任务 ID: 41) - 正在搜索 C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\odbccp32.lib: (任务 ID: 41) - 正在搜索 lib\glfw3dll.lib: (任务 ID: 41) - 正在搜索 lib\glfw3_mt.lib: (任务 ID: 41) - 正在搜索 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\lib\x64\MSVCRTD.lib: (任务 ID: 41) - 已找到 _load_config_used (任务 ID: 41) - 已加载 MSVCRTD.lib(loadcfg.obj) (任务 ID: 41) - 正在搜索 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\lib\x64\OLDNAMES.lib: (任务 ID: 41) - 正在搜索 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\lib\x64\vcruntimed.lib: (任务 ID: 41) - 已找到 __guard_memcpy_fptr (任务 ID: 41) - 已在 MSVCRTD.lib(loadcfg.obj) 中引用 (任务 ID: 41) - 已加载 vcruntimed.lib(softmemtag.obj) (任务 ID: 41) - 已完成库搜索 (任务 ID: 41) - 正在调用 rc.exe: (任务 ID: 41) - /v (任务 ID: 41) - /x (任务 ID: 41) - /fo (任务 ID: 41) - "C:\Users\Nitlo\AppData\Local\Temp\lnk{DA157CF3-3C98-48F0-80B0-014AB77B0952}.tmp" (任务 ID: 41) - "C:\Users\Nitlo\AppData\Local\Temp\lnk{AB150299-0614-4A2D-ACFA-4AD5C33D99B2}.tmp" (任务 ID: 41) - Microsoft (R) Windows (R) Resource Compiler Version 10.0.10011.16384 (任务 ID: 41) - (任务 ID: 41) - Copyright (C) Microsoft Corporation. All rights reserved. (任务 ID: 41) - (任务 ID: 41) - (任务 ID: 41) - Using codepage 936 as default (任务 ID: 41) - Creating C:\Users\Nitlo\AppData\Local\Temp\lnk{DA157CF3-3C98-48F0-80B0-014AB77B0952}.tmp (任务 ID: 41) - (任务 ID: 41) - (任务 ID: 41) - C:\Users\Nitlo\AppData\Local\Temp\lnk{AB150299-0614-4A2D-ACFA-4AD5C33D99B2}.tmp. (任务 ID: 41) - Writing 24:2, lang:0x409, size 145 (任务 ID: 41) - 正在调用 cvtres.exe: (任务 ID: 41) - /machine:amd64 (任务 ID: 41) - /verbose (任务 ID: 41) - /out:"C:\Users\Nitlo\AppData\Local\Temp\lnk{88FFFFE4-F1A6-4BD6-8A81-B654ED713CA7}.tmp" (任务 ID: 41) - /readonly (任务 ID: 41) - "C:\Users\Nitlo\AppData\Local\Temp\lnk{DA157CF3-3C98-48F0-80B0-014AB77B0952}.tmp" (任务 ID: 41) - Microsoft(R) Windows Resource To Object Converter 版本 14.38.33130.0 (任务 ID: 41) - 版权所有 (C) Microsoft Corporation。保留所有权利。 (任务 ID: 41) - (任务 ID: 41) - 正在添加资源。类型: MANIFEST,名称: 2,语言: 0x0409,标记: 0x30,大小: 145 (任务 ID: 41) - 未使用的库: (任务 ID: 41) - C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\winspool.lib (任务 ID: 41) - C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\comdlg32.lib (任务 ID: 41) - C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\advapi32.lib (任务 ID: 41) - C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\ole32.lib (任务 ID: 41) - C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\oleaut32.lib (任务 ID: 41) - C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\uuid.lib (任务 ID: 41) - C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\odbc32.lib (任务 ID: 41) - C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x64\odbccp32.lib (任务 ID: 41) - lib\glfw3dll.lib (任务 ID: 41) - lib\glfw3_mt.lib (任务 ID: 41) - C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\lib\x64\OLDNAMES.lib (任务 ID: 41) - 正在启动传递 2 (任务 ID: 41) - * linker generated manifest res * (任务 ID: 41) - StgSharpC.exp (任务 ID: 41) - wgl.obj (任务 ID: 41) - StgSharpC.obj (任务 ID: 41) - stb_image.obj (任务 ID: 41) - mat4.obj (任务 ID: 41) - mat3.obj (任务 ID: 41) - mat2.obj (任务 ID: 41) - linear.obj (任务 ID: 41) - glsc2.obj (任务 ID: 41) - dllmain.obj (任务 ID: 41) - debuger.obj (任务 ID: 41) - OpenGL32.lib(OPENGL32.dll) (任务 ID: 41) - OpenGL32.lib(OPENGL32.dll) (任务 ID: 41) - OpenGL32.lib(OPENGL32.dll) (任务 ID: 41) - OpenGL32.lib(OPENGL32.dll) (任务 ID: 41) - glfw3.lib(context.obj) (任务 ID: 41) - glfw3.lib(init.obj) (任务 ID: 41) - glfw3.lib(input.obj) (任务 ID: 41) - glfw3.lib(monitor.obj) (任务 ID: 41) - glfw3.lib(platform.obj) (任务 ID: 41) - glfw3.lib(vulkan.obj) (任务 ID: 41) - glfw3.lib(window.obj) (任务 ID: 41) - glfw3.lib(egl_context.obj) (任务 ID: 41) - glfw3.lib(osmesa_context.obj) (任务 ID: 41) - glfw3.lib(null_init.obj) (任务 ID: 41) - glfw3.lib(null_monitor.obj) (任务 ID: 41) - glfw3.lib(null_window.obj) (任务 ID: 41) - glfw3.lib(null_joystick.obj) (任务 ID: 41) - glfw3.lib(win32_module.obj) (任务 ID: 41) - glfw3.lib(win32_time.obj) (任务 ID: 41) - glfw3.lib(win32_thread.obj) (任务 ID: 41) - glfw3.lib(win32_init.obj) (任务 ID: 41) - glfw3.lib(win32_joystick.obj) (任务 ID: 41) - glfw3.lib(win32_monitor.obj) (任务 ID: 41) - glfw3.lib(win32_window.obj) (任务 ID: 41) - glfw3.lib(wgl_context.obj) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - kernel32.lib(KERNEL32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - user32.lib(USER32.dll) (任务 ID: 41) - gdi32.lib(GDI32.dll) (任务 ID: 41) - gdi32.lib(GDI32.dll) (任务 ID: 41) - gdi32.lib(GDI32.dll) (任务 ID: 41) - gdi32.lib(GDI32.dll) (任务 ID: 41) - gdi32.lib(GDI32.dll) (任务 ID: 41) - gdi32.lib(GDI32.dll) (任务 ID: 41) - gdi32.lib(GDI32.dll) (任务 ID: 41) - gdi32.lib(GDI32.dll) (任务 ID: 41) - gdi32.lib(GDI32.dll) (任务 ID: 41) - gdi32.lib(GDI32.dll) (任务 ID: 41) - gdi32.lib(GDI32.dll) (任务 ID: 41) - gdi32.lib(GDI32.dll) (任务 ID: 41) - gdi32.lib(GDI32.dll) (任务 ID: 41) - gdi32.lib(GDI32.dll) (任务 ID: 41) - gdi32.lib(GDI32.dll) (任务 ID: 41) - shell32.lib(SHELL32.dll) (任务 ID: 41) - shell32.lib(SHELL32.dll) (任务 ID: 41) - shell32.lib(SHELL32.dll) (任务 ID: 41) - shell32.lib(SHELL32.dll) (任务 ID: 41) - shell32.lib(SHELL32.dll) (任务 ID: 41) - shell32.lib(SHELL32.dll) (任务 ID: 41) - MSVCRTD.lib(amdsecgs.obj) (任务 ID: 41) - MSVCRTD.lib(chkstk.obj) (任务 ID: 41) - MSVCRTD.lib(guard_dispatch.obj) (任务 ID: 41) - MSVCRTD.lib(guard_xfg_dispatch.obj) (任务 ID: 41) - MSVCRTD.lib(gs_cookie.obj) (任务 ID: 41) - MSVCRTD.lib(gs_report.obj) (任务 ID: 41) - MSVCRTD.lib(gs_support.obj) (任务 ID: 41) - MSVCRTD.lib(debugger_jmc.obj) (任务 ID: 41) - MSVCRTD.lib(guard_support.obj) (任务 ID: 41) - MSVCRTD.lib(loadcfg.obj) (任务 ID: 41) - MSVCRTD.lib(dyn_tls_init.obj) (任务 ID: 41) - MSVCRTD.lib(ucrt_detection.obj) (任务 ID: 41) - MSVCRTD.lib(cpu_disp.obj) (任务 ID: 41) - MSVCRTD.lib(argv_mode.obj) (任务 ID: 41) - MSVCRTD.lib(default_local_stdio_options.obj) (任务 ID: 41) - MSVCRTD.lib(fltused.obj) (任务 ID: 41) - MSVCRTD.lib(tncleanup.obj) (任务 ID: 41) - MSVCRTD.lib(dll_dllmain.obj) (任务 ID: 41) - MSVCRTD.lib(tlssup.obj) (任务 ID: 41) - MSVCRTD.lib(initializers.obj) (任务 ID: 41) - MSVCRTD.lib(utility.obj) (任务 ID: 41) - MSVCRTD.lib(ucrt_stubs.obj) (任务 ID: 41) - MSVCRTD.lib(utility_desktop.obj) (任务 ID: 41) - MSVCRTD.lib(error.obj) (任务 ID: 41) - MSVCRTD.lib(init.obj) (任务 ID: 41) - MSVCRTD.lib(initsect.obj) (任务 ID: 41) - MSVCRTD.lib(pdblkup.obj) (任务 ID: 41) - MSVCRTD.lib(stack.obj) (任务 ID: 41) - MSVCRTD.lib(userapi.obj) (任务 ID: 41) - MSVCRTD.lib(gshandler.obj) (任务 ID: 41) - vcruntimed.lib(VCRUNTIME140D.dll) (任务 ID: 41) - vcruntimed.lib(VCRUNTIME140D.dll) (任务 ID: 41) - vcruntimed.lib(VCRUNTIME140D.dll) (任务 ID: 41) - vcruntimed.lib(VCRUNTIME140D.dll) (任务 ID: 41) - vcruntimed.lib(VCRUNTIME140D.dll) (任务 ID: 41) - vcruntimed.lib(VCRUNTIME140D.dll) (任务 ID: 41) - vcruntimed.lib(VCRUNTIME140D.dll) (任务 ID: 41) - vcruntimed.lib(VCRUNTIME140D.dll) (任务 ID: 41) - vcruntimed.lib(VCRUNTIME140D.dll) (任务 ID: 41) - vcruntimed.lib(VCRUNTIME140D.dll) (任务 ID: 41) - vcruntimed.lib(VCRUNTIME140D.dll) (任务 ID: 41) - vcruntimed.lib(VCRUNTIME140D.dll) (任务 ID: 41) - vcruntimed.lib(VCRUNTIME140D.dll) (任务 ID: 41) - vcruntimed.lib(VCRUNTIME140D.dll) (任务 ID: 41) - vcruntimed.lib(VCRUNTIME140D.dll) (任务 ID: 41) - vcruntimed.lib(softmemtag.obj) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - ucrtd.lib(ucrtbased.dll) (任务 ID: 41) - 已完成传递 2 (任务 ID: 41) - 输出属性: LinkSkippedExecution=False (任务 ID: 41) - 已完成执行任务“Link”的操作。 (任务 ID: 41) - 任务“Message” (任务 ID: 42) - 任务参数:Importance=High (任务 ID: 42) - 任务参数:Text=StgSharpGraphic.vcxproj -> D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.dll (任务 ID: 42) - StgSharpGraphic.vcxproj -> D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.dll (任务 ID: 42) - 已完成执行任务“Message”的操作。 (任务 ID: 42) + WindowsMetadataSignHash= (任务 ID: 40) + 任务参数:SwapRunFromNET=False (任务 ID: 40) + 任务参数:CLRImageType=Default (任务 ID: 40) + 任务参数:LinkIncremental=True (任务 ID: 40) + 任务参数:UACExecutionLevel=AsInvoker (任务 ID: 40) + 任务参数:SubSystem=Windows (任务 ID: 40) + 任务参数:EnableUAC=False (任务 ID: 40) + 任务参数:LinkTimeCodeGenerationObjectFile=x64\Debug\StgSharpC.iobj (任务 ID: 40) + 任务参数:GenerateMapFile=False (任务 ID: 40) + 任务参数:LinkErrorReporting=PromptImmediately (任务 ID: 40) + 任务参数:TrackFileAccess=True (任务 ID: 40) + 任务参数:IncrementalLinkDatabaseFile=x64\Debug\StgSharpC.ilk (任务 ID: 40) + 任务参数:SuppressStartupBanner=True (任务 ID: 40) + 任务参数:ShowProgress=LinkVerbose (任务 ID: 40) + 任务参数:UACUIAccess=False (任务 ID: 40) + 任务参数:AdditionalLibraryDirectories=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\lib (任务 ID: 40) + 任务参数:ManifestEmbed=True (任务 ID: 40) + 任务参数:IgnoreEmbeddedIDL=False (任务 ID: 40) + 任务参数:TypeLibraryResourceID=1 (任务 ID: 40) + 写入跟踪日志: (任务 ID: 40) + x64\Debug\StgSharpC.tlog\link.write.1.tlog (任务 ID: 40) + x64\Debug\StgSharpC.tlog\link.write.2u.tlog (任务 ID: 40) + 读取跟踪日志: (任务 ID: 40) + x64\Debug\StgSharpC.tlog\link.read.1.tlog (任务 ID: 40) + D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\LIB\GLFW3.LIB|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\LIB\GLFW3DLL.LIB|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\LIB\GLFW3_MT.LIB|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\DEBUG\DEBUGER.OBJ|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\DEBUG\DLLMAIN.OBJ|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\DEBUG\GLSC2.OBJ|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\DEBUG\LINEAR.OBJ|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\DEBUG\MAT2.OBJ|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\DEBUG\MAT3.OBJ|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\DEBUG\MAT4.OBJ|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\DEBUG\STB_IMAGE.OBJ|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\DEBUG\STGSHARPC.OBJ|D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\DEBUG\WGL.OBJ 的输出: (任务 ID: 40) + D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC\X64\DEBUG\STGSHARPC.ILK (任务 ID: 40) + D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC.DLL (任务 ID: 40) + D:\NITLOADINDUSTRY\研究项目\1-FLAGSHIP\TH2020\PROJECTFILE\源代码\STGSHARPC.PDB (任务 ID: 40) + 所有输出均为最新。 (任务 ID: 40) + 输出属性: LinkSkippedExecution=True (任务 ID: 40) + 已完成执行任务“Link”的操作。 (任务 ID: 40) + 任务“Message” (任务 ID: 41) + 任务参数:Importance=High (任务 ID: 41) + 任务参数:Text=StgSharpGraphic.vcxproj -> D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.dll (任务 ID: 41) + StgSharpGraphic.vcxproj -> D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.dll (任务 ID: 41) + 已完成执行任务“Message”的操作。 (任务 ID: 41) 由于 false 条件,已跳过任务“VCMessage”;(('$(EmbedManifestBy)' != 'LINK' or '$(LegacyManifestEmbedding)' != 'true' or '$(LinkSkippedExecution)' == 'true') and - %(Link.GenerateDebugInformation) == 'DebugFastLink' and %(Link.ProgramDataBaseFileName) != '')计算为(('LINK' != 'LINK' or '' != 'true' or 'False' == 'true') and + %(Link.GenerateDebugInformation) == 'DebugFastLink' and %(Link.ProgramDataBaseFileName) != '')计算为(('LINK' != 'LINK' or '' != 'true' or 'True' == 'true') and true == 'DebugFastLink' and != '')。 由于 false 条件,已跳过任务“VCMessage”;(('$(EmbedManifestBy)' != 'LINK' or '$(LegacyManifestEmbedding)' != 'true' or '$(LinkSkippedExecution)' == 'true') and - %(Link.GenerateDebugInformation) == 'true' and %(Link.ProgramDataBaseFileName) != '')计算为(('LINK' != 'LINK' or '' != 'true' or 'False' == 'true') and + %(Link.GenerateDebugInformation) == 'true' and %(Link.ProgramDataBaseFileName) != '')计算为(('LINK' != 'LINK' or '' != 'true' or 'True' == 'true') and true == 'true' and != '')。 -22:29:46.763 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“Link”的操作。: (目标 ID: 85) +22:23:18.401 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“Link”的操作。: (目标 ID: 85) 由于条件的计算结果为 false,已跳过目标“MetaGenInputsOutputs”;('$(EnableManagedIncrementalBuild)' == 'True')的计算结果为('false' == 'True')。 由于条件的计算结果为 false,已跳过目标“ComputeMetaGenInputs”;('$(CLRSupport)'!='' and '$(CLRSupport)'!='false' and '$(CLRSupport)'!='NetCore')的计算结果为('false'!='' and 'false'!='false' and 'false'!='NetCore')。 由于条件的计算结果为 false,已跳过目标“MetaGen”;('@(MetaGen)' != '')的计算结果为('' != '')。 -22:29:46.763 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ComputeLinkImportLibraryOutputsForClean: (目标 ID: 86)”(目标“_Link”依赖于它): - 添加的项: _LinkImportLibrary=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.lib - 添加的项: _LinkSecondaryOutput=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.lib - 添加的项: _LinkSecondaryOutput=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.exp - 任务“WriteLinesToFile” (任务 ID: 43) - 任务参数: - Lines= - ^D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.lib - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.exp (任务 ID: 43) - 任务参数:Encoding=Unicode (任务 ID: 43) - 任务参数:File=x64\Debug\StgSharpC.tlog\link.write.2u.tlog (任务 ID: 43) - 已完成执行任务“WriteLinesToFile”的操作。 (任务 ID: 43) - 删除的项: _LinkImportLibrary=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.lib - 删除的项: - _LinkSecondaryOutput= - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.lib - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.exp -22:29:46.765 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeLinkImportLibraryOutputsForClean”的操作。: (目标 ID: 86) -22:29:46.765 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“AfterLink: (目标 ID: 87)”(目标“_Link”依赖于它): -22:29:46.765 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“AfterLink”的操作。: (目标 ID: 87) -22:29:46.765 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_Link: (目标 ID: 88)”(目标“_BuildLinkAction”依赖于它): -22:29:46.765 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_Link”的操作。: (目标 ID: 88) -22:29:46.765 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_ALink: (目标 ID: 89)”(目标“_BuildLinkAction”依赖于它): -22:29:46.765 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_ALink”的操作。: (目标 ID: 89) + 由于条件的计算结果为 false,已跳过目标“ComputeLinkImportLibraryOutputsForClean”;('$(LinkSkippedExecution)' != 'true')的计算结果为('True' != 'true')。 +22:23:18.401 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“AfterLink: (目标 ID: 86)”(目标“_Link”依赖于它): +22:23:18.401 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“AfterLink”的操作。: (目标 ID: 86) +22:23:18.401 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_Link: (目标 ID: 87)”(目标“_BuildLinkAction”依赖于它): +22:23:18.401 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_Link”的操作。: (目标 ID: 87) +22:23:18.401 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_ALink: (目标 ID: 88)”(目标“_BuildLinkAction”依赖于它): +22:23:18.401 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_ALink”的操作。: (目标 ID: 88) 已跳过目标“ComputeLegacyManifestEmbedding”。以前的生成已成功。 -22:29:46.765 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_Manifest: (目标 ID: 90)”(目标“_BuildLinkAction”依赖于它): +22:23:18.401 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_Manifest: (目标 ID: 89)”(目标“_BuildLinkAction”依赖于它): 由于 false 条件,已跳过任务“CallTarget”;('$(LegacyManifestEmbedding)' == 'true')计算为('' == 'true')。 -22:29:46.765 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_Manifest”的操作。: (目标 ID: 90) -22:29:46.765 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets”中的目标“RegisterOutput: (目标 ID: 91)”(目标“_BuildLinkAction”依赖于它): - 由于 false 条件,已跳过任务“Exec”;('$(ConfigurationType)'=='DynamicLibrary' and '%(Link.RegisterOutput)'=='true' and '%(Link.PerUserRedirection)'!='true')计算为('DynamicLibrary'=='DynamicLibrary' and 'false'=='true' and 'false'!='true')。 - 由于 false 条件,已跳过任务“Exec”;('$(ConfigurationType)'=='DynamicLibrary' and '%(Link.RegisterOutput)'=='true' and '%(Link.PerUserRedirection)'=='true')计算为('DynamicLibrary'=='DynamicLibrary' and 'false'=='true' and 'false'=='true')。 - 由于 false 条件,已跳过任务“Exec”;('$(ConfigurationType)'=='Application' and '%(Link.RegisterOutput)'=='true' and '%(Link.PerUserRedirection)'!='true')计算为('DynamicLibrary'=='Application' and 'false'=='true' and 'false'!='true')。 - 由于 false 条件,已跳过任务“Exec”;('$(ConfigurationType)'=='Application' and '%(Link.RegisterOutput)'=='true' and '%(Link.PerUserRedirection)'=='true')计算为('DynamicLibrary'=='Application' and 'false'=='true' and 'false'=='true')。 - 由于 false 条件,已跳过任务“VCMessage”;('$(_RegisterOutputExitCode)' != '' and '$(_RegisterOutputExitCode)' != '0')计算为('' != '' and '' != '0')。 -22:29:46.765 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“RegisterOutput”的操作。: (目标 ID: 91) +22:23:18.401 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_Manifest”的操作。: (目标 ID: 89) + 由于条件的计算结果为 false,已跳过目标“RegisterOutput”;('$(LinkSkippedExecution)' != 'true' and (('$(Platform)' == 'x64' and ('$(PROCESSOR_ARCHITECTURE)' == 'AMD64' or '$(PROCESSOR_ARCHITEW6432)' == 'AMD64')) or '$(Platform)' == 'Win32'))的计算结果为('True' != 'true' and (('x64' == 'x64' and ('AMD64' == 'AMD64' or '' == 'AMD64')) or 'x64' == 'Win32'))。 已跳过目标“PrepareForBuild”。以前的生成已成功。 已跳过目标“ResolveReferences”。以前的生成已成功。 -22:29:46.765 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ResolvedXDCMake: (目标 ID: 92)”(目标“_XdcMake”依赖于它): +22:23:18.401 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ResolvedXDCMake: (目标 ID: 90)”(目标“_XdcMake”依赖于它): 由于 false 条件,已跳过任务“MSBuild”;('%(_MSBuildProjectReferenceExistent.Extension)' == '.vcxproj' and '@(ProjectReferenceWithConfiguration)' != '' and '@(_MSBuildProjectReferenceExistent)' != '' and '$(_ClCompileGenerateXMLDocumentationFiles)' == 'true')计算为('' == '.vcxproj' and '' != '' and '' != '' and '' == 'true')。 -22:29:46.765 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ResolvedXDCMake”的操作。: (目标 ID: 92) -22:29:46.765 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ComputeCLCompileGeneratedXDCFiles: (目标 ID: 93)”(目标“_XdcMake”依赖于它): +22:23:18.401 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ResolvedXDCMake”的操作。: (目标 ID: 90) +22:23:18.401 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ComputeCLCompileGeneratedXDCFiles: (目标 ID: 91)”(目标“_XdcMake”依赖于它): 添加的项: XdcMake= temp @@ -9660,26 +6609,26 @@ OutputFile=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.xml SuppressStartupBanner=true TrackerLogDirectory=x64\Debug\StgSharpC.tlog\ -22:29:46.765 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeCLCompileGeneratedXDCFiles”的操作。: (目标 ID: 93) -22:29:46.765 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“MakeDirsForXdcMake: (目标 ID: 94)”(目标“_XdcMake”依赖于它): - 任务“MakeDir” (任务 ID: 44) - 已完成执行任务“MakeDir”的操作。 (任务 ID: 44) -22:29:46.766 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“MakeDirsForXdcMake”的操作。: (目标 ID: 94) +22:23:18.402 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeCLCompileGeneratedXDCFiles”的操作。: (目标 ID: 91) +22:23:18.402 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“MakeDirsForXdcMake: (目标 ID: 92)”(目标“_XdcMake”依赖于它): + 任务“MakeDir” (任务 ID: 42) + 已完成执行任务“MakeDir”的操作。 (任务 ID: 42) +22:23:18.402 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“MakeDirsForXdcMake”的操作。: (目标 ID: 92) 由于条件的计算结果为 false,已跳过目标“XdcMake”;('@(XdcMake)' != '')的计算结果为('' != '')。 -22:29:46.766 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_XdcMake: (目标 ID: 95)”(目标“_BuildLinkAction”依赖于它): -22:29:46.766 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_XdcMake”的操作。: (目标 ID: 95) -22:29:46.766 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ComputeCLCompileGeneratedSbrFiles: (目标 ID: 96)”(目标“_BscMake”依赖于它): -22:29:46.766 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeCLCompileGeneratedSbrFiles”的操作。: (目标 ID: 96) -22:29:46.766 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“MakeDirsForBscMake: (目标 ID: 97)”(目标“_BscMake”依赖于它): - 任务“MakeDir” (任务 ID: 45) - 已完成执行任务“MakeDir”的操作。 (任务 ID: 45) -22:29:46.766 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“MakeDirsForBscMake”的操作。: (目标 ID: 97) +22:23:18.402 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_XdcMake: (目标 ID: 93)”(目标“_BuildLinkAction”依赖于它): +22:23:18.402 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_XdcMake”的操作。: (目标 ID: 93) +22:23:18.402 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ComputeCLCompileGeneratedSbrFiles: (目标 ID: 94)”(目标“_BscMake”依赖于它): +22:23:18.402 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ComputeCLCompileGeneratedSbrFiles”的操作。: (目标 ID: 94) +22:23:18.402 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“MakeDirsForBscMake: (目标 ID: 95)”(目标“_BscMake”依赖于它): + 任务“MakeDir” (任务 ID: 43) + 已完成执行任务“MakeDir”的操作。 (任务 ID: 43) +22:23:18.402 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“MakeDirsForBscMake”的操作。: (目标 ID: 95) 由于条件的计算结果为 false,已跳过目标“BscMake”;('@(BscMake)' != '')的计算结果为('' != '')。 由于条件的计算结果为 false,已跳过目标“CustomBuildStep”;('@(CustomBuildStep)' != '' and '$(SelectedFiles)'=='')的计算结果为('' != '' and ''=='')。 -22:29:46.766 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_BscMake: (目标 ID: 98)”(目标“_BuildLinkAction”依赖于它): -22:29:46.766 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_BscMake”的操作。: (目标 ID: 98) +22:23:18.402 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_BscMake: (目标 ID: 96)”(目标“_BuildLinkAction”依赖于它): +22:23:18.402 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_BscMake”的操作。: (目标 ID: 96) 已跳过目标“PrepareForBuild”。以前的生成已成功。 -22:29:46.766 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“BuiltProjectOutputGroup: (目标 ID: 99)”(目标“CreateRecipeFile”依赖于它): +22:23:18.402 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“BuiltProjectOutputGroup: (目标 ID: 97)”(目标“CreateRecipeFile”依赖于它): 添加的项: _BuiltProjectOutputGroupOutputIntermediate= D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.dll @@ -9689,51 +6638,51 @@ D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.dll FinalOutputPath=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.dll OriginalItemSpec=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.dll -22:29:46.766 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“BuiltProjectOutputGroup”的操作。: (目标 ID: 99) +22:23:18.402 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“BuiltProjectOutputGroup”的操作。: (目标 ID: 97) 已跳过目标“PrepareForBuild”。以前的生成已成功。 已跳过目标“PrepareResourceNames”。以前的生成已成功。 -22:29:46.766 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“SatelliteDllsProjectOutputGroup: (目标 ID: 100)”(目标“CreateRecipeFile”依赖于它): -22:29:46.766 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“SatelliteDllsProjectOutputGroup”的操作。: (目标 ID: 100) +22:23:18.402 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“SatelliteDllsProjectOutputGroup: (目标 ID: 98)”(目标“CreateRecipeFile”依赖于它): +22:23:18.402 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“SatelliteDllsProjectOutputGroup”的操作。: (目标 ID: 98) 已跳过目标“PrepareForBuild”。以前的生成已成功。 已跳过目标“AssignTargetPaths”。以前的生成已成功。 已跳过目标“PrepareForBuild”。以前的生成已成功。 已跳过目标“AssignTargetPaths”。以前的生成已成功。 -22:29:46.766 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“MakeDirsForFxc: (目标 ID: 101)”(目标“ContentFilesProjectOutputGroup”依赖于它): - 任务“MakeDir” (任务 ID: 46) - 已完成执行任务“MakeDir”的操作。 (任务 ID: 46) -22:29:46.766 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“MakeDirsForFxc”的操作。: (目标 ID: 101) +22:23:18.402 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“MakeDirsForFxc: (目标 ID: 99)”(目标“ContentFilesProjectOutputGroup”依赖于它): + 任务“MakeDir” (任务 ID: 44) + 已完成执行任务“MakeDir”的操作。 (任务 ID: 44) +22:23:18.403 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“MakeDirsForFxc”的操作。: (目标 ID: 99) 由于条件的计算结果为 false,已跳过目标“_CreateCopyFileItems”;('@(CopyFileToFolders)' != '')的计算结果为('' != '')。 -22:29:46.766 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ContentFilesProjectOutputGroup: (目标 ID: 102)”(目标“CreateRecipeFile”依赖于它): +22:23:18.403 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“ContentFilesProjectOutputGroup: (目标 ID: 100)”(目标“CreateRecipeFile”依赖于它): 由于 false 条件,已跳过任务“AssignTargetPath”;('@(ContentFilesProjectOutputGroupOutputFullPath)' != '' and '%(ContentFilesProjectOutputGroupOutputFullPath.RootFolder)' != '')计算为('' != '' and '' != '')。 由于 false 条件,已跳过任务“AssignTargetPath”;('@(ContentFilesProjectOutputGroupOutputFullPath)' != '' and '%(ContentFilesProjectOutputGroupOutputFullPath.RootFolder)' == '')计算为('' != '' and '' == '')。 -22:29:46.767 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ContentFilesProjectOutputGroup”的操作。: (目标 ID: 102) +22:23:18.403 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“ContentFilesProjectOutputGroup”的操作。: (目标 ID: 100) 已跳过目标“GetReferencedVCProjectsInfo”。以前的生成已成功。 -22:29:46.767 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“CreateRecipeFile: (目标 ID: 103)”(目标“_BuildLinkAction”依赖于它): +22:23:18.403 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“CreateRecipeFile: (目标 ID: 101)”(目标“_BuildLinkAction”依赖于它): 正在使用程序集“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.Build.CppTasks.Common.dll”中的“GenerateDesktopDeployRecipe”任务。 - 任务“GenerateDesktopDeployRecipe” (任务 ID: 47) + 任务“GenerateDesktopDeployRecipe” (任务 ID: 45) 任务参数: BuiltProjectOutputs= D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.dll FinalOutputPath=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.dll - OriginalItemSpec=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.dll (任务 ID: 47) - 任务参数:OutputFile=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\x64\Debug\StgSharpC.dll.recipe (任务 ID: 47) - 任务参数:ProjectDir=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\ (任务 ID: 47) - 已完成执行任务“GenerateDesktopDeployRecipe”的操作。 (任务 ID: 47) -22:29:46.789 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“CreateRecipeFile”的操作。: (目标 ID: 103) -22:29:46.789 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“_GenerateSatelliteAssemblyInputs: (目标 ID: 104)”(目标“CreateSatelliteAssemblies”依赖于它): + OriginalItemSpec=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC.dll (任务 ID: 45) + 任务参数:OutputFile=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\x64\Debug\StgSharpC.dll.recipe (任务 ID: 45) + 任务参数:ProjectDir=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\ (任务 ID: 45) + 已完成执行任务“GenerateDesktopDeployRecipe”的操作。 (任务 ID: 45) +22:23:18.427 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“CreateRecipeFile”的操作。: (目标 ID: 101) +22:23:18.427 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“_GenerateSatelliteAssemblyInputs: (目标 ID: 102)”(目标“CreateSatelliteAssemblies”依赖于它): 由于 false 条件,已跳过任务“Warning”;('@(ManifestResourceWithCulture)'!='' and '%(ManifestResourceWithCulture.EmittedForCompatibilityOnly)'=='')计算为(''!='' and ''=='')。 由于 false 条件,已跳过任务“Warning”;('@(ManifestNonResxWithCultureOnDisk)'!='' and '%(ManifestNonResxWithCultureOnDisk.EmittedForCompatibilityOnly)'=='')计算为(''!='' and ''=='')。 -22:29:46.789 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_GenerateSatelliteAssemblyInputs”的操作。: (目标 ID: 104) +22:23:18.427 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_GenerateSatelliteAssemblyInputs”的操作。: (目标 ID: 102) 由于条件的计算结果为 false,已跳过目标“ComputeIntermediateSatelliteAssemblies”;(@(ReferenceSatellitePaths->'%(DestinationSubDirectory)') != '')的计算结果为( != '')。 由于条件的计算结果为 false,已跳过目标“GenerateSatelliteAssemblies”;('@(_SatelliteAssemblyResourceInputs)' != '')的计算结果为('' != '')。 -22:29:46.789 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“CreateSatelliteAssemblies: (目标 ID: 105)”(目标“_BuildLinkAction”依赖于它): -22:29:46.789 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“CreateSatelliteAssemblies”的操作。: (目标 ID: 105) +22:23:18.427 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“CreateSatelliteAssemblies: (目标 ID: 103)”(目标“_BuildLinkAction”依赖于它): +22:23:18.427 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“CreateSatelliteAssemblies”的操作。: (目标 ID: 103) 由于条件的计算结果为 false,已跳过目标“CopyLocalNativeReference”;('$(CopyLocalProjectReference)' == 'true')的计算结果为('false' == 'true')。 -22:29:46.789 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_Appverifier: (目标 ID: 106)”(目标“_BuildLinkAction”依赖于它): -22:29:46.789 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_Appverifier”的操作。: (目标 ID: 106) -22:29:46.789 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_Deploy: (目标 ID: 107)”(目标“_BuildLinkAction”依赖于它): -22:29:46.789 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_Deploy”的操作。: (目标 ID: 107) -22:29:46.790 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Xamarin\Xamarin.Sdk.targets”中的目标“_CalculatePostXamarinTelemetry: (目标 ID: 108)”(目标“PrepareForRun”依赖于它): +22:23:18.428 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_Appverifier: (目标 ID: 104)”(目标“_BuildLinkAction”依赖于它): +22:23:18.428 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_Appverifier”的操作。: (目标 ID: 104) +22:23:18.428 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_Deploy: (目标 ID: 105)”(目标“_BuildLinkAction”依赖于它): +22:23:18.428 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_Deploy”的操作。: (目标 ID: 105) +22:23:18.428 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Xamarin\Xamarin.Sdk.targets”中的目标“_CalculatePostXamarinTelemetry: (目标 ID: 106)”(目标“PrepareForRun”依赖于它): 设置属性: _PostXamarinTelemetryLoggingImportance=low 设置属性: _XamarinBuildIsIncrementalFile=x64\Debug\\_XamarinBuildIsIncremental 设置属性: _ProjectCapabilities=;desktop;AssemblyReferences;COMReferences;ProjectReferences;WinRTReferences;SDKReferences;SharedProjectReferences;OutputGroups;AllTargetOutputGroups;VisualStudioWellKnownOutputGroups;ProjectConfigurationsDeclaredAsItems;PropertyManager;native;IntegratedConsoleDebugging;SupportsOnlineEnvironments; @@ -9743,107 +6692,107 @@ 设置属性: _MsixCapability=False 设置属性: _WinUICapability=False 设置属性: _XamarinFormsCapability=False + 任务“Message” (任务 ID: 46) + 任务参数:Importance=low (任务 ID: 46) + 任务参数:Text= [StgSharpC /Windows] Capability: desktop (任务 ID: 46) + [StgSharpC /Windows] Capability: desktop (任务 ID: 46) + 已完成执行任务“Message”的操作。 (任务 ID: 46) + 任务“Message” (任务 ID: 47) + 任务参数:Importance=low (任务 ID: 47) + 任务参数:Text= [StgSharpC /Windows] Capability: AssemblyReferences (任务 ID: 47) + [StgSharpC /Windows] Capability: AssemblyReferences (任务 ID: 47) + 已完成执行任务“Message”的操作。 (任务 ID: 47) 任务“Message” (任务 ID: 48) 任务参数:Importance=low (任务 ID: 48) - 任务参数:Text= [StgSharpC /Windows] Capability: desktop (任务 ID: 48) - [StgSharpC /Windows] Capability: desktop (任务 ID: 48) + 任务参数:Text= [StgSharpC /Windows] Capability: COMReferences (任务 ID: 48) + [StgSharpC /Windows] Capability: COMReferences (任务 ID: 48) 已完成执行任务“Message”的操作。 (任务 ID: 48) 任务“Message” (任务 ID: 49) 任务参数:Importance=low (任务 ID: 49) - 任务参数:Text= [StgSharpC /Windows] Capability: AssemblyReferences (任务 ID: 49) - [StgSharpC /Windows] Capability: AssemblyReferences (任务 ID: 49) + 任务参数:Text= [StgSharpC /Windows] Capability: ProjectReferences (任务 ID: 49) + [StgSharpC /Windows] Capability: ProjectReferences (任务 ID: 49) 已完成执行任务“Message”的操作。 (任务 ID: 49) 任务“Message” (任务 ID: 50) 任务参数:Importance=low (任务 ID: 50) - 任务参数:Text= [StgSharpC /Windows] Capability: COMReferences (任务 ID: 50) - [StgSharpC /Windows] Capability: COMReferences (任务 ID: 50) + 任务参数:Text= [StgSharpC /Windows] Capability: WinRTReferences (任务 ID: 50) + [StgSharpC /Windows] Capability: WinRTReferences (任务 ID: 50) 已完成执行任务“Message”的操作。 (任务 ID: 50) 任务“Message” (任务 ID: 51) 任务参数:Importance=low (任务 ID: 51) - 任务参数:Text= [StgSharpC /Windows] Capability: ProjectReferences (任务 ID: 51) - [StgSharpC /Windows] Capability: ProjectReferences (任务 ID: 51) + 任务参数:Text= [StgSharpC /Windows] Capability: SDKReferences (任务 ID: 51) + [StgSharpC /Windows] Capability: SDKReferences (任务 ID: 51) 已完成执行任务“Message”的操作。 (任务 ID: 51) 任务“Message” (任务 ID: 52) 任务参数:Importance=low (任务 ID: 52) - 任务参数:Text= [StgSharpC /Windows] Capability: WinRTReferences (任务 ID: 52) - [StgSharpC /Windows] Capability: WinRTReferences (任务 ID: 52) + 任务参数:Text= [StgSharpC /Windows] Capability: SharedProjectReferences (任务 ID: 52) + [StgSharpC /Windows] Capability: SharedProjectReferences (任务 ID: 52) 已完成执行任务“Message”的操作。 (任务 ID: 52) 任务“Message” (任务 ID: 53) 任务参数:Importance=low (任务 ID: 53) - 任务参数:Text= [StgSharpC /Windows] Capability: SDKReferences (任务 ID: 53) - [StgSharpC /Windows] Capability: SDKReferences (任务 ID: 53) + 任务参数:Text= [StgSharpC /Windows] Capability: OutputGroups (任务 ID: 53) + [StgSharpC /Windows] Capability: OutputGroups (任务 ID: 53) 已完成执行任务“Message”的操作。 (任务 ID: 53) 任务“Message” (任务 ID: 54) 任务参数:Importance=low (任务 ID: 54) - 任务参数:Text= [StgSharpC /Windows] Capability: SharedProjectReferences (任务 ID: 54) - [StgSharpC /Windows] Capability: SharedProjectReferences (任务 ID: 54) + 任务参数:Text= [StgSharpC /Windows] Capability: AllTargetOutputGroups (任务 ID: 54) + [StgSharpC /Windows] Capability: AllTargetOutputGroups (任务 ID: 54) 已完成执行任务“Message”的操作。 (任务 ID: 54) 任务“Message” (任务 ID: 55) 任务参数:Importance=low (任务 ID: 55) - 任务参数:Text= [StgSharpC /Windows] Capability: OutputGroups (任务 ID: 55) - [StgSharpC /Windows] Capability: OutputGroups (任务 ID: 55) + 任务参数:Text= [StgSharpC /Windows] Capability: VisualStudioWellKnownOutputGroups (任务 ID: 55) + [StgSharpC /Windows] Capability: VisualStudioWellKnownOutputGroups (任务 ID: 55) 已完成执行任务“Message”的操作。 (任务 ID: 55) 任务“Message” (任务 ID: 56) 任务参数:Importance=low (任务 ID: 56) - 任务参数:Text= [StgSharpC /Windows] Capability: AllTargetOutputGroups (任务 ID: 56) - [StgSharpC /Windows] Capability: AllTargetOutputGroups (任务 ID: 56) + 任务参数:Text= [StgSharpC /Windows] Capability: ProjectConfigurationsDeclaredAsItems (任务 ID: 56) + [StgSharpC /Windows] Capability: ProjectConfigurationsDeclaredAsItems (任务 ID: 56) 已完成执行任务“Message”的操作。 (任务 ID: 56) 任务“Message” (任务 ID: 57) 任务参数:Importance=low (任务 ID: 57) - 任务参数:Text= [StgSharpC /Windows] Capability: VisualStudioWellKnownOutputGroups (任务 ID: 57) - [StgSharpC /Windows] Capability: VisualStudioWellKnownOutputGroups (任务 ID: 57) + 任务参数:Text= [StgSharpC /Windows] Capability: PropertyManager (任务 ID: 57) + [StgSharpC /Windows] Capability: PropertyManager (任务 ID: 57) 已完成执行任务“Message”的操作。 (任务 ID: 57) 任务“Message” (任务 ID: 58) 任务参数:Importance=low (任务 ID: 58) - 任务参数:Text= [StgSharpC /Windows] Capability: ProjectConfigurationsDeclaredAsItems (任务 ID: 58) - [StgSharpC /Windows] Capability: ProjectConfigurationsDeclaredAsItems (任务 ID: 58) + 任务参数:Text= [StgSharpC /Windows] Capability: native (任务 ID: 58) + [StgSharpC /Windows] Capability: native (任务 ID: 58) 已完成执行任务“Message”的操作。 (任务 ID: 58) 任务“Message” (任务 ID: 59) 任务参数:Importance=low (任务 ID: 59) - 任务参数:Text= [StgSharpC /Windows] Capability: PropertyManager (任务 ID: 59) - [StgSharpC /Windows] Capability: PropertyManager (任务 ID: 59) + 任务参数:Text= [StgSharpC /Windows] Capability: IntegratedConsoleDebugging (任务 ID: 59) + [StgSharpC /Windows] Capability: IntegratedConsoleDebugging (任务 ID: 59) 已完成执行任务“Message”的操作。 (任务 ID: 59) 任务“Message” (任务 ID: 60) 任务参数:Importance=low (任务 ID: 60) - 任务参数:Text= [StgSharpC /Windows] Capability: native (任务 ID: 60) - [StgSharpC /Windows] Capability: native (任务 ID: 60) + 任务参数:Text= [StgSharpC /Windows] Capability: SupportsOnlineEnvironments (任务 ID: 60) + [StgSharpC /Windows] Capability: SupportsOnlineEnvironments (任务 ID: 60) 已完成执行任务“Message”的操作。 (任务 ID: 60) 任务“Message” (任务 ID: 61) 任务参数:Importance=low (任务 ID: 61) - 任务参数:Text= [StgSharpC /Windows] Capability: IntegratedConsoleDebugging (任务 ID: 61) - [StgSharpC /Windows] Capability: IntegratedConsoleDebugging (任务 ID: 61) + 任务参数:Text= [StgSharpC /Windows] _MobileCapability: False (任务 ID: 61) + [StgSharpC /Windows] _MobileCapability: False (任务 ID: 61) 已完成执行任务“Message”的操作。 (任务 ID: 61) 任务“Message” (任务 ID: 62) 任务参数:Importance=low (任务 ID: 62) - 任务参数:Text= [StgSharpC /Windows] Capability: SupportsOnlineEnvironments (任务 ID: 62) - [StgSharpC /Windows] Capability: SupportsOnlineEnvironments (任务 ID: 62) + 任务参数:Text= [StgSharpC /Windows] _MauiCapability: False (任务 ID: 62) + [StgSharpC /Windows] _MauiCapability: False (任务 ID: 62) 已完成执行任务“Message”的操作。 (任务 ID: 62) 任务“Message” (任务 ID: 63) 任务参数:Importance=low (任务 ID: 63) - 任务参数:Text= [StgSharpC /Windows] _MobileCapability: False (任务 ID: 63) - [StgSharpC /Windows] _MobileCapability: False (任务 ID: 63) + 任务参数:Text= [StgSharpC /Windows] _XamarinFormsCapability: False (任务 ID: 63) + [StgSharpC /Windows] _XamarinFormsCapability: False (任务 ID: 63) 已完成执行任务“Message”的操作。 (任务 ID: 63) 任务“Message” (任务 ID: 64) 任务参数:Importance=low (任务 ID: 64) - 任务参数:Text= [StgSharpC /Windows] _MauiCapability: False (任务 ID: 64) - [StgSharpC /Windows] _MauiCapability: False (任务 ID: 64) + 任务参数:Text= [StgSharpC /Windows] _IsAndroid: (任务 ID: 64) + [StgSharpC /Windows] _IsAndroid: (任务 ID: 64) 已完成执行任务“Message”的操作。 (任务 ID: 64) 任务“Message” (任务 ID: 65) 任务参数:Importance=low (任务 ID: 65) - 任务参数:Text= [StgSharpC /Windows] _XamarinFormsCapability: False (任务 ID: 65) - [StgSharpC /Windows] _XamarinFormsCapability: False (任务 ID: 65) + 任务参数:Text= [StgSharpC /Windows] _IsIOS: (任务 ID: 65) + [StgSharpC /Windows] _IsIOS: (任务 ID: 65) 已完成执行任务“Message”的操作。 (任务 ID: 65) - 任务“Message” (任务 ID: 66) - 任务参数:Importance=low (任务 ID: 66) - 任务参数:Text= [StgSharpC /Windows] _IsAndroid: (任务 ID: 66) - [StgSharpC /Windows] _IsAndroid: (任务 ID: 66) - 已完成执行任务“Message”的操作。 (任务 ID: 66) - 任务“Message” (任务 ID: 67) - 任务参数:Importance=low (任务 ID: 67) - 任务参数:Text= [StgSharpC /Windows] _IsIOS: (任务 ID: 67) - [StgSharpC /Windows] _IsIOS: (任务 ID: 67) - 已完成执行任务“Message”的操作。 (任务 ID: 67) -22:29:46.791 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_CalculatePostXamarinTelemetry”的操作。: (目标 ID: 108) +22:23:18.430 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_CalculatePostXamarinTelemetry”的操作。: (目标 ID: 106) 由于条件的计算结果为 false,已跳过目标“_PostXamarinTelemetry”;('$(_PostXamarinTelemetry)' == 'true')的计算结果为('' == 'true')。 由于条件的计算结果为 false,已跳过目标“ComputeIntermediateSatelliteAssemblies”;(@(ReferenceSatellitePaths->'%(DestinationSubDirectory)') != '')的计算结果为( != '')。 由于条件的计算结果为 false,已跳过目标“_CopyFilesMarkedCopyLocal”;('@(ReferenceCopyLocalPaths)' != '')的计算结果为('' != '')。 @@ -9851,51 +6800,51 @@ 已跳过目标“AssignProjectConfiguration”。以前的生成已成功。 已跳过目标“_SplitProjectReferencesByFileExistence”。以前的生成已成功。 已跳过目标“_GetProjectReferenceTargetFrameworkProperties”。以前的生成已成功。 -22:29:46.792 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“_PopulateCommonStateForGetCopyToOutputDirectoryItems: (目标 ID: 109)”(目标“GetCopyToOutputDirectoryItems”依赖于它): +22:23:18.430 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“_PopulateCommonStateForGetCopyToOutputDirectoryItems: (目标 ID: 107)”(目标“GetCopyToOutputDirectoryItems”依赖于它): 设置属性: _GCTODIKeepDuplicates=false 设置属性: _GCTODIKeepMetadata=CopyToOutputDirectory;TargetPath -22:29:46.792 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_PopulateCommonStateForGetCopyToOutputDirectoryItems”的操作。: (目标 ID: 109) -22:29:46.792 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Xaml.targets”中的目标“GetCopyToOutputDirectoryXamlAppDefs: (目标 ID: 110)”(目标“GetCopyToOutputDirectoryItems”依赖于它): +22:23:18.430 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_PopulateCommonStateForGetCopyToOutputDirectoryItems”的操作。: (目标 ID: 107) +22:23:18.430 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Xaml.targets”中的目标“GetCopyToOutputDirectoryXamlAppDefs: (目标 ID: 108)”(目标“GetCopyToOutputDirectoryItems”依赖于它): + 任务“AssignTargetPath” (任务 ID: 66) + 任务参数:RootFolder=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC (任务 ID: 66) + 已完成执行任务“AssignTargetPath”的操作。 (任务 ID: 66) +22:23:18.430 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“GetCopyToOutputDirectoryXamlAppDefs”的操作。: (目标 ID: 108) +22:23:18.430 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“GetCopyToOutputDirectoryItems: (目标 ID: 109)”(目标“_CopySourceItemsToOutputDirectory”依赖于它): + 正在使用程序集“Microsoft.Build.Tasks.Core, Version=15.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”中的“CallTarget”任务。 + 任务“CallTarget” (任务 ID: 67) + 任务参数:Targets=_GetCopyToOutputDirectoryItemsFromTransitiveProjectReferences (任务 ID: 67) + 已跳过目标“_PopulateCommonStateForGetCopyToOutputDirectoryItems”。以前的生成已成功。 + 已跳过目标“_AddOutputPathToGlobalPropertiesToRemove”。以前的生成已成功。 +22:23:18.431 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“_GetCopyToOutputDirectoryItemsFromTransitiveProjectReferences: (目标 ID: 110)”(目标“GetCopyToOutputDirectoryItems”依赖于它): + 由于 false 条件,已跳过任务“MSBuild”;('@(_MSBuildProjectReferenceExistent)' != '' and '$(_GetChildProjectCopyToOutputDirectoryItems)' == 'true' and '%(_MSBuildProjectReferenceExistent.Private)' != 'false' and '$(UseCommonOutputDirectory)' != 'true')计算为('' != '' and 'true' == 'true' and '' != 'false' and 'false' != 'true')。 任务“AssignTargetPath” (任务 ID: 68) 任务参数:RootFolder=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC (任务 ID: 68) 已完成执行任务“AssignTargetPath”的操作。 (任务 ID: 68) -22:29:46.792 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“GetCopyToOutputDirectoryXamlAppDefs”的操作。: (目标 ID: 110) -22:29:46.792 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“GetCopyToOutputDirectoryItems: (目标 ID: 111)”(目标“_CopySourceItemsToOutputDirectory”依赖于它): - 正在使用程序集“Microsoft.Build.Tasks.Core, Version=15.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”中的“CallTarget”任务。 +22:23:18.432 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_GetCopyToOutputDirectoryItemsFromTransitiveProjectReferences”的操作。: (目标 ID: 110) + 已完成执行任务“CallTarget”的操作。 (任务 ID: 67) 任务“CallTarget” (任务 ID: 69) - 任务参数:Targets=_GetCopyToOutputDirectoryItemsFromTransitiveProjectReferences (任务 ID: 69) + 任务参数:Targets=_GetCopyToOutputDirectoryItemsFromThisProject (任务 ID: 69) + 已跳过目标“AssignTargetPaths”。以前的生成已成功。 已跳过目标“_PopulateCommonStateForGetCopyToOutputDirectoryItems”。以前的生成已成功。 - 已跳过目标“_AddOutputPathToGlobalPropertiesToRemove”。以前的生成已成功。 -22:29:46.792 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“_GetCopyToOutputDirectoryItemsFromTransitiveProjectReferences: (目标 ID: 112)”(目标“GetCopyToOutputDirectoryItems”依赖于它): - 由于 false 条件,已跳过任务“MSBuild”;('@(_MSBuildProjectReferenceExistent)' != '' and '$(_GetChildProjectCopyToOutputDirectoryItems)' == 'true' and '%(_MSBuildProjectReferenceExistent.Private)' != 'false' and '$(UseCommonOutputDirectory)' != 'true')计算为('' != '' and 'true' == 'true' and '' != 'false' and 'false' != 'true')。 +22:23:18.432 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“_GetCopyToOutputDirectoryItemsFromThisProject: (目标 ID: 111)”(目标“GetCopyToOutputDirectoryItems”依赖于它): 任务“AssignTargetPath” (任务 ID: 70) 任务参数:RootFolder=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC (任务 ID: 70) 已完成执行任务“AssignTargetPath”的操作。 (任务 ID: 70) -22:29:46.793 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_GetCopyToOutputDirectoryItemsFromTransitiveProjectReferences”的操作。: (目标 ID: 112) +22:23:18.432 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_GetCopyToOutputDirectoryItemsFromThisProject”的操作。: (目标 ID: 111) 已完成执行任务“CallTarget”的操作。 (任务 ID: 69) - 任务“CallTarget” (任务 ID: 71) - 任务参数:Targets=_GetCopyToOutputDirectoryItemsFromThisProject (任务 ID: 71) - 已跳过目标“AssignTargetPaths”。以前的生成已成功。 - 已跳过目标“_PopulateCommonStateForGetCopyToOutputDirectoryItems”。以前的生成已成功。 -22:29:46.793 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“_GetCopyToOutputDirectoryItemsFromThisProject: (目标 ID: 113)”(目标“GetCopyToOutputDirectoryItems”依赖于它): - 任务“AssignTargetPath” (任务 ID: 72) - 任务参数:RootFolder=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC (任务 ID: 72) - 已完成执行任务“AssignTargetPath”的操作。 (任务 ID: 72) -22:29:46.793 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_GetCopyToOutputDirectoryItemsFromThisProject”的操作。: (目标 ID: 113) - 已完成执行任务“CallTarget”的操作。 (任务 ID: 71) -22:29:46.793 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“GetCopyToOutputDirectoryItems”的操作。: (目标 ID: 111) +22:23:18.432 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“GetCopyToOutputDirectoryItems”的操作。: (目标 ID: 109) 由于条件的计算结果为 false,已跳过目标“_CopyOutOfDateSourceItemsToOutputDirectory”;( '@(_SourceItemsToCopyToOutputDirectory)' != '' )的计算结果为( '' != '' )。 由于条件的计算结果为 false,已跳过目标“_CopyOutOfDateSourceItemsToOutputDirectoryAlways”;( '@(_SourceItemsToCopyToOutputDirectoryAlways)' != '' )的计算结果为( '' != '' )。 -22:29:46.793 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“_CopySourceItemsToOutputDirectory: (目标 ID: 114)”(目标“CopyFilesToOutputDirectory”依赖于它): -22:29:46.793 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_CopySourceItemsToOutputDirectory”的操作。: (目标 ID: 114) +22:23:18.433 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“_CopySourceItemsToOutputDirectory: (目标 ID: 112)”(目标“CopyFilesToOutputDirectory”依赖于它): +22:23:18.433 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_CopySourceItemsToOutputDirectory”的操作。: (目标 ID: 112) 由于条件的计算结果为 false,已跳过目标“_CopyAppConfigFile”;( '@(AppConfigWithTargetPath)' != '' )的计算结果为( '' != '' )。 由于条件的计算结果为 false,已跳过目标“_CopyManifestFiles”;( '$(_DeploymentCopyApplicationManifest)'=='true' or '$(GenerateClickOnceManifests)'=='true' )的计算结果为( ''=='true' or ''=='true' )。 -22:29:46.794 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“_CheckForCompileOutputs: (目标 ID: 115)”(目标“CopyFilesToOutputDirectory”依赖于它): +22:23:18.433 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“_CheckForCompileOutputs: (目标 ID: 113)”(目标“CopyFilesToOutputDirectory”依赖于它): 设置属性: _DocumentationFileProduced=false 设置属性: _DebugSymbolsProduced=false -22:29:46.794 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_CheckForCompileOutputs”的操作。: (目标 ID: 115) +22:23:18.433 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_CheckForCompileOutputs”的操作。: (目标 ID: 113) 由于条件的计算结果为 false,已跳过目标“_SGenCheckForOutputs”;('$(_SGenGenerateSerializationAssembliesConfig)' == 'On' or ('@(WebReferenceUrl)'!='' and '$(_SGenGenerateSerializationAssembliesConfig)' == 'Auto'))的计算结果为('Off' == 'On' or (''!='' and 'Off' == 'Auto'))。 -22:29:46.794 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“CopyFilesToOutputDirectory: (目标 ID: 116)”(目标“PrepareForRun”依赖于它): +22:23:18.433 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“CopyFilesToOutputDirectory: (目标 ID: 114)”(目标“PrepareForRun”依赖于它): 设置属性: CreateHardLinksForCopyFilesToOutputDirectoryIfPossible=false 设置属性: CreateSymbolicLinksForCopyFilesToOutputDirectoryIfPossible=false 设置属性: ErrorIfLinkFailsForCopyFilesToOutputDirectory=false @@ -9913,70 +6862,71 @@ 由于 false 条件,已跳过任务“Copy”;('@(ReferenceComWrappersToCopyLocal)' != '' or '@(ResolvedIsolatedComModules)' != '' or '@(_DeploymentLooseManifestFile)' != '' or '@(NativeReferenceFile)' != '' )计算为('' != '' or '' != '' or '' != '' or '' != '' )。 由于 false 条件,已跳过任务“Copy”;('$(SkipCopyWinMDArtifact)' != 'true' and '@(WinMDExpArtifacts)' != '')计算为('' != 'true' and '' != '')。 由于 false 条件,已跳过任务“Message”;('$(SkipCopyWinMDArtifact)' != 'true' and '$(_WindowsMetadataOutputPath)' != '')计算为('' != 'true' and '' != '')。 -22:29:46.794 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“CopyFilesToOutputDirectory”的操作。: (目标 ID: 116) -22:29:46.794 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“PrepareForRun: (目标 ID: 117)”(目标“_BuildLinkAction”依赖于它): -22:29:46.794 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“PrepareForRun”的操作。: (目标 ID: 117) +22:23:18.437 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“CopyFilesToOutputDirectory”的操作。: (目标 ID: 114) +22:23:18.437 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“PrepareForRun: (目标 ID: 115)”(目标“_BuildLinkAction”依赖于它): +22:23:18.437 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“PrepareForRun”的操作。: (目标 ID: 115) 由于条件的计算结果为 false,已跳过目标“CustomBuildStep”;('@(CustomBuildStep)' != '' and '$(SelectedFiles)'=='')的计算结果为('' != '' and ''=='')。 -22:29:46.794 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets”中的目标“PostBuildEvent: (目标 ID: 118)”(目标“_BuildLinkAction”依赖于它): +22:23:18.437 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets”中的目标“PostBuildEvent: (目标 ID: 116)”(目标“_BuildLinkAction”依赖于它): 由于 false 条件,已跳过任务“Message”;('%(PostBuildEvent.Message)' != '' and '%(PostBuildEvent.Command)' != '')计算为('' != '' and '' != '')。 由于 false 条件,已跳过任务“Exec”;('%(PostBuildEvent.Command)' != '')计算为('' != '')。 -22:29:46.794 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“PostBuildEvent”的操作。: (目标 ID: 118) -22:29:46.794 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_BuildLinkAction: (目标 ID: 119)”(目标“BuildLink”依赖于它): -22:29:46.794 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_BuildLinkAction”的操作。: (目标 ID: 119) -22:29:46.794 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“BuildLink: (目标 ID: 120)”(目标“Build”依赖于它): -22:29:46.794 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“BuildLink”的操作。: (目标 ID: 120) -22:29:46.794 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.BuildSteps.Targets”中的目标“AfterBuild: (目标 ID: 121)”(目标“Build”依赖于它): -22:29:46.794 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“AfterBuild”的操作。: (目标 ID: 121) +22:23:18.437 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“PostBuildEvent”的操作。: (目标 ID: 116) +22:23:18.437 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“_BuildLinkAction: (目标 ID: 117)”(目标“BuildLink”依赖于它): +22:23:18.437 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_BuildLinkAction”的操作。: (目标 ID: 117) +22:23:18.437 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“BuildLink: (目标 ID: 118)”(目标“Build”依赖于它): +22:23:18.437 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“BuildLink”的操作。: (目标 ID: 118) +22:23:18.437 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.BuildSteps.Targets”中的目标“AfterBuild: (目标 ID: 119)”(目标“Build”依赖于它): +22:23:18.437 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“AfterBuild”的操作。: (目标 ID: 119) 已跳过目标“_CheckForCompileOutputs”。以前的生成已成功。 由于条件的计算结果为 false,已跳过目标“_SGenCheckForOutputs”;('$(_SGenGenerateSerializationAssembliesConfig)' == 'On' or ('@(WebReferenceUrl)'!='' and '$(_SGenGenerateSerializationAssembliesConfig)' == 'Auto'))的计算结果为('Off' == 'On' or (''!='' and 'Off' == 'Auto'))。 -22:29:46.794 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“_CleanGetCurrentAndPriorFileWrites: (目标 ID: 122)”(目标“IncrementalClean”依赖于它): - 任务“ReadLinesFromFile” (任务 ID: 73) - 任务参数:File=x64\Debug\StgSharpGraphic.vcxproj.FileListAbsolute.txt (任务 ID: 73) - 已完成执行任务“ReadLinesFromFile”的操作。 (任务 ID: 73) +22:23:18.437 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“_CleanGetCurrentAndPriorFileWrites: (目标 ID: 120)”(目标“IncrementalClean”依赖于它): + 任务“ReadLinesFromFile” (任务 ID: 71) + 任务参数:File=x64\Debug\StgSharpGraphic.vcxproj.FileListAbsolute.txt (任务 ID: 71) + 已完成执行任务“ReadLinesFromFile”的操作。 (任务 ID: 71) 正在使用程序集“Microsoft.Build.Tasks.Core, Version=15.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”中的“ConvertToAbsolutePath”任务。 - 任务“ConvertToAbsolutePath” (任务 ID: 74) - 已完成执行任务“ConvertToAbsolutePath”的操作。 (任务 ID: 74) + 任务“ConvertToAbsolutePath” (任务 ID: 72) + 已完成执行任务“ConvertToAbsolutePath”的操作。 (任务 ID: 72) 正在使用程序集“Microsoft.Build.Tasks.Core, Version=15.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”中的“FindUnderPath”任务。 + 任务“FindUnderPath” (任务 ID: 73) + 任务参数:UpdateToAbsolutePaths=True (任务 ID: 73) + 任务参数:Path=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC (任务 ID: 73) + 比较路径为“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC”。 (任务 ID: 73) + 已完成执行任务“FindUnderPath”的操作。 (任务 ID: 73) + 任务“FindUnderPath” (任务 ID: 74) + 任务参数:UpdateToAbsolutePaths=True (任务 ID: 74) + 任务参数:Path=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\ (任务 ID: 74) + 比较路径为“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\”。 (任务 ID: 74) + 已完成执行任务“FindUnderPath”的操作。 (任务 ID: 74) 任务“FindUnderPath” (任务 ID: 75) 任务参数:UpdateToAbsolutePaths=True (任务 ID: 75) - 任务参数:Path=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC (任务 ID: 75) - 比较路径为“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC”。 (任务 ID: 75) + 任务参数:Path=x64\Debug\ (任务 ID: 75) + 比较路径为“x64\Debug\”。 (任务 ID: 75) 已完成执行任务“FindUnderPath”的操作。 (任务 ID: 75) - 任务“FindUnderPath” (任务 ID: 76) - 任务参数:UpdateToAbsolutePaths=True (任务 ID: 76) - 任务参数:Path=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\ (任务 ID: 76) - 比较路径为“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\”。 (任务 ID: 76) - 已完成执行任务“FindUnderPath”的操作。 (任务 ID: 76) - 任务“FindUnderPath” (任务 ID: 77) - 任务参数:UpdateToAbsolutePaths=True (任务 ID: 77) - 任务参数:Path=x64\Debug\ (任务 ID: 77) - 比较路径为“x64\Debug\”。 (任务 ID: 77) - 已完成执行任务“FindUnderPath”的操作。 (任务 ID: 77) 正在使用程序集“Microsoft.Build.Tasks.Core, Version=15.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”中的“RemoveDuplicates”任务。 - 任务“RemoveDuplicates” (任务 ID: 78) - 已完成执行任务“RemoveDuplicates”的操作。 (任务 ID: 78) -22:29:46.797 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_CleanGetCurrentAndPriorFileWrites”的操作。: (目标 ID: 122) -22:29:46.797 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“IncrementalClean: (目标 ID: 123)”(目标“Build”依赖于它): - 任务“FindUnderPath” (任务 ID: 79) - 任务参数:Path=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\ (任务 ID: 79) - 比较路径为“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\”。 (任务 ID: 79) - 已完成执行任务“FindUnderPath”的操作。 (任务 ID: 79) - 任务“FindUnderPath” (任务 ID: 80) - 任务参数:Path=x64\Debug\ (任务 ID: 80) - 比较路径为“x64\Debug\”。 (任务 ID: 80) - 已完成执行任务“FindUnderPath”的操作。 (任务 ID: 80) - 任务“Delete” (任务 ID: 81) - 任务参数:TreatErrorsAsWarnings=True (任务 ID: 81) - 已完成执行任务“Delete”的操作。 (任务 ID: 81) - 任务“RemoveDuplicates” (任务 ID: 82) - 已完成执行任务“RemoveDuplicates”的操作。 (任务 ID: 82) + 任务“RemoveDuplicates” (任务 ID: 76) + 已完成执行任务“RemoveDuplicates”的操作。 (任务 ID: 76) +22:23:18.440 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“_CleanGetCurrentAndPriorFileWrites”的操作。: (目标 ID: 120) +22:23:18.440 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets”中的目标“IncrementalClean: (目标 ID: 121)”(目标“Build”依赖于它): + 任务“FindUnderPath” (任务 ID: 77) + 任务参数:Path=D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\ (任务 ID: 77) + 比较路径为“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\”。 (任务 ID: 77) + 已完成执行任务“FindUnderPath”的操作。 (任务 ID: 77) + 任务“FindUnderPath” (任务 ID: 78) + 任务参数:Path=x64\Debug\ (任务 ID: 78) + 比较路径为“x64\Debug\”。 (任务 ID: 78) + 已完成执行任务“FindUnderPath”的操作。 (任务 ID: 78) + 正在使用程序集“Microsoft.Build.Tasks.Core, Version=15.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”中的“Delete”任务。 + 任务“Delete” (任务 ID: 79) + 任务参数:TreatErrorsAsWarnings=True (任务 ID: 79) + 已完成执行任务“Delete”的操作。 (任务 ID: 79) + 任务“RemoveDuplicates” (任务 ID: 80) + 已完成执行任务“RemoveDuplicates”的操作。 (任务 ID: 80) 由于 false 条件,已跳过任务“WriteLinesToFile”;('@(_CleanUnfilteredPriorFileWrites)'!='@(_CleanUniqueRemainingFileWritesAfterIncrementalClean)')计算为(''!='')。 -22:29:46.797 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“IncrementalClean”的操作。: (目标 ID: 123) -22:29:46.797 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“TlogCleanup: (目标 ID: 124)”(目标“Build”依赖于它): +22:23:18.441 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“IncrementalClean”的操作。: (目标 ID: 121) +22:23:18.441 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“TlogCleanup: (目标 ID: 122)”(目标“Build”依赖于它): 正在使用程序集“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.Build.CppTasks.Common.dll”中的“CleanupStaleTlogItems”任务。 - 任务“CleanupStaleTlogItems” (任务 ID: 83) - 任务参数:OutputExtension=obj (任务 ID: 83) - 任务参数:TLogNamePrefix=Cl (任务 ID: 83) + 任务“CleanupStaleTlogItems” (任务 ID: 81) + 任务参数:OutputExtension=obj (任务 ID: 81) + 任务参数:TLogNamePrefix=Cl (任务 ID: 81) 任务参数: Sources= debuger.c @@ -10818,188 +7768,186 @@ WarningLevel=Level3 WholeProgramOptimization=false WinRTNoStdLib=false - XMLDocumentationFileName=x64\Debug\ (任务 ID: 83) - 任务参数:TLogDirectory=x64\Debug\StgSharpC.tlog\ (任务 ID: 83) - 任务参数:ItemOutputMetadataName=ObjectFileName (任务 ID: 83) - 任务参数:TrackFileAccess=True (任务 ID: 83) - 已完成执行任务“CleanupStaleTlogItems”的操作。 (任务 ID: 83) -22:29:46.808 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“TlogCleanup”的操作。: (目标 ID: 124) -22:29:46.808 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“FinalizeBuildStatus: (目标 ID: 125)”(目标“Build”依赖于它): - 任务“Delete” (任务 ID: 84) - 任务参数:Files=x64\Debug\StgSharpC.tlog\unsuccessfulbuild (任务 ID: 84) - 正在删除文件“x64\Debug\StgSharpC.tlog\unsuccessfulbuild”。 (任务 ID: 84) - 已完成执行任务“Delete”的操作。 (任务 ID: 84) - 任务“Touch” (任务 ID: 85) - 任务参数:Files=x64\Debug\StgSharpC.tlog\StgSharpC.lastbuildstate (任务 ID: 85) - 正在对“x64\Debug\StgSharpC.tlog\StgSharpC.lastbuildstate”执行 Touch 任务。 (任务 ID: 85) - 已完成执行任务“Touch”的操作。 (任务 ID: 85) -22:29:46.809 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“FinalizeBuildStatus”的操作。: (目标 ID: 125) + XMLDocumentationFileName=x64\Debug\ (任务 ID: 81) + 任务参数:TLogDirectory=x64\Debug\StgSharpC.tlog\ (任务 ID: 81) + 任务参数:ItemOutputMetadataName=ObjectFileName (任务 ID: 81) + 任务参数:TrackFileAccess=True (任务 ID: 81) + 已完成执行任务“CleanupStaleTlogItems”的操作。 (任务 ID: 81) +22:23:18.447 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“TlogCleanup”的操作。: (目标 ID: 122) +22:23:18.447 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets”中的目标“FinalizeBuildStatus: (目标 ID: 123)”(目标“Build”依赖于它): + 任务“Delete” (任务 ID: 82) + 任务参数:Files=x64\Debug\StgSharpC.tlog\unsuccessfulbuild (任务 ID: 82) + 正在删除文件“x64\Debug\StgSharpC.tlog\unsuccessfulbuild”。 (任务 ID: 82) + 已完成执行任务“Delete”的操作。 (任务 ID: 82) + 任务“Touch” (任务 ID: 83) + 任务参数:Files=x64\Debug\StgSharpC.tlog\StgSharpC.lastbuildstate (任务 ID: 83) + 正在对“x64\Debug\StgSharpC.tlog\StgSharpC.lastbuildstate”执行 Touch 任务。 (任务 ID: 83) + 已完成执行任务“Touch”的操作。 (任务 ID: 83) +22:23:18.448 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“FinalizeBuildStatus”的操作。: (目标 ID: 123) 已跳过目标“_CheckForInvalidConfigurationAndPlatform”。以前的生成已成功。 已跳过目标“_CheckForInvalidConfigurationAndPlatform”。以前的生成已成功。 -22:29:46.809 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.BuildSteps.Targets”中的目标“Build: (目标 ID: 126)”(入口点): -22:29:46.810 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“Build”的操作。: (目标 ID: 126) +22:23:18.448 1>来自项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”的文件“C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.BuildSteps.Targets”中的目标“Build: (目标 ID: 124)”(入口点): +22:23:18.448 1>已完成在项目“StgSharpGraphic.vcxproj”中生成目标“Build”的操作。: (目标 ID: 124) 已跳过目标“_CalculatePostXamarinTelemetry”。以前的生成已成功。 由于条件的计算结果为 false,已跳过目标“_PostXamarinTelemetry”;('$(_PostXamarinTelemetry)' == 'true')的计算结果为('' == 'true')。 -22:29:46.810 1>已完成生成项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”(Build 个目标)的操作。 +22:23:18.448 1>已完成生成项目“D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”(Build 个目标)的操作。 项目评估性能摘要: - 135 毫秒 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj 1 次调用 + 218 毫秒 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj 1 次调用 项目性能摘要: - 4751 毫秒 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj 1 次调用 - 4751 毫秒 Build 1 次调用 + 314 毫秒 D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj 1 次调用 + 314 毫秒 Build 1 次调用 目标性能摘要: - 0 毫秒 AfterBuildCompileEvent 1 次调用 - 0 毫秒 ComputeRCOutputs 1 次调用 - 0 毫秒 BeforeLink 1 次调用 + 0 毫秒 _ResourceCompile 1 次调用 + 0 毫秒 AfterLink 1 次调用 + 0 毫秒 ComputeLinkSwitches 1 次调用 + 0 毫秒 PreLinkEvent 1 次调用 + 0 毫秒 MakeDirsForLink 1 次调用 + 0 毫秒 PrepareResourceNames 1 次调用 + 0 毫秒 CreateCustomManifestResourceNames 1 次调用 + 0 毫秒 ComputeLinkInputsFromProject 1 次调用 + 0 毫秒 ComputeCLGeneratedLinkInputs 1 次调用 + 0 毫秒 ComputeCLOutputs 1 次调用 + 0 毫秒 ComputeManifestGeneratedLinkerInputs 1 次调用 + 0 毫秒 _Link 1 次调用 + 0 毫秒 ComputeRCGeneratedLinkInputs 1 次调用 0 毫秒 ComputeLegacyManifestEmbedding 1 次调用 0 毫秒 BuildLinkTraverse 1 次调用 0 毫秒 BuildCompile 1 次调用 0 毫秒 _BuildCompileAction 1 次调用 - 0 毫秒 _ResourceCompile 1 次调用 + 0 毫秒 AfterBuildCompileEvent 1 次调用 0 毫秒 AfterResourceCompile 1 次调用 - 0 毫秒 ComputeRCGeneratedLinkInputs 1 次调用 - 0 毫秒 CreateSatelliteAssemblies 1 次调用 + 0 毫秒 MakeDirsForResourceCompile 1 次调用 + 0 毫秒 BeforeResourceCompile 1 次调用 0 毫秒 _ClCompile 1 次调用 0 毫秒 AfterClCompile 1 次调用 - 0 毫秒 _Appverifier 1 次调用 - 0 毫秒 _Deploy 1 次调用 - 0 毫秒 SelectClCompile 1 次调用 - 0 毫秒 _PopulateCommonStateForGetCopyToOutputDirectoryItems 1 次调用 - 0 毫秒 GetCopyToOutputDirectoryXamlAppDefs 1 次调用 - 0 毫秒 ComputeCLCompileGeneratedSbrFiles 1 次调用 - 0 毫秒 BeforeResourceCompile 1 次调用 - 0 毫秒 ComputeManifestGeneratedLinkerInputs 1 次调用 - 0 毫秒 ComputeCLOutputs 1 次调用 - 0 毫秒 ComputeCLGeneratedLinkInputs 1 次调用 - 0 毫秒 _XdcMake 1 次调用 - 0 毫秒 ComputeCLCompileGeneratedXDCFiles 1 次调用 - 0 毫秒 ResolvedXDCMake 1 次调用 - 0 毫秒 RegisterOutput 1 次调用 - 0 毫秒 _Manifest 1 次调用 + 0 毫秒 BeforeLink 1 次调用 + 0 毫秒 CheckMixedPerfLibUsageVC 1 次调用 0 毫秒 _ALink 1 次调用 - 0 毫秒 _Link 1 次调用 - 0 毫秒 AfterLink 1 次调用 - 0 毫秒 _BscMake 1 次调用 - 0 毫秒 BuiltProjectOutputGroup 1 次调用 - 0 毫秒 SatelliteDllsProjectOutputGroup 1 次调用 - 0 毫秒 PreLinkEvent 1 次调用 - 0 毫秒 DoLinkOutputFilesMatch 1 次调用 - 0 毫秒 PrepareResourceNames 1 次调用 - 0 毫秒 CreateCustomManifestResourceNames 1 次调用 - 0 毫秒 MakeDirsForFxc 1 次调用 + 0 毫秒 ResolvedXDCMake 1 次调用 + 0 毫秒 AfterBuild 1 次调用 + 0 毫秒 BuildLink 1 次调用 + 0 毫秒 _BuildLinkAction 1 次调用 + 0 毫秒 PostBuildEvent 1 次调用 + 0 毫秒 PrepareForRun 1 次调用 + 0 毫秒 _CheckForCompileOutputs 1 次调用 + 0 毫秒 _CopySourceItemsToOutputDirectory 1 次调用 + 0 毫秒 _GetCopyToOutputDirectoryItemsFromThisProject 1 次调用 + 0 毫秒 GetCopyToOutputDirectoryXamlAppDefs 1 次调用 + 0 毫秒 _PopulateCommonStateForGetCopyToOutputDirectoryItems 1 次调用 + 0 毫秒 _Manifest 1 次调用 + 0 毫秒 _Deploy 1 次调用 + 0 毫秒 CreateSatelliteAssemblies 1 次调用 0 毫秒 _GenerateSatelliteAssemblyInputs 1 次调用 - 0 毫秒 ComputeManifestInputsTargets 1 次调用 - 0 毫秒 ComputeLinkInputsFromProject 1 次调用 + 0 毫秒 ContentFilesProjectOutputGroup 1 次调用 + 0 毫秒 SatelliteDllsProjectOutputGroup 1 次调用 + 0 毫秒 BuiltProjectOutputGroup 1 次调用 + 0 毫秒 _BscMake 1 次调用 + 0 毫秒 MakeDirsForBscMake 1 次调用 + 0 毫秒 ComputeCLCompileGeneratedSbrFiles 1 次调用 + 0 毫秒 _XdcMake 1 次调用 + 0 毫秒 MakeDirsForXdcMake 1 次调用 + 0 毫秒 _Appverifier 1 次调用 + 0 毫秒 SelectClCompile 1 次调用 + 0 毫秒 Build 1 次调用 + 0 毫秒 ResolveReferences 1 次调用 + 0 毫秒 CopyFileToFolders 1 次调用 + 0 毫秒 _SplitProjectReferencesByFileExistence 1 次调用 + 0 毫秒 _AddOutputPathToGlobalPropertiesToRemove 1 次调用 + 0 毫秒 PrepareProjectReferences 1 次调用 + 0 毫秒 ComputeCustomBuildOutput 1 次调用 + 0 毫秒 SelectCustomBuild 1 次调用 + 0 毫秒 _SelectedFiles 1 次调用 + 0 毫秒 ResolveSDKReferences 1 次调用 + 0 毫秒 PreBuildEvent 1 次调用 + 0 毫秒 BeforeBuildGenerateSources 1 次调用 + 0 毫秒 BuildGenerateSourcesTraverse 1 次调用 + 0 毫秒 GetFrameworkPaths 1 次调用 + 0 毫秒 AddExternalIncludDirectoriesToPaths 1 次调用 + 0 毫秒 AfterResolveReferences 1 次调用 + 0 毫秒 _CheckWindowsSDKInstalled 1 次调用 + 0 毫秒 ExpandSDKReferences 1 次调用 + 0 毫秒 ResolveProjectReferences 1 次调用 + 0 毫秒 MakeDirsForMidl 1 次调用 + 0 毫秒 _Xsd 1 次调用 + 0 毫秒 AfterMidl 1 次调用 + 0 毫秒 _PrepareForBuild 1 次调用 + 0 毫秒 _PrepareForReferenceResolution 1 次调用 + 0 毫秒 GetReferencedVCProjectsInfo 1 次调用 0 毫秒 FindReferenceAssembliesForReferences 1 次调用 0 毫秒 ComputeCLInputPDBName 1 次调用 - 0 毫秒 GetReferencedVCProjectsInfo 1 次调用 - 0 毫秒 BuildCompileTraverse 1 次调用 0 毫秒 BeforeClCompile 1 次调用 - 0 毫秒 ExpandSDKReferences 1 次调用 - 0 毫秒 ResolveSDKReferences 1 次调用 - 0 毫秒 CopyFilesToOutputDirectory 1 次调用 - 0 毫秒 SetCABuildNativeEnvironmentVariables 1 次调用 - 0 毫秒 PrepareForRun 1 次调用 - 0 毫秒 GetResolvedWinMD 1 次调用 - 0 毫秒 PostBuildEvent 1 次调用 - 0 毫秒 GetFrameworkPaths 1 次调用 - 0 毫秒 _BuildLinkAction 1 次调用 - 0 毫秒 PrepareProjectReferences 1 次调用 - 0 毫秒 BuildLink 1 次调用 - 0 毫秒 _AddOutputPathToGlobalPropertiesToRemove 1 次调用 - 0 毫秒 _SplitProjectReferencesByFileExistence 1 次调用 - 0 毫秒 AfterBuild 1 次调用 - 0 毫秒 IgnoreJavaScriptOutputAssembly 1 次调用 + 0 毫秒 ComputeMIDLGeneratedCompileInputs 1 次调用 + 0 毫秒 BuildCompileTraverse 1 次调用 0 毫秒 BeforeResolveReferences 1 次调用 - 0 毫秒 _PrepareForReferenceResolution 1 次调用 - 0 毫秒 IncrementalClean 1 次调用 - 0 毫秒 AfterResolveReferences 1 次调用 - 0 毫秒 ResolveReferences 1 次调用 - 0 毫秒 ResolveAssemblyReferences 1 次调用 - 0 毫秒 BuildGenerateSourcesTraverse 1 次调用 0 毫秒 BuildGenerateSources 1 次调用 0 毫秒 _BuildGenerateSourcesAction 1 次调用 0 毫秒 AfterBuildGenerateSourcesEvent 1 次调用 0 毫秒 AfterBuildGenerateSources 1 次调用 0 毫秒 _Midl 1 次调用 - 0 毫秒 AfterMidl 1 次调用 - 0 毫秒 ComputeMIDLGeneratedCompileInputs 1 次调用 - 0 毫秒 _CheckForCompileOutputs 1 次调用 - 0 毫秒 _Xsd 1 次调用 - 0 毫秒 MakeDirsForBscMake 1 次调用 - 0 毫秒 _GetCopyToOutputDirectoryItemsFromThisProject 1 次调用 - 0 毫秒 _CopySourceItemsToOutputDirectory 1 次调用 - 0 毫秒 SelectCustomBuild 1 次调用 - 0 毫秒 _SelectedFiles 1 次调用 - 0 毫秒 PreBuildEvent 1 次调用 - 0 毫秒 BeforeBuildGenerateSources 1 次调用 - 1 毫秒 GetReferenceAssemblyPaths 1 次调用 - 1 毫秒 ComputeCustomBuildOutput 1 次调用 - 1 毫秒 MakeDirsForMidl 1 次调用 - 1 毫秒 WarnCompileDuplicatedFilename 1 次调用 - 1 毫秒 _CalculatePostXamarinTelemetry 1 次调用 - 1 毫秒 MakeDirsForCl 1 次调用 + 0 毫秒 IgnoreJavaScriptOutputAssembly 1 次调用 + 1 毫秒 SetCABuildNativeEnvironmentVariables 1 次调用 1 毫秒 SetBuildDefaultEnvironmentVariables 1 次调用 - 1 毫秒 MakeDirsForLink 1 次调用 - 1 毫秒 _PrepareForBuild 1 次调用 - 1 毫秒 FinalizeBuildStatus 1 次调用 - 1 毫秒 MakeDirsForXdcMake 1 次调用 - 1 毫秒 Build 1 次调用 - 1 毫秒 MakeDirsForResourceCompile 1 次调用 - 1 毫秒 ComputeLinkSwitches 1 次调用 - 1 毫秒 SplitResourcesByCulture 1 次调用 - 1 毫秒 AssignTargetPaths 1 次调用 - 1 毫秒 ContentFilesProjectOutputGroup 1 次调用 + 1 毫秒 ComputeManifestInputsTargets 1 次调用 1 毫秒 ComputeStdModulesCompileInputs 1 次调用 - 1 毫秒 _GetCopyToOutputDirectoryItemsFromTransitiveProjectReferences 1 次调用 - 1 毫秒 CopyFileToFolders 1 次调用 - 1 毫秒 GetCopyToOutputDirectoryItems 1 次调用 + 1 毫秒 WarnCompileDuplicatedFilename 1 次调用 + 1 毫秒 DoLinkOutputFilesMatch 1 次调用 + 1 毫秒 MakeDirsForCl 1 次调用 + 1 毫秒 ComputeRCOutputs 1 次调用 + 1 毫秒 ResolveAssemblyReferences 1 次调用 + 1 毫秒 SplitResourcesByCulture 1 次调用 + 1 毫秒 MakeDirsForFxc 1 次调用 + 1 毫秒 AssignProjectConfiguration 1 次调用 + 1 毫秒 FinalizeBuildStatus 1 次调用 1 毫秒 ComputeReferenceCLInput 1 次调用 - 1 毫秒 AddExternalIncludDirectoriesToPaths 1 次调用 - 1 毫秒 CheckMixedPerfLibUsageVC 1 次调用 - 2 毫秒 _CheckForInvalidConfigurationAndPlatform 1 次调用 - 2 毫秒 ComputeLinkImportLibraryOutputsForClean 1 次调用 - 2 毫秒 AssignProjectConfiguration 1 次调用 - 2 毫秒 FixupCLCompileOptions 1 次调用 - 3 毫秒 _GetProjectReferenceTargetFrameworkProperties 1 次调用 - 3 毫秒 InitializeBuildStatus 1 次调用 - 3 毫秒 _CheckWindowsSDKInstalled 1 次调用 + 1 毫秒 AssignTargetPaths 1 次调用 + 1 毫秒 ComputeCLCompileGeneratedXDCFiles 1 次调用 + 1 毫秒 GetResolvedWinMD 1 次调用 + 1 毫秒 _GetCopyToOutputDirectoryItemsFromTransitiveProjectReferences 1 次调用 + 1 毫秒 IncrementalClean 1 次调用 + 2 毫秒 _CalculatePostXamarinTelemetry 1 次调用 + 2 毫秒 GetCopyToOutputDirectoryItems 1 次调用 + 2 毫秒 GetReferenceAssemblyPaths 1 次调用 + 3 毫秒 FixupCLCompileOptions 1 次调用 3 毫秒 _CleanGetCurrentAndPriorFileWrites 1 次调用 + 4 毫秒 CopyFilesToOutputDirectory 1 次调用 + 6 毫秒 TlogCleanup 1 次调用 8 毫秒 SetTelemetryEnvironmentVariables 1 次调用 - 8 毫秒 CustomBuild 1 次调用 - 11 毫秒 TlogCleanup 1 次调用 - 12 毫秒 ResolveProjectReferences 1 次调用 - 23 毫秒 CreateRecipeFile 1 次调用 - 23 毫秒 PrepareForBuild 1 次调用 - 1265 毫秒 Link 1 次调用 - 3353 毫秒 ClCompile 1 次调用 + 9 毫秒 InitializeBuildStatus 1 次调用 + 9 毫秒 CustomBuild 1 次调用 + 13 毫秒 _CheckForInvalidConfigurationAndPlatform 1 次调用 + 24 毫秒 CreateRecipeFile 1 次调用 + 25 毫秒 PrepareForBuild 1 次调用 + 37 毫秒 _GetProjectReferenceTargetFrameworkProperties 1 次调用 + 37 毫秒 Link 1 次调用 + 106 毫秒 ClCompile 1 次调用 任务性能摘要: - 0 毫秒 AssignTargetPath 7 次调用 0 毫秒 MSBuild 1 次调用 - 0 毫秒 ConvertToAbsolutePath 1 次调用 + 0 毫秒 SetRidAgnosticValueForProjects 1 次调用 0 毫秒 RemoveDuplicates 2 次调用 - 1 毫秒 FindUnderPath 5 次调用 - 1 毫秒 Delete 3 次调用 + 0 毫秒 FindUnderPath 5 次调用 + 0 毫秒 AssignCulture 1 次调用 + 1 毫秒 WriteLinesToFile 1 次调用 1 毫秒 AssignProjectConfiguration 1 次调用 - 1 毫秒 ReadLinesFromFile 2 次调用 - 1 毫秒 AssignCulture 1 次调用 - 1 毫秒 Touch 2 次调用 + 1 毫秒 AssignTargetPath 7 次调用 1 毫秒 CallTarget 2 次调用 - 1 毫秒 SetRidAgnosticValueForProjects 1 次调用 - 1 毫秒 Message 23 次调用 - 3 毫秒 SetEnv 11 次调用 - 3 毫秒 MakeDir 10 次调用 + 1 毫秒 ConvertToAbsolutePath 1 次调用 + 2 毫秒 ReadLinesFromFile 2 次调用 + 2 毫秒 Delete 2 次调用 3 毫秒 CheckVCToolsetVersion 1 次调用 - 3 毫秒 WriteLinesToFile 2 次调用 + 3 毫秒 MakeDir 10 次调用 + 4 毫秒 SetEnv 11 次调用 + 5 毫秒 Message 23 次调用 + 6 毫秒 CleanupStaleTlogItems 1 次调用 + 6 毫秒 Touch 2 次调用 9 毫秒 GetOutOfDateItems 3 次调用 - 10 毫秒 CleanupStaleTlogItems 1 次调用 - 14 毫秒 VCMessage 2 次调用 + 15 毫秒 VCMessage 2 次调用 23 毫秒 GenerateDesktopDeployRecipe 1 次调用 - 1262 毫秒 Link 1 次调用 - 3350 毫秒 CL 1 次调用 + 34 毫秒 Link 1 次调用 + 98 毫秒 CL 1 次调用 已成功生成。 @@ -11007,66 +7955,7 @@ (PrepareForBuild 目标) -> C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets(531,5): warning MSB8028: 中间目录(x64\Debug\)包含从另一个项目(StgSharpGraphic.vcxproj)共享的文件。 这会导致错误的清除和重新生成行为。 - - “D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”(Build 目标) (1) -> - (ClCompile 目标) -> - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(10,32): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(10,57): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(11,32): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(11,57): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(19,32): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(19,57): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(20,32): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(20,57): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(21,32): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(21,57): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(22,32): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(22,57): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(33,32): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(33,57): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(34,32): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(34,57): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(35,32): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(35,57): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(36,32): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(36,57): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(48,18): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(49,18): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(50,18): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(51,18): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\mat4.c(59,32): warning C4133: “函数”: 从“__m128 *”到“const float *”的类型不兼容 - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpC.c(44,65): warning C4047: “函数”:“GLchar *”与“char *[512]”的间接级别不同 - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpC.c(44,65): warning C4024: “通过指针的函数”: 形参和实参 4 的类型不同 - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpC.c(66,69): warning C4047: “函数”:“GLchar *”与“char *[512]”的间接级别不同 - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpC.c(66,69): warning C4024: “通过指针的函数”: 形参和实参 4 的类型不同 - D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpC.c(88,5): warning C4047: “return”:“char *”与“char *(*)[512]”的间接级别不同 - - - “D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpGraphic.vcxproj”(Build 目标) (1) -> - (Link 目标) -> - glfw3.lib(init.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(init.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - glfw3.lib(window.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(window.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - glfw3.lib(context.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(context.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - glfw3.lib(input.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(input.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - glfw3.lib(win32_time.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(win32_time.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - glfw3.lib(win32_thread.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(win32_thread.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - glfw3.lib(platform.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(platform.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - glfw3.lib(monitor.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(monitor.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - glfw3.lib(vulkan.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(vulkan.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - glfw3.lib(win32_init.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(win32_init.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - glfw3.lib(null_init.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(null_init.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - glfw3.lib(win32_module.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(win32_module.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - glfw3.lib(win32_monitor.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(win32_monitor.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - glfw3.lib(win32_window.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(win32_window.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - glfw3.lib(win32_joystick.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(win32_joystick.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - glfw3.lib(wgl_context.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(wgl_context.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - glfw3.lib(egl_context.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(egl_context.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - glfw3.lib(osmesa_context.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(osmesa_context.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - glfw3.lib(null_monitor.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(null_monitor.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - glfw3.lib(null_window.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(null_window.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - glfw3.lib(null_joystick.obj) : warning LNK4099: 未找到 PDB“”(使用“glfw3.lib(null_joystick.obj)”或在“”中寻找);正在链接对象,如同没有调试信息一样 - - 52 个警告 + 1 个警告 0 个错误 -已用时间 00:00:04.74 +已用时间 00:00:00.31 diff --git a/源代码/StgSharpC/x64/Debug/debuger.obj b/源代码/StgSharpC/x64/Debug/debuger.obj index c57040eb..b468ed09 100644 Binary files a/源代码/StgSharpC/x64/Debug/debuger.obj and b/源代码/StgSharpC/x64/Debug/debuger.obj differ diff --git a/源代码/StgSharpC/x64/Debug/dllmain.obj b/源代码/StgSharpC/x64/Debug/dllmain.obj index 08aff7a5..8ddfe9ef 100644 Binary files a/源代码/StgSharpC/x64/Debug/dllmain.obj and b/源代码/StgSharpC/x64/Debug/dllmain.obj differ diff --git a/源代码/StgSharpC/x64/Debug/glsc2.obj b/源代码/StgSharpC/x64/Debug/glsc2.obj index 3d0859f8..fa856900 100644 Binary files a/源代码/StgSharpC/x64/Debug/glsc2.obj and b/源代码/StgSharpC/x64/Debug/glsc2.obj differ diff --git a/源代码/StgSharpC/x64/Debug/linear.obj b/源代码/StgSharpC/x64/Debug/linear.obj index 1973656e..0c52125d 100644 Binary files a/源代码/StgSharpC/x64/Debug/linear.obj and b/源代码/StgSharpC/x64/Debug/linear.obj differ diff --git a/源代码/StgSharpC/x64/Debug/mat2.obj b/源代码/StgSharpC/x64/Debug/mat2.obj index 0fc41a56..d2774fff 100644 Binary files a/源代码/StgSharpC/x64/Debug/mat2.obj and b/源代码/StgSharpC/x64/Debug/mat2.obj differ diff --git a/源代码/StgSharpC/x64/Debug/mat3.obj b/源代码/StgSharpC/x64/Debug/mat3.obj index 3b87b6a1..3d709df6 100644 Binary files a/源代码/StgSharpC/x64/Debug/mat3.obj and b/源代码/StgSharpC/x64/Debug/mat3.obj differ diff --git a/源代码/StgSharpC/x64/Debug/mat4.obj b/源代码/StgSharpC/x64/Debug/mat4.obj index 094062b6..74bf8a07 100644 Binary files a/源代码/StgSharpC/x64/Debug/mat4.obj and b/源代码/StgSharpC/x64/Debug/mat4.obj differ diff --git a/源代码/StgSharpC/x64/Debug/stb_image.cod b/源代码/StgSharpC/x64/Debug/stb_image.cod index 9adc49ff..866ffdda 100644 --- a/源代码/StgSharpC/x64/Debug/stb_image.cod +++ b/源代码/StgSharpC/x64/Debug/stb_image.cod @@ -667,6 +667,7 @@ CONST ENDS PUBLIC stbi_load_from_memory PUBLIC stbi_load_from_callbacks PUBLIC stbi_load +PUBLIC stbi_load_to_target PUBLIC stbi_load_from_file PUBLIC stbi_load_gif_from_memory PUBLIC stbi_load_16_from_memory @@ -714,6 +715,7 @@ PUBLIC ??_C@_1KA@LPJPGBDN@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$ PUBLIC ??_C@_1GM@LFNCFCEN@?$AAr?$AAi?$AA?4?$AAb?$AAi?$AAt?$AAs?$AA_?$AAp?$AAe?$AAr?$AA_?$AAc?$AAh?$AAa@ ; `string' PUBLIC ??_C@_02JDPG@rb@ ; `string' PUBLIC ??_C@_0M@JPDHFAGK@can?8t?5fopen@ ; `string' +PUBLIC ??_C@_0CB@DDANHPKI@can?8t?5fopen?0?5Unable?5to?5open?5fil@ ; `string' PUBLIC ??_C@_1DO@MABJBNAJ@?$AAr?$AAe?$AAq?$AA_?$AAc?$AAo?$AAm?$AAp?$AA?5?$AA?$DO?$AA?$DN?$AA?5?$AA1?$AA?5?$AA?$CG@ ; `string' PUBLIC ??_C@_13COJANIEC@?$AA0@ ; `string' PUBLIC ??_C@_0M@MHDBFHD@unsupported@ ; `string' @@ -930,6 +932,12 @@ $pdata$stbi_load DD imagerel $LN6 pdata ENDS ; COMDAT pdata pdata SEGMENT +$pdata$stbi_load_to_target DD imagerel $LN4 + DD imagerel $LN4+158 + DD imagerel $unwind$stbi_load_to_target +pdata ENDS +; COMDAT pdata +pdata SEGMENT $pdata$stbi_load_from_file DD imagerel $LN4 DD imagerel $LN4+249 DD imagerel $unwind$stbi_load_from_file @@ -2862,6 +2870,11 @@ CONST SEGMENT DB '_', 00H, 'c', 00H, 'o', 00H, 'm', 00H, 'p', 00H, ' ', 00H, '<' DB 00H, '=', 00H, ' ', 00H, '4', 00H, 00H, 00H ; `string' CONST ENDS +; COMDAT ??_C@_0CB@DDANHPKI@can?8t?5fopen?0?5Unable?5to?5open?5fil@ +CONST SEGMENT +??_C@_0CB@DDANHPKI@can?8t?5fopen?0?5Unable?5to?5open?5fil@ DB 'can''t fop' + DB 'en, Unable to open file', 00H ; `string' +CONST ENDS ; COMDAT ??_C@_0M@JPDHFAGK@can?8t?5fopen@ CONST SEGMENT ??_C@_0M@JPDHFAGK@can?8t?5fopen@ DB 'can''t fopen', 00H ; `string' @@ -5824,6 +5837,13 @@ stbi_load_from_file$rtcFrameData DD 01H CONST ENDS ; COMDAT xdata xdata SEGMENT +$unwind$stbi_load_to_target DD 035052201H + DD 011d3322H + DD 070160027H + DD 05015H +xdata ENDS +; COMDAT xdata +xdata SEGMENT $unwind$stbi_load DD 035052201H DD 011d3322H DD 070160027H @@ -5897,7 +5917,7 @@ _TEXT SEGMENT s$ = 224 stbi__is_16_main PROC ; COMDAT -; 7243 : { +; 7256 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -5909,8 +5929,8 @@ stbi__is_16_main PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 7244 : #ifndef STBI_NO_PNG -; 7245 : if (stbi__png_is16(s)) return 1; +; 7257 : #ifndef STBI_NO_PNG +; 7258 : if (stbi__png_is16(s)) return 1; 0001f 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR s$[rbp] @@ -5921,10 +5941,10 @@ stbi__is_16_main PROC ; COMDAT 00034 eb 30 jmp SHORT $LN1@stbi__is_1 $LN2@stbi__is_1: -; 7246 : #endif -; 7247 : -; 7248 : #ifndef STBI_NO_PSD -; 7249 : if (stbi__psd_is16(s)) return 1; +; 7259 : #endif +; 7260 : +; 7261 : #ifndef STBI_NO_PSD +; 7262 : if (stbi__psd_is16(s)) return 1; 00036 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR s$[rbp] @@ -5935,10 +5955,10 @@ $LN2@stbi__is_1: 0004b eb 19 jmp SHORT $LN1@stbi__is_1 $LN3@stbi__is_1: -; 7250 : #endif -; 7251 : -; 7252 : #ifndef STBI_NO_PNM -; 7253 : if (stbi__pnm_is16(s)) return 1; +; 7263 : #endif +; 7264 : +; 7265 : #ifndef STBI_NO_PNM +; 7266 : if (stbi__pnm_is16(s)) return 1; 0004d 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR s$[rbp] @@ -5949,13 +5969,13 @@ $LN3@stbi__is_1: 00062 eb 02 jmp SHORT $LN1@stbi__is_1 $LN4@stbi__is_1: -; 7254 : #endif -; 7255 : return 0; +; 7267 : #endif +; 7268 : return 0; 00064 33 c0 xor eax, eax $LN1@stbi__is_1: -; 7256 : } +; 7269 : } 00066 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] @@ -5974,7 +5994,7 @@ y$ = 240 comp$ = 248 stbi__info_main PROC ; COMDAT -; 7201 : { +; 7214 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -5989,8 +6009,8 @@ stbi__info_main PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 7202 : #ifndef STBI_NO_JPEG -; 7203 : if (stbi__jpeg_info(s, x, y, comp)) return 1; +; 7215 : #ifndef STBI_NO_JPEG +; 7216 : if (stbi__jpeg_info(s, x, y, comp)) return 1; 0002e 4c 8b 8d f8 00 00 00 mov r9, QWORD PTR comp$[rbp] @@ -6007,10 +6027,10 @@ stbi__info_main PROC ; COMDAT 00058 e9 7b 01 00 00 jmp $LN1@stbi__info $LN2@stbi__info: -; 7204 : #endif -; 7205 : -; 7206 : #ifndef STBI_NO_PNG -; 7207 : if (stbi__png_info(s, x, y, comp)) return 1; +; 7217 : #endif +; 7218 : +; 7219 : #ifndef STBI_NO_PNG +; 7220 : if (stbi__png_info(s, x, y, comp)) return 1; 0005d 4c 8b 8d f8 00 00 00 mov r9, QWORD PTR comp$[rbp] @@ -6027,10 +6047,10 @@ $LN2@stbi__info: 00087 e9 4c 01 00 00 jmp $LN1@stbi__info $LN3@stbi__info: -; 7208 : #endif -; 7209 : -; 7210 : #ifndef STBI_NO_GIF -; 7211 : if (stbi__gif_info(s, x, y, comp)) return 1; +; 7221 : #endif +; 7222 : +; 7223 : #ifndef STBI_NO_GIF +; 7224 : if (stbi__gif_info(s, x, y, comp)) return 1; 0008c 4c 8b 8d f8 00 00 00 mov r9, QWORD PTR comp$[rbp] @@ -6047,10 +6067,10 @@ $LN3@stbi__info: 000b6 e9 1d 01 00 00 jmp $LN1@stbi__info $LN4@stbi__info: -; 7212 : #endif -; 7213 : -; 7214 : #ifndef STBI_NO_BMP -; 7215 : if (stbi__bmp_info(s, x, y, comp)) return 1; +; 7225 : #endif +; 7226 : +; 7227 : #ifndef STBI_NO_BMP +; 7228 : if (stbi__bmp_info(s, x, y, comp)) return 1; 000bb 4c 8b 8d f8 00 00 00 mov r9, QWORD PTR comp$[rbp] @@ -6067,10 +6087,10 @@ $LN4@stbi__info: 000e5 e9 ee 00 00 00 jmp $LN1@stbi__info $LN5@stbi__info: -; 7216 : #endif -; 7217 : -; 7218 : #ifndef STBI_NO_PSD -; 7219 : if (stbi__psd_info(s, x, y, comp)) return 1; +; 7229 : #endif +; 7230 : +; 7231 : #ifndef STBI_NO_PSD +; 7232 : if (stbi__psd_info(s, x, y, comp)) return 1; 000ea 4c 8b 8d f8 00 00 00 mov r9, QWORD PTR comp$[rbp] @@ -6087,10 +6107,10 @@ $LN5@stbi__info: 00114 e9 bf 00 00 00 jmp $LN1@stbi__info $LN6@stbi__info: -; 7220 : #endif -; 7221 : -; 7222 : #ifndef STBI_NO_PIC -; 7223 : if (stbi__pic_info(s, x, y, comp)) return 1; +; 7233 : #endif +; 7234 : +; 7235 : #ifndef STBI_NO_PIC +; 7236 : if (stbi__pic_info(s, x, y, comp)) return 1; 00119 4c 8b 8d f8 00 00 00 mov r9, QWORD PTR comp$[rbp] @@ -6107,10 +6127,10 @@ $LN6@stbi__info: 00143 e9 90 00 00 00 jmp $LN1@stbi__info $LN7@stbi__info: -; 7224 : #endif -; 7225 : -; 7226 : #ifndef STBI_NO_PNM -; 7227 : if (stbi__pnm_info(s, x, y, comp)) return 1; +; 7237 : #endif +; 7238 : +; 7239 : #ifndef STBI_NO_PNM +; 7240 : if (stbi__pnm_info(s, x, y, comp)) return 1; 00148 4c 8b 8d f8 00 00 00 mov r9, QWORD PTR comp$[rbp] @@ -6127,10 +6147,10 @@ $LN7@stbi__info: 00172 eb 64 jmp SHORT $LN1@stbi__info $LN8@stbi__info: -; 7228 : #endif -; 7229 : -; 7230 : #ifndef STBI_NO_HDR -; 7231 : if (stbi__hdr_info(s, x, y, comp)) return 1; +; 7241 : #endif +; 7242 : +; 7243 : #ifndef STBI_NO_HDR +; 7244 : if (stbi__hdr_info(s, x, y, comp)) return 1; 00174 4c 8b 8d f8 00 00 00 mov r9, QWORD PTR comp$[rbp] @@ -6147,11 +6167,11 @@ $LN8@stbi__info: 0019e eb 38 jmp SHORT $LN1@stbi__info $LN9@stbi__info: -; 7232 : #endif -; 7233 : -; 7234 : // test tga last because it's a crappy test! -; 7235 : #ifndef STBI_NO_TGA -; 7236 : if (stbi__tga_info(s, x, y, comp)) +; 7245 : #endif +; 7246 : +; 7247 : // test tga last because it's a crappy test! +; 7248 : #ifndef STBI_NO_TGA +; 7249 : if (stbi__tga_info(s, x, y, comp)) 001a0 4c 8b 8d f8 00 00 00 mov r9, QWORD PTR comp$[rbp] @@ -6165,21 +6185,21 @@ $LN9@stbi__info: 001c1 85 c0 test eax, eax 001c3 74 07 je SHORT $LN10@stbi__info -; 7237 : return 1; +; 7250 : return 1; 001c5 b8 01 00 00 00 mov eax, 1 001ca eb 0c jmp SHORT $LN1@stbi__info $LN10@stbi__info: -; 7238 : #endif -; 7239 : return stbi__err("unknown image type", "Image not of any known type, or corrupt"); +; 7251 : #endif +; 7252 : return stbi__err("unknown image type", "Image not of any known type, or corrupt"); 001cc 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0BD@CBEDEJPH@unknown?5image?5type@ 001d3 e8 00 00 00 00 call stbi__err $LN1@stbi__info: -; 7240 : } +; 7253 : } 001d8 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] @@ -6197,7 +6217,7 @@ s$ = 256 c$ = 264 stbi__pnm_getinteger PROC ; COMDAT -; 7136 : { +; 7149 : { 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx @@ -6210,14 +6230,14 @@ stbi__pnm_getinteger PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 7137 : int value = 0; +; 7150 : int value = 0; 00024 c7 45 04 00 00 00 00 mov DWORD PTR value$[rbp], 0 $LN2@stbi__pnm_: -; 7138 : -; 7139 : while (!stbi__at_eof(s) && stbi__pnm_isdigit(*c)) { +; 7151 : +; 7152 : while (!stbi__at_eof(s) && stbi__pnm_isdigit(*c)) { 0002b 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -6231,7 +6251,7 @@ $LN2@stbi__pnm_: 0004a 85 c0 test eax, eax 0004c 74 5b je SHORT $LN3@stbi__pnm_ -; 7140 : value = value * 10 + (*c - '0'); +; 7153 : value = value * 10 + (*c - '0'); 0004e 6b 45 04 0a imul eax, DWORD PTR value$[rbp], 10 00052 48 8b 8d 08 01 @@ -6240,7 +6260,7 @@ $LN2@stbi__pnm_: 0005c 8d 44 08 d0 lea eax, DWORD PTR [rax+rcx-48] 00060 89 45 04 mov DWORD PTR value$[rbp], eax -; 7141 : *c = (char)stbi__get8(s); +; 7154 : *c = (char)stbi__get8(s); 00063 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -6249,7 +6269,7 @@ $LN2@stbi__pnm_: 00 00 mov rcx, QWORD PTR c$[rbp] 00076 88 01 mov BYTE PTR [rcx], al -; 7142 : if ((value > 214748364) || (value == 214748364 && *c > '7')) +; 7155 : if ((value > 214748364) || (value == 214748364 && *c > '7')) 00078 81 7d 04 cc cc cc 0c cmp DWORD PTR value$[rbp], 214748364 ; 0cccccccH @@ -6264,7 +6284,7 @@ $LN2@stbi__pnm_: 00097 7e 0e jle SHORT $LN4@stbi__pnm_ $LN5@stbi__pnm_: -; 7143 : return stbi__err("integer parse overflow", "Parsing an integer in the PPM header overflowed a 32-bit int"); +; 7156 : return stbi__err("integer parse overflow", "Parsing an integer in the PPM header overflowed a 32-bit int"); 00099 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0BH@OBINMOBC@integer?5parse?5overflow@ @@ -6272,18 +6292,18 @@ $LN5@stbi__pnm_: 000a5 eb 05 jmp SHORT $LN1@stbi__pnm_ $LN4@stbi__pnm_: -; 7144 : } +; 7157 : } 000a7 eb 82 jmp SHORT $LN2@stbi__pnm_ $LN3@stbi__pnm_: -; 7145 : -; 7146 : return value; +; 7158 : +; 7159 : return value; 000a9 8b 45 04 mov eax, DWORD PTR value$[rbp] $LN1@stbi__pnm_: -; 7147 : } +; 7160 : } 000ac 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -6300,7 +6320,7 @@ tv68 = 192 c$ = 240 stbi__pnm_isdigit PROC ; COMDAT -; 7131 : { +; 7144 : { 00000 88 4c 24 08 mov BYTE PTR [rsp+8], cl 00004 55 push rbp @@ -6312,7 +6332,7 @@ stbi__pnm_isdigit PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00019 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 7132 : return c >= '0' && c <= '9'; +; 7145 : return c >= '0' && c <= '9'; 0001e 0f be 85 f0 00 00 00 movsx eax, BYTE PTR c$[rbp] @@ -6332,7 +6352,7 @@ $LN4@stbi__pnm_: 0004c 8b 85 c0 00 00 00 mov eax, DWORD PTR tv68[rbp] -; 7133 : } +; 7146 : } 00052 48 8d a5 d8 00 00 00 lea rsp, QWORD PTR [rbp+216] @@ -6349,7 +6369,7 @@ s$ = 224 c$ = 232 stbi__pnm_skip_whitespace PROC ; COMDAT -; 7117 : { +; 7130 : { 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx @@ -6364,8 +6384,8 @@ stbi__pnm_skip_whitespace PROC ; COMDAT $LN2@stbi__pnm_: $LN5@stbi__pnm_: -; 7118 : for (;;) { -; 7119 : while (!stbi__at_eof(s) && stbi__pnm_isspace(*c)) +; 7131 : for (;;) { +; 7132 : while (!stbi__at_eof(s) && stbi__pnm_isspace(*c)) 00024 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR s$[rbp] @@ -6379,7 +6399,7 @@ $LN5@stbi__pnm_: 00043 85 c0 test eax, eax 00045 74 17 je SHORT $LN6@stbi__pnm_ -; 7120 : *c = (char)stbi__get8(s); +; 7133 : *c = (char)stbi__get8(s); 00047 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR s$[rbp] @@ -6390,8 +6410,8 @@ $LN5@stbi__pnm_: 0005c eb c6 jmp SHORT $LN5@stbi__pnm_ $LN6@stbi__pnm_: -; 7121 : -; 7122 : if (stbi__at_eof(s) || *c != '#') +; 7134 : +; 7135 : if (stbi__at_eof(s) || *c != '#') 0005e 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR s$[rbp] @@ -6405,14 +6425,14 @@ $LN6@stbi__pnm_: 0007b 74 02 je SHORT $LN9@stbi__pnm_ $LN10@stbi__pnm_: -; 7123 : break; +; 7136 : break; 0007d eb 4a jmp SHORT $LN3@stbi__pnm_ $LN9@stbi__pnm_: $LN7@stbi__pnm_: -; 7124 : -; 7125 : while (!stbi__at_eof(s) && *c != '\n' && *c != '\r') +; 7137 : +; 7138 : while (!stbi__at_eof(s) && *c != '\n' && *c != '\r') 0007f 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR s$[rbp] @@ -6430,7 +6450,7 @@ $LN7@stbi__pnm_: 000a8 83 f8 0d cmp eax, 13 000ab 74 17 je SHORT $LN8@stbi__pnm_ -; 7126 : *c = (char)stbi__get8(s); +; 7139 : *c = (char)stbi__get8(s); 000ad 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR s$[rbp] @@ -6441,12 +6461,12 @@ $LN7@stbi__pnm_: 000c2 eb bb jmp SHORT $LN7@stbi__pnm_ $LN8@stbi__pnm_: -; 7127 : } +; 7140 : } 000c4 e9 5b ff ff ff jmp $LN2@stbi__pnm_ $LN3@stbi__pnm_: -; 7128 : } +; 7141 : } 000c9 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] @@ -6463,7 +6483,7 @@ tv76 = 192 c$ = 240 stbi__pnm_isspace PROC ; COMDAT -; 7112 : { +; 7125 : { 00000 88 4c 24 08 mov BYTE PTR [rsp+8], cl 00004 55 push rbp @@ -6475,7 +6495,7 @@ stbi__pnm_isspace PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00019 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 7113 : return c == ' ' || c == '\t' || c == '\n' || c == '\v' || c == '\f' || c == '\r'; +; 7126 : return c == ' ' || c == '\t' || c == '\n' || c == '\v' || c == '\f' || c == '\r'; 0001e 0f be 85 f0 00 00 00 movsx eax, BYTE PTR c$[rbp] @@ -6511,7 +6531,7 @@ $LN4@stbi__pnm_: 0007c 8b 85 c0 00 00 00 mov eax, DWORD PTR tv76[rbp] -; 7114 : } +; 7127 : } 00082 48 8d a5 d8 00 00 00 lea rsp, QWORD PTR [rbp+216] @@ -6531,7 +6551,7 @@ input$ = 264 req_comp$ = 272 stbi__hdr_convert PROC ; COMDAT -; 6696 : { +; 6709 : { 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx @@ -6545,7 +6565,7 @@ stbi__hdr_convert PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00024 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 6697 : if (input[3] != 0) { +; 6710 : if (input[3] != 0) { 00029 b8 01 00 00 00 mov eax, 1 0002e 48 6b c0 03 imul rax, rax, 3 @@ -6556,9 +6576,9 @@ stbi__hdr_convert PROC ; COMDAT 0003f 0f 84 8d 01 00 00 je $LN4@stbi__hdr_ -; 6698 : float f1; -; 6699 : // Exponent -; 6700 : f1 = (float)ldexp(1.0f, input[3] - (int)(128 + 8)); +; 6711 : float f1; +; 6712 : // Exponent +; 6713 : f1 = (float)ldexp(1.0f, input[3] - (int)(128 + 8)); 00045 b8 01 00 00 00 mov eax, 1 0004a 48 6b c0 03 imul rax, rax, 3 @@ -6574,13 +6594,13 @@ stbi__hdr_convert PROC ; COMDAT 0006e f2 0f 5a c0 cvtsd2ss xmm0, xmm0 00072 f3 0f 11 45 04 movss DWORD PTR f1$1[rbp], xmm0 -; 6701 : if (req_comp <= 2) +; 6714 : if (req_comp <= 2) 00077 83 bd 10 01 00 00 02 cmp DWORD PTR req_comp$[rbp], 2 0007e 7f 6b jg SHORT $LN6@stbi__hdr_ -; 6702 : output[0] = (input[0] + input[1] + input[2]) * f1 / 3; +; 6715 : output[0] = (input[0] + input[1] + input[2]) * f1 / 3; 00080 b8 01 00 00 00 mov eax, 1 00085 48 6b c0 00 imul rax, rax, 0 @@ -6611,8 +6631,8 @@ stbi__hdr_convert PROC ; COMDAT 000e6 e9 96 00 00 00 jmp $LN7@stbi__hdr_ $LN6@stbi__hdr_: -; 6703 : else { -; 6704 : output[0] = input[0] * f1; +; 6716 : else { +; 6717 : output[0] = input[0] * f1; 000eb b8 01 00 00 00 mov eax, 1 000f0 48 6b c0 00 imul rax, rax, 0 @@ -6627,7 +6647,7 @@ $LN6@stbi__hdr_: 00 00 mov rcx, QWORD PTR output$[rbp] 00118 f3 0f 11 04 01 movss DWORD PTR [rcx+rax], xmm0 -; 6705 : output[1] = input[1] * f1; +; 6718 : output[1] = input[1] * f1; 0011d b8 01 00 00 00 mov eax, 1 00122 48 6b c0 01 imul rax, rax, 1 @@ -6642,7 +6662,7 @@ $LN6@stbi__hdr_: 00 00 mov rcx, QWORD PTR output$[rbp] 0014a f3 0f 11 04 01 movss DWORD PTR [rcx+rax], xmm0 -; 6706 : output[2] = input[2] * f1; +; 6719 : output[2] = input[2] * f1; 0014f b8 01 00 00 00 mov eax, 1 00154 48 6b c0 02 imul rax, rax, 2 @@ -6658,8 +6678,8 @@ $LN6@stbi__hdr_: 0017c f3 0f 11 04 01 movss DWORD PTR [rcx+rax], xmm0 $LN7@stbi__hdr_: -; 6707 : } -; 6708 : if (req_comp == 2) output[1] = 1; +; 6720 : } +; 6721 : if (req_comp == 2) output[1] = 1; 00181 83 bd 10 01 00 00 02 cmp DWORD PTR req_comp$[rbp], 2 @@ -6673,7 +6693,7 @@ $LN7@stbi__hdr_: 001a2 f3 0f 11 04 01 movss DWORD PTR [rcx+rax], xmm0 $LN8@stbi__hdr_: -; 6709 : if (req_comp == 4) output[3] = 1; +; 6722 : if (req_comp == 4) output[3] = 1; 001a7 83 bd 10 01 00 00 04 cmp DWORD PTR req_comp$[rbp], 4 @@ -6687,13 +6707,13 @@ $LN8@stbi__hdr_: 001c8 f3 0f 11 04 01 movss DWORD PTR [rcx+rax], xmm0 $LN9@stbi__hdr_: -; 6710 : } +; 6723 : } 001cd e9 d5 00 00 00 jmp $LN5@stbi__hdr_ $LN4@stbi__hdr_: -; 6711 : else { -; 6712 : switch (req_comp) { +; 6724 : else { +; 6725 : switch (req_comp) { 001d2 8b 85 10 01 00 00 mov eax, DWORD PTR req_comp$[rbp] @@ -6715,7 +6735,7 @@ $LN4@stbi__hdr_: 00206 e9 9c 00 00 00 jmp $LN2@stbi__hdr_ $LN10@stbi__hdr_: -; 6713 : case 4: output[3] = 1; /* fallthrough */ +; 6726 : case 4: output[3] = 1; /* fallthrough */ 0020b b8 04 00 00 00 mov eax, 4 00210 48 6b c0 03 imul rax, rax, 3 @@ -6726,7 +6746,7 @@ $LN10@stbi__hdr_: 00223 f3 0f 11 04 01 movss DWORD PTR [rcx+rax], xmm0 $LN11@stbi__hdr_: -; 6714 : case 3: output[0] = output[1] = output[2] = 0; +; 6727 : case 3: output[0] = output[1] = output[2] = 0; 00228 b8 04 00 00 00 mov eax, 4 0022d 48 6b c0 02 imul rax, rax, 2 @@ -6747,12 +6767,12 @@ $LN11@stbi__hdr_: 00268 0f 57 c0 xorps xmm0, xmm0 0026b f3 0f 11 04 01 movss DWORD PTR [rcx+rax], xmm0 -; 6715 : break; +; 6728 : break; 00270 eb 35 jmp SHORT $LN2@stbi__hdr_ $LN12@stbi__hdr_: -; 6716 : case 2: output[1] = 1; /* fallthrough */ +; 6729 : case 2: output[1] = 1; /* fallthrough */ 00272 b8 04 00 00 00 mov eax, 4 00277 48 6b c0 01 imul rax, rax, 1 @@ -6763,7 +6783,7 @@ $LN12@stbi__hdr_: 0028a f3 0f 11 04 01 movss DWORD PTR [rcx+rax], xmm0 $LN13@stbi__hdr_: -; 6717 : case 1: output[0] = 0; +; 6730 : case 1: output[0] = 0; 0028f b8 04 00 00 00 mov eax, 4 00294 48 6b c0 00 imul rax, rax, 0 @@ -6774,10 +6794,10 @@ $LN13@stbi__hdr_: $LN2@stbi__hdr_: $LN5@stbi__hdr_: -; 6718 : break; -; 6719 : } -; 6720 : } -; 6721 : } +; 6731 : break; +; 6732 : } +; 6733 : } +; 6734 : } 002a7 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -6796,7 +6816,7 @@ z$ = 288 buffer$ = 296 stbi__hdr_gettoken PROC ; COMDAT -; 6674 : { +; 6687 : { 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx @@ -6809,17 +6829,17 @@ stbi__hdr_gettoken PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 6675 : int len = 0; +; 6688 : int len = 0; 00024 c7 45 04 00 00 00 00 mov DWORD PTR len$[rbp], 0 -; 6676 : char c = '\0'; +; 6689 : char c = '\0'; 0002b c6 45 24 00 mov BYTE PTR c$[rbp], 0 -; 6677 : -; 6678 : c = (char)stbi__get8(z); +; 6690 : +; 6691 : c = (char)stbi__get8(z); 0002f 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR z$[rbp] @@ -6827,8 +6847,8 @@ stbi__hdr_gettoken PROC ; COMDAT 0003b 88 45 24 mov BYTE PTR c$[rbp], al $LN2@stbi__hdr_: -; 6679 : -; 6680 : while (!stbi__at_eof(z) && c != '\n') { +; 6692 : +; 6693 : while (!stbi__at_eof(z) && c != '\n') { 0003e 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR z$[rbp] @@ -6839,7 +6859,7 @@ $LN2@stbi__hdr_: 00052 83 f8 0a cmp eax, 10 00055 74 5c je SHORT $LN3@stbi__hdr_ -; 6681 : buffer[len++] = c; +; 6694 : buffer[len++] = c; 00057 48 63 45 04 movsxd rax, DWORD PTR len$[rbp] 0005b 48 8b 8d 28 01 @@ -6850,15 +6870,15 @@ $LN2@stbi__hdr_: 0006c ff c0 inc eax 0006e 89 45 04 mov DWORD PTR len$[rbp], eax -; 6682 : if (len == STBI__HDR_BUFLEN - 1) { +; 6695 : if (len == STBI__HDR_BUFLEN - 1) { 00071 81 7d 04 ff 03 00 00 cmp DWORD PTR len$[rbp], 1023 ; 000003ffH 00078 75 28 jne SHORT $LN6@stbi__hdr_ $LN4@stbi__hdr_: -; 6683 : // flush to end of line -; 6684 : while (!stbi__at_eof(z) && stbi__get8(z) != '\n') +; 6696 : // flush to end of line +; 6697 : while (!stbi__at_eof(z) && stbi__get8(z) != '\n') 0007a 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR z$[rbp] @@ -6872,43 +6892,43 @@ $LN4@stbi__hdr_: 00099 83 f8 0a cmp eax, 10 0009c 74 02 je SHORT $LN5@stbi__hdr_ -; 6685 : ; +; 6698 : ; 0009e eb da jmp SHORT $LN4@stbi__hdr_ $LN5@stbi__hdr_: -; 6686 : break; +; 6699 : break; 000a0 eb 11 jmp SHORT $LN3@stbi__hdr_ $LN6@stbi__hdr_: -; 6687 : } -; 6688 : c = (char)stbi__get8(z); +; 6700 : } +; 6701 : c = (char)stbi__get8(z); 000a2 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR z$[rbp] 000a9 e8 00 00 00 00 call stbi__get8 000ae 88 45 24 mov BYTE PTR c$[rbp], al -; 6689 : } +; 6702 : } 000b1 eb 8b jmp SHORT $LN2@stbi__hdr_ $LN3@stbi__hdr_: -; 6690 : -; 6691 : buffer[len] = 0; +; 6703 : +; 6704 : buffer[len] = 0; 000b3 48 63 45 04 movsxd rax, DWORD PTR len$[rbp] 000b7 48 8b 8d 28 01 00 00 mov rcx, QWORD PTR buffer$[rbp] 000be c6 04 01 00 mov BYTE PTR [rcx+rax], 0 -; 6692 : return buffer; +; 6705 : return buffer; 000c2 48 8b 85 28 01 00 00 mov rax, QWORD PTR buffer$[rbp] -; 6693 : } +; 6706 : } 000c9 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] @@ -6926,7 +6946,7 @@ s$ = 256 signature$ = 264 stbi__hdr_test_core PROC ; COMDAT -; 6652 : { +; 6665 : { 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx @@ -6939,8 +6959,8 @@ stbi__hdr_test_core PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 6653 : int i; -; 6654 : for (i = 0; signature[i]; ++i) +; 6666 : int i; +; 6667 : for (i = 0; signature[i]; ++i) 00024 c7 45 04 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -6957,7 +6977,7 @@ $LN4@stbi__hdr_: 00044 85 c0 test eax, eax 00046 74 28 je SHORT $LN3@stbi__hdr_ -; 6655 : if (stbi__get8(s) != signature[i]) +; 6668 : if (stbi__get8(s) != signature[i]) 00048 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -6970,7 +6990,7 @@ $LN4@stbi__hdr_: 00066 3b c1 cmp eax, ecx 00068 74 04 je SHORT $LN5@stbi__hdr_ -; 6656 : return 0; +; 6669 : return 0; 0006a 33 c0 xor eax, eax 0006c eb 13 jmp SHORT $LN1@stbi__hdr_ @@ -6978,18 +6998,18 @@ $LN5@stbi__hdr_: 0006e eb bd jmp SHORT $LN2@stbi__hdr_ $LN3@stbi__hdr_: -; 6657 : stbi__rewind(s); +; 6670 : stbi__rewind(s); 00070 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] 00077 e8 00 00 00 00 call stbi__rewind -; 6658 : return 1; +; 6671 : return 1; 0007c b8 01 00 00 00 mov eax, 1 $LN1@stbi__hdr_: -; 6659 : } +; 6672 : } 00081 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -7008,7 +7028,7 @@ out$ = 248 delays$ = 256 stbi__load_gif_main_outofmem PROC ; COMDAT -; 6514 : { +; 6527 : { 00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx @@ -7022,7 +7042,7 @@ stbi__load_gif_main_outofmem PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00024 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 6515 : STBI_FREE(g->out); +; 6528 : STBI_FREE(g->out); 00029 48 8b 85 f0 00 00 00 mov rax, QWORD PTR g$[rbp] @@ -7030,7 +7050,7 @@ stbi__load_gif_main_outofmem PROC ; COMDAT 00034 ff 15 00 00 00 00 call QWORD PTR __imp_free -; 6516 : STBI_FREE(g->history); +; 6529 : STBI_FREE(g->history); 0003a 48 8b 85 f0 00 00 00 mov rax, QWORD PTR g$[rbp] @@ -7038,7 +7058,7 @@ stbi__load_gif_main_outofmem PROC ; COMDAT 00045 ff 15 00 00 00 00 call QWORD PTR __imp_free -; 6517 : STBI_FREE(g->background); +; 6530 : STBI_FREE(g->background); 0004b 48 8b 85 f0 00 00 00 mov rax, QWORD PTR g$[rbp] @@ -7046,8 +7066,8 @@ stbi__load_gif_main_outofmem PROC ; COMDAT 00056 ff 15 00 00 00 00 call QWORD PTR __imp_free -; 6518 : -; 6519 : if (out) STBI_FREE(out); +; 6531 : +; 6532 : if (out) STBI_FREE(out); 0005c 48 83 bd f8 00 00 00 00 cmp QWORD PTR out$[rbp], 0 @@ -7058,7 +7078,7 @@ stbi__load_gif_main_outofmem PROC ; COMDAT 00 call QWORD PTR __imp_free $LN2@stbi__load: -; 6520 : if (delays && *delays) STBI_FREE(*delays); +; 6533 : if (delays && *delays) STBI_FREE(*delays); 00073 48 83 bd 00 01 00 00 00 cmp QWORD PTR delays$[rbp], 0 @@ -7074,7 +7094,7 @@ $LN2@stbi__load: 00 call QWORD PTR __imp_free $LN3@stbi__load: -; 6521 : return stbi__errpuc("outofmem", "Out of memory"); +; 6534 : return stbi__errpuc("outofmem", "Out of memory"); 0009a 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_08NOGIMCHF@outofmem@ @@ -7093,7 +7113,7 @@ $LN6@stbi__load: 000c2 48 8b 85 c0 00 00 00 mov rax, QWORD PTR tv78[rbp] -; 6522 : } +; 6535 : } 000c9 48 8d a5 d8 00 00 00 lea rsp, QWORD PTR [rbp+216] @@ -7133,7 +7153,7 @@ req_comp$ = 632 two_back$ = 640 stbi__gif_load_next PROC ; COMDAT -; 6332 : { +; 6345 : { 00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -7148,19 +7168,19 @@ stbi__gif_load_next PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 6333 : int dispose; -; 6334 : int first_frame; -; 6335 : int pi; -; 6336 : int pcount; -; 6337 : STBI_NOTUSED(req_comp); -; 6338 : -; 6339 : // on first frame, any non-written pixels get the background colour (non-transparent) -; 6340 : first_frame = 0; +; 6346 : int dispose; +; 6347 : int first_frame; +; 6348 : int pi; +; 6349 : int pcount; +; 6350 : STBI_NOTUSED(req_comp); +; 6351 : +; 6352 : // on first frame, any non-written pixels get the background colour (non-transparent) +; 6353 : first_frame = 0; 0002e c7 45 24 00 00 00 00 mov DWORD PTR first_frame$[rbp], 0 -; 6341 : if (g->out == 0) { +; 6354 : if (g->out == 0) { 00035 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] @@ -7168,7 +7188,7 @@ stbi__gif_load_next PROC ; COMDAT 00041 0f 85 a2 01 00 00 jne $LN18@stbi__gif_ -; 6342 : if (!stbi__gif_header(s, g, comp, 0)) return 0; // stbi__g_failure_reason set by stbi__gif_header +; 6355 : if (!stbi__gif_header(s, g, comp, 0)) return 0; // stbi__g_failure_reason set by stbi__gif_header 00047 45 33 c9 xor r9d, r9d 0004a 4c 8b 85 70 02 @@ -7184,7 +7204,7 @@ stbi__gif_load_next PROC ; COMDAT 0006a e9 56 09 00 00 jmp $LN1@stbi__gif_ $LN20@stbi__gif_: -; 6343 : if (!stbi__mad3sizes_valid(4, g->w, g->h, 0)) +; 6356 : if (!stbi__mad3sizes_valid(4, g->w, g->h, 0)) 0006f 45 33 c9 xor r9d, r9d 00072 48 8b 85 68 02 @@ -7198,7 +7218,7 @@ $LN20@stbi__gif_: 00090 85 c0 test eax, eax 00092 75 34 jne SHORT $LN21@stbi__gif_ -; 6344 : return stbi__errpuc("too large", "GIF image is too large"); +; 6357 : return stbi__errpuc("too large", "GIF image is too large"); 00094 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_09OJDLMMBJ@too?5large@ @@ -7219,7 +7239,7 @@ $LN56@stbi__gif_: 000c3 e9 fd 08 00 00 jmp $LN1@stbi__gif_ $LN21@stbi__gif_: -; 6345 : pcount = g->w * g->h; +; 6358 : pcount = g->w * g->h; 000c8 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] @@ -7229,7 +7249,7 @@ $LN21@stbi__gif_: 000d8 0f af 41 04 imul eax, DWORD PTR [rcx+4] 000dc 89 45 64 mov DWORD PTR pcount$[rbp], eax -; 6346 : g->out = (stbi_uc*)stbi__malloc(4 * pcount); +; 6359 : g->out = (stbi_uc*)stbi__malloc(4 * pcount); 000df 8b 45 64 mov eax, DWORD PTR pcount$[rbp] 000e2 c1 e0 02 shl eax, 2 @@ -7240,7 +7260,7 @@ $LN21@stbi__gif_: 00 00 mov rcx, QWORD PTR g$[rbp] 000f6 48 89 41 08 mov QWORD PTR [rcx+8], rax -; 6347 : g->background = (stbi_uc*)stbi__malloc(4 * pcount); +; 6360 : g->background = (stbi_uc*)stbi__malloc(4 * pcount); 000fa 8b 45 64 mov eax, DWORD PTR pcount$[rbp] 000fd c1 e0 02 shl eax, 2 @@ -7251,7 +7271,7 @@ $LN21@stbi__gif_: 00 00 mov rcx, QWORD PTR g$[rbp] 00111 48 89 41 10 mov QWORD PTR [rcx+16], rax -; 6348 : g->history = (stbi_uc*)stbi__malloc(pcount); +; 6361 : g->history = (stbi_uc*)stbi__malloc(pcount); 00115 48 63 45 64 movsxd rax, DWORD PTR pcount$[rbp] 00119 48 8b c8 mov rcx, rax @@ -7260,7 +7280,7 @@ $LN21@stbi__gif_: 00 00 mov rcx, QWORD PTR g$[rbp] 00128 48 89 41 18 mov QWORD PTR [rcx+24], rax -; 6349 : if (!g->out || !g->background || !g->history) +; 6362 : if (!g->out || !g->background || !g->history) 0012c 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] @@ -7276,7 +7296,7 @@ $LN21@stbi__gif_: 00154 75 34 jne SHORT $LN22@stbi__gif_ $LN23@stbi__gif_: -; 6350 : return stbi__errpuc("outofmem", "Out of memory"); +; 6363 : return stbi__errpuc("outofmem", "Out of memory"); 00156 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_08NOGIMCHF@outofmem@ @@ -7297,11 +7317,11 @@ $LN58@stbi__gif_: 00185 e9 3b 08 00 00 jmp $LN1@stbi__gif_ $LN22@stbi__gif_: -; 6351 : -; 6352 : // image is treated as "transparent" at the start - ie, nothing overwrites the current background; -; 6353 : // background colour is only used for pixels that are not rendered first frame, after that "background" -; 6354 : // color refers to the color that was there the previous frame. -; 6355 : memset(g->out, 0x00, 4 * pcount); +; 6364 : +; 6365 : // image is treated as "transparent" at the start - ie, nothing overwrites the current background; +; 6366 : // background colour is only used for pixels that are not rendered first frame, after that "background" +; 6367 : // color refers to the color that was there the previous frame. +; 6368 : memset(g->out, 0x00, 4 * pcount); 0018a 8b 45 64 mov eax, DWORD PTR pcount$[rbp] 0018d c1 e0 02 shl eax, 2 @@ -7313,7 +7333,7 @@ $LN22@stbi__gif_: 0019e 48 8b 48 08 mov rcx, QWORD PTR [rax+8] 001a2 e8 00 00 00 00 call memset -; 6356 : memset(g->background, 0x00, 4 * pcount); // state of the background (starts transparent) +; 6369 : memset(g->background, 0x00, 4 * pcount); // state of the background (starts transparent) 001a7 8b 45 64 mov eax, DWORD PTR pcount$[rbp] 001aa c1 e0 02 shl eax, 2 @@ -7325,7 +7345,7 @@ $LN22@stbi__gif_: 001bb 48 8b 48 10 mov rcx, QWORD PTR [rax+16] 001bf e8 00 00 00 00 call memset -; 6357 : memset(g->history, 0x00, pcount); // pixels that were affected previous frame +; 6370 : memset(g->history, 0x00, pcount); // pixels that were affected previous frame 001c4 48 63 45 64 movsxd rax, DWORD PTR pcount$[rbp] 001c8 4c 8b c0 mov r8, rax @@ -7335,19 +7355,19 @@ $LN22@stbi__gif_: 001d4 48 8b 48 18 mov rcx, QWORD PTR [rax+24] 001d8 e8 00 00 00 00 call memset -; 6358 : first_frame = 1; +; 6371 : first_frame = 1; 001dd c7 45 24 01 00 00 00 mov DWORD PTR first_frame$[rbp], 1 -; 6359 : } +; 6372 : } 001e4 e9 68 01 00 00 jmp $LN19@stbi__gif_ $LN18@stbi__gif_: -; 6360 : else { -; 6361 : // second frame - how do we dispose of the previous one? -; 6362 : dispose = (g->eflags & 0x1C) >> 2; +; 6373 : else { +; 6374 : // second frame - how do we dispose of the previous one? +; 6375 : dispose = (g->eflags & 0x1C) >> 2; 001e9 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] @@ -7356,7 +7376,7 @@ $LN18@stbi__gif_: 001f6 c1 f8 02 sar eax, 2 001f9 89 45 04 mov DWORD PTR dispose$[rbp], eax -; 6363 : pcount = g->w * g->h; +; 6376 : pcount = g->w * g->h; 001fc 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] @@ -7366,8 +7386,8 @@ $LN18@stbi__gif_: 0020c 0f af 41 04 imul eax, DWORD PTR [rcx+4] 00210 89 45 64 mov DWORD PTR pcount$[rbp], eax -; 6364 : -; 6365 : if ((dispose == 3) && (two_back == 0)) { +; 6377 : +; 6378 : if ((dispose == 3) && (two_back == 0)) { 00213 83 7d 04 03 cmp DWORD PTR dispose$[rbp], 3 00217 75 11 jne SHORT $LN24@stbi__gif_ @@ -7375,20 +7395,20 @@ $LN18@stbi__gif_: 00 00 00 cmp QWORD PTR two_back$[rbp], 0 00221 75 07 jne SHORT $LN24@stbi__gif_ -; 6366 : dispose = 2; // if I don't have an image to revert back to, default to the old background +; 6379 : dispose = 2; // if I don't have an image to revert back to, default to the old background 00223 c7 45 04 02 00 00 00 mov DWORD PTR dispose$[rbp], 2 $LN24@stbi__gif_: -; 6367 : } -; 6368 : -; 6369 : if (dispose == 3) { // use previous graphic +; 6380 : } +; 6381 : +; 6382 : if (dispose == 3) { // use previous graphic 0022a 83 7d 04 03 cmp DWORD PTR dispose$[rbp], 3 0022e 75 71 jne SHORT $LN25@stbi__gif_ -; 6370 : for (pi = 0; pi < pcount; ++pi) { +; 6383 : for (pi = 0; pi < pcount; ++pi) { 00230 c7 45 44 00 00 00 00 mov DWORD PTR pi$[rbp], 0 @@ -7402,7 +7422,7 @@ $LN4@stbi__gif_: 00244 39 45 44 cmp DWORD PTR pi$[rbp], eax 00247 7d 56 jge SHORT $LN3@stbi__gif_ -; 6371 : if (g->history[pi]) { +; 6384 : if (g->history[pi]) { 00249 48 63 45 44 movsxd rax, DWORD PTR pi$[rbp] 0024d 48 8b 8d 68 02 @@ -7412,7 +7432,7 @@ $LN4@stbi__gif_: 0025c 85 c0 test eax, eax 0025e 74 3d je SHORT $LN27@stbi__gif_ -; 6372 : memcpy(&g->out[pi * 4], &two_back[pi * 4], 4); +; 6385 : memcpy(&g->out[pi * 4], &two_back[pi * 4], 4); 00260 8b 45 44 mov eax, DWORD PTR pi$[rbp] 00263 c1 e0 02 shl eax, 2 @@ -7435,24 +7455,24 @@ $LN4@stbi__gif_: 00298 e8 00 00 00 00 call memcpy $LN27@stbi__gif_: -; 6373 : } -; 6374 : } +; 6386 : } +; 6387 : } 0029d eb 9a jmp SHORT $LN2@stbi__gif_ $LN3@stbi__gif_: -; 6375 : } +; 6388 : } 0029f eb 79 jmp SHORT $LN26@stbi__gif_ $LN25@stbi__gif_: -; 6376 : else if (dispose == 2) { +; 6389 : else if (dispose == 2) { 002a1 83 7d 04 02 cmp DWORD PTR dispose$[rbp], 2 002a5 75 73 jne SHORT $LN28@stbi__gif_ -; 6377 : // restore what was changed last frame to background before that frame; -; 6378 : for (pi = 0; pi < pcount; ++pi) { +; 6390 : // restore what was changed last frame to background before that frame; +; 6391 : for (pi = 0; pi < pcount; ++pi) { 002a7 c7 45 44 00 00 00 00 mov DWORD PTR pi$[rbp], 0 @@ -7466,7 +7486,7 @@ $LN7@stbi__gif_: 002bb 39 45 44 cmp DWORD PTR pi$[rbp], eax 002be 7d 5a jge SHORT $LN6@stbi__gif_ -; 6379 : if (g->history[pi]) { +; 6392 : if (g->history[pi]) { 002c0 48 63 45 44 movsxd rax, DWORD PTR pi$[rbp] 002c4 48 8b 8d 68 02 @@ -7476,7 +7496,7 @@ $LN7@stbi__gif_: 002d3 85 c0 test eax, eax 002d5 74 41 je SHORT $LN30@stbi__gif_ -; 6380 : memcpy(&g->out[pi * 4], &g->background[pi * 4], 4); +; 6393 : memcpy(&g->out[pi * 4], &g->background[pi * 4], 4); 002d7 8b 45 44 mov eax, DWORD PTR pi$[rbp] 002da c1 e0 02 shl eax, 2 @@ -7500,24 +7520,24 @@ $LN7@stbi__gif_: 00313 e8 00 00 00 00 call memcpy $LN30@stbi__gif_: -; 6381 : } -; 6382 : } +; 6394 : } +; 6395 : } 00318 eb 96 jmp SHORT $LN5@stbi__gif_ $LN6@stbi__gif_: $LN28@stbi__gif_: $LN26@stbi__gif_: -; 6383 : } -; 6384 : else { -; 6385 : // This is a non-disposal case eithe way, so just -; 6386 : // leave the pixels as is, and they will become the new background -; 6387 : // 1: do not dispose -; 6388 : // 0: not specified. -; 6389 : } -; 6390 : -; 6391 : // background is what out is after the undoing of the previou frame; -; 6392 : memcpy(g->background, g->out, 4 * g->w * g->h); +; 6396 : } +; 6397 : else { +; 6398 : // This is a non-disposal case eithe way, so just +; 6399 : // leave the pixels as is, and they will become the new background +; 6400 : // 1: do not dispose +; 6401 : // 0: not specified. +; 6402 : } +; 6403 : +; 6404 : // background is what out is after the undoing of the previou frame; +; 6405 : memcpy(g->background, g->out, 4 * g->w * g->h); 0031a 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] @@ -7537,10 +7557,10 @@ $LN26@stbi__gif_: 0034c e8 00 00 00 00 call memcpy $LN19@stbi__gif_: -; 6393 : } -; 6394 : -; 6395 : // clear my history; -; 6396 : memset(g->history, 0x00, g->w * g->h); // pixels that were affected previous frame +; 6406 : } +; 6407 : +; 6408 : // clear my history; +; 6409 : memset(g->history, 0x00, g->w * g->h); // pixels that were affected previous frame 00351 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] @@ -7557,9 +7577,9 @@ $LN19@stbi__gif_: 00377 e8 00 00 00 00 call memset $LN8@stbi__gif_: -; 6397 : -; 6398 : for (;;) { -; 6399 : int tag = stbi__get8(s); +; 6410 : +; 6411 : for (;;) { +; 6412 : int tag = stbi__get8(s); 0037c 48 8b 8d 60 02 00 00 mov rcx, QWORD PTR s$[rbp] @@ -7568,7 +7588,7 @@ $LN8@stbi__gif_: 0038b 89 85 84 00 00 00 mov DWORD PTR tag$1[rbp], eax -; 6400 : switch (tag) { +; 6413 : switch (tag) { 00391 8b 85 84 00 00 00 mov eax, DWORD PTR tag$1[rbp] @@ -7588,12 +7608,12 @@ $LN8@stbi__gif_: 003c0 e9 ca 05 00 00 jmp $LN53@stbi__gif_ $LN31@stbi__gif_: -; 6401 : case 0x2C: /* Image Descriptor */ -; 6402 : { -; 6403 : stbi__int32 x, y, w, h; -; 6404 : stbi_uc* o; -; 6405 : -; 6406 : x = stbi__get16le(s); +; 6414 : case 0x2C: /* Image Descriptor */ +; 6415 : { +; 6416 : stbi__int32 x, y, w, h; +; 6417 : stbi_uc* o; +; 6418 : +; 6419 : x = stbi__get16le(s); 003c5 48 8b 8d 60 02 00 00 mov rcx, QWORD PTR s$[rbp] @@ -7601,7 +7621,7 @@ $LN31@stbi__gif_: 003d1 89 85 a4 00 00 00 mov DWORD PTR x$2[rbp], eax -; 6407 : y = stbi__get16le(s); +; 6420 : y = stbi__get16le(s); 003d7 48 8b 8d 60 02 00 00 mov rcx, QWORD PTR s$[rbp] @@ -7609,7 +7629,7 @@ $LN31@stbi__gif_: 003e3 89 85 c4 00 00 00 mov DWORD PTR y$3[rbp], eax -; 6408 : w = stbi__get16le(s); +; 6421 : w = stbi__get16le(s); 003e9 48 8b 8d 60 02 00 00 mov rcx, QWORD PTR s$[rbp] @@ -7617,7 +7637,7 @@ $LN31@stbi__gif_: 003f5 89 85 e4 00 00 00 mov DWORD PTR w$4[rbp], eax -; 6409 : h = stbi__get16le(s); +; 6422 : h = stbi__get16le(s); 003fb 48 8b 8d 60 02 00 00 mov rcx, QWORD PTR s$[rbp] @@ -7625,7 +7645,7 @@ $LN31@stbi__gif_: 00407 89 85 04 01 00 00 mov DWORD PTR h$5[rbp], eax -; 6410 : if (((x + w) > (g->w)) || ((y + h) > (g->h))) +; 6423 : if (((x + w) > (g->w)) || ((y + h) > (g->h))) 0040d 8b 85 e4 00 00 00 mov eax, DWORD PTR w$4[rbp] @@ -7649,7 +7669,7 @@ $LN31@stbi__gif_: 00442 7e 34 jle SHORT $LN32@stbi__gif_ $LN33@stbi__gif_: -; 6411 : return stbi__errpuc("bad Image Descriptor", "Corrupt GIF"); +; 6424 : return stbi__errpuc("bad Image Descriptor", "Corrupt GIF"); 00444 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0BF@GIAALCNJ@bad?5Image?5Descriptor@ @@ -7670,8 +7690,8 @@ $LN60@stbi__gif_: 00473 e9 4d 05 00 00 jmp $LN1@stbi__gif_ $LN32@stbi__gif_: -; 6412 : -; 6413 : g->line_size = g->w * 4; +; 6425 : +; 6426 : g->line_size = g->w * 4; 00478 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] @@ -7682,7 +7702,7 @@ $LN32@stbi__gif_: 0048b 89 81 64 88 00 00 mov DWORD PTR [rcx+34916], eax -; 6414 : g->start_x = x * 4; +; 6427 : g->start_x = x * 4; 00491 8b 85 a4 00 00 00 mov eax, DWORD PTR x$2[rbp] @@ -7692,7 +7712,7 @@ $LN32@stbi__gif_: 004a1 89 81 4c 88 00 00 mov DWORD PTR [rcx+34892], eax -; 6415 : g->start_y = y * g->line_size; +; 6428 : g->start_y = y * g->line_size; 004a7 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] @@ -7706,7 +7726,7 @@ $LN32@stbi__gif_: 004c4 89 81 50 88 00 00 mov DWORD PTR [rcx+34896], eax -; 6416 : g->max_x = g->start_x + w * 4; +; 6429 : g->max_x = g->start_x + w * 4; 004ca 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] @@ -7720,7 +7740,7 @@ $LN32@stbi__gif_: 004e7 89 81 54 88 00 00 mov DWORD PTR [rcx+34900], eax -; 6417 : g->max_y = g->start_y + h * g->line_size; +; 6430 : g->max_y = g->start_y + h * g->line_size; 004ed 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] @@ -7738,7 +7758,7 @@ $LN32@stbi__gif_: 00517 89 81 58 88 00 00 mov DWORD PTR [rcx+34904], eax -; 6418 : g->cur_x = g->start_x; +; 6431 : g->cur_x = g->start_x; 0051d 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] @@ -7749,7 +7769,7 @@ $LN32@stbi__gif_: 00531 89 88 5c 88 00 00 mov DWORD PTR [rax+34908], ecx -; 6419 : g->cur_y = g->start_y; +; 6432 : g->cur_y = g->start_y; 00537 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] @@ -7760,18 +7780,18 @@ $LN32@stbi__gif_: 0054b 89 88 60 88 00 00 mov DWORD PTR [rax+34912], ecx -; 6420 : -; 6421 : // if the width of the specified rectangle is 0, that means -; 6422 : // we may not see *any* pixels or the image is malformed; -; 6423 : // to make sure this is caught, move the current y down to -; 6424 : // max_y (which is what out_gif_code checks). -; 6425 : if (w == 0) +; 6433 : +; 6434 : // if the width of the specified rectangle is 0, that means +; 6435 : // we may not see *any* pixels or the image is malformed; +; 6436 : // to make sure this is caught, move the current y down to +; 6437 : // max_y (which is what out_gif_code checks). +; 6438 : if (w == 0) 00551 83 bd e4 00 00 00 00 cmp DWORD PTR w$4[rbp], 0 00558 75 1a jne SHORT $LN34@stbi__gif_ -; 6426 : g->cur_y = g->max_y; +; 6439 : g->cur_y = g->max_y; 0055a 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] @@ -7783,8 +7803,8 @@ $LN32@stbi__gif_: 00 mov DWORD PTR [rax+34912], ecx $LN34@stbi__gif_: -; 6427 : -; 6428 : g->lflags = stbi__get8(s); +; 6440 : +; 6441 : g->lflags = stbi__get8(s); 00574 48 8b 8d 60 02 00 00 mov rcx, QWORD PTR s$[rbp] @@ -7795,8 +7815,8 @@ $LN34@stbi__gif_: 0058a 89 81 48 88 00 00 mov DWORD PTR [rcx+34888], eax -; 6429 : -; 6430 : if (g->lflags & 0x40) { +; 6442 : +; 6443 : if (g->lflags & 0x40) { 00590 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] @@ -7806,7 +7826,7 @@ $LN34@stbi__gif_: 005a0 85 c0 test eax, eax 005a2 74 30 je SHORT $LN35@stbi__gif_ -; 6431 : g->step = 8 * g->line_size; // first interlaced spacing +; 6444 : g->step = 8 * g->line_size; // first interlaced spacing 005a4 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] @@ -7818,20 +7838,20 @@ $LN34@stbi__gif_: 005bb 89 81 44 88 00 00 mov DWORD PTR [rcx+34884], eax -; 6432 : g->parse = 3; +; 6445 : g->parse = 3; 005c1 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] 005c8 c7 80 40 88 00 00 03 00 00 00 mov DWORD PTR [rax+34880], 3 -; 6433 : } +; 6446 : } 005d2 eb 2b jmp SHORT $LN36@stbi__gif_ $LN35@stbi__gif_: -; 6434 : else { -; 6435 : g->step = g->line_size; +; 6447 : else { +; 6448 : g->step = g->line_size; 005d4 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] @@ -7842,7 +7862,7 @@ $LN35@stbi__gif_: 005e8 89 88 44 88 00 00 mov DWORD PTR [rax+34884], ecx -; 6436 : g->parse = 0; +; 6449 : g->parse = 0; 005ee 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] @@ -7850,9 +7870,9 @@ $LN35@stbi__gif_: 00 00 00 00 00 mov DWORD PTR [rax+34880], 0 $LN36@stbi__gif_: -; 6437 : } -; 6438 : -; 6439 : if (g->lflags & 0x80) { +; 6450 : } +; 6451 : +; 6452 : if (g->lflags & 0x80) { 005ff 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] @@ -7863,7 +7883,7 @@ $LN36@stbi__gif_: 00613 0f 84 97 00 00 00 je $LN37@stbi__gif_ -; 6440 : stbi__gif_parse_colortable(s, g->lpal, 2 << (g->lflags & 7), g->eflags & 0x01 ? g->transparent : -1); +; 6453 : stbi__gif_parse_colortable(s, g->lpal, 2 << (g->lflags & 7), g->eflags & 0x01 ? g->transparent : -1); 00619 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] @@ -7905,7 +7925,7 @@ $LN62@stbi__gif_: 00 00 mov rcx, QWORD PTR s$[rbp] 0068e e8 00 00 00 00 call stbi__gif_parse_colortable -; 6441 : g->color_table = (stbi_uc*)g->lpal; +; 6454 : g->color_table = (stbi_uc*)g->lpal; 00693 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] @@ -7916,12 +7936,12 @@ $LN62@stbi__gif_: 006a7 48 89 81 38 88 00 00 mov QWORD PTR [rcx+34872], rax -; 6442 : } +; 6455 : } 006ae eb 62 jmp SHORT $LN38@stbi__gif_ $LN37@stbi__gif_: -; 6443 : else if (g->flags & 0x80) { +; 6456 : else if (g->flags & 0x80) { 006b0 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] @@ -7930,7 +7950,7 @@ $LN37@stbi__gif_: 006bf 85 c0 test eax, eax 006c1 74 1b je SHORT $LN39@stbi__gif_ -; 6444 : g->color_table = (stbi_uc*)g->pal; +; 6457 : g->color_table = (stbi_uc*)g->pal; 006c3 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] @@ -7940,13 +7960,13 @@ $LN37@stbi__gif_: 006d5 48 89 81 38 88 00 00 mov QWORD PTR [rcx+34872], rax -; 6445 : } +; 6458 : } 006dc eb 34 jmp SHORT $LN40@stbi__gif_ $LN39@stbi__gif_: -; 6446 : else -; 6447 : return stbi__errpuc("missing color table", "Corrupt GIF"); +; 6459 : else +; 6460 : return stbi__errpuc("missing color table", "Corrupt GIF"); 006de 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0BE@NAMJKDNF@missing?5color?5table@ @@ -7968,8 +7988,8 @@ $LN64@stbi__gif_: $LN40@stbi__gif_: $LN38@stbi__gif_: -; 6448 : -; 6449 : o = stbi__process_gif_raster(s, g); +; 6461 : +; 6462 : o = stbi__process_gif_raster(s, g); 00712 48 8b 95 68 02 00 00 mov rdx, QWORD PTR g$[rbp] @@ -7979,7 +7999,7 @@ $LN38@stbi__gif_: 00725 48 89 85 28 01 00 00 mov QWORD PTR o$6[rbp], rax -; 6450 : if (!o) return NULL; +; 6463 : if (!o) return NULL; 0072c 48 83 bd 28 01 00 00 00 cmp QWORD PTR o$6[rbp], 0 @@ -7988,9 +8008,9 @@ $LN38@stbi__gif_: 00738 e9 88 02 00 00 jmp $LN1@stbi__gif_ $LN41@stbi__gif_: -; 6451 : -; 6452 : // if this was the first frame, -; 6453 : pcount = g->w * g->h; +; 6464 : +; 6465 : // if this was the first frame, +; 6466 : pcount = g->w * g->h; 0073d 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] @@ -8000,7 +8020,7 @@ $LN41@stbi__gif_: 0074d 0f af 41 04 imul eax, DWORD PTR [rcx+4] 00751 89 45 64 mov DWORD PTR pcount$[rbp], eax -; 6454 : if (first_frame && (g->bgindex > 0)) { +; 6467 : if (first_frame && (g->bgindex > 0)) { 00754 83 7d 24 00 cmp DWORD PTR first_frame$[rbp], 0 00758 0f 84 a9 00 00 @@ -8011,8 +8031,8 @@ $LN41@stbi__gif_: 00769 0f 8e 98 00 00 00 jle $LN42@stbi__gif_ -; 6455 : // if first frame, any pixel not drawn to gets the background color -; 6456 : for (pi = 0; pi < pcount; ++pi) { +; 6468 : // if first frame, any pixel not drawn to gets the background color +; 6469 : for (pi = 0; pi < pcount; ++pi) { 0076f c7 45 44 00 00 00 00 mov DWORD PTR pi$[rbp], 0 @@ -8026,7 +8046,7 @@ $LN15@stbi__gif_: 00783 39 45 44 cmp DWORD PTR pi$[rbp], eax 00786 7d 7f jge SHORT $LN14@stbi__gif_ -; 6457 : if (g->history[pi] == 0) { +; 6470 : if (g->history[pi] == 0) { 00788 48 63 45 44 movsxd rax, DWORD PTR pi$[rbp] 0078c 48 8b 8d 68 02 @@ -8036,7 +8056,7 @@ $LN15@stbi__gif_: 0079b 85 c0 test eax, eax 0079d 75 63 jne SHORT $LN43@stbi__gif_ -; 6458 : g->pal[g->bgindex][3] = 255; // just in case it was made transparent, undo that; It will be reset next frame if need be; +; 6471 : g->pal[g->bgindex][3] = 255; // just in case it was made transparent, undo that; It will be reset next frame if need be; 0079f 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] @@ -8048,7 +8068,7 @@ $LN15@stbi__gif_: 007bb 48 6b c9 03 imul rcx, rcx, 3 007bf c6 04 08 ff mov BYTE PTR [rax+rcx], 255 ; 000000ffH -; 6459 : memcpy(&g->out[pi * 4], &g->pal[g->bgindex], 4); +; 6472 : memcpy(&g->out[pi * 4], &g->pal[g->bgindex], 4); 007c3 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] @@ -8070,28 +8090,28 @@ $LN15@stbi__gif_: 007fd e8 00 00 00 00 call memcpy $LN43@stbi__gif_: -; 6460 : } -; 6461 : } +; 6473 : } +; 6474 : } 00802 e9 71 ff ff ff jmp $LN13@stbi__gif_ $LN14@stbi__gif_: $LN42@stbi__gif_: -; 6462 : } -; 6463 : -; 6464 : return o; +; 6475 : } +; 6476 : +; 6477 : return o; 00807 48 8b 85 28 01 00 00 mov rax, QWORD PTR o$6[rbp] 0080e e9 b2 01 00 00 jmp $LN1@stbi__gif_ $LN44@stbi__gif_: -; 6465 : } -; 6466 : -; 6467 : case 0x21: // Comment Extension. -; 6468 : { -; 6469 : int len; -; 6470 : int ext = stbi__get8(s); +; 6478 : } +; 6479 : +; 6480 : case 0x21: // Comment Extension. +; 6481 : { +; 6482 : int len; +; 6483 : int ext = stbi__get8(s); 00813 48 8b 8d 60 02 00 00 mov rcx, QWORD PTR s$[rbp] @@ -8100,14 +8120,14 @@ $LN44@stbi__gif_: 00822 89 85 64 01 00 00 mov DWORD PTR ext$8[rbp], eax -; 6471 : if (ext == 0xF9) { // Graphic Control Extension. +; 6484 : if (ext == 0xF9) { // Graphic Control Extension. 00828 81 bd 64 01 00 00 f9 00 00 00 cmp DWORD PTR ext$8[rbp], 249 ; 000000f9H 00832 0f 85 1a 01 00 00 jne $LN45@stbi__gif_ -; 6472 : len = stbi__get8(s); +; 6485 : len = stbi__get8(s); 00838 48 8b 8d 60 02 00 00 mov rcx, QWORD PTR s$[rbp] @@ -8116,14 +8136,14 @@ $LN44@stbi__gif_: 00847 89 85 44 01 00 00 mov DWORD PTR len$7[rbp], eax -; 6473 : if (len == 4) { +; 6486 : if (len == 4) { 0084d 83 bd 44 01 00 00 04 cmp DWORD PTR len$7[rbp], 4 00854 0f 85 e4 00 00 00 jne $LN46@stbi__gif_ -; 6474 : g->eflags = stbi__get8(s); +; 6487 : g->eflags = stbi__get8(s); 0085a 48 8b 8d 60 02 00 00 mov rcx, QWORD PTR s$[rbp] @@ -8133,7 +8153,7 @@ $LN44@stbi__gif_: 00 00 mov rcx, QWORD PTR g$[rbp] 00870 89 41 30 mov DWORD PTR [rcx+48], eax -; 6475 : g->delay = 10 * stbi__get16le(s); // delay - 1/100th of a second, saving as 1/1000ths. +; 6488 : g->delay = 10 * stbi__get16le(s); // delay - 1/100th of a second, saving as 1/1000ths. 00873 48 8b 8d 60 02 00 00 mov rcx, QWORD PTR s$[rbp] @@ -8144,16 +8164,16 @@ $LN44@stbi__gif_: 00889 89 81 68 88 00 00 mov DWORD PTR [rcx+34920], eax -; 6476 : -; 6477 : // unset old transparent -; 6478 : if (g->transparent >= 0) { +; 6489 : +; 6490 : // unset old transparent +; 6491 : if (g->transparent >= 0) { 0088f 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] 00896 83 78 2c 00 cmp DWORD PTR [rax+44], 0 0089a 7c 24 jl SHORT $LN48@stbi__gif_ -; 6479 : g->pal[g->transparent][3] = 255; +; 6492 : g->pal[g->transparent][3] = 255; 0089c 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] @@ -8166,8 +8186,8 @@ $LN44@stbi__gif_: 008bc c6 04 08 ff mov BYTE PTR [rax+rcx], 255 ; 000000ffH $LN48@stbi__gif_: -; 6480 : } -; 6481 : if (g->eflags & 0x01) { +; 6493 : } +; 6494 : if (g->eflags & 0x01) { 008c0 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] @@ -8176,7 +8196,7 @@ $LN48@stbi__gif_: 008cd 85 c0 test eax, eax 008cf 74 4c je SHORT $LN49@stbi__gif_ -; 6482 : g->transparent = stbi__get8(s); +; 6495 : g->transparent = stbi__get8(s); 008d1 48 8b 8d 60 02 00 00 mov rcx, QWORD PTR s$[rbp] @@ -8186,14 +8206,14 @@ $LN48@stbi__gif_: 00 00 mov rcx, QWORD PTR g$[rbp] 008e7 89 41 2c mov DWORD PTR [rcx+44], eax -; 6483 : if (g->transparent >= 0) { +; 6496 : if (g->transparent >= 0) { 008ea 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] 008f1 83 78 2c 00 cmp DWORD PTR [rax+44], 0 008f5 7c 24 jl SHORT $LN51@stbi__gif_ -; 6484 : g->pal[g->transparent][3] = 0; +; 6497 : g->pal[g->transparent][3] = 0; 008f7 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] @@ -8206,22 +8226,22 @@ $LN48@stbi__gif_: 00917 c6 04 08 00 mov BYTE PTR [rax+rcx], 0 $LN51@stbi__gif_: -; 6485 : } -; 6486 : } +; 6498 : } +; 6499 : } 0091b eb 1f jmp SHORT $LN50@stbi__gif_ $LN49@stbi__gif_: -; 6487 : else { -; 6488 : // don't need transparent -; 6489 : stbi__skip(s, 1); +; 6500 : else { +; 6501 : // don't need transparent +; 6502 : stbi__skip(s, 1); 0091d ba 01 00 00 00 mov edx, 1 00922 48 8b 8d 60 02 00 00 mov rcx, QWORD PTR s$[rbp] 00929 e8 00 00 00 00 call stbi__skip -; 6490 : g->transparent = -1; +; 6503 : g->transparent = -1; 0092e 48 8b 85 68 02 00 00 mov rax, QWORD PTR g$[rbp] @@ -8229,14 +8249,14 @@ $LN49@stbi__gif_: ff ff mov DWORD PTR [rax+44], -1 $LN50@stbi__gif_: -; 6491 : } -; 6492 : } +; 6504 : } +; 6505 : } 0093c eb 14 jmp SHORT $LN47@stbi__gif_ $LN46@stbi__gif_: -; 6493 : else { -; 6494 : stbi__skip(s, len); +; 6506 : else { +; 6507 : stbi__skip(s, len); 0093e 8b 95 44 01 00 00 mov edx, DWORD PTR len$7[rbp] @@ -8244,16 +8264,16 @@ $LN46@stbi__gif_: 00 00 mov rcx, QWORD PTR s$[rbp] 0094b e8 00 00 00 00 call stbi__skip -; 6495 : break; +; 6508 : break; 00950 eb 6e jmp SHORT $LN11@stbi__gif_ $LN47@stbi__gif_: $LN45@stbi__gif_: $LN16@stbi__gif_: -; 6496 : } -; 6497 : } -; 6498 : while ((len = stbi__get8(s)) != 0) { +; 6509 : } +; 6510 : } +; 6511 : while ((len = stbi__get8(s)) != 0) { 00952 48 8b 8d 60 02 00 00 mov rcx, QWORD PTR s$[rbp] @@ -8265,7 +8285,7 @@ $LN16@stbi__gif_: 00 00 cmp DWORD PTR len$7[rbp], 0 0096e 74 14 je SHORT $LN17@stbi__gif_ -; 6499 : stbi__skip(s, len); +; 6512 : stbi__skip(s, len); 00970 8b 95 44 01 00 00 mov edx, DWORD PTR len$7[rbp] @@ -8273,29 +8293,29 @@ $LN16@stbi__gif_: 00 00 mov rcx, QWORD PTR s$[rbp] 0097d e8 00 00 00 00 call stbi__skip -; 6500 : } +; 6513 : } 00982 eb ce jmp SHORT $LN16@stbi__gif_ $LN17@stbi__gif_: -; 6501 : break; +; 6514 : break; 00984 eb 3a jmp SHORT $LN11@stbi__gif_ $LN52@stbi__gif_: -; 6502 : } -; 6503 : -; 6504 : case 0x3B: // gif stream termination code -; 6505 : return (stbi_uc*)s; // using '1' causes warning on some compilers +; 6515 : } +; 6516 : +; 6517 : case 0x3B: // gif stream termination code +; 6518 : return (stbi_uc*)s; // using '1' causes warning on some compilers 00986 48 8b 85 60 02 00 00 mov rax, QWORD PTR s$[rbp] 0098d eb 36 jmp SHORT $LN1@stbi__gif_ $LN53@stbi__gif_: -; 6506 : -; 6507 : default: -; 6508 : return stbi__errpuc("unknown code", "Corrupt GIF"); +; 6519 : +; 6520 : default: +; 6521 : return stbi__errpuc("unknown code", "Corrupt GIF"); 0098f 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0N@DJABBOOH@unknown?5code@ @@ -8316,13 +8336,13 @@ $LN66@stbi__gif_: 009be eb 05 jmp SHORT $LN1@stbi__gif_ $LN11@stbi__gif_: -; 6509 : } -; 6510 : } +; 6522 : } +; 6523 : } 009c0 e9 b7 f9 ff ff jmp $LN8@stbi__gif_ $LN1@stbi__gif_: -; 6511 : } +; 6524 : } 009c5 48 8d a5 48 02 00 00 lea rsp, QWORD PTR [rbp+584] @@ -8361,7 +8381,7 @@ s$ = 640 g$ = 648 stbi__process_gif_raster PROC ; COMDAT -; 6240 : { +; 6253 : { 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx @@ -8374,20 +8394,20 @@ stbi__process_gif_raster PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 6241 : stbi_uc lzw_cs; -; 6242 : stbi__int32 len, init_code; -; 6243 : stbi__uint32 first; -; 6244 : stbi__int32 codesize, codemask, avail, oldcode, bits, valid_bits, clear; -; 6245 : stbi__gif_lzw* p; -; 6246 : -; 6247 : lzw_cs = stbi__get8(s); +; 6254 : stbi_uc lzw_cs; +; 6255 : stbi__int32 len, init_code; +; 6256 : stbi__uint32 first; +; 6257 : stbi__int32 codesize, codemask, avail, oldcode, bits, valid_bits, clear; +; 6258 : stbi__gif_lzw* p; +; 6259 : +; 6260 : lzw_cs = stbi__get8(s); 00024 48 8b 8d 80 02 00 00 mov rcx, QWORD PTR s$[rbp] 0002b e8 00 00 00 00 call stbi__get8 00030 88 45 04 mov BYTE PTR lzw_cs$[rbp], al -; 6248 : if (lzw_cs > 12) return NULL; +; 6261 : if (lzw_cs > 12) return NULL; 00033 0f b6 45 04 movzx eax, BYTE PTR lzw_cs$[rbp] 00037 83 f8 0c cmp eax, 12 @@ -8396,7 +8416,7 @@ stbi__process_gif_raster PROC ; COMDAT 0003e e9 9f 04 00 00 jmp $LN1@stbi__proc $LN10@stbi__proc: -; 6249 : clear = 1 << lzw_cs; +; 6262 : clear = 1 << lzw_cs; 00043 0f b6 45 04 movzx eax, BYTE PTR lzw_cs$[rbp] 00047 b9 01 00 00 00 mov ecx, 1 @@ -8409,19 +8429,19 @@ $LN10@stbi__proc: 0005d 89 85 44 01 00 00 mov DWORD PTR clear$[rbp], eax -; 6250 : first = 1; +; 6263 : first = 1; 00063 c7 45 64 01 00 00 00 mov DWORD PTR first$[rbp], 1 -; 6251 : codesize = lzw_cs + 1; +; 6264 : codesize = lzw_cs + 1; 0006a 0f b6 45 04 movzx eax, BYTE PTR lzw_cs$[rbp] 0006e ff c0 inc eax 00070 89 85 84 00 00 00 mov DWORD PTR codesize$[rbp], eax -; 6252 : codemask = (1 << codesize) - 1; +; 6265 : codemask = (1 << codesize) - 1; 00076 8b 85 84 00 00 00 mov eax, DWORD PTR codesize$[rbp] @@ -8436,17 +8456,17 @@ $LN10@stbi__proc: 00094 89 85 a4 00 00 00 mov DWORD PTR codemask$[rbp], eax -; 6253 : bits = 0; +; 6266 : bits = 0; 0009a c7 85 04 01 00 00 00 00 00 00 mov DWORD PTR bits$[rbp], 0 -; 6254 : valid_bits = 0; +; 6267 : valid_bits = 0; 000a4 c7 85 24 01 00 00 00 00 00 00 mov DWORD PTR valid_bits$[rbp], 0 -; 6255 : for (init_code = 0; init_code < clear; init_code++) { +; 6268 : for (init_code = 0; init_code < clear; init_code++) { 000ae c7 45 44 00 00 00 00 mov DWORD PTR init_code$[rbp], 0 @@ -8461,7 +8481,7 @@ $LN4@stbi__proc: 000c5 39 45 44 cmp DWORD PTR init_code$[rbp], eax 000c8 7d 46 jge SHORT $LN3@stbi__proc -; 6256 : g->codes[init_code].prefix = -1; +; 6269 : g->codes[init_code].prefix = -1; 000ca 48 63 45 44 movsxd rax, DWORD PTR init_code$[rbp] 000ce b9 ff ff ff ff mov ecx, -1 @@ -8470,7 +8490,7 @@ $LN4@stbi__proc: 000da 66 89 8c 82 34 08 00 00 mov WORD PTR [rdx+rax*4+2100], cx -; 6257 : g->codes[init_code].first = (stbi_uc)init_code; +; 6270 : g->codes[init_code].first = (stbi_uc)init_code; 000e2 48 63 45 44 movsxd rax, DWORD PTR init_code$[rbp] 000e6 48 8b 8d 88 02 @@ -8479,7 +8499,7 @@ $LN4@stbi__proc: 000f1 88 94 81 36 08 00 00 mov BYTE PTR [rcx+rax*4+2102], dl -; 6258 : g->codes[init_code].suffix = (stbi_uc)init_code; +; 6271 : g->codes[init_code].suffix = (stbi_uc)init_code; 000f8 48 63 45 44 movsxd rax, DWORD PTR init_code$[rbp] 000fc 48 8b 8d 88 02 @@ -8488,14 +8508,14 @@ $LN4@stbi__proc: 00107 88 94 81 37 08 00 00 mov BYTE PTR [rcx+rax*4+2103], dl -; 6259 : } +; 6272 : } 0010e eb a7 jmp SHORT $LN2@stbi__proc $LN3@stbi__proc: -; 6260 : -; 6261 : // support no starting clear code -; 6262 : avail = clear + 2; +; 6273 : +; 6274 : // support no starting clear code +; 6275 : avail = clear + 2; 00110 8b 85 44 01 00 00 mov eax, DWORD PTR clear$[rbp] @@ -8503,20 +8523,20 @@ $LN3@stbi__proc: 00119 89 85 c4 00 00 00 mov DWORD PTR avail$[rbp], eax -; 6263 : oldcode = -1; +; 6276 : oldcode = -1; 0011f c7 85 e4 00 00 00 ff ff ff ff mov DWORD PTR oldcode$[rbp], -1 -; 6264 : -; 6265 : len = 0; +; 6277 : +; 6278 : len = 0; 00129 c7 45 24 00 00 00 00 mov DWORD PTR len$[rbp], 0 $LN5@stbi__proc: -; 6266 : for (;;) { -; 6267 : if (valid_bits < codesize) { +; 6279 : for (;;) { +; 6280 : if (valid_bits < codesize) { 00130 8b 85 84 00 00 00 mov eax, DWORD PTR codesize$[rbp] @@ -8524,12 +8544,12 @@ $LN5@stbi__proc: 00 cmp DWORD PTR valid_bits$[rbp], eax 0013c 7d 71 jge SHORT $LN11@stbi__proc -; 6268 : if (len == 0) { +; 6281 : if (len == 0) { 0013e 83 7d 24 00 cmp DWORD PTR len$[rbp], 0 00142 75 28 jne SHORT $LN13@stbi__proc -; 6269 : len = stbi__get8(s); // start new block +; 6282 : len = stbi__get8(s); // start new block 00144 48 8b 8d 80 02 00 00 mov rcx, QWORD PTR s$[rbp] @@ -8537,12 +8557,12 @@ $LN5@stbi__proc: 00150 0f b6 c0 movzx eax, al 00153 89 45 24 mov DWORD PTR len$[rbp], eax -; 6270 : if (len == 0) +; 6283 : if (len == 0) 00156 83 7d 24 00 cmp DWORD PTR len$[rbp], 0 0015a 75 10 jne SHORT $LN14@stbi__proc -; 6271 : return g->out; +; 6284 : return g->out; 0015c 48 8b 85 88 02 00 00 mov rax, QWORD PTR g$[rbp] @@ -8551,14 +8571,14 @@ $LN5@stbi__proc: $LN14@stbi__proc: $LN13@stbi__proc: -; 6272 : } -; 6273 : --len; +; 6285 : } +; 6286 : --len; 0016c 8b 45 24 mov eax, DWORD PTR len$[rbp] 0016f ff c8 dec eax 00171 89 45 24 mov DWORD PTR len$[rbp], eax -; 6274 : bits |= (stbi__int32)stbi__get8(s) << valid_bits; +; 6287 : bits |= (stbi__int32)stbi__get8(s) << valid_bits; 00174 48 8b 8d 80 02 00 00 mov rcx, QWORD PTR s$[rbp] @@ -8574,7 +8594,7 @@ $LN13@stbi__proc: 00195 89 85 04 01 00 00 mov DWORD PTR bits$[rbp], eax -; 6275 : valid_bits += 8; +; 6288 : valid_bits += 8; 0019b 8b 85 24 01 00 00 mov eax, DWORD PTR valid_bits$[rbp] @@ -8582,13 +8602,13 @@ $LN13@stbi__proc: 001a4 89 85 24 01 00 00 mov DWORD PTR valid_bits$[rbp], eax -; 6276 : } +; 6289 : } 001aa e9 2e 03 00 00 jmp $LN12@stbi__proc $LN11@stbi__proc: -; 6277 : else { -; 6278 : stbi__int32 code = bits & codemask; +; 6290 : else { +; 6291 : stbi__int32 code = bits & codemask; 001af 8b 85 a4 00 00 00 mov eax, DWORD PTR codemask$[rbp] @@ -8599,7 +8619,7 @@ $LN11@stbi__proc: 001bf 89 85 84 01 00 00 mov DWORD PTR code$1[rbp], eax -; 6279 : bits >>= codesize; +; 6292 : bits >>= codesize; 001c5 8b 85 84 00 00 00 mov eax, DWORD PTR codesize$[rbp] @@ -8610,7 +8630,7 @@ $LN11@stbi__proc: 001d6 89 85 04 01 00 00 mov DWORD PTR bits$[rbp], eax -; 6280 : valid_bits -= codesize; +; 6293 : valid_bits -= codesize; 001dc 8b 85 84 00 00 00 mov eax, DWORD PTR codesize$[rbp] @@ -8621,8 +8641,8 @@ $LN11@stbi__proc: 001ec 89 85 24 01 00 00 mov DWORD PTR valid_bits$[rbp], eax -; 6281 : // @OPTIMIZE: is there some way we can accelerate the non-clear path? -; 6282 : if (code == clear) { // clear code +; 6294 : // @OPTIMIZE: is there some way we can accelerate the non-clear path? +; 6295 : if (code == clear) { // clear code 001f2 8b 85 44 01 00 00 mov eax, DWORD PTR clear$[rbp] @@ -8630,14 +8650,14 @@ $LN11@stbi__proc: 00 cmp DWORD PTR code$1[rbp], eax 001fe 75 55 jne SHORT $LN15@stbi__proc -; 6283 : codesize = lzw_cs + 1; +; 6296 : codesize = lzw_cs + 1; 00200 0f b6 45 04 movzx eax, BYTE PTR lzw_cs$[rbp] 00204 ff c0 inc eax 00206 89 85 84 00 00 00 mov DWORD PTR codesize$[rbp], eax -; 6284 : codemask = (1 << codesize) - 1; +; 6297 : codemask = (1 << codesize) - 1; 0020c 8b 85 84 00 00 00 mov eax, DWORD PTR codesize$[rbp] @@ -8652,7 +8672,7 @@ $LN11@stbi__proc: 0022a 89 85 a4 00 00 00 mov DWORD PTR codemask$[rbp], eax -; 6285 : avail = clear + 2; +; 6298 : avail = clear + 2; 00230 8b 85 44 01 00 00 mov eax, DWORD PTR clear$[rbp] @@ -8660,22 +8680,22 @@ $LN11@stbi__proc: 00239 89 85 c4 00 00 00 mov DWORD PTR avail$[rbp], eax -; 6286 : oldcode = -1; +; 6299 : oldcode = -1; 0023f c7 85 e4 00 00 00 ff ff ff ff mov DWORD PTR oldcode$[rbp], -1 -; 6287 : first = 0; +; 6300 : first = 0; 00249 c7 45 64 00 00 00 00 mov DWORD PTR first$[rbp], 0 -; 6288 : } +; 6301 : } 00250 e9 88 02 00 00 jmp $LN16@stbi__proc $LN15@stbi__proc: -; 6289 : else if (code == clear + 1) { // end of stream code +; 6302 : else if (code == clear + 1) { // end of stream code 00255 8b 85 44 01 00 00 mov eax, DWORD PTR clear$[rbp] @@ -8684,7 +8704,7 @@ $LN15@stbi__proc: 00 cmp DWORD PTR code$1[rbp], eax 00263 75 4d jne SHORT $LN17@stbi__proc -; 6290 : stbi__skip(s, len); +; 6303 : stbi__skip(s, len); 00265 8b 55 24 mov edx, DWORD PTR len$[rbp] 00268 48 8b 8d 80 02 @@ -8692,7 +8712,7 @@ $LN15@stbi__proc: 0026f e8 00 00 00 00 call stbi__skip $LN8@stbi__proc: -; 6291 : while ((len = stbi__get8(s)) > 0) +; 6304 : while ((len = stbi__get8(s)) > 0) 00274 48 8b 8d 80 02 00 00 mov rcx, QWORD PTR s$[rbp] @@ -8702,7 +8722,7 @@ $LN8@stbi__proc: 00286 83 7d 24 00 cmp DWORD PTR len$[rbp], 0 0028a 7e 11 jle SHORT $LN9@stbi__proc -; 6292 : stbi__skip(s, len); +; 6305 : stbi__skip(s, len); 0028c 8b 55 24 mov edx, DWORD PTR len$[rbp] 0028f 48 8b 8d 80 02 @@ -8711,19 +8731,19 @@ $LN8@stbi__proc: 0029b eb d7 jmp SHORT $LN8@stbi__proc $LN9@stbi__proc: -; 6293 : return g->out; +; 6306 : return g->out; 0029d 48 8b 85 88 02 00 00 mov rax, QWORD PTR g$[rbp] 002a4 48 8b 40 08 mov rax, QWORD PTR [rax+8] 002a8 e9 35 02 00 00 jmp $LN1@stbi__proc -; 6294 : } +; 6307 : } 002ad e9 2b 02 00 00 jmp $LN18@stbi__proc $LN17@stbi__proc: -; 6295 : else if (code <= avail) { +; 6308 : else if (code <= avail) { 002b2 8b 85 c4 00 00 00 mov eax, DWORD PTR avail$[rbp] @@ -8732,12 +8752,12 @@ $LN17@stbi__proc: 002be 0f 8f e8 01 00 00 jg $LN19@stbi__proc -; 6296 : if (first) { +; 6309 : if (first) { 002c4 83 7d 64 00 cmp DWORD PTR first$[rbp], 0 002c8 74 34 je SHORT $LN21@stbi__proc -; 6297 : return stbi__errpuc("no clear code", "Corrupt GIF"); +; 6310 : return stbi__errpuc("no clear code", "Corrupt GIF"); 002ca 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0O@MGDACKOJ@no?5clear?5code@ @@ -8758,16 +8778,16 @@ $LN29@stbi__proc: 002f9 e9 e4 01 00 00 jmp $LN1@stbi__proc $LN21@stbi__proc: -; 6298 : } -; 6299 : -; 6300 : if (oldcode >= 0) { +; 6311 : } +; 6312 : +; 6313 : if (oldcode >= 0) { 002fe 83 bd e4 00 00 00 00 cmp DWORD PTR oldcode$[rbp], 0 00305 0f 8c ec 00 00 00 jl $LN22@stbi__proc -; 6301 : p = &g->codes[avail++]; +; 6314 : p = &g->codes[avail++]; 0030b 48 63 85 c4 00 00 00 movsxd rax, DWORD PTR avail$[rbp] @@ -8783,13 +8803,13 @@ $LN21@stbi__proc: 00330 89 85 c4 00 00 00 mov DWORD PTR avail$[rbp], eax -; 6302 : if (avail > 8192) { +; 6315 : if (avail > 8192) { 00336 81 bd c4 00 00 00 00 20 00 00 cmp DWORD PTR avail$[rbp], 8192 ; 00002000H 00340 7e 34 jle SHORT $LN24@stbi__proc -; 6303 : return stbi__errpuc("too many codes", "Corrupt GIF"); +; 6316 : return stbi__errpuc("too many codes", "Corrupt GIF"); 00342 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0P@GJNJCPDJ@too?5many?5codes@ @@ -8810,9 +8830,9 @@ $LN31@stbi__proc: 00371 e9 6c 01 00 00 jmp $LN1@stbi__proc $LN24@stbi__proc: -; 6304 : } -; 6305 : -; 6306 : p->prefix = (stbi__int16)oldcode; +; 6317 : } +; 6318 : +; 6319 : p->prefix = (stbi__int16)oldcode; 00376 48 8b 85 68 01 00 00 mov rax, QWORD PTR p$[rbp] @@ -8820,7 +8840,7 @@ $LN24@stbi__proc: 00 00 movzx ecx, WORD PTR oldcode$[rbp] 00384 66 89 08 mov WORD PTR [rax], cx -; 6307 : p->first = g->codes[oldcode].first; +; 6320 : p->first = g->codes[oldcode].first; 00387 48 63 85 e4 00 00 00 movsxd rax, DWORD PTR oldcode$[rbp] @@ -8832,7 +8852,7 @@ $LN24@stbi__proc: 08 00 00 movzx eax, BYTE PTR [rdx+rax*4+2102] 003a4 88 41 02 mov BYTE PTR [rcx+2], al -; 6308 : p->suffix = (code == avail) ? p->first : g->codes[code].first; +; 6321 : p->suffix = (code == avail) ? p->first : g->codes[code].first; 003a7 8b 85 c4 00 00 00 mov eax, DWORD PTR avail$[rbp] @@ -8861,12 +8881,12 @@ $LN33@stbi__proc: 00 00 movzx ecx, BYTE PTR tv192[rbp] 003f2 88 48 03 mov BYTE PTR [rax+3], cl -; 6309 : } +; 6322 : } 003f5 eb 42 jmp SHORT $LN23@stbi__proc $LN22@stbi__proc: -; 6310 : else if (code == avail) +; 6323 : else if (code == avail) 003f7 8b 85 c4 00 00 00 mov eax, DWORD PTR avail$[rbp] @@ -8874,7 +8894,7 @@ $LN22@stbi__proc: 00 cmp DWORD PTR code$1[rbp], eax 00403 75 34 jne SHORT $LN25@stbi__proc -; 6311 : return stbi__errpuc("illegal code in raster", "Corrupt GIF"); +; 6324 : return stbi__errpuc("illegal code in raster", "Corrupt GIF"); 00405 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0BH@LOKBIIOJ@illegal?5code?5in?5raster@ @@ -8896,8 +8916,8 @@ $LN35@stbi__proc: $LN25@stbi__proc: $LN23@stbi__proc: -; 6312 : -; 6313 : stbi__out_gif_code(g, (stbi__uint16)code); +; 6325 : +; 6326 : stbi__out_gif_code(g, (stbi__uint16)code); 00439 0f b7 95 84 01 00 00 movzx edx, WORD PTR code$1[rbp] @@ -8905,8 +8925,8 @@ $LN23@stbi__proc: 00 00 mov rcx, QWORD PTR g$[rbp] 00447 e8 00 00 00 00 call stbi__out_gif_code -; 6314 : -; 6315 : if ((avail & codemask) == 0 && avail <= 0x0FFF) { +; 6327 : +; 6328 : if ((avail & codemask) == 0 && avail <= 0x0FFF) { 0044c 8b 85 a4 00 00 00 mov eax, DWORD PTR codemask$[rbp] @@ -8920,7 +8940,7 @@ $LN23@stbi__proc: 00 ff 0f 00 00 cmp DWORD PTR avail$[rbp], 4095 ; 00000fffH 0046a 7f 32 jg SHORT $LN26@stbi__proc -; 6316 : codesize++; +; 6329 : codesize++; 0046c 8b 85 84 00 00 00 mov eax, DWORD PTR codesize$[rbp] @@ -8928,7 +8948,7 @@ $LN23@stbi__proc: 00474 89 85 84 00 00 00 mov DWORD PTR codesize$[rbp], eax -; 6317 : codemask = (1 << codesize) - 1; +; 6330 : codemask = (1 << codesize) - 1; 0047a 8b 85 84 00 00 00 mov eax, DWORD PTR codesize$[rbp] @@ -8944,22 +8964,22 @@ $LN23@stbi__proc: 00 mov DWORD PTR codemask$[rbp], eax $LN26@stbi__proc: -; 6318 : } -; 6319 : -; 6320 : oldcode = code; +; 6331 : } +; 6332 : +; 6333 : oldcode = code; 0049e 8b 85 84 01 00 00 mov eax, DWORD PTR code$1[rbp] 004a4 89 85 e4 00 00 00 mov DWORD PTR oldcode$[rbp], eax -; 6321 : } +; 6334 : } 004aa eb 31 jmp SHORT $LN20@stbi__proc $LN19@stbi__proc: -; 6322 : else { -; 6323 : return stbi__errpuc("illegal code in raster", "Corrupt GIF"); +; 6335 : else { +; 6336 : return stbi__errpuc("illegal code in raster", "Corrupt GIF"); 004ac 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0BH@LOKBIIOJ@illegal?5code?5in?5raster@ @@ -8983,14 +9003,14 @@ $LN18@stbi__proc: $LN16@stbi__proc: $LN12@stbi__proc: -; 6324 : } -; 6325 : } -; 6326 : } +; 6337 : } +; 6338 : } +; 6339 : } 004dd e9 4e fc ff ff jmp $LN5@stbi__proc $LN1@stbi__proc: -; 6327 : } +; 6340 : } 004e2 48 8d a5 68 02 00 00 lea rsp, QWORD PTR [rbp+616] @@ -9011,7 +9031,7 @@ g$ = 320 code$ = 328 stbi__out_gif_code PROC ; COMDAT -; 6203 : { +; 6216 : { 00000 66 89 54 24 10 mov WORD PTR [rsp+16], dx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx @@ -9024,12 +9044,12 @@ stbi__out_gif_code PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 6204 : stbi_uc* p, * c; -; 6205 : int idx; -; 6206 : -; 6207 : // recurse to decode the prefixes, since the linked-list is backwards, -; 6208 : // and working backwards through an interleaved image would be nasty -; 6209 : if (g->codes[code].prefix >= 0) +; 6217 : stbi_uc* p, * c; +; 6218 : int idx; +; 6219 : +; 6220 : // recurse to decode the prefixes, since the linked-list is backwards, +; 6221 : // and working backwards through an interleaved image would be nasty +; 6222 : if (g->codes[code].prefix >= 0) 00024 0f b7 85 48 01 00 00 movzx eax, WORD PTR code$[rbp] @@ -9040,7 +9060,7 @@ stbi__out_gif_code PROC ; COMDAT 0003a 85 c0 test eax, eax 0003c 7c 22 jl SHORT $LN4@stbi__out_ -; 6210 : stbi__out_gif_code(g, g->codes[code].prefix); +; 6223 : stbi__out_gif_code(g, g->codes[code].prefix); 0003e 0f b7 85 48 01 00 00 movzx eax, WORD PTR code$[rbp] @@ -9053,8 +9073,8 @@ stbi__out_gif_code PROC ; COMDAT 0005b e8 00 00 00 00 call stbi__out_gif_code $LN4@stbi__out_: -; 6211 : -; 6212 : if (g->cur_y >= g->max_y) return; +; 6224 : +; 6225 : if (g->cur_y >= g->max_y) return; 00060 48 8b 85 40 01 00 00 mov rax, QWORD PTR g$[rbp] @@ -9068,8 +9088,8 @@ $LN4@stbi__out_: 0007c e9 64 02 00 00 jmp $LN1@stbi__out_ $LN5@stbi__out_: -; 6213 : -; 6214 : idx = g->cur_x + g->cur_y; +; 6226 : +; 6227 : idx = g->cur_x + g->cur_y; 00081 48 8b 85 40 01 00 00 mov rax, QWORD PTR g$[rbp] @@ -9081,7 +9101,7 @@ $LN5@stbi__out_: 00 add eax, DWORD PTR [rcx+34912] 0009b 89 45 44 mov DWORD PTR idx$[rbp], eax -; 6215 : p = &g->out[idx]; +; 6228 : p = &g->out[idx]; 0009e 48 63 45 44 movsxd rax, DWORD PTR idx$[rbp] 000a2 48 8b 8d 40 01 @@ -9091,7 +9111,7 @@ $LN5@stbi__out_: 000b0 48 8b c1 mov rax, rcx 000b3 48 89 45 08 mov QWORD PTR p$[rbp], rax -; 6216 : g->history[idx / 4] = 1; +; 6229 : g->history[idx / 4] = 1; 000b7 8b 45 44 mov eax, DWORD PTR idx$[rbp] 000ba 99 cdq @@ -9104,8 +9124,8 @@ $LN5@stbi__out_: 000cc 48 8b 49 18 mov rcx, QWORD PTR [rcx+24] 000d0 c6 04 01 01 mov BYTE PTR [rcx+rax], 1 -; 6217 : -; 6218 : c = &g->color_table[g->codes[code].suffix * 4]; +; 6230 : +; 6231 : c = &g->color_table[g->codes[code].suffix * 4]; 000d4 0f b7 85 48 01 00 00 movzx eax, WORD PTR code$[rbp] @@ -9123,7 +9143,7 @@ $LN5@stbi__out_: 00100 48 8b c1 mov rax, rcx 00103 48 89 45 28 mov QWORD PTR c$[rbp], rax -; 6219 : if (c[3] > 128) { // don't render transparent pixels; +; 6232 : if (c[3] > 128) { // don't render transparent pixels; 00107 b8 01 00 00 00 mov eax, 1 0010c 48 6b c0 03 imul rax, rax, 3 @@ -9133,7 +9153,7 @@ $LN5@stbi__out_: 0011d 0f 8e 88 00 00 00 jle $LN6@stbi__out_ -; 6220 : p[0] = c[2]; +; 6233 : p[0] = c[2]; 00123 b8 01 00 00 00 mov eax, 1 00128 48 6b c0 02 imul rax, rax, 2 @@ -9144,7 +9164,7 @@ $LN5@stbi__out_: 0013d 41 0f b6 04 00 movzx eax, BYTE PTR [r8+rax] 00142 88 04 0a mov BYTE PTR [rdx+rcx], al -; 6221 : p[1] = c[1]; +; 6234 : p[1] = c[1]; 00145 b8 01 00 00 00 mov eax, 1 0014a 48 6b c0 01 imul rax, rax, 1 @@ -9155,7 +9175,7 @@ $LN5@stbi__out_: 0015f 41 0f b6 04 00 movzx eax, BYTE PTR [r8+rax] 00164 88 04 0a mov BYTE PTR [rdx+rcx], al -; 6222 : p[2] = c[0]; +; 6235 : p[2] = c[0]; 00167 b8 01 00 00 00 mov eax, 1 0016c 48 6b c0 00 imul rax, rax, 0 @@ -9166,7 +9186,7 @@ $LN5@stbi__out_: 00181 41 0f b6 04 00 movzx eax, BYTE PTR [r8+rax] 00186 88 04 0a mov BYTE PTR [rdx+rcx], al -; 6223 : p[3] = c[3]; +; 6236 : p[3] = c[3]; 00189 b8 01 00 00 00 mov eax, 1 0018e 48 6b c0 03 imul rax, rax, 3 @@ -9178,8 +9198,8 @@ $LN5@stbi__out_: 001a8 88 04 0a mov BYTE PTR [rdx+rcx], al $LN6@stbi__out_: -; 6224 : } -; 6225 : g->cur_x += 4; +; 6237 : } +; 6238 : g->cur_x += 4; 001ab 48 8b 85 40 01 00 00 mov rax, QWORD PTR g$[rbp] @@ -9191,8 +9211,8 @@ $LN6@stbi__out_: 001c2 89 81 5c 88 00 00 mov DWORD PTR [rcx+34908], eax -; 6226 : -; 6227 : if (g->cur_x >= g->max_x) { +; 6239 : +; 6240 : if (g->cur_x >= g->max_x) { 001c8 48 8b 85 40 01 00 00 mov rax, QWORD PTR g$[rbp] @@ -9205,7 +9225,7 @@ $LN6@stbi__out_: 001e2 0f 8c fd 00 00 00 jl $LN7@stbi__out_ -; 6228 : g->cur_x = g->start_x; +; 6241 : g->cur_x = g->start_x; 001e8 48 8b 85 40 01 00 00 mov rax, QWORD PTR g$[rbp] @@ -9216,7 +9236,7 @@ $LN6@stbi__out_: 001fc 89 88 5c 88 00 00 mov DWORD PTR [rax+34908], ecx -; 6229 : g->cur_y += g->step; +; 6242 : g->cur_y += g->step; 00202 48 8b 85 40 01 00 00 mov rax, QWORD PTR g$[rbp] @@ -9232,8 +9252,8 @@ $LN6@stbi__out_: 00 mov DWORD PTR [rcx+34912], eax $LN2@stbi__out_: -; 6230 : -; 6231 : while (g->cur_y >= g->max_y && g->parse > 0) { +; 6243 : +; 6244 : while (g->cur_y >= g->max_y && g->parse > 0) { 00229 48 8b 85 40 01 00 00 mov rax, QWORD PTR g$[rbp] @@ -9252,7 +9272,7 @@ $LN2@stbi__out_: 00257 0f 8e 88 00 00 00 jle $LN3@stbi__out_ -; 6232 : g->step = (1 << g->parse) * g->line_size; +; 6245 : g->step = (1 << g->parse) * g->line_size; 0025d 48 8b 85 40 01 00 00 mov rax, QWORD PTR g$[rbp] @@ -9274,7 +9294,7 @@ $LN2@stbi__out_: 00295 89 81 44 88 00 00 mov DWORD PTR [rcx+34884], eax -; 6233 : g->cur_y = g->start_y + (g->step >> 1); +; 6246 : g->cur_y = g->start_y + (g->step >> 1); 0029b 48 8b 85 40 01 00 00 mov rax, QWORD PTR g$[rbp] @@ -9290,7 +9310,7 @@ $LN2@stbi__out_: 002be 89 81 60 88 00 00 mov DWORD PTR [rcx+34912], eax -; 6234 : --g->parse; +; 6247 : --g->parse; 002c4 48 8b 85 40 01 00 00 mov rax, QWORD PTR g$[rbp] @@ -9302,15 +9322,15 @@ $LN2@stbi__out_: 002da 89 81 40 88 00 00 mov DWORD PTR [rcx+34880], eax -; 6235 : } +; 6248 : } 002e0 e9 44 ff ff ff jmp $LN2@stbi__out_ $LN3@stbi__out_: $LN7@stbi__out_: $LN1@stbi__out_: -; 6236 : } -; 6237 : } +; 6249 : } +; 6250 : } 002e5 48 8d a5 28 01 00 00 lea rsp, QWORD PTR [rbp+296] @@ -9330,7 +9350,7 @@ y$ = 272 comp$ = 280 stbi__gif_info_raw PROC ; COMDAT -; 6188 : { +; 6201 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -9345,13 +9365,13 @@ stbi__gif_info_raw PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 6189 : stbi__gif* g = (stbi__gif*)stbi__malloc(sizeof(stbi__gif)); +; 6202 : stbi__gif* g = (stbi__gif*)stbi__malloc(sizeof(stbi__gif)); 0002e b9 70 88 00 00 mov ecx, 34928 ; 00008870H 00033 e8 00 00 00 00 call stbi__malloc 00038 48 89 45 08 mov QWORD PTR g$[rbp], rax -; 6190 : if (!g) return stbi__err("outofmem", "Out of memory"); +; 6203 : if (!g) return stbi__err("outofmem", "Out of memory"); 0003c 48 83 7d 08 00 cmp QWORD PTR g$[rbp], 0 00041 75 0e jne SHORT $LN2@stbi__gif_ @@ -9361,7 +9381,7 @@ stbi__gif_info_raw PROC ; COMDAT 0004f eb 7d jmp SHORT $LN1@stbi__gif_ $LN2@stbi__gif_: -; 6191 : if (!stbi__gif_header(s, g, comp, 1)) { +; 6204 : if (!stbi__gif_header(s, g, comp, 1)) { 00051 41 b9 01 00 00 00 mov r9d, 1 @@ -9374,26 +9394,26 @@ $LN2@stbi__gif_: 0006e 85 c0 test eax, eax 00070 75 1a jne SHORT $LN3@stbi__gif_ -; 6192 : STBI_FREE(g); +; 6205 : STBI_FREE(g); 00072 48 8b 4d 08 mov rcx, QWORD PTR g$[rbp] 00076 ff 15 00 00 00 00 call QWORD PTR __imp_free -; 6193 : stbi__rewind(s); +; 6206 : stbi__rewind(s); 0007c 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] 00083 e8 00 00 00 00 call stbi__rewind -; 6194 : return 0; +; 6207 : return 0; 00088 33 c0 xor eax, eax 0008a eb 42 jmp SHORT $LN1@stbi__gif_ $LN3@stbi__gif_: -; 6195 : } -; 6196 : if (x) *x = g->w; +; 6208 : } +; 6209 : if (x) *x = g->w; 0008c 48 83 bd 08 01 00 00 00 cmp QWORD PTR x$[rbp], 0 @@ -9405,7 +9425,7 @@ $LN3@stbi__gif_: 000a3 89 08 mov DWORD PTR [rax], ecx $LN4@stbi__gif_: -; 6197 : if (y) *y = g->h; +; 6210 : if (y) *y = g->h; 000a5 48 83 bd 10 01 00 00 00 cmp QWORD PTR y$[rbp], 0 @@ -9417,18 +9437,18 @@ $LN4@stbi__gif_: 000bd 89 08 mov DWORD PTR [rax], ecx $LN5@stbi__gif_: -; 6198 : STBI_FREE(g); +; 6211 : STBI_FREE(g); 000bf 48 8b 4d 08 mov rcx, QWORD PTR g$[rbp] 000c3 ff 15 00 00 00 00 call QWORD PTR __imp_free -; 6199 : return 1; +; 6212 : return 1; 000c9 b8 01 00 00 00 mov eax, 1 $LN1@stbi__gif_: -; 6200 : } +; 6213 : } 000ce 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -9449,7 +9469,7 @@ comp$ = 272 is_info$ = 280 stbi__gif_header PROC ; COMDAT -; 6157 : { +; 6170 : { 00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -9464,8 +9484,8 @@ stbi__gif_header PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 6158 : stbi_uc version; -; 6159 : if (stbi__get8(s) != 'G' || stbi__get8(s) != 'I' || stbi__get8(s) != 'F' || stbi__get8(s) != '8') +; 6171 : stbi_uc version; +; 6172 : if (stbi__get8(s) != 'G' || stbi__get8(s) != 'I' || stbi__get8(s) != 'F' || stbi__get8(s) != '8') 0002e 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -9493,7 +9513,7 @@ stbi__gif_header PROC ; COMDAT 0007c 74 11 je SHORT $LN2@stbi__gif_ $LN3@stbi__gif_: -; 6160 : return stbi__err("not GIF", "Corrupt GIF"); +; 6173 : return stbi__err("not GIF", "Corrupt GIF"); 0007e 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_07KMJLPAII@not?5GIF@ @@ -9501,15 +9521,15 @@ $LN3@stbi__gif_: 0008a e9 c6 01 00 00 jmp $LN1@stbi__gif_ $LN2@stbi__gif_: -; 6161 : -; 6162 : version = stbi__get8(s); +; 6174 : +; 6175 : version = stbi__get8(s); 0008f 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] 00096 e8 00 00 00 00 call stbi__get8 0009b 88 45 04 mov BYTE PTR version$[rbp], al -; 6163 : if (version != '7' && version != '9') return stbi__err("not GIF", "Corrupt GIF"); +; 6176 : if (version != '7' && version != '9') return stbi__err("not GIF", "Corrupt GIF"); 0009e 0f b6 45 04 movzx eax, BYTE PTR version$[rbp] 000a2 83 f8 37 cmp eax, 55 ; 00000037H @@ -9523,7 +9543,7 @@ $LN2@stbi__gif_: 000bc e9 94 01 00 00 jmp $LN1@stbi__gif_ $LN4@stbi__gif_: -; 6164 : if (stbi__get8(s) != 'a') return stbi__err("not GIF", "Corrupt GIF"); +; 6177 : if (stbi__get8(s) != 'a') return stbi__err("not GIF", "Corrupt GIF"); 000c1 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -9537,8 +9557,8 @@ $LN4@stbi__gif_: 000e1 e9 6f 01 00 00 jmp $LN1@stbi__gif_ $LN5@stbi__gif_: -; 6165 : -; 6166 : stbi__g_failure_reason = ""; +; 6178 : +; 6179 : stbi__g_failure_reason = ""; 000e6 b8 00 00 00 00 mov eax, OFFSET FLAT:stbi__g_failure_reason 000eb 8b c0 mov eax, eax @@ -9551,7 +9571,7 @@ $LN5@stbi__gif_: 00 00 lea rdx, OFFSET FLAT:??_C@_00CNPNBAHC@@ 00107 48 89 14 08 mov QWORD PTR [rax+rcx], rdx -; 6167 : g->w = stbi__get16le(s); +; 6180 : g->w = stbi__get16le(s); 0010b 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -9560,7 +9580,7 @@ $LN5@stbi__gif_: 00 00 mov rcx, QWORD PTR g$[rbp] 0011e 89 01 mov DWORD PTR [rcx], eax -; 6168 : g->h = stbi__get16le(s); +; 6181 : g->h = stbi__get16le(s); 00120 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -9569,7 +9589,7 @@ $LN5@stbi__gif_: 00 00 mov rcx, QWORD PTR g$[rbp] 00133 89 41 04 mov DWORD PTR [rcx+4], eax -; 6169 : g->flags = stbi__get8(s); +; 6182 : g->flags = stbi__get8(s); 00136 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -9579,7 +9599,7 @@ $LN5@stbi__gif_: 00 00 mov rcx, QWORD PTR g$[rbp] 0014c 89 41 20 mov DWORD PTR [rcx+32], eax -; 6170 : g->bgindex = stbi__get8(s); +; 6183 : g->bgindex = stbi__get8(s); 0014f 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -9589,7 +9609,7 @@ $LN5@stbi__gif_: 00 00 mov rcx, QWORD PTR g$[rbp] 00165 89 41 24 mov DWORD PTR [rcx+36], eax -; 6171 : g->ratio = stbi__get8(s); +; 6184 : g->ratio = stbi__get8(s); 00168 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -9599,15 +9619,15 @@ $LN5@stbi__gif_: 00 00 mov rcx, QWORD PTR g$[rbp] 0017e 89 41 28 mov DWORD PTR [rcx+40], eax -; 6172 : g->transparent = -1; +; 6185 : g->transparent = -1; 00181 48 8b 85 08 01 00 00 mov rax, QWORD PTR g$[rbp] 00188 c7 40 2c ff ff ff ff mov DWORD PTR [rax+44], -1 -; 6173 : -; 6174 : if (g->w > STBI_MAX_DIMENSIONS) return stbi__err("too large", "Very large image (corrupt?)"); +; 6186 : +; 6187 : if (g->w > STBI_MAX_DIMENSIONS) return stbi__err("too large", "Very large image (corrupt?)"); 0018f 48 8b 85 08 01 00 00 mov rax, QWORD PTR g$[rbp] @@ -9620,7 +9640,7 @@ $LN5@stbi__gif_: 001aa e9 a6 00 00 00 jmp $LN1@stbi__gif_ $LN6@stbi__gif_: -; 6175 : if (g->h > STBI_MAX_DIMENSIONS) return stbi__err("too large", "Very large image (corrupt?)"); +; 6188 : if (g->h > STBI_MAX_DIMENSIONS) return stbi__err("too large", "Very large image (corrupt?)"); 001af 48 8b 85 08 01 00 00 mov rax, QWORD PTR g$[rbp] @@ -9633,8 +9653,8 @@ $LN6@stbi__gif_: 001cb e9 85 00 00 00 jmp $LN1@stbi__gif_ $LN7@stbi__gif_: -; 6176 : -; 6177 : if (comp != 0) *comp = 4; // can't actually tell whether it's 3 or 4 until we parse the comments +; 6189 : +; 6190 : if (comp != 0) *comp = 4; // can't actually tell whether it's 3 or 4 until we parse the comments 001d0 48 83 bd 10 01 00 00 00 cmp QWORD PTR comp$[rbp], 0 @@ -9645,8 +9665,8 @@ $LN7@stbi__gif_: 00 mov DWORD PTR [rax], 4 $LN8@stbi__gif_: -; 6178 : -; 6179 : if (is_info) return 1; +; 6191 : +; 6192 : if (is_info) return 1; 001e7 83 bd 18 01 00 00 00 cmp DWORD PTR is_info$[rbp], 0 @@ -9655,8 +9675,8 @@ $LN8@stbi__gif_: 001f5 eb 5e jmp SHORT $LN1@stbi__gif_ $LN9@stbi__gif_: -; 6180 : -; 6181 : if (g->flags & 0x80) +; 6193 : +; 6194 : if (g->flags & 0x80) 001f7 48 8b 85 08 01 00 00 mov rax, QWORD PTR g$[rbp] @@ -9665,7 +9685,7 @@ $LN9@stbi__gif_: 00206 85 c0 test eax, eax 00208 74 46 je SHORT $LN10@stbi__gif_ -; 6182 : stbi__gif_parse_colortable(s, g->pal, 2 << (g->flags & 7), -1); +; 6195 : stbi__gif_parse_colortable(s, g->pal, 2 << (g->flags & 7), -1); 0020a 48 8b 85 08 01 00 00 mov rax, QWORD PTR g$[rbp] @@ -9690,13 +9710,13 @@ $LN9@stbi__gif_: 0024b e8 00 00 00 00 call stbi__gif_parse_colortable $LN10@stbi__gif_: -; 6183 : -; 6184 : return 1; +; 6196 : +; 6197 : return 1; 00250 b8 01 00 00 00 mov eax, 1 $LN1@stbi__gif_: -; 6185 : } +; 6198 : } 00255 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -9717,7 +9737,7 @@ num_entries$ = 272 transp$ = 280 stbi__gif_parse_colortable PROC ; COMDAT -; 6146 : { +; 6159 : { 00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d 00005 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d @@ -9732,8 +9752,8 @@ stbi__gif_parse_colortable PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 6147 : int i; -; 6148 : for (i = 0; i < num_entries; ++i) { +; 6160 : int i; +; 6161 : for (i = 0; i < num_entries; ++i) { 0002e c7 45 04 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -9749,7 +9769,7 @@ $LN4@stbi__gif_: 00048 0f 8d bd 00 00 00 jge $LN3@stbi__gif_ -; 6149 : pal[i][2] = stbi__get8(s); +; 6162 : pal[i][2] = stbi__get8(s); 0004e 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -9762,7 +9782,7 @@ $LN4@stbi__gif_: 0006e 48 6b d2 02 imul rdx, rdx, 2 00072 88 04 11 mov BYTE PTR [rcx+rdx], al -; 6150 : pal[i][1] = stbi__get8(s); +; 6163 : pal[i][1] = stbi__get8(s); 00075 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -9775,7 +9795,7 @@ $LN4@stbi__gif_: 00095 48 6b d2 01 imul rdx, rdx, 1 00099 88 04 11 mov BYTE PTR [rcx+rdx], al -; 6151 : pal[i][0] = stbi__get8(s); +; 6164 : pal[i][0] = stbi__get8(s); 0009c 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -9788,7 +9808,7 @@ $LN4@stbi__gif_: 000bc 48 6b d2 00 imul rdx, rdx, 0 000c0 88 04 11 mov BYTE PTR [rcx+rdx], al -; 6152 : pal[i][3] = transp == i ? 0 : 255; +; 6165 : pal[i][3] = transp == i ? 0 : 255; 000c3 8b 45 04 mov eax, DWORD PTR i$[rbp] 000c6 39 85 18 01 00 @@ -9811,12 +9831,12 @@ $LN7@stbi__gif_: 00 00 movzx edx, BYTE PTR tv93[rbp] 00103 88 14 08 mov BYTE PTR [rax+rcx], dl -; 6153 : } +; 6166 : } 00106 e9 2c ff ff ff jmp $LN2@stbi__gif_ $LN3@stbi__gif_: -; 6154 : } +; 6167 : } 0010b 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -9833,7 +9853,7 @@ sz$ = 4 s$ = 256 stbi__gif_test_raw PROC ; COMDAT -; 6129 : { +; 6142 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -9845,8 +9865,8 @@ stbi__gif_test_raw PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 6130 : int sz; -; 6131 : if (stbi__get8(s) != 'G' || stbi__get8(s) != 'I' || stbi__get8(s) != 'F' || stbi__get8(s) != '8') return 0; +; 6143 : int sz; +; 6144 : if (stbi__get8(s) != 'G' || stbi__get8(s) != 'I' || stbi__get8(s) != 'F' || stbi__get8(s) != '8') return 0; 0001f 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -9877,7 +9897,7 @@ $LN3@stbi__gif_: 00071 eb 3f jmp SHORT $LN1@stbi__gif_ $LN2@stbi__gif_: -; 6132 : sz = stbi__get8(s); +; 6145 : sz = stbi__get8(s); 00073 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -9885,7 +9905,7 @@ $LN2@stbi__gif_: 0007f 0f b6 c0 movzx eax, al 00082 89 45 04 mov DWORD PTR sz$[rbp], eax -; 6133 : if (sz != '9' && sz != '7') return 0; +; 6146 : if (sz != '9' && sz != '7') return 0; 00085 83 7d 04 39 cmp DWORD PTR sz$[rbp], 57 ; 00000039H 00089 74 0a je SHORT $LN4@stbi__gif_ @@ -9895,7 +9915,7 @@ $LN2@stbi__gif_: 00093 eb 1d jmp SHORT $LN1@stbi__gif_ $LN4@stbi__gif_: -; 6134 : if (stbi__get8(s) != 'a') return 0; +; 6147 : if (stbi__get8(s) != 'a') return 0; 00095 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -9907,12 +9927,12 @@ $LN4@stbi__gif_: 000ab eb 05 jmp SHORT $LN1@stbi__gif_ $LN5@stbi__gif_: -; 6135 : return 1; +; 6148 : return 1; 000ad b8 01 00 00 00 mov eax, 1 $LN1@stbi__gif_: -; 6136 : } +; 6149 : } 000b2 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -9961,7 +9981,7 @@ comp$ = 1064 result$ = 1072 stbi__pic_load_core PROC ; COMDAT -; 5938 : { +; 5951 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d @@ -9987,7 +10007,7 @@ stbi__pic_load_core PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00052 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 5939 : int act_comp = 0, num_packets = 0, y, chained; +; 5952 : int act_comp = 0, num_packets = 0, y, chained; 00057 c7 45 04 00 00 00 00 mov DWORD PTR act_comp$[rbp], 0 @@ -9995,20 +10015,20 @@ stbi__pic_load_core PROC ; COMDAT 00 00 mov DWORD PTR num_packets$[rbp], 0 $LN4@stbi__pic_: -; 5940 : stbi__pic_packet packets[10]; -; 5941 : -; 5942 : // this will (should...) cater for even some bizarre stuff like having data -; 5943 : // for the same channel in multiple packets. -; 5944 : do { -; 5945 : stbi__pic_packet* packet; -; 5946 : -; 5947 : if (num_packets == sizeof(packets) / sizeof(packets[0])) +; 5953 : stbi__pic_packet packets[10]; +; 5954 : +; 5955 : // this will (should...) cater for even some bizarre stuff like having data +; 5956 : // for the same channel in multiple packets. +; 5957 : do { +; 5958 : stbi__pic_packet* packet; +; 5959 : +; 5960 : if (num_packets == sizeof(packets) / sizeof(packets[0])) 00065 48 63 45 24 movsxd rax, DWORD PTR num_packets$[rbp] 00069 48 83 f8 0a cmp rax, 10 0006d 75 34 jne SHORT $LN29@stbi__pic_ -; 5948 : return stbi__errpuc("bad format", "too many packets"); +; 5961 : return stbi__errpuc("bad format", "too many packets"); 0006f 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0L@DMAPJJO@bad?5format@ @@ -10029,8 +10049,8 @@ $LN51@stbi__pic_: 0009e e9 38 06 00 00 jmp $LN1@stbi__pic_ $LN29@stbi__pic_: -; 5949 : -; 5950 : packet = &packets[num_packets++]; +; 5962 : +; 5963 : packet = &packets[num_packets++]; 000a3 48 63 45 24 movsxd rax, DWORD PTR num_packets$[rbp] 000a7 48 6b c0 03 imul rax, rax, 3 @@ -10042,8 +10062,8 @@ $LN29@stbi__pic_: 000bd ff c0 inc eax 000bf 89 45 24 mov DWORD PTR num_packets$[rbp], eax -; 5951 : -; 5952 : chained = stbi__get8(s); +; 5964 : +; 5965 : chained = stbi__get8(s); 000c2 48 8b 8d 10 04 00 00 mov rcx, QWORD PTR s$[rbp] @@ -10051,7 +10071,7 @@ $LN29@stbi__pic_: 000ce 0f b6 c0 movzx eax, al 000d1 89 45 64 mov DWORD PTR chained$[rbp], eax -; 5953 : packet->size = stbi__get8(s); +; 5966 : packet->size = stbi__get8(s); 000d4 48 8b 8d 10 04 00 00 mov rcx, QWORD PTR s$[rbp] @@ -10060,7 +10080,7 @@ $LN29@stbi__pic_: 00 00 mov rcx, QWORD PTR packet$6[rbp] 000e7 88 01 mov BYTE PTR [rcx], al -; 5954 : packet->type = stbi__get8(s); +; 5967 : packet->type = stbi__get8(s); 000e9 48 8b 8d 10 04 00 00 mov rcx, QWORD PTR s$[rbp] @@ -10069,7 +10089,7 @@ $LN29@stbi__pic_: 00 00 mov rcx, QWORD PTR packet$6[rbp] 000fc 88 41 01 mov BYTE PTR [rcx+1], al -; 5955 : packet->channel = stbi__get8(s); +; 5968 : packet->channel = stbi__get8(s); 000ff 48 8b 8d 10 04 00 00 mov rcx, QWORD PTR s$[rbp] @@ -10078,8 +10098,8 @@ $LN29@stbi__pic_: 00 00 mov rcx, QWORD PTR packet$6[rbp] 00112 88 41 02 mov BYTE PTR [rcx+2], al -; 5956 : -; 5957 : act_comp |= packet->channel; +; 5969 : +; 5970 : act_comp |= packet->channel; 00115 48 8b 85 c8 00 00 00 mov rax, QWORD PTR packet$6[rbp] @@ -10089,8 +10109,8 @@ $LN29@stbi__pic_: 00125 8b c1 mov eax, ecx 00127 89 45 04 mov DWORD PTR act_comp$[rbp], eax -; 5958 : -; 5959 : if (stbi__at_eof(s)) return stbi__errpuc("bad file", "file too short (reading packets)"); +; 5971 : +; 5972 : if (stbi__at_eof(s)) return stbi__errpuc("bad file", "file too short (reading packets)"); 0012a 48 8b 8d 10 04 00 00 mov rcx, QWORD PTR s$[rbp] @@ -10116,7 +10136,7 @@ $LN53@stbi__pic_: 00169 e9 6d 05 00 00 jmp $LN1@stbi__pic_ $LN30@stbi__pic_: -; 5960 : if (packet->size != 8) return stbi__errpuc("bad format", "packet isn't 8bpp"); +; 5973 : if (packet->size != 8) return stbi__errpuc("bad format", "packet isn't 8bpp"); 0016e 48 8b 85 c8 00 00 00 mov rax, QWORD PTR packet$6[rbp] @@ -10142,14 +10162,14 @@ $LN55@stbi__pic_: 001ac e9 2a 05 00 00 jmp $LN1@stbi__pic_ $LN31@stbi__pic_: -; 5961 : } while (chained); +; 5974 : } while (chained); 001b1 83 7d 64 00 cmp DWORD PTR chained$[rbp], 0 001b5 0f 85 aa fe ff ff jne $LN4@stbi__pic_ -; 5962 : -; 5963 : *comp = (act_comp & 0x10 ? 4 : 3); // has alpha channel? +; 5975 : +; 5976 : *comp = (act_comp & 0x10 ? 4 : 3); // has alpha channel? 001bb 8b 45 04 mov eax, DWORD PTR act_comp$[rbp] 001be 83 e0 10 and eax, 16 @@ -10168,8 +10188,8 @@ $LN57@stbi__pic_: 00 mov ecx, DWORD PTR tv138[rbp] 001e8 89 08 mov DWORD PTR [rax], ecx -; 5964 : -; 5965 : for (y = 0; y < height; ++y) { +; 5977 : +; 5978 : for (y = 0; y < height; ++y) { 001ea c7 45 44 00 00 00 00 mov DWORD PTR y$[rbp], 0 @@ -10185,9 +10205,9 @@ $LN7@stbi__pic_: 00204 0f 8d ca 04 00 00 jge $LN6@stbi__pic_ -; 5966 : int packet_idx; -; 5967 : -; 5968 : for (packet_idx = 0; packet_idx < num_packets; ++packet_idx) { +; 5979 : int packet_idx; +; 5980 : +; 5981 : for (packet_idx = 0; packet_idx < num_packets; ++packet_idx) { 0020a c7 85 e4 00 00 00 00 00 00 00 mov DWORD PTR packet_idx$7[rbp], 0 @@ -10205,7 +10225,7 @@ $LN10@stbi__pic_: 0022d 0f 8d 9c 04 00 00 jge $LN9@stbi__pic_ -; 5969 : stbi__pic_packet* packet = &packets[packet_idx]; +; 5982 : stbi__pic_packet* packet = &packets[packet_idx]; 00233 48 63 85 e4 00 00 00 movsxd rax, DWORD PTR packet_idx$7[rbp] @@ -10215,7 +10235,7 @@ $LN10@stbi__pic_: 00246 48 89 85 08 01 00 00 mov QWORD PTR packet$8[rbp], rax -; 5970 : stbi_uc* dest = result + y * width * 4; +; 5983 : stbi_uc* dest = result + y * width * 4; 0024d 8b 45 44 mov eax, DWORD PTR y$[rbp] 00250 0f af 85 18 04 @@ -10229,8 +10249,8 @@ $LN10@stbi__pic_: 00269 48 89 85 28 01 00 00 mov QWORD PTR dest$9[rbp], rax -; 5971 : -; 5972 : switch (packet->type) { +; 5984 : +; 5985 : switch (packet->type) { 00270 48 8b 85 08 01 00 00 mov rax, QWORD PTR packet$8[rbp] @@ -10249,8 +10269,8 @@ $LN10@stbi__pic_: 0029e 0f 84 d6 01 00 00 je $LN39@stbi__pic_ -; 5973 : default: -; 5974 : return stbi__errpuc("bad format", "packet has bad compression type"); +; 5986 : default: +; 5987 : return stbi__errpuc("bad format", "packet has bad compression type"); 002a4 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0L@DMAPJJO@bad?5format@ @@ -10271,11 +10291,11 @@ $LN59@stbi__pic_: 002d3 e9 03 04 00 00 jmp $LN1@stbi__pic_ $LN33@stbi__pic_: -; 5975 : -; 5976 : case 0: {//uncompressed -; 5977 : int x; -; 5978 : -; 5979 : for (x = 0; x < width; ++x, dest += 4) +; 5988 : +; 5989 : case 0: {//uncompressed +; 5990 : int x; +; 5991 : +; 5992 : for (x = 0; x < width; ++x, dest += 4) 002d8 c7 85 44 01 00 00 00 00 00 00 mov DWORD PTR x$10[rbp], 0 @@ -10298,7 +10318,7 @@ $LN15@stbi__pic_: 00 cmp DWORD PTR x$10[rbp], eax 00310 7d 2e jge SHORT $LN14@stbi__pic_ -; 5980 : if (!stbi__readval(s, packet->channel, dest)) +; 5993 : if (!stbi__readval(s, packet->channel, dest)) 00312 48 8b 85 08 01 00 00 mov rax, QWORD PTR packet$8[rbp] @@ -10312,7 +10332,7 @@ $LN15@stbi__pic_: 00332 48 85 c0 test rax, rax 00335 75 07 jne SHORT $LN34@stbi__pic_ -; 5981 : return 0; +; 5994 : return 0; 00337 33 c0 xor eax, eax 00339 e9 9d 03 00 00 jmp $LN1@stbi__pic_ @@ -10320,16 +10340,16 @@ $LN34@stbi__pic_: 0033e eb a4 jmp SHORT $LN13@stbi__pic_ $LN14@stbi__pic_: -; 5982 : break; +; 5995 : break; 00340 e9 85 03 00 00 jmp $LN11@stbi__pic_ $LN35@stbi__pic_: -; 5983 : } -; 5984 : -; 5985 : case 1://Pure RLE -; 5986 : { -; 5987 : int left = width, i; +; 5996 : } +; 5997 : +; 5998 : case 1://Pure RLE +; 5999 : { +; 6000 : int left = width, i; 00345 8b 85 18 04 00 00 mov eax, DWORD PTR width$[rbp] @@ -10337,17 +10357,17 @@ $LN35@stbi__pic_: 00 mov DWORD PTR left$11[rbp], eax $LN16@stbi__pic_: -; 5988 : -; 5989 : while (left > 0) { +; 6001 : +; 6002 : while (left > 0) { 00351 83 bd 64 01 00 00 00 cmp DWORD PTR left$11[rbp], 0 00358 0f 8e 17 01 00 00 jle $LN17@stbi__pic_ -; 5990 : stbi_uc count, value[4]; -; 5991 : -; 5992 : count = stbi__get8(s); +; 6003 : stbi_uc count, value[4]; +; 6004 : +; 6005 : count = stbi__get8(s); 0035e 48 8b 8d 10 04 00 00 mov rcx, QWORD PTR s$[rbp] @@ -10355,7 +10375,7 @@ $LN16@stbi__pic_: 0036a 88 85 a4 01 00 00 mov BYTE PTR count$13[rbp], al -; 5993 : if (stbi__at_eof(s)) return stbi__errpuc("bad file", "file too short (pure read count)"); +; 6006 : if (stbi__at_eof(s)) return stbi__errpuc("bad file", "file too short (pure read count)"); 00370 48 8b 8d 10 04 00 00 mov rcx, QWORD PTR s$[rbp] @@ -10381,8 +10401,8 @@ $LN61@stbi__pic_: 003af e9 27 03 00 00 jmp $LN1@stbi__pic_ $LN36@stbi__pic_: -; 5994 : -; 5995 : if (count > left) +; 6007 : +; 6008 : if (count > left) 003b4 0f b6 85 a4 01 00 00 movzx eax, BYTE PTR count$13[rbp] @@ -10390,7 +10410,7 @@ $LN36@stbi__pic_: 00 cmp eax, DWORD PTR left$11[rbp] 003c1 7e 0d jle SHORT $LN37@stbi__pic_ -; 5996 : count = (stbi_uc)left; +; 6009 : count = (stbi_uc)left; 003c3 0f b6 85 64 01 00 00 movzx eax, BYTE PTR left$11[rbp] @@ -10398,8 +10418,8 @@ $LN36@stbi__pic_: 00 mov BYTE PTR count$13[rbp], al $LN37@stbi__pic_: -; 5997 : -; 5998 : if (!stbi__readval(s, packet->channel, value)) return 0; +; 6010 : +; 6011 : if (!stbi__readval(s, packet->channel, value)) return 0; 003d0 48 8b 85 08 01 00 00 mov rax, QWORD PTR packet$8[rbp] @@ -10416,8 +10436,8 @@ $LN37@stbi__pic_: 003f7 e9 df 02 00 00 jmp $LN1@stbi__pic_ $LN38@stbi__pic_: -; 5999 : -; 6000 : for (i = 0; i < count; ++i, dest += 4) +; 6012 : +; 6013 : for (i = 0; i < count; ++i, dest += 4) 003fc c7 85 84 01 00 00 00 00 00 00 mov DWORD PTR i$12[rbp], 0 @@ -10440,7 +10460,7 @@ $LN20@stbi__pic_: 00 cmp DWORD PTR i$12[rbp], eax 00435 7d 22 jge SHORT $LN19@stbi__pic_ -; 6001 : stbi__copyval(packet->channel, dest, value); +; 6014 : stbi__copyval(packet->channel, dest, value); 00437 48 8b 85 08 01 00 00 mov rax, QWORD PTR packet$8[rbp] @@ -10454,7 +10474,7 @@ $LN20@stbi__pic_: 00457 eb af jmp SHORT $LN18@stbi__pic_ $LN19@stbi__pic_: -; 6002 : left -= count; +; 6015 : left -= count; 00459 0f b6 85 a4 01 00 00 movzx eax, BYTE PTR count$13[rbp] @@ -10465,20 +10485,20 @@ $LN19@stbi__pic_: 0046a 89 85 64 01 00 00 mov DWORD PTR left$11[rbp], eax -; 6003 : } +; 6016 : } 00470 e9 dc fe ff ff jmp $LN16@stbi__pic_ $LN17@stbi__pic_: -; 6004 : } -; 6005 : break; +; 6017 : } +; 6018 : break; 00475 e9 50 02 00 00 jmp $LN11@stbi__pic_ $LN39@stbi__pic_: -; 6006 : -; 6007 : case 2: {//Mixed RLE -; 6008 : int left = width; +; 6019 : +; 6020 : case 2: {//Mixed RLE +; 6021 : int left = width; 0047a 8b 85 18 04 00 00 mov eax, DWORD PTR width$[rbp] @@ -10486,14 +10506,14 @@ $LN39@stbi__pic_: 00 mov DWORD PTR left$15[rbp], eax $LN21@stbi__pic_: -; 6009 : while (left > 0) { +; 6022 : while (left > 0) { 00486 83 bd e4 01 00 00 00 cmp DWORD PTR left$15[rbp], 0 0048d 0f 8e 37 02 00 00 jle $LN22@stbi__pic_ -; 6010 : int count = stbi__get8(s), i; +; 6023 : int count = stbi__get8(s), i; 00493 48 8b 8d 10 04 00 00 mov rcx, QWORD PTR s$[rbp] @@ -10502,7 +10522,7 @@ $LN21@stbi__pic_: 004a2 89 85 04 02 00 00 mov DWORD PTR count$16[rbp], eax -; 6011 : if (stbi__at_eof(s)) return stbi__errpuc("bad file", "file too short (mixed read count)"); +; 6024 : if (stbi__at_eof(s)) return stbi__errpuc("bad file", "file too short (mixed read count)"); 004a8 48 8b 8d 10 04 00 00 mov rcx, QWORD PTR s$[rbp] @@ -10528,23 +10548,23 @@ $LN63@stbi__pic_: 004e7 e9 ef 01 00 00 jmp $LN1@stbi__pic_ $LN40@stbi__pic_: -; 6012 : -; 6013 : if (count >= 128) { // Repeated +; 6025 : +; 6026 : if (count >= 128) { // Repeated 004ec 81 bd 04 02 00 00 80 00 00 00 cmp DWORD PTR count$16[rbp], 128 ; 00000080H 004f6 0f 8c fe 00 00 00 jl $LN41@stbi__pic_ -; 6014 : stbi_uc value[4]; -; 6015 : -; 6016 : if (count == 128) +; 6027 : stbi_uc value[4]; +; 6028 : +; 6029 : if (count == 128) 004fc 81 bd 04 02 00 00 80 00 00 00 cmp DWORD PTR count$16[rbp], 128 ; 00000080H 00506 75 14 jne SHORT $LN43@stbi__pic_ -; 6017 : count = stbi__get16be(s); +; 6030 : count = stbi__get16be(s); 00508 48 8b 8d 10 04 00 00 mov rcx, QWORD PTR s$[rbp] @@ -10554,8 +10574,8 @@ $LN40@stbi__pic_: 0051a eb 0f jmp SHORT $LN44@stbi__pic_ $LN43@stbi__pic_: -; 6018 : else -; 6019 : count -= 127; +; 6031 : else +; 6032 : count -= 127; 0051c 8b 85 04 02 00 00 mov eax, DWORD PTR count$16[rbp] @@ -10564,7 +10584,7 @@ $LN43@stbi__pic_: 00 mov DWORD PTR count$16[rbp], eax $LN44@stbi__pic_: -; 6020 : if (count > left) +; 6033 : if (count > left) 0052b 8b 85 e4 01 00 00 mov eax, DWORD PTR left$15[rbp] @@ -10572,7 +10592,7 @@ $LN44@stbi__pic_: 00 cmp DWORD PTR count$16[rbp], eax 00537 7e 34 jle SHORT $LN45@stbi__pic_ -; 6021 : return stbi__errpuc("bad file", "scanline overrun"); +; 6034 : return stbi__errpuc("bad file", "scanline overrun"); 00539 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_08GGMBIFE@bad?5file@ @@ -10593,8 +10613,8 @@ $LN65@stbi__pic_: 00568 e9 6e 01 00 00 jmp $LN1@stbi__pic_ $LN45@stbi__pic_: -; 6022 : -; 6023 : if (!stbi__readval(s, packet->channel, value)) +; 6035 : +; 6036 : if (!stbi__readval(s, packet->channel, value)) 0056d 48 8b 85 08 01 00 00 mov rax, QWORD PTR packet$8[rbp] @@ -10608,14 +10628,14 @@ $LN45@stbi__pic_: 0058d 48 85 c0 test rax, rax 00590 75 07 jne SHORT $LN46@stbi__pic_ -; 6024 : return 0; +; 6037 : return 0; 00592 33 c0 xor eax, eax 00594 e9 42 01 00 00 jmp $LN1@stbi__pic_ $LN46@stbi__pic_: -; 6025 : -; 6026 : for (i = 0; i < count; ++i, dest += 4) +; 6038 : +; 6039 : for (i = 0; i < count; ++i, dest += 4) 00599 c7 85 24 02 00 00 00 00 00 00 mov DWORD PTR i$17[rbp], 0 @@ -10638,7 +10658,7 @@ $LN25@stbi__pic_: 00 cmp DWORD PTR i$17[rbp], eax 005d1 7d 22 jge SHORT $LN24@stbi__pic_ -; 6027 : stbi__copyval(packet->channel, dest, value); +; 6040 : stbi__copyval(packet->channel, dest, value); 005d3 48 8b 85 08 01 00 00 mov rax, QWORD PTR packet$8[rbp] @@ -10652,13 +10672,13 @@ $LN25@stbi__pic_: 005f3 eb b0 jmp SHORT $LN23@stbi__pic_ $LN24@stbi__pic_: -; 6028 : } +; 6041 : } 005f5 e9 b5 00 00 00 jmp $LN42@stbi__pic_ $LN41@stbi__pic_: -; 6029 : else { // Raw -; 6030 : ++count; +; 6042 : else { // Raw +; 6043 : ++count; 005fa 8b 85 04 02 00 00 mov eax, DWORD PTR count$16[rbp] @@ -10666,7 +10686,7 @@ $LN41@stbi__pic_: 00602 89 85 04 02 00 00 mov DWORD PTR count$16[rbp], eax -; 6031 : if (count > left) return stbi__errpuc("bad file", "scanline overrun"); +; 6044 : if (count > left) return stbi__errpuc("bad file", "scanline overrun"); 00608 8b 85 e4 01 00 00 mov eax, DWORD PTR left$15[rbp] @@ -10692,8 +10712,8 @@ $LN67@stbi__pic_: 00645 e9 91 00 00 00 jmp $LN1@stbi__pic_ $LN47@stbi__pic_: -; 6032 : -; 6033 : for (i = 0; i < count; ++i, dest += 4) +; 6045 : +; 6046 : for (i = 0; i < count; ++i, dest += 4) 0064a c7 85 24 02 00 00 00 00 00 00 mov DWORD PTR i$17[rbp], 0 @@ -10716,7 +10736,7 @@ $LN28@stbi__pic_: 00 cmp DWORD PTR i$17[rbp], eax 00682 7d 2b jge SHORT $LN27@stbi__pic_ -; 6034 : if (!stbi__readval(s, packet->channel, dest)) +; 6047 : if (!stbi__readval(s, packet->channel, dest)) 00684 48 8b 85 08 01 00 00 mov rax, QWORD PTR packet$8[rbp] @@ -10730,7 +10750,7 @@ $LN28@stbi__pic_: 006a4 48 85 c0 test rax, rax 006a7 75 04 jne SHORT $LN48@stbi__pic_ -; 6035 : return 0; +; 6048 : return 0; 006a9 33 c0 xor eax, eax 006ab eb 2e jmp SHORT $LN1@stbi__pic_ @@ -10739,8 +10759,8 @@ $LN48@stbi__pic_: $LN27@stbi__pic_: $LN42@stbi__pic_: -; 6036 : } -; 6037 : left -= count; +; 6049 : } +; 6050 : left -= count; 006af 8b 85 04 02 00 00 mov eax, DWORD PTR count$16[rbp] @@ -10751,33 +10771,33 @@ $LN42@stbi__pic_: 006bf 89 85 e4 01 00 00 mov DWORD PTR left$15[rbp], eax -; 6038 : } +; 6051 : } 006c5 e9 bc fd ff ff jmp $LN21@stbi__pic_ $LN22@stbi__pic_: $LN11@stbi__pic_: -; 6039 : break; -; 6040 : } -; 6041 : } -; 6042 : } +; 6052 : break; +; 6053 : } +; 6054 : } +; 6055 : } 006ca e9 47 fb ff ff jmp $LN8@stbi__pic_ $LN9@stbi__pic_: -; 6043 : } +; 6056 : } 006cf e9 1f fb ff ff jmp $LN5@stbi__pic_ $LN6@stbi__pic_: -; 6044 : -; 6045 : return result; +; 6057 : +; 6058 : return result; 006d4 48 8b 85 30 04 00 00 mov rax, QWORD PTR result$[rbp] $LN1@stbi__pic_: -; 6046 : } +; 6059 : } 006db 48 8b f8 mov rdi, rax 006de 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] @@ -10807,7 +10827,7 @@ dest$ = 296 src$ = 304 stbi__copyval PROC ; COMDAT -; 5929 : { +; 5942 : { 00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx @@ -10821,13 +10841,13 @@ stbi__copyval PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00023 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 5930 : int mask = 0x80, i; +; 5943 : int mask = 0x80, i; 00028 c7 45 04 80 00 00 00 mov DWORD PTR mask$[rbp], 128 ; 00000080H -; 5931 : -; 5932 : for (i = 0; i < 4; ++i, mask >>= 1) +; 5944 : +; 5945 : for (i = 0; i < 4; ++i, mask >>= 1) 0002f c7 45 24 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -10843,7 +10863,7 @@ $LN4@stbi__copy: 00048 83 7d 24 04 cmp DWORD PTR i$[rbp], 4 0004c 7d 31 jge SHORT $LN3@stbi__copy -; 5933 : if (channel & mask) +; 5946 : if (channel & mask) 0004e 8b 45 04 mov eax, DWORD PTR mask$[rbp] 00051 8b 8d 20 01 00 @@ -10853,7 +10873,7 @@ $LN4@stbi__copy: 0005b 85 c0 test eax, eax 0005d 74 1e je SHORT $LN5@stbi__copy -; 5934 : dest[i] = src[i]; +; 5947 : dest[i] = src[i]; 0005f 48 63 45 24 movsxd rax, DWORD PTR i$[rbp] 00063 48 63 4d 24 movsxd rcx, DWORD PTR i$[rbp] @@ -10867,7 +10887,7 @@ $LN5@stbi__copy: 0007d eb b9 jmp SHORT $LN2@stbi__copy $LN3@stbi__copy: -; 5935 : } +; 5948 : } 0007f 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] @@ -10888,7 +10908,7 @@ channel$ = 296 dest$ = 304 stbi__readval PROC ; COMDAT -; 5915 : { +; 5928 : { 00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 00005 89 54 24 10 mov DWORD PTR [rsp+16], edx @@ -10902,13 +10922,13 @@ stbi__readval PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00023 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 5916 : int mask = 0x80, i; +; 5929 : int mask = 0x80, i; 00028 c7 45 04 80 00 00 00 mov DWORD PTR mask$[rbp], 128 ; 00000080H -; 5917 : -; 5918 : for (i = 0; i < 4; ++i, mask >>= 1) { +; 5930 : +; 5931 : for (i = 0; i < 4; ++i, mask >>= 1) { 0002f c7 45 24 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -10924,7 +10944,7 @@ $LN4@stbi__read: 00048 83 7d 24 04 cmp DWORD PTR i$[rbp], 4 0004c 7d 71 jge SHORT $LN3@stbi__read -; 5919 : if (channel & mask) { +; 5932 : if (channel & mask) { 0004e 8b 45 04 mov eax, DWORD PTR mask$[rbp] 00051 8b 8d 28 01 00 @@ -10934,7 +10954,7 @@ $LN4@stbi__read: 0005b 85 c0 test eax, eax 0005d 74 5b je SHORT $LN5@stbi__read -; 5920 : if (stbi__at_eof(s)) return stbi__errpuc("bad file", "PIC file too short"); +; 5933 : if (stbi__at_eof(s)) return stbi__errpuc("bad file", "PIC file too short"); 0005f 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -10960,7 +10980,7 @@ $LN9@stbi__read: 0009e eb 26 jmp SHORT $LN1@stbi__read $LN6@stbi__read: -; 5921 : dest[i] = stbi__get8(s); +; 5934 : dest[i] = stbi__get8(s); 000a0 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -10971,20 +10991,20 @@ $LN6@stbi__read: 000b7 88 04 0a mov BYTE PTR [rdx+rcx], al $LN5@stbi__read: -; 5922 : } -; 5923 : } +; 5935 : } +; 5936 : } 000ba e9 79 ff ff ff jmp $LN2@stbi__read $LN3@stbi__read: -; 5924 : -; 5925 : return dest; +; 5937 : +; 5938 : return dest; 000bf 48 8b 85 30 01 00 00 mov rax, QWORD PTR dest$[rbp] $LN1@stbi__read: -; 5926 : } +; 5939 : } 000c6 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] @@ -11001,7 +11021,7 @@ i$ = 4 s$ = 256 stbi__pic_test_core PROC ; COMDAT -; 5894 : { +; 5907 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -11013,9 +11033,9 @@ stbi__pic_test_core PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 5895 : int i; -; 5896 : -; 5897 : if (!stbi__pic_is4(s, "\x53\x80\xF6\x34")) +; 5908 : int i; +; 5909 : +; 5910 : if (!stbi__pic_is4(s, "\x53\x80\xF6\x34")) 0001f 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_04KBFEPHFH@S?$IA?v4@ @@ -11025,14 +11045,14 @@ stbi__pic_test_core PROC ; COMDAT 00032 85 c0 test eax, eax 00034 75 04 jne SHORT $LN5@stbi__pic_ -; 5898 : return 0; +; 5911 : return 0; 00036 33 c0 xor eax, eax 00038 eb 45 jmp SHORT $LN1@stbi__pic_ $LN5@stbi__pic_: -; 5899 : -; 5900 : for (i = 0; i < 84; ++i) +; 5912 : +; 5913 : for (i = 0; i < 84; ++i) 0003a c7 45 04 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -11045,7 +11065,7 @@ $LN4@stbi__pic_: 0004b 83 7d 04 54 cmp DWORD PTR i$[rbp], 84 ; 00000054H 0004f 7d 0e jge SHORT $LN3@stbi__pic_ -; 5901 : stbi__get8(s); +; 5914 : stbi__get8(s); 00051 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -11053,8 +11073,8 @@ $LN4@stbi__pic_: 0005d eb e4 jmp SHORT $LN2@stbi__pic_ $LN3@stbi__pic_: -; 5902 : -; 5903 : if (!stbi__pic_is4(s, "PICT")) +; 5915 : +; 5916 : if (!stbi__pic_is4(s, "PICT")) 0005f 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_04ELNJHLFH@PICT@ @@ -11064,19 +11084,19 @@ $LN3@stbi__pic_: 00072 85 c0 test eax, eax 00074 75 04 jne SHORT $LN6@stbi__pic_ -; 5904 : return 0; +; 5917 : return 0; 00076 33 c0 xor eax, eax 00078 eb 05 jmp SHORT $LN1@stbi__pic_ $LN6@stbi__pic_: -; 5905 : -; 5906 : return 1; +; 5918 : +; 5919 : return 1; 0007a b8 01 00 00 00 mov eax, 1 $LN1@stbi__pic_: -; 5907 : } +; 5920 : } 0007f 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -11094,7 +11114,7 @@ s$ = 256 str$ = 264 stbi__pic_is4 PROC ; COMDAT -; 5884 : { +; 5897 : { 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx @@ -11107,8 +11127,8 @@ stbi__pic_is4 PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 5885 : int i; -; 5886 : for (i = 0; i < 4; ++i) +; 5898 : int i; +; 5899 : for (i = 0; i < 4; ++i) 00024 c7 45 04 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -11121,7 +11141,7 @@ $LN4@stbi__pic_: 00035 83 7d 04 04 cmp DWORD PTR i$[rbp], 4 00039 7d 28 jge SHORT $LN3@stbi__pic_ -; 5887 : if (stbi__get8(s) != (stbi_uc)str[i]) +; 5900 : if (stbi__get8(s) != (stbi_uc)str[i]) 0003b 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -11134,7 +11154,7 @@ $LN4@stbi__pic_: 00059 3b c1 cmp eax, ecx 0005b 74 04 je SHORT $LN5@stbi__pic_ -; 5888 : return 0; +; 5901 : return 0; 0005d 33 c0 xor eax, eax 0005f eb 07 jmp SHORT $LN1@stbi__pic_ @@ -11142,13 +11162,13 @@ $LN5@stbi__pic_: 00061 eb ca jmp SHORT $LN2@stbi__pic_ $LN3@stbi__pic_: -; 5889 : -; 5890 : return 1; +; 5902 : +; 5903 : return 1; 00063 b8 01 00 00 00 mov eax, 1 $LN1@stbi__pic_: -; 5891 : } +; 5904 : } 00068 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -11170,7 +11190,7 @@ p$ = 360 pixelCount$ = 368 stbi__psd_decode_rle PROC ; COMDAT -; 5626 : { +; 5639 : { 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx @@ -11184,15 +11204,15 @@ stbi__psd_decode_rle PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00024 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 5627 : int count, nleft, len; -; 5628 : -; 5629 : count = 0; +; 5640 : int count, nleft, len; +; 5641 : +; 5642 : count = 0; 00029 c7 45 04 00 00 00 00 mov DWORD PTR count$[rbp], 0 $LN2@stbi__psd_: -; 5630 : while ((nleft = pixelCount - count) > 0) { +; 5643 : while ((nleft = pixelCount - count) > 0) { 00030 8b 45 04 mov eax, DWORD PTR count$[rbp] 00033 8b 8d 70 01 00 @@ -11204,7 +11224,7 @@ $LN2@stbi__psd_: 00044 0f 8e f6 00 00 00 jle $LN3@stbi__psd_ -; 5631 : len = stbi__get8(s); +; 5644 : len = stbi__get8(s); 0004a 48 8b 8d 60 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -11212,32 +11232,32 @@ $LN2@stbi__psd_: 00056 0f b6 c0 movzx eax, al 00059 89 45 44 mov DWORD PTR len$[rbp], eax -; 5632 : if (len == 128) { +; 5645 : if (len == 128) { 0005c 81 7d 44 80 00 00 00 cmp DWORD PTR len$[rbp], 128 ; 00000080H 00063 75 05 jne SHORT $LN8@stbi__psd_ -; 5633 : // No-op. -; 5634 : } +; 5646 : // No-op. +; 5647 : } 00065 e9 d1 00 00 00 jmp $LN9@stbi__psd_ $LN8@stbi__psd_: -; 5635 : else if (len < 128) { +; 5648 : else if (len < 128) { 0006a 81 7d 44 80 00 00 00 cmp DWORD PTR len$[rbp], 128 ; 00000080H 00071 7d 5d jge SHORT $LN10@stbi__psd_ -; 5636 : // Copy next len+1 bytes literally. -; 5637 : len++; +; 5649 : // Copy next len+1 bytes literally. +; 5650 : len++; 00073 8b 45 44 mov eax, DWORD PTR len$[rbp] 00076 ff c0 inc eax 00078 89 45 44 mov DWORD PTR len$[rbp], eax -; 5638 : if (len > nleft) return 0; // corrupt data +; 5651 : if (len > nleft) return 0; // corrupt data 0007b 8b 45 24 mov eax, DWORD PTR nleft$[rbp] 0007e 39 45 44 cmp DWORD PTR len$[rbp], eax @@ -11246,7 +11266,7 @@ $LN8@stbi__psd_: 00085 e9 bb 00 00 00 jmp $LN1@stbi__psd_ $LN12@stbi__psd_: -; 5639 : count += len; +; 5652 : count += len; 0008a 8b 45 44 mov eax, DWORD PTR len$[rbp] 0008d 8b 4d 04 mov ecx, DWORD PTR count$[rbp] @@ -11255,12 +11275,12 @@ $LN12@stbi__psd_: 00094 89 45 04 mov DWORD PTR count$[rbp], eax $LN4@stbi__psd_: -; 5640 : while (len) { +; 5653 : while (len) { 00097 83 7d 44 00 cmp DWORD PTR len$[rbp], 0 0009b 74 31 je SHORT $LN5@stbi__psd_ -; 5641 : *p = stbi__get8(s); +; 5654 : *p = stbi__get8(s); 0009d 48 8b 8d 60 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -11269,7 +11289,7 @@ $LN4@stbi__psd_: 00 00 mov rcx, QWORD PTR p$[rbp] 000b0 88 01 mov BYTE PTR [rcx], al -; 5642 : p += 4; +; 5655 : p += 4; 000b2 48 8b 85 68 01 00 00 mov rax, QWORD PTR p$[rbp] @@ -11277,38 +11297,38 @@ $LN4@stbi__psd_: 000bd 48 89 85 68 01 00 00 mov QWORD PTR p$[rbp], rax -; 5643 : len--; +; 5656 : len--; 000c4 8b 45 44 mov eax, DWORD PTR len$[rbp] 000c7 ff c8 dec eax 000c9 89 45 44 mov DWORD PTR len$[rbp], eax -; 5644 : } +; 5657 : } 000cc eb c9 jmp SHORT $LN4@stbi__psd_ $LN5@stbi__psd_: -; 5645 : } +; 5658 : } 000ce eb 6b jmp SHORT $LN11@stbi__psd_ $LN10@stbi__psd_: -; 5646 : else if (len > 128) { +; 5659 : else if (len > 128) { 000d0 81 7d 44 80 00 00 00 cmp DWORD PTR len$[rbp], 128 ; 00000080H 000d7 7e 62 jle SHORT $LN13@stbi__psd_ -; 5647 : stbi_uc val; -; 5648 : // Next -len+1 bytes in the dest are replicated from next source byte. -; 5649 : // (Interpret len as a negative 8-bit int.) -; 5650 : len = 257 - len; +; 5660 : stbi_uc val; +; 5661 : // Next -len+1 bytes in the dest are replicated from next source byte. +; 5662 : // (Interpret len as a negative 8-bit int.) +; 5663 : len = 257 - len; 000d9 b8 01 01 00 00 mov eax, 257 ; 00000101H 000de 2b 45 44 sub eax, DWORD PTR len$[rbp] 000e1 89 45 44 mov DWORD PTR len$[rbp], eax -; 5651 : if (len > nleft) return 0; // corrupt data +; 5664 : if (len > nleft) return 0; // corrupt data 000e4 8b 45 24 mov eax, DWORD PTR nleft$[rbp] 000e7 39 45 44 cmp DWORD PTR len$[rbp], eax @@ -11317,14 +11337,14 @@ $LN10@stbi__psd_: 000ee eb 55 jmp SHORT $LN1@stbi__psd_ $LN14@stbi__psd_: -; 5652 : val = stbi__get8(s); +; 5665 : val = stbi__get8(s); 000f0 48 8b 8d 60 01 00 00 mov rcx, QWORD PTR s$[rbp] 000f7 e8 00 00 00 00 call stbi__get8 000fc 88 45 64 mov BYTE PTR val$1[rbp], al -; 5653 : count += len; +; 5666 : count += len; 000ff 8b 45 44 mov eax, DWORD PTR len$[rbp] 00102 8b 4d 04 mov ecx, DWORD PTR count$[rbp] @@ -11333,19 +11353,19 @@ $LN14@stbi__psd_: 00109 89 45 04 mov DWORD PTR count$[rbp], eax $LN6@stbi__psd_: -; 5654 : while (len) { +; 5667 : while (len) { 0010c 83 7d 44 00 cmp DWORD PTR len$[rbp], 0 00110 74 29 je SHORT $LN7@stbi__psd_ -; 5655 : *p = val; +; 5668 : *p = val; 00112 48 8b 85 68 01 00 00 mov rax, QWORD PTR p$[rbp] 00119 0f b6 4d 64 movzx ecx, BYTE PTR val$1[rbp] 0011d 88 08 mov BYTE PTR [rax], cl -; 5656 : p += 4; +; 5669 : p += 4; 0011f 48 8b 85 68 01 00 00 mov rax, QWORD PTR p$[rbp] @@ -11353,13 +11373,13 @@ $LN6@stbi__psd_: 0012a 48 89 85 68 01 00 00 mov QWORD PTR p$[rbp], rax -; 5657 : len--; +; 5670 : len--; 00131 8b 45 44 mov eax, DWORD PTR len$[rbp] 00134 ff c8 dec eax 00136 89 45 44 mov DWORD PTR len$[rbp], eax -; 5658 : } +; 5671 : } 00139 eb d1 jmp SHORT $LN6@stbi__psd_ $LN7@stbi__psd_: @@ -11367,19 +11387,19 @@ $LN13@stbi__psd_: $LN11@stbi__psd_: $LN9@stbi__psd_: -; 5659 : } -; 5660 : } +; 5672 : } +; 5673 : } 0013b e9 f0 fe ff ff jmp $LN2@stbi__psd_ $LN3@stbi__psd_: -; 5661 : -; 5662 : return 1; +; 5674 : +; 5675 : return 1; 00140 b8 01 00 00 00 mov eax, 1 $LN1@stbi__psd_: -; 5663 : } +; 5676 : } 00145 48 8d a5 48 01 00 00 lea rsp, QWORD PTR [rbp+328] @@ -11401,7 +11421,7 @@ s$ = 384 out$ = 392 stbi__tga_read_rgb16 PROC ; COMDAT -; 5384 : { +; 5397 : { 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx @@ -11414,20 +11434,20 @@ stbi__tga_read_rgb16 PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 5385 : stbi__uint16 px = (stbi__uint16)stbi__get16le(s); +; 5398 : stbi__uint16 px = (stbi__uint16)stbi__get16le(s); 00024 48 8b 8d 80 01 00 00 mov rcx, QWORD PTR s$[rbp] 0002b e8 00 00 00 00 call stbi__get16le 00030 66 89 45 04 mov WORD PTR px$[rbp], ax -; 5386 : stbi__uint16 fiveBitMask = 31; +; 5399 : stbi__uint16 fiveBitMask = 31; 00034 b8 1f 00 00 00 mov eax, 31 00039 66 89 45 24 mov WORD PTR fiveBitMask$[rbp], ax -; 5387 : // we have 3 channels with 5bits each -; 5388 : int r = (px >> 10) & fiveBitMask; +; 5400 : // we have 3 channels with 5bits each +; 5401 : int r = (px >> 10) & fiveBitMask; 0003d 0f b7 45 04 movzx eax, WORD PTR px$[rbp] 00041 c1 f8 0a sar eax, 10 @@ -11435,7 +11455,7 @@ stbi__tga_read_rgb16 PROC ; COMDAT 00048 23 c1 and eax, ecx 0004a 89 45 44 mov DWORD PTR r$[rbp], eax -; 5389 : int g = (px >> 5) & fiveBitMask; +; 5402 : int g = (px >> 5) & fiveBitMask; 0004d 0f b7 45 04 movzx eax, WORD PTR px$[rbp] 00051 c1 f8 05 sar eax, 5 @@ -11443,7 +11463,7 @@ stbi__tga_read_rgb16 PROC ; COMDAT 00058 23 c1 and eax, ecx 0005a 89 45 64 mov DWORD PTR g$[rbp], eax -; 5390 : int b = px & fiveBitMask; +; 5403 : int b = px & fiveBitMask; 0005d 0f b7 45 04 movzx eax, WORD PTR px$[rbp] 00061 0f b7 4d 24 movzx ecx, WORD PTR fiveBitMask$[rbp] @@ -11451,8 +11471,8 @@ stbi__tga_read_rgb16 PROC ; COMDAT 00067 89 85 84 00 00 00 mov DWORD PTR b$[rbp], eax -; 5391 : // Note that this saves the data in RGB(A) order, so it doesn't need to be swapped later -; 5392 : out[0] = (stbi_uc)((r * 255) / 31); +; 5404 : // Note that this saves the data in RGB(A) order, so it doesn't need to be swapped later +; 5405 : out[0] = (stbi_uc)((r * 255) / 31); 0006d 69 45 44 ff 00 00 00 imul eax, DWORD PTR r$[rbp], 255 ; 000000ffH @@ -11465,7 +11485,7 @@ stbi__tga_read_rgb16 PROC ; COMDAT 00 00 mov rdx, QWORD PTR out$[rbp] 0008c 88 04 0a mov BYTE PTR [rdx+rcx], al -; 5393 : out[1] = (stbi_uc)((g * 255) / 31); +; 5406 : out[1] = (stbi_uc)((g * 255) / 31); 0008f 69 45 64 ff 00 00 00 imul eax, DWORD PTR g$[rbp], 255 ; 000000ffH @@ -11478,7 +11498,7 @@ stbi__tga_read_rgb16 PROC ; COMDAT 00 00 mov rdx, QWORD PTR out$[rbp] 000ae 88 04 0a mov BYTE PTR [rdx+rcx], al -; 5394 : out[2] = (stbi_uc)((b * 255) / 31); +; 5407 : out[2] = (stbi_uc)((b * 255) / 31); 000b1 69 85 84 00 00 00 ff 00 00 00 imul eax, DWORD PTR b$[rbp], 255 ; 000000ffH @@ -11491,12 +11511,12 @@ stbi__tga_read_rgb16 PROC ; COMDAT 00 00 mov rdx, QWORD PTR out$[rbp] 000d3 88 04 0a mov BYTE PTR [rdx+rcx], al -; 5395 : -; 5396 : // some people claim that the most significant bit might be used for alpha -; 5397 : // (possibly if an alpha-bit is set in the "image descriptor byte") -; 5398 : // but that only made 16bit test images completely translucent.. -; 5399 : // so let's treat all 15 and 16bit TGAs as RGB with no alpha. -; 5400 : } +; 5408 : +; 5409 : // some people claim that the most significant bit might be used for alpha +; 5410 : // (possibly if an alpha-bit is set in the "image descriptor byte") +; 5411 : // but that only made 16bit test images completely translucent.. +; 5412 : // so let's treat all 15 and 16bit TGAs as RGB with no alpha. +; 5413 : } 000d6 48 8d a5 68 01 00 00 lea rsp, QWORD PTR [rbp+360] @@ -11515,7 +11535,7 @@ is_grey$ = 248 is_rgb16$ = 256 stbi__tga_get_comp PROC ; COMDAT -; 5268 : { +; 5281 : { 00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 00005 89 54 24 10 mov DWORD PTR [rsp+16], edx @@ -11529,8 +11549,8 @@ stbi__tga_get_comp PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00022 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 5269 : // only RGB or RGBA (incl. 16bit) or grey allowed -; 5270 : if (is_rgb16) *is_rgb16 = 0; +; 5282 : // only RGB or RGBA (incl. 16bit) or grey allowed +; 5283 : if (is_rgb16) *is_rgb16 = 0; 00027 48 83 bd 00 01 00 00 00 cmp QWORD PTR is_rgb16$[rbp], 0 @@ -11541,7 +11561,7 @@ stbi__tga_get_comp PROC ; COMDAT 00 mov DWORD PTR [rax], 0 $LN4@stbi__tga_: -; 5271 : switch (bits_per_pixel) { +; 5284 : switch (bits_per_pixel) { 0003e 8b 85 f0 00 00 00 mov eax, DWORD PTR bits_per_pixel$[rbp] @@ -11565,13 +11585,13 @@ $LN4@stbi__tga_: 00077 eb 46 jmp SHORT $LN12@stbi__tga_ $LN5@stbi__tga_: -; 5272 : case 8: return STBI_grey; +; 5285 : case 8: return STBI_grey; 00079 b8 01 00 00 00 mov eax, 1 0007e eb 41 jmp SHORT $LN1@stbi__tga_ $LN6@stbi__tga_: -; 5273 : case 16: if (is_grey) return STBI_grey_alpha; +; 5286 : case 16: if (is_grey) return STBI_grey_alpha; 00080 83 bd f8 00 00 00 00 cmp DWORD PTR is_grey$[rbp], 0 @@ -11581,8 +11601,8 @@ $LN6@stbi__tga_: $LN7@stbi__tga_: $LN8@stbi__tga_: -; 5274 : // fallthrough -; 5275 : case 15: if (is_rgb16) *is_rgb16 = 1; +; 5287 : // fallthrough +; 5288 : case 15: if (is_rgb16) *is_rgb16 = 1; 00090 48 83 bd 00 01 00 00 00 cmp QWORD PTR is_rgb16$[rbp], 0 @@ -11593,15 +11613,15 @@ $LN8@stbi__tga_: 00 mov DWORD PTR [rax], 1 $LN9@stbi__tga_: -; 5276 : return STBI_rgb; +; 5289 : return STBI_rgb; 000a7 b8 03 00 00 00 mov eax, 3 000ac eb 13 jmp SHORT $LN1@stbi__tga_ $LN10@stbi__tga_: $LN11@stbi__tga_: -; 5277 : case 24: // fallthrough -; 5278 : case 32: return bits_per_pixel / 8; +; 5290 : case 24: // fallthrough +; 5291 : case 32: return bits_per_pixel / 8; 000ae 8b 85 f0 00 00 00 mov eax, DWORD PTR bits_per_pixel$[rbp] @@ -11612,13 +11632,13 @@ $LN11@stbi__tga_: 000bd eb 02 jmp SHORT $LN1@stbi__tga_ $LN12@stbi__tga_: -; 5279 : default: return 0; +; 5292 : default: return 0; 000bf 33 c0 xor eax, eax $LN1@stbi__tga_: -; 5280 : } -; 5281 : } +; 5293 : } +; 5294 : } 000c1 48 8d a5 d8 00 00 00 lea rsp, QWORD PTR [rbp+216] @@ -11648,7 +11668,7 @@ s$ = 320 info$ = 328 stbi__bmp_parse_header PROC ; COMDAT -; 4967 : { +; 4980 : { 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx @@ -11661,8 +11681,8 @@ stbi__bmp_parse_header PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4968 : int hsz; -; 4969 : if (stbi__get8(s) != 'B' || stbi__get8(s) != 'M') return stbi__errpuc("not BMP", "Corrupt BMP"); +; 4981 : int hsz; +; 4982 : if (stbi__get8(s) != 'B' || stbi__get8(s) != 'M') return stbi__errpuc("not BMP", "Corrupt BMP"); 00024 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -11696,25 +11716,25 @@ $LN33@stbi__bmp_: 0007b e9 9b 05 00 00 jmp $LN1@stbi__bmp_ $LN5@stbi__bmp_: -; 4970 : stbi__get32le(s); // discard filesize +; 4983 : stbi__get32le(s); // discard filesize 00080 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] 00087 e8 00 00 00 00 call stbi__get32le -; 4971 : stbi__get16le(s); // discard reserved +; 4984 : stbi__get16le(s); // discard reserved 0008c 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] 00093 e8 00 00 00 00 call stbi__get16le -; 4972 : stbi__get16le(s); // discard reserved +; 4985 : stbi__get16le(s); // discard reserved 00098 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] 0009f e8 00 00 00 00 call stbi__get16le -; 4973 : info->offset = stbi__get32le(s); +; 4986 : info->offset = stbi__get32le(s); 000a4 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -11723,7 +11743,7 @@ $LN5@stbi__bmp_: 00 00 mov rcx, QWORD PTR info$[rbp] 000b7 89 41 04 mov DWORD PTR [rcx+4], eax -; 4974 : info->hsz = hsz = stbi__get32le(s); +; 4987 : info->hsz = hsz = stbi__get32le(s); 000ba 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -11734,7 +11754,7 @@ $LN5@stbi__bmp_: 000d0 8b 4d 04 mov ecx, DWORD PTR hsz$[rbp] 000d3 89 48 08 mov DWORD PTR [rax+8], ecx -; 4975 : info->mr = info->mg = info->mb = info->ma = 0; +; 4988 : info->mr = info->mg = info->mb = info->ma = 0; 000d6 48 8b 85 48 01 00 00 mov rax, QWORD PTR info$[rbp] @@ -11753,15 +11773,15 @@ $LN5@stbi__bmp_: 00107 c7 40 0c 00 00 00 00 mov DWORD PTR [rax+12], 0 -; 4976 : info->extra_read = 14; +; 4989 : info->extra_read = 14; 0010e 48 8b 85 48 01 00 00 mov rax, QWORD PTR info$[rbp] 00115 c7 40 20 0e 00 00 00 mov DWORD PTR [rax+32], 14 -; 4977 : -; 4978 : if (info->offset < 0) return stbi__errpuc("bad BMP", "bad BMP"); +; 4990 : +; 4991 : if (info->offset < 0) return stbi__errpuc("bad BMP", "bad BMP"); 0011c 48 8b 85 48 01 00 00 mov rax, QWORD PTR info$[rbp] @@ -11786,8 +11806,8 @@ $LN35@stbi__bmp_: 00158 e9 be 04 00 00 jmp $LN1@stbi__bmp_ $LN7@stbi__bmp_: -; 4979 : -; 4980 : if (hsz != 12 && hsz != 40 && hsz != 56 && hsz != 108 && hsz != 124) return stbi__errpuc("unknown BMP", "BMP type not supported: unknown"); +; 4992 : +; 4993 : if (hsz != 12 && hsz != 40 && hsz != 56 && hsz != 108 && hsz != 124) return stbi__errpuc("unknown BMP", "BMP type not supported: unknown"); 0015d 83 7d 04 0c cmp DWORD PTR hsz$[rbp], 12 00161 74 4c je SHORT $LN8@stbi__bmp_ @@ -11818,12 +11838,12 @@ $LN37@stbi__bmp_: 001aa e9 6c 04 00 00 jmp $LN1@stbi__bmp_ $LN8@stbi__bmp_: -; 4981 : if (hsz == 12) { +; 4994 : if (hsz == 12) { 001af 83 7d 04 0c cmp DWORD PTR hsz$[rbp], 12 001b3 75 2d jne SHORT $LN9@stbi__bmp_ -; 4982 : s->img_x = stbi__get16le(s); +; 4995 : s->img_x = stbi__get16le(s); 001b5 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -11832,7 +11852,7 @@ $LN8@stbi__bmp_: 00 00 mov rcx, QWORD PTR s$[rbp] 001c8 89 01 mov DWORD PTR [rcx], eax -; 4983 : s->img_y = stbi__get16le(s); +; 4996 : s->img_y = stbi__get16le(s); 001ca 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -11841,13 +11861,13 @@ $LN8@stbi__bmp_: 00 00 mov rcx, QWORD PTR s$[rbp] 001dd 89 41 04 mov DWORD PTR [rcx+4], eax -; 4984 : } +; 4997 : } 001e0 eb 2b jmp SHORT $LN10@stbi__bmp_ $LN9@stbi__bmp_: -; 4985 : else { -; 4986 : s->img_x = stbi__get32le(s); +; 4998 : else { +; 4999 : s->img_x = stbi__get32le(s); 001e2 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -11856,7 +11876,7 @@ $LN9@stbi__bmp_: 00 00 mov rcx, QWORD PTR s$[rbp] 001f5 89 01 mov DWORD PTR [rcx], eax -; 4987 : s->img_y = stbi__get32le(s); +; 5000 : s->img_y = stbi__get32le(s); 001f7 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -11866,8 +11886,8 @@ $LN9@stbi__bmp_: 0020a 89 41 04 mov DWORD PTR [rcx+4], eax $LN10@stbi__bmp_: -; 4988 : } -; 4989 : if (stbi__get16le(s) != 1) return stbi__errpuc("bad BMP", "bad BMP"); +; 5001 : } +; 5002 : if (stbi__get16le(s) != 1) return stbi__errpuc("bad BMP", "bad BMP"); 0020d 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -11893,7 +11913,7 @@ $LN39@stbi__bmp_: 0024d e9 c9 03 00 00 jmp $LN1@stbi__bmp_ $LN11@stbi__bmp_: -; 4990 : info->bpp = stbi__get16le(s); +; 5003 : info->bpp = stbi__get16le(s); 00252 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -11902,20 +11922,20 @@ $LN11@stbi__bmp_: 00 00 mov rcx, QWORD PTR info$[rbp] 00265 89 01 mov DWORD PTR [rcx], eax -; 4991 : if (hsz != 12) { +; 5004 : if (hsz != 12) { 00267 83 7d 04 0c cmp DWORD PTR hsz$[rbp], 12 0026b 0f 84 a5 03 00 00 je $LN12@stbi__bmp_ -; 4992 : int compress = stbi__get32le(s); +; 5005 : int compress = stbi__get32le(s); 00271 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] 00278 e8 00 00 00 00 call stbi__get32le 0027d 89 45 24 mov DWORD PTR compress$1[rbp], eax -; 4993 : if (compress == 1 || compress == 2) return stbi__errpuc("BMP RLE", "BMP type not supported: RLE"); +; 5006 : if (compress == 1 || compress == 2) return stbi__errpuc("BMP RLE", "BMP type not supported: RLE"); 00280 83 7d 24 01 cmp DWORD PTR compress$1[rbp], 1 00284 74 06 je SHORT $LN14@stbi__bmp_ @@ -11941,7 +11961,7 @@ $LN41@stbi__bmp_: 002bb e9 5b 03 00 00 jmp $LN1@stbi__bmp_ $LN13@stbi__bmp_: -; 4994 : if (compress >= 4) return stbi__errpuc("BMP JPEG/PNG", "BMP type not supported: unsupported compression"); // this includes PNG/JPEG modes +; 5007 : if (compress >= 4) return stbi__errpuc("BMP JPEG/PNG", "BMP type not supported: unsupported compression"); // this includes PNG/JPEG modes 002c0 83 7d 24 04 cmp DWORD PTR compress$1[rbp], 4 002c4 7c 34 jl SHORT $LN15@stbi__bmp_ @@ -11964,7 +11984,7 @@ $LN43@stbi__bmp_: 002f5 e9 21 03 00 00 jmp $LN1@stbi__bmp_ $LN15@stbi__bmp_: -; 4995 : if (compress == 3 && info->bpp != 16 && info->bpp != 32) return stbi__errpuc("bad BMP", "bad BMP"); // bitfields requires 16 or 32 bits/pixel +; 5008 : if (compress == 3 && info->bpp != 16 && info->bpp != 32) return stbi__errpuc("bad BMP", "bad BMP"); // bitfields requires 16 or 32 bits/pixel 002fa 83 7d 24 03 cmp DWORD PTR compress$1[rbp], 3 002fe 75 4c jne SHORT $LN16@stbi__bmp_ @@ -11995,37 +12015,37 @@ $LN45@stbi__bmp_: 00347 e9 cf 02 00 00 jmp $LN1@stbi__bmp_ $LN16@stbi__bmp_: -; 4996 : stbi__get32le(s); // discard sizeof +; 5009 : stbi__get32le(s); // discard sizeof 0034c 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] 00353 e8 00 00 00 00 call stbi__get32le -; 4997 : stbi__get32le(s); // discard hres +; 5010 : stbi__get32le(s); // discard hres 00358 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] 0035f e8 00 00 00 00 call stbi__get32le -; 4998 : stbi__get32le(s); // discard vres +; 5011 : stbi__get32le(s); // discard vres 00364 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] 0036b e8 00 00 00 00 call stbi__get32le -; 4999 : stbi__get32le(s); // discard colorsused +; 5012 : stbi__get32le(s); // discard colorsused 00370 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] 00377 e8 00 00 00 00 call stbi__get32le -; 5000 : stbi__get32le(s); // discard max important +; 5013 : stbi__get32le(s); // discard max important 0037c 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] 00383 e8 00 00 00 00 call stbi__get32le -; 5001 : if (hsz == 40 || hsz == 56) { +; 5014 : if (hsz == 40 || hsz == 56) { 00388 83 7d 04 28 cmp DWORD PTR hsz$[rbp], 40 ; 00000028H 0038c 74 0a je SHORT $LN19@stbi__bmp_ @@ -12034,38 +12054,38 @@ $LN16@stbi__bmp_: 00 jne $LN17@stbi__bmp_ $LN19@stbi__bmp_: -; 5002 : if (hsz == 56) { +; 5015 : if (hsz == 56) { 00398 83 7d 04 38 cmp DWORD PTR hsz$[rbp], 56 ; 00000038H 0039c 75 30 jne SHORT $LN20@stbi__bmp_ -; 5003 : stbi__get32le(s); +; 5016 : stbi__get32le(s); 0039e 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] 003a5 e8 00 00 00 00 call stbi__get32le -; 5004 : stbi__get32le(s); +; 5017 : stbi__get32le(s); 003aa 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] 003b1 e8 00 00 00 00 call stbi__get32le -; 5005 : stbi__get32le(s); +; 5018 : stbi__get32le(s); 003b6 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] 003bd e8 00 00 00 00 call stbi__get32le -; 5006 : stbi__get32le(s); +; 5019 : stbi__get32le(s); 003c2 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] 003c9 e8 00 00 00 00 call stbi__get32le $LN20@stbi__bmp_: -; 5007 : } -; 5008 : if (info->bpp == 16 || info->bpp == 32) { +; 5020 : } +; 5021 : if (info->bpp == 16 || info->bpp == 32) { 003ce 48 8b 85 48 01 00 00 mov rax, QWORD PTR info$[rbp] @@ -12078,30 +12098,30 @@ $LN20@stbi__bmp_: 00 jne $LN21@stbi__bmp_ $LN22@stbi__bmp_: -; 5009 : if (compress == 0) { +; 5022 : if (compress == 0) { 003ea 83 7d 24 00 cmp DWORD PTR compress$1[rbp], 0 003ee 75 14 jne SHORT $LN23@stbi__bmp_ -; 5010 : stbi__bmp_set_mask_defaults(info, compress); +; 5023 : stbi__bmp_set_mask_defaults(info, compress); 003f0 8b 55 24 mov edx, DWORD PTR compress$1[rbp] 003f3 48 8b 8d 48 01 00 00 mov rcx, QWORD PTR info$[rbp] 003fa e8 00 00 00 00 call stbi__bmp_set_mask_defaults -; 5011 : } +; 5024 : } 003ff e9 f9 00 00 00 jmp $LN24@stbi__bmp_ $LN23@stbi__bmp_: -; 5012 : else if (compress == 3) { +; 5025 : else if (compress == 3) { 00404 83 7d 24 03 cmp DWORD PTR compress$1[rbp], 3 00408 0f 85 bb 00 00 00 jne $LN25@stbi__bmp_ -; 5013 : info->mr = stbi__get32le(s); +; 5026 : info->mr = stbi__get32le(s); 0040e 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -12110,7 +12130,7 @@ $LN23@stbi__bmp_: 00 00 mov rcx, QWORD PTR info$[rbp] 00421 89 41 0c mov DWORD PTR [rcx+12], eax -; 5014 : info->mg = stbi__get32le(s); +; 5027 : info->mg = stbi__get32le(s); 00424 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -12119,7 +12139,7 @@ $LN23@stbi__bmp_: 00 00 mov rcx, QWORD PTR info$[rbp] 00437 89 41 10 mov DWORD PTR [rcx+16], eax -; 5015 : info->mb = stbi__get32le(s); +; 5028 : info->mb = stbi__get32le(s); 0043a 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -12128,7 +12148,7 @@ $LN23@stbi__bmp_: 00 00 mov rcx, QWORD PTR info$[rbp] 0044d 89 41 14 mov DWORD PTR [rcx+20], eax -; 5016 : info->extra_read += 12; +; 5029 : info->extra_read += 12; 00450 48 8b 85 48 01 00 00 mov rax, QWORD PTR info$[rbp] @@ -12138,8 +12158,8 @@ $LN23@stbi__bmp_: 00 00 mov rcx, QWORD PTR info$[rbp] 00464 89 41 20 mov DWORD PTR [rcx+32], eax -; 5017 : // not documented, but generated by photoshop and handled by mspaint -; 5018 : if (info->mr == info->mg && info->mg == info->mb) { +; 5030 : // not documented, but generated by photoshop and handled by mspaint +; 5031 : if (info->mr == info->mg && info->mg == info->mb) { 00467 48 8b 85 48 01 00 00 mov rax, QWORD PTR info$[rbp] @@ -12156,8 +12176,8 @@ $LN23@stbi__bmp_: 0048e 39 48 10 cmp DWORD PTR [rax+16], ecx 00491 75 34 jne SHORT $LN27@stbi__bmp_ -; 5019 : // ?!?!? -; 5020 : return stbi__errpuc("bad BMP", "bad BMP"); +; 5032 : // ?!?!? +; 5033 : return stbi__errpuc("bad BMP", "bad BMP"); 00493 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_07IEJCHBDI@bad?5BMP@ @@ -12178,14 +12198,14 @@ $LN47@stbi__bmp_: 004c2 e9 54 01 00 00 jmp $LN1@stbi__bmp_ $LN27@stbi__bmp_: -; 5021 : } -; 5022 : } +; 5034 : } +; 5035 : } 004c7 eb 34 jmp SHORT $LN26@stbi__bmp_ $LN25@stbi__bmp_: -; 5023 : else -; 5024 : return stbi__errpuc("bad BMP", "bad BMP"); +; 5036 : else +; 5037 : return stbi__errpuc("bad BMP", "bad BMP"); 004c9 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_07IEJCHBDI@bad?5BMP@ @@ -12208,23 +12228,23 @@ $LN26@stbi__bmp_: $LN24@stbi__bmp_: $LN21@stbi__bmp_: -; 5025 : } -; 5026 : } +; 5038 : } +; 5039 : } 004fd e9 14 01 00 00 jmp $LN18@stbi__bmp_ $LN17@stbi__bmp_: -; 5027 : else { -; 5028 : // V4/V5 header -; 5029 : int i; -; 5030 : if (hsz != 108 && hsz != 124) +; 5040 : else { +; 5041 : // V4/V5 header +; 5042 : int i; +; 5043 : if (hsz != 108 && hsz != 124) 00502 83 7d 04 6c cmp DWORD PTR hsz$[rbp], 108 ; 0000006cH 00506 74 3a je SHORT $LN28@stbi__bmp_ 00508 83 7d 04 7c cmp DWORD PTR hsz$[rbp], 124 ; 0000007cH 0050c 74 34 je SHORT $LN28@stbi__bmp_ -; 5031 : return stbi__errpuc("bad BMP", "bad BMP"); +; 5044 : return stbi__errpuc("bad BMP", "bad BMP"); 0050e 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_07IEJCHBDI@bad?5BMP@ @@ -12245,7 +12265,7 @@ $LN51@stbi__bmp_: 0053d e9 d9 00 00 00 jmp $LN1@stbi__bmp_ $LN28@stbi__bmp_: -; 5032 : info->mr = stbi__get32le(s); +; 5045 : info->mr = stbi__get32le(s); 00542 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -12254,7 +12274,7 @@ $LN28@stbi__bmp_: 00 00 mov rcx, QWORD PTR info$[rbp] 00555 89 41 0c mov DWORD PTR [rcx+12], eax -; 5033 : info->mg = stbi__get32le(s); +; 5046 : info->mg = stbi__get32le(s); 00558 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -12263,7 +12283,7 @@ $LN28@stbi__bmp_: 00 00 mov rcx, QWORD PTR info$[rbp] 0056b 89 41 10 mov DWORD PTR [rcx+16], eax -; 5034 : info->mb = stbi__get32le(s); +; 5047 : info->mb = stbi__get32le(s); 0056e 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -12272,7 +12292,7 @@ $LN28@stbi__bmp_: 00 00 mov rcx, QWORD PTR info$[rbp] 00581 89 41 14 mov DWORD PTR [rcx+20], eax -; 5035 : info->ma = stbi__get32le(s); +; 5048 : info->ma = stbi__get32le(s); 00584 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -12281,12 +12301,12 @@ $LN28@stbi__bmp_: 00 00 mov rcx, QWORD PTR info$[rbp] 00597 89 41 18 mov DWORD PTR [rcx+24], eax -; 5036 : if (compress != 3) // override mr/mg/mb unless in BI_BITFIELDS mode, as per docs +; 5049 : if (compress != 3) // override mr/mg/mb unless in BI_BITFIELDS mode, as per docs 0059a 83 7d 24 03 cmp DWORD PTR compress$1[rbp], 3 0059e 74 0f je SHORT $LN29@stbi__bmp_ -; 5037 : stbi__bmp_set_mask_defaults(info, compress); +; 5050 : stbi__bmp_set_mask_defaults(info, compress); 005a0 8b 55 24 mov edx, DWORD PTR compress$1[rbp] 005a3 48 8b 8d 48 01 @@ -12294,13 +12314,13 @@ $LN28@stbi__bmp_: 005aa e8 00 00 00 00 call stbi__bmp_set_mask_defaults $LN29@stbi__bmp_: -; 5038 : stbi__get32le(s); // discard color space +; 5051 : stbi__get32le(s); // discard color space 005af 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] 005b6 e8 00 00 00 00 call stbi__get32le -; 5039 : for (i = 0; i < 12; ++i) +; 5052 : for (i = 0; i < 12; ++i) 005bb c7 45 44 00 00 00 00 mov DWORD PTR i$2[rbp], 0 @@ -12313,7 +12333,7 @@ $LN4@stbi__bmp_: 005cc 83 7d 44 0c cmp DWORD PTR i$2[rbp], 12 005d0 7d 0e jge SHORT $LN3@stbi__bmp_ -; 5040 : stbi__get32le(s); // discard color space parameters +; 5053 : stbi__get32le(s); // discard color space parameters 005d2 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -12321,30 +12341,30 @@ $LN4@stbi__bmp_: 005de eb e4 jmp SHORT $LN2@stbi__bmp_ $LN3@stbi__bmp_: -; 5041 : if (hsz == 124) { +; 5054 : if (hsz == 124) { 005e0 83 7d 04 7c cmp DWORD PTR hsz$[rbp], 124 ; 0000007cH 005e4 75 30 jne SHORT $LN30@stbi__bmp_ -; 5042 : stbi__get32le(s); // discard rendering intent +; 5055 : stbi__get32le(s); // discard rendering intent 005e6 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] 005ed e8 00 00 00 00 call stbi__get32le -; 5043 : stbi__get32le(s); // discard offset of profile data +; 5056 : stbi__get32le(s); // discard offset of profile data 005f2 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] 005f9 e8 00 00 00 00 call stbi__get32le -; 5044 : stbi__get32le(s); // discard size of profile data +; 5057 : stbi__get32le(s); // discard size of profile data 005fe 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] 00605 e8 00 00 00 00 call stbi__get32le -; 5045 : stbi__get32le(s); // discard reserved +; 5058 : stbi__get32le(s); // discard reserved 0060a 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -12353,15 +12373,15 @@ $LN30@stbi__bmp_: $LN18@stbi__bmp_: $LN12@stbi__bmp_: -; 5046 : } -; 5047 : } -; 5048 : } -; 5049 : return (void*)1; +; 5059 : } +; 5060 : } +; 5061 : } +; 5062 : return (void*)1; 00616 b8 01 00 00 00 mov eax, 1 $LN1@stbi__bmp_: -; 5050 : } +; 5063 : } 0061b 48 8d a5 28 01 00 00 lea rsp, QWORD PTR [rbp+296] @@ -12378,7 +12398,7 @@ info$ = 224 compress$ = 232 stbi__bmp_set_mask_defaults PROC ; COMDAT -; 4939 : { +; 4952 : { 00000 89 54 24 10 mov DWORD PTR [rsp+16], edx 00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx @@ -12391,110 +12411,110 @@ stbi__bmp_set_mask_defaults PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001e e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4940 : // BI_BITFIELDS specifies masks explicitly, don't override -; 4941 : if (compress == 3) +; 4953 : // BI_BITFIELDS specifies masks explicitly, don't override +; 4954 : if (compress == 3) 00023 83 bd e8 00 00 00 03 cmp DWORD PTR compress$[rbp], 3 0002a 75 0a jne SHORT $LN2@stbi__bmp_ -; 4942 : return 1; +; 4955 : return 1; 0002c b8 01 00 00 00 mov eax, 1 00031 e9 dd 00 00 00 jmp $LN1@stbi__bmp_ $LN2@stbi__bmp_: -; 4943 : -; 4944 : if (compress == 0) { +; 4956 : +; 4957 : if (compress == 0) { 00036 83 bd e8 00 00 00 00 cmp DWORD PTR compress$[rbp], 0 0003d 0f 85 ce 00 00 00 jne $LN3@stbi__bmp_ -; 4945 : if (info->bpp == 16) { +; 4958 : if (info->bpp == 16) { 00043 48 8b 85 e0 00 00 00 mov rax, QWORD PTR info$[rbp] 0004a 83 38 10 cmp DWORD PTR [rax], 16 0004d 75 2f jne SHORT $LN4@stbi__bmp_ -; 4946 : info->mr = 31u << 10; +; 4959 : info->mr = 31u << 10; 0004f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR info$[rbp] 00056 c7 40 0c 00 7c 00 00 mov DWORD PTR [rax+12], 31744 ; 00007c00H -; 4947 : info->mg = 31u << 5; +; 4960 : info->mg = 31u << 5; 0005d 48 8b 85 e0 00 00 00 mov rax, QWORD PTR info$[rbp] 00064 c7 40 10 e0 03 00 00 mov DWORD PTR [rax+16], 992 ; 000003e0H -; 4948 : info->mb = 31u << 0; +; 4961 : info->mb = 31u << 0; 0006b 48 8b 85 e0 00 00 00 mov rax, QWORD PTR info$[rbp] 00072 c7 40 14 1f 00 00 00 mov DWORD PTR [rax+20], 31 -; 4949 : } +; 4962 : } 00079 e9 8c 00 00 00 jmp $LN5@stbi__bmp_ $LN4@stbi__bmp_: -; 4950 : else if (info->bpp == 32) { +; 4963 : else if (info->bpp == 32) { 0007e 48 8b 85 e0 00 00 00 mov rax, QWORD PTR info$[rbp] 00085 83 38 20 cmp DWORD PTR [rax], 32 ; 00000020H 00088 75 48 jne SHORT $LN6@stbi__bmp_ -; 4951 : info->mr = 0xffu << 16; +; 4964 : info->mr = 0xffu << 16; 0008a 48 8b 85 e0 00 00 00 mov rax, QWORD PTR info$[rbp] 00091 c7 40 0c 00 00 ff 00 mov DWORD PTR [rax+12], 16711680 ; 00ff0000H -; 4952 : info->mg = 0xffu << 8; +; 4965 : info->mg = 0xffu << 8; 00098 48 8b 85 e0 00 00 00 mov rax, QWORD PTR info$[rbp] 0009f c7 40 10 00 ff 00 00 mov DWORD PTR [rax+16], 65280 ; 0000ff00H -; 4953 : info->mb = 0xffu << 0; +; 4966 : info->mb = 0xffu << 0; 000a6 48 8b 85 e0 00 00 00 mov rax, QWORD PTR info$[rbp] 000ad c7 40 14 ff 00 00 00 mov DWORD PTR [rax+20], 255 ; 000000ffH -; 4954 : info->ma = 0xffu << 24; +; 4967 : info->ma = 0xffu << 24; 000b4 48 8b 85 e0 00 00 00 mov rax, QWORD PTR info$[rbp] 000bb c7 40 18 00 00 00 ff mov DWORD PTR [rax+24], -16777216 ; ff000000H -; 4955 : info->all_a = 0; // if all_a is 0 at end, then we loaded alpha channel but it was all 0 +; 4968 : info->all_a = 0; // if all_a is 0 at end, then we loaded alpha channel but it was all 0 000c2 48 8b 85 e0 00 00 00 mov rax, QWORD PTR info$[rbp] 000c9 c7 40 1c 00 00 00 00 mov DWORD PTR [rax+28], 0 -; 4956 : } +; 4969 : } 000d0 eb 38 jmp SHORT $LN7@stbi__bmp_ $LN6@stbi__bmp_: -; 4957 : else { -; 4958 : // otherwise, use defaults, which is all-0 -; 4959 : info->mr = info->mg = info->mb = info->ma = 0; +; 4970 : else { +; 4971 : // otherwise, use defaults, which is all-0 +; 4972 : info->mr = info->mg = info->mb = info->ma = 0; 000d2 48 8b 85 e0 00 00 00 mov rax, QWORD PTR info$[rbp] @@ -12515,20 +12535,20 @@ $LN6@stbi__bmp_: $LN7@stbi__bmp_: $LN5@stbi__bmp_: -; 4960 : } -; 4961 : return 1; +; 4973 : } +; 4974 : return 1; 0010a b8 01 00 00 00 mov eax, 1 0010f eb 02 jmp SHORT $LN1@stbi__bmp_ $LN3@stbi__bmp_: -; 4962 : } -; 4963 : return 0; // error +; 4975 : } +; 4976 : return 0; // error 00111 33 c0 xor eax, eax $LN1@stbi__bmp_: -; 4964 : } +; 4977 : } 00113 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] @@ -12546,7 +12566,7 @@ shift$ = 232 bits$ = 240 stbi__shiftsigned PROC ; COMDAT -; 4912 : { +; 4925 : { 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 00005 89 54 24 10 mov DWORD PTR [rsp+16], edx @@ -12560,21 +12580,21 @@ stbi__shiftsigned PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00022 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4913 : static unsigned int mul_table[9] = { -; 4914 : 0, -; 4915 : 0xff/*0b11111111*/, 0x55/*0b01010101*/, 0x49/*0b01001001*/, 0x11/*0b00010001*/, -; 4916 : 0x21/*0b00100001*/, 0x41/*0b01000001*/, 0x81/*0b10000001*/, 0x01/*0b00000001*/, -; 4917 : }; -; 4918 : static unsigned int shift_table[9] = { -; 4919 : 0, 0,0,1,0,2,4,6,0, -; 4920 : }; -; 4921 : if (shift < 0) +; 4926 : static unsigned int mul_table[9] = { +; 4927 : 0, +; 4928 : 0xff/*0b11111111*/, 0x55/*0b01010101*/, 0x49/*0b01001001*/, 0x11/*0b00010001*/, +; 4929 : 0x21/*0b00100001*/, 0x41/*0b01000001*/, 0x81/*0b10000001*/, 0x01/*0b00000001*/, +; 4930 : }; +; 4931 : static unsigned int shift_table[9] = { +; 4932 : 0, 0,0,1,0,2,4,6,0, +; 4933 : }; +; 4934 : if (shift < 0) 00027 83 bd e8 00 00 00 00 cmp DWORD PTR shift$[rbp], 0 0002e 7d 1b jge SHORT $LN2@stbi__shif -; 4922 : v <<= -shift; +; 4935 : v <<= -shift; 00030 8b 85 e8 00 00 00 mov eax, DWORD PTR shift$[rbp] @@ -12588,8 +12608,8 @@ stbi__shiftsigned PROC ; COMDAT 00049 eb 17 jmp SHORT $LN3@stbi__shif $LN2@stbi__shif: -; 4923 : else -; 4924 : v >>= shift; +; 4936 : else +; 4937 : v >>= shift; 0004b 8b 85 e8 00 00 00 mov eax, DWORD PTR shift$[rbp] @@ -12601,13 +12621,13 @@ $LN2@stbi__shif: 00 mov DWORD PTR v$[rbp], eax $LN3@stbi__shif: -; 4925 : STBI_ASSERT(v < 256); +; 4938 : STBI_ASSERT(v < 256); 00062 81 bd e0 00 00 00 00 01 00 00 cmp DWORD PTR v$[rbp], 256 ; 00000100H 0006c 72 1c jb SHORT $LN5@stbi__shif - 0006e 41 b8 3d 13 00 - 00 mov r8d, 4925 ; 0000133dH + 0006e 41 b8 4a 13 00 + 00 mov r8d, 4938 ; 0000134aH 00074 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_1KA@LPJPGBDN@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@ 0007b 48 8d 0d 00 00 @@ -12617,7 +12637,7 @@ $LN3@stbi__shif: 00088 33 c0 xor eax, eax $LN5@stbi__shif: -; 4926 : v >>= (8 - bits); +; 4939 : v >>= (8 - bits); 0008a b8 08 00 00 00 mov eax, 8 0008f 2b 85 f0 00 00 @@ -12629,7 +12649,7 @@ $LN5@stbi__shif: 000a0 89 85 e0 00 00 00 mov DWORD PTR v$[rbp], eax -; 4927 : STBI_ASSERT(bits >= 0 && bits <= 8); +; 4940 : STBI_ASSERT(bits >= 0 && bits <= 8); 000a6 83 bd f0 00 00 00 00 cmp DWORD PTR bits$[rbp], 0 @@ -12638,8 +12658,8 @@ $LN5@stbi__shif: 00 08 cmp DWORD PTR bits$[rbp], 8 000b6 7e 1c jle SHORT $LN7@stbi__shif $LN6@stbi__shif: - 000b8 41 b8 3f 13 00 - 00 mov r8d, 4927 ; 0000133fH + 000b8 41 b8 4c 13 00 + 00 mov r8d, 4940 ; 0000134cH 000be 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_1KA@LPJPGBDN@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@ 000c5 48 8d 0d 00 00 @@ -12649,7 +12669,7 @@ $LN6@stbi__shif: 000d2 33 c0 xor eax, eax $LN7@stbi__shif: -; 4928 : return (int)((unsigned)v * mul_table[bits]) >> shift_table[bits]; +; 4941 : return (int)((unsigned)v * mul_table[bits]) >> shift_table[bits]; 000d4 48 63 85 f0 00 00 00 movsxd rax, DWORD PTR bits$[rbp] @@ -12666,7 +12686,7 @@ $LN7@stbi__shif: 000fc 8b 0c 8a mov ecx, DWORD PTR [rdx+rcx*4] 000ff d3 f8 sar eax, cl -; 4929 : } +; 4942 : } 00101 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] @@ -12682,7 +12702,7 @@ _TEXT SEGMENT a$ = 224 stbi__bitcount PROC ; COMDAT -; 4899 : { +; 4912 : { 00000 89 4c 24 08 mov DWORD PTR [rsp+8], ecx 00004 55 push rbp @@ -12694,7 +12714,7 @@ stbi__bitcount PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00019 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4900 : a = (a & 0x55555555) + ((a >> 1) & 0x55555555); // max 2 +; 4913 : a = (a & 0x55555555) + ((a >> 1) & 0x55555555); // max 2 0001e 8b 85 e0 00 00 00 mov eax, DWORD PTR a$[rbp] @@ -12708,7 +12728,7 @@ stbi__bitcount PROC ; COMDAT 00039 89 85 e0 00 00 00 mov DWORD PTR a$[rbp], eax -; 4901 : a = (a & 0x33333333) + ((a >> 2) & 0x33333333); // max 4 +; 4914 : a = (a & 0x33333333) + ((a >> 2) & 0x33333333); // max 4 0003f 8b 85 e0 00 00 00 mov eax, DWORD PTR a$[rbp] @@ -12722,7 +12742,7 @@ stbi__bitcount PROC ; COMDAT 0005b 89 85 e0 00 00 00 mov DWORD PTR a$[rbp], eax -; 4902 : a = (a + (a >> 4)) & 0x0f0f0f0f; // max 8 per 4, now 8 bits +; 4915 : a = (a + (a >> 4)) & 0x0f0f0f0f; // max 8 per 4, now 8 bits 00061 8b 85 e0 00 00 00 mov eax, DWORD PTR a$[rbp] @@ -12735,7 +12755,7 @@ stbi__bitcount PROC ; COMDAT 00079 89 85 e0 00 00 00 mov DWORD PTR a$[rbp], eax -; 4903 : a = (a + (a >> 8)); // max 16 per 8 bits +; 4916 : a = (a + (a >> 8)); // max 16 per 8 bits 0007f 8b 85 e0 00 00 00 mov eax, DWORD PTR a$[rbp] @@ -12747,7 +12767,7 @@ stbi__bitcount PROC ; COMDAT 00092 89 85 e0 00 00 00 mov DWORD PTR a$[rbp], eax -; 4904 : a = (a + (a >> 16)); // max 32 per 8 bits +; 4917 : a = (a + (a >> 16)); // max 32 per 8 bits 00098 8b 85 e0 00 00 00 mov eax, DWORD PTR a$[rbp] @@ -12759,13 +12779,13 @@ stbi__bitcount PROC ; COMDAT 000ab 89 85 e0 00 00 00 mov DWORD PTR a$[rbp], eax -; 4905 : return a & 0xff; +; 4918 : return a & 0xff; 000b1 8b 85 e0 00 00 00 mov eax, DWORD PTR a$[rbp] 000b7 25 ff 00 00 00 and eax, 255 ; 000000ffH -; 4906 : } +; 4919 : } 000bc 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] @@ -12782,7 +12802,7 @@ n$ = 4 z$ = 256 stbi__high_bit PROC ; COMDAT -; 4887 : { +; 4900 : { 00000 89 4c 24 08 mov DWORD PTR [rsp+8], ecx 00004 55 push rbp @@ -12794,12 +12814,12 @@ stbi__high_bit PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00019 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4888 : int n = 0; +; 4901 : int n = 0; 0001e c7 45 04 00 00 00 00 mov DWORD PTR n$[rbp], 0 -; 4889 : if (z == 0) return -1; +; 4902 : if (z == 0) return -1; 00025 83 bd 00 01 00 00 00 cmp DWORD PTR z$[rbp], 0 @@ -12808,7 +12828,7 @@ stbi__high_bit PROC ; COMDAT 00033 e9 9e 00 00 00 jmp $LN1@stbi__high $LN2@stbi__high: -; 4890 : if (z >= 0x10000) { n += 16; z >>= 16; } +; 4903 : if (z >= 0x10000) { n += 16; z >>= 16; } 00038 81 bd 00 01 00 00 00 00 01 00 cmp DWORD PTR z$[rbp], 65536 ; 00010000H @@ -12823,7 +12843,7 @@ $LN2@stbi__high: 00 mov DWORD PTR z$[rbp], eax $LN3@stbi__high: -; 4891 : if (z >= 0x00100) { n += 8; z >>= 8; } +; 4904 : if (z >= 0x00100) { n += 8; z >>= 8; } 0005c 81 bd 00 01 00 00 00 01 00 00 cmp DWORD PTR z$[rbp], 256 ; 00000100H @@ -12838,7 +12858,7 @@ $LN3@stbi__high: 00 mov DWORD PTR z$[rbp], eax $LN4@stbi__high: -; 4892 : if (z >= 0x00010) { n += 4; z >>= 4; } +; 4905 : if (z >= 0x00010) { n += 4; z >>= 4; } 00080 83 bd 00 01 00 00 10 cmp DWORD PTR z$[rbp], 16 @@ -12853,7 +12873,7 @@ $LN4@stbi__high: 00 mov DWORD PTR z$[rbp], eax $LN5@stbi__high: -; 4893 : if (z >= 0x00004) { n += 2; z >>= 2; } +; 4906 : if (z >= 0x00004) { n += 2; z >>= 2; } 000a1 83 bd 00 01 00 00 04 cmp DWORD PTR z$[rbp], 4 @@ -12868,7 +12888,7 @@ $LN5@stbi__high: 00 mov DWORD PTR z$[rbp], eax $LN6@stbi__high: -; 4894 : if (z >= 0x00002) { n += 1;/* >>= 1;*/ } +; 4907 : if (z >= 0x00002) { n += 1;/* >>= 1;*/ } 000c2 83 bd 00 01 00 00 02 cmp DWORD PTR z$[rbp], 2 @@ -12878,12 +12898,12 @@ $LN6@stbi__high: 000d0 89 45 04 mov DWORD PTR n$[rbp], eax $LN7@stbi__high: -; 4895 : return n; +; 4908 : return n; 000d3 8b 45 04 mov eax, DWORD PTR n$[rbp] $LN1@stbi__high: -; 4896 : } +; 4909 : } 000d6 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -12902,7 +12922,7 @@ tv83 = 244 s$ = 288 stbi__bmp_test_raw PROC ; COMDAT -; 4863 : { +; 4876 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -12914,9 +12934,9 @@ stbi__bmp_test_raw PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4864 : int r; -; 4865 : int sz; -; 4866 : if (stbi__get8(s) != 'B') return 0; +; 4877 : int r; +; 4878 : int sz; +; 4879 : if (stbi__get8(s) != 'B') return 0; 0001f 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -12928,7 +12948,7 @@ stbi__bmp_test_raw PROC ; COMDAT 00035 e9 97 00 00 00 jmp $LN1@stbi__bmp_ $LN2@stbi__bmp_: -; 4867 : if (stbi__get8(s) != 'M') return 0; +; 4880 : if (stbi__get8(s) != 'M') return 0; 0003a 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -12940,38 +12960,38 @@ $LN2@stbi__bmp_: 00050 eb 7f jmp SHORT $LN1@stbi__bmp_ $LN3@stbi__bmp_: -; 4868 : stbi__get32le(s); // discard filesize +; 4881 : stbi__get32le(s); // discard filesize 00052 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR s$[rbp] 00059 e8 00 00 00 00 call stbi__get32le -; 4869 : stbi__get16le(s); // discard reserved +; 4882 : stbi__get16le(s); // discard reserved 0005e 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR s$[rbp] 00065 e8 00 00 00 00 call stbi__get16le -; 4870 : stbi__get16le(s); // discard reserved +; 4883 : stbi__get16le(s); // discard reserved 0006a 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR s$[rbp] 00071 e8 00 00 00 00 call stbi__get16le -; 4871 : stbi__get32le(s); // discard data offset +; 4884 : stbi__get32le(s); // discard data offset 00076 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR s$[rbp] 0007d e8 00 00 00 00 call stbi__get32le -; 4872 : sz = stbi__get32le(s); +; 4885 : sz = stbi__get32le(s); 00082 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR s$[rbp] 00089 e8 00 00 00 00 call stbi__get32le 0008e 89 45 24 mov DWORD PTR sz$[rbp], eax -; 4873 : r = (sz == 12 || sz == 40 || sz == 56 || sz == 108 || sz == 124); +; 4886 : r = (sz == 12 || sz == 40 || sz == 56 || sz == 108 || sz == 124); 00091 83 7d 24 0c cmp DWORD PTR sz$[rbp], 12 00095 74 24 je SHORT $LN5@stbi__bmp_ @@ -12994,12 +13014,12 @@ $LN6@stbi__bmp_: 00 mov eax, DWORD PTR tv83[rbp] 000cb 89 45 04 mov DWORD PTR r$[rbp], eax -; 4874 : return r; +; 4887 : return r; 000ce 8b 45 04 mov eax, DWORD PTR r$[rbp] $LN1@stbi__bmp_: -; 4875 : } +; 4888 : } 000d1 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] @@ -13018,7 +13038,7 @@ y$ = 240 comp$ = 248 stbi__png_info_raw PROC ; COMDAT -; 4827 : { +; 4840 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -13033,7 +13053,7 @@ stbi__png_info_raw PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4828 : if (!stbi__parse_png_file(p, STBI__SCAN_header, 0)) { +; 4841 : if (!stbi__parse_png_file(p, STBI__SCAN_header, 0)) { 0002e 45 33 c0 xor r8d, r8d 00031 ba 02 00 00 00 mov edx, 2 @@ -13043,21 +13063,21 @@ stbi__png_info_raw PROC ; COMDAT 00042 85 c0 test eax, eax 00044 75 13 jne SHORT $LN2@stbi__png_ -; 4829 : stbi__rewind(p->s); +; 4842 : stbi__rewind(p->s); 00046 48 8b 85 e0 00 00 00 mov rax, QWORD PTR p$[rbp] 0004d 48 8b 08 mov rcx, QWORD PTR [rax] 00050 e8 00 00 00 00 call stbi__rewind -; 4830 : return 0; +; 4843 : return 0; 00055 33 c0 xor eax, eax 00057 eb 64 jmp SHORT $LN1@stbi__png_ $LN2@stbi__png_: -; 4831 : } -; 4832 : if (x) *x = p->s->img_x; +; 4844 : } +; 4845 : if (x) *x = p->s->img_x; 00059 48 83 bd e8 00 00 00 00 cmp QWORD PTR x$[rbp], 0 @@ -13071,7 +13091,7 @@ $LN2@stbi__png_: 00076 89 01 mov DWORD PTR [rcx], eax $LN3@stbi__png_: -; 4833 : if (y) *y = p->s->img_y; +; 4846 : if (y) *y = p->s->img_y; 00078 48 83 bd f0 00 00 00 00 cmp QWORD PTR y$[rbp], 0 @@ -13085,7 +13105,7 @@ $LN3@stbi__png_: 00096 89 01 mov DWORD PTR [rcx], eax $LN4@stbi__png_: -; 4834 : if (comp) *comp = p->s->img_n; +; 4847 : if (comp) *comp = p->s->img_n; 00098 48 83 bd f8 00 00 00 00 cmp QWORD PTR comp$[rbp], 0 @@ -13099,12 +13119,12 @@ $LN4@stbi__png_: 000b6 89 01 mov DWORD PTR [rcx], eax $LN5@stbi__png_: -; 4835 : return 1; +; 4848 : return 1; 000b8 b8 01 00 00 00 mov eax, 1 $LN1@stbi__png_: -; 4836 : } +; 4849 : } 000bd 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] @@ -13128,7 +13148,7 @@ req_comp$ = 288 ri$ = 296 stbi__do_png PROC ; COMDAT -; 4780 : { +; 4793 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -13143,12 +13163,12 @@ stbi__do_png PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4781 : void* result = NULL; +; 4794 : void* result = NULL; 0002e 48 c7 45 08 00 00 00 00 mov QWORD PTR result$[rbp], 0 -; 4782 : if (req_comp < 0 || req_comp > 4) return stbi__errpuc("bad req_comp", "Internal error"); +; 4795 : if (req_comp < 0 || req_comp > 4) return stbi__errpuc("bad req_comp", "Internal error"); 00036 83 bd 20 01 00 00 00 cmp DWORD PTR req_comp$[rbp], 0 @@ -13176,7 +13196,7 @@ $LN16@stbi__do_p: 00077 e9 2b 02 00 00 jmp $LN1@stbi__do_p $LN2@stbi__do_p: -; 4783 : if (stbi__parse_png_file(p, STBI__SCAN_load, req_comp)) { +; 4796 : if (stbi__parse_png_file(p, STBI__SCAN_load, req_comp)) { 0007c 44 8b 85 20 01 00 00 mov r8d, DWORD PTR req_comp$[rbp] @@ -13188,14 +13208,14 @@ $LN2@stbi__do_p: 00093 0f 84 aa 01 00 00 je $LN4@stbi__do_p -; 4784 : if (p->depth <= 8) +; 4797 : if (p->depth <= 8) 00099 48 8b 85 00 01 00 00 mov rax, QWORD PTR p$[rbp] 000a0 83 78 20 08 cmp DWORD PTR [rax+32], 8 000a4 7f 0f jg SHORT $LN5@stbi__do_p -; 4785 : ri->bits_per_channel = 8; +; 4798 : ri->bits_per_channel = 8; 000a6 48 8b 85 28 01 00 00 mov rax, QWORD PTR ri$[rbp] @@ -13204,14 +13224,14 @@ $LN2@stbi__do_p: 000b3 eb 50 jmp SHORT $LN6@stbi__do_p $LN5@stbi__do_p: -; 4786 : else if (p->depth == 16) +; 4799 : else if (p->depth == 16) 000b5 48 8b 85 00 01 00 00 mov rax, QWORD PTR p$[rbp] 000bc 83 78 20 10 cmp DWORD PTR [rax+32], 16 000c0 75 0f jne SHORT $LN7@stbi__do_p -; 4787 : ri->bits_per_channel = 16; +; 4800 : ri->bits_per_channel = 16; 000c2 48 8b 85 28 01 00 00 mov rax, QWORD PTR ri$[rbp] @@ -13220,8 +13240,8 @@ $LN5@stbi__do_p: 000cf eb 34 jmp SHORT $LN8@stbi__do_p $LN7@stbi__do_p: -; 4788 : else -; 4789 : return stbi__errpuc("bad bits_per_channel", "PNG not supported: unsupported color depth"); +; 4801 : else +; 4802 : return stbi__errpuc("bad bits_per_channel", "PNG not supported: unsupported color depth"); 000d1 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0BF@NOEEEFMF@bad?5bits_per_channel@ @@ -13243,21 +13263,21 @@ $LN18@stbi__do_p: $LN8@stbi__do_p: $LN6@stbi__do_p: -; 4790 : result = p->out; +; 4803 : result = p->out; 00105 48 8b 85 00 01 00 00 mov rax, QWORD PTR p$[rbp] 0010c 48 8b 40 18 mov rax, QWORD PTR [rax+24] 00110 48 89 45 08 mov QWORD PTR result$[rbp], rax -; 4791 : p->out = NULL; +; 4804 : p->out = NULL; 00114 48 8b 85 00 01 00 00 mov rax, QWORD PTR p$[rbp] 0011b 48 c7 40 18 00 00 00 00 mov QWORD PTR [rax+24], 0 -; 4792 : if (req_comp && req_comp != p->s->img_out_n) { +; 4805 : if (req_comp && req_comp != p->s->img_out_n) { 00123 83 bd 20 01 00 00 00 cmp DWORD PTR req_comp$[rbp], 0 @@ -13272,14 +13292,14 @@ $LN6@stbi__do_p: 00143 0f 84 af 00 00 00 je $LN9@stbi__do_p -; 4793 : if (ri->bits_per_channel == 8) +; 4806 : if (ri->bits_per_channel == 8) 00149 48 8b 85 28 01 00 00 mov rax, QWORD PTR ri$[rbp] 00150 83 38 08 cmp DWORD PTR [rax], 8 00153 75 41 jne SHORT $LN10@stbi__do_p -; 4794 : result = stbi__convert_format((unsigned char*)result, p->s->img_out_n, req_comp, p->s->img_x, p->s->img_y); +; 4807 : result = stbi__convert_format((unsigned char*)result, p->s->img_out_n, req_comp, p->s->img_x, p->s->img_y); 00155 48 8b 85 00 01 00 00 mov rax, QWORD PTR p$[rbp] @@ -13302,8 +13322,8 @@ $LN6@stbi__do_p: 00194 eb 3f jmp SHORT $LN11@stbi__do_p $LN10@stbi__do_p: -; 4795 : else -; 4796 : result = stbi__convert_format16((stbi__uint16*)result, p->s->img_out_n, req_comp, p->s->img_x, p->s->img_y); +; 4808 : else +; 4809 : result = stbi__convert_format16((stbi__uint16*)result, p->s->img_out_n, req_comp, p->s->img_x, p->s->img_y); 00196 48 8b 85 00 01 00 00 mov rax, QWORD PTR p$[rbp] @@ -13325,7 +13345,7 @@ $LN10@stbi__do_p: 001d1 48 89 45 08 mov QWORD PTR result$[rbp], rax $LN11@stbi__do_p: -; 4797 : p->s->img_out_n = req_comp; +; 4810 : p->s->img_out_n = req_comp; 001d5 48 8b 85 00 01 00 00 mov rax, QWORD PTR p$[rbp] @@ -13334,7 +13354,7 @@ $LN11@stbi__do_p: 00 mov ecx, DWORD PTR req_comp$[rbp] 001e5 89 48 0c mov DWORD PTR [rax+12], ecx -; 4798 : if (result == NULL) return result; +; 4811 : if (result == NULL) return result; 001e8 48 83 7d 08 00 cmp QWORD PTR result$[rbp], 0 001ed 75 09 jne SHORT $LN12@stbi__do_p @@ -13343,8 +13363,8 @@ $LN11@stbi__do_p: $LN12@stbi__do_p: $LN9@stbi__do_p: -; 4799 : } -; 4800 : *x = p->s->img_x; +; 4812 : } +; 4813 : *x = p->s->img_x; 001f8 48 8b 85 00 01 00 00 mov rax, QWORD PTR p$[rbp] @@ -13354,7 +13374,7 @@ $LN9@stbi__do_p: 00209 8b 00 mov eax, DWORD PTR [rax] 0020b 89 01 mov DWORD PTR [rcx], eax -; 4801 : *y = p->s->img_y; +; 4814 : *y = p->s->img_y; 0020d 48 8b 85 00 01 00 00 mov rax, QWORD PTR p$[rbp] @@ -13364,7 +13384,7 @@ $LN9@stbi__do_p: 0021e 8b 40 04 mov eax, DWORD PTR [rax+4] 00221 89 01 mov DWORD PTR [rcx], eax -; 4802 : if (n) *n = p->s->img_n; +; 4815 : if (n) *n = p->s->img_n; 00223 48 83 bd 18 01 00 00 00 cmp QWORD PTR n$[rbp], 0 @@ -13379,8 +13399,8 @@ $LN9@stbi__do_p: $LN13@stbi__do_p: $LN4@stbi__do_p: -; 4803 : } -; 4804 : STBI_FREE(p->out); p->out = NULL; +; 4816 : } +; 4817 : STBI_FREE(p->out); p->out = NULL; 00243 48 8b 85 00 01 00 00 mov rax, QWORD PTR p$[rbp] @@ -13392,7 +13412,7 @@ $LN4@stbi__do_p: 0025b 48 c7 40 18 00 00 00 00 mov QWORD PTR [rax+24], 0 -; 4805 : STBI_FREE(p->expanded); p->expanded = NULL; +; 4818 : STBI_FREE(p->expanded); p->expanded = NULL; 00263 48 8b 85 00 01 00 00 mov rax, QWORD PTR p$[rbp] @@ -13404,7 +13424,7 @@ $LN4@stbi__do_p: 0027b 48 c7 40 10 00 00 00 00 mov QWORD PTR [rax+16], 0 -; 4806 : STBI_FREE(p->idata); p->idata = NULL; +; 4819 : STBI_FREE(p->idata); p->idata = NULL; 00283 48 8b 85 00 01 00 00 mov rax, QWORD PTR p$[rbp] @@ -13416,13 +13436,13 @@ $LN4@stbi__do_p: 0029b 48 c7 40 08 00 00 00 00 mov QWORD PTR [rax+8], 0 -; 4807 : -; 4808 : return result; +; 4820 : +; 4821 : return result; 002a3 48 8b 45 08 mov rax, QWORD PTR result$[rbp] $LN1@stbi__do_p: -; 4809 : } +; 4822 : } 002a7 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -13469,7 +13489,7 @@ scan$ = 2552 req_comp$ = 2560 stbi__parse_png_file PROC ; COMDAT -; 4592 : { +; 4605 : { 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 00005 89 54 24 10 mov DWORD PTR [rsp+16], edx @@ -13494,12 +13514,12 @@ stbi__parse_png_file PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0004d e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4593 : stbi_uc palette[1024], pal_img_n = 0; +; 4606 : stbi_uc palette[1024], pal_img_n = 0; 00052 c6 85 24 04 00 00 00 mov BYTE PTR pal_img_n$[rbp], 0 -; 4594 : stbi_uc has_trans = 0, tc[3] = { 0 }; +; 4607 : stbi_uc has_trans = 0, tc[3] = { 0 }; 00059 c6 85 44 04 00 00 00 mov BYTE PTR has_trans$[rbp], 0 @@ -13510,8 +13530,8 @@ stbi__parse_png_file PROC ; COMDAT 0006c b9 03 00 00 00 mov ecx, 3 00071 f3 aa rep stosb -; 4595 : stbi__uint16 tc16[3]; -; 4596 : stbi__uint32 ioff = 0, idata_limit = 0, i, pal_len = 0; +; 4608 : stbi__uint16 tc16[3]; +; 4609 : stbi__uint32 ioff = 0, idata_limit = 0, i, pal_len = 0; 00073 c7 85 a4 04 00 00 00 00 00 00 mov DWORD PTR ioff$[rbp], 0 @@ -13520,7 +13540,7 @@ stbi__parse_png_file PROC ; COMDAT 00087 c7 85 04 05 00 00 00 00 00 00 mov DWORD PTR pal_len$[rbp], 0 -; 4597 : int first = 1, k, interlace = 0, color = 0, is_iphone = 0; +; 4610 : int first = 1, k, interlace = 0, color = 0, is_iphone = 0; 00091 c7 85 24 05 00 00 01 00 00 00 mov DWORD PTR first$[rbp], 1 @@ -13531,7 +13551,7 @@ stbi__parse_png_file PROC ; COMDAT 000af c7 85 a4 05 00 00 00 00 00 00 mov DWORD PTR is_iphone$[rbp], 0 -; 4598 : stbi__context* s = z->s; +; 4611 : stbi__context* s = z->s; 000b9 48 8b 85 f0 09 00 00 mov rax, QWORD PTR z$[rbp] @@ -13539,30 +13559,30 @@ stbi__parse_png_file PROC ; COMDAT 000c3 48 89 85 c8 05 00 00 mov QWORD PTR s$[rbp], rax -; 4599 : -; 4600 : z->expanded = NULL; +; 4612 : +; 4613 : z->expanded = NULL; 000ca 48 8b 85 f0 09 00 00 mov rax, QWORD PTR z$[rbp] 000d1 48 c7 40 10 00 00 00 00 mov QWORD PTR [rax+16], 0 -; 4601 : z->idata = NULL; +; 4614 : z->idata = NULL; 000d9 48 8b 85 f0 09 00 00 mov rax, QWORD PTR z$[rbp] 000e0 48 c7 40 08 00 00 00 00 mov QWORD PTR [rax+8], 0 -; 4602 : z->out = NULL; +; 4615 : z->out = NULL; 000e8 48 8b 85 f0 09 00 00 mov rax, QWORD PTR z$[rbp] 000ef 48 c7 40 18 00 00 00 00 mov QWORD PTR [rax+24], 0 -; 4603 : -; 4604 : if (!stbi__check_png_header(s)) return 0; +; 4616 : +; 4617 : if (!stbi__check_png_header(s)) return 0; 000f7 48 8b 8d c8 05 00 00 mov rcx, QWORD PTR s$[rbp] @@ -13573,8 +13593,8 @@ stbi__parse_png_file PROC ; COMDAT 00109 e9 91 0d 00 00 jmp $LN1@stbi__pars $LN21@stbi__pars: -; 4605 : -; 4606 : if (scan == STBI__SCAN_type) return 1; +; 4618 : +; 4619 : if (scan == STBI__SCAN_type) return 1; 0010e 83 bd f8 09 00 00 01 cmp DWORD PTR scan$[rbp], 1 @@ -13584,9 +13604,9 @@ $LN21@stbi__pars: $LN22@stbi__pars: $LN2@stbi__pars: -; 4607 : -; 4608 : for (;;) { -; 4609 : stbi__pngchunk c = stbi__get_chunk_header(s); +; 4620 : +; 4621 : for (;;) { +; 4622 : stbi__pngchunk c = stbi__get_chunk_header(s); 00121 48 8b 8d c8 05 00 00 mov rcx, QWORD PTR s$[rbp] @@ -13594,7 +13614,7 @@ $LN2@stbi__pars: 0012d 48 89 85 e8 05 00 00 mov QWORD PTR c$8[rbp], rax -; 4610 : switch (c.type) { +; 4623 : switch (c.type) { 00134 8b 85 ec 05 00 00 mov eax, DWORD PTR c$8[rbp+4] @@ -13630,13 +13650,13 @@ $LN107@stbi__pars: 001a9 e9 12 0c 00 00 jmp $LN93@stbi__pars $LN23@stbi__pars: -; 4611 : case STBI__PNG_TYPE('C', 'g', 'B', 'I'): -; 4612 : is_iphone = 1; +; 4624 : case STBI__PNG_TYPE('C', 'g', 'B', 'I'): +; 4625 : is_iphone = 1; 001ae c7 85 a4 05 00 00 01 00 00 00 mov DWORD PTR is_iphone$[rbp], 1 -; 4613 : stbi__skip(s, c.length); +; 4626 : stbi__skip(s, c.length); 001b8 8b 95 e8 05 00 00 mov edx, DWORD PTR c$8[rbp] @@ -13644,14 +13664,14 @@ $LN23@stbi__pars: 00 00 mov rcx, QWORD PTR s$[rbp] 001c5 e8 00 00 00 00 call stbi__skip -; 4614 : break; +; 4627 : break; 001ca e9 bf 0c 00 00 jmp $LN5@stbi__pars $LN24@stbi__pars: -; 4615 : case STBI__PNG_TYPE('I', 'H', 'D', 'R'): { -; 4616 : int comp, filter; -; 4617 : if (!first) return stbi__err("multiple IHDR", "Corrupt PNG"); +; 4628 : case STBI__PNG_TYPE('I', 'H', 'D', 'R'): { +; 4629 : int comp, filter; +; 4630 : if (!first) return stbi__err("multiple IHDR", "Corrupt PNG"); 001cf 83 bd 24 05 00 00 00 cmp DWORD PTR first$[rbp], 0 @@ -13662,12 +13682,12 @@ $LN24@stbi__pars: 001e4 e9 b6 0c 00 00 jmp $LN1@stbi__pars $LN25@stbi__pars: -; 4618 : first = 0; +; 4631 : first = 0; 001e9 c7 85 24 05 00 00 00 00 00 00 mov DWORD PTR first$[rbp], 0 -; 4619 : if (c.length != 13) return stbi__err("bad IHDR len", "Corrupt PNG"); +; 4632 : if (c.length != 13) return stbi__err("bad IHDR len", "Corrupt PNG"); 001f3 83 bd e8 05 00 00 0d cmp DWORD PTR c$8[rbp], 13 @@ -13678,7 +13698,7 @@ $LN25@stbi__pars: 00208 e9 92 0c 00 00 jmp $LN1@stbi__pars $LN26@stbi__pars: -; 4620 : s->img_x = stbi__get32be(s); +; 4633 : s->img_x = stbi__get32be(s); 0020d 48 8b 8d c8 05 00 00 mov rcx, QWORD PTR s$[rbp] @@ -13687,7 +13707,7 @@ $LN26@stbi__pars: 00 00 mov rcx, QWORD PTR s$[rbp] 00220 89 01 mov DWORD PTR [rcx], eax -; 4621 : s->img_y = stbi__get32be(s); +; 4634 : s->img_y = stbi__get32be(s); 00222 48 8b 8d c8 05 00 00 mov rcx, QWORD PTR s$[rbp] @@ -13696,7 +13716,7 @@ $LN26@stbi__pars: 00 00 mov rcx, QWORD PTR s$[rbp] 00235 89 41 04 mov DWORD PTR [rcx+4], eax -; 4622 : if (s->img_y > STBI_MAX_DIMENSIONS) return stbi__err("too large", "Very large image (corrupt?)"); +; 4635 : if (s->img_y > STBI_MAX_DIMENSIONS) return stbi__err("too large", "Very large image (corrupt?)"); 00238 48 8b 85 c8 05 00 00 mov rax, QWORD PTR s$[rbp] @@ -13709,7 +13729,7 @@ $LN26@stbi__pars: 00254 e9 46 0c 00 00 jmp $LN1@stbi__pars $LN27@stbi__pars: -; 4623 : if (s->img_x > STBI_MAX_DIMENSIONS) return stbi__err("too large", "Very large image (corrupt?)"); +; 4636 : if (s->img_x > STBI_MAX_DIMENSIONS) return stbi__err("too large", "Very large image (corrupt?)"); 00259 48 8b 85 c8 05 00 00 mov rax, QWORD PTR s$[rbp] @@ -13722,7 +13742,7 @@ $LN27@stbi__pars: 00274 e9 26 0c 00 00 jmp $LN1@stbi__pars $LN28@stbi__pars: -; 4624 : z->depth = stbi__get8(s); if (z->depth != 1 && z->depth != 2 && z->depth != 4 && z->depth != 8 && z->depth != 16) return stbi__err("1/2/4/8/16-bit only", "PNG not supported: 1/2/4/8/16-bit only"); +; 4637 : z->depth = stbi__get8(s); if (z->depth != 1 && z->depth != 2 && z->depth != 4 && z->depth != 8 && z->depth != 16) return stbi__err("1/2/4/8/16-bit only", "PNG not supported: 1/2/4/8/16-bit only"); 00279 48 8b 8d c8 05 00 00 mov rcx, QWORD PTR s$[rbp] @@ -13757,7 +13777,7 @@ $LN28@stbi__pars: 002df e9 bb 0b 00 00 jmp $LN1@stbi__pars $LN29@stbi__pars: -; 4625 : color = stbi__get8(s); if (color > 6) return stbi__err("bad ctype", "Corrupt PNG"); +; 4638 : color = stbi__get8(s); if (color > 6) return stbi__err("bad ctype", "Corrupt PNG"); 002e4 48 8b 8d c8 05 00 00 mov rcx, QWORD PTR s$[rbp] @@ -13774,7 +13794,7 @@ $LN29@stbi__pars: 0030e e9 8c 0b 00 00 jmp $LN1@stbi__pars $LN30@stbi__pars: -; 4626 : if (color == 3 && z->depth == 16) return stbi__err("bad ctype", "Corrupt PNG"); +; 4639 : if (color == 3 && z->depth == 16) return stbi__err("bad ctype", "Corrupt PNG"); 00313 83 bd 84 05 00 00 03 cmp DWORD PTR color$[rbp], 3 @@ -13789,7 +13809,7 @@ $LN30@stbi__pars: 00335 e9 65 0b 00 00 jmp $LN1@stbi__pars $LN31@stbi__pars: -; 4627 : if (color == 3) pal_img_n = 3; else if (color & 1) return stbi__err("bad ctype", "Corrupt PNG"); +; 4640 : if (color == 3) pal_img_n = 3; else if (color & 1) return stbi__err("bad ctype", "Corrupt PNG"); 0033a 83 bd 84 05 00 00 03 cmp DWORD PTR color$[rbp], 3 @@ -13810,7 +13830,7 @@ $LN32@stbi__pars: $LN34@stbi__pars: $LN33@stbi__pars: -; 4628 : comp = stbi__get8(s); if (comp) return stbi__err("bad comp method", "Corrupt PNG"); +; 4641 : comp = stbi__get8(s); if (comp) return stbi__err("bad comp method", "Corrupt PNG"); 0036a 48 8b 8d c8 05 00 00 mov rcx, QWORD PTR s$[rbp] @@ -13827,7 +13847,7 @@ $LN33@stbi__pars: 00394 e9 06 0b 00 00 jmp $LN1@stbi__pars $LN35@stbi__pars: -; 4629 : filter = stbi__get8(s); if (filter) return stbi__err("bad filter method", "Corrupt PNG"); +; 4642 : filter = stbi__get8(s); if (filter) return stbi__err("bad filter method", "Corrupt PNG"); 00399 48 8b 8d c8 05 00 00 mov rcx, QWORD PTR s$[rbp] @@ -13844,7 +13864,7 @@ $LN35@stbi__pars: 003c3 e9 d7 0a 00 00 jmp $LN1@stbi__pars $LN36@stbi__pars: -; 4630 : interlace = stbi__get8(s); if (interlace > 1) return stbi__err("bad interlace method", "Corrupt PNG"); +; 4643 : interlace = stbi__get8(s); if (interlace > 1) return stbi__err("bad interlace method", "Corrupt PNG"); 003c8 48 8b 8d c8 05 00 00 mov rcx, QWORD PTR s$[rbp] @@ -13861,7 +13881,7 @@ $LN36@stbi__pars: 003f2 e9 a8 0a 00 00 jmp $LN1@stbi__pars $LN37@stbi__pars: -; 4631 : if (!s->img_x || !s->img_y) return stbi__err("0-pixel image", "Corrupt PNG"); +; 4644 : if (!s->img_x || !s->img_y) return stbi__err("0-pixel image", "Corrupt PNG"); 003f7 48 8b 85 c8 05 00 00 mov rax, QWORD PTR s$[rbp] @@ -13878,7 +13898,7 @@ $LN39@stbi__pars: 0041c e9 7e 0a 00 00 jmp $LN1@stbi__pars $LN38@stbi__pars: -; 4632 : if (!pal_img_n) { +; 4645 : if (!pal_img_n) { 00421 0f b6 85 24 04 00 00 movzx eax, BYTE PTR pal_img_n$[rbp] @@ -13886,7 +13906,7 @@ $LN38@stbi__pars: 0042a 0f 85 9b 00 00 00 jne $LN40@stbi__pars -; 4633 : s->img_n = (color & 2 ? 3 : 1) + (color & 4 ? 1 : 0); +; 4646 : s->img_n = (color & 2 ? 3 : 1) + (color & 4 ? 1 : 0); 00430 8b 85 84 05 00 00 mov eax, DWORD PTR color$[rbp] @@ -13922,7 +13942,7 @@ $LN100@stbi__pars: 00 00 mov rcx, QWORD PTR s$[rbp] 0048d 89 41 08 mov DWORD PTR [rcx+8], eax -; 4634 : if ((1 << 30) / s->img_x / s->img_n < s->img_y) return stbi__err("too large", "Image too large to decode"); +; 4647 : if ((1 << 30) / s->img_x / s->img_n < s->img_y) return stbi__err("too large", "Image too large to decode"); 00490 33 d2 xor edx, edx 00492 b8 00 00 00 40 mov eax, 1073741824 ; 40000000H @@ -13943,22 +13963,22 @@ $LN100@stbi__pars: 004c4 e9 d6 09 00 00 jmp $LN1@stbi__pars $LN42@stbi__pars: -; 4635 : } +; 4648 : } 004c9 eb 44 jmp SHORT $LN41@stbi__pars $LN40@stbi__pars: -; 4636 : else { -; 4637 : // if paletted, then pal_n is our final components, and -; 4638 : // img_n is # components to decompress/filter. -; 4639 : s->img_n = 1; +; 4649 : else { +; 4650 : // if paletted, then pal_n is our final components, and +; 4651 : // img_n is # components to decompress/filter. +; 4652 : s->img_n = 1; 004cb 48 8b 85 c8 05 00 00 mov rax, QWORD PTR s$[rbp] 004d2 c7 40 08 01 00 00 00 mov DWORD PTR [rax+8], 1 -; 4640 : if ((1 << 30) / s->img_x / 4 < s->img_y) return stbi__err("too large", "Corrupt PNG"); +; 4653 : if ((1 << 30) / s->img_x / 4 < s->img_y) return stbi__err("too large", "Corrupt PNG"); 004d9 33 d2 xor edx, edx 004db b8 00 00 00 40 mov eax, 1073741824 ; 40000000H @@ -13979,17 +13999,17 @@ $LN40@stbi__pars: $LN43@stbi__pars: $LN41@stbi__pars: -; 4641 : } -; 4642 : // even with SCAN_header, have to scan to see if we have a tRNS -; 4643 : break; +; 4654 : } +; 4655 : // even with SCAN_header, have to scan to see if we have a tRNS +; 4656 : break; 0050f e9 7a 09 00 00 jmp $LN5@stbi__pars $LN44@stbi__pars: -; 4644 : } -; 4645 : -; 4646 : case STBI__PNG_TYPE('P', 'L', 'T', 'E'): { -; 4647 : if (first) return stbi__err("first not IHDR", "Corrupt PNG"); +; 4657 : } +; 4658 : +; 4659 : case STBI__PNG_TYPE('P', 'L', 'T', 'E'): { +; 4660 : if (first) return stbi__err("first not IHDR", "Corrupt PNG"); 00514 83 bd 24 05 00 00 00 cmp DWORD PTR first$[rbp], 0 @@ -14000,7 +14020,7 @@ $LN44@stbi__pars: 00529 e9 71 09 00 00 jmp $LN1@stbi__pars $LN45@stbi__pars: -; 4648 : if (c.length > 256 * 3) return stbi__err("invalid PLTE", "Corrupt PNG"); +; 4661 : if (c.length > 256 * 3) return stbi__err("invalid PLTE", "Corrupt PNG"); 0052e 81 bd e8 05 00 00 00 03 00 00 cmp DWORD PTR c$8[rbp], 768 ; 00000300H @@ -14011,7 +14031,7 @@ $LN45@stbi__pars: 00546 e9 54 09 00 00 jmp $LN1@stbi__pars $LN46@stbi__pars: -; 4649 : pal_len = c.length / 3; +; 4662 : pal_len = c.length / 3; 0054b 33 d2 xor edx, edx 0054d 8b 85 e8 05 00 @@ -14021,7 +14041,7 @@ $LN46@stbi__pars: 0055a 89 85 04 05 00 00 mov DWORD PTR pal_len$[rbp], eax -; 4650 : if (pal_len * 3 != c.length) return stbi__err("invalid PLTE", "Corrupt PNG"); +; 4663 : if (pal_len * 3 != c.length) return stbi__err("invalid PLTE", "Corrupt PNG"); 00560 6b 85 04 05 00 00 03 imul eax, DWORD PTR pal_len$[rbp], 3 @@ -14034,7 +14054,7 @@ $LN46@stbi__pars: 0057b e9 1f 09 00 00 jmp $LN1@stbi__pars $LN47@stbi__pars: -; 4651 : for (i = 0; i < pal_len; ++i) { +; 4664 : for (i = 0; i < pal_len; ++i) { 00580 c7 85 e4 04 00 00 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -14052,7 +14072,7 @@ $LN9@stbi__pars: 00 cmp DWORD PTR i$[rbp], eax 005a6 73 72 jae SHORT $LN8@stbi__pars -; 4652 : palette[i * 4 + 0] = stbi__get8(s); +; 4665 : palette[i * 4 + 0] = stbi__get8(s); 005a8 48 8b 8d c8 05 00 00 mov rcx, QWORD PTR s$[rbp] @@ -14063,7 +14083,7 @@ $LN9@stbi__pars: 005bd 8b c9 mov ecx, ecx 005bf 88 44 0d 10 mov BYTE PTR palette$[rbp+rcx], al -; 4653 : palette[i * 4 + 1] = stbi__get8(s); +; 4666 : palette[i * 4 + 1] = stbi__get8(s); 005c3 48 8b 8d c8 05 00 00 mov rcx, QWORD PTR s$[rbp] @@ -14075,7 +14095,7 @@ $LN9@stbi__pars: 005dc 8b c9 mov ecx, ecx 005de 88 44 0d 10 mov BYTE PTR palette$[rbp+rcx], al -; 4654 : palette[i * 4 + 2] = stbi__get8(s); +; 4667 : palette[i * 4 + 2] = stbi__get8(s); 005e2 48 8b 8d c8 05 00 00 mov rcx, QWORD PTR s$[rbp] @@ -14087,7 +14107,7 @@ $LN9@stbi__pars: 005fb 8b c9 mov ecx, ecx 005fd 88 44 0d 10 mov BYTE PTR palette$[rbp+rcx], al -; 4655 : palette[i * 4 + 3] = 255; +; 4668 : palette[i * 4 + 3] = 255; 00601 8b 85 e4 04 00 00 mov eax, DWORD PTR i$[rbp] @@ -14096,20 +14116,20 @@ $LN9@stbi__pars: 0060e 8b c0 mov eax, eax 00610 c6 44 05 10 ff mov BYTE PTR palette$[rbp+rax], 255 ; 000000ffH -; 4656 : } +; 4669 : } 00615 e9 72 ff ff ff jmp $LN7@stbi__pars $LN8@stbi__pars: -; 4657 : break; +; 4670 : break; 0061a e9 6f 08 00 00 jmp $LN5@stbi__pars $LN48@stbi__pars: -; 4658 : } -; 4659 : -; 4660 : case STBI__PNG_TYPE('t', 'R', 'N', 'S'): { -; 4661 : if (first) return stbi__err("first not IHDR", "Corrupt PNG"); +; 4671 : } +; 4672 : +; 4673 : case STBI__PNG_TYPE('t', 'R', 'N', 'S'): { +; 4674 : if (first) return stbi__err("first not IHDR", "Corrupt PNG"); 0061f 83 bd 24 05 00 00 00 cmp DWORD PTR first$[rbp], 0 @@ -14120,7 +14140,7 @@ $LN48@stbi__pars: 00634 e9 66 08 00 00 jmp $LN1@stbi__pars $LN49@stbi__pars: -; 4662 : if (z->idata) return stbi__err("tRNS after IDAT", "Corrupt PNG"); +; 4675 : if (z->idata) return stbi__err("tRNS after IDAT", "Corrupt PNG"); 00639 48 8b 85 f0 09 00 00 mov rax, QWORD PTR z$[rbp] @@ -14132,7 +14152,7 @@ $LN49@stbi__pars: 00653 e9 47 08 00 00 jmp $LN1@stbi__pars $LN50@stbi__pars: -; 4663 : if (pal_img_n) { +; 4676 : if (pal_img_n) { 00658 0f b6 85 24 04 00 00 movzx eax, BYTE PTR pal_img_n$[rbp] @@ -14140,7 +14160,7 @@ $LN50@stbi__pars: 00661 0f 84 af 00 00 00 je $LN51@stbi__pars -; 4664 : if (scan == STBI__SCAN_header) { s->img_n = 4; return 1; } +; 4677 : if (scan == STBI__SCAN_header) { s->img_n = 4; return 1; } 00667 83 bd f8 09 00 00 02 cmp DWORD PTR scan$[rbp], 2 @@ -14153,7 +14173,7 @@ $LN50@stbi__pars: 00683 e9 17 08 00 00 jmp $LN1@stbi__pars $LN53@stbi__pars: -; 4665 : if (pal_len == 0) return stbi__err("tRNS before PLTE", "Corrupt PNG"); +; 4678 : if (pal_len == 0) return stbi__err("tRNS before PLTE", "Corrupt PNG"); 00688 83 bd 04 05 00 00 00 cmp DWORD PTR pal_len$[rbp], 0 @@ -14164,7 +14184,7 @@ $LN53@stbi__pars: 0069d e9 fd 07 00 00 jmp $LN1@stbi__pars $LN54@stbi__pars: -; 4666 : if (c.length > pal_len) return stbi__err("bad tRNS len", "Corrupt PNG"); +; 4679 : if (c.length > pal_len) return stbi__err("bad tRNS len", "Corrupt PNG"); 006a2 8b 85 04 05 00 00 mov eax, DWORD PTR pal_len$[rbp] @@ -14177,12 +14197,12 @@ $LN54@stbi__pars: 006bc e9 de 07 00 00 jmp $LN1@stbi__pars $LN55@stbi__pars: -; 4667 : pal_img_n = 4; +; 4680 : pal_img_n = 4; 006c1 c6 85 24 04 00 00 04 mov BYTE PTR pal_img_n$[rbp], 4 -; 4668 : for (i = 0; i < c.length; ++i) +; 4681 : for (i = 0; i < c.length; ++i) 006c8 c7 85 e4 04 00 00 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -14200,7 +14220,7 @@ $LN12@stbi__pars: 00 cmp DWORD PTR i$[rbp], eax 006ee 73 21 jae SHORT $LN11@stbi__pars -; 4669 : palette[i * 4 + 3] = stbi__get8(s); +; 4682 : palette[i * 4 + 3] = stbi__get8(s); 006f0 48 8b 8d c8 05 00 00 mov rcx, QWORD PTR s$[rbp] @@ -14214,13 +14234,13 @@ $LN12@stbi__pars: 0070f eb c3 jmp SHORT $LN10@stbi__pars $LN11@stbi__pars: -; 4670 : } +; 4683 : } 00711 e9 38 01 00 00 jmp $LN52@stbi__pars $LN51@stbi__pars: -; 4671 : else { -; 4672 : if (!(s->img_n & 1)) return stbi__err("tRNS with alpha", "Corrupt PNG"); +; 4684 : else { +; 4685 : if (!(s->img_n & 1)) return stbi__err("tRNS with alpha", "Corrupt PNG"); 00716 48 8b 85 c8 05 00 00 mov rax, QWORD PTR s$[rbp] @@ -14234,7 +14254,7 @@ $LN51@stbi__pars: 00733 e9 67 07 00 00 jmp $LN1@stbi__pars $LN56@stbi__pars: -; 4673 : if (c.length != (stbi__uint32)s->img_n * 2) return stbi__err("bad tRNS len", "Corrupt PNG"); +; 4686 : if (c.length != (stbi__uint32)s->img_n * 2) return stbi__err("bad tRNS len", "Corrupt PNG"); 00738 48 8b 85 c8 05 00 00 mov rax, QWORD PTR s$[rbp] @@ -14249,13 +14269,13 @@ $LN56@stbi__pars: 00758 e9 42 07 00 00 jmp $LN1@stbi__pars $LN57@stbi__pars: -; 4674 : has_trans = 1; +; 4687 : has_trans = 1; 0075d c6 85 44 04 00 00 01 mov BYTE PTR has_trans$[rbp], 1 -; 4675 : // non-paletted with tRNS = constant alpha. if header-scanning, we can stop now. -; 4676 : if (scan == STBI__SCAN_header) { ++s->img_n; return 1; } +; 4688 : // non-paletted with tRNS = constant alpha. if header-scanning, we can stop now. +; 4689 : if (scan == STBI__SCAN_header) { ++s->img_n; return 1; } 00764 83 bd f8 09 00 00 02 cmp DWORD PTR scan$[rbp], 2 @@ -14271,14 +14291,14 @@ $LN57@stbi__pars: 00788 e9 12 07 00 00 jmp $LN1@stbi__pars $LN58@stbi__pars: -; 4677 : if (z->depth == 16) { +; 4690 : if (z->depth == 16) { 0078d 48 8b 85 f0 09 00 00 mov rax, QWORD PTR z$[rbp] 00794 83 78 20 10 cmp DWORD PTR [rax+32], 16 00798 75 4b jne SHORT $LN59@stbi__pars -; 4678 : for (k = 0; k < s->img_n; ++k) tc16[k] = (stbi__uint16)stbi__get16be(s); // copy the values as-is +; 4691 : for (k = 0; k < s->img_n; ++k) tc16[k] = (stbi__uint16)stbi__get16be(s); // copy the values as-is 0079a c7 85 44 05 00 00 00 00 00 00 mov DWORD PTR k$[rbp], 0 @@ -14306,13 +14326,13 @@ $LN15@stbi__pars: 007e1 eb c3 jmp SHORT $LN13@stbi__pars $LN14@stbi__pars: -; 4679 : } +; 4692 : } 007e3 eb 69 jmp SHORT $LN60@stbi__pars $LN59@stbi__pars: -; 4680 : else { -; 4681 : for (k = 0; k < s->img_n; ++k) tc[k] = (stbi_uc)(stbi__get16be(s) & 255) * stbi__depth_scale_table[z->depth]; // non 8-bit images will be larger +; 4693 : else { +; 4694 : for (k = 0; k < s->img_n; ++k) tc[k] = (stbi_uc)(stbi__get16be(s) & 255) * stbi__depth_scale_table[z->depth]; // non 8-bit images will be larger 007e5 c7 85 44 05 00 00 00 00 00 00 mov DWORD PTR k$[rbp], 0 @@ -14351,17 +14371,17 @@ $LN17@stbi__pars: $LN60@stbi__pars: $LN52@stbi__pars: -; 4682 : } -; 4683 : } -; 4684 : break; +; 4695 : } +; 4696 : } +; 4697 : break; 0084e e9 3b 06 00 00 jmp $LN5@stbi__pars $LN61@stbi__pars: -; 4685 : } -; 4686 : -; 4687 : case STBI__PNG_TYPE('I', 'D', 'A', 'T'): { -; 4688 : if (first) return stbi__err("first not IHDR", "Corrupt PNG"); +; 4698 : } +; 4699 : +; 4700 : case STBI__PNG_TYPE('I', 'D', 'A', 'T'): { +; 4701 : if (first) return stbi__err("first not IHDR", "Corrupt PNG"); 00853 83 bd 24 05 00 00 00 cmp DWORD PTR first$[rbp], 0 @@ -14372,7 +14392,7 @@ $LN61@stbi__pars: 00868 e9 32 06 00 00 jmp $LN1@stbi__pars $LN62@stbi__pars: -; 4689 : if (pal_img_n && !pal_len) return stbi__err("no PLTE", "Corrupt PNG"); +; 4702 : if (pal_img_n && !pal_len) return stbi__err("no PLTE", "Corrupt PNG"); 0086d 0f b6 85 24 04 00 00 movzx eax, BYTE PTR pal_img_n$[rbp] @@ -14387,21 +14407,21 @@ $LN62@stbi__pars: 0088d e9 0d 06 00 00 jmp $LN1@stbi__pars $LN63@stbi__pars: -; 4690 : if (scan == STBI__SCAN_header) { +; 4703 : if (scan == STBI__SCAN_header) { 00892 83 bd f8 09 00 00 02 cmp DWORD PTR scan$[rbp], 2 00899 75 26 jne SHORT $LN64@stbi__pars -; 4691 : // header scan definitely stops at first IDAT -; 4692 : if (pal_img_n) +; 4704 : // header scan definitely stops at first IDAT +; 4705 : if (pal_img_n) 0089b 0f b6 85 24 04 00 00 movzx eax, BYTE PTR pal_img_n$[rbp] 008a2 85 c0 test eax, eax 008a4 74 11 je SHORT $LN65@stbi__pars -; 4693 : s->img_n = pal_img_n; +; 4706 : s->img_n = pal_img_n; 008a6 0f b6 85 24 04 00 00 movzx eax, BYTE PTR pal_img_n$[rbp] @@ -14410,14 +14430,14 @@ $LN63@stbi__pars: 008b4 89 41 08 mov DWORD PTR [rcx+8], eax $LN65@stbi__pars: -; 4694 : return 1; +; 4707 : return 1; 008b7 b8 01 00 00 00 mov eax, 1 008bc e9 de 05 00 00 jmp $LN1@stbi__pars $LN64@stbi__pars: -; 4695 : } -; 4696 : if (c.length > (1u << 30)) return stbi__err("IDAT size limit", "IDAT section larger than 2^30 bytes"); +; 4708 : } +; 4709 : if (c.length > (1u << 30)) return stbi__err("IDAT size limit", "IDAT section larger than 2^30 bytes"); 008c1 81 bd e8 05 00 00 00 00 00 40 cmp DWORD PTR c$8[rbp], 1073741824 ; 40000000H @@ -14428,7 +14448,7 @@ $LN64@stbi__pars: 008d9 e9 c1 05 00 00 jmp $LN1@stbi__pars $LN66@stbi__pars: -; 4697 : if ((int)(ioff + c.length) < (int)ioff) return 0; +; 4710 : if ((int)(ioff + c.length) < (int)ioff) return 0; 008de 8b 85 e8 05 00 00 mov eax, DWORD PTR c$8[rbp] @@ -14443,7 +14463,7 @@ $LN66@stbi__pars: 008f8 e9 a2 05 00 00 jmp $LN1@stbi__pars $LN67@stbi__pars: -; 4698 : if (ioff + c.length > idata_limit) { +; 4711 : if (ioff + c.length > idata_limit) { 008fd 8b 85 e8 05 00 00 mov eax, DWORD PTR c$8[rbp] @@ -14456,15 +14476,15 @@ $LN67@stbi__pars: 00913 0f 86 ba 00 00 00 jbe $LN68@stbi__pars -; 4699 : stbi__uint32 idata_limit_old = idata_limit; +; 4712 : stbi__uint32 idata_limit_old = idata_limit; 00919 8b 85 c4 04 00 00 mov eax, DWORD PTR idata_limit$[rbp] 0091f 89 85 44 06 00 00 mov DWORD PTR idata_limit_old$11[rbp], eax -; 4700 : stbi_uc* p; -; 4701 : if (idata_limit == 0) idata_limit = c.length > 4096 ? c.length : 4096; +; 4713 : stbi_uc* p; +; 4714 : if (idata_limit == 0) idata_limit = c.length > 4096 ? c.length : 4096; 00925 83 bd c4 04 00 00 00 cmp DWORD PTR idata_limit$[rbp], 0 @@ -14488,7 +14508,7 @@ $LN102@stbi__pars: $LN69@stbi__pars: $LN19@stbi__pars: -; 4702 : while (ioff + c.length > idata_limit) +; 4715 : while (ioff + c.length > idata_limit) 0095e 8b 85 e8 05 00 00 mov eax, DWORD PTR c$8[rbp] @@ -14500,7 +14520,7 @@ $LN19@stbi__pars: 00 cmp eax, DWORD PTR idata_limit$[rbp] 00974 76 10 jbe SHORT $LN20@stbi__pars -; 4703 : idata_limit *= 2; +; 4716 : idata_limit *= 2; 00976 8b 85 c4 04 00 00 mov eax, DWORD PTR idata_limit$[rbp] @@ -14510,8 +14530,8 @@ $LN19@stbi__pars: 00984 eb d8 jmp SHORT $LN19@stbi__pars $LN20@stbi__pars: -; 4704 : STBI_NOTUSED(idata_limit_old); -; 4705 : p = (stbi_uc*)STBI_REALLOC_SIZED(z->idata, idata_limit_old, idata_limit); if (p == NULL) return stbi__err("outofmem", "Out of memory"); +; 4717 : STBI_NOTUSED(idata_limit_old); +; 4718 : p = (stbi_uc*)STBI_REALLOC_SIZED(z->idata, idata_limit_old, idata_limit); if (p == NULL) return stbi__err("outofmem", "Out of memory"); 00986 8b 85 c4 04 00 00 mov eax, DWORD PTR idata_limit$[rbp] @@ -14532,7 +14552,7 @@ $LN20@stbi__pars: 009bc e9 de 04 00 00 jmp $LN1@stbi__pars $LN70@stbi__pars: -; 4706 : z->idata = p; +; 4719 : z->idata = p; 009c1 48 8b 85 f0 09 00 00 mov rax, QWORD PTR z$[rbp] @@ -14541,8 +14561,8 @@ $LN70@stbi__pars: 009cf 48 89 48 08 mov QWORD PTR [rax+8], rcx $LN68@stbi__pars: -; 4707 : } -; 4708 : if (!stbi__getn(s, z->idata + ioff, c.length)) return stbi__err("outofdata", "Corrupt PNG"); +; 4720 : } +; 4721 : if (!stbi__getn(s, z->idata + ioff, c.length)) return stbi__err("outofdata", "Corrupt PNG"); 009d3 8b 85 a4 04 00 00 mov eax, DWORD PTR ioff$[rbp] @@ -14563,7 +14583,7 @@ $LN68@stbi__pars: 00a0a e9 90 04 00 00 jmp $LN1@stbi__pars $LN71@stbi__pars: -; 4709 : ioff += c.length; +; 4722 : ioff += c.length; 00a0f 8b 85 e8 05 00 00 mov eax, DWORD PTR c$8[rbp] @@ -14574,16 +14594,16 @@ $LN71@stbi__pars: 00a1f 89 85 a4 04 00 00 mov DWORD PTR ioff$[rbp], eax -; 4710 : break; +; 4723 : break; 00a25 e9 64 04 00 00 jmp $LN5@stbi__pars $LN72@stbi__pars: -; 4711 : } -; 4712 : -; 4713 : case STBI__PNG_TYPE('I', 'E', 'N', 'D'): { -; 4714 : stbi__uint32 raw_len, bpl; -; 4715 : if (first) return stbi__err("first not IHDR", "Corrupt PNG"); +; 4724 : } +; 4725 : +; 4726 : case STBI__PNG_TYPE('I', 'E', 'N', 'D'): { +; 4727 : stbi__uint32 raw_len, bpl; +; 4728 : if (first) return stbi__err("first not IHDR", "Corrupt PNG"); 00a2a 83 bd 24 05 00 00 00 cmp DWORD PTR first$[rbp], 0 @@ -14594,7 +14614,7 @@ $LN72@stbi__pars: 00a3f e9 5b 04 00 00 jmp $LN1@stbi__pars $LN73@stbi__pars: -; 4716 : if (scan != STBI__SCAN_load) return 1; +; 4729 : if (scan != STBI__SCAN_load) return 1; 00a44 83 bd f8 09 00 00 00 cmp DWORD PTR scan$[rbp], 0 @@ -14603,7 +14623,7 @@ $LN73@stbi__pars: 00a52 e9 48 04 00 00 jmp $LN1@stbi__pars $LN74@stbi__pars: -; 4717 : if (z->idata == NULL) return stbi__err("no IDAT", "Corrupt PNG"); +; 4730 : if (z->idata == NULL) return stbi__err("no IDAT", "Corrupt PNG"); 00a57 48 8b 85 f0 09 00 00 mov rax, QWORD PTR z$[rbp] @@ -14615,8 +14635,8 @@ $LN74@stbi__pars: 00a71 e9 29 04 00 00 jmp $LN1@stbi__pars $LN75@stbi__pars: -; 4718 : // initial guess for decoded data size to avoid unnecessary reallocs -; 4719 : bpl = (s->img_x * z->depth + 7) / 8; // bytes per line, per component +; 4731 : // initial guess for decoded data size to avoid unnecessary reallocs +; 4732 : bpl = (s->img_x * z->depth + 7) / 8; // bytes per line, per component 00a76 48 8b 85 c8 05 00 00 mov rax, QWORD PTR s$[rbp] @@ -14631,7 +14651,7 @@ $LN75@stbi__pars: 00a96 89 85 a4 06 00 00 mov DWORD PTR bpl$14[rbp], eax -; 4720 : raw_len = bpl * s->img_y * s->img_n /* pixels */ + s->img_y /* filter mode per row */; +; 4733 : raw_len = bpl * s->img_y * s->img_n /* pixels */ + s->img_y /* filter mode per row */; 00a9c 48 8b 85 c8 05 00 00 mov rax, QWORD PTR s$[rbp] @@ -14648,7 +14668,7 @@ $LN75@stbi__pars: 00ac4 89 85 84 06 00 00 mov DWORD PTR raw_len$13[rbp], eax -; 4721 : z->expanded = (stbi_uc*)stbi_zlib_decode_malloc_guesssize_headerflag((char*)z->idata, ioff, raw_len, (int*)&raw_len, !is_iphone); +; 4734 : z->expanded = (stbi_uc*)stbi_zlib_decode_malloc_guesssize_headerflag((char*)z->idata, ioff, raw_len, (int*)&raw_len, !is_iphone); 00aca 83 bd a4 05 00 00 00 cmp DWORD PTR is_iphone$[rbp], 0 @@ -14677,7 +14697,7 @@ $LN104@stbi__pars: 00 00 mov rcx, QWORD PTR z$[rbp] 00b1e 48 89 41 10 mov QWORD PTR [rcx+16], rax -; 4722 : if (z->expanded == NULL) return 0; // zlib should set error +; 4735 : if (z->expanded == NULL) return 0; // zlib should set error 00b22 48 8b 85 f0 09 00 00 mov rax, QWORD PTR z$[rbp] @@ -14687,7 +14707,7 @@ $LN104@stbi__pars: 00b32 e9 68 03 00 00 jmp $LN1@stbi__pars $LN76@stbi__pars: -; 4723 : STBI_FREE(z->idata); z->idata = NULL; +; 4736 : STBI_FREE(z->idata); z->idata = NULL; 00b37 48 8b 85 f0 09 00 00 mov rax, QWORD PTR z$[rbp] @@ -14699,7 +14719,7 @@ $LN76@stbi__pars: 00b4f 48 c7 40 08 00 00 00 00 mov QWORD PTR [rax+8], 0 -; 4724 : if ((req_comp == s->img_n + 1 && req_comp != 3 && !pal_img_n) || has_trans) +; 4737 : if ((req_comp == s->img_n + 1 && req_comp != 3 && !pal_img_n) || has_trans) 00b57 48 8b 85 c8 05 00 00 mov rax, QWORD PTR s$[rbp] @@ -14722,7 +14742,7 @@ $LN80@stbi__pars: 00b88 74 18 je SHORT $LN77@stbi__pars $LN79@stbi__pars: -; 4725 : s->img_out_n = s->img_n + 1; +; 4738 : s->img_out_n = s->img_n + 1; 00b8a 48 8b 85 c8 05 00 00 mov rax, QWORD PTR s$[rbp] @@ -14734,8 +14754,8 @@ $LN79@stbi__pars: 00ba0 eb 14 jmp SHORT $LN78@stbi__pars $LN77@stbi__pars: -; 4726 : else -; 4727 : s->img_out_n = s->img_n; +; 4739 : else +; 4740 : s->img_out_n = s->img_n; 00ba2 48 8b 85 c8 05 00 00 mov rax, QWORD PTR s$[rbp] @@ -14745,7 +14765,7 @@ $LN77@stbi__pars: 00bb3 89 48 0c mov DWORD PTR [rax+12], ecx $LN78@stbi__pars: -; 4728 : if (!stbi__create_png_image(z, z->expanded, raw_len, s->img_out_n, z->depth, color, interlace)) return 0; +; 4741 : if (!stbi__create_png_image(z, z->expanded, raw_len, s->img_out_n, z->depth, color, interlace)) return 0; 00bb6 8b 85 64 05 00 00 mov eax, DWORD PTR interlace$[rbp] @@ -14774,21 +14794,21 @@ $LN78@stbi__pars: 00c07 e9 93 02 00 00 jmp $LN1@stbi__pars $LN81@stbi__pars: -; 4729 : if (has_trans) { +; 4742 : if (has_trans) { 00c0c 0f b6 85 44 04 00 00 movzx eax, BYTE PTR has_trans$[rbp] 00c13 85 c0 test eax, eax 00c15 74 61 je SHORT $LN82@stbi__pars -; 4730 : if (z->depth == 16) { +; 4743 : if (z->depth == 16) { 00c17 48 8b 85 f0 09 00 00 mov rax, QWORD PTR z$[rbp] 00c1e 83 78 20 10 cmp DWORD PTR [rax+32], 16 00c22 75 2b jne SHORT $LN83@stbi__pars -; 4731 : if (!stbi__compute_transparency16(z, tc16, s->img_out_n)) return 0; +; 4744 : if (!stbi__compute_transparency16(z, tc16, s->img_out_n)) return 0; 00c24 48 8b 85 c8 05 00 00 mov rax, QWORD PTR s$[rbp] @@ -14804,13 +14824,13 @@ $LN81@stbi__pars: 00c48 e9 52 02 00 00 jmp $LN1@stbi__pars $LN85@stbi__pars: -; 4732 : } +; 4745 : } 00c4d eb 29 jmp SHORT $LN84@stbi__pars $LN83@stbi__pars: -; 4733 : else { -; 4734 : if (!stbi__compute_transparency(z, tc, s->img_out_n)) return 0; +; 4746 : else { +; 4747 : if (!stbi__compute_transparency(z, tc, s->img_out_n)) return 0; 00c4f 48 8b 85 c8 05 00 00 mov rax, QWORD PTR s$[rbp] @@ -14828,9 +14848,9 @@ $LN86@stbi__pars: $LN84@stbi__pars: $LN82@stbi__pars: -; 4735 : } -; 4736 : } -; 4737 : if (is_iphone && stbi__de_iphone_flag && s->img_out_n > 2) +; 4748 : } +; 4749 : } +; 4750 : if (is_iphone && stbi__de_iphone_flag && s->img_out_n > 2) 00c78 83 bd a4 05 00 00 00 cmp DWORD PTR is_iphone$[rbp], 0 @@ -14869,22 +14889,22 @@ $LN106@stbi__pars: 00ce2 83 78 0c 02 cmp DWORD PTR [rax+12], 2 00ce6 7e 0c jle SHORT $LN87@stbi__pars -; 4738 : stbi__de_iphone(z); +; 4751 : stbi__de_iphone(z); 00ce8 48 8b 8d f0 09 00 00 mov rcx, QWORD PTR z$[rbp] 00cef e8 00 00 00 00 call stbi__de_iphone $LN87@stbi__pars: -; 4739 : if (pal_img_n) { +; 4752 : if (pal_img_n) { 00cf4 0f b6 85 24 04 00 00 movzx eax, BYTE PTR pal_img_n$[rbp] 00cfb 85 c0 test eax, eax 00cfd 74 6a je SHORT $LN88@stbi__pars -; 4740 : // pal_img_n == 3 or 4 -; 4741 : s->img_n = pal_img_n; // record the actual colors we had +; 4753 : // pal_img_n == 3 or 4 +; 4754 : s->img_n = pal_img_n; // record the actual colors we had 00cff 0f b6 85 24 04 00 00 movzx eax, BYTE PTR pal_img_n$[rbp] @@ -14892,7 +14912,7 @@ $LN87@stbi__pars: 00 00 mov rcx, QWORD PTR s$[rbp] 00d0d 89 41 08 mov DWORD PTR [rcx+8], eax -; 4742 : s->img_out_n = pal_img_n; +; 4755 : s->img_out_n = pal_img_n; 00d10 0f b6 85 24 04 00 00 movzx eax, BYTE PTR pal_img_n$[rbp] @@ -14900,7 +14920,7 @@ $LN87@stbi__pars: 00 00 mov rcx, QWORD PTR s$[rbp] 00d1e 89 41 0c mov DWORD PTR [rcx+12], eax -; 4743 : if (req_comp >= 3) s->img_out_n = req_comp; +; 4756 : if (req_comp >= 3) s->img_out_n = req_comp; 00d21 83 bd 00 0a 00 00 03 cmp DWORD PTR req_comp$[rbp], 3 @@ -14912,7 +14932,7 @@ $LN87@stbi__pars: 00d37 89 48 0c mov DWORD PTR [rax+12], ecx $LN90@stbi__pars: -; 4744 : if (!stbi__expand_png_palette(z, palette, pal_len, s->img_out_n)) +; 4757 : if (!stbi__expand_png_palette(z, palette, pal_len, s->img_out_n)) 00d3a 48 8b 85 c8 05 00 00 mov rax, QWORD PTR s$[rbp] @@ -14926,26 +14946,26 @@ $LN90@stbi__pars: 00d5c 85 c0 test eax, eax 00d5e 75 07 jne SHORT $LN91@stbi__pars -; 4745 : return 0; +; 4758 : return 0; 00d60 33 c0 xor eax, eax 00d62 e9 38 01 00 00 jmp $LN1@stbi__pars $LN91@stbi__pars: -; 4746 : } +; 4759 : } 00d67 eb 21 jmp SHORT $LN89@stbi__pars $LN88@stbi__pars: -; 4747 : else if (has_trans) { +; 4760 : else if (has_trans) { 00d69 0f b6 85 44 04 00 00 movzx eax, BYTE PTR has_trans$[rbp] 00d70 85 c0 test eax, eax 00d72 74 16 je SHORT $LN92@stbi__pars -; 4748 : // non-paletted image with tRNS -> source image has (constant) alpha -; 4749 : ++s->img_n; +; 4761 : // non-paletted image with tRNS -> source image has (constant) alpha +; 4762 : ++s->img_n; 00d74 48 8b 85 c8 05 00 00 mov rax, QWORD PTR s$[rbp] @@ -14957,8 +14977,8 @@ $LN88@stbi__pars: $LN92@stbi__pars: $LN89@stbi__pars: -; 4750 : } -; 4751 : STBI_FREE(z->expanded); z->expanded = NULL; +; 4763 : } +; 4764 : STBI_FREE(z->expanded); z->expanded = NULL; 00d8a 48 8b 85 f0 09 00 00 mov rax, QWORD PTR z$[rbp] @@ -14970,24 +14990,24 @@ $LN89@stbi__pars: 00da2 48 c7 40 10 00 00 00 00 mov QWORD PTR [rax+16], 0 -; 4752 : // end of PNG chunk, read and skip CRC -; 4753 : stbi__get32be(s); +; 4765 : // end of PNG chunk, read and skip CRC +; 4766 : stbi__get32be(s); 00daa 48 8b 8d c8 05 00 00 mov rcx, QWORD PTR s$[rbp] 00db1 e8 00 00 00 00 call stbi__get32be -; 4754 : return 1; +; 4767 : return 1; 00db6 b8 01 00 00 00 mov eax, 1 00dbb e9 df 00 00 00 jmp $LN1@stbi__pars $LN93@stbi__pars: -; 4755 : } -; 4756 : -; 4757 : default: -; 4758 : // if critical, fail -; 4759 : if (first) return stbi__err("first not IHDR", "Corrupt PNG"); +; 4768 : } +; 4769 : +; 4770 : default: +; 4771 : // if critical, fail +; 4772 : if (first) return stbi__err("first not IHDR", "Corrupt PNG"); 00dc0 83 bd 24 05 00 00 00 cmp DWORD PTR first$[rbp], 0 @@ -14998,7 +15018,7 @@ $LN93@stbi__pars: 00dd5 e9 c5 00 00 00 jmp $LN1@stbi__pars $LN94@stbi__pars: -; 4760 : if ((c.type & (1 << 29)) == 0) { +; 4773 : if ((c.type & (1 << 29)) == 0) { 00dda 8b 85 ec 05 00 00 mov eax, DWORD PTR c$8[rbp+4] @@ -15007,10 +15027,10 @@ $LN94@stbi__pars: 00de7 0f 85 8f 00 00 00 jne $LN95@stbi__pars -; 4761 : #ifndef STBI_NO_FAILURE_STRINGS -; 4762 : // not threadsafe -; 4763 : static char invalid_chunk[] = "XXXX PNG chunk not known"; -; 4764 : invalid_chunk[0] = STBI__BYTECAST(c.type >> 24); +; 4774 : #ifndef STBI_NO_FAILURE_STRINGS +; 4775 : // not threadsafe +; 4776 : static char invalid_chunk[] = "XXXX PNG chunk not known"; +; 4777 : invalid_chunk[0] = STBI__BYTECAST(c.type >> 24); 00ded 8b 85 ec 05 00 00 mov eax, DWORD PTR c$8[rbp+4] @@ -15022,7 +15042,7 @@ $LN94@stbi__pars: 00 00 lea rdx, OFFSET FLAT:?invalid_chunk@?BP@??stbi__parse_png_file@@9@9 00e0b 88 04 0a mov BYTE PTR [rdx+rcx], al -; 4765 : invalid_chunk[1] = STBI__BYTECAST(c.type >> 16); +; 4778 : invalid_chunk[1] = STBI__BYTECAST(c.type >> 16); 00e0e 8b 85 ec 05 00 00 mov eax, DWORD PTR c$8[rbp+4] @@ -15034,7 +15054,7 @@ $LN94@stbi__pars: 00 00 lea rdx, OFFSET FLAT:?invalid_chunk@?BP@??stbi__parse_png_file@@9@9 00e2c 88 04 0a mov BYTE PTR [rdx+rcx], al -; 4766 : invalid_chunk[2] = STBI__BYTECAST(c.type >> 8); +; 4779 : invalid_chunk[2] = STBI__BYTECAST(c.type >> 8); 00e2f 8b 85 ec 05 00 00 mov eax, DWORD PTR c$8[rbp+4] @@ -15046,7 +15066,7 @@ $LN94@stbi__pars: 00 00 lea rdx, OFFSET FLAT:?invalid_chunk@?BP@??stbi__parse_png_file@@9@9 00e4d 88 04 0a mov BYTE PTR [rdx+rcx], al -; 4767 : invalid_chunk[3] = STBI__BYTECAST(c.type >> 0); +; 4780 : invalid_chunk[3] = STBI__BYTECAST(c.type >> 0); 00e50 8b 85 ec 05 00 00 mov eax, DWORD PTR c$8[rbp+4] @@ -15057,8 +15077,8 @@ $LN94@stbi__pars: 00 00 lea rdx, OFFSET FLAT:?invalid_chunk@?BP@??stbi__parse_png_file@@9@9 00e6b 88 04 0a mov BYTE PTR [rdx+rcx], al -; 4768 : #endif -; 4769 : return stbi__err(invalid_chunk, "PNG not supported: unknown PNG chunk type"); +; 4781 : #endif +; 4782 : return stbi__err(invalid_chunk, "PNG not supported: unknown PNG chunk type"); 00e6e 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:?invalid_chunk@?BP@??stbi__parse_png_file@@9@9 @@ -15066,8 +15086,8 @@ $LN94@stbi__pars: 00e7a eb 23 jmp SHORT $LN1@stbi__pars $LN95@stbi__pars: -; 4770 : } -; 4771 : stbi__skip(s, c.length); +; 4783 : } +; 4784 : stbi__skip(s, c.length); 00e7c 8b 95 e8 05 00 00 mov edx, DWORD PTR c$8[rbp] @@ -15076,21 +15096,21 @@ $LN95@stbi__pars: 00e89 e8 00 00 00 00 call stbi__skip $LN5@stbi__pars: -; 4772 : break; -; 4773 : } -; 4774 : // end of PNG chunk, read and skip CRC -; 4775 : stbi__get32be(s); +; 4785 : break; +; 4786 : } +; 4787 : // end of PNG chunk, read and skip CRC +; 4788 : stbi__get32be(s); 00e8e 48 8b 8d c8 05 00 00 mov rcx, QWORD PTR s$[rbp] 00e95 e8 00 00 00 00 call stbi__get32be -; 4776 : } +; 4789 : } 00e9a e9 82 f2 ff ff jmp $LN2@stbi__pars $LN1@stbi__pars: -; 4777 : } +; 4790 : } 00e9f 48 8b f8 mov rdi, rax 00ea2 48 8d 4d c0 lea rcx, QWORD PTR [rbp-64] @@ -15126,7 +15146,7 @@ tv133 = 468 z$ = 512 stbi__de_iphone PROC ; COMDAT -; 4544 : { +; 4557 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -15138,14 +15158,14 @@ stbi__de_iphone PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4545 : stbi__context* s = z->s; +; 4558 : stbi__context* s = z->s; 0001f 48 8b 85 00 02 00 00 mov rax, QWORD PTR z$[rbp] 00026 48 8b 00 mov rax, QWORD PTR [rax] 00029 48 89 45 08 mov QWORD PTR s$[rbp], rax -; 4546 : stbi__uint32 i, pixel_count = s->img_x * s->img_y; +; 4559 : stbi__uint32 i, pixel_count = s->img_x * s->img_y; 0002d 48 8b 45 08 mov rax, QWORD PTR s$[rbp] 00031 48 8b 4d 08 mov rcx, QWORD PTR s$[rbp] @@ -15153,21 +15173,21 @@ stbi__de_iphone PROC ; COMDAT 00037 0f af 41 04 imul eax, DWORD PTR [rcx+4] 0003b 89 45 44 mov DWORD PTR pixel_count$[rbp], eax -; 4547 : stbi_uc* p = z->out; +; 4560 : stbi_uc* p = z->out; 0003e 48 8b 85 00 02 00 00 mov rax, QWORD PTR z$[rbp] 00045 48 8b 40 18 mov rax, QWORD PTR [rax+24] 00049 48 89 45 68 mov QWORD PTR p$[rbp], rax -; 4548 : -; 4549 : if (s->img_out_n == 3) { // convert bgr to rgb +; 4561 : +; 4562 : if (s->img_out_n == 3) { // convert bgr to rgb 0004d 48 8b 45 08 mov rax, QWORD PTR s$[rbp] 00051 83 78 0c 03 cmp DWORD PTR [rax+12], 3 00055 75 7c jne SHORT $LN11@stbi__de_i -; 4550 : for (i = 0; i < pixel_count; ++i) { +; 4563 : for (i = 0; i < pixel_count; ++i) { 00057 c7 45 24 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -15181,7 +15201,7 @@ $LN4@stbi__de_i: 0006b 39 45 24 cmp DWORD PTR i$[rbp], eax 0006e 73 5e jae SHORT $LN3@stbi__de_i -; 4551 : stbi_uc t = p[0]; +; 4564 : stbi_uc t = p[0]; 00070 b8 01 00 00 00 mov eax, 1 00075 48 6b c0 00 imul rax, rax, 0 @@ -15190,7 +15210,7 @@ $LN4@stbi__de_i: 00081 88 85 84 00 00 00 mov BYTE PTR t$1[rbp], al -; 4552 : p[0] = p[2]; +; 4565 : p[0] = p[2]; 00087 b8 01 00 00 00 mov eax, 1 0008c 48 6b c0 02 imul rax, rax, 2 @@ -15201,7 +15221,7 @@ $LN4@stbi__de_i: 000a1 41 0f b6 04 00 movzx eax, BYTE PTR [r8+rax] 000a6 88 04 0a mov BYTE PTR [rdx+rcx], al -; 4553 : p[2] = t; +; 4566 : p[2] = t; 000a9 b8 01 00 00 00 mov eax, 1 000ae 48 6b c0 02 imul rax, rax, 2 @@ -15210,30 +15230,30 @@ $LN4@stbi__de_i: 00 00 movzx edx, BYTE PTR t$1[rbp] 000bd 88 14 01 mov BYTE PTR [rcx+rax], dl -; 4554 : p += 3; +; 4567 : p += 3; 000c0 48 8b 45 68 mov rax, QWORD PTR p$[rbp] 000c4 48 83 c0 03 add rax, 3 000c8 48 89 45 68 mov QWORD PTR p$[rbp], rax -; 4555 : } +; 4568 : } 000cc eb 92 jmp SHORT $LN2@stbi__de_i $LN3@stbi__de_i: -; 4556 : } +; 4569 : } 000ce e9 59 02 00 00 jmp $LN12@stbi__de_i $LN11@stbi__de_i: -; 4557 : else { -; 4558 : STBI_ASSERT(s->img_out_n == 4); +; 4570 : else { +; 4571 : STBI_ASSERT(s->img_out_n == 4); 000d3 48 8b 45 08 mov rax, QWORD PTR s$[rbp] 000d7 83 78 0c 04 cmp DWORD PTR [rax+12], 4 000db 74 1c je SHORT $LN18@stbi__de_i - 000dd 41 b8 ce 11 00 - 00 mov r8d, 4558 ; 000011ceH + 000dd 41 b8 db 11 00 + 00 mov r8d, 4571 ; 000011dbH 000e3 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_1KA@LPJPGBDN@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@ 000ea 48 8d 0d 00 00 @@ -15243,7 +15263,7 @@ $LN11@stbi__de_i: 000f7 33 c0 xor eax, eax $LN18@stbi__de_i: -; 4559 : if (stbi__unpremultiply_on_load) { +; 4572 : if (stbi__unpremultiply_on_load) { 000f9 b8 00 00 00 00 mov eax, OFFSET FLAT:stbi__unpremultiply_on_load_set 000fe 8b c0 mov eax, eax @@ -15276,8 +15296,8 @@ $LN20@stbi__de_i: 00151 0f 84 5e 01 00 00 je $LN13@stbi__de_i -; 4560 : // convert bgr to rgb and unpremultiply -; 4561 : for (i = 0; i < pixel_count; ++i) { +; 4573 : // convert bgr to rgb and unpremultiply +; 4574 : for (i = 0; i < pixel_count; ++i) { 00157 c7 45 24 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -15292,7 +15312,7 @@ $LN7@stbi__de_i: 0016e 0f 83 3f 01 00 00 jae $LN6@stbi__de_i -; 4562 : stbi_uc a = p[3]; +; 4575 : stbi_uc a = p[3]; 00174 b8 01 00 00 00 mov eax, 1 00179 48 6b c0 03 imul rax, rax, 3 @@ -15301,7 +15321,7 @@ $LN7@stbi__de_i: 00185 88 85 a4 00 00 00 mov BYTE PTR a$2[rbp], al -; 4563 : stbi_uc t = p[0]; +; 4576 : stbi_uc t = p[0]; 0018b b8 01 00 00 00 mov eax, 1 00190 48 6b c0 00 imul rax, rax, 0 @@ -15310,7 +15330,7 @@ $LN7@stbi__de_i: 0019c 88 85 c4 00 00 00 mov BYTE PTR t$3[rbp], al -; 4564 : if (a) { +; 4577 : if (a) { 001a2 0f b6 85 a4 00 00 00 movzx eax, BYTE PTR a$2[rbp] @@ -15318,7 +15338,7 @@ $LN7@stbi__de_i: 001ab 0f 84 b8 00 00 00 je $LN15@stbi__de_i -; 4565 : stbi_uc half = a / 2; +; 4578 : stbi_uc half = a / 2; 001b1 0f b6 85 a4 00 00 00 movzx eax, BYTE PTR a$2[rbp] @@ -15328,7 +15348,7 @@ $LN7@stbi__de_i: 001bd 88 85 e4 00 00 00 mov BYTE PTR half$4[rbp], al -; 4566 : p[0] = (p[2] * 255 + half) / a; +; 4579 : p[0] = (p[2] * 255 + half) / a; 001c3 b8 01 00 00 00 mov eax, 1 001c8 48 6b c0 02 imul rax, rax, 2 @@ -15348,7 +15368,7 @@ $LN7@stbi__de_i: 001f6 48 8b 55 68 mov rdx, QWORD PTR p$[rbp] 001fa 88 04 0a mov BYTE PTR [rdx+rcx], al -; 4567 : p[1] = (p[1] * 255 + half) / a; +; 4580 : p[1] = (p[1] * 255 + half) / a; 001fd b8 01 00 00 00 mov eax, 1 00202 48 6b c0 01 imul rax, rax, 1 @@ -15368,7 +15388,7 @@ $LN7@stbi__de_i: 00230 48 8b 55 68 mov rdx, QWORD PTR p$[rbp] 00234 88 04 0a mov BYTE PTR [rdx+rcx], al -; 4568 : p[2] = (t * 255 + half) / a; +; 4581 : p[2] = (t * 255 + half) / a; 00237 0f b6 85 c4 00 00 00 movzx eax, BYTE PTR t$3[rbp] @@ -15386,13 +15406,13 @@ $LN7@stbi__de_i: 00260 48 8b 55 68 mov rdx, QWORD PTR p$[rbp] 00264 88 04 0a mov BYTE PTR [rdx+rcx], al -; 4569 : } +; 4582 : } 00267 eb 39 jmp SHORT $LN16@stbi__de_i $LN15@stbi__de_i: -; 4570 : else { -; 4571 : p[0] = p[2]; +; 4583 : else { +; 4584 : p[0] = p[2]; 00269 b8 01 00 00 00 mov eax, 1 0026e 48 6b c0 02 imul rax, rax, 2 @@ -15403,7 +15423,7 @@ $LN15@stbi__de_i: 00283 41 0f b6 04 00 movzx eax, BYTE PTR [r8+rax] 00288 88 04 0a mov BYTE PTR [rdx+rcx], al -; 4572 : p[2] = t; +; 4585 : p[2] = t; 0028b b8 01 00 00 00 mov eax, 1 00290 48 6b c0 02 imul rax, rax, 2 @@ -15413,26 +15433,26 @@ $LN15@stbi__de_i: 0029f 88 14 01 mov BYTE PTR [rcx+rax], dl $LN16@stbi__de_i: -; 4573 : } -; 4574 : p += 4; +; 4586 : } +; 4587 : p += 4; 002a2 48 8b 45 68 mov rax, QWORD PTR p$[rbp] 002a6 48 83 c0 04 add rax, 4 002aa 48 89 45 68 mov QWORD PTR p$[rbp], rax -; 4575 : } +; 4588 : } 002ae e9 ad fe ff ff jmp $LN5@stbi__de_i $LN6@stbi__de_i: -; 4576 : } +; 4589 : } 002b3 eb 77 jmp SHORT $LN14@stbi__de_i $LN13@stbi__de_i: -; 4577 : else { -; 4578 : // convert bgr to rgb -; 4579 : for (i = 0; i < pixel_count; ++i) { +; 4590 : else { +; 4591 : // convert bgr to rgb +; 4592 : for (i = 0; i < pixel_count; ++i) { 002b5 c7 45 24 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -15446,7 +15466,7 @@ $LN10@stbi__de_i: 002c9 39 45 24 cmp DWORD PTR i$[rbp], eax 002cc 73 5e jae SHORT $LN9@stbi__de_i -; 4580 : stbi_uc t = p[0]; +; 4593 : stbi_uc t = p[0]; 002ce b8 01 00 00 00 mov eax, 1 002d3 48 6b c0 00 imul rax, rax, 0 @@ -15455,7 +15475,7 @@ $LN10@stbi__de_i: 002df 88 85 04 01 00 00 mov BYTE PTR t$5[rbp], al -; 4581 : p[0] = p[2]; +; 4594 : p[0] = p[2]; 002e5 b8 01 00 00 00 mov eax, 1 002ea 48 6b c0 02 imul rax, rax, 2 @@ -15466,7 +15486,7 @@ $LN10@stbi__de_i: 002ff 41 0f b6 04 00 movzx eax, BYTE PTR [r8+rax] 00304 88 04 0a mov BYTE PTR [rdx+rcx], al -; 4582 : p[2] = t; +; 4595 : p[2] = t; 00307 b8 01 00 00 00 mov eax, 1 0030c 48 6b c0 02 imul rax, rax, 2 @@ -15475,22 +15495,22 @@ $LN10@stbi__de_i: 00 00 movzx edx, BYTE PTR t$5[rbp] 0031b 88 14 01 mov BYTE PTR [rcx+rax], dl -; 4583 : p += 4; +; 4596 : p += 4; 0031e 48 8b 45 68 mov rax, QWORD PTR p$[rbp] 00322 48 83 c0 04 add rax, 4 00326 48 89 45 68 mov QWORD PTR p$[rbp], rax -; 4584 : } +; 4597 : } 0032a eb 92 jmp SHORT $LN8@stbi__de_i $LN9@stbi__de_i: $LN14@stbi__de_i: $LN12@stbi__de_i: -; 4585 : } -; 4586 : } -; 4587 : } +; 4598 : } +; 4599 : } +; 4600 : } 0032c 48 8d a5 e8 01 00 00 lea rsp, QWORD PTR [rbp+488] @@ -15516,7 +15536,7 @@ len$ = 464 pal_img_n$ = 472 stbi__expand_png_palette PROC ; COMDAT -; 4466 : { +; 4479 : { 00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d 00005 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d @@ -15531,7 +15551,7 @@ stbi__expand_png_palette PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4467 : stbi__uint32 i, pixel_count = a->s->img_x * a->s->img_y; +; 4480 : stbi__uint32 i, pixel_count = a->s->img_x * a->s->img_y; 0002e 48 8b 85 c0 01 00 00 mov rax, QWORD PTR a$[rbp] @@ -15543,7 +15563,7 @@ stbi__expand_png_palette PROC ; COMDAT 00044 0f af 41 04 imul eax, DWORD PTR [rcx+4] 00048 89 45 24 mov DWORD PTR pixel_count$[rbp], eax -; 4468 : stbi_uc* p, * temp_out, * orig = a->out; +; 4481 : stbi_uc* p, * temp_out, * orig = a->out; 0004b 48 8b 85 c0 01 00 00 mov rax, QWORD PTR a$[rbp] @@ -15551,8 +15571,8 @@ stbi__expand_png_palette PROC ; COMDAT 00056 48 89 85 88 00 00 00 mov QWORD PTR orig$[rbp], rax -; 4469 : -; 4470 : p = (stbi_uc*)stbi__malloc_mad2(pixel_count, pal_img_n, 0); +; 4482 : +; 4483 : p = (stbi_uc*)stbi__malloc_mad2(pixel_count, pal_img_n, 0); 0005d 45 33 c0 xor r8d, r8d 00060 8b 95 d8 01 00 @@ -15561,7 +15581,7 @@ stbi__expand_png_palette PROC ; COMDAT 00069 e8 00 00 00 00 call stbi__malloc_mad2 0006e 48 89 45 48 mov QWORD PTR p$[rbp], rax -; 4471 : if (p == NULL) return stbi__err("outofmem", "Out of memory"); +; 4484 : if (p == NULL) return stbi__err("outofmem", "Out of memory"); 00072 48 83 7d 48 00 cmp QWORD PTR p$[rbp], 0 00077 75 11 jne SHORT $LN8@stbi__expa @@ -15571,22 +15591,22 @@ stbi__expand_png_palette PROC ; COMDAT 00085 e9 d0 01 00 00 jmp $LN1@stbi__expa $LN8@stbi__expa: -; 4472 : -; 4473 : // between here and free(out) below, exitting would leak -; 4474 : temp_out = p; +; 4485 : +; 4486 : // between here and free(out) below, exitting would leak +; 4487 : temp_out = p; 0008a 48 8b 45 48 mov rax, QWORD PTR p$[rbp] 0008e 48 89 45 68 mov QWORD PTR temp_out$[rbp], rax -; 4475 : -; 4476 : if (pal_img_n == 3) { +; 4488 : +; 4489 : if (pal_img_n == 3) { 00092 83 bd d8 01 00 00 03 cmp DWORD PTR pal_img_n$[rbp], 3 00099 0f 85 ba 00 00 00 jne $LN9@stbi__expa -; 4477 : for (i = 0; i < pixel_count; ++i) { +; 4490 : for (i = 0; i < pixel_count; ++i) { 0009f c7 45 04 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -15601,7 +15621,7 @@ $LN4@stbi__expa: 000b6 0f 83 98 00 00 00 jae $LN3@stbi__expa -; 4478 : int n = orig[i] * 4; +; 4491 : int n = orig[i] * 4; 000bc 8b 45 04 mov eax, DWORD PTR i$[rbp] 000bf 48 8b 8d 88 00 @@ -15611,7 +15631,7 @@ $LN4@stbi__expa: 000cd 89 85 a4 00 00 00 mov DWORD PTR n$1[rbp], eax -; 4479 : p[0] = palette[n]; +; 4492 : p[0] = palette[n]; 000d3 48 63 85 a4 00 00 00 movsxd rax, DWORD PTR n$1[rbp] @@ -15623,7 +15643,7 @@ $LN4@stbi__expa: 000ee 41 0f b6 04 00 movzx eax, BYTE PTR [r8+rax] 000f3 88 04 0a mov BYTE PTR [rdx+rcx], al -; 4480 : p[1] = palette[n + 1]; +; 4493 : p[1] = palette[n + 1]; 000f6 8b 85 a4 00 00 00 mov eax, DWORD PTR n$1[rbp] @@ -15637,7 +15657,7 @@ $LN4@stbi__expa: 00114 41 0f b6 04 00 movzx eax, BYTE PTR [r8+rax] 00119 88 04 0a mov BYTE PTR [rdx+rcx], al -; 4481 : p[2] = palette[n + 2]; +; 4494 : p[2] = palette[n + 2]; 0011c 8b 85 a4 00 00 00 mov eax, DWORD PTR n$1[rbp] @@ -15651,24 +15671,24 @@ $LN4@stbi__expa: 0013b 41 0f b6 04 00 movzx eax, BYTE PTR [r8+rax] 00140 88 04 0a mov BYTE PTR [rdx+rcx], al -; 4482 : p += 3; +; 4495 : p += 3; 00143 48 8b 45 48 mov rax, QWORD PTR p$[rbp] 00147 48 83 c0 03 add rax, 3 0014b 48 89 45 48 mov QWORD PTR p$[rbp], rax -; 4483 : } +; 4496 : } 0014f e9 54 ff ff ff jmp $LN2@stbi__expa $LN3@stbi__expa: -; 4484 : } +; 4497 : } 00154 e9 dc 00 00 00 jmp $LN10@stbi__expa $LN9@stbi__expa: -; 4485 : else { -; 4486 : for (i = 0; i < pixel_count; ++i) { +; 4498 : else { +; 4499 : for (i = 0; i < pixel_count; ++i) { 00159 c7 45 04 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -15683,7 +15703,7 @@ $LN7@stbi__expa: 00170 0f 83 bf 00 00 00 jae $LN6@stbi__expa -; 4487 : int n = orig[i] * 4; +; 4500 : int n = orig[i] * 4; 00176 8b 45 04 mov eax, DWORD PTR i$[rbp] 00179 48 8b 8d 88 00 @@ -15693,7 +15713,7 @@ $LN7@stbi__expa: 00187 89 85 c4 00 00 00 mov DWORD PTR n$2[rbp], eax -; 4488 : p[0] = palette[n]; +; 4501 : p[0] = palette[n]; 0018d 48 63 85 c4 00 00 00 movsxd rax, DWORD PTR n$2[rbp] @@ -15705,7 +15725,7 @@ $LN7@stbi__expa: 001a8 41 0f b6 04 00 movzx eax, BYTE PTR [r8+rax] 001ad 88 04 0a mov BYTE PTR [rdx+rcx], al -; 4489 : p[1] = palette[n + 1]; +; 4502 : p[1] = palette[n + 1]; 001b0 8b 85 c4 00 00 00 mov eax, DWORD PTR n$2[rbp] @@ -15719,7 +15739,7 @@ $LN7@stbi__expa: 001ce 41 0f b6 04 00 movzx eax, BYTE PTR [r8+rax] 001d3 88 04 0a mov BYTE PTR [rdx+rcx], al -; 4490 : p[2] = palette[n + 2]; +; 4503 : p[2] = palette[n + 2]; 001d6 8b 85 c4 00 00 00 mov eax, DWORD PTR n$2[rbp] @@ -15733,7 +15753,7 @@ $LN7@stbi__expa: 001f5 41 0f b6 04 00 movzx eax, BYTE PTR [r8+rax] 001fa 88 04 0a mov BYTE PTR [rdx+rcx], al -; 4491 : p[3] = palette[n + 3]; +; 4504 : p[3] = palette[n + 3]; 001fd 8b 85 c4 00 00 00 mov eax, DWORD PTR n$2[rbp] @@ -15747,20 +15767,20 @@ $LN7@stbi__expa: 0021c 41 0f b6 04 00 movzx eax, BYTE PTR [r8+rax] 00221 88 04 0a mov BYTE PTR [rdx+rcx], al -; 4492 : p += 4; +; 4505 : p += 4; 00224 48 8b 45 48 mov rax, QWORD PTR p$[rbp] 00228 48 83 c0 04 add rax, 4 0022c 48 89 45 48 mov QWORD PTR p$[rbp], rax -; 4493 : } +; 4506 : } 00230 e9 2d ff ff ff jmp $LN5@stbi__expa $LN6@stbi__expa: $LN10@stbi__expa: -; 4494 : } -; 4495 : STBI_FREE(a->out); +; 4507 : } +; 4508 : STBI_FREE(a->out); 00235 48 8b 85 c0 01 00 00 mov rax, QWORD PTR a$[rbp] @@ -15768,22 +15788,22 @@ $LN10@stbi__expa: 00240 ff 15 00 00 00 00 call QWORD PTR __imp_free -; 4496 : a->out = temp_out; +; 4509 : a->out = temp_out; 00246 48 8b 85 c0 01 00 00 mov rax, QWORD PTR a$[rbp] 0024d 48 8b 4d 68 mov rcx, QWORD PTR temp_out$[rbp] 00251 48 89 48 18 mov QWORD PTR [rax+24], rcx -; 4497 : -; 4498 : STBI_NOTUSED(len); -; 4499 : -; 4500 : return 1; +; 4510 : +; 4511 : STBI_NOTUSED(len); +; 4512 : +; 4513 : return 1; 00255 b8 01 00 00 00 mov eax, 1 $LN1@stbi__expa: -; 4501 : } +; 4514 : } 0025a 48 8d a5 a8 01 00 00 lea rsp, QWORD PTR [rbp+424] @@ -15806,7 +15826,7 @@ tc$ = 360 out_n$ = 368 stbi__compute_transparency16 PROC ; COMDAT -; 4440 : { +; 4453 : { 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx @@ -15820,14 +15840,14 @@ stbi__compute_transparency16 PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00024 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4441 : stbi__context* s = z->s; +; 4454 : stbi__context* s = z->s; 00029 48 8b 85 60 01 00 00 mov rax, QWORD PTR z$[rbp] 00030 48 8b 00 mov rax, QWORD PTR [rax] 00033 48 89 45 08 mov QWORD PTR s$[rbp], rax -; 4442 : stbi__uint32 i, pixel_count = s->img_x * s->img_y; +; 4455 : stbi__uint32 i, pixel_count = s->img_x * s->img_y; 00037 48 8b 45 08 mov rax, QWORD PTR s$[rbp] 0003b 48 8b 4d 08 mov rcx, QWORD PTR s$[rbp] @@ -15835,17 +15855,17 @@ stbi__compute_transparency16 PROC ; COMDAT 00041 0f af 41 04 imul eax, DWORD PTR [rcx+4] 00045 89 45 44 mov DWORD PTR pixel_count$[rbp], eax -; 4443 : stbi__uint16* p = (stbi__uint16*)z->out; +; 4456 : stbi__uint16* p = (stbi__uint16*)z->out; 00048 48 8b 85 60 01 00 00 mov rax, QWORD PTR z$[rbp] 0004f 48 8b 40 18 mov rax, QWORD PTR [rax+24] 00053 48 89 45 68 mov QWORD PTR p$[rbp], rax -; 4444 : -; 4445 : // compute color-based transparency, assuming we've -; 4446 : // already got 65535 as the alpha value in the output -; 4447 : STBI_ASSERT(out_n == 2 || out_n == 4); +; 4457 : +; 4458 : // compute color-based transparency, assuming we've +; 4459 : // already got 65535 as the alpha value in the output +; 4460 : STBI_ASSERT(out_n == 2 || out_n == 4); 00057 83 bd 70 01 00 00 02 cmp DWORD PTR out_n$[rbp], 2 @@ -15853,8 +15873,8 @@ stbi__compute_transparency16 PROC ; COMDAT 00060 83 bd 70 01 00 00 04 cmp DWORD PTR out_n$[rbp], 4 00067 74 1c je SHORT $LN12@stbi__comp - 00069 41 b8 5f 11 00 - 00 mov r8d, 4447 ; 0000115fH + 00069 41 b8 6c 11 00 + 00 mov r8d, 4460 ; 0000116cH 0006f 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_1KA@LPJPGBDN@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@ 00076 48 8d 0d 00 00 @@ -15864,15 +15884,15 @@ stbi__compute_transparency16 PROC ; COMDAT 00083 33 c0 xor eax, eax $LN12@stbi__comp: -; 4448 : -; 4449 : if (out_n == 2) { +; 4461 : +; 4462 : if (out_n == 2) { 00085 83 bd 70 01 00 00 02 cmp DWORD PTR out_n$[rbp], 2 0008c 0f 85 83 00 00 00 jne $LN8@stbi__comp -; 4450 : for (i = 0; i < pixel_count; ++i) { +; 4463 : for (i = 0; i < pixel_count; ++i) { 00092 c7 45 24 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -15886,7 +15906,7 @@ $LN4@stbi__comp: 000a6 39 45 24 cmp DWORD PTR i$[rbp], eax 000a9 73 65 jae SHORT $LN3@stbi__comp -; 4451 : p[1] = (p[0] == tc[0] ? 0 : 65535); +; 4464 : p[1] = (p[0] == tc[0] ? 0 : 65535); 000ab b8 02 00 00 00 mov eax, 2 000b0 48 6b c0 00 imul rax, rax, 0 @@ -15913,24 +15933,24 @@ $LN14@stbi__comp: 00 00 movzx edx, WORD PTR tv87[rbp] 000fe 66 89 14 01 mov WORD PTR [rcx+rax], dx -; 4452 : p += 2; +; 4465 : p += 2; 00102 48 8b 45 68 mov rax, QWORD PTR p$[rbp] 00106 48 83 c0 04 add rax, 4 0010a 48 89 45 68 mov QWORD PTR p$[rbp], rax -; 4453 : } +; 4466 : } 0010e eb 8b jmp SHORT $LN2@stbi__comp $LN3@stbi__comp: -; 4454 : } +; 4467 : } 00110 e9 bc 00 00 00 jmp $LN9@stbi__comp $LN8@stbi__comp: -; 4455 : else { -; 4456 : for (i = 0; i < pixel_count; ++i) { +; 4468 : else { +; 4469 : for (i = 0; i < pixel_count; ++i) { 00115 c7 45 24 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -15945,7 +15965,7 @@ $LN7@stbi__comp: 0012c 0f 83 9f 00 00 00 jae $LN6@stbi__comp -; 4457 : if (p[0] == tc[0] && p[1] == tc[1] && p[2] == tc[2]) +; 4470 : if (p[0] == tc[0] && p[1] == tc[1] && p[2] == tc[2]) 00132 b8 02 00 00 00 mov eax, 2 00137 48 6b c0 00 imul rax, rax, 0 @@ -15981,7 +16001,7 @@ $LN7@stbi__comp: 001a9 3b c1 cmp eax, ecx 001ab 75 13 jne SHORT $LN10@stbi__comp -; 4458 : p[3] = 0; +; 4471 : p[3] = 0; 001ad b8 02 00 00 00 mov eax, 2 001b2 48 6b c0 03 imul rax, rax, 3 @@ -15990,24 +16010,24 @@ $LN7@stbi__comp: 001bc 66 89 0c 02 mov WORD PTR [rdx+rax], cx $LN10@stbi__comp: -; 4459 : p += 4; +; 4472 : p += 4; 001c0 48 8b 45 68 mov rax, QWORD PTR p$[rbp] 001c4 48 83 c0 08 add rax, 8 001c8 48 89 45 68 mov QWORD PTR p$[rbp], rax -; 4460 : } +; 4473 : } 001cc e9 4d ff ff ff jmp $LN5@stbi__comp $LN6@stbi__comp: $LN9@stbi__comp: -; 4461 : } -; 4462 : return 1; +; 4474 : } +; 4475 : return 1; 001d1 b8 01 00 00 00 mov eax, 1 -; 4463 : } +; 4476 : } 001d6 48 8d a5 48 01 00 00 lea rsp, QWORD PTR [rbp+328] @@ -16030,7 +16050,7 @@ tc$ = 360 out_n$ = 368 stbi__compute_transparency PROC ; COMDAT -; 4414 : { +; 4427 : { 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx @@ -16044,14 +16064,14 @@ stbi__compute_transparency PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00024 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4415 : stbi__context* s = z->s; +; 4428 : stbi__context* s = z->s; 00029 48 8b 85 60 01 00 00 mov rax, QWORD PTR z$[rbp] 00030 48 8b 00 mov rax, QWORD PTR [rax] 00033 48 89 45 08 mov QWORD PTR s$[rbp], rax -; 4416 : stbi__uint32 i, pixel_count = s->img_x * s->img_y; +; 4429 : stbi__uint32 i, pixel_count = s->img_x * s->img_y; 00037 48 8b 45 08 mov rax, QWORD PTR s$[rbp] 0003b 48 8b 4d 08 mov rcx, QWORD PTR s$[rbp] @@ -16059,17 +16079,17 @@ stbi__compute_transparency PROC ; COMDAT 00041 0f af 41 04 imul eax, DWORD PTR [rcx+4] 00045 89 45 44 mov DWORD PTR pixel_count$[rbp], eax -; 4417 : stbi_uc* p = z->out; +; 4430 : stbi_uc* p = z->out; 00048 48 8b 85 60 01 00 00 mov rax, QWORD PTR z$[rbp] 0004f 48 8b 40 18 mov rax, QWORD PTR [rax+24] 00053 48 89 45 68 mov QWORD PTR p$[rbp], rax -; 4418 : -; 4419 : // compute color-based transparency, assuming we've -; 4420 : // already got 255 as the alpha value in the output -; 4421 : STBI_ASSERT(out_n == 2 || out_n == 4); +; 4431 : +; 4432 : // compute color-based transparency, assuming we've +; 4433 : // already got 255 as the alpha value in the output +; 4434 : STBI_ASSERT(out_n == 2 || out_n == 4); 00057 83 bd 70 01 00 00 02 cmp DWORD PTR out_n$[rbp], 2 @@ -16077,8 +16097,8 @@ stbi__compute_transparency PROC ; COMDAT 00060 83 bd 70 01 00 00 04 cmp DWORD PTR out_n$[rbp], 4 00067 74 1c je SHORT $LN12@stbi__comp - 00069 41 b8 45 11 00 - 00 mov r8d, 4421 ; 00001145H + 00069 41 b8 52 11 00 + 00 mov r8d, 4434 ; 00001152H 0006f 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_1KA@LPJPGBDN@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@ 00076 48 8d 0d 00 00 @@ -16088,15 +16108,15 @@ stbi__compute_transparency PROC ; COMDAT 00083 33 c0 xor eax, eax $LN12@stbi__comp: -; 4422 : -; 4423 : if (out_n == 2) { +; 4435 : +; 4436 : if (out_n == 2) { 00085 83 bd 70 01 00 00 02 cmp DWORD PTR out_n$[rbp], 2 0008c 0f 85 82 00 00 00 jne $LN8@stbi__comp -; 4424 : for (i = 0; i < pixel_count; ++i) { +; 4437 : for (i = 0; i < pixel_count; ++i) { 00092 c7 45 24 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -16110,7 +16130,7 @@ $LN4@stbi__comp: 000a6 39 45 24 cmp DWORD PTR i$[rbp], eax 000a9 73 64 jae SHORT $LN3@stbi__comp -; 4425 : p[1] = (p[0] == tc[0] ? 0 : 255); +; 4438 : p[1] = (p[0] == tc[0] ? 0 : 255); 000ab b8 01 00 00 00 mov eax, 1 000b0 48 6b c0 00 imul rax, rax, 0 @@ -16137,24 +16157,24 @@ $LN14@stbi__comp: 00 00 movzx edx, BYTE PTR tv87[rbp] 000fe 88 14 01 mov BYTE PTR [rcx+rax], dl -; 4426 : p += 2; +; 4439 : p += 2; 00101 48 8b 45 68 mov rax, QWORD PTR p$[rbp] 00105 48 83 c0 02 add rax, 2 00109 48 89 45 68 mov QWORD PTR p$[rbp], rax -; 4427 : } +; 4440 : } 0010d eb 8c jmp SHORT $LN2@stbi__comp $LN3@stbi__comp: -; 4428 : } +; 4441 : } 0010f e9 ba 00 00 00 jmp $LN9@stbi__comp $LN8@stbi__comp: -; 4429 : else { -; 4430 : for (i = 0; i < pixel_count; ++i) { +; 4442 : else { +; 4443 : for (i = 0; i < pixel_count; ++i) { 00114 c7 45 24 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -16169,7 +16189,7 @@ $LN7@stbi__comp: 0012b 0f 83 9d 00 00 00 jae $LN6@stbi__comp -; 4431 : if (p[0] == tc[0] && p[1] == tc[1] && p[2] == tc[2]) +; 4444 : if (p[0] == tc[0] && p[1] == tc[1] && p[2] == tc[2]) 00131 b8 01 00 00 00 mov eax, 1 00136 48 6b c0 00 imul rax, rax, 0 @@ -16205,7 +16225,7 @@ $LN7@stbi__comp: 001a8 3b c1 cmp eax, ecx 001aa 75 11 jne SHORT $LN10@stbi__comp -; 4432 : p[3] = 0; +; 4445 : p[3] = 0; 001ac b8 01 00 00 00 mov eax, 1 001b1 48 6b c0 03 imul rax, rax, 3 @@ -16213,24 +16233,24 @@ $LN7@stbi__comp: 001b9 c6 04 01 00 mov BYTE PTR [rcx+rax], 0 $LN10@stbi__comp: -; 4433 : p += 4; +; 4446 : p += 4; 001bd 48 8b 45 68 mov rax, QWORD PTR p$[rbp] 001c1 48 83 c0 04 add rax, 4 001c5 48 89 45 68 mov QWORD PTR p$[rbp], rax -; 4434 : } +; 4447 : } 001c9 e9 4f ff ff ff jmp $LN5@stbi__comp $LN6@stbi__comp: $LN9@stbi__comp: -; 4435 : } -; 4436 : return 1; +; 4448 : } +; 4449 : return 1; 001ce b8 01 00 00 00 mov eax, 1 -; 4437 : } +; 4450 : } 001d3 48 8d a5 48 01 00 00 lea rsp, QWORD PTR [rbp+328] @@ -16269,7 +16289,7 @@ color$ = 1064 interlaced$ = 1072 stbi__create_png_image PROC ; COMDAT -; 4369 : { +; 4382 : { 00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d 00005 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d @@ -16290,7 +16310,7 @@ stbi__create_png_image PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00042 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4370 : int bytes = (depth == 16 ? 2 : 1); +; 4383 : int bytes = (depth == 16 ? 2 : 1); 00047 83 bd 20 04 00 00 10 cmp DWORD PTR depth$[rbp], 16 @@ -16306,22 +16326,22 @@ $LN17@stbi__crea: 00 mov eax, DWORD PTR tv65[rbp] 0006c 89 45 04 mov DWORD PTR bytes$[rbp], eax -; 4371 : int out_bytes = out_n * bytes; +; 4384 : int out_bytes = out_n * bytes; 0006f 8b 85 18 04 00 00 mov eax, DWORD PTR out_n$[rbp] 00075 0f af 45 04 imul eax, DWORD PTR bytes$[rbp] 00079 89 45 24 mov DWORD PTR out_bytes$[rbp], eax -; 4372 : stbi_uc* final; -; 4373 : int p; -; 4374 : if (!interlaced) +; 4385 : stbi_uc* final; +; 4386 : int p; +; 4387 : if (!interlaced) 0007c 83 bd 30 04 00 00 00 cmp DWORD PTR interlaced$[rbp], 0 00083 75 5b jne SHORT $LN11@stbi__crea -; 4375 : return stbi__create_png_image_raw(a, image_data, image_data_len, out_n, a->s->img_x, a->s->img_y, depth, color); +; 4388 : return stbi__create_png_image_raw(a, image_data, image_data_len, out_n, a->s->img_x, a->s->img_y, depth, color); 00085 48 8b 85 00 04 00 00 mov rax, QWORD PTR a$[rbp] @@ -16351,9 +16371,9 @@ $LN17@stbi__crea: 000db e9 18 04 00 00 jmp $LN1@stbi__crea $LN11@stbi__crea: -; 4376 : -; 4377 : // de-interlacing -; 4378 : final = (stbi_uc*)stbi__malloc_mad3(a->s->img_x, a->s->img_y, out_bytes, 0); +; 4389 : +; 4390 : // de-interlacing +; 4391 : final = (stbi_uc*)stbi__malloc_mad3(a->s->img_x, a->s->img_y, out_bytes, 0); 000e0 48 8b 85 00 04 00 00 mov rax, QWORD PTR a$[rbp] @@ -16368,7 +16388,7 @@ $LN11@stbi__crea: 00100 e8 00 00 00 00 call stbi__malloc_mad3 00105 48 89 45 48 mov QWORD PTR final$[rbp], rax -; 4379 : if (!final) return stbi__err("outofmem", "Out of memory"); +; 4392 : if (!final) return stbi__err("outofmem", "Out of memory"); 00109 48 83 7d 48 00 cmp QWORD PTR final$[rbp], 0 0010e 75 11 jne SHORT $LN12@stbi__crea @@ -16378,7 +16398,7 @@ $LN11@stbi__crea: 0011c e9 d7 03 00 00 jmp $LN1@stbi__crea $LN12@stbi__crea: -; 4380 : for (p = 0; p < 7; ++p) { +; 4393 : for (p = 0; p < 7; ++p) { 00121 c7 45 64 00 00 00 00 mov DWORD PTR p$[rbp], 0 @@ -16392,7 +16412,7 @@ $LN4@stbi__crea: 00136 0f 8d a8 03 00 00 jge $LN3@stbi__crea -; 4381 : int xorig[] = { 0,4,0,2,0,1,0 }; +; 4394 : int xorig[] = { 0,4,0,2,0,1,0 }; 0013c c7 85 88 00 00 00 00 00 00 00 mov DWORD PTR xorig$7[rbp], 0 @@ -16409,7 +16429,7 @@ $LN4@stbi__crea: 00178 c7 85 a0 00 00 00 00 00 00 00 mov DWORD PTR xorig$7[rbp+24], 0 -; 4382 : int yorig[] = { 0,0,4,0,2,0,1 }; +; 4395 : int yorig[] = { 0,0,4,0,2,0,1 }; 00182 c7 85 c8 00 00 00 00 00 00 00 mov DWORD PTR yorig$8[rbp], 0 @@ -16426,7 +16446,7 @@ $LN4@stbi__crea: 001be c7 85 e0 00 00 00 01 00 00 00 mov DWORD PTR yorig$8[rbp+24], 1 -; 4383 : int xspc[] = { 8,8,4,4,2,2,1 }; +; 4396 : int xspc[] = { 8,8,4,4,2,2,1 }; 001c8 c7 85 08 01 00 00 08 00 00 00 mov DWORD PTR xspc$9[rbp], 8 @@ -16443,7 +16463,7 @@ $LN4@stbi__crea: 00204 c7 85 20 01 00 00 01 00 00 00 mov DWORD PTR xspc$9[rbp+24], 1 -; 4384 : int yspc[] = { 8,8,8,4,4,2,2 }; +; 4397 : int yspc[] = { 8,8,8,4,4,2,2 }; 0020e c7 85 48 01 00 00 08 00 00 00 mov DWORD PTR yspc$10[rbp], 8 @@ -16460,9 +16480,9 @@ $LN4@stbi__crea: 0024a c7 85 60 01 00 00 02 00 00 00 mov DWORD PTR yspc$10[rbp+24], 2 -; 4385 : int i, j, x, y; -; 4386 : // pass1_x[4] = 0, pass1_x[5] = 1, pass1_x[12] = 1 -; 4387 : x = (a->s->img_x - xorig[p] + xspc[p] - 1) / xspc[p]; +; 4398 : int i, j, x, y; +; 4399 : // pass1_x[4] = 0, pass1_x[5] = 1, pass1_x[12] = 1 +; 4400 : x = (a->s->img_x - xorig[p] + xspc[p] - 1) / xspc[p]; 00254 48 8b 85 00 04 00 00 mov rax, QWORD PTR a$[rbp] @@ -16483,7 +16503,7 @@ $LN4@stbi__crea: 00289 89 85 c4 01 00 00 mov DWORD PTR x$13[rbp], eax -; 4388 : y = (a->s->img_y - yorig[p] + yspc[p] - 1) / yspc[p]; +; 4401 : y = (a->s->img_y - yorig[p] + yspc[p] - 1) / yspc[p]; 0028f 48 8b 85 00 04 00 00 mov rax, QWORD PTR a$[rbp] @@ -16504,7 +16524,7 @@ $LN4@stbi__crea: 002c5 89 85 e4 01 00 00 mov DWORD PTR y$14[rbp], eax -; 4389 : if (x && y) { +; 4402 : if (x && y) { 002cb 83 bd c4 01 00 00 00 cmp DWORD PTR x$13[rbp], 0 @@ -16515,7 +16535,7 @@ $LN4@stbi__crea: 002df 0f 84 fa 01 00 00 je $LN13@stbi__crea -; 4390 : stbi__uint32 img_len = ((((a->s->img_n * x * depth) + 7) >> 3) + 1) * y; +; 4403 : stbi__uint32 img_len = ((((a->s->img_n * x * depth) + 7) >> 3) + 1) * y; 002e5 48 8b 85 00 04 00 00 mov rax, QWORD PTR a$[rbp] @@ -16533,7 +16553,7 @@ $LN4@stbi__crea: 0030f 89 85 04 02 00 00 mov DWORD PTR img_len$15[rbp], eax -; 4391 : if (!stbi__create_png_image_raw(a, image_data, image_data_len, out_n, x, y, depth, color)) { +; 4404 : if (!stbi__create_png_image_raw(a, image_data, image_data_len, out_n, x, y, depth, color)) { 00315 8b 85 28 04 00 00 mov eax, DWORD PTR color$[rbp] @@ -16559,20 +16579,20 @@ $LN4@stbi__crea: 0035e 85 c0 test eax, eax 00360 75 11 jne SHORT $LN14@stbi__crea -; 4392 : STBI_FREE(final); +; 4405 : STBI_FREE(final); 00362 48 8b 4d 48 mov rcx, QWORD PTR final$[rbp] 00366 ff 15 00 00 00 00 call QWORD PTR __imp_free -; 4393 : return 0; +; 4406 : return 0; 0036c 33 c0 xor eax, eax 0036e e9 85 01 00 00 jmp $LN1@stbi__crea $LN14@stbi__crea: -; 4394 : } -; 4395 : for (j = 0; j < y; ++j) { +; 4407 : } +; 4408 : for (j = 0; j < y; ++j) { 00373 c7 85 a4 01 00 00 00 00 00 00 mov DWORD PTR j$12[rbp], 0 @@ -16591,7 +16611,7 @@ $LN7@stbi__crea: 00399 0f 8d ff 00 00 00 jge $LN6@stbi__crea -; 4396 : for (i = 0; i < x; ++i) { +; 4409 : for (i = 0; i < x; ++i) { 0039f c7 85 84 01 00 00 00 00 00 00 mov DWORD PTR i$11[rbp], 0 @@ -16610,7 +16630,7 @@ $LN10@stbi__crea: 003c5 0f 8d ce 00 00 00 jge $LN9@stbi__crea -; 4397 : int out_y = j * yspc[p] + yorig[p]; +; 4410 : int out_y = j * yspc[p] + yorig[p]; 003cb 48 63 45 64 movsxd rax, DWORD PTR p$[rbp] 003cf 8b 8d a4 01 00 @@ -16624,7 +16644,7 @@ $LN10@stbi__crea: 003ea 89 85 24 02 00 00 mov DWORD PTR out_y$16[rbp], eax -; 4398 : int out_x = i * xspc[p] + xorig[p]; +; 4411 : int out_x = i * xspc[p] + xorig[p]; 003f0 48 63 45 64 movsxd rax, DWORD PTR p$[rbp] 003f4 8b 8d 84 01 00 @@ -16638,7 +16658,7 @@ $LN10@stbi__crea: 0040f 89 85 44 02 00 00 mov DWORD PTR out_x$17[rbp], eax -; 4399 : memcpy(final + out_y * a->s->img_x * out_bytes + out_x * out_bytes, +; 4412 : memcpy(final + out_y * a->s->img_x * out_bytes + out_x * out_bytes, 00415 48 63 45 24 movsxd rax, DWORD PTR out_bytes$[rbp] 00419 8b 8d a4 01 00 @@ -16678,18 +16698,18 @@ $LN10@stbi__crea: 0048c 48 8b c8 mov rcx, rax 0048f e8 00 00 00 00 call memcpy -; 4400 : a->out + (j * x + i) * out_bytes, out_bytes); -; 4401 : } +; 4413 : a->out + (j * x + i) * out_bytes, out_bytes); +; 4414 : } 00494 e9 12 ff ff ff jmp $LN8@stbi__crea $LN9@stbi__crea: -; 4402 : } +; 4415 : } 00499 e9 e1 fe ff ff jmp $LN5@stbi__crea $LN6@stbi__crea: -; 4403 : STBI_FREE(a->out); +; 4416 : STBI_FREE(a->out); 0049e 48 8b 85 00 04 00 00 mov rax, QWORD PTR a$[rbp] @@ -16697,7 +16717,7 @@ $LN6@stbi__crea: 004a9 ff 15 00 00 00 00 call QWORD PTR __imp_free -; 4404 : image_data += img_len; +; 4417 : image_data += img_len; 004af 8b 85 04 02 00 00 mov eax, DWORD PTR img_len$15[rbp] @@ -16708,7 +16728,7 @@ $LN6@stbi__crea: 004c2 48 89 85 08 04 00 00 mov QWORD PTR image_data$[rbp], rax -; 4405 : image_data_len -= img_len; +; 4418 : image_data_len -= img_len; 004c9 8b 85 04 02 00 00 mov eax, DWORD PTR img_len$15[rbp] @@ -16720,26 +16740,26 @@ $LN6@stbi__crea: 00 mov DWORD PTR image_data_len$[rbp], eax $LN13@stbi__crea: -; 4406 : } -; 4407 : } +; 4419 : } +; 4420 : } 004df e9 46 fc ff ff jmp $LN2@stbi__crea $LN3@stbi__crea: -; 4408 : a->out = final; +; 4421 : a->out = final; 004e4 48 8b 85 00 04 00 00 mov rax, QWORD PTR a$[rbp] 004eb 48 8b 4d 48 mov rcx, QWORD PTR final$[rbp] 004ef 48 89 48 18 mov QWORD PTR [rax+24], rcx -; 4409 : -; 4410 : return 1; +; 4422 : +; 4423 : return 1; 004f3 b8 01 00 00 00 mov eax, 1 $LN1@stbi__crea: -; 4411 : } +; 4424 : } 004f8 48 8b f8 mov rdi, rax 004fb 48 8d 4d c0 lea rcx, QWORD PTR [rbp-64] @@ -16802,7 +16822,7 @@ depth$ = 1168 color$ = 1176 stbi__create_png_image_raw PROC ; COMDAT -; 4150 : { +; 4163 : { 00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d 00005 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d @@ -16817,7 +16837,7 @@ stbi__create_png_image_raw PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4151 : int bytes = (depth == 16 ? 2 : 1); +; 4164 : int bytes = (depth == 16 ? 2 : 1); 0002e 83 bd 90 04 00 00 10 cmp DWORD PTR depth$[rbp], 16 @@ -16833,14 +16853,14 @@ $LN160@stbi__crea: 00 mov eax, DWORD PTR tv65[rbp] 00053 89 45 04 mov DWORD PTR bytes$[rbp], eax -; 4152 : stbi__context* s = a->s; +; 4165 : stbi__context* s = a->s; 00056 48 8b 85 60 04 00 00 mov rax, QWORD PTR a$[rbp] 0005d 48 8b 00 mov rax, QWORD PTR [rax] 00060 48 89 45 28 mov QWORD PTR s$[rbp], rax -; 4153 : stbi__uint32 i, j, stride = x * out_n * bytes; +; 4166 : stbi__uint32 i, j, stride = x * out_n * bytes; 00064 8b 85 80 04 00 00 mov eax, DWORD PTR x$[rbp] @@ -16850,17 +16870,17 @@ $LN160@stbi__crea: 00075 89 85 84 00 00 00 mov DWORD PTR stride$[rbp], eax -; 4154 : stbi__uint32 img_len, img_width_bytes; -; 4155 : int k; -; 4156 : int img_n = s->img_n; // copy it into a local for later +; 4167 : stbi__uint32 img_len, img_width_bytes; +; 4168 : int k; +; 4169 : int img_n = s->img_n; // copy it into a local for later 0007b 48 8b 45 28 mov rax, QWORD PTR s$[rbp] 0007f 8b 40 08 mov eax, DWORD PTR [rax+8] 00082 89 85 04 01 00 00 mov DWORD PTR img_n$[rbp], eax -; 4157 : -; 4158 : int output_bytes = out_n * bytes; +; 4170 : +; 4171 : int output_bytes = out_n * bytes; 00088 8b 85 78 04 00 00 mov eax, DWORD PTR out_n$[rbp] @@ -16868,7 +16888,7 @@ $LN160@stbi__crea: 00092 89 85 24 01 00 00 mov DWORD PTR output_bytes$[rbp], eax -; 4159 : int filter_bytes = img_n * bytes; +; 4172 : int filter_bytes = img_n * bytes; 00098 8b 85 04 01 00 00 mov eax, DWORD PTR img_n$[rbp] @@ -16876,15 +16896,15 @@ $LN160@stbi__crea: 000a2 89 85 44 01 00 00 mov DWORD PTR filter_bytes$[rbp], eax -; 4160 : int width = x; +; 4173 : int width = x; 000a8 8b 85 80 04 00 00 mov eax, DWORD PTR x$[rbp] 000ae 89 85 64 01 00 00 mov DWORD PTR width$[rbp], eax -; 4161 : -; 4162 : STBI_ASSERT(out_n == s->img_n || out_n == s->img_n + 1); +; 4174 : +; 4175 : STBI_ASSERT(out_n == s->img_n || out_n == s->img_n + 1); 000b4 48 8b 45 28 mov rax, QWORD PTR s$[rbp] 000b8 8b 40 08 mov eax, DWORD PTR [rax+8] @@ -16897,8 +16917,8 @@ $LN160@stbi__crea: 000cc 39 85 78 04 00 00 cmp DWORD PTR out_n$[rbp], eax 000d2 74 1c je SHORT $LN161@stbi__crea - 000d4 41 b8 42 10 00 - 00 mov r8d, 4162 ; 00001042H + 000d4 41 b8 4f 10 00 + 00 mov r8d, 4175 ; 0000104fH 000da 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_1KA@LPJPGBDN@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@ 000e1 48 8d 0d 00 00 @@ -16908,7 +16928,7 @@ $LN160@stbi__crea: 000ee 33 c0 xor eax, eax $LN161@stbi__crea: -; 4163 : a->out = (stbi_uc*)stbi__malloc_mad3(x, y, output_bytes, 0); // extra bytes to write off the end into +; 4176 : a->out = (stbi_uc*)stbi__malloc_mad3(x, y, output_bytes, 0); // extra bytes to write off the end into 000f0 45 33 c9 xor r9d, r9d 000f3 44 8b 85 24 01 @@ -16922,7 +16942,7 @@ $LN161@stbi__crea: 00 00 mov rcx, QWORD PTR a$[rbp] 00112 48 89 41 18 mov QWORD PTR [rcx+24], rax -; 4164 : if (!a->out) return stbi__err("outofmem", "Out of memory"); +; 4177 : if (!a->out) return stbi__err("outofmem", "Out of memory"); 00116 48 8b 85 60 04 00 00 mov rax, QWORD PTR a$[rbp] @@ -16934,8 +16954,8 @@ $LN161@stbi__crea: 00130 e9 54 1a 00 00 jmp $LN1@stbi__crea $LN98@stbi__crea: -; 4165 : -; 4166 : if (!stbi__mad3sizes_valid(img_n, x, depth, 7)) return stbi__err("too large", "Corrupt PNG"); +; 4178 : +; 4179 : if (!stbi__mad3sizes_valid(img_n, x, depth, 7)) return stbi__err("too large", "Corrupt PNG"); 00135 41 b9 07 00 00 00 mov r9d, 7 @@ -16954,7 +16974,7 @@ $LN98@stbi__crea: 00163 e9 21 1a 00 00 jmp $LN1@stbi__crea $LN99@stbi__crea: -; 4167 : img_width_bytes = (((img_n * x * depth) + 7) >> 3); +; 4180 : img_width_bytes = (((img_n * x * depth) + 7) >> 3); 00168 8b 85 04 01 00 00 mov eax, DWORD PTR img_n$[rbp] @@ -16967,7 +16987,7 @@ $LN99@stbi__crea: 00182 89 85 c4 00 00 00 mov DWORD PTR img_width_bytes$[rbp], eax -; 4168 : img_len = (img_width_bytes + 1) * y; +; 4181 : img_len = (img_width_bytes + 1) * y; 00188 8b 85 c4 00 00 00 mov eax, DWORD PTR img_width_bytes$[rbp] @@ -16977,11 +16997,11 @@ $LN99@stbi__crea: 00197 89 85 a4 00 00 00 mov DWORD PTR img_len$[rbp], eax -; 4169 : -; 4170 : // we used to check for exact match between raw_len and img_len on non-interlaced PNGs, -; 4171 : // but issue #276 reported a PNG in the wild that had extra data at the end (all zeros), -; 4172 : // so just check for raw_len < img_len always. -; 4173 : if (raw_len < img_len) return stbi__err("not enough pixels", "Corrupt PNG"); +; 4182 : +; 4183 : // we used to check for exact match between raw_len and img_len on non-interlaced PNGs, +; 4184 : // but issue #276 reported a PNG in the wild that had extra data at the end (all zeros), +; 4185 : // so just check for raw_len < img_len always. +; 4186 : if (raw_len < img_len) return stbi__err("not enough pixels", "Corrupt PNG"); 0019d 8b 85 a4 00 00 00 mov eax, DWORD PTR img_len$[rbp] @@ -16994,8 +17014,8 @@ $LN99@stbi__crea: 001b7 e9 cd 19 00 00 jmp $LN1@stbi__crea $LN100@stbi__crea: -; 4174 : -; 4175 : for (j = 0; j < y; ++j) { +; 4187 : +; 4188 : for (j = 0; j < y; ++j) { 001bc c7 45 64 00 00 00 00 mov DWORD PTR j$[rbp], 0 @@ -17011,7 +17031,7 @@ $LN4@stbi__crea: 001d6 0f 83 27 10 00 00 jae $LN3@stbi__crea -; 4176 : stbi_uc* cur = a->out + stride * j; +; 4189 : stbi_uc* cur = a->out + stride * j; 001dc 8b 85 84 00 00 00 mov eax, DWORD PTR stride$[rbp] @@ -17023,8 +17043,8 @@ $LN4@stbi__crea: 001f3 48 89 85 88 01 00 00 mov QWORD PTR cur$1[rbp], rax -; 4177 : stbi_uc* prior; -; 4178 : int filter = *raw++; +; 4190 : stbi_uc* prior; +; 4191 : int filter = *raw++; 001fa 48 8b 85 68 04 00 00 mov rax, QWORD PTR raw$[rbp] @@ -17037,14 +17057,14 @@ $LN4@stbi__crea: 00214 48 89 85 68 04 00 00 mov QWORD PTR raw$[rbp], rax -; 4179 : -; 4180 : if (filter > 4) +; 4192 : +; 4193 : if (filter > 4) 0021b 83 bd c4 01 00 00 04 cmp DWORD PTR filter$3[rbp], 4 00222 7e 11 jle SHORT $LN101@stbi__crea -; 4181 : return stbi__err("invalid filter", "Corrupt PNG"); +; 4194 : return stbi__err("invalid filter", "Corrupt PNG"); 00224 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0P@FBBCPGMN@invalid?5filter@ @@ -17052,14 +17072,14 @@ $LN4@stbi__crea: 00230 e9 54 19 00 00 jmp $LN1@stbi__crea $LN101@stbi__crea: -; 4182 : -; 4183 : if (depth < 8) { +; 4195 : +; 4196 : if (depth < 8) { 00235 83 bd 90 04 00 00 08 cmp DWORD PTR depth$[rbp], 8 0023c 7d 5e jge SHORT $LN102@stbi__crea -; 4184 : if (img_width_bytes > x) return stbi__err("invalid width", "Corrupt PNG"); +; 4197 : if (img_width_bytes > x) return stbi__err("invalid width", "Corrupt PNG"); 0023e 8b 85 80 04 00 00 mov eax, DWORD PTR x$[rbp] @@ -17072,7 +17092,7 @@ $LN101@stbi__crea: 00258 e9 2c 19 00 00 jmp $LN1@stbi__crea $LN103@stbi__crea: -; 4185 : cur += x * out_n - img_width_bytes; // store output to the rightmost img_len bytes, so we can decode in place +; 4198 : cur += x * out_n - img_width_bytes; // store output to the rightmost img_len bytes, so we can decode in place 0025d 8b 85 80 04 00 00 mov eax, DWORD PTR x$[rbp] @@ -17088,12 +17108,12 @@ $LN103@stbi__crea: 0027f 48 89 85 88 01 00 00 mov QWORD PTR cur$1[rbp], rax -; 4186 : filter_bytes = 1; +; 4199 : filter_bytes = 1; 00286 c7 85 44 01 00 00 01 00 00 00 mov DWORD PTR filter_bytes$[rbp], 1 -; 4187 : width = img_width_bytes; +; 4200 : width = img_width_bytes; 00290 8b 85 c4 00 00 00 mov eax, DWORD PTR img_width_bytes$[rbp] @@ -17101,8 +17121,8 @@ $LN103@stbi__crea: 00 mov DWORD PTR width$[rbp], eax $LN102@stbi__crea: -; 4188 : } -; 4189 : prior = cur - stride; // bugfix: need to compute this after 'cur +=' computation above +; 4201 : } +; 4202 : prior = cur - stride; // bugfix: need to compute this after 'cur +=' computation above 0029c 8b 85 84 00 00 00 mov eax, DWORD PTR stride$[rbp] @@ -17113,9 +17133,9 @@ $LN102@stbi__crea: 002af 48 89 85 a8 01 00 00 mov QWORD PTR prior$2[rbp], rax -; 4190 : -; 4191 : // if first row, use special filter that doesn't sample previous row -; 4192 : if (j == 0) filter = first_row_filter[filter]; +; 4203 : +; 4204 : // if first row, use special filter that doesn't sample previous row +; 4205 : if (j == 0) filter = first_row_filter[filter]; 002b6 83 7d 64 00 cmp DWORD PTR j$[rbp], 0 002ba 75 18 jne SHORT $LN104@stbi__crea @@ -17128,9 +17148,9 @@ $LN102@stbi__crea: 00 mov DWORD PTR filter$3[rbp], eax $LN104@stbi__crea: -; 4193 : -; 4194 : // handle first byte explicitly -; 4195 : for (k = 0; k < filter_bytes; ++k) { +; 4206 : +; 4207 : // handle first byte explicitly +; 4208 : for (k = 0; k < filter_bytes; ++k) { 002d4 c7 85 e4 00 00 00 00 00 00 00 mov DWORD PTR k$[rbp], 0 @@ -17149,7 +17169,7 @@ $LN7@stbi__crea: 002fa 0f 8d b0 01 00 00 jge $LN6@stbi__crea -; 4196 : switch (filter) { +; 4209 : switch (filter) { 00300 8b 85 c4 01 00 00 mov eax, DWORD PTR filter$3[rbp] @@ -17169,7 +17189,7 @@ $LN7@stbi__crea: 00331 ff e0 jmp rax $LN105@stbi__crea: -; 4197 : case STBI__F_none: cur[k] = raw[k]; break; +; 4210 : case STBI__F_none: cur[k] = raw[k]; break; 00333 48 63 85 e4 00 00 00 movsxd rax, DWORD PTR k$[rbp] @@ -17184,7 +17204,7 @@ $LN105@stbi__crea: 00357 e9 4f 01 00 00 jmp $LN8@stbi__crea $LN106@stbi__crea: -; 4198 : case STBI__F_sub: cur[k] = raw[k]; break; +; 4211 : case STBI__F_sub: cur[k] = raw[k]; break; 0035c 48 63 85 e4 00 00 00 movsxd rax, DWORD PTR k$[rbp] @@ -17199,7 +17219,7 @@ $LN106@stbi__crea: 00380 e9 26 01 00 00 jmp $LN8@stbi__crea $LN107@stbi__crea: -; 4199 : case STBI__F_up: cur[k] = STBI__BYTECAST(raw[k] + prior[k]); break; +; 4212 : case STBI__F_up: cur[k] = STBI__BYTECAST(raw[k] + prior[k]); break; 00385 48 63 85 e4 00 00 00 movsxd rax, DWORD PTR k$[rbp] @@ -17221,7 +17241,7 @@ $LN107@stbi__crea: 003c1 e9 e5 00 00 00 jmp $LN8@stbi__crea $LN108@stbi__crea: -; 4200 : case STBI__F_avg: cur[k] = STBI__BYTECAST(raw[k] + (prior[k] >> 1)); break; +; 4213 : case STBI__F_avg: cur[k] = STBI__BYTECAST(raw[k] + (prior[k] >> 1)); break; 003c6 48 63 85 e4 00 00 00 movsxd rax, DWORD PTR k$[rbp] @@ -17244,7 +17264,7 @@ $LN108@stbi__crea: 00404 e9 a2 00 00 00 jmp $LN8@stbi__crea $LN109@stbi__crea: -; 4201 : case STBI__F_paeth: cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(0, prior[k], 0)); break; +; 4214 : case STBI__F_paeth: cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(0, prior[k], 0)); break; 00409 48 63 85 e4 00 00 00 movsxd rax, DWORD PTR k$[rbp] @@ -17275,7 +17295,7 @@ $LN109@stbi__crea: 0045f eb 4a jmp SHORT $LN8@stbi__crea $LN110@stbi__crea: -; 4202 : case STBI__F_avg_first: cur[k] = raw[k]; break; +; 4215 : case STBI__F_avg_first: cur[k] = raw[k]; break; 00461 48 63 85 e4 00 00 00 movsxd rax, DWORD PTR k$[rbp] @@ -17290,7 +17310,7 @@ $LN110@stbi__crea: 00485 eb 24 jmp SHORT $LN8@stbi__crea $LN111@stbi__crea: -; 4203 : case STBI__F_paeth_first: cur[k] = raw[k]; break; +; 4216 : case STBI__F_paeth_first: cur[k] = raw[k]; break; 00487 48 63 85 e4 00 00 00 movsxd rax, DWORD PTR k$[rbp] @@ -17304,20 +17324,20 @@ $LN111@stbi__crea: 004a8 88 04 0a mov BYTE PTR [rdx+rcx], al $LN8@stbi__crea: -; 4204 : } -; 4205 : } +; 4217 : } +; 4218 : } 004ab e9 30 fe ff ff jmp $LN5@stbi__crea $LN6@stbi__crea: -; 4206 : -; 4207 : if (depth == 8) { +; 4219 : +; 4220 : if (depth == 8) { 004b0 83 bd 90 04 00 00 08 cmp DWORD PTR depth$[rbp], 8 004b7 75 76 jne SHORT $LN112@stbi__crea -; 4208 : if (img_n != out_n) +; 4221 : if (img_n != out_n) 004b9 8b 85 78 04 00 00 mov eax, DWORD PTR out_n$[rbp] @@ -17325,7 +17345,7 @@ $LN6@stbi__crea: 00 cmp DWORD PTR img_n$[rbp], eax 004c5 74 12 je SHORT $LN114@stbi__crea -; 4209 : cur[img_n] = 255; // first pixel +; 4222 : cur[img_n] = 255; // first pixel 004c7 48 63 85 04 01 00 00 movsxd rax, DWORD PTR img_n$[rbp] @@ -17334,7 +17354,7 @@ $LN6@stbi__crea: 004d5 c6 04 01 ff mov BYTE PTR [rcx+rax], 255 ; 000000ffH $LN114@stbi__crea: -; 4210 : raw += img_n; +; 4223 : raw += img_n; 004d9 48 63 85 04 01 00 00 movsxd rax, DWORD PTR img_n$[rbp] @@ -17345,7 +17365,7 @@ $LN114@stbi__crea: 004ed 48 89 85 68 04 00 00 mov QWORD PTR raw$[rbp], rax -; 4211 : cur += out_n; +; 4224 : cur += out_n; 004f4 48 63 85 78 04 00 00 movsxd rax, DWORD PTR out_n$[rbp] @@ -17356,7 +17376,7 @@ $LN114@stbi__crea: 00508 48 89 85 88 01 00 00 mov QWORD PTR cur$1[rbp], rax -; 4212 : prior += out_n; +; 4225 : prior += out_n; 0050f 48 63 85 78 04 00 00 movsxd rax, DWORD PTR out_n$[rbp] @@ -17367,19 +17387,19 @@ $LN114@stbi__crea: 00523 48 89 85 a8 01 00 00 mov QWORD PTR prior$2[rbp], rax -; 4213 : } +; 4226 : } 0052a e9 c8 00 00 00 jmp $LN113@stbi__crea $LN112@stbi__crea: -; 4214 : else if (depth == 16) { +; 4227 : else if (depth == 16) { 0052f 83 bd 90 04 00 00 10 cmp DWORD PTR depth$[rbp], 16 00536 0f 85 88 00 00 00 jne $LN115@stbi__crea -; 4215 : if (img_n != out_n) { +; 4228 : if (img_n != out_n) { 0053c 8b 85 78 04 00 00 mov eax, DWORD PTR out_n$[rbp] @@ -17387,7 +17407,7 @@ $LN112@stbi__crea: 00 cmp DWORD PTR img_n$[rbp], eax 00548 74 27 je SHORT $LN117@stbi__crea -; 4216 : cur[filter_bytes] = 255; // first pixel top byte +; 4229 : cur[filter_bytes] = 255; // first pixel top byte 0054a 48 63 85 44 01 00 00 movsxd rax, DWORD PTR filter_bytes$[rbp] @@ -17395,7 +17415,7 @@ $LN112@stbi__crea: 00 00 mov rcx, QWORD PTR cur$1[rbp] 00558 c6 04 01 ff mov BYTE PTR [rcx+rax], 255 ; 000000ffH -; 4217 : cur[filter_bytes + 1] = 255; // first pixel bottom byte +; 4230 : cur[filter_bytes + 1] = 255; // first pixel bottom byte 0055c 8b 85 44 01 00 00 mov eax, DWORD PTR filter_bytes$[rbp] @@ -17406,8 +17426,8 @@ $LN112@stbi__crea: 0056d c6 04 01 ff mov BYTE PTR [rcx+rax], 255 ; 000000ffH $LN117@stbi__crea: -; 4218 : } -; 4219 : raw += filter_bytes; +; 4231 : } +; 4232 : raw += filter_bytes; 00571 48 63 85 44 01 00 00 movsxd rax, DWORD PTR filter_bytes$[rbp] @@ -17418,7 +17438,7 @@ $LN117@stbi__crea: 00585 48 89 85 68 04 00 00 mov QWORD PTR raw$[rbp], rax -; 4220 : cur += output_bytes; +; 4233 : cur += output_bytes; 0058c 48 63 85 24 01 00 00 movsxd rax, DWORD PTR output_bytes$[rbp] @@ -17429,7 +17449,7 @@ $LN117@stbi__crea: 005a0 48 89 85 88 01 00 00 mov QWORD PTR cur$1[rbp], rax -; 4221 : prior += output_bytes; +; 4234 : prior += output_bytes; 005a7 48 63 85 24 01 00 00 movsxd rax, DWORD PTR output_bytes$[rbp] @@ -17440,13 +17460,13 @@ $LN117@stbi__crea: 005bb 48 89 85 a8 01 00 00 mov QWORD PTR prior$2[rbp], rax -; 4222 : } +; 4235 : } 005c2 eb 33 jmp SHORT $LN116@stbi__crea $LN115@stbi__crea: -; 4223 : else { -; 4224 : raw += 1; +; 4236 : else { +; 4237 : raw += 1; 005c4 48 8b 85 68 04 00 00 mov rax, QWORD PTR raw$[rbp] @@ -17454,7 +17474,7 @@ $LN115@stbi__crea: 005ce 48 89 85 68 04 00 00 mov QWORD PTR raw$[rbp], rax -; 4225 : cur += 1; +; 4238 : cur += 1; 005d5 48 8b 85 88 01 00 00 mov rax, QWORD PTR cur$1[rbp] @@ -17462,7 +17482,7 @@ $LN115@stbi__crea: 005df 48 89 85 88 01 00 00 mov QWORD PTR cur$1[rbp], rax -; 4226 : prior += 1; +; 4239 : prior += 1; 005e6 48 8b 85 a8 01 00 00 mov rax, QWORD PTR prior$2[rbp] @@ -17472,10 +17492,10 @@ $LN115@stbi__crea: $LN116@stbi__crea: $LN113@stbi__crea: -; 4227 : } -; 4228 : -; 4229 : // this is a little gross, so that we don't switch per-pixel or per-component -; 4230 : if (depth < 8 || img_n == out_n) { +; 4240 : } +; 4241 : +; 4242 : // this is a little gross, so that we don't switch per-pixel or per-component +; 4243 : if (depth < 8 || img_n == out_n) { 005f7 83 bd 90 04 00 00 08 cmp DWORD PTR depth$[rbp], 8 @@ -17488,7 +17508,7 @@ $LN113@stbi__crea: 00 jne $LN118@stbi__crea $LN120@stbi__crea: -; 4231 : int nk = (width - 1) * filter_bytes; +; 4244 : int nk = (width - 1) * filter_bytes; 00612 8b 85 64 01 00 00 mov eax, DWORD PTR width$[rbp] @@ -17498,10 +17518,10 @@ $LN120@stbi__crea: 00621 89 85 e4 01 00 00 mov DWORD PTR nk$4[rbp], eax -; 4232 : #define STBI__CASE(f) \ -; 4233 : case f: \ -; 4234 : for (k=0; k < nk; ++k) -; 4235 : switch (filter) { +; 4245 : #define STBI__CASE(f) \ +; 4246 : case f: \ +; 4247 : for (k=0; k < nk; ++k) +; 4248 : switch (filter) { 00627 8b 85 c4 01 00 00 mov eax, DWORD PTR filter$3[rbp] @@ -17521,8 +17541,8 @@ $LN120@stbi__crea: 00658 ff e0 jmp rax $LN121@stbi__crea: -; 4236 : // "none" filter turns into a memcpy here; make that explicit. -; 4237 : case STBI__F_none: memcpy(cur, raw, nk); break; +; 4249 : // "none" filter turns into a memcpy here; make that explicit. +; 4250 : case STBI__F_none: memcpy(cur, raw, nk); break; 0065a 48 63 85 e4 01 00 00 movsxd rax, DWORD PTR nk$4[rbp] @@ -17535,7 +17555,7 @@ $LN121@stbi__crea: 00677 e9 4d 03 00 00 jmp $LN10@stbi__crea $LN122@stbi__crea: -; 4238 : STBI__CASE(STBI__F_sub) { cur[k] = STBI__BYTECAST(raw[k] + cur[k - filter_bytes]); } break; +; 4251 : STBI__CASE(STBI__F_sub) { cur[k] = STBI__BYTECAST(raw[k] + cur[k - filter_bytes]); } break; 0067c c7 85 e4 00 00 00 00 00 00 00 mov DWORD PTR k$[rbp], 0 @@ -17579,7 +17599,7 @@ $LN13@stbi__crea: 006ee e9 d6 02 00 00 jmp $LN10@stbi__crea $LN123@stbi__crea: -; 4239 : STBI__CASE(STBI__F_up) { cur[k] = STBI__BYTECAST(raw[k] + prior[k]); } break; +; 4252 : STBI__CASE(STBI__F_up) { cur[k] = STBI__BYTECAST(raw[k] + prior[k]); } break; 006f3 c7 85 e4 00 00 00 00 00 00 00 mov DWORD PTR k$[rbp], 0 @@ -17618,7 +17638,7 @@ $LN16@stbi__crea: 00759 e9 6b 02 00 00 jmp $LN10@stbi__crea $LN124@stbi__crea: -; 4240 : STBI__CASE(STBI__F_avg) { cur[k] = STBI__BYTECAST(raw[k] + ((prior[k] + cur[k - filter_bytes]) >> 1)); } break; +; 4253 : STBI__CASE(STBI__F_avg) { cur[k] = STBI__BYTECAST(raw[k] + ((prior[k] + cur[k - filter_bytes]) >> 1)); } break; 0075e c7 85 e4 00 00 00 00 00 00 00 mov DWORD PTR k$[rbp], 0 @@ -17669,7 +17689,7 @@ $LN19@stbi__crea: 007ea e9 da 01 00 00 jmp $LN10@stbi__crea $LN125@stbi__crea: -; 4241 : STBI__CASE(STBI__F_paeth) { cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(cur[k - filter_bytes], prior[k], prior[k - filter_bytes])); } break; +; 4254 : STBI__CASE(STBI__F_paeth) { cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(cur[k - filter_bytes], prior[k], prior[k - filter_bytes])); } break; 007ef c7 85 e4 00 00 00 00 00 00 00 mov DWORD PTR k$[rbp], 0 @@ -17740,7 +17760,7 @@ $LN22@stbi__crea: 008c1 e9 03 01 00 00 jmp $LN10@stbi__crea $LN126@stbi__crea: -; 4242 : STBI__CASE(STBI__F_avg_first) { cur[k] = STBI__BYTECAST(raw[k] + (cur[k - filter_bytes] >> 1)); } break; +; 4255 : STBI__CASE(STBI__F_avg_first) { cur[k] = STBI__BYTECAST(raw[k] + (cur[k - filter_bytes] >> 1)); } break; 008c6 c7 85 e4 00 00 00 00 00 00 00 mov DWORD PTR k$[rbp], 0 @@ -17785,7 +17805,7 @@ $LN25@stbi__crea: 0093a e9 8a 00 00 00 jmp $LN10@stbi__crea $LN127@stbi__crea: -; 4243 : STBI__CASE(STBI__F_paeth_first) { cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(cur[k - filter_bytes], 0, 0)); } break; +; 4256 : STBI__CASE(STBI__F_paeth_first) { cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(cur[k - filter_bytes], 0, 0)); } break; 0093f c7 85 e4 00 00 00 00 00 00 00 mov DWORD PTR k$[rbp], 0 @@ -17836,9 +17856,9 @@ $LN29@stbi__crea: $LN28@stbi__crea: $LN10@stbi__crea: -; 4244 : } -; 4245 : #undef STBI__CASE -; 4246 : raw += nk; +; 4257 : } +; 4258 : #undef STBI__CASE +; 4259 : raw += nk; 009c9 48 63 85 e4 01 00 00 movsxd rax, DWORD PTR nk$4[rbp] @@ -17849,13 +17869,13 @@ $LN10@stbi__crea: 009dd 48 89 85 68 04 00 00 mov QWORD PTR raw$[rbp], rax -; 4247 : } +; 4260 : } 009e4 e9 15 08 00 00 jmp $LN119@stbi__crea $LN118@stbi__crea: -; 4248 : else { -; 4249 : STBI_ASSERT(img_n + 1 == out_n); +; 4261 : else { +; 4262 : STBI_ASSERT(img_n + 1 == out_n); 009e9 8b 85 04 01 00 00 mov eax, DWORD PTR img_n$[rbp] @@ -17863,8 +17883,8 @@ $LN118@stbi__crea: 009f1 3b 85 78 04 00 00 cmp eax, DWORD PTR out_n$[rbp] 009f7 74 1c je SHORT $LN162@stbi__crea - 009f9 41 b8 99 10 00 - 00 mov r8d, 4249 ; 00001099H + 009f9 41 b8 a6 10 00 + 00 mov r8d, 4262 ; 000010a6H 009ff 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_1KA@LPJPGBDN@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@ 00a06 48 8d 0d 00 00 @@ -17874,11 +17894,11 @@ $LN118@stbi__crea: 00a13 33 c0 xor eax, eax $LN162@stbi__crea: -; 4250 : #define STBI__CASE(f) \ -; 4251 : case f: \ -; 4252 : for (i=x-1; i >= 1; --i, cur[filter_bytes]=255,raw+=filter_bytes,cur+=output_bytes,prior+=output_bytes) \ -; 4253 : for (k=0; k < filter_bytes; ++k) -; 4254 : switch (filter) { +; 4263 : #define STBI__CASE(f) \ +; 4264 : case f: \ +; 4265 : for (i=x-1; i >= 1; --i, cur[filter_bytes]=255,raw+=filter_bytes,cur+=output_bytes,prior+=output_bytes) \ +; 4266 : for (k=0; k < filter_bytes; ++k) +; 4267 : switch (filter) { 00a15 8b 85 c4 01 00 00 mov eax, DWORD PTR filter$3[rbp] @@ -17898,7 +17918,7 @@ $LN162@stbi__crea: 00a46 ff e0 jmp rax $LN128@stbi__crea: -; 4255 : STBI__CASE(STBI__F_none) { cur[k] = raw[k]; } break; +; 4268 : STBI__CASE(STBI__F_none) { cur[k] = raw[k]; } break; 00a48 8b 85 80 04 00 00 mov eax, DWORD PTR x$[rbp] @@ -17973,7 +17993,7 @@ $LN33@stbi__crea: 00b19 e9 6b 06 00 00 jmp $LN30@stbi__crea $LN129@stbi__crea: -; 4256 : STBI__CASE(STBI__F_sub) { cur[k] = STBI__BYTECAST(raw[k] + cur[k - output_bytes]); } break; +; 4269 : STBI__CASE(STBI__F_sub) { cur[k] = STBI__BYTECAST(raw[k] + cur[k - output_bytes]); } break; 00b1e 8b 85 80 04 00 00 mov eax, DWORD PTR x$[rbp] @@ -18060,7 +18080,7 @@ $LN39@stbi__crea: 00c13 e9 71 05 00 00 jmp $LN30@stbi__crea $LN130@stbi__crea: -; 4257 : STBI__CASE(STBI__F_up) { cur[k] = STBI__BYTECAST(raw[k] + prior[k]); } break; +; 4270 : STBI__CASE(STBI__F_up) { cur[k] = STBI__BYTECAST(raw[k] + prior[k]); } break; 00c18 8b 85 80 04 00 00 mov eax, DWORD PTR x$[rbp] @@ -18142,7 +18162,7 @@ $LN45@stbi__crea: 00d01 e9 83 04 00 00 jmp $LN30@stbi__crea $LN131@stbi__crea: -; 4258 : STBI__CASE(STBI__F_avg) { cur[k] = STBI__BYTECAST(raw[k] + ((prior[k] + cur[k - output_bytes]) >> 1)); } break; +; 4271 : STBI__CASE(STBI__F_avg) { cur[k] = STBI__BYTECAST(raw[k] + ((prior[k] + cur[k - output_bytes]) >> 1)); } break; 00d06 8b 85 80 04 00 00 mov eax, DWORD PTR x$[rbp] @@ -18237,7 +18257,7 @@ $LN51@stbi__crea: 00e19 e9 6b 03 00 00 jmp $LN30@stbi__crea $LN132@stbi__crea: -; 4259 : STBI__CASE(STBI__F_paeth) { cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(cur[k - output_bytes], prior[k], prior[k - output_bytes])); } break; +; 4272 : STBI__CASE(STBI__F_paeth) { cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(cur[k - output_bytes], prior[k], prior[k - output_bytes])); } break; 00e1e 8b 85 80 04 00 00 mov eax, DWORD PTR x$[rbp] @@ -18352,7 +18372,7 @@ $LN57@stbi__crea: 00f77 e9 0d 02 00 00 jmp $LN30@stbi__crea $LN133@stbi__crea: -; 4260 : STBI__CASE(STBI__F_avg_first) { cur[k] = STBI__BYTECAST(raw[k] + (cur[k - output_bytes] >> 1)); } break; +; 4273 : STBI__CASE(STBI__F_avg_first) { cur[k] = STBI__BYTECAST(raw[k] + (cur[k - output_bytes] >> 1)); } break; 00f7c 8b 85 80 04 00 00 mov eax, DWORD PTR x$[rbp] @@ -18440,7 +18460,7 @@ $LN63@stbi__crea: 01073 e9 11 01 00 00 jmp $LN30@stbi__crea $LN134@stbi__crea: -; 4261 : STBI__CASE(STBI__F_paeth_first) { cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(cur[k - output_bytes], 0, 0)); } break; +; 4274 : STBI__CASE(STBI__F_paeth_first) { cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(cur[k - output_bytes], 0, 0)); } break; 01078 8b 85 80 04 00 00 mov eax, DWORD PTR x$[rbp] @@ -18535,18 +18555,18 @@ $LN72@stbi__crea: $LN69@stbi__crea: $LN30@stbi__crea: -; 4262 : } -; 4263 : #undef STBI__CASE -; 4264 : -; 4265 : // the loop above sets the high byte of the pixels' alpha, but for -; 4266 : // 16 bit png files we also need the low byte set. we'll do that here. -; 4267 : if (depth == 16) { +; 4275 : } +; 4276 : #undef STBI__CASE +; 4277 : +; 4278 : // the loop above sets the high byte of the pixels' alpha, but for +; 4279 : // 16 bit png files we also need the low byte set. we'll do that here. +; 4280 : if (depth == 16) { 01189 83 bd 90 04 00 00 10 cmp DWORD PTR depth$[rbp], 16 01190 75 6c jne SHORT $LN135@stbi__crea -; 4268 : cur = a->out + stride * j; // start at the beginning of the row again +; 4281 : cur = a->out + stride * j; // start at the beginning of the row again 01192 8b 85 84 00 00 00 mov eax, DWORD PTR stride$[rbp] @@ -18558,7 +18578,7 @@ $LN30@stbi__crea: 011a9 48 89 85 88 01 00 00 mov QWORD PTR cur$1[rbp], rax -; 4269 : for (i = 0; i < x; ++i, cur += output_bytes) { +; 4282 : for (i = 0; i < x; ++i, cur += output_bytes) { 011b0 c7 45 44 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -18581,7 +18601,7 @@ $LN76@stbi__crea: 011e2 39 45 44 cmp DWORD PTR i$[rbp], eax 011e5 73 17 jae SHORT $LN75@stbi__crea -; 4270 : cur[filter_bytes + 1] = 255; +; 4283 : cur[filter_bytes + 1] = 255; 011e7 8b 85 44 01 00 00 mov eax, DWORD PTR filter_bytes$[rbp] @@ -18591,32 +18611,32 @@ $LN76@stbi__crea: 00 00 mov rcx, QWORD PTR cur$1[rbp] 011f8 c6 04 01 ff mov BYTE PTR [rcx+rax], 255 ; 000000ffH -; 4271 : } +; 4284 : } 011fc eb bb jmp SHORT $LN74@stbi__crea $LN75@stbi__crea: $LN135@stbi__crea: $LN119@stbi__crea: -; 4272 : } -; 4273 : } -; 4274 : } +; 4285 : } +; 4286 : } +; 4287 : } 011fe e9 c2 ef ff ff jmp $LN2@stbi__crea $LN3@stbi__crea: -; 4275 : -; 4276 : // we make a separate pass to expand bits to pixels; for performance, -; 4277 : // this could run two scanlines behind the above code, so it won't -; 4278 : // intefere with filtering but will still be in the cache. -; 4279 : if (depth < 8) { +; 4288 : +; 4289 : // we make a separate pass to expand bits to pixels; for performance, +; 4290 : // this could run two scanlines behind the above code, so it won't +; 4291 : // intefere with filtering but will still be in the cache. +; 4292 : if (depth < 8) { 01203 83 bd 90 04 00 00 08 cmp DWORD PTR depth$[rbp], 8 0120a 0f 8d c0 08 00 00 jge $LN136@stbi__crea -; 4280 : for (j = 0; j < y; ++j) { +; 4293 : for (j = 0; j < y; ++j) { 01210 c7 45 64 00 00 00 00 mov DWORD PTR j$[rbp], 0 @@ -18632,7 +18652,7 @@ $LN79@stbi__crea: 0122a 0f 83 9b 08 00 00 jae $LN78@stbi__crea -; 4281 : stbi_uc* cur = a->out + stride * j; +; 4294 : stbi_uc* cur = a->out + stride * j; 01230 8b 85 84 00 00 00 mov eax, DWORD PTR stride$[rbp] @@ -18644,7 +18664,7 @@ $LN79@stbi__crea: 01247 48 89 85 08 02 00 00 mov QWORD PTR cur$5[rbp], rax -; 4282 : stbi_uc* in = a->out + stride * j + x * out_n - img_width_bytes; +; 4295 : stbi_uc* in = a->out + stride * j + x * out_n - img_width_bytes; 0124e 8b 85 84 00 00 00 mov eax, DWORD PTR stride$[rbp] @@ -18667,9 +18687,9 @@ $LN79@stbi__crea: 01286 48 89 85 28 02 00 00 mov QWORD PTR in$6[rbp], rax -; 4283 : // unpack 1/2/4-bit into a 8-bit buffer. allows us to keep the common 8-bit path optimal at minimal cost for 1/2/4-bit -; 4284 : // png guarante byte alignment, if width is not multiple of 8/4/2 we'll decode dummy trailing data that will be skipped in the later loop -; 4285 : stbi_uc scale = (color == 0) ? stbi__depth_scale_table[depth] : 1; // scale grayscale values to 0..255 range +; 4296 : // unpack 1/2/4-bit into a 8-bit buffer. allows us to keep the common 8-bit path optimal at minimal cost for 1/2/4-bit +; 4297 : // png guarante byte alignment, if width is not multiple of 8/4/2 we'll decode dummy trailing data that will be skipped in the later loop +; 4298 : stbi_uc scale = (color == 0) ? stbi__depth_scale_table[depth] : 1; // scale grayscale values to 0..255 range 0128d 83 bd 98 04 00 00 00 cmp DWORD PTR color$[rbp], 0 @@ -18691,21 +18711,21 @@ $LN164@stbi__crea: 012c1 88 85 44 02 00 00 mov BYTE PTR scale$7[rbp], al -; 4286 : -; 4287 : // note that the final byte might overshoot and write more data than desired. -; 4288 : // we can allocate enough data that this never writes out of memory, but it -; 4289 : // could also overwrite the next scanline. can it overwrite non-empty data -; 4290 : // on the next scanline? yes, consider 1-pixel-wide scanlines with 1-bit-per-pixel. -; 4291 : // so we need to explicitly clamp the final ones -; 4292 : -; 4293 : if (depth == 4) { +; 4299 : +; 4300 : // note that the final byte might overshoot and write more data than desired. +; 4301 : // we can allocate enough data that this never writes out of memory, but it +; 4302 : // could also overwrite the next scanline. can it overwrite non-empty data +; 4303 : // on the next scanline? yes, consider 1-pixel-wide scanlines with 1-bit-per-pixel. +; 4304 : // so we need to explicitly clamp the final ones +; 4305 : +; 4306 : if (depth == 4) { 012c7 83 bd 90 04 00 00 04 cmp DWORD PTR depth$[rbp], 4 012ce 0f 85 e4 00 00 00 jne $LN138@stbi__crea -; 4294 : for (k = x * img_n; k >= 2; k -= 2, ++in) { +; 4307 : for (k = x * img_n; k >= 2; k -= 2, ++in) { 012d4 8b 85 80 04 00 00 mov eax, DWORD PTR x$[rbp] @@ -18730,7 +18750,7 @@ $LN82@stbi__crea: 00 02 cmp DWORD PTR k$[rbp], 2 01310 7c 67 jl SHORT $LN81@stbi__crea -; 4295 : *cur++ = scale * ((*in >> 4)); +; 4308 : *cur++ = scale * ((*in >> 4)); 01312 0f b6 85 44 02 00 00 movzx eax, BYTE PTR scale$7[rbp] @@ -18748,7 +18768,7 @@ $LN82@stbi__crea: 0133c 48 89 85 08 02 00 00 mov QWORD PTR cur$5[rbp], rax -; 4296 : *cur++ = scale * ((*in) & 0x0f); +; 4309 : *cur++ = scale * ((*in) & 0x0f); 01343 0f b6 85 44 02 00 00 movzx eax, BYTE PTR scale$7[rbp] @@ -18766,12 +18786,12 @@ $LN82@stbi__crea: 0136d 48 89 85 08 02 00 00 mov QWORD PTR cur$5[rbp], rax -; 4297 : } +; 4310 : } 01374 e9 70 ff ff ff jmp $LN80@stbi__crea $LN81@stbi__crea: -; 4298 : if (k > 0) *cur++ = scale * ((*in >> 4)); +; 4311 : if (k > 0) *cur++ = scale * ((*in >> 4)); 01379 83 bd e4 00 00 00 00 cmp DWORD PTR k$[rbp], 0 @@ -18793,19 +18813,19 @@ $LN81@stbi__crea: 00 00 mov QWORD PTR cur$5[rbp], rax $LN140@stbi__crea: -; 4299 : } +; 4312 : } 013b3 e9 6b 05 00 00 jmp $LN139@stbi__crea $LN138@stbi__crea: -; 4300 : else if (depth == 2) { +; 4313 : else if (depth == 2) { 013b8 83 bd 90 04 00 00 02 cmp DWORD PTR depth$[rbp], 2 013bf 0f 85 ca 01 00 00 jne $LN141@stbi__crea -; 4301 : for (k = x * img_n; k >= 4; k -= 4, ++in) { +; 4314 : for (k = x * img_n; k >= 4; k -= 4, ++in) { 013c5 8b 85 80 04 00 00 mov eax, DWORD PTR x$[rbp] @@ -18831,7 +18851,7 @@ $LN85@stbi__crea: 01401 0f 8c cf 00 00 00 jl $LN84@stbi__crea -; 4302 : *cur++ = scale * ((*in >> 6)); +; 4315 : *cur++ = scale * ((*in >> 6)); 01407 0f b6 85 44 02 00 00 movzx eax, BYTE PTR scale$7[rbp] @@ -18849,7 +18869,7 @@ $LN85@stbi__crea: 01431 48 89 85 08 02 00 00 mov QWORD PTR cur$5[rbp], rax -; 4303 : *cur++ = scale * ((*in >> 4) & 0x03); +; 4316 : *cur++ = scale * ((*in >> 4) & 0x03); 01438 0f b6 85 44 02 00 00 movzx eax, BYTE PTR scale$7[rbp] @@ -18868,7 +18888,7 @@ $LN85@stbi__crea: 01465 48 89 85 08 02 00 00 mov QWORD PTR cur$5[rbp], rax -; 4304 : *cur++ = scale * ((*in >> 2) & 0x03); +; 4317 : *cur++ = scale * ((*in >> 2) & 0x03); 0146c 0f b6 85 44 02 00 00 movzx eax, BYTE PTR scale$7[rbp] @@ -18887,7 +18907,7 @@ $LN85@stbi__crea: 01499 48 89 85 08 02 00 00 mov QWORD PTR cur$5[rbp], rax -; 4305 : *cur++ = scale * ((*in) & 0x03); +; 4318 : *cur++ = scale * ((*in) & 0x03); 014a0 0f b6 85 44 02 00 00 movzx eax, BYTE PTR scale$7[rbp] @@ -18905,12 +18925,12 @@ $LN85@stbi__crea: 014ca 48 89 85 08 02 00 00 mov QWORD PTR cur$5[rbp], rax -; 4306 : } +; 4319 : } 014d1 e9 04 ff ff ff jmp $LN83@stbi__crea $LN84@stbi__crea: -; 4307 : if (k > 0) *cur++ = scale * ((*in >> 6)); +; 4320 : if (k > 0) *cur++ = scale * ((*in >> 6)); 014d6 83 bd e4 00 00 00 00 cmp DWORD PTR k$[rbp], 0 @@ -18932,7 +18952,7 @@ $LN84@stbi__crea: 00 00 mov QWORD PTR cur$5[rbp], rax $LN143@stbi__crea: -; 4308 : if (k > 1) *cur++ = scale * ((*in >> 4) & 0x03); +; 4321 : if (k > 1) *cur++ = scale * ((*in >> 4) & 0x03); 01510 83 bd e4 00 00 00 01 cmp DWORD PTR k$[rbp], 1 @@ -18955,7 +18975,7 @@ $LN143@stbi__crea: 00 00 mov QWORD PTR cur$5[rbp], rax $LN144@stbi__crea: -; 4309 : if (k > 2) *cur++ = scale * ((*in >> 2) & 0x03); +; 4322 : if (k > 2) *cur++ = scale * ((*in >> 2) & 0x03); 0154d 83 bd e4 00 00 00 02 cmp DWORD PTR k$[rbp], 2 @@ -18978,19 +18998,19 @@ $LN144@stbi__crea: 00 00 mov QWORD PTR cur$5[rbp], rax $LN145@stbi__crea: -; 4310 : } +; 4323 : } 0158a e9 94 03 00 00 jmp $LN142@stbi__crea $LN141@stbi__crea: -; 4311 : else if (depth == 1) { +; 4324 : else if (depth == 1) { 0158f 83 bd 90 04 00 00 01 cmp DWORD PTR depth$[rbp], 1 01596 0f 85 87 03 00 00 jne $LN146@stbi__crea -; 4312 : for (k = x * img_n; k >= 8; k -= 8, ++in) { +; 4325 : for (k = x * img_n; k >= 8; k -= 8, ++in) { 0159c 8b 85 80 04 00 00 mov eax, DWORD PTR x$[rbp] @@ -19016,7 +19036,7 @@ $LN88@stbi__crea: 015d8 0f 8c 9e 01 00 00 jl $LN87@stbi__crea -; 4313 : *cur++ = scale * ((*in >> 7)); +; 4326 : *cur++ = scale * ((*in >> 7)); 015de 0f b6 85 44 02 00 00 movzx eax, BYTE PTR scale$7[rbp] @@ -19034,7 +19054,7 @@ $LN88@stbi__crea: 01608 48 89 85 08 02 00 00 mov QWORD PTR cur$5[rbp], rax -; 4314 : *cur++ = scale * ((*in >> 6) & 0x01); +; 4327 : *cur++ = scale * ((*in >> 6) & 0x01); 0160f 0f b6 85 44 02 00 00 movzx eax, BYTE PTR scale$7[rbp] @@ -19053,7 +19073,7 @@ $LN88@stbi__crea: 0163c 48 89 85 08 02 00 00 mov QWORD PTR cur$5[rbp], rax -; 4315 : *cur++ = scale * ((*in >> 5) & 0x01); +; 4328 : *cur++ = scale * ((*in >> 5) & 0x01); 01643 0f b6 85 44 02 00 00 movzx eax, BYTE PTR scale$7[rbp] @@ -19072,7 +19092,7 @@ $LN88@stbi__crea: 01670 48 89 85 08 02 00 00 mov QWORD PTR cur$5[rbp], rax -; 4316 : *cur++ = scale * ((*in >> 4) & 0x01); +; 4329 : *cur++ = scale * ((*in >> 4) & 0x01); 01677 0f b6 85 44 02 00 00 movzx eax, BYTE PTR scale$7[rbp] @@ -19091,7 +19111,7 @@ $LN88@stbi__crea: 016a4 48 89 85 08 02 00 00 mov QWORD PTR cur$5[rbp], rax -; 4317 : *cur++ = scale * ((*in >> 3) & 0x01); +; 4330 : *cur++ = scale * ((*in >> 3) & 0x01); 016ab 0f b6 85 44 02 00 00 movzx eax, BYTE PTR scale$7[rbp] @@ -19110,7 +19130,7 @@ $LN88@stbi__crea: 016d8 48 89 85 08 02 00 00 mov QWORD PTR cur$5[rbp], rax -; 4318 : *cur++ = scale * ((*in >> 2) & 0x01); +; 4331 : *cur++ = scale * ((*in >> 2) & 0x01); 016df 0f b6 85 44 02 00 00 movzx eax, BYTE PTR scale$7[rbp] @@ -19129,7 +19149,7 @@ $LN88@stbi__crea: 0170c 48 89 85 08 02 00 00 mov QWORD PTR cur$5[rbp], rax -; 4319 : *cur++ = scale * ((*in >> 1) & 0x01); +; 4332 : *cur++ = scale * ((*in >> 1) & 0x01); 01713 0f b6 85 44 02 00 00 movzx eax, BYTE PTR scale$7[rbp] @@ -19148,7 +19168,7 @@ $LN88@stbi__crea: 0173f 48 89 85 08 02 00 00 mov QWORD PTR cur$5[rbp], rax -; 4320 : *cur++ = scale * ((*in) & 0x01); +; 4333 : *cur++ = scale * ((*in) & 0x01); 01746 0f b6 85 44 02 00 00 movzx eax, BYTE PTR scale$7[rbp] @@ -19166,12 +19186,12 @@ $LN88@stbi__crea: 01770 48 89 85 08 02 00 00 mov QWORD PTR cur$5[rbp], rax -; 4321 : } +; 4334 : } 01777 e9 35 fe ff ff jmp $LN86@stbi__crea $LN87@stbi__crea: -; 4322 : if (k > 0) *cur++ = scale * ((*in >> 7)); +; 4335 : if (k > 0) *cur++ = scale * ((*in >> 7)); 0177c 83 bd e4 00 00 00 00 cmp DWORD PTR k$[rbp], 0 @@ -19193,7 +19213,7 @@ $LN87@stbi__crea: 00 00 mov QWORD PTR cur$5[rbp], rax $LN147@stbi__crea: -; 4323 : if (k > 1) *cur++ = scale * ((*in >> 6) & 0x01); +; 4336 : if (k > 1) *cur++ = scale * ((*in >> 6) & 0x01); 017b6 83 bd e4 00 00 00 01 cmp DWORD PTR k$[rbp], 1 @@ -19216,7 +19236,7 @@ $LN147@stbi__crea: 00 00 mov QWORD PTR cur$5[rbp], rax $LN148@stbi__crea: -; 4324 : if (k > 2) *cur++ = scale * ((*in >> 5) & 0x01); +; 4337 : if (k > 2) *cur++ = scale * ((*in >> 5) & 0x01); 017f3 83 bd e4 00 00 00 02 cmp DWORD PTR k$[rbp], 2 @@ -19239,7 +19259,7 @@ $LN148@stbi__crea: 00 00 mov QWORD PTR cur$5[rbp], rax $LN149@stbi__crea: -; 4325 : if (k > 3) *cur++ = scale * ((*in >> 4) & 0x01); +; 4338 : if (k > 3) *cur++ = scale * ((*in >> 4) & 0x01); 01830 83 bd e4 00 00 00 03 cmp DWORD PTR k$[rbp], 3 @@ -19262,7 +19282,7 @@ $LN149@stbi__crea: 00 00 mov QWORD PTR cur$5[rbp], rax $LN150@stbi__crea: -; 4326 : if (k > 4) *cur++ = scale * ((*in >> 3) & 0x01); +; 4339 : if (k > 4) *cur++ = scale * ((*in >> 3) & 0x01); 0186d 83 bd e4 00 00 00 04 cmp DWORD PTR k$[rbp], 4 @@ -19285,7 +19305,7 @@ $LN150@stbi__crea: 00 00 mov QWORD PTR cur$5[rbp], rax $LN151@stbi__crea: -; 4327 : if (k > 5) *cur++ = scale * ((*in >> 2) & 0x01); +; 4340 : if (k > 5) *cur++ = scale * ((*in >> 2) & 0x01); 018aa 83 bd e4 00 00 00 05 cmp DWORD PTR k$[rbp], 5 @@ -19308,7 +19328,7 @@ $LN151@stbi__crea: 00 00 mov QWORD PTR cur$5[rbp], rax $LN152@stbi__crea: -; 4328 : if (k > 6) *cur++ = scale * ((*in >> 1) & 0x01); +; 4341 : if (k > 6) *cur++ = scale * ((*in >> 1) & 0x01); 018e7 83 bd e4 00 00 00 06 cmp DWORD PTR k$[rbp], 6 @@ -19334,8 +19354,8 @@ $LN146@stbi__crea: $LN142@stbi__crea: $LN139@stbi__crea: -; 4329 : } -; 4330 : if (img_n != out_n) { +; 4342 : } +; 4343 : if (img_n != out_n) { 01923 8b 85 78 04 00 00 mov eax, DWORD PTR out_n$[rbp] @@ -19344,9 +19364,9 @@ $LN139@stbi__crea: 0192f 0f 84 91 01 00 00 je $LN154@stbi__crea -; 4331 : int q; -; 4332 : // insert alpha = 255 -; 4333 : cur = a->out + stride * j; +; 4344 : int q; +; 4345 : // insert alpha = 255 +; 4346 : cur = a->out + stride * j; 01935 8b 85 84 00 00 00 mov eax, DWORD PTR stride$[rbp] @@ -19358,13 +19378,13 @@ $LN139@stbi__crea: 0194c 48 89 85 08 02 00 00 mov QWORD PTR cur$5[rbp], rax -; 4334 : if (img_n == 1) { +; 4347 : if (img_n == 1) { 01953 83 bd 04 01 00 00 01 cmp DWORD PTR img_n$[rbp], 1 0195a 75 6d jne SHORT $LN155@stbi__crea -; 4335 : for (q = x - 1; q >= 0; --q) { +; 4348 : for (q = x - 1; q >= 0; --q) { 0195c 8b 85 80 04 00 00 mov eax, DWORD PTR x$[rbp] @@ -19383,7 +19403,7 @@ $LN91@stbi__crea: 00 00 cmp DWORD PTR q$8[rbp], 0 01981 7c 41 jl SHORT $LN90@stbi__crea -; 4336 : cur[q * 2 + 1] = 255; +; 4349 : cur[q * 2 + 1] = 255; 01983 8b 85 64 02 00 00 mov eax, DWORD PTR q$8[rbp] @@ -19393,7 +19413,7 @@ $LN91@stbi__crea: 00 00 mov rcx, QWORD PTR cur$5[rbp] 01996 c6 04 01 ff mov BYTE PTR [rcx+rax], 255 ; 000000ffH -; 4337 : cur[q * 2 + 0] = cur[q]; +; 4350 : cur[q * 2 + 0] = cur[q]; 0199a 48 63 85 64 02 00 00 movsxd rax, DWORD PTR q$8[rbp] @@ -19408,24 +19428,24 @@ $LN91@stbi__crea: 019ba 41 0f b6 04 00 movzx eax, BYTE PTR [r8+rax] 019bf 88 04 0a mov BYTE PTR [rdx+rcx], al -; 4338 : } +; 4351 : } 019c2 eb a8 jmp SHORT $LN89@stbi__crea $LN90@stbi__crea: -; 4339 : } +; 4352 : } 019c4 e9 fd 00 00 00 jmp $LN156@stbi__crea $LN155@stbi__crea: -; 4340 : else { -; 4341 : STBI_ASSERT(img_n == 3); +; 4353 : else { +; 4354 : STBI_ASSERT(img_n == 3); 019c9 83 bd 04 01 00 00 03 cmp DWORD PTR img_n$[rbp], 3 019d0 74 1c je SHORT $LN165@stbi__crea - 019d2 41 b8 f5 10 00 - 00 mov r8d, 4341 ; 000010f5H + 019d2 41 b8 02 11 00 + 00 mov r8d, 4354 ; 00001102H 019d8 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_1KA@LPJPGBDN@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@ 019df 48 8d 0d 00 00 @@ -19435,7 +19455,7 @@ $LN155@stbi__crea: 019ec 33 c0 xor eax, eax $LN165@stbi__crea: -; 4342 : for (q = x - 1; q >= 0; --q) { +; 4355 : for (q = x - 1; q >= 0; --q) { 019ee 8b 85 80 04 00 00 mov eax, DWORD PTR x$[rbp] @@ -19455,7 +19475,7 @@ $LN94@stbi__crea: 01a13 0f 8c ad 00 00 00 jl $LN93@stbi__crea -; 4343 : cur[q * 4 + 3] = 255; +; 4356 : cur[q * 4 + 3] = 255; 01a19 8b 85 64 02 00 00 mov eax, DWORD PTR q$8[rbp] @@ -19466,7 +19486,7 @@ $LN94@stbi__crea: 00 00 mov rcx, QWORD PTR cur$5[rbp] 01a2f c6 04 01 ff mov BYTE PTR [rcx+rax], 255 ; 000000ffH -; 4344 : cur[q * 4 + 2] = cur[q * 3 + 2]; +; 4357 : cur[q * 4 + 2] = cur[q * 3 + 2]; 01a33 6b 85 64 02 00 00 03 imul eax, DWORD PTR q$8[rbp], 3 @@ -19484,7 +19504,7 @@ $LN94@stbi__crea: 01a5d 41 0f b6 04 00 movzx eax, BYTE PTR [r8+rax] 01a62 88 04 0a mov BYTE PTR [rdx+rcx], al -; 4345 : cur[q * 4 + 1] = cur[q * 3 + 1]; +; 4358 : cur[q * 4 + 1] = cur[q * 3 + 1]; 01a65 6b 85 64 02 00 00 03 imul eax, DWORD PTR q$8[rbp], 3 @@ -19502,7 +19522,7 @@ $LN94@stbi__crea: 01a8e 41 0f b6 04 00 movzx eax, BYTE PTR [r8+rax] 01a93 88 04 0a mov BYTE PTR [rdx+rcx], al -; 4346 : cur[q * 4 + 0] = cur[q * 3 + 0]; +; 4359 : cur[q * 4 + 0] = cur[q * 3 + 0]; 01a96 6b 85 64 02 00 00 03 imul eax, DWORD PTR q$8[rbp], 3 @@ -19518,37 +19538,37 @@ $LN94@stbi__crea: 01ab9 41 0f b6 04 00 movzx eax, BYTE PTR [r8+rax] 01abe 88 04 0a mov BYTE PTR [rdx+rcx], al -; 4347 : } +; 4360 : } 01ac1 e9 38 ff ff ff jmp $LN92@stbi__crea $LN93@stbi__crea: $LN156@stbi__crea: $LN154@stbi__crea: -; 4348 : } -; 4349 : } -; 4350 : } +; 4361 : } +; 4362 : } +; 4363 : } 01ac6 e9 4e f7 ff ff jmp $LN77@stbi__crea $LN78@stbi__crea: -; 4351 : } +; 4364 : } 01acb e9 b4 00 00 00 jmp $LN137@stbi__crea $LN136@stbi__crea: -; 4352 : else if (depth == 16) { +; 4365 : else if (depth == 16) { 01ad0 83 bd 90 04 00 00 10 cmp DWORD PTR depth$[rbp], 16 01ad7 0f 85 a7 00 00 00 jne $LN157@stbi__crea -; 4353 : // force the image data from big-endian to platform-native. -; 4354 : // this is done in a separate pass due to the decoding relying -; 4355 : // on the data being untouched, but could probably be done -; 4356 : // per-line during decode if care is taken. -; 4357 : stbi_uc* cur = a->out; +; 4366 : // force the image data from big-endian to platform-native. +; 4367 : // this is done in a separate pass due to the decoding relying +; 4368 : // on the data being untouched, but could probably be done +; 4369 : // per-line during decode if care is taken. +; 4370 : stbi_uc* cur = a->out; 01add 48 8b 85 60 04 00 00 mov rax, QWORD PTR a$[rbp] @@ -19556,15 +19576,15 @@ $LN136@stbi__crea: 01ae8 48 89 85 88 02 00 00 mov QWORD PTR cur$9[rbp], rax -; 4358 : stbi__uint16* cur16 = (stbi__uint16*)cur; +; 4371 : stbi__uint16* cur16 = (stbi__uint16*)cur; 01aef 48 8b 85 88 02 00 00 mov rax, QWORD PTR cur$9[rbp] 01af6 48 89 85 a8 02 00 00 mov QWORD PTR cur16$10[rbp], rax -; 4359 : -; 4360 : for (i = 0; i < x * y * out_n; ++i, cur16++, cur += 2) { +; 4372 : +; 4373 : for (i = 0; i < x * y * out_n; ++i, cur16++, cur += 2) { 01afd c7 45 44 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -19593,7 +19613,7 @@ $LN97@stbi__crea: 01b46 39 45 44 cmp DWORD PTR i$[rbp], eax 01b49 73 39 jae SHORT $LN96@stbi__crea -; 4361 : *cur16 = (cur[0] << 8) | cur[1]; +; 4374 : *cur16 = (cur[0] << 8) | cur[1]; 01b4b b8 01 00 00 00 mov eax, 1 01b50 48 6b c0 00 imul rax, rax, 0 @@ -19611,21 +19631,21 @@ $LN97@stbi__crea: 00 00 mov rcx, QWORD PTR cur16$10[rbp] 01b7f 66 89 01 mov WORD PTR [rcx], ax -; 4362 : } +; 4375 : } 01b82 eb 82 jmp SHORT $LN95@stbi__crea $LN96@stbi__crea: $LN157@stbi__crea: $LN137@stbi__crea: -; 4363 : } -; 4364 : -; 4365 : return 1; +; 4376 : } +; 4377 : +; 4378 : return 1; 01b84 b8 01 00 00 00 mov eax, 1 $LN1@stbi__crea: -; 4366 : } +; 4379 : } 01b89 48 8d a5 48 04 00 00 lea rsp, QWORD PTR [rbp+1096] @@ -19672,7 +19692,7 @@ b$ = 360 c$ = 368 stbi__paeth PROC ; COMDAT -; 4136 : { +; 4149 : { 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 00005 89 54 24 10 mov DWORD PTR [rsp+16], edx @@ -19686,7 +19706,7 @@ stbi__paeth PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00022 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4137 : int p = a + b - c; +; 4150 : int p = a + b - c; 00027 8b 85 68 01 00 00 mov eax, DWORD PTR b$[rbp] @@ -19698,7 +19718,7 @@ stbi__paeth PROC ; COMDAT 00 sub eax, DWORD PTR c$[rbp] 0003d 89 45 04 mov DWORD PTR p$[rbp], eax -; 4138 : int pa = abs(p - a); +; 4151 : int pa = abs(p - a); 00040 8b 85 60 01 00 00 mov eax, DWORD PTR a$[rbp] @@ -19709,7 +19729,7 @@ stbi__paeth PROC ; COMDAT 0004f e8 00 00 00 00 call abs 00054 89 45 24 mov DWORD PTR pa$[rbp], eax -; 4139 : int pb = abs(p - b); +; 4152 : int pb = abs(p - b); 00057 8b 85 68 01 00 00 mov eax, DWORD PTR b$[rbp] @@ -19720,7 +19740,7 @@ stbi__paeth PROC ; COMDAT 00066 e8 00 00 00 00 call abs 0006b 89 45 44 mov DWORD PTR pb$[rbp], eax -; 4140 : int pc = abs(p - c); +; 4153 : int pc = abs(p - c); 0006e 8b 85 70 01 00 00 mov eax, DWORD PTR c$[rbp] @@ -19731,7 +19751,7 @@ stbi__paeth PROC ; COMDAT 0007d e8 00 00 00 00 call abs 00082 89 45 64 mov DWORD PTR pc$[rbp], eax -; 4141 : if (pa <= pb && pa <= pc) return a; +; 4154 : if (pa <= pb && pa <= pc) return a; 00085 8b 45 44 mov eax, DWORD PTR pb$[rbp] 00088 39 45 24 cmp DWORD PTR pa$[rbp], eax @@ -19744,7 +19764,7 @@ stbi__paeth PROC ; COMDAT 0009b eb 16 jmp SHORT $LN1@stbi__paet $LN2@stbi__paet: -; 4142 : if (pb <= pc) return b; +; 4155 : if (pb <= pc) return b; 0009d 8b 45 64 mov eax, DWORD PTR pc$[rbp] 000a0 39 45 44 cmp DWORD PTR pb$[rbp], eax @@ -19754,13 +19774,13 @@ $LN2@stbi__paet: 000ab eb 06 jmp SHORT $LN1@stbi__paet $LN3@stbi__paet: -; 4143 : return c; +; 4156 : return c; 000ad 8b 85 70 01 00 00 mov eax, DWORD PTR c$[rbp] $LN1@stbi__paet: -; 4144 : } +; 4157 : } 000b3 48 8d a5 48 01 00 00 lea rsp, QWORD PTR [rbp+328] @@ -19777,7 +19797,7 @@ i$ = 4 s$ = 256 stbi__check_png_header PROC ; COMDAT -; 4099 : { +; 4112 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -19789,9 +19809,9 @@ stbi__check_png_header PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4100 : static const stbi_uc png_sig[8] = { 137,80,78,71,13,10,26,10 }; -; 4101 : int i; -; 4102 : for (i = 0; i < 8; ++i) +; 4113 : static const stbi_uc png_sig[8] = { 137,80,78,71,13,10,26,10 }; +; 4114 : int i; +; 4115 : for (i = 0; i < 8; ++i) 0001f c7 45 04 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -19804,7 +19824,7 @@ $LN4@stbi__chec: 00030 83 7d 04 08 cmp DWORD PTR i$[rbp], 8 00034 7d 32 jge SHORT $LN3@stbi__chec -; 4103 : if (stbi__get8(s) != png_sig[i]) return stbi__err("bad png sig", "Not a PNG"); +; 4116 : if (stbi__get8(s) != png_sig[i]) return stbi__err("bad png sig", "Not a PNG"); 00036 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -19824,12 +19844,12 @@ $LN5@stbi__chec: 00066 eb c0 jmp SHORT $LN2@stbi__chec $LN3@stbi__chec: -; 4104 : return 1; +; 4117 : return 1; 00068 b8 01 00 00 00 mov eax, 1 $LN1@stbi__chec: -; 4105 : } +; 4118 : } 0006d 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -19846,7 +19866,7 @@ c$ = 8 s$ = 256 stbi__get_chunk_header PROC ; COMDAT -; 4091 : { +; 4104 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -19864,26 +19884,26 @@ stbi__get_chunk_header PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00033 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4092 : stbi__pngchunk c; -; 4093 : c.length = stbi__get32be(s); +; 4105 : stbi__pngchunk c; +; 4106 : c.length = stbi__get32be(s); 00038 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] 0003f e8 00 00 00 00 call stbi__get32be 00044 89 45 08 mov DWORD PTR c$[rbp], eax -; 4094 : c.type = stbi__get32be(s); +; 4107 : c.type = stbi__get32be(s); 00047 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] 0004e e8 00 00 00 00 call stbi__get32be 00053 89 45 0c mov DWORD PTR c$[rbp+4], eax -; 4095 : return c; +; 4108 : return c; 00056 48 8b 45 08 mov rax, QWORD PTR c$[rbp] -; 4096 : } +; 4109 : } 0005a 48 8b f8 mov rdi, rax 0005d 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] @@ -19909,7 +19929,7 @@ exp$ = 248 parse_header$ = 256 stbi__do_zlib PROC ; COMDAT -; 3985 : { +; 3998 : { 00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d 00005 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d @@ -19924,7 +19944,7 @@ stbi__do_zlib PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 3986 : a->zout_start = obuf; +; 3999 : a->zout_start = obuf; 0002e 48 8b 85 e0 00 00 00 mov rax, QWORD PTR a$[rbp] @@ -19932,7 +19952,7 @@ stbi__do_zlib PROC ; COMDAT 00 00 mov rcx, QWORD PTR obuf$[rbp] 0003c 48 89 48 20 mov QWORD PTR [rax+32], rcx -; 3987 : a->zout = obuf; +; 4000 : a->zout = obuf; 00040 48 8b 85 e0 00 00 00 mov rax, QWORD PTR a$[rbp] @@ -19940,7 +19960,7 @@ stbi__do_zlib PROC ; COMDAT 00 00 mov rcx, QWORD PTR obuf$[rbp] 0004e 48 89 48 18 mov QWORD PTR [rax+24], rcx -; 3988 : a->zout_end = obuf + olen; +; 4001 : a->zout_end = obuf + olen; 00052 48 63 85 f0 00 00 00 movsxd rax, DWORD PTR olen$[rbp] @@ -19952,7 +19972,7 @@ stbi__do_zlib PROC ; COMDAT 00 00 mov rcx, QWORD PTR a$[rbp] 0006d 48 89 41 28 mov QWORD PTR [rcx+40], rax -; 3989 : a->z_expandable = exp; +; 4002 : a->z_expandable = exp; 00071 48 8b 85 e0 00 00 00 mov rax, QWORD PTR a$[rbp] @@ -19960,8 +19980,8 @@ stbi__do_zlib PROC ; COMDAT 00 mov ecx, DWORD PTR exp$[rbp] 0007e 89 48 30 mov DWORD PTR [rax+48], ecx -; 3990 : -; 3991 : return stbi__parse_zlib(a, parse_header); +; 4003 : +; 4004 : return stbi__parse_zlib(a, parse_header); 00081 8b 95 00 01 00 00 mov edx, DWORD PTR parse_header$[rbp] @@ -19969,7 +19989,7 @@ stbi__do_zlib PROC ; COMDAT 00 00 mov rcx, QWORD PTR a$[rbp] 0008e e8 00 00 00 00 call stbi__parse_zlib -; 3992 : } +; 4005 : } 00093 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] @@ -19988,7 +20008,7 @@ a$ = 288 parse_header$ = 296 stbi__parse_zlib PROC ; COMDAT -; 3954 : { +; 3967 : { 00000 89 54 24 10 mov DWORD PTR [rsp+16], edx 00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx @@ -20001,14 +20021,14 @@ stbi__parse_zlib PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001e e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 3955 : int final, type; -; 3956 : if (parse_header) +; 3968 : int final, type; +; 3969 : if (parse_header) 00023 83 bd 28 01 00 00 00 cmp DWORD PTR parse_header$[rbp], 0 0002a 74 17 je SHORT $LN5@stbi__pars -; 3957 : if (!stbi__parse_zlib_header(a)) return 0; +; 3970 : if (!stbi__parse_zlib_header(a)) return 0; 0002c 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR a$[rbp] @@ -20020,14 +20040,14 @@ stbi__parse_zlib PROC ; COMDAT $LN6@stbi__pars: $LN5@stbi__pars: -; 3958 : a->num_bits = 0; +; 3971 : a->num_bits = 0; 00043 48 8b 85 20 01 00 00 mov rax, QWORD PTR a$[rbp] 0004a c7 40 10 00 00 00 00 mov DWORD PTR [rax+16], 0 -; 3959 : a->code_buffer = 0; +; 3972 : a->code_buffer = 0; 00051 48 8b 85 20 01 00 00 mov rax, QWORD PTR a$[rbp] @@ -20035,8 +20055,8 @@ $LN5@stbi__pars: 00 00 mov DWORD PTR [rax+20], 0 $LN4@stbi__pars: -; 3960 : do { -; 3961 : final = stbi__zreceive(a, 1); +; 3973 : do { +; 3974 : final = stbi__zreceive(a, 1); 0005f ba 01 00 00 00 mov edx, 1 00064 48 8b 8d 20 01 @@ -20044,7 +20064,7 @@ $LN4@stbi__pars: 0006b e8 00 00 00 00 call stbi__zreceive 00070 89 45 04 mov DWORD PTR final$[rbp], eax -; 3962 : type = stbi__zreceive(a, 2); +; 3975 : type = stbi__zreceive(a, 2); 00073 ba 02 00 00 00 mov edx, 2 00078 48 8b 8d 20 01 @@ -20052,12 +20072,12 @@ $LN4@stbi__pars: 0007f e8 00 00 00 00 call stbi__zreceive 00084 89 45 24 mov DWORD PTR type$[rbp], eax -; 3963 : if (type == 0) { +; 3976 : if (type == 0) { 00087 83 7d 24 00 cmp DWORD PTR type$[rbp], 0 0008b 75 1c jne SHORT $LN7@stbi__pars -; 3964 : if (!stbi__parse_uncompressed_block(a)) return 0; +; 3977 : if (!stbi__parse_uncompressed_block(a)) return 0; 0008d 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR a$[rbp] @@ -20068,34 +20088,34 @@ $LN4@stbi__pars: 0009f e9 a8 00 00 00 jmp $LN1@stbi__pars $LN9@stbi__pars: -; 3965 : } +; 3978 : } 000a4 e9 94 00 00 00 jmp $LN8@stbi__pars $LN7@stbi__pars: -; 3966 : else if (type == 3) { +; 3979 : else if (type == 3) { 000a9 83 7d 24 03 cmp DWORD PTR type$[rbp], 3 000ad 75 0c jne SHORT $LN10@stbi__pars -; 3967 : return 0; +; 3980 : return 0; 000af 33 c0 xor eax, eax 000b1 e9 96 00 00 00 jmp $LN1@stbi__pars -; 3968 : } +; 3981 : } 000b6 e9 82 00 00 00 jmp $LN11@stbi__pars $LN10@stbi__pars: -; 3969 : else { -; 3970 : if (type == 1) { +; 3982 : else { +; 3983 : if (type == 1) { 000bb 83 7d 24 01 cmp DWORD PTR type$[rbp], 1 000bf 75 54 jne SHORT $LN12@stbi__pars -; 3971 : // use fixed code lengths -; 3972 : if (!stbi__zbuild_huffman(&a->z_length, stbi__zdefault_length, STBI__ZNSYMS)) return 0; +; 3984 : // use fixed code lengths +; 3985 : if (!stbi__zbuild_huffman(&a->z_length, stbi__zdefault_length, STBI__ZNSYMS)) return 0; 000c1 48 8b 85 20 01 00 00 mov rax, QWORD PTR a$[rbp] @@ -20112,7 +20132,7 @@ $LN10@stbi__pars: 000e7 eb 63 jmp SHORT $LN1@stbi__pars $LN14@stbi__pars: -; 3973 : if (!stbi__zbuild_huffman(&a->z_distance, stbi__zdefault_distance, 32)) return 0; +; 3986 : if (!stbi__zbuild_huffman(&a->z_distance, stbi__zdefault_distance, 32)) return 0; 000e9 48 8b 85 20 01 00 00 mov rax, QWORD PTR a$[rbp] @@ -20130,13 +20150,13 @@ $LN14@stbi__pars: 00111 eb 39 jmp SHORT $LN1@stbi__pars $LN15@stbi__pars: -; 3974 : } +; 3987 : } 00113 eb 14 jmp SHORT $LN13@stbi__pars $LN12@stbi__pars: -; 3975 : else { -; 3976 : if (!stbi__compute_huffman_codes(a)) return 0; +; 3988 : else { +; 3989 : if (!stbi__compute_huffman_codes(a)) return 0; 00115 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR a$[rbp] @@ -20148,8 +20168,8 @@ $LN12@stbi__pars: $LN16@stbi__pars: $LN13@stbi__pars: -; 3977 : } -; 3978 : if (!stbi__parse_huffman_block(a)) return 0; +; 3990 : } +; 3991 : if (!stbi__parse_huffman_block(a)) return 0; 00129 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR a$[rbp] @@ -20162,19 +20182,19 @@ $LN17@stbi__pars: $LN11@stbi__pars: $LN8@stbi__pars: -; 3979 : } -; 3980 : } while (!final); +; 3992 : } +; 3993 : } while (!final); 0013d 83 7d 04 00 cmp DWORD PTR final$[rbp], 0 00141 0f 84 18 ff ff ff je $LN4@stbi__pars -; 3981 : return 1; +; 3994 : return 1; 00147 b8 01 00 00 00 mov eax, 1 $LN1@stbi__pars: -; 3982 : } +; 3995 : } 0014c 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] @@ -20193,7 +20213,7 @@ flg$ = 68 a$ = 320 stbi__parse_zlib_header PROC ; COMDAT -; 3911 : { +; 3924 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -20205,7 +20225,7 @@ stbi__parse_zlib_header PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 3912 : int cmf = stbi__zget8(a); +; 3925 : int cmf = stbi__zget8(a); 0001f 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR a$[rbp] @@ -20213,14 +20233,14 @@ stbi__parse_zlib_header PROC ; COMDAT 0002b 0f b6 c0 movzx eax, al 0002e 89 45 04 mov DWORD PTR cmf$[rbp], eax -; 3913 : int cm = cmf & 15; +; 3926 : int cm = cmf & 15; 00031 8b 45 04 mov eax, DWORD PTR cmf$[rbp] 00034 83 e0 0f and eax, 15 00037 89 45 24 mov DWORD PTR cm$[rbp], eax -; 3914 : /* int cinfo = cmf >> 4; */ -; 3915 : int flg = stbi__zget8(a); +; 3927 : /* int cinfo = cmf >> 4; */ +; 3928 : int flg = stbi__zget8(a); 0003a 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR a$[rbp] @@ -20228,7 +20248,7 @@ stbi__parse_zlib_header PROC ; COMDAT 00046 0f b6 c0 movzx eax, al 00049 89 45 44 mov DWORD PTR flg$[rbp], eax -; 3916 : if (stbi__zeof(a)) return stbi__err("bad zlib header", "Corrupt PNG"); // zlib spec +; 3929 : if (stbi__zeof(a)) return stbi__err("bad zlib header", "Corrupt PNG"); // zlib spec 0004c 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR a$[rbp] @@ -20241,7 +20261,7 @@ stbi__parse_zlib_header PROC ; COMDAT 00068 eb 57 jmp SHORT $LN1@stbi__pars $LN2@stbi__pars: -; 3917 : if ((cmf * 256 + flg) % 31 != 0) return stbi__err("bad zlib header", "Corrupt PNG"); // zlib spec +; 3930 : if ((cmf * 256 + flg) % 31 != 0) return stbi__err("bad zlib header", "Corrupt PNG"); // zlib spec 0006a 69 45 04 00 01 00 00 imul eax, DWORD PTR cmf$[rbp], 256 ; 00000100H @@ -20258,7 +20278,7 @@ $LN2@stbi__pars: 0008e eb 31 jmp SHORT $LN1@stbi__pars $LN3@stbi__pars: -; 3918 : if (flg & 32) return stbi__err("no preset dict", "Corrupt PNG"); // preset dictionary not allowed in png +; 3931 : if (flg & 32) return stbi__err("no preset dict", "Corrupt PNG"); // preset dictionary not allowed in png 00090 8b 45 44 mov eax, DWORD PTR flg$[rbp] 00093 83 e0 20 and eax, 32 ; 00000020H @@ -20270,7 +20290,7 @@ $LN3@stbi__pars: 000a6 eb 19 jmp SHORT $LN1@stbi__pars $LN4@stbi__pars: -; 3919 : if (cm != 8) return stbi__err("bad compression", "Corrupt PNG"); // DEFLATE required for png +; 3932 : if (cm != 8) return stbi__err("bad compression", "Corrupt PNG"); // DEFLATE required for png 000a8 83 7d 24 08 cmp DWORD PTR cm$[rbp], 8 000ac 74 0e je SHORT $LN5@stbi__pars @@ -20280,13 +20300,13 @@ $LN4@stbi__pars: 000ba eb 05 jmp SHORT $LN1@stbi__pars $LN5@stbi__pars: -; 3920 : // window = 1 << (8 + cinfo)... but who cares, we fully buffer output -; 3921 : return 1; +; 3933 : // window = 1 << (8 + cinfo)... but who cares, we fully buffer output +; 3934 : return 1; 000bc b8 01 00 00 00 mov eax, 1 $LN1@stbi__pars: -; 3922 : } +; 3935 : } 000c1 48 8d a5 28 01 00 00 lea rsp, QWORD PTR [rbp+296] @@ -20306,7 +20326,7 @@ k$ = 100 a$ = 352 stbi__parse_uncompressed_block PROC ; COMDAT -; 3882 : { +; 3895 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -20324,9 +20344,9 @@ stbi__parse_uncompressed_block PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00033 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 3883 : stbi_uc header[4]; -; 3884 : int len, nlen, k; -; 3885 : if (a->num_bits & 7) +; 3896 : stbi_uc header[4]; +; 3897 : int len, nlen, k; +; 3898 : if (a->num_bits & 7) 00038 48 8b 85 60 01 00 00 mov rax, QWORD PTR a$[rbp] @@ -20335,7 +20355,7 @@ stbi__parse_uncompressed_block PROC ; COMDAT 00045 85 c0 test eax, eax 00047 74 1b je SHORT $LN6@stbi__pars -; 3886 : stbi__zreceive(a, a->num_bits & 7); // discard +; 3899 : stbi__zreceive(a, a->num_bits & 7); // discard 00049 48 8b 85 60 01 00 00 mov rax, QWORD PTR a$[rbp] @@ -20347,21 +20367,21 @@ stbi__parse_uncompressed_block PROC ; COMDAT 0005f e8 00 00 00 00 call stbi__zreceive $LN6@stbi__pars: -; 3887 : // drain the bit-packed data into header -; 3888 : k = 0; +; 3900 : // drain the bit-packed data into header +; 3901 : k = 0; 00064 c7 45 64 00 00 00 00 mov DWORD PTR k$[rbp], 0 $LN2@stbi__pars: -; 3889 : while (a->num_bits > 0) { +; 3902 : while (a->num_bits > 0) { 0006b 48 8b 85 60 01 00 00 mov rax, QWORD PTR a$[rbp] 00072 83 78 10 00 cmp DWORD PTR [rax+16], 0 00076 7e 4f jle SHORT $LN3@stbi__pars -; 3890 : header[k++] = (stbi_uc)(a->code_buffer & 255); // suppress MSVC run-time check +; 3903 : header[k++] = (stbi_uc)(a->code_buffer & 255); // suppress MSVC run-time check 00078 48 8b 85 60 01 00 00 mov rax, QWORD PTR a$[rbp] @@ -20373,7 +20393,7 @@ $LN2@stbi__pars: 00092 ff c0 inc eax 00094 89 45 64 mov DWORD PTR k$[rbp], eax -; 3891 : a->code_buffer >>= 8; +; 3904 : a->code_buffer >>= 8; 00097 48 8b 85 60 01 00 00 mov rax, QWORD PTR a$[rbp] @@ -20383,7 +20403,7 @@ $LN2@stbi__pars: 00 00 mov rcx, QWORD PTR a$[rbp] 000ab 89 41 14 mov DWORD PTR [rcx+20], eax -; 3892 : a->num_bits -= 8; +; 3905 : a->num_bits -= 8; 000ae 48 8b 85 60 01 00 00 mov rax, QWORD PTR a$[rbp] @@ -20393,12 +20413,12 @@ $LN2@stbi__pars: 00 00 mov rcx, QWORD PTR a$[rbp] 000c2 89 41 10 mov DWORD PTR [rcx+16], eax -; 3893 : } +; 3906 : } 000c5 eb a4 jmp SHORT $LN2@stbi__pars $LN3@stbi__pars: -; 3894 : if (a->num_bits < 0) return stbi__err("zlib corrupt", "Corrupt PNG"); +; 3907 : if (a->num_bits < 0) return stbi__err("zlib corrupt", "Corrupt PNG"); 000c7 48 8b 85 60 01 00 00 mov rax, QWORD PTR a$[rbp] @@ -20411,13 +20431,13 @@ $LN3@stbi__pars: $LN7@stbi__pars: $LN4@stbi__pars: -; 3895 : // now fill header the normal way -; 3896 : while (k < 4) +; 3908 : // now fill header the normal way +; 3909 : while (k < 4) 000e5 83 7d 64 04 cmp DWORD PTR k$[rbp], 4 000e9 7d 1e jge SHORT $LN5@stbi__pars -; 3897 : header[k++] = stbi__zget8(a); +; 3910 : header[k++] = stbi__zget8(a); 000eb 48 8b 8d 60 01 00 00 mov rcx, QWORD PTR a$[rbp] @@ -20430,7 +20450,7 @@ $LN4@stbi__pars: 00107 eb dc jmp SHORT $LN4@stbi__pars $LN5@stbi__pars: -; 3898 : len = header[1] * 256 + header[0]; +; 3911 : len = header[1] * 256 + header[0]; 00109 b8 01 00 00 00 mov eax, 1 0010e 48 6b c0 01 imul rax, rax, 1 @@ -20443,7 +20463,7 @@ $LN5@stbi__pars: 0012b 03 c1 add eax, ecx 0012d 89 45 24 mov DWORD PTR len$[rbp], eax -; 3899 : nlen = header[3] * 256 + header[2]; +; 3912 : nlen = header[3] * 256 + header[2]; 00130 b8 01 00 00 00 mov eax, 1 00135 48 6b c0 03 imul rax, rax, 3 @@ -20456,7 +20476,7 @@ $LN5@stbi__pars: 00152 03 c1 add eax, ecx 00154 89 45 44 mov DWORD PTR nlen$[rbp], eax -; 3900 : if (nlen != (len ^ 0xffff)) return stbi__err("zlib corrupt", "Corrupt PNG"); +; 3913 : if (nlen != (len ^ 0xffff)) return stbi__err("zlib corrupt", "Corrupt PNG"); 00157 8b 45 24 mov eax, DWORD PTR len$[rbp] 0015a 35 ff ff 00 00 xor eax, 65535 ; 0000ffffH @@ -20468,7 +20488,7 @@ $LN5@stbi__pars: 00170 e9 c3 00 00 00 jmp $LN1@stbi__pars $LN8@stbi__pars: -; 3901 : if (a->zbuffer + len > a->zbuffer_end) return stbi__err("read past buffer", "Corrupt PNG"); +; 3914 : if (a->zbuffer + len > a->zbuffer_end) return stbi__err("read past buffer", "Corrupt PNG"); 00175 48 63 45 24 movsxd rax, DWORD PTR len$[rbp] 00179 48 8b 8d 60 01 @@ -20484,7 +20504,7 @@ $LN8@stbi__pars: 0019c e9 97 00 00 00 jmp $LN1@stbi__pars $LN9@stbi__pars: -; 3902 : if (a->zout + len > a->zout_end) +; 3915 : if (a->zout + len > a->zout_end) 001a1 48 63 45 24 movsxd rax, DWORD PTR len$[rbp] 001a5 48 8b 8d 60 01 @@ -20495,7 +20515,7 @@ $LN9@stbi__pars: 001b7 48 3b 41 28 cmp rax, QWORD PTR [rcx+40] 001bb 76 23 jbe SHORT $LN10@stbi__pars -; 3903 : if (!stbi__zexpand(a, a->zout, len)) return 0; +; 3916 : if (!stbi__zexpand(a, a->zout, len)) return 0; 001bd 44 8b 45 24 mov r8d, DWORD PTR len$[rbp] 001c1 48 8b 85 60 01 @@ -20511,7 +20531,7 @@ $LN9@stbi__pars: $LN11@stbi__pars: $LN10@stbi__pars: -; 3904 : memcpy(a->zout, a->zbuffer, len); +; 3917 : memcpy(a->zout, a->zbuffer, len); 001e0 48 63 45 24 movsxd rax, DWORD PTR len$[rbp] 001e4 4c 8b c0 mov r8, rax @@ -20523,7 +20543,7 @@ $LN10@stbi__pars: 001f8 48 8b 48 18 mov rcx, QWORD PTR [rax+24] 001fc e8 00 00 00 00 call memcpy -; 3905 : a->zbuffer += len; +; 3918 : a->zbuffer += len; 00201 48 63 45 24 movsxd rax, DWORD PTR len$[rbp] 00205 48 8b 8d 60 01 @@ -20533,7 +20553,7 @@ $LN10@stbi__pars: 00 00 mov rcx, QWORD PTR a$[rbp] 00216 48 89 01 mov QWORD PTR [rcx], rax -; 3906 : a->zout += len; +; 3919 : a->zout += len; 00219 48 63 45 24 movsxd rax, DWORD PTR len$[rbp] 0021d 48 8b 8d 60 01 @@ -20543,12 +20563,12 @@ $LN10@stbi__pars: 00 00 mov rcx, QWORD PTR a$[rbp] 0022f 48 89 41 18 mov QWORD PTR [rcx+24], rax -; 3907 : return 1; +; 3920 : return 1; 00233 b8 01 00 00 00 mov eax, 1 $LN1@stbi__pars: -; 3908 : } +; 3921 : } 00238 48 8b f8 mov rdi, rax 0023b 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] @@ -20584,7 +20604,7 @@ __$ArrayPad$ = 4048 a$ = 4096 stbi__compute_huffman_codes PROC ; COMDAT -; 3829 : { +; 3842 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -20608,13 +20628,13 @@ stbi__compute_huffman_codes PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0004a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 3830 : static const stbi_uc length_dezigzag[19] = { 16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15 }; -; 3831 : stbi__zhuffman z_codelength; -; 3832 : stbi_uc lencodes[286 + 32 + 137];//padding for maximum single op -; 3833 : stbi_uc codelength_sizes[19]; -; 3834 : int i, n; -; 3835 : -; 3836 : int hlit = stbi__zreceive(a, 5) + 257; +; 3843 : static const stbi_uc length_dezigzag[19] = { 16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15 }; +; 3844 : stbi__zhuffman z_codelength; +; 3845 : stbi_uc lencodes[286 + 32 + 137];//padding for maximum single op +; 3846 : stbi_uc codelength_sizes[19]; +; 3847 : int i, n; +; 3848 : +; 3849 : int hlit = stbi__zreceive(a, 5) + 257; 0004f ba 05 00 00 00 mov edx, 5 00054 48 8b 8d 00 10 @@ -20624,7 +20644,7 @@ stbi__compute_huffman_codes PROC ; COMDAT 00065 89 85 74 0a 00 00 mov DWORD PTR hlit$[rbp], eax -; 3837 : int hdist = stbi__zreceive(a, 5) + 1; +; 3850 : int hdist = stbi__zreceive(a, 5) + 1; 0006b ba 05 00 00 00 mov edx, 5 00070 48 8b 8d 00 10 @@ -20634,7 +20654,7 @@ stbi__compute_huffman_codes PROC ; COMDAT 0007e 89 85 94 0a 00 00 mov DWORD PTR hdist$[rbp], eax -; 3838 : int hclen = stbi__zreceive(a, 4) + 4; +; 3851 : int hclen = stbi__zreceive(a, 4) + 4; 00084 ba 04 00 00 00 mov edx, 4 00089 48 8b 8d 00 10 @@ -20644,7 +20664,7 @@ stbi__compute_huffman_codes PROC ; COMDAT 00098 89 85 b4 0a 00 00 mov DWORD PTR hclen$[rbp], eax -; 3839 : int ntot = hlit + hdist; +; 3852 : int ntot = hlit + hdist; 0009e 8b 85 94 0a 00 00 mov eax, DWORD PTR hdist$[rbp] @@ -20655,8 +20675,8 @@ stbi__compute_huffman_codes PROC ; COMDAT 000ae 89 85 d4 0a 00 00 mov DWORD PTR ntot$[rbp], eax -; 3840 : -; 3841 : memset(codelength_sizes, 0, sizeof(codelength_sizes)); +; 3853 : +; 3854 : memset(codelength_sizes, 0, sizeof(codelength_sizes)); 000b4 41 b8 13 00 00 00 mov r8d, 19 @@ -20665,7 +20685,7 @@ stbi__compute_huffman_codes PROC ; COMDAT 00 00 lea rcx, QWORD PTR codelength_sizes$[rbp] 000c3 e8 00 00 00 00 call memset -; 3842 : for (i = 0; i < hclen; ++i) { +; 3855 : for (i = 0; i < hclen; ++i) { 000c8 c7 85 34 0a 00 00 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -20683,7 +20703,7 @@ $LN4@stbi__comp: 00 cmp DWORD PTR i$[rbp], eax 000ee 7d 39 jge SHORT $LN3@stbi__comp -; 3843 : int s = stbi__zreceive(a, 3); +; 3856 : int s = stbi__zreceive(a, 3); 000f0 ba 03 00 00 00 mov edx, 3 000f5 48 8b 8d 00 10 @@ -20692,7 +20712,7 @@ $LN4@stbi__comp: 00101 89 85 f4 0a 00 00 mov DWORD PTR s$6[rbp], eax -; 3844 : codelength_sizes[length_dezigzag[i]] = (stbi_uc)s; +; 3857 : codelength_sizes[length_dezigzag[i]] = (stbi_uc)s; 00107 48 63 85 34 0a 00 00 movsxd rax, DWORD PTR i$[rbp] @@ -20704,12 +20724,12 @@ $LN4@stbi__comp: 00120 88 8c 05 08 0a 00 00 mov BYTE PTR codelength_sizes$[rbp+rax], cl -; 3845 : } +; 3858 : } 00127 eb ab jmp SHORT $LN2@stbi__comp $LN3@stbi__comp: -; 3846 : if (!stbi__zbuild_huffman(&z_codelength, codelength_sizes, 19)) return 0; +; 3859 : if (!stbi__zbuild_huffman(&z_codelength, codelength_sizes, 19)) return 0; 00129 41 b8 13 00 00 00 mov r8d, 19 @@ -20723,14 +20743,14 @@ $LN3@stbi__comp: 00145 e9 39 02 00 00 jmp $LN1@stbi__comp $LN7@stbi__comp: -; 3847 : -; 3848 : n = 0; +; 3860 : +; 3861 : n = 0; 0014a c7 85 54 0a 00 00 00 00 00 00 mov DWORD PTR n$[rbp], 0 $LN5@stbi__comp: -; 3849 : while (n < ntot) { +; 3862 : while (n < ntot) { 00154 8b 85 d4 0a 00 00 mov eax, DWORD PTR ntot$[rbp] @@ -20739,7 +20759,7 @@ $LN5@stbi__comp: 00160 0f 8d 9f 01 00 00 jge $LN6@stbi__comp -; 3850 : int c = stbi__zhuffman_decode(a, &z_codelength); +; 3863 : int c = stbi__zhuffman_decode(a, &z_codelength); 00166 48 8d 55 10 lea rdx, QWORD PTR z_codelength$[rbp] 0016a 48 8b 8d 00 10 @@ -20748,7 +20768,7 @@ $LN5@stbi__comp: 00176 89 85 14 0b 00 00 mov DWORD PTR c$7[rbp], eax -; 3851 : if (c < 0 || c >= 19) return stbi__err("bad codelengths", "Corrupt PNG"); +; 3864 : if (c < 0 || c >= 19) return stbi__err("bad codelengths", "Corrupt PNG"); 0017c 83 bd 14 0b 00 00 00 cmp DWORD PTR c$7[rbp], 0 @@ -20763,13 +20783,13 @@ $LN9@stbi__comp: 0019a e9 e4 01 00 00 jmp $LN1@stbi__comp $LN8@stbi__comp: -; 3852 : if (c < 16) +; 3865 : if (c < 16) 0019f 83 bd 14 0b 00 00 10 cmp DWORD PTR c$7[rbp], 16 001a6 7d 28 jge SHORT $LN10@stbi__comp -; 3853 : lencodes[n++] = (stbi_uc)c; +; 3866 : lencodes[n++] = (stbi_uc)c; 001a8 48 63 85 54 0a 00 00 movsxd rax, DWORD PTR n$[rbp] @@ -20785,19 +20805,19 @@ $LN8@stbi__comp: 001cb e9 30 01 00 00 jmp $LN11@stbi__comp $LN10@stbi__comp: -; 3854 : else { -; 3855 : stbi_uc fill = 0; +; 3867 : else { +; 3868 : stbi_uc fill = 0; 001d0 c6 85 34 0b 00 00 00 mov BYTE PTR fill$8[rbp], 0 -; 3856 : if (c == 16) { +; 3869 : if (c == 16) { 001d7 83 bd 14 0b 00 00 10 cmp DWORD PTR c$7[rbp], 16 001de 75 4e jne SHORT $LN12@stbi__comp -; 3857 : c = stbi__zreceive(a, 2) + 3; +; 3870 : c = stbi__zreceive(a, 2) + 3; 001e0 ba 02 00 00 00 mov edx, 2 001e5 48 8b 8d 00 10 @@ -20807,7 +20827,7 @@ $LN10@stbi__comp: 001f4 89 85 14 0b 00 00 mov DWORD PTR c$7[rbp], eax -; 3858 : if (n == 0) return stbi__err("bad codelengths", "Corrupt PNG"); +; 3871 : if (n == 0) return stbi__err("bad codelengths", "Corrupt PNG"); 001fa 83 bd 54 0a 00 00 00 cmp DWORD PTR n$[rbp], 0 @@ -20818,7 +20838,7 @@ $LN10@stbi__comp: 0020f e9 6f 01 00 00 jmp $LN1@stbi__comp $LN14@stbi__comp: -; 3859 : fill = lencodes[n - 1]; +; 3872 : fill = lencodes[n - 1]; 00214 8b 85 54 0a 00 00 mov eax, DWORD PTR n$[rbp] @@ -20829,18 +20849,18 @@ $LN14@stbi__comp: 00226 88 85 34 0b 00 00 mov BYTE PTR fill$8[rbp], al -; 3860 : } +; 3873 : } 0022c eb 5b jmp SHORT $LN13@stbi__comp $LN12@stbi__comp: -; 3861 : else if (c == 17) { +; 3874 : else if (c == 17) { 0022e 83 bd 14 0b 00 00 11 cmp DWORD PTR c$7[rbp], 17 00235 75 1c jne SHORT $LN15@stbi__comp -; 3862 : c = stbi__zreceive(a, 3) + 3; +; 3875 : c = stbi__zreceive(a, 3) + 3; 00237 ba 03 00 00 00 mov edx, 3 0023c 48 8b 8d 00 10 @@ -20850,18 +20870,18 @@ $LN12@stbi__comp: 0024b 89 85 14 0b 00 00 mov DWORD PTR c$7[rbp], eax -; 3863 : } +; 3876 : } 00251 eb 36 jmp SHORT $LN16@stbi__comp $LN15@stbi__comp: -; 3864 : else if (c == 18) { +; 3877 : else if (c == 18) { 00253 83 bd 14 0b 00 00 12 cmp DWORD PTR c$7[rbp], 18 0025a 75 1c jne SHORT $LN17@stbi__comp -; 3865 : c = stbi__zreceive(a, 7) + 11; +; 3878 : c = stbi__zreceive(a, 7) + 11; 0025c ba 07 00 00 00 mov edx, 7 00261 48 8b 8d 00 10 @@ -20871,13 +20891,13 @@ $LN15@stbi__comp: 00270 89 85 14 0b 00 00 mov DWORD PTR c$7[rbp], eax -; 3866 : } +; 3879 : } 00276 eb 11 jmp SHORT $LN18@stbi__comp $LN17@stbi__comp: -; 3867 : else { -; 3868 : return stbi__err("bad codelengths", "Corrupt PNG"); +; 3880 : else { +; 3881 : return stbi__err("bad codelengths", "Corrupt PNG"); 00278 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0BA@MDNKOBMC@bad?5codelengths@ @@ -20887,8 +20907,8 @@ $LN18@stbi__comp: $LN16@stbi__comp: $LN13@stbi__comp: -; 3869 : } -; 3870 : if (ntot - n < c) return stbi__err("bad codelengths", "Corrupt PNG"); +; 3882 : } +; 3883 : if (ntot - n < c) return stbi__err("bad codelengths", "Corrupt PNG"); 00289 8b 85 54 0a 00 00 mov eax, DWORD PTR n$[rbp] @@ -20905,7 +20925,7 @@ $LN13@stbi__comp: 002ad e9 d1 00 00 00 jmp $LN1@stbi__comp $LN19@stbi__comp: -; 3871 : memset(lencodes + n, fill, c); +; 3884 : memset(lencodes + n, fill, c); 002b2 48 63 85 14 0b 00 00 movsxd rax, DWORD PTR c$7[rbp] @@ -20924,7 +20944,7 @@ $LN19@stbi__comp: 002e2 48 8b c8 mov rcx, rax 002e5 e8 00 00 00 00 call memset -; 3872 : n += c; +; 3885 : n += c; 002ea 8b 85 14 0b 00 00 mov eax, DWORD PTR c$7[rbp] @@ -20936,13 +20956,13 @@ $LN19@stbi__comp: 00 mov DWORD PTR n$[rbp], eax $LN11@stbi__comp: -; 3873 : } -; 3874 : } +; 3886 : } +; 3887 : } 00300 e9 4f fe ff ff jmp $LN5@stbi__comp $LN6@stbi__comp: -; 3875 : if (n != ntot) return stbi__err("bad codelengths", "Corrupt PNG"); +; 3888 : if (n != ntot) return stbi__err("bad codelengths", "Corrupt PNG"); 00305 8b 85 d4 0a 00 00 mov eax, DWORD PTR ntot$[rbp] @@ -20955,7 +20975,7 @@ $LN6@stbi__comp: 0031f eb 62 jmp SHORT $LN1@stbi__comp $LN20@stbi__comp: -; 3876 : if (!stbi__zbuild_huffman(&a->z_length, lencodes, hlit)) return 0; +; 3889 : if (!stbi__zbuild_huffman(&a->z_length, lencodes, hlit)) return 0; 00321 48 8b 85 00 10 00 00 mov rax, QWORD PTR a$[rbp] @@ -20972,7 +20992,7 @@ $LN20@stbi__comp: 00348 eb 39 jmp SHORT $LN1@stbi__comp $LN21@stbi__comp: -; 3877 : if (!stbi__zbuild_huffman(&a->z_distance, lencodes + hlit, hdist)) return 0; +; 3890 : if (!stbi__zbuild_huffman(&a->z_distance, lencodes + hlit, hdist)) return 0; 0034a 48 63 85 74 0a 00 00 movsxd rax, DWORD PTR hlit$[rbp] @@ -20992,12 +21012,12 @@ $LN21@stbi__comp: 0037c eb 05 jmp SHORT $LN1@stbi__comp $LN22@stbi__comp: -; 3878 : return 1; +; 3891 : return 1; 0037e b8 01 00 00 00 mov eax, 1 $LN1@stbi__comp: -; 3879 : } +; 3892 : } 00383 48 8b f8 mov rdi, rax 00386 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] @@ -21029,7 +21049,7 @@ v$5 = 164 a$ = 416 stbi__parse_huffman_block PROC ; COMDAT -; 3784 : { +; 3797 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -21041,7 +21061,7 @@ stbi__parse_huffman_block PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 3785 : char* zout = a->zout; +; 3798 : char* zout = a->zout; 0001f 48 8b 85 a0 01 00 00 mov rax, QWORD PTR a$[rbp] @@ -21049,8 +21069,8 @@ stbi__parse_huffman_block PROC ; COMDAT 0002a 48 89 45 08 mov QWORD PTR zout$[rbp], rax $LN2@stbi__pars: -; 3786 : for (;;) { -; 3787 : int z = stbi__zhuffman_decode(a, &a->z_length); +; 3799 : for (;;) { +; 3800 : int z = stbi__zhuffman_decode(a, &a->z_length); 0002e 48 8b 85 a0 01 00 00 mov rax, QWORD PTR a$[rbp] @@ -21061,13 +21081,13 @@ $LN2@stbi__pars: 00043 e8 00 00 00 00 call stbi__zhuffman_decode 00048 89 45 24 mov DWORD PTR z$1[rbp], eax -; 3788 : if (z < 256) { +; 3801 : if (z < 256) { 0004b 81 7d 24 00 01 00 00 cmp DWORD PTR z$1[rbp], 256 ; 00000100H 00052 7d 72 jge SHORT $LN11@stbi__pars -; 3789 : if (z < 0) return stbi__err("bad huffman code", "Corrupt PNG"); // error in huffman codes +; 3802 : if (z < 0) return stbi__err("bad huffman code", "Corrupt PNG"); // error in huffman codes 00054 83 7d 24 00 cmp DWORD PTR z$1[rbp], 0 00058 7d 11 jge SHORT $LN13@stbi__pars @@ -21077,7 +21097,7 @@ $LN2@stbi__pars: 00066 e9 83 02 00 00 jmp $LN1@stbi__pars $LN13@stbi__pars: -; 3790 : if (zout >= a->zout_end) { +; 3803 : if (zout >= a->zout_end) { 0006b 48 8b 85 a0 01 00 00 mov rax, QWORD PTR a$[rbp] @@ -21085,7 +21105,7 @@ $LN13@stbi__pars: 00076 48 39 45 08 cmp QWORD PTR zout$[rbp], rax 0007a 72 30 jb SHORT $LN14@stbi__pars -; 3791 : if (!stbi__zexpand(a, zout, 1)) return 0; +; 3804 : if (!stbi__zexpand(a, zout, 1)) return 0; 0007c 41 b8 01 00 00 00 mov r8d, 1 @@ -21099,7 +21119,7 @@ $LN13@stbi__pars: 00098 e9 51 02 00 00 jmp $LN1@stbi__pars $LN15@stbi__pars: -; 3792 : zout = a->zout; +; 3805 : zout = a->zout; 0009d 48 8b 85 a0 01 00 00 mov rax, QWORD PTR a$[rbp] @@ -21107,8 +21127,8 @@ $LN15@stbi__pars: 000a8 48 89 45 08 mov QWORD PTR zout$[rbp], rax $LN14@stbi__pars: -; 3793 : } -; 3794 : *zout++ = (char)z; +; 3806 : } +; 3807 : *zout++ = (char)z; 000ac 48 8b 45 08 mov rax, QWORD PTR zout$[rbp] 000b0 0f b6 4d 24 movzx ecx, BYTE PTR z$1[rbp] @@ -21117,35 +21137,35 @@ $LN14@stbi__pars: 000ba 48 ff c0 inc rax 000bd 48 89 45 08 mov QWORD PTR zout$[rbp], rax -; 3795 : } +; 3808 : } 000c1 e9 23 02 00 00 jmp $LN12@stbi__pars $LN11@stbi__pars: -; 3796 : else { -; 3797 : stbi_uc* p; -; 3798 : int len, dist; -; 3799 : if (z == 256) { +; 3809 : else { +; 3810 : stbi_uc* p; +; 3811 : int len, dist; +; 3812 : if (z == 256) { 000c6 81 7d 24 00 01 00 00 cmp DWORD PTR z$1[rbp], 256 ; 00000100H 000cd 75 19 jne SHORT $LN16@stbi__pars -; 3800 : a->zout = zout; +; 3813 : a->zout = zout; 000cf 48 8b 85 a0 01 00 00 mov rax, QWORD PTR a$[rbp] 000d6 48 8b 4d 08 mov rcx, QWORD PTR zout$[rbp] 000da 48 89 48 18 mov QWORD PTR [rax+24], rcx -; 3801 : return 1; +; 3814 : return 1; 000de b8 01 00 00 00 mov eax, 1 000e3 e9 06 02 00 00 jmp $LN1@stbi__pars $LN16@stbi__pars: -; 3802 : } -; 3803 : if (z >= 286) return stbi__err("bad huffman code", "Corrupt PNG"); // per DEFLATE, length codes 286 and 287 must not appear in compressed data +; 3815 : } +; 3816 : if (z >= 286) return stbi__err("bad huffman code", "Corrupt PNG"); // per DEFLATE, length codes 286 and 287 must not appear in compressed data 000e8 81 7d 24 1e 01 00 00 cmp DWORD PTR z$1[rbp], 286 ; 0000011eH @@ -21156,13 +21176,13 @@ $LN16@stbi__pars: 000fd e9 ec 01 00 00 jmp $LN1@stbi__pars $LN17@stbi__pars: -; 3804 : z -= 257; +; 3817 : z -= 257; 00102 8b 45 24 mov eax, DWORD PTR z$1[rbp] 00105 2d 01 01 00 00 sub eax, 257 ; 00000101H 0010a 89 45 24 mov DWORD PTR z$1[rbp], eax -; 3805 : len = stbi__zlength_base[z]; +; 3818 : len = stbi__zlength_base[z]; 0010d 48 63 45 24 movsxd rax, DWORD PTR z$1[rbp] 00111 48 8d 0d 00 00 @@ -21170,7 +21190,7 @@ $LN17@stbi__pars: 00118 8b 04 81 mov eax, DWORD PTR [rcx+rax*4] 0011b 89 45 64 mov DWORD PTR len$3[rbp], eax -; 3806 : if (stbi__zlength_extra[z]) len += stbi__zreceive(a, stbi__zlength_extra[z]); +; 3819 : if (stbi__zlength_extra[z]) len += stbi__zreceive(a, stbi__zlength_extra[z]); 0011e 48 63 45 24 movsxd rax, DWORD PTR z$1[rbp] 00122 48 8d 0d 00 00 @@ -21190,7 +21210,7 @@ $LN17@stbi__pars: 00150 89 45 64 mov DWORD PTR len$3[rbp], eax $LN18@stbi__pars: -; 3807 : z = stbi__zhuffman_decode(a, &a->z_distance); +; 3820 : z = stbi__zhuffman_decode(a, &a->z_distance); 00153 48 8b 85 a0 01 00 00 mov rax, QWORD PTR a$[rbp] @@ -21202,7 +21222,7 @@ $LN18@stbi__pars: 0016a e8 00 00 00 00 call stbi__zhuffman_decode 0016f 89 45 24 mov DWORD PTR z$1[rbp], eax -; 3808 : if (z < 0 || z >= 30) return stbi__err("bad huffman code", "Corrupt PNG"); // per DEFLATE, distance codes 30 and 31 must not appear in compressed data +; 3821 : if (z < 0 || z >= 30) return stbi__err("bad huffman code", "Corrupt PNG"); // per DEFLATE, distance codes 30 and 31 must not appear in compressed data 00172 83 7d 24 00 cmp DWORD PTR z$1[rbp], 0 00176 7c 06 jl SHORT $LN20@stbi__pars @@ -21215,7 +21235,7 @@ $LN20@stbi__pars: 0018a e9 5f 01 00 00 jmp $LN1@stbi__pars $LN19@stbi__pars: -; 3809 : dist = stbi__zdist_base[z]; +; 3822 : dist = stbi__zdist_base[z]; 0018f 48 63 45 24 movsxd rax, DWORD PTR z$1[rbp] 00193 48 8d 0d 00 00 @@ -21224,7 +21244,7 @@ $LN19@stbi__pars: 0019d 89 85 84 00 00 00 mov DWORD PTR dist$4[rbp], eax -; 3810 : if (stbi__zdist_extra[z]) dist += stbi__zreceive(a, stbi__zdist_extra[z]); +; 3823 : if (stbi__zdist_extra[z]) dist += stbi__zreceive(a, stbi__zdist_extra[z]); 001a3 48 63 45 24 movsxd rax, DWORD PTR z$1[rbp] 001a7 48 8d 0d 00 00 @@ -21246,7 +21266,7 @@ $LN19@stbi__pars: 00 mov DWORD PTR dist$4[rbp], eax $LN21@stbi__pars: -; 3811 : if (zout - a->zout_start < dist) return stbi__err("bad dist", "Corrupt PNG"); +; 3824 : if (zout - a->zout_start < dist) return stbi__err("bad dist", "Corrupt PNG"); 001de 48 8b 85 a0 01 00 00 mov rax, QWORD PTR a$[rbp] @@ -21264,7 +21284,7 @@ $LN21@stbi__pars: 0020b e9 de 00 00 00 jmp $LN1@stbi__pars $LN22@stbi__pars: -; 3812 : if (zout + len > a->zout_end) { +; 3825 : if (zout + len > a->zout_end) { 00210 48 63 45 64 movsxd rax, DWORD PTR len$3[rbp] 00214 48 8b 4d 08 mov rcx, QWORD PTR zout$[rbp] @@ -21275,7 +21295,7 @@ $LN22@stbi__pars: 00225 48 3b 41 28 cmp rax, QWORD PTR [rcx+40] 00229 76 2e jbe SHORT $LN23@stbi__pars -; 3813 : if (!stbi__zexpand(a, zout, len)) return 0; +; 3826 : if (!stbi__zexpand(a, zout, len)) return 0; 0022b 44 8b 45 64 mov r8d, DWORD PTR len$3[rbp] 0022f 48 8b 55 08 mov rdx, QWORD PTR zout$[rbp] @@ -21288,7 +21308,7 @@ $LN22@stbi__pars: 00245 e9 a4 00 00 00 jmp $LN1@stbi__pars $LN24@stbi__pars: -; 3814 : zout = a->zout; +; 3827 : zout = a->zout; 0024a 48 8b 85 a0 01 00 00 mov rax, QWORD PTR a$[rbp] @@ -21296,8 +21316,8 @@ $LN24@stbi__pars: 00255 48 89 45 08 mov QWORD PTR zout$[rbp], rax $LN23@stbi__pars: -; 3815 : } -; 3816 : p = (stbi_uc*)(zout - dist); +; 3828 : } +; 3829 : p = (stbi_uc*)(zout - dist); 00259 48 63 85 84 00 00 00 movsxd rax, DWORD PTR dist$4[rbp] @@ -21306,20 +21326,20 @@ $LN23@stbi__pars: 00267 48 8b c1 mov rax, rcx 0026a 48 89 45 48 mov QWORD PTR p$2[rbp], rax -; 3817 : if (dist == 1) { // run of one byte; common in images. +; 3830 : if (dist == 1) { // run of one byte; common in images. 0026e 83 bd 84 00 00 00 01 cmp DWORD PTR dist$4[rbp], 1 00275 75 3b jne SHORT $LN25@stbi__pars -; 3818 : stbi_uc v = *p; +; 3831 : stbi_uc v = *p; 00277 48 8b 45 48 mov rax, QWORD PTR p$2[rbp] 0027b 0f b6 00 movzx eax, BYTE PTR [rax] 0027e 88 85 a4 00 00 00 mov BYTE PTR v$5[rbp], al -; 3819 : if (len) { do *zout++ = v; while (--len); } +; 3832 : if (len) { do *zout++ = v; while (--len); } 00284 83 7d 64 00 cmp DWORD PTR len$3[rbp], 0 00288 74 26 je SHORT $LN27@stbi__pars @@ -21338,13 +21358,13 @@ $LN7@stbi__pars: 002ae 75 da jne SHORT $LN7@stbi__pars $LN27@stbi__pars: -; 3820 : } +; 3833 : } 002b0 eb 37 jmp SHORT $LN26@stbi__pars $LN25@stbi__pars: -; 3821 : else { -; 3822 : if (len) { do *zout++ = *p++; while (--len); } +; 3834 : else { +; 3835 : if (len) { do *zout++ = *p++; while (--len); } 002b2 83 7d 64 00 cmp DWORD PTR len$3[rbp], 0 002b6 74 31 je SHORT $LN28@stbi__pars @@ -21368,14 +21388,14 @@ $LN28@stbi__pars: $LN26@stbi__pars: $LN12@stbi__pars: -; 3823 : } -; 3824 : } -; 3825 : } +; 3836 : } +; 3837 : } +; 3838 : } 002e9 e9 40 fd ff ff jmp $LN2@stbi__pars $LN1@stbi__pars: -; 3826 : } +; 3839 : } 002ee 48 8d a5 88 01 00 00 lea rsp, QWORD PTR [rbp+392] @@ -21397,7 +21417,7 @@ zout$ = 360 n$ = 368 stbi__zexpand PROC ; COMDAT -; 3748 : { +; 3761 : { 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx @@ -21411,9 +21431,9 @@ stbi__zexpand PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00024 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 3749 : char* q; -; 3750 : unsigned int cur, limit, old_limit; -; 3751 : z->zout = zout; +; 3762 : char* q; +; 3763 : unsigned int cur, limit, old_limit; +; 3764 : z->zout = zout; 00029 48 8b 85 60 01 00 00 mov rax, QWORD PTR z$[rbp] @@ -21421,7 +21441,7 @@ stbi__zexpand PROC ; COMDAT 00 00 mov rcx, QWORD PTR zout$[rbp] 00037 48 89 48 18 mov QWORD PTR [rax+24], rcx -; 3752 : if (!z->z_expandable) return stbi__err("output buffer limit", "Corrupt PNG"); +; 3765 : if (!z->z_expandable) return stbi__err("output buffer limit", "Corrupt PNG"); 0003b 48 8b 85 60 01 00 00 mov rax, QWORD PTR z$[rbp] @@ -21433,7 +21453,7 @@ stbi__zexpand PROC ; COMDAT 00054 e9 05 01 00 00 jmp $LN1@stbi__zexp $LN4@stbi__zexp: -; 3753 : cur = (unsigned int)(z->zout - z->zout_start); +; 3766 : cur = (unsigned int)(z->zout - z->zout_start); 00059 48 8b 85 60 01 00 00 mov rax, QWORD PTR z$[rbp] @@ -21444,7 +21464,7 @@ $LN4@stbi__zexp: 0006f 48 2b c1 sub rax, rcx 00072 89 45 24 mov DWORD PTR cur$[rbp], eax -; 3754 : limit = old_limit = (unsigned)(z->zout_end - z->zout_start); +; 3767 : limit = old_limit = (unsigned)(z->zout_end - z->zout_start); 00075 48 8b 85 60 01 00 00 mov rax, QWORD PTR z$[rbp] @@ -21457,7 +21477,7 @@ $LN4@stbi__zexp: 00091 8b 45 64 mov eax, DWORD PTR old_limit$[rbp] 00094 89 45 44 mov DWORD PTR limit$[rbp], eax -; 3755 : if (UINT_MAX - cur < (unsigned)n) return stbi__err("outofmem", "Out of memory"); +; 3768 : if (UINT_MAX - cur < (unsigned)n) return stbi__err("outofmem", "Out of memory"); 00097 b8 ff ff ff ff mov eax, -1 ; ffffffffH 0009c 2b 45 24 sub eax, DWORD PTR cur$[rbp] @@ -21471,7 +21491,7 @@ $LN4@stbi__zexp: $LN5@stbi__zexp: $LN2@stbi__zexp: -; 3756 : while (cur + n > limit) { +; 3769 : while (cur + n > limit) { 000b8 8b 85 70 01 00 00 mov eax, DWORD PTR n$[rbp] @@ -21481,7 +21501,7 @@ $LN2@stbi__zexp: 000c5 3b 45 44 cmp eax, DWORD PTR limit$[rbp] 000c8 76 21 jbe SHORT $LN3@stbi__zexp -; 3757 : if (limit > UINT_MAX / 2) return stbi__err("outofmem", "Out of memory"); +; 3770 : if (limit > UINT_MAX / 2) return stbi__err("outofmem", "Out of memory"); 000ca 81 7d 44 ff ff ff 7f cmp DWORD PTR limit$[rbp], 2147483647 ; 7fffffffH @@ -21492,18 +21512,18 @@ $LN2@stbi__zexp: 000df eb 7d jmp SHORT $LN1@stbi__zexp $LN6@stbi__zexp: -; 3758 : limit *= 2; +; 3771 : limit *= 2; 000e1 8b 45 44 mov eax, DWORD PTR limit$[rbp] 000e4 d1 e0 shl eax, 1 000e6 89 45 44 mov DWORD PTR limit$[rbp], eax -; 3759 : } +; 3772 : } 000e9 eb cd jmp SHORT $LN2@stbi__zexp $LN3@stbi__zexp: -; 3760 : q = (char*)STBI_REALLOC_SIZED(z->zout_start, old_limit, limit); +; 3773 : q = (char*)STBI_REALLOC_SIZED(z->zout_start, old_limit, limit); 000eb 8b 45 44 mov eax, DWORD PTR limit$[rbp] 000ee 8b d0 mov edx, eax @@ -21514,8 +21534,8 @@ $LN3@stbi__zexp: 00 call QWORD PTR __imp_realloc 00101 48 89 45 08 mov QWORD PTR q$[rbp], rax -; 3761 : STBI_NOTUSED(old_limit); -; 3762 : if (q == NULL) return stbi__err("outofmem", "Out of memory"); +; 3774 : STBI_NOTUSED(old_limit); +; 3775 : if (q == NULL) return stbi__err("outofmem", "Out of memory"); 00105 48 83 7d 08 00 cmp QWORD PTR q$[rbp], 0 0010a 75 0e jne SHORT $LN7@stbi__zexp @@ -21525,14 +21545,14 @@ $LN3@stbi__zexp: 00118 eb 44 jmp SHORT $LN1@stbi__zexp $LN7@stbi__zexp: -; 3763 : z->zout_start = q; +; 3776 : z->zout_start = q; 0011a 48 8b 85 60 01 00 00 mov rax, QWORD PTR z$[rbp] 00121 48 8b 4d 08 mov rcx, QWORD PTR q$[rbp] 00125 48 89 48 20 mov QWORD PTR [rax+32], rcx -; 3764 : z->zout = q + cur; +; 3777 : z->zout = q + cur; 00129 8b 45 24 mov eax, DWORD PTR cur$[rbp] 0012c 48 8b 4d 08 mov rcx, QWORD PTR q$[rbp] @@ -21542,7 +21562,7 @@ $LN7@stbi__zexp: 00 00 mov rcx, QWORD PTR z$[rbp] 0013d 48 89 41 18 mov QWORD PTR [rcx+24], rax -; 3765 : z->zout_end = q + limit; +; 3778 : z->zout_end = q + limit; 00141 8b 45 44 mov eax, DWORD PTR limit$[rbp] 00144 48 8b 4d 08 mov rcx, QWORD PTR q$[rbp] @@ -21552,12 +21572,12 @@ $LN7@stbi__zexp: 00 00 mov rcx, QWORD PTR z$[rbp] 00155 48 89 41 28 mov QWORD PTR [rcx+40], rax -; 3766 : return 1; +; 3779 : return 1; 00159 b8 01 00 00 00 mov eax, 1 $LN1@stbi__zexp: -; 3767 : } +; 3780 : } 0015e 48 8d a5 48 01 00 00 lea rsp, QWORD PTR [rbp+328] @@ -21577,7 +21597,7 @@ a$ = 288 z$ = 296 stbi__zhuffman_decode PROC ; COMDAT -; 3729 : { +; 3742 : { 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx @@ -21590,15 +21610,15 @@ stbi__zhuffman_decode PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 3730 : int b, s; -; 3731 : if (a->num_bits < 16) { +; 3743 : int b, s; +; 3744 : if (a->num_bits < 16) { 00024 48 8b 85 20 01 00 00 mov rax, QWORD PTR a$[rbp] 0002b 83 78 10 10 cmp DWORD PTR [rax+16], 16 0002f 7d 26 jge SHORT $LN2@stbi__zhuf -; 3732 : if (stbi__zeof(a)) { +; 3745 : if (stbi__zeof(a)) { 00031 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR a$[rbp] @@ -21606,22 +21626,22 @@ stbi__zhuffman_decode PROC ; COMDAT 0003d 85 c0 test eax, eax 0003f 74 0a je SHORT $LN3@stbi__zhuf -; 3733 : return -1; /* report error for unexpected end of data. */ +; 3746 : return -1; /* report error for unexpected end of data. */ 00041 b8 ff ff ff ff mov eax, -1 00046 e9 9a 00 00 00 jmp $LN1@stbi__zhuf $LN3@stbi__zhuf: -; 3734 : } -; 3735 : stbi__fill_bits(a); +; 3747 : } +; 3748 : stbi__fill_bits(a); 0004b 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR a$[rbp] 00052 e8 00 00 00 00 call stbi__fill_bits $LN2@stbi__zhuf: -; 3736 : } -; 3737 : b = z->fast[a->code_buffer & STBI__ZFAST_MASK]; +; 3749 : } +; 3750 : b = z->fast[a->code_buffer & STBI__ZFAST_MASK]; 00057 48 8b 85 20 01 00 00 mov rax, QWORD PTR a$[rbp] @@ -21633,18 +21653,18 @@ $LN2@stbi__zhuf: 0006f 0f b7 04 41 movzx eax, WORD PTR [rcx+rax*2] 00073 89 45 04 mov DWORD PTR b$[rbp], eax -; 3738 : if (b) { +; 3751 : if (b) { 00076 83 7d 04 00 cmp DWORD PTR b$[rbp], 0 0007a 74 56 je SHORT $LN4@stbi__zhuf -; 3739 : s = b >> 9; +; 3752 : s = b >> 9; 0007c 8b 45 04 mov eax, DWORD PTR b$[rbp] 0007f c1 f8 09 sar eax, 9 00082 89 45 24 mov DWORD PTR s$[rbp], eax -; 3740 : a->code_buffer >>= s; +; 3753 : a->code_buffer >>= s; 00085 8b 45 24 mov eax, DWORD PTR s$[rbp] 00088 48 8b 8d 20 01 @@ -21660,7 +21680,7 @@ $LN2@stbi__zhuf: 00 00 mov rcx, QWORD PTR a$[rbp] 000ac 89 41 14 mov DWORD PTR [rcx+20], eax -; 3741 : a->num_bits -= s; +; 3754 : a->num_bits -= s; 000af 48 8b 85 20 01 00 00 mov rax, QWORD PTR a$[rbp] @@ -21671,15 +21691,15 @@ $LN2@stbi__zhuf: 00 00 mov rcx, QWORD PTR a$[rbp] 000c5 89 41 10 mov DWORD PTR [rcx+16], eax -; 3742 : return b & 511; +; 3755 : return b & 511; 000c8 8b 45 04 mov eax, DWORD PTR b$[rbp] 000cb 25 ff 01 00 00 and eax, 511 ; 000001ffH 000d0 eb 13 jmp SHORT $LN1@stbi__zhuf $LN4@stbi__zhuf: -; 3743 : } -; 3744 : return stbi__zhuffman_decode_slowpath(a, z); +; 3756 : } +; 3757 : return stbi__zhuffman_decode_slowpath(a, z); 000d2 48 8b 95 28 01 00 00 mov rdx, QWORD PTR z$[rbp] @@ -21688,7 +21708,7 @@ $LN4@stbi__zhuf: 000e0 e8 00 00 00 00 call stbi__zhuffman_decode_slowpath $LN1@stbi__zhuf: -; 3745 : } +; 3758 : } 000e5 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] @@ -21709,7 +21729,7 @@ a$ = 320 z$ = 328 stbi__zhuffman_decode_slowpath PROC ; COMDAT -; 3710 : { +; 3723 : { 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx @@ -21722,10 +21742,10 @@ stbi__zhuffman_decode_slowpath PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 3711 : int b, s, k; -; 3712 : // not resolved by fast table, so compute it the slow way -; 3713 : // use jpeg approach, which requires MSbits at top -; 3714 : k = stbi__bit_reverse(a->code_buffer, 16); +; 3724 : int b, s, k; +; 3725 : // not resolved by fast table, so compute it the slow way +; 3726 : // use jpeg approach, which requires MSbits at top +; 3727 : k = stbi__bit_reverse(a->code_buffer, 16); 00024 ba 10 00 00 00 mov edx, 16 00029 48 8b 85 40 01 @@ -21734,7 +21754,7 @@ stbi__zhuffman_decode_slowpath PROC ; COMDAT 00033 e8 00 00 00 00 call stbi__bit_reverse 00038 89 45 44 mov DWORD PTR k$[rbp], eax -; 3715 : for (s = STBI__ZFAST_BITS + 1; ; ++s) +; 3728 : for (s = STBI__ZFAST_BITS + 1; ; ++s) 0003b c7 45 24 0a 00 00 00 mov DWORD PTR s$[rbp], 10 @@ -21745,7 +21765,7 @@ $LN2@stbi__zhuf: 00049 89 45 24 mov DWORD PTR s$[rbp], eax $LN4@stbi__zhuf: -; 3716 : if (k < z->maxcode[s]) +; 3729 : if (k < z->maxcode[s]) 0004c 48 63 45 24 movsxd rax, DWORD PTR s$[rbp] 00050 48 8b 8d 48 01 @@ -21755,14 +21775,14 @@ $LN4@stbi__zhuf: 0005e 39 45 44 cmp DWORD PTR k$[rbp], eax 00061 7d 02 jge SHORT $LN5@stbi__zhuf -; 3717 : break; +; 3730 : break; 00063 eb 02 jmp SHORT $LN3@stbi__zhuf $LN5@stbi__zhuf: 00065 eb dd jmp SHORT $LN2@stbi__zhuf $LN3@stbi__zhuf: -; 3718 : if (s >= 16) return -1; // invalid code! +; 3731 : if (s >= 16) return -1; // invalid code! 00067 83 7d 24 10 cmp DWORD PTR s$[rbp], 16 0006b 7c 0a jl SHORT $LN6@stbi__zhuf @@ -21770,8 +21790,8 @@ $LN3@stbi__zhuf: 00072 e9 c2 00 00 00 jmp $LN1@stbi__zhuf $LN6@stbi__zhuf: -; 3719 : // code size is s, so: -; 3720 : b = (k >> (16 - s)) - z->firstcode[s] + z->firstsymbol[s]; +; 3732 : // code size is s, so: +; 3733 : b = (k >> (16 - s)) - z->firstcode[s] + z->firstsymbol[s]; 00077 b8 10 00 00 00 mov eax, 16 0007c 2b 45 24 sub eax, DWORD PTR s$[rbp] @@ -21792,7 +21812,7 @@ $LN6@stbi__zhuf: 000af 03 c1 add eax, ecx 000b1 89 45 04 mov DWORD PTR b$[rbp], eax -; 3721 : if (b >= STBI__ZNSYMS) return -1; // some data was corrupt somewhere! +; 3734 : if (b >= STBI__ZNSYMS) return -1; // some data was corrupt somewhere! 000b4 81 7d 04 20 01 00 00 cmp DWORD PTR b$[rbp], 288 ; 00000120H @@ -21801,7 +21821,7 @@ $LN6@stbi__zhuf: 000c2 eb 75 jmp SHORT $LN1@stbi__zhuf $LN7@stbi__zhuf: -; 3722 : if (z->size[b] != s) return -1; // was originally an assert, but report failure instead. +; 3735 : if (z->size[b] != s) return -1; // was originally an assert, but report failure instead. 000c4 48 63 45 04 movsxd rax, DWORD PTR b$[rbp] 000c8 48 8b 8d 48 01 @@ -21814,7 +21834,7 @@ $LN7@stbi__zhuf: 000e1 eb 56 jmp SHORT $LN1@stbi__zhuf $LN8@stbi__zhuf: -; 3723 : a->code_buffer >>= s; +; 3736 : a->code_buffer >>= s; 000e3 8b 45 24 mov eax, DWORD PTR s$[rbp] 000e6 48 8b 8d 40 01 @@ -21830,7 +21850,7 @@ $LN8@stbi__zhuf: 00 00 mov rcx, QWORD PTR a$[rbp] 0010a 89 41 14 mov DWORD PTR [rcx+20], eax -; 3724 : a->num_bits -= s; +; 3737 : a->num_bits -= s; 0010d 48 8b 85 40 01 00 00 mov rax, QWORD PTR a$[rbp] @@ -21841,7 +21861,7 @@ $LN8@stbi__zhuf: 00 00 mov rcx, QWORD PTR a$[rbp] 00123 89 41 10 mov DWORD PTR [rcx+16], eax -; 3725 : return z->value[b]; +; 3738 : return z->value[b]; 00126 48 63 45 04 movsxd rax, DWORD PTR b$[rbp] 0012a 48 8b 8d 48 01 @@ -21850,7 +21870,7 @@ $LN8@stbi__zhuf: 05 00 00 movzx eax, WORD PTR [rcx+rax*2+1444] $LN1@stbi__zhuf: -; 3726 : } +; 3739 : } 00139 48 8d a5 28 01 00 00 lea rsp, QWORD PTR [rbp+296] @@ -21870,7 +21890,7 @@ z$ = 256 n$ = 264 stbi__zreceive PROC ; COMDAT -; 3700 : { +; 3713 : { 00000 89 54 24 10 mov DWORD PTR [rsp+16], edx 00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx @@ -21883,8 +21903,8 @@ stbi__zreceive PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001e e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 3701 : unsigned int k; -; 3702 : if (z->num_bits < n) stbi__fill_bits(z); +; 3714 : unsigned int k; +; 3715 : if (z->num_bits < n) stbi__fill_bits(z); 00023 48 8b 85 00 01 00 00 mov rax, QWORD PTR z$[rbp] @@ -21897,7 +21917,7 @@ stbi__zreceive PROC ; COMDAT 0003c e8 00 00 00 00 call stbi__fill_bits $LN2@stbi__zrec: -; 3703 : k = z->code_buffer & ((1 << n) - 1); +; 3716 : k = z->code_buffer & ((1 << n) - 1); 00041 8b 85 08 01 00 00 mov eax, DWORD PTR n$[rbp] @@ -21916,7 +21936,7 @@ $LN2@stbi__zrec: 0006b 8b c1 mov eax, ecx 0006d 89 45 04 mov DWORD PTR k$[rbp], eax -; 3704 : z->code_buffer >>= n; +; 3717 : z->code_buffer >>= n; 00070 8b 85 08 01 00 00 mov eax, DWORD PTR n$[rbp] @@ -21933,7 +21953,7 @@ $LN2@stbi__zrec: 00 00 mov rcx, QWORD PTR z$[rbp] 0009a 89 41 14 mov DWORD PTR [rcx+20], eax -; 3705 : z->num_bits -= n; +; 3718 : z->num_bits -= n; 0009d 48 8b 85 00 01 00 00 mov rax, QWORD PTR z$[rbp] @@ -21945,11 +21965,11 @@ $LN2@stbi__zrec: 00 00 mov rcx, QWORD PTR z$[rbp] 000b6 89 41 10 mov DWORD PTR [rcx+16], eax -; 3706 : return k; +; 3719 : return k; 000b9 8b 45 04 mov eax, DWORD PTR k$[rbp] -; 3707 : } +; 3720 : } 000bc 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -21966,7 +21986,7 @@ tv92 = 192 z$ = 240 stbi__fill_bits PROC ; COMDAT -; 3688 : { +; 3701 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -21979,8 +21999,8 @@ stbi__fill_bits PROC ; COMDAT 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode $LN4@stbi__fill: -; 3689 : do { -; 3690 : if (z->code_buffer >= (1U << z->num_bits)) { +; 3702 : do { +; 3703 : if (z->code_buffer >= (1U << z->num_bits)) { 0001f 48 8b 85 f0 00 00 00 mov rax, QWORD PTR z$[rbp] @@ -21997,7 +22017,7 @@ $LN4@stbi__fill: 00046 39 41 14 cmp DWORD PTR [rcx+20], eax 00049 72 17 jb SHORT $LN5@stbi__fill -; 3691 : z->zbuffer = z->zbuffer_end; /* treat this as EOF so we fail. */ +; 3704 : z->zbuffer = z->zbuffer_end; /* treat this as EOF so we fail. */ 0004b 48 8b 85 f0 00 00 00 mov rax, QWORD PTR z$[rbp] @@ -22006,13 +22026,13 @@ $LN4@stbi__fill: 00059 48 8b 49 08 mov rcx, QWORD PTR [rcx+8] 0005d 48 89 08 mov QWORD PTR [rax], rcx -; 3692 : return; +; 3705 : return; 00060 eb 5b jmp SHORT $LN1@stbi__fill $LN5@stbi__fill: -; 3693 : } -; 3694 : z->code_buffer |= (unsigned int)stbi__zget8(z) << z->num_bits; +; 3706 : } +; 3707 : z->code_buffer |= (unsigned int)stbi__zget8(z) << z->num_bits; 00062 48 8b 8d f0 00 00 00 mov rcx, QWORD PTR z$[rbp] @@ -22031,7 +22051,7 @@ $LN5@stbi__fill: 00 00 mov rcx, QWORD PTR z$[rbp] 00092 89 41 14 mov DWORD PTR [rcx+20], eax -; 3695 : z->num_bits += 8; +; 3708 : z->num_bits += 8; 00095 48 8b 85 f0 00 00 00 mov rax, QWORD PTR z$[rbp] @@ -22041,7 +22061,7 @@ $LN5@stbi__fill: 00 00 mov rcx, QWORD PTR z$[rbp] 000a9 89 41 10 mov DWORD PTR [rcx+16], eax -; 3696 : } while (z->num_bits <= 24); +; 3709 : } while (z->num_bits <= 24); 000ac 48 8b 85 f0 00 00 00 mov rax, QWORD PTR z$[rbp] @@ -22050,7 +22070,7 @@ $LN5@stbi__fill: ff jle $LN4@stbi__fill $LN1@stbi__fill: -; 3697 : } +; 3710 : } 000bd 48 8d a5 d8 00 00 00 lea rsp, QWORD PTR [rbp+216] @@ -22067,7 +22087,7 @@ tv73 = 192 z$ = 240 stbi__zget8 PROC ; COMDAT -; 3683 : { +; 3696 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -22079,7 +22099,7 @@ stbi__zget8 PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 3684 : return stbi__zeof(z) ? 0 : *z->zbuffer++; +; 3697 : return stbi__zeof(z) ? 0 : *z->zbuffer++; 0001f 48 8b 8d f0 00 00 00 mov rcx, QWORD PTR z$[rbp] @@ -22107,7 +22127,7 @@ $LN4@stbi__zget: 00065 0f b6 85 c0 00 00 00 movzx eax, BYTE PTR tv73[rbp] -; 3685 : } +; 3698 : } 0006c 48 8d a5 d8 00 00 00 lea rsp, QWORD PTR [rbp+216] @@ -22124,7 +22144,7 @@ tv67 = 192 z$ = 240 stbi__zeof PROC ; COMDAT -; 3678 : { +; 3691 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -22136,7 +22156,7 @@ stbi__zeof PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 3679 : return (z->zbuffer >= z->zbuffer_end); +; 3692 : return (z->zbuffer >= z->zbuffer_end); 0001f 48 8b 85 f0 00 00 00 mov rax, QWORD PTR z$[rbp] @@ -22155,7 +22175,7 @@ $LN4@stbi__zeof: 0004c 8b 85 c0 00 00 00 mov eax, DWORD PTR tv67[rbp] -; 3680 : } +; 3693 : } 00052 48 8d a5 d8 00 00 00 lea rsp, QWORD PTR [rbp+216] @@ -22184,7 +22204,7 @@ sizelist$ = 664 num$ = 672 stbi__zbuild_huffman PROC ; COMDAT -; 3611 : { +; 3624 : { 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx @@ -22209,15 +22229,15 @@ stbi__zbuild_huffman PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0004e e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 3612 : int i, k = 0; +; 3625 : int i, k = 0; 00053 c7 45 24 00 00 00 00 mov DWORD PTR k$[rbp], 0 -; 3613 : int code, next_code[16], sizes[17]; -; 3614 : -; 3615 : // DEFLATE spec for generating codes -; 3616 : memset(sizes, 0, sizeof(sizes)); +; 3626 : int code, next_code[16], sizes[17]; +; 3627 : +; 3628 : // DEFLATE spec for generating codes +; 3629 : memset(sizes, 0, sizeof(sizes)); 0005a 41 b8 44 00 00 00 mov r8d, 68 ; 00000044H @@ -22226,7 +22246,7 @@ stbi__zbuild_huffman PROC ; COMDAT 00 00 lea rcx, QWORD PTR sizes$[rbp] 00069 e8 00 00 00 00 call memset -; 3617 : memset(z->fast, 0, sizeof(z->fast)); +; 3630 : memset(z->fast, 0, sizeof(z->fast)); 0006e 48 8b 85 90 02 00 00 mov rax, QWORD PTR z$[rbp] @@ -22236,7 +22256,7 @@ stbi__zbuild_huffman PROC ; COMDAT 0007d 48 8b c8 mov rcx, rax 00080 e8 00 00 00 00 call memset -; 3618 : for (i = 0; i < num; ++i) +; 3631 : for (i = 0; i < num; ++i) 00085 c7 45 04 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -22251,7 +22271,7 @@ $LN4@stbi__zbui: 0009c 39 45 04 cmp DWORD PTR i$[rbp], eax 0009f 7d 30 jge SHORT $LN3@stbi__zbui -; 3619 : ++sizes[sizelist[i]]; +; 3632 : ++sizes[sizelist[i]]; 000a1 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 000a5 48 8b 8d 98 02 @@ -22269,7 +22289,7 @@ $LN4@stbi__zbui: 000cf eb bd jmp SHORT $LN2@stbi__zbui $LN3@stbi__zbui: -; 3620 : sizes[0] = 0; +; 3633 : sizes[0] = 0; 000d1 b8 04 00 00 00 mov eax, 4 000d6 48 6b c0 00 imul rax, rax, 0 @@ -22277,7 +22297,7 @@ $LN3@stbi__zbui: 00 00 00 00 00 00 mov DWORD PTR sizes$[rbp+rax], 0 -; 3621 : for (i = 1; i < 16; ++i) +; 3634 : for (i = 1; i < 16; ++i) 000e5 c7 45 04 01 00 00 00 mov DWORD PTR i$[rbp], 1 @@ -22290,7 +22310,7 @@ $LN7@stbi__zbui: 000f6 83 7d 04 10 cmp DWORD PTR i$[rbp], 16 000fa 7d 2c jge SHORT $LN6@stbi__zbui -; 3622 : if (sizes[i] > (1 << i)) +; 3635 : if (sizes[i] > (1 << i)) 000fc 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 00100 8b 4d 04 mov ecx, DWORD PTR i$[rbp] @@ -22301,7 +22321,7 @@ $LN7@stbi__zbui: 00 00 cmp DWORD PTR sizes$[rbp+rax*4], ecx 00113 7e 11 jle SHORT $LN16@stbi__zbui -; 3623 : return stbi__err("bad sizes", "Corrupt PNG"); +; 3636 : return stbi__err("bad sizes", "Corrupt PNG"); 00115 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_09EOHLEIKL@bad?5sizes@ @@ -22311,12 +22331,12 @@ $LN16@stbi__zbui: 00126 eb c6 jmp SHORT $LN5@stbi__zbui $LN6@stbi__zbui: -; 3624 : code = 0; +; 3637 : code = 0; 00128 c7 45 44 00 00 00 00 mov DWORD PTR code$[rbp], 0 -; 3625 : for (i = 1; i < 16; ++i) { +; 3638 : for (i = 1; i < 16; ++i) { 0012f c7 45 04 01 00 00 00 mov DWORD PTR i$[rbp], 1 @@ -22330,13 +22350,13 @@ $LN10@stbi__zbui: 00144 0f 8d c6 00 00 00 jge $LN9@stbi__zbui -; 3626 : next_code[i] = code; +; 3639 : next_code[i] = code; 0014a 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 0014e 8b 4d 44 mov ecx, DWORD PTR code$[rbp] 00151 89 4c 85 70 mov DWORD PTR next_code$[rbp+rax*4], ecx -; 3627 : z->firstcode[i] = (stbi__uint16)code; +; 3640 : z->firstcode[i] = (stbi__uint16)code; 00155 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 00159 48 8b 8d 90 02 @@ -22345,7 +22365,7 @@ $LN10@stbi__zbui: 00164 66 89 94 41 00 04 00 00 mov WORD PTR [rcx+rax*2+1024], dx -; 3628 : z->firstsymbol[i] = (stbi__uint16)k; +; 3641 : z->firstsymbol[i] = (stbi__uint16)k; 0016c 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 00170 48 8b 8d 90 02 @@ -22354,7 +22374,7 @@ $LN10@stbi__zbui: 0017b 66 89 94 41 64 04 00 00 mov WORD PTR [rcx+rax*2+1124], dx -; 3629 : code = (code + sizes[i]); +; 3642 : code = (code + sizes[i]); 00183 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 00187 8b 84 85 d0 00 @@ -22364,14 +22384,14 @@ $LN10@stbi__zbui: 00193 8b c1 mov eax, ecx 00195 89 45 44 mov DWORD PTR code$[rbp], eax -; 3630 : if (sizes[i]) +; 3643 : if (sizes[i]) 00198 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 0019c 83 bc 85 d0 00 00 00 00 cmp DWORD PTR sizes$[rbp+rax*4], 0 001a4 74 26 je SHORT $LN17@stbi__zbui -; 3631 : if (code - 1 >= (1 << i)) return stbi__err("bad codelengths", "Corrupt PNG"); +; 3644 : if (code - 1 >= (1 << i)) return stbi__err("bad codelengths", "Corrupt PNG"); 001a6 8b 45 44 mov eax, DWORD PTR code$[rbp] 001a9 ff c8 dec eax @@ -22388,7 +22408,7 @@ $LN10@stbi__zbui: $LN18@stbi__zbui: $LN17@stbi__zbui: -; 3632 : z->maxcode[i] = code << (16 - i); // preshift for inner loop +; 3645 : z->maxcode[i] = code << (16 - i); // preshift for inner loop 001cc b8 10 00 00 00 mov eax, 16 001d1 2b 45 04 sub eax, DWORD PTR i$[rbp] @@ -22401,13 +22421,13 @@ $LN17@stbi__zbui: 001e7 89 84 8a 20 04 00 00 mov DWORD PTR [rdx+rcx*4+1056], eax -; 3633 : code <<= 1; +; 3646 : code <<= 1; 001ee 8b 45 44 mov eax, DWORD PTR code$[rbp] 001f1 d1 e0 shl eax, 1 001f3 89 45 44 mov DWORD PTR code$[rbp], eax -; 3634 : k += sizes[i]; +; 3647 : k += sizes[i]; 001f6 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 001fa 8b 84 85 d0 00 @@ -22417,12 +22437,12 @@ $LN17@stbi__zbui: 00206 8b c1 mov eax, ecx 00208 89 45 24 mov DWORD PTR k$[rbp], eax -; 3635 : } +; 3648 : } 0020b e9 28 ff ff ff jmp $LN8@stbi__zbui $LN9@stbi__zbui: -; 3636 : z->maxcode[16] = 0x10000; // sentinel +; 3649 : z->maxcode[16] = 0x10000; // sentinel 00210 b8 04 00 00 00 mov eax, 4 00215 48 6b c0 10 imul rax, rax, 16 @@ -22432,7 +22452,7 @@ $LN9@stbi__zbui: 00 00 00 00 01 00 mov DWORD PTR [rcx+rax+1056], 65536 ; 00010000H -; 3637 : for (i = 0; i < num; ++i) { +; 3650 : for (i = 0; i < num; ++i) { 0022b c7 45 04 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -22448,7 +22468,7 @@ $LN13@stbi__zbui: 00245 0f 8d 41 01 00 00 jge $LN12@stbi__zbui -; 3638 : int s = sizelist[i]; +; 3651 : int s = sizelist[i]; 0024b 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 0024f 48 8b 8d 98 02 @@ -22457,14 +22477,14 @@ $LN13@stbi__zbui: 0025a 89 85 34 01 00 00 mov DWORD PTR s$5[rbp], eax -; 3639 : if (s) { +; 3652 : if (s) { 00260 83 bd 34 01 00 00 00 cmp DWORD PTR s$5[rbp], 0 00267 0f 84 1a 01 00 00 je $LN19@stbi__zbui -; 3640 : int c = next_code[s] - z->firstcode[s] + z->firstsymbol[s]; +; 3653 : int c = next_code[s] - z->firstcode[s] + z->firstsymbol[s]; 0026d 48 63 85 34 01 00 00 movsxd rax, DWORD PTR s$5[rbp] @@ -22486,7 +22506,7 @@ $LN13@stbi__zbui: 002a8 89 85 54 01 00 00 mov DWORD PTR c$6[rbp], eax -; 3641 : stbi__uint16 fastv = (stbi__uint16)((s << 9) | i); +; 3654 : stbi__uint16 fastv = (stbi__uint16)((s << 9) | i); 002ae 8b 85 34 01 00 00 mov eax, DWORD PTR s$5[rbp] @@ -22495,7 +22515,7 @@ $LN13@stbi__zbui: 002ba 66 89 85 74 01 00 00 mov WORD PTR fastv$7[rbp], ax -; 3642 : z->size[c] = (stbi_uc)s; +; 3655 : z->size[c] = (stbi_uc)s; 002c1 48 63 85 54 01 00 00 movsxd rax, DWORD PTR c$6[rbp] @@ -22506,7 +22526,7 @@ $LN13@stbi__zbui: 002d6 88 94 01 84 04 00 00 mov BYTE PTR [rcx+rax+1156], dl -; 3643 : z->value[c] = (stbi__uint16)i; +; 3656 : z->value[c] = (stbi__uint16)i; 002dd 48 63 85 54 01 00 00 movsxd rax, DWORD PTR c$6[rbp] @@ -22516,13 +22536,13 @@ $LN13@stbi__zbui: 002ef 66 89 94 41 a4 05 00 00 mov WORD PTR [rcx+rax*2+1444], dx -; 3644 : if (s <= STBI__ZFAST_BITS) { +; 3657 : if (s <= STBI__ZFAST_BITS) { 002f7 83 bd 34 01 00 00 09 cmp DWORD PTR s$5[rbp], 9 002fe 7f 6f jg SHORT $LN20@stbi__zbui -; 3645 : int j = stbi__bit_reverse(next_code[s], s); +; 3658 : int j = stbi__bit_reverse(next_code[s], s); 00300 48 63 85 34 01 00 00 movsxd rax, DWORD PTR s$5[rbp] @@ -22534,13 +22554,13 @@ $LN13@stbi__zbui: 00 mov DWORD PTR j$8[rbp], eax $LN14@stbi__zbui: -; 3646 : while (j < (1 << STBI__ZFAST_BITS)) { +; 3659 : while (j < (1 << STBI__ZFAST_BITS)) { 0031c 81 bd 94 01 00 00 00 02 00 00 cmp DWORD PTR j$8[rbp], 512 ; 00000200H 00326 7d 47 jge SHORT $LN15@stbi__zbui -; 3647 : z->fast[j] = fastv; +; 3660 : z->fast[j] = fastv; 00328 48 63 85 94 01 00 00 movsxd rax, DWORD PTR j$8[rbp] @@ -22550,7 +22570,7 @@ $LN14@stbi__zbui: 00 00 movzx edx, WORD PTR fastv$7[rbp] 0033d 66 89 14 41 mov WORD PTR [rcx+rax*2], dx -; 3648 : j += (1 << s); +; 3661 : j += (1 << s); 00341 8b 85 34 01 00 00 mov eax, DWORD PTR s$5[rbp] @@ -22568,14 +22588,14 @@ $LN14@stbi__zbui: 00367 89 85 94 01 00 00 mov DWORD PTR j$8[rbp], eax -; 3649 : } +; 3662 : } 0036d eb ad jmp SHORT $LN14@stbi__zbui $LN15@stbi__zbui: $LN20@stbi__zbui: -; 3650 : } -; 3651 : ++next_code[s]; +; 3663 : } +; 3664 : ++next_code[s]; 0036f 48 63 85 34 01 00 00 movsxd rax, DWORD PTR s$5[rbp] @@ -22586,18 +22606,18 @@ $LN20@stbi__zbui: 00383 89 44 8d 70 mov DWORD PTR next_code$[rbp+rcx*4], eax $LN19@stbi__zbui: -; 3652 : } -; 3653 : } +; 3665 : } +; 3666 : } 00387 e9 a8 fe ff ff jmp $LN11@stbi__zbui $LN12@stbi__zbui: -; 3654 : return 1; +; 3667 : return 1; 0038c b8 01 00 00 00 mov eax, 1 $LN1@stbi__zbui: -; 3655 : } +; 3668 : } 00391 48 8b f8 mov rdi, rax 00394 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] @@ -22624,7 +22644,7 @@ v$ = 224 bits$ = 232 stbi__bit_reverse PROC ; COMDAT -; 3603 : { +; 3616 : { 00000 89 54 24 10 mov DWORD PTR [rsp+16], edx 00004 89 4c 24 08 mov DWORD PTR [rsp+8], ecx @@ -22637,13 +22657,13 @@ stbi__bit_reverse PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001d e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 3604 : STBI_ASSERT(bits <= 16); +; 3617 : STBI_ASSERT(bits <= 16); 00022 83 bd e8 00 00 00 10 cmp DWORD PTR bits$[rbp], 16 00029 7e 1c jle SHORT $LN3@stbi__bit_ - 0002b 41 b8 14 0e 00 - 00 mov r8d, 3604 ; 00000e14H + 0002b 41 b8 21 0e 00 + 00 mov r8d, 3617 ; 00000e21H 00031 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_1KA@LPJPGBDN@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@ 00038 48 8d 0d 00 00 @@ -22653,9 +22673,9 @@ stbi__bit_reverse PROC ; COMDAT 00045 33 c0 xor eax, eax $LN3@stbi__bit_: -; 3605 : // to bit reverse n bits, reverse 16 and shift -; 3606 : // e.g. 11 bits, bit reverse and shift away 5 -; 3607 : return stbi__bitreverse16(v) >> (16 - bits); +; 3618 : // to bit reverse n bits, reverse 16 and shift +; 3619 : // e.g. 11 bits, bit reverse and shift away 5 +; 3620 : return stbi__bitreverse16(v) >> (16 - bits); 00047 8b 8d e0 00 00 00 mov ecx, DWORD PTR v$[rbp] @@ -22665,7 +22685,7 @@ $LN3@stbi__bit_: 00 sub ecx, DWORD PTR bits$[rbp] 0005d d3 f8 sar eax, cl -; 3608 : } +; 3621 : } 0005f 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] @@ -22681,7 +22701,7 @@ _TEXT SEGMENT n$ = 224 stbi__bitreverse16 PROC ; COMDAT -; 3594 : { +; 3607 : { 00000 89 4c 24 08 mov DWORD PTR [rsp+8], ecx 00004 55 push rbp @@ -22693,7 +22713,7 @@ stbi__bitreverse16 PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00019 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 3595 : n = ((n & 0xAAAA) >> 1) | ((n & 0x5555) << 1); +; 3608 : n = ((n & 0xAAAA) >> 1) | ((n & 0x5555) << 1); 0001e 8b 85 e0 00 00 00 mov eax, DWORD PTR n$[rbp] @@ -22708,7 +22728,7 @@ stbi__bitreverse16 PROC ; COMDAT 0003b 89 85 e0 00 00 00 mov DWORD PTR n$[rbp], eax -; 3596 : n = ((n & 0xCCCC) >> 2) | ((n & 0x3333) << 2); +; 3609 : n = ((n & 0xCCCC) >> 2) | ((n & 0x3333) << 2); 00041 8b 85 e0 00 00 00 mov eax, DWORD PTR n$[rbp] @@ -22723,7 +22743,7 @@ stbi__bitreverse16 PROC ; COMDAT 00060 89 85 e0 00 00 00 mov DWORD PTR n$[rbp], eax -; 3597 : n = ((n & 0xF0F0) >> 4) | ((n & 0x0F0F) << 4); +; 3610 : n = ((n & 0xF0F0) >> 4) | ((n & 0x0F0F) << 4); 00066 8b 85 e0 00 00 00 mov eax, DWORD PTR n$[rbp] @@ -22738,7 +22758,7 @@ stbi__bitreverse16 PROC ; COMDAT 00085 89 85 e0 00 00 00 mov DWORD PTR n$[rbp], eax -; 3598 : n = ((n & 0xFF00) >> 8) | ((n & 0x00FF) << 8); +; 3611 : n = ((n & 0xFF00) >> 8) | ((n & 0x00FF) << 8); 0008b 8b 85 e0 00 00 00 mov eax, DWORD PTR n$[rbp] @@ -22753,12 +22773,12 @@ stbi__bitreverse16 PROC ; COMDAT 000aa 89 85 e0 00 00 00 mov DWORD PTR n$[rbp], eax -; 3599 : return n; +; 3612 : return n; 000b0 8b 85 e0 00 00 00 mov eax, DWORD PTR n$[rbp] -; 3600 : } +; 3613 : } 000b6 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] @@ -22778,7 +22798,7 @@ y$ = 256 comp$ = 264 stbi__jpeg_info_raw PROC ; COMDAT -; 3543 : { +; 3556 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -22793,7 +22813,7 @@ stbi__jpeg_info_raw PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 3544 : if (!stbi__decode_jpeg_header(j, STBI__SCAN_header)) { +; 3557 : if (!stbi__decode_jpeg_header(j, STBI__SCAN_header)) { 0002e ba 02 00 00 00 mov edx, 2 00033 48 8b 8d f0 00 @@ -22802,21 +22822,21 @@ stbi__jpeg_info_raw PROC ; COMDAT 0003f 85 c0 test eax, eax 00041 75 16 jne SHORT $LN2@stbi__jpeg -; 3545 : stbi__rewind(j->s); +; 3558 : stbi__rewind(j->s); 00043 48 8b 85 f0 00 00 00 mov rax, QWORD PTR j$[rbp] 0004a 48 8b 08 mov rcx, QWORD PTR [rax] 0004d e8 00 00 00 00 call stbi__rewind -; 3546 : return 0; +; 3559 : return 0; 00052 33 c0 xor eax, eax 00054 e9 83 00 00 00 jmp $LN1@stbi__jpeg $LN2@stbi__jpeg: -; 3547 : } -; 3548 : if (x) *x = j->s->img_x; +; 3560 : } +; 3561 : if (x) *x = j->s->img_x; 00059 48 83 bd f8 00 00 00 00 cmp QWORD PTR x$[rbp], 0 @@ -22830,7 +22850,7 @@ $LN2@stbi__jpeg: 00076 89 01 mov DWORD PTR [rcx], eax $LN3@stbi__jpeg: -; 3549 : if (y) *y = j->s->img_y; +; 3562 : if (y) *y = j->s->img_y; 00078 48 83 bd 00 01 00 00 00 cmp QWORD PTR y$[rbp], 0 @@ -22844,7 +22864,7 @@ $LN3@stbi__jpeg: 00096 89 01 mov DWORD PTR [rcx], eax $LN4@stbi__jpeg: -; 3550 : if (comp) *comp = j->s->img_n >= 3 ? 3 : 1; +; 3563 : if (comp) *comp = j->s->img_n >= 3 ? 3 : 1; 00098 48 83 bd 08 01 00 00 00 cmp QWORD PTR comp$[rbp], 0 @@ -22868,12 +22888,12 @@ $LN8@stbi__jpeg: 000d5 89 08 mov DWORD PTR [rax], ecx $LN5@stbi__jpeg: -; 3551 : return 1; +; 3564 : return 1; 000d7 b8 01 00 00 00 mov eax, 1 $LN1@stbi__jpeg: -; 3552 : } +; 3565 : } 000dc 48 8d a5 d8 00 00 00 lea rsp, QWORD PTR [rbp+216] @@ -22933,7 +22953,7 @@ comp$ = 1352 req_comp$ = 1360 load_jpeg_image PROC ; COMDAT -; 3343 : { +; 3356 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -22959,8 +22979,8 @@ load_jpeg_image PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 3344 : int n, decode_n, is_rgb; -; 3345 : z->s->img_n = 0; // make stbi__cleanup_jpeg safe +; 3357 : int n, decode_n, is_rgb; +; 3358 : z->s->img_n = 0; // make stbi__cleanup_jpeg safe 00058 48 8b 85 30 05 00 00 mov rax, QWORD PTR z$[rbp] @@ -22968,9 +22988,9 @@ load_jpeg_image PROC ; COMDAT 00062 c7 40 08 00 00 00 00 mov DWORD PTR [rax+8], 0 -; 3346 : -; 3347 : // validate req_comp -; 3348 : if (req_comp < 0 || req_comp > 4) return stbi__errpuc("bad req_comp", "Internal error"); +; 3359 : +; 3360 : // validate req_comp +; 3361 : if (req_comp < 0 || req_comp > 4) return stbi__errpuc("bad req_comp", "Internal error"); 00069 83 bd 50 05 00 00 00 cmp DWORD PTR req_comp$[rbp], 0 @@ -22998,9 +23018,9 @@ $LN84@load_jpeg_: 000aa e9 f2 11 00 00 jmp $LN1@load_jpeg_ $LN41@load_jpeg_: -; 3349 : -; 3350 : // load a jpeg image from whichever source, but leave in YCbCr format -; 3351 : if (!stbi__decode_jpeg_image(z)) { stbi__cleanup_jpeg(z); return NULL; } +; 3362 : +; 3363 : // load a jpeg image from whichever source, but leave in YCbCr format +; 3364 : if (!stbi__decode_jpeg_image(z)) { stbi__cleanup_jpeg(z); return NULL; } 000af 48 8b 8d 30 05 00 00 mov rcx, QWORD PTR z$[rbp] @@ -23014,9 +23034,9 @@ $LN41@load_jpeg_: 000cd e9 cf 11 00 00 jmp $LN1@load_jpeg_ $LN43@load_jpeg_: -; 3352 : -; 3353 : // determine actual number of components to generate -; 3354 : n = req_comp ? req_comp : z->s->img_n >= 3 ? 3 : 1; +; 3365 : +; 3366 : // determine actual number of components to generate +; 3367 : n = req_comp ? req_comp : z->s->img_n >= 3 ? 3 : 1; 000d2 83 bd 50 05 00 00 00 cmp DWORD PTR req_comp$[rbp], 0 @@ -23048,8 +23068,8 @@ $LN88@load_jpeg_: 00 mov eax, DWORD PTR tv81[rbp] 00121 89 45 04 mov DWORD PTR n$[rbp], eax -; 3355 : -; 3356 : is_rgb = z->s->img_n == 3 && (z->rgb == 3 || (z->app14_color_transform == 0 && !z->jfif)); +; 3368 : +; 3369 : is_rgb = z->s->img_n == 3 && (z->rgb == 3 || (z->app14_color_transform == 0 && !z->jfif)); 00124 48 8b 85 30 05 00 00 mov rax, QWORD PTR z$[rbp] @@ -23084,8 +23104,8 @@ $LN92@load_jpeg_: 00 mov eax, DWORD PTR tv91[rbp] 00180 89 45 44 mov DWORD PTR is_rgb$[rbp], eax -; 3357 : -; 3358 : if (z->s->img_n == 3 && n < 3 && !is_rgb) +; 3370 : +; 3371 : if (z->s->img_n == 3 && n < 3 && !is_rgb) 00183 48 8b 85 30 05 00 00 mov rax, QWORD PTR z$[rbp] @@ -23097,15 +23117,15 @@ $LN92@load_jpeg_: 00199 83 7d 44 00 cmp DWORD PTR is_rgb$[rbp], 0 0019d 75 09 jne SHORT $LN44@load_jpeg_ -; 3359 : decode_n = 1; +; 3372 : decode_n = 1; 0019f c7 45 24 01 00 00 00 mov DWORD PTR decode_n$[rbp], 1 001a6 eb 10 jmp SHORT $LN45@load_jpeg_ $LN44@load_jpeg_: -; 3360 : else -; 3361 : decode_n = z->s->img_n; +; 3373 : else +; 3374 : decode_n = z->s->img_n; 001a8 48 8b 85 30 05 00 00 mov rax, QWORD PTR z$[rbp] @@ -23114,10 +23134,10 @@ $LN44@load_jpeg_: 001b5 89 45 24 mov DWORD PTR decode_n$[rbp], eax $LN45@load_jpeg_: -; 3362 : -; 3363 : // nothing to do if no components requested; check this now to avoid -; 3364 : // accessing uninitialized coutput[0] later -; 3365 : if (decode_n <= 0) { stbi__cleanup_jpeg(z); return NULL; } +; 3375 : +; 3376 : // nothing to do if no components requested; check this now to avoid +; 3377 : // accessing uninitialized coutput[0] later +; 3378 : if (decode_n <= 0) { stbi__cleanup_jpeg(z); return NULL; } 001b8 83 7d 24 00 cmp DWORD PTR decode_n$[rbp], 0 001bc 7f 13 jg SHORT $LN46@load_jpeg_ @@ -23128,13 +23148,13 @@ $LN45@load_jpeg_: 001cc e9 d0 10 00 00 jmp $LN1@load_jpeg_ $LN46@load_jpeg_: -; 3366 : -; 3367 : // resample and color-convert -; 3368 : { -; 3369 : int k; -; 3370 : unsigned int i, j; -; 3371 : stbi_uc* output; -; 3372 : stbi_uc* coutput[4] = { NULL, NULL, NULL, NULL }; +; 3379 : +; 3380 : // resample and color-convert +; 3381 : { +; 3382 : int k; +; 3383 : unsigned int i, j; +; 3384 : stbi_uc* output; +; 3385 : stbi_uc* coutput[4] = { NULL, NULL, NULL, NULL }; 001d1 48 c7 85 e8 00 00 00 00 00 00 @@ -23149,10 +23169,10 @@ $LN46@load_jpeg_: 00 00 00 00 00 00 mov QWORD PTR coutput$9[rbp+24], 0 -; 3373 : -; 3374 : stbi__resample res_comp[4]; -; 3375 : -; 3376 : for (k = 0; k < decode_n; ++k) { +; 3386 : +; 3387 : stbi__resample res_comp[4]; +; 3388 : +; 3389 : for (k = 0; k < decode_n; ++k) { 001fd c7 45 64 00 00 00 00 mov DWORD PTR k$5[rbp], 0 @@ -23167,7 +23187,7 @@ $LN4@load_jpeg_: 00214 0f 8d 7a 02 00 00 jge $LN3@load_jpeg_ -; 3377 : stbi__resample* r = &res_comp[k]; +; 3390 : stbi__resample* r = &res_comp[k]; 0021a 48 63 45 64 movsxd rax, DWORD PTR k$5[rbp] 0021e 48 6b c0 30 imul rax, rax, 48 ; 00000030H @@ -23176,10 +23196,10 @@ $LN4@load_jpeg_: 0022a 48 89 85 08 02 00 00 mov QWORD PTR r$11[rbp], rax -; 3378 : -; 3379 : // allocate line buffer big enough for upsampling off the edges -; 3380 : // with upsample factor of 4 -; 3381 : z->img_comp[k].linebuf = (stbi_uc*)stbi__malloc(z->s->img_x + 3); +; 3391 : +; 3392 : // allocate line buffer big enough for upsampling off the edges +; 3393 : // with upsample factor of 4 +; 3394 : z->img_comp[k].linebuf = (stbi_uc*)stbi__malloc(z->s->img_x + 3); 00231 48 8b 85 30 05 00 00 mov rax, QWORD PTR z$[rbp] @@ -23196,7 +23216,7 @@ $LN4@load_jpeg_: 00258 48 89 84 0a e8 46 00 00 mov QWORD PTR [rdx+rcx+18152], rax -; 3382 : if (!z->img_comp[k].linebuf) { stbi__cleanup_jpeg(z); return stbi__errpuc("outofmem", "Out of memory"); } +; 3395 : if (!z->img_comp[k].linebuf) { stbi__cleanup_jpeg(z); return stbi__errpuc("outofmem", "Out of memory"); } 00260 48 63 45 64 movsxd rax, DWORD PTR k$5[rbp] 00264 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -23227,8 +23247,8 @@ $LN94@load_jpeg_: 002b5 e9 e7 0f 00 00 jmp $LN1@load_jpeg_ $LN47@load_jpeg_: -; 3383 : -; 3384 : r->hs = z->img_h_max / z->img_comp[k].h; +; 3396 : +; 3397 : r->hs = z->img_h_max / z->img_comp[k].h; 002ba 48 63 45 64 movsxd rax, DWORD PTR k$5[rbp] 002be 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -23249,7 +23269,7 @@ $LN47@load_jpeg_: 00 00 mov rcx, QWORD PTR r$11[rbp] 002f4 89 41 18 mov DWORD PTR [rcx+24], eax -; 3385 : r->vs = z->img_v_max / z->img_comp[k].v; +; 3398 : r->vs = z->img_v_max / z->img_comp[k].v; 002f7 48 63 45 64 movsxd rax, DWORD PTR k$5[rbp] 002fb 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -23270,7 +23290,7 @@ $LN47@load_jpeg_: 00 00 mov rcx, QWORD PTR r$11[rbp] 00331 89 41 1c mov DWORD PTR [rcx+28], eax -; 3386 : r->ystep = r->vs >> 1; +; 3399 : r->ystep = r->vs >> 1; 00334 48 8b 85 08 02 00 00 mov rax, QWORD PTR r$11[rbp] @@ -23280,7 +23300,7 @@ $LN47@load_jpeg_: 00 00 mov rcx, QWORD PTR r$11[rbp] 00347 89 41 24 mov DWORD PTR [rcx+36], eax -; 3387 : r->w_lores = (z->s->img_x + r->hs - 1) / r->hs; +; 3400 : r->w_lores = (z->s->img_x + r->hs - 1) / r->hs; 0034a 48 8b 85 30 05 00 00 mov rax, QWORD PTR z$[rbp] @@ -23298,14 +23318,14 @@ $LN47@load_jpeg_: 00 00 mov rcx, QWORD PTR r$11[rbp] 00377 89 41 20 mov DWORD PTR [rcx+32], eax -; 3388 : r->ypos = 0; +; 3401 : r->ypos = 0; 0037a 48 8b 85 08 02 00 00 mov rax, QWORD PTR r$11[rbp] 00381 c7 40 28 00 00 00 00 mov DWORD PTR [rax+40], 0 -; 3389 : r->line0 = r->line1 = z->img_comp[k].data; +; 3402 : r->line0 = r->line1 = z->img_comp[k].data; 00388 48 63 45 64 movsxd rax, DWORD PTR k$5[rbp] 0038c 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -23323,8 +23343,8 @@ $LN47@load_jpeg_: 003b8 48 8b 49 10 mov rcx, QWORD PTR [rcx+16] 003bc 48 89 48 08 mov QWORD PTR [rax+8], rcx -; 3390 : -; 3391 : if (r->hs == 1 && r->vs == 1) r->resample = resample_row_1; +; 3403 : +; 3404 : if (r->hs == 1 && r->vs == 1) r->resample = resample_row_1; 003c0 48 8b 85 08 02 00 00 mov rax, QWORD PTR r$11[rbp] @@ -23342,7 +23362,7 @@ $LN47@load_jpeg_: 003eb e9 9f 00 00 00 jmp $LN49@load_jpeg_ $LN48@load_jpeg_: -; 3392 : else if (r->hs == 1 && r->vs == 2) r->resample = stbi__resample_row_v_2; +; 3405 : else if (r->hs == 1 && r->vs == 2) r->resample = stbi__resample_row_v_2; 003f0 48 8b 85 08 02 00 00 mov rax, QWORD PTR r$11[rbp] @@ -23360,7 +23380,7 @@ $LN48@load_jpeg_: 0041b eb 72 jmp SHORT $LN51@load_jpeg_ $LN50@load_jpeg_: -; 3393 : else if (r->hs == 2 && r->vs == 1) r->resample = stbi__resample_row_h_2; +; 3406 : else if (r->hs == 2 && r->vs == 1) r->resample = stbi__resample_row_h_2; 0041d 48 8b 85 08 02 00 00 mov rax, QWORD PTR r$11[rbp] @@ -23378,7 +23398,7 @@ $LN50@load_jpeg_: 00448 eb 45 jmp SHORT $LN53@load_jpeg_ $LN52@load_jpeg_: -; 3394 : else if (r->hs == 2 && r->vs == 2) r->resample = z->resample_row_hv_2_kernel; +; 3407 : else if (r->hs == 2 && r->vs == 2) r->resample = z->resample_row_hv_2_kernel; 0044a 48 8b 85 08 02 00 00 mov rax, QWORD PTR r$11[rbp] @@ -23398,7 +23418,7 @@ $LN52@load_jpeg_: 0047c eb 11 jmp SHORT $LN55@load_jpeg_ $LN54@load_jpeg_: -; 3395 : else r->resample = stbi__resample_row_generic; +; 3408 : else r->resample = stbi__resample_row_generic; 0047e 48 8b 85 08 02 00 00 mov rax, QWORD PTR r$11[rbp] @@ -23410,14 +23430,14 @@ $LN53@load_jpeg_: $LN51@load_jpeg_: $LN49@load_jpeg_: -; 3396 : } +; 3409 : } 0048f e9 72 fd ff ff jmp $LN2@load_jpeg_ $LN3@load_jpeg_: -; 3397 : -; 3398 : // can't error after this so, this is safe -; 3399 : output = (stbi_uc*)stbi__malloc_mad3(n, z->s->img_x, z->s->img_y, 1); +; 3410 : +; 3411 : // can't error after this so, this is safe +; 3412 : output = (stbi_uc*)stbi__malloc_mad3(n, z->s->img_x, z->s->img_y, 1); 00494 48 8b 85 30 05 00 00 mov rax, QWORD PTR z$[rbp] @@ -23434,7 +23454,7 @@ $LN3@load_jpeg_: 004bc 48 89 85 c8 00 00 00 mov QWORD PTR output$8[rbp], rax -; 3400 : if (!output) { stbi__cleanup_jpeg(z); return stbi__errpuc("outofmem", "Out of memory"); } +; 3413 : if (!output) { stbi__cleanup_jpeg(z); return stbi__errpuc("outofmem", "Out of memory"); } 004c3 48 83 bd c8 00 00 00 00 cmp QWORD PTR output$8[rbp], 0 @@ -23461,9 +23481,9 @@ $LN96@load_jpeg_: 00508 e9 94 0d 00 00 jmp $LN1@load_jpeg_ $LN56@load_jpeg_: -; 3401 : -; 3402 : // now go ahead and resample -; 3403 : for (j = 0; j < z->s->img_y; ++j) { +; 3414 : +; 3415 : // now go ahead and resample +; 3416 : for (j = 0; j < z->s->img_y; ++j) { 0050d c7 85 a4 00 00 00 00 00 00 00 mov DWORD PTR j$7[rbp], 0 @@ -23484,7 +23504,7 @@ $LN7@load_jpeg_: 0053a 0f 83 e4 0c 00 00 jae $LN6@load_jpeg_ -; 3404 : stbi_uc* out = output + n * z->s->img_x * j; +; 3417 : stbi_uc* out = output + n * z->s->img_x * j; 00540 48 8b 85 30 05 00 00 mov rax, QWORD PTR z$[rbp] @@ -23502,7 +23522,7 @@ $LN7@load_jpeg_: 00568 48 89 85 28 02 00 00 mov QWORD PTR out$12[rbp], rax -; 3405 : for (k = 0; k < decode_n; ++k) { +; 3418 : for (k = 0; k < decode_n; ++k) { 0056f c7 45 64 00 00 00 00 mov DWORD PTR k$5[rbp], 0 @@ -23517,7 +23537,7 @@ $LN10@load_jpeg_: 00586 0f 8d d0 01 00 00 jge $LN9@load_jpeg_ -; 3406 : stbi__resample* r = &res_comp[k]; +; 3419 : stbi__resample* r = &res_comp[k]; 0058c 48 63 45 64 movsxd rax, DWORD PTR k$5[rbp] 00590 48 6b c0 30 imul rax, rax, 48 ; 00000030H @@ -23526,7 +23546,7 @@ $LN10@load_jpeg_: 0059c 48 89 85 48 02 00 00 mov QWORD PTR r$13[rbp], rax -; 3407 : int y_bot = r->ystep >= (r->vs >> 1); +; 3420 : int y_bot = r->ystep >= (r->vs >> 1); 005a3 48 8b 85 48 02 00 00 mov rax, QWORD PTR r$13[rbp] @@ -23548,7 +23568,7 @@ $LN98@load_jpeg_: 005d7 89 85 64 02 00 00 mov DWORD PTR y_bot$14[rbp], eax -; 3408 : coutput[k] = r->resample(z->img_comp[k].linebuf, +; 3421 : coutput[k] = r->resample(z->img_comp[k].linebuf, 005dd 83 bd 64 02 00 00 00 cmp DWORD PTR y_bot$14[rbp], 0 @@ -23606,10 +23626,10 @@ $LN102@load_jpeg_: 00686 48 89 84 cd e8 00 00 00 mov QWORD PTR coutput$9[rbp+rcx*8], rax -; 3409 : y_bot ? r->line1 : r->line0, -; 3410 : y_bot ? r->line0 : r->line1, -; 3411 : r->w_lores, r->hs); -; 3412 : if (++r->ystep >= r->vs) { +; 3422 : y_bot ? r->line1 : r->line0, +; 3423 : y_bot ? r->line0 : r->line1, +; 3424 : r->w_lores, r->hs); +; 3425 : if (++r->ystep >= r->vs) { 0068e 48 8b 85 48 02 00 00 mov rax, QWORD PTR r$13[rbp] @@ -23630,14 +23650,14 @@ $LN102@load_jpeg_: 006c0 0f 8c 91 00 00 00 jl $LN57@load_jpeg_ -; 3413 : r->ystep = 0; +; 3426 : r->ystep = 0; 006c6 48 8b 85 48 02 00 00 mov rax, QWORD PTR r$13[rbp] 006cd c7 40 24 00 00 00 00 mov DWORD PTR [rax+36], 0 -; 3414 : r->line0 = r->line1; +; 3427 : r->line0 = r->line1; 006d4 48 8b 85 48 02 00 00 mov rax, QWORD PTR r$13[rbp] @@ -23646,7 +23666,7 @@ $LN102@load_jpeg_: 006e2 48 8b 49 10 mov rcx, QWORD PTR [rcx+16] 006e6 48 89 48 08 mov QWORD PTR [rax+8], rcx -; 3415 : if (++r->ypos < z->img_comp[k].y) +; 3428 : if (++r->ypos < z->img_comp[k].y) 006ea 48 8b 85 48 02 00 00 mov rax, QWORD PTR r$13[rbp] @@ -23669,7 +23689,7 @@ $LN102@load_jpeg_: 00 cmp DWORD PTR tv288[rbp], eax 00728 7d 2d jge SHORT $LN58@load_jpeg_ -; 3416 : r->line1 += z->img_comp[k].w2; +; 3429 : r->line1 += z->img_comp[k].w2; 0072a 48 63 45 64 movsxd rax, DWORD PTR k$5[rbp] 0072e 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -23686,19 +23706,19 @@ $LN102@load_jpeg_: $LN58@load_jpeg_: $LN57@load_jpeg_: -; 3417 : } -; 3418 : } +; 3430 : } +; 3431 : } 00757 e9 1c fe ff ff jmp $LN8@load_jpeg_ $LN9@load_jpeg_: -; 3419 : if (n >= 3) { +; 3432 : if (n >= 3) { 0075c 83 7d 04 03 cmp DWORD PTR n$[rbp], 3 00760 0f 8c a9 05 00 00 jl $LN59@load_jpeg_ -; 3420 : stbi_uc* y = coutput[0]; +; 3433 : stbi_uc* y = coutput[0]; 00766 b8 08 00 00 00 mov eax, 8 0076b 48 6b c0 00 imul rax, rax, 0 @@ -23707,7 +23727,7 @@ $LN9@load_jpeg_: 00777 48 89 85 88 02 00 00 mov QWORD PTR y$15[rbp], rax -; 3421 : if (z->s->img_n == 3) { +; 3434 : if (z->s->img_n == 3) { 0077e 48 8b 85 30 05 00 00 mov rax, QWORD PTR z$[rbp] @@ -23716,13 +23736,13 @@ $LN9@load_jpeg_: 0078c 0f 85 4d 01 00 00 jne $LN61@load_jpeg_ -; 3422 : if (is_rgb) { +; 3435 : if (is_rgb) { 00792 83 7d 44 00 cmp DWORD PTR is_rgb$[rbp], 0 00796 0f 84 e8 00 00 00 je $LN63@load_jpeg_ -; 3423 : for (i = 0; i < z->s->img_x; ++i) { +; 3436 : for (i = 0; i < z->s->img_x; ++i) { 0079c c7 85 84 00 00 00 00 00 00 00 mov DWORD PTR i$6[rbp], 0 @@ -23743,7 +23763,7 @@ $LN13@load_jpeg_: 007c8 0f 83 b4 00 00 00 jae $LN12@load_jpeg_ -; 3424 : out[0] = y[i]; +; 3437 : out[0] = y[i]; 007ce 8b 85 84 00 00 00 mov eax, DWORD PTR i$6[rbp] @@ -23756,7 +23776,7 @@ $LN13@load_jpeg_: 007eb 41 0f b6 04 00 movzx eax, BYTE PTR [r8+rax] 007f0 88 04 0a mov BYTE PTR [rdx+rcx], al -; 3425 : out[1] = coutput[1][i]; +; 3438 : out[1] = coutput[1][i]; 007f3 b8 08 00 00 00 mov eax, 8 007f8 48 6b c0 01 imul rax, rax, 1 @@ -23771,7 +23791,7 @@ $LN13@load_jpeg_: 0081a 0f b6 04 08 movzx eax, BYTE PTR [rax+rcx] 0081e 41 88 04 10 mov BYTE PTR [r8+rdx], al -; 3426 : out[2] = coutput[2][i]; +; 3439 : out[2] = coutput[2][i]; 00822 b8 08 00 00 00 mov eax, 8 00827 48 6b c0 02 imul rax, rax, 2 @@ -23786,7 +23806,7 @@ $LN13@load_jpeg_: 00849 0f b6 04 08 movzx eax, BYTE PTR [rax+rcx] 0084d 41 88 04 10 mov BYTE PTR [r8+rdx], al -; 3427 : out[3] = 255; +; 3440 : out[3] = 255; 00851 b8 01 00 00 00 mov eax, 1 00856 48 6b c0 03 imul rax, rax, 3 @@ -23794,7 +23814,7 @@ $LN13@load_jpeg_: 00 00 mov rcx, QWORD PTR out$12[rbp] 00861 c6 04 01 ff mov BYTE PTR [rcx+rax], 255 ; 000000ffH -; 3428 : out += n; +; 3441 : out += n; 00865 48 63 45 04 movsxd rax, DWORD PTR n$[rbp] 00869 48 8b 8d 28 02 @@ -23804,18 +23824,18 @@ $LN13@load_jpeg_: 00876 48 89 85 28 02 00 00 mov QWORD PTR out$12[rbp], rax -; 3429 : } +; 3442 : } 0087d e9 26 ff ff ff jmp $LN11@load_jpeg_ $LN12@load_jpeg_: -; 3430 : } +; 3443 : } 00882 eb 56 jmp SHORT $LN64@load_jpeg_ $LN63@load_jpeg_: -; 3431 : else { -; 3432 : z->YCbCr_to_RGB_kernel(out, y, coutput[1], coutput[2], z->s->img_x, n); +; 3444 : else { +; 3445 : z->YCbCr_to_RGB_kernel(out, y, coutput[1], coutput[2], z->s->img_x, n); 00884 48 8b 85 30 05 00 00 mov rax, QWORD PTR z$[rbp] @@ -23842,13 +23862,13 @@ $LN63@load_jpeg_: 00 call QWORD PTR [rax+18552] $LN64@load_jpeg_: -; 3433 : } -; 3434 : } +; 3446 : } +; 3447 : } 008da e9 2b 04 00 00 jmp $LN62@load_jpeg_ $LN61@load_jpeg_: -; 3435 : else if (z->s->img_n == 4) { +; 3448 : else if (z->s->img_n == 4) { 008df 48 8b 85 30 05 00 00 mov rax, QWORD PTR z$[rbp] @@ -23857,7 +23877,7 @@ $LN61@load_jpeg_: 008ed 0f 85 3f 03 00 00 jne $LN65@load_jpeg_ -; 3436 : if (z->app14_color_transform == 0) { // CMYK +; 3449 : if (z->app14_color_transform == 0) { // CMYK 008f3 48 8b 85 30 05 00 00 mov rax, QWORD PTR z$[rbp] @@ -23866,7 +23886,7 @@ $LN61@load_jpeg_: 00901 0f 85 37 01 00 00 jne $LN67@load_jpeg_ -; 3437 : for (i = 0; i < z->s->img_x; ++i) { +; 3450 : for (i = 0; i < z->s->img_x; ++i) { 00907 c7 85 84 00 00 00 00 00 00 00 mov DWORD PTR i$6[rbp], 0 @@ -23887,7 +23907,7 @@ $LN16@load_jpeg_: 00933 0f 83 00 01 00 00 jae $LN15@load_jpeg_ -; 3438 : stbi_uc m = coutput[3][i]; +; 3451 : stbi_uc m = coutput[3][i]; 00939 b8 08 00 00 00 mov eax, 8 0093e 48 6b c0 03 imul rax, rax, 3 @@ -23899,7 +23919,7 @@ $LN16@load_jpeg_: 00954 88 85 a4 02 00 00 mov BYTE PTR m$16[rbp], al -; 3439 : out[0] = stbi__blinn_8x8(coutput[0][i], m); +; 3452 : out[0] = stbi__blinn_8x8(coutput[0][i], m); 0095a b8 08 00 00 00 mov eax, 8 0095f 48 6b c0 00 imul rax, rax, 0 @@ -23917,7 +23937,7 @@ $LN16@load_jpeg_: 00 00 mov rdx, QWORD PTR out$12[rbp] 00991 88 04 0a mov BYTE PTR [rdx+rcx], al -; 3440 : out[1] = stbi__blinn_8x8(coutput[1][i], m); +; 3453 : out[1] = stbi__blinn_8x8(coutput[1][i], m); 00994 b8 08 00 00 00 mov eax, 8 00999 48 6b c0 01 imul rax, rax, 1 @@ -23935,7 +23955,7 @@ $LN16@load_jpeg_: 00 00 mov rdx, QWORD PTR out$12[rbp] 009cb 88 04 0a mov BYTE PTR [rdx+rcx], al -; 3441 : out[2] = stbi__blinn_8x8(coutput[2][i], m); +; 3454 : out[2] = stbi__blinn_8x8(coutput[2][i], m); 009ce b8 08 00 00 00 mov eax, 8 009d3 48 6b c0 02 imul rax, rax, 2 @@ -23953,7 +23973,7 @@ $LN16@load_jpeg_: 00 00 mov rdx, QWORD PTR out$12[rbp] 00a05 88 04 0a mov BYTE PTR [rdx+rcx], al -; 3442 : out[3] = 255; +; 3455 : out[3] = 255; 00a08 b8 01 00 00 00 mov eax, 1 00a0d 48 6b c0 03 imul rax, rax, 3 @@ -23961,7 +23981,7 @@ $LN16@load_jpeg_: 00 00 mov rcx, QWORD PTR out$12[rbp] 00a18 c6 04 01 ff mov BYTE PTR [rcx+rax], 255 ; 000000ffH -; 3443 : out += n; +; 3456 : out += n; 00a1c 48 63 45 04 movsxd rax, DWORD PTR n$[rbp] 00a20 48 8b 8d 28 02 @@ -23971,17 +23991,17 @@ $LN16@load_jpeg_: 00a2d 48 89 85 28 02 00 00 mov QWORD PTR out$12[rbp], rax -; 3444 : } +; 3457 : } 00a34 e9 da fe ff ff jmp $LN14@load_jpeg_ $LN15@load_jpeg_: -; 3445 : } +; 3458 : } 00a39 e9 ef 01 00 00 jmp $LN68@load_jpeg_ $LN67@load_jpeg_: -; 3446 : else if (z->app14_color_transform == 2) { // YCCK +; 3459 : else if (z->app14_color_transform == 2) { // YCCK 00a3e 48 8b 85 30 05 00 00 mov rax, QWORD PTR z$[rbp] @@ -23990,7 +24010,7 @@ $LN67@load_jpeg_: 00a4c 0f 85 85 01 00 00 jne $LN69@load_jpeg_ -; 3447 : z->YCbCr_to_RGB_kernel(out, y, coutput[1], coutput[2], z->s->img_x, n); +; 3460 : z->YCbCr_to_RGB_kernel(out, y, coutput[1], coutput[2], z->s->img_x, n); 00a52 48 8b 85 30 05 00 00 mov rax, QWORD PTR z$[rbp] @@ -24016,7 +24036,7 @@ $LN67@load_jpeg_: 00aa2 ff 90 78 48 00 00 call QWORD PTR [rax+18552] -; 3448 : for (i = 0; i < z->s->img_x; ++i) { +; 3461 : for (i = 0; i < z->s->img_x; ++i) { 00aa8 c7 85 84 00 00 00 00 00 00 00 mov DWORD PTR i$6[rbp], 0 @@ -24037,7 +24057,7 @@ $LN19@load_jpeg_: 00ad4 0f 83 fb 00 00 00 jae $LN18@load_jpeg_ -; 3449 : stbi_uc m = coutput[3][i]; +; 3462 : stbi_uc m = coutput[3][i]; 00ada b8 08 00 00 00 mov eax, 8 00adf 48 6b c0 03 imul rax, rax, 3 @@ -24049,7 +24069,7 @@ $LN19@load_jpeg_: 00af5 88 85 c4 02 00 00 mov BYTE PTR m$17[rbp], al -; 3450 : out[0] = stbi__blinn_8x8(255 - out[0], m); +; 3463 : out[0] = stbi__blinn_8x8(255 - out[0], m); 00afb b8 01 00 00 00 mov eax, 1 00b00 48 6b c0 00 imul rax, rax, 0 @@ -24069,7 +24089,7 @@ $LN19@load_jpeg_: 00 00 mov rdx, QWORD PTR out$12[rbp] 00b37 88 04 0a mov BYTE PTR [rdx+rcx], al -; 3451 : out[1] = stbi__blinn_8x8(255 - out[1], m); +; 3464 : out[1] = stbi__blinn_8x8(255 - out[1], m); 00b3a b8 01 00 00 00 mov eax, 1 00b3f 48 6b c0 01 imul rax, rax, 1 @@ -24089,7 +24109,7 @@ $LN19@load_jpeg_: 00 00 mov rdx, QWORD PTR out$12[rbp] 00b76 88 04 0a mov BYTE PTR [rdx+rcx], al -; 3452 : out[2] = stbi__blinn_8x8(255 - out[2], m); +; 3465 : out[2] = stbi__blinn_8x8(255 - out[2], m); 00b79 b8 01 00 00 00 mov eax, 1 00b7e 48 6b c0 02 imul rax, rax, 2 @@ -24109,7 +24129,7 @@ $LN19@load_jpeg_: 00 00 mov rdx, QWORD PTR out$12[rbp] 00bb5 88 04 0a mov BYTE PTR [rdx+rcx], al -; 3453 : out += n; +; 3466 : out += n; 00bb8 48 63 45 04 movsxd rax, DWORD PTR n$[rbp] 00bbc 48 8b 8d 28 02 @@ -24119,18 +24139,18 @@ $LN19@load_jpeg_: 00bc9 48 89 85 28 02 00 00 mov QWORD PTR out$12[rbp], rax -; 3454 : } +; 3467 : } 00bd0 e9 df fe ff ff jmp $LN17@load_jpeg_ $LN18@load_jpeg_: -; 3455 : } +; 3468 : } 00bd5 eb 56 jmp SHORT $LN70@load_jpeg_ $LN69@load_jpeg_: -; 3456 : else { // YCbCr + alpha? Ignore the fourth channel for now -; 3457 : z->YCbCr_to_RGB_kernel(out, y, coutput[1], coutput[2], z->s->img_x, n); +; 3469 : else { // YCbCr + alpha? Ignore the fourth channel for now +; 3470 : z->YCbCr_to_RGB_kernel(out, y, coutput[1], coutput[2], z->s->img_x, n); 00bd7 48 8b 85 30 05 00 00 mov rax, QWORD PTR z$[rbp] @@ -24158,14 +24178,14 @@ $LN69@load_jpeg_: $LN70@load_jpeg_: $LN68@load_jpeg_: -; 3458 : } -; 3459 : } +; 3471 : } +; 3472 : } 00c2d e9 d8 00 00 00 jmp $LN66@load_jpeg_ $LN65@load_jpeg_: -; 3460 : else -; 3461 : for (i = 0; i < z->s->img_x; ++i) { +; 3473 : else +; 3474 : for (i = 0; i < z->s->img_x; ++i) { 00c32 c7 85 84 00 00 00 00 00 00 00 mov DWORD PTR i$6[rbp], 0 @@ -24186,7 +24206,7 @@ $LN22@load_jpeg_: 00c5e 0f 83 a6 00 00 00 jae $LN21@load_jpeg_ -; 3462 : out[0] = out[1] = out[2] = y[i]; +; 3475 : out[0] = out[1] = out[2] = y[i]; 00c64 8b 85 84 00 00 00 mov eax, DWORD PTR i$6[rbp] @@ -24219,7 +24239,7 @@ $LN22@load_jpeg_: 00cd1 41 0f b6 04 00 movzx eax, BYTE PTR [r8+rax] 00cd6 88 04 0a mov BYTE PTR [rdx+rcx], al -; 3463 : out[3] = 255; // not used if n==3 +; 3476 : out[3] = 255; // not used if n==3 00cd9 b8 01 00 00 00 mov eax, 1 00cde 48 6b c0 03 imul rax, rax, 3 @@ -24227,7 +24247,7 @@ $LN22@load_jpeg_: 00 00 mov rcx, QWORD PTR out$12[rbp] 00ce9 c6 04 01 ff mov BYTE PTR [rcx+rax], 255 ; 000000ffH -; 3464 : out += n; +; 3477 : out += n; 00ced 48 63 45 04 movsxd rax, DWORD PTR n$[rbp] 00cf1 48 8b 8d 28 02 @@ -24237,32 +24257,32 @@ $LN22@load_jpeg_: 00cfe 48 89 85 28 02 00 00 mov QWORD PTR out$12[rbp], rax -; 3465 : } +; 3478 : } 00d05 e9 34 ff ff ff jmp $LN20@load_jpeg_ $LN21@load_jpeg_: $LN66@load_jpeg_: $LN62@load_jpeg_: -; 3466 : } +; 3479 : } 00d0a e9 10 05 00 00 jmp $LN60@load_jpeg_ $LN59@load_jpeg_: -; 3467 : else { -; 3468 : if (is_rgb) { +; 3480 : else { +; 3481 : if (is_rgb) { 00d0f 83 7d 44 00 cmp DWORD PTR is_rgb$[rbp], 0 00d13 0f 84 ab 01 00 00 je $LN71@load_jpeg_ -; 3469 : if (n == 1) +; 3482 : if (n == 1) 00d19 83 7d 04 01 cmp DWORD PTR n$[rbp], 1 00d1d 0f 85 c1 00 00 00 jne $LN73@load_jpeg_ -; 3470 : for (i = 0; i < z->s->img_x; ++i) +; 3483 : for (i = 0; i < z->s->img_x; ++i) 00d23 c7 85 84 00 00 00 00 00 00 00 mov DWORD PTR i$6[rbp], 0 @@ -24283,7 +24303,7 @@ $LN25@load_jpeg_: 00d4f 0f 83 8a 00 00 00 jae $LN24@load_jpeg_ -; 3471 : *out++ = stbi__compute_y(coutput[0][i], coutput[1][i], coutput[2][i]); +; 3484 : *out++ = stbi__compute_y(coutput[0][i], coutput[1][i], coutput[2][i]); 00d55 b8 08 00 00 00 mov eax, 8 00d5a 48 6b c0 02 imul rax, rax, 2 @@ -24327,8 +24347,8 @@ $LN24@load_jpeg_: 00ddf e9 db 00 00 00 jmp $LN74@load_jpeg_ $LN73@load_jpeg_: -; 3472 : else { -; 3473 : for (i = 0; i < z->s->img_x; ++i, out += 2) { +; 3485 : else { +; 3486 : for (i = 0; i < z->s->img_x; ++i, out += 2) { 00de4 c7 85 84 00 00 00 00 00 00 00 mov DWORD PTR i$6[rbp], 0 @@ -24354,7 +24374,7 @@ $LN28@load_jpeg_: 00e22 0f 83 97 00 00 00 jae $LN27@load_jpeg_ -; 3474 : out[0] = stbi__compute_y(coutput[0][i], coutput[1][i], coutput[2][i]); +; 3487 : out[0] = stbi__compute_y(coutput[0][i], coutput[1][i], coutput[2][i]); 00e28 b8 08 00 00 00 mov eax, 8 00e2d 48 6b c0 02 imul rax, rax, 2 @@ -24391,7 +24411,7 @@ $LN28@load_jpeg_: 00 00 mov rdx, QWORD PTR out$12[rbp] 00ea3 88 04 0a mov BYTE PTR [rdx+rcx], al -; 3475 : out[1] = 255; +; 3488 : out[1] = 255; 00ea6 b8 01 00 00 00 mov eax, 1 00eab 48 6b c0 01 imul rax, rax, 1 @@ -24399,19 +24419,19 @@ $LN28@load_jpeg_: 00 00 mov rcx, QWORD PTR out$12[rbp] 00eb6 c6 04 01 ff mov BYTE PTR [rcx+rax], 255 ; 000000ffH -; 3476 : } +; 3489 : } 00eba e9 31 ff ff ff jmp $LN26@load_jpeg_ $LN27@load_jpeg_: $LN74@load_jpeg_: -; 3477 : } -; 3478 : } +; 3490 : } +; 3491 : } 00ebf e9 5b 03 00 00 jmp $LN72@load_jpeg_ $LN71@load_jpeg_: -; 3479 : else if (z->s->img_n == 4 && z->app14_color_transform == 0) { +; 3492 : else if (z->s->img_n == 4 && z->app14_color_transform == 0) { 00ec4 48 8b 85 30 05 00 00 mov rax, QWORD PTR z$[rbp] @@ -24426,7 +24446,7 @@ $LN71@load_jpeg_: 00ee6 0f 85 50 01 00 00 jne $LN75@load_jpeg_ -; 3480 : for (i = 0; i < z->s->img_x; ++i) { +; 3493 : for (i = 0; i < z->s->img_x; ++i) { 00eec c7 85 84 00 00 00 00 00 00 00 mov DWORD PTR i$6[rbp], 0 @@ -24447,7 +24467,7 @@ $LN31@load_jpeg_: 00f18 0f 83 19 01 00 00 jae $LN30@load_jpeg_ -; 3481 : stbi_uc m = coutput[3][i]; +; 3494 : stbi_uc m = coutput[3][i]; 00f1e b8 08 00 00 00 mov eax, 8 00f23 48 6b c0 03 imul rax, rax, 3 @@ -24459,7 +24479,7 @@ $LN31@load_jpeg_: 00f39 88 85 e4 02 00 00 mov BYTE PTR m$18[rbp], al -; 3482 : stbi_uc r = stbi__blinn_8x8(coutput[0][i], m); +; 3495 : stbi_uc r = stbi__blinn_8x8(coutput[0][i], m); 00f3f b8 08 00 00 00 mov eax, 8 00f44 48 6b c0 00 imul rax, rax, 0 @@ -24474,7 +24494,7 @@ $LN31@load_jpeg_: 00f66 88 85 04 03 00 00 mov BYTE PTR r$19[rbp], al -; 3483 : stbi_uc g = stbi__blinn_8x8(coutput[1][i], m); +; 3496 : stbi_uc g = stbi__blinn_8x8(coutput[1][i], m); 00f6c b8 08 00 00 00 mov eax, 8 00f71 48 6b c0 01 imul rax, rax, 1 @@ -24489,7 +24509,7 @@ $LN31@load_jpeg_: 00f93 88 85 24 03 00 00 mov BYTE PTR g$20[rbp], al -; 3484 : stbi_uc b = stbi__blinn_8x8(coutput[2][i], m); +; 3497 : stbi_uc b = stbi__blinn_8x8(coutput[2][i], m); 00f99 b8 08 00 00 00 mov eax, 8 00f9e 48 6b c0 02 imul rax, rax, 2 @@ -24504,7 +24524,7 @@ $LN31@load_jpeg_: 00fc0 88 85 44 03 00 00 mov BYTE PTR b$21[rbp], al -; 3485 : out[0] = stbi__compute_y(r, g, b); +; 3498 : out[0] = stbi__compute_y(r, g, b); 00fc6 0f b6 85 44 03 00 00 movzx eax, BYTE PTR b$21[rbp] @@ -24526,7 +24546,7 @@ $LN31@load_jpeg_: 00 00 mov rdx, QWORD PTR out$12[rbp] 01003 88 04 0a mov BYTE PTR [rdx+rcx], al -; 3486 : out[1] = 255; +; 3499 : out[1] = 255; 01006 b8 01 00 00 00 mov eax, 1 0100b 48 6b c0 01 imul rax, rax, 1 @@ -24534,7 +24554,7 @@ $LN31@load_jpeg_: 00 00 mov rcx, QWORD PTR out$12[rbp] 01016 c6 04 01 ff mov BYTE PTR [rcx+rax], 255 ; 000000ffH -; 3487 : out += n; +; 3500 : out += n; 0101a 48 63 45 04 movsxd rax, DWORD PTR n$[rbp] 0101e 48 8b 8d 28 02 @@ -24544,17 +24564,17 @@ $LN31@load_jpeg_: 0102b 48 89 85 28 02 00 00 mov QWORD PTR out$12[rbp], rax -; 3488 : } +; 3501 : } 01032 e9 c1 fe ff ff jmp $LN29@load_jpeg_ $LN30@load_jpeg_: -; 3489 : } +; 3502 : } 01037 e9 e3 01 00 00 jmp $LN76@load_jpeg_ $LN75@load_jpeg_: -; 3490 : else if (z->s->img_n == 4 && z->app14_color_transform == 2) { +; 3503 : else if (z->s->img_n == 4 && z->app14_color_transform == 2) { 0103c 48 8b 85 30 05 00 00 mov rax, QWORD PTR z$[rbp] @@ -24569,7 +24589,7 @@ $LN75@load_jpeg_: 0105e 0f 85 d3 00 00 00 jne $LN77@load_jpeg_ -; 3491 : for (i = 0; i < z->s->img_x; ++i) { +; 3504 : for (i = 0; i < z->s->img_x; ++i) { 01064 c7 85 84 00 00 00 00 00 00 00 mov DWORD PTR i$6[rbp], 0 @@ -24590,7 +24610,7 @@ $LN34@load_jpeg_: 01090 0f 83 9c 00 00 00 jae $LN33@load_jpeg_ -; 3492 : out[0] = stbi__blinn_8x8(255 - coutput[0][i], coutput[3][i]); +; 3505 : out[0] = stbi__blinn_8x8(255 - coutput[0][i], coutput[3][i]); 01096 b8 08 00 00 00 mov eax, 8 0109b 48 6b c0 03 imul rax, rax, 3 @@ -24622,7 +24642,7 @@ $LN34@load_jpeg_: 00 00 mov rdx, QWORD PTR out$12[rbp] 010fe 88 04 0a mov BYTE PTR [rdx+rcx], al -; 3493 : out[1] = 255; +; 3506 : out[1] = 255; 01101 b8 01 00 00 00 mov eax, 1 01106 48 6b c0 01 imul rax, rax, 1 @@ -24630,7 +24650,7 @@ $LN34@load_jpeg_: 00 00 mov rcx, QWORD PTR out$12[rbp] 01111 c6 04 01 ff mov BYTE PTR [rcx+rax], 255 ; 000000ffH -; 3494 : out += n; +; 3507 : out += n; 01115 48 63 45 04 movsxd rax, DWORD PTR n$[rbp] 01119 48 8b 8d 28 02 @@ -24640,18 +24660,18 @@ $LN34@load_jpeg_: 01126 48 89 85 28 02 00 00 mov QWORD PTR out$12[rbp], rax -; 3495 : } +; 3508 : } 0112d e9 3e ff ff ff jmp $LN32@load_jpeg_ $LN33@load_jpeg_: -; 3496 : } +; 3509 : } 01132 e9 e8 00 00 00 jmp $LN78@load_jpeg_ $LN77@load_jpeg_: -; 3497 : else { -; 3498 : stbi_uc* y = coutput[0]; +; 3510 : else { +; 3511 : stbi_uc* y = coutput[0]; 01137 b8 08 00 00 00 mov eax, 8 0113c 48 6b c0 00 imul rax, rax, 0 @@ -24660,12 +24680,12 @@ $LN77@load_jpeg_: 01148 48 89 85 68 03 00 00 mov QWORD PTR y$22[rbp], rax -; 3499 : if (n == 1) +; 3512 : if (n == 1) 0114f 83 7d 04 01 cmp DWORD PTR n$[rbp], 1 01153 75 54 jne SHORT $LN79@load_jpeg_ -; 3500 : for (i = 0; i < z->s->img_x; ++i) out[i] = y[i]; +; 3513 : for (i = 0; i < z->s->img_x; ++i) out[i] = y[i]; 01155 c7 85 84 00 00 00 00 00 00 00 mov DWORD PTR i$6[rbp], 0 @@ -24699,8 +24719,8 @@ $LN36@load_jpeg_: 011a7 eb 76 jmp SHORT $LN80@load_jpeg_ $LN79@load_jpeg_: -; 3501 : else -; 3502 : for (i = 0; i < z->s->img_x; ++i) { *out++ = y[i]; *out++ = 255; } +; 3514 : else +; 3515 : for (i = 0; i < z->s->img_x; ++i) { *out++ = y[i]; *out++ = 255; } 011a9 c7 85 84 00 00 00 00 00 00 00 mov DWORD PTR i$6[rbp], 0 @@ -24748,20 +24768,20 @@ $LN76@load_jpeg_: $LN72@load_jpeg_: $LN60@load_jpeg_: -; 3503 : } -; 3504 : } -; 3505 : } +; 3516 : } +; 3517 : } +; 3518 : } 0121f e9 f5 f2 ff ff jmp $LN5@load_jpeg_ $LN6@load_jpeg_: -; 3506 : stbi__cleanup_jpeg(z); +; 3519 : stbi__cleanup_jpeg(z); 01224 48 8b 8d 30 05 00 00 mov rcx, QWORD PTR z$[rbp] 0122b e8 00 00 00 00 call stbi__cleanup_jpeg -; 3507 : *out_x = z->s->img_x; +; 3520 : *out_x = z->s->img_x; 01230 48 8b 85 30 05 00 00 mov rax, QWORD PTR z$[rbp] @@ -24771,7 +24791,7 @@ $LN6@load_jpeg_: 01241 8b 00 mov eax, DWORD PTR [rax] 01243 89 01 mov DWORD PTR [rcx], eax -; 3508 : *out_y = z->s->img_y; +; 3521 : *out_y = z->s->img_y; 01245 48 8b 85 30 05 00 00 mov rax, QWORD PTR z$[rbp] @@ -24781,7 +24801,7 @@ $LN6@load_jpeg_: 01256 8b 40 04 mov eax, DWORD PTR [rax+4] 01259 89 01 mov DWORD PTR [rcx], eax -; 3509 : if (comp) *comp = z->s->img_n >= 3 ? 3 : 1; // report original components, not output +; 3522 : if (comp) *comp = z->s->img_n >= 3 ? 3 : 1; // report original components, not output 0125b 48 83 bd 48 05 00 00 00 cmp QWORD PTR comp$[rbp], 0 @@ -24805,14 +24825,14 @@ $LN104@load_jpeg_: 01298 89 08 mov DWORD PTR [rax], ecx $LN81@load_jpeg_: -; 3510 : return output; +; 3523 : return output; 0129a 48 8b 85 c8 00 00 00 mov rax, QWORD PTR output$8[rbp] $LN1@load_jpeg_: -; 3511 : } -; 3512 : } +; 3524 : } +; 3525 : } 012a1 48 8b f8 mov rdi, rax 012a4 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48] @@ -24840,7 +24860,7 @@ x$ = 256 y$ = 264 stbi__blinn_8x8 PROC ; COMDAT -; 3337 : { +; 3350 : { 00000 88 54 24 10 mov BYTE PTR [rsp+16], dl 00004 88 4c 24 08 mov BYTE PTR [rsp+8], cl @@ -24853,7 +24873,7 @@ stbi__blinn_8x8 PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001d e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 3338 : unsigned int t = x * y + 128; +; 3351 : unsigned int t = x * y + 128; 00022 0f b6 85 00 01 00 00 movzx eax, BYTE PTR x$[rbp] @@ -24863,7 +24883,7 @@ stbi__blinn_8x8 PROC ; COMDAT 00033 05 80 00 00 00 add eax, 128 ; 00000080H 00038 89 45 04 mov DWORD PTR t$[rbp], eax -; 3339 : return (stbi_uc)((t + (t >> 8)) >> 8); +; 3352 : return (stbi_uc)((t + (t >> 8)) >> 8); 0003b 8b 45 04 mov eax, DWORD PTR t$[rbp] 0003e c1 e8 08 shr eax, 8 @@ -24872,7 +24892,7 @@ stbi__blinn_8x8 PROC ; COMDAT 00046 8b c1 mov eax, ecx 00048 c1 e8 08 shr eax, 8 -; 3340 : } +; 3353 : } 0004b 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -24888,7 +24908,7 @@ _TEXT SEGMENT j$ = 224 stbi__cleanup_jpeg PROC ; COMDAT -; 3321 : { +; 3334 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -24900,7 +24920,7 @@ stbi__cleanup_jpeg PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 3322 : stbi__free_jpeg_components(j, j->s->img_n, 0); +; 3335 : stbi__free_jpeg_components(j, j->s->img_n, 0); 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR j$[rbp] @@ -24911,7 +24931,7 @@ stbi__cleanup_jpeg PROC ; COMDAT 00 00 mov rcx, QWORD PTR j$[rbp] 00036 e8 00 00 00 00 call stbi__free_jpeg_components -; 3323 : } +; 3336 : } 0003b 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] @@ -24927,7 +24947,7 @@ _TEXT SEGMENT j$ = 224 stbi__setup_jpeg PROC ; COMDAT -; 3299 : { +; 3312 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -24939,7 +24959,7 @@ stbi__setup_jpeg PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 3300 : j->idct_block_kernel = stbi__idct_block; +; 3313 : j->idct_block_kernel = stbi__idct_block; 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR j$[rbp] @@ -24948,7 +24968,7 @@ stbi__setup_jpeg PROC ; COMDAT 0002d 48 89 88 70 48 00 00 mov QWORD PTR [rax+18544], rcx -; 3301 : j->YCbCr_to_RGB_kernel = stbi__YCbCr_to_RGB_row; +; 3314 : j->YCbCr_to_RGB_kernel = stbi__YCbCr_to_RGB_row; 00034 48 8b 85 e0 00 00 00 mov rax, QWORD PTR j$[rbp] @@ -24957,7 +24977,7 @@ stbi__setup_jpeg PROC ; COMDAT 00042 48 89 88 78 48 00 00 mov QWORD PTR [rax+18552], rcx -; 3302 : j->resample_row_hv_2_kernel = stbi__resample_row_hv_2; +; 3315 : j->resample_row_hv_2_kernel = stbi__resample_row_hv_2; 00049 48 8b 85 e0 00 00 00 mov rax, QWORD PTR j$[rbp] @@ -24966,15 +24986,15 @@ stbi__setup_jpeg PROC ; COMDAT 00057 48 89 88 80 48 00 00 mov QWORD PTR [rax+18560], rcx -; 3303 : -; 3304 : #ifdef STBI_SSE2 -; 3305 : if (stbi__sse2_available()) { +; 3316 : +; 3317 : #ifdef STBI_SSE2 +; 3318 : if (stbi__sse2_available()) { 0005e e8 00 00 00 00 call stbi__sse2_available 00063 85 c0 test eax, eax 00065 74 3f je SHORT $LN2@stbi__setu -; 3306 : j->idct_block_kernel = stbi__idct_simd; +; 3319 : j->idct_block_kernel = stbi__idct_simd; 00067 48 8b 85 e0 00 00 00 mov rax, QWORD PTR j$[rbp] @@ -24983,7 +25003,7 @@ stbi__setup_jpeg PROC ; COMDAT 00075 48 89 88 70 48 00 00 mov QWORD PTR [rax+18544], rcx -; 3307 : j->YCbCr_to_RGB_kernel = stbi__YCbCr_to_RGB_simd; +; 3320 : j->YCbCr_to_RGB_kernel = stbi__YCbCr_to_RGB_simd; 0007c 48 8b 85 e0 00 00 00 mov rax, QWORD PTR j$[rbp] @@ -24992,7 +25012,7 @@ stbi__setup_jpeg PROC ; COMDAT 0008a 48 89 88 78 48 00 00 mov QWORD PTR [rax+18552], rcx -; 3308 : j->resample_row_hv_2_kernel = stbi__resample_row_hv_2_simd; +; 3321 : j->resample_row_hv_2_kernel = stbi__resample_row_hv_2_simd; 00091 48 8b 85 e0 00 00 00 mov rax, QWORD PTR j$[rbp] @@ -25002,15 +25022,15 @@ stbi__setup_jpeg PROC ; COMDAT 00 00 mov QWORD PTR [rax+18560], rcx $LN2@stbi__setu: -; 3309 : } -; 3310 : #endif -; 3311 : -; 3312 : #ifdef STBI_NEON -; 3313 : j->idct_block_kernel = stbi__idct_simd; -; 3314 : j->YCbCr_to_RGB_kernel = stbi__YCbCr_to_RGB_simd; -; 3315 : j->resample_row_hv_2_kernel = stbi__resample_row_hv_2_simd; -; 3316 : #endif -; 3317 : } +; 3322 : } +; 3323 : #endif +; 3324 : +; 3325 : #ifdef STBI_NEON +; 3326 : j->idct_block_kernel = stbi__idct_simd; +; 3327 : j->YCbCr_to_RGB_kernel = stbi__YCbCr_to_RGB_simd; +; 3328 : j->resample_row_hv_2_kernel = stbi__resample_row_hv_2_simd; +; 3329 : #endif +; 3330 : } 000a6 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] @@ -25071,7 +25091,7 @@ count$ = 2640 step$ = 2648 stbi__YCbCr_to_RGB_simd PROC ; COMDAT -; 3164 : { +; 3177 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -25086,73 +25106,73 @@ stbi__YCbCr_to_RGB_simd PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 3165 : int i = 0; +; 3178 : int i = 0; 0002e c7 45 04 00 00 00 00 mov DWORD PTR i$[rbp], 0 -; 3166 : -; 3167 : #ifdef STBI_SSE2 -; 3168 : // step == 3 is pretty ugly on the final interleave, and i'm not convinced -; 3169 : // it's useful in practice (you wouldn't use it for textures, for example). -; 3170 : // so just accelerate step == 4 case. -; 3171 : if (step == 4) { +; 3179 : +; 3180 : #ifdef STBI_SSE2 +; 3181 : // step == 3 is pretty ugly on the final interleave, and i'm not convinced +; 3182 : // it's useful in practice (you wouldn't use it for textures, for example). +; 3183 : // so just accelerate step == 4 case. +; 3184 : if (step == 4) { 00035 83 bd 58 0a 00 00 04 cmp DWORD PTR step$[rbp], 4 0003c 0f 85 28 03 00 00 jne $LN8@stbi__YCbC -; 3172 : // this is a fairly straightforward implementation and not super-optimized. -; 3173 : __m128i signflip = _mm_set1_epi8(-0x80); +; 3185 : // this is a fairly straightforward implementation and not super-optimized. +; 3186 : __m128i signflip = _mm_set1_epi8(-0x80); 00042 66 0f 6f 05 00 00 00 00 movdqa xmm0, XMMWORD PTR __xmm@80808080808080808080808080808080 0004a 66 0f 7f 45 30 movdqa XMMWORD PTR signflip$1[rbp], xmm0 -; 3174 : __m128i cr_const0 = _mm_set1_epi16((short)(1.40200f * 4096.0f + 0.5f)); +; 3187 : __m128i cr_const0 = _mm_set1_epi16((short)(1.40200f * 4096.0f + 0.5f)); 0004f 66 0f 6f 05 00 00 00 00 movdqa xmm0, XMMWORD PTR __xmm@166f166f166f166f166f166f166f166f 00057 66 0f 7f 45 60 movdqa XMMWORD PTR cr_const0$2[rbp], xmm0 -; 3175 : __m128i cr_const1 = _mm_set1_epi16(-(short)(0.71414f * 4096.0f + 0.5f)); +; 3188 : __m128i cr_const1 = _mm_set1_epi16(-(short)(0.71414f * 4096.0f + 0.5f)); 0005c 66 0f 6f 05 00 00 00 00 movdqa xmm0, XMMWORD PTR __xmm@f493f493f493f493f493f493f493f493 00064 66 0f 7f 85 90 00 00 00 movdqa XMMWORD PTR cr_const1$3[rbp], xmm0 -; 3176 : __m128i cb_const0 = _mm_set1_epi16(-(short)(0.34414f * 4096.0f + 0.5f)); +; 3189 : __m128i cb_const0 = _mm_set1_epi16(-(short)(0.34414f * 4096.0f + 0.5f)); 0006c 66 0f 6f 05 00 00 00 00 movdqa xmm0, XMMWORD PTR __xmm@fa7efa7efa7efa7efa7efa7efa7efa7e 00074 66 0f 7f 85 c0 00 00 00 movdqa XMMWORD PTR cb_const0$4[rbp], xmm0 -; 3177 : __m128i cb_const1 = _mm_set1_epi16((short)(1.77200f * 4096.0f + 0.5f)); +; 3190 : __m128i cb_const1 = _mm_set1_epi16((short)(1.77200f * 4096.0f + 0.5f)); 0007c 66 0f 6f 05 00 00 00 00 movdqa xmm0, XMMWORD PTR __xmm@1c5a1c5a1c5a1c5a1c5a1c5a1c5a1c5a 00084 66 0f 7f 85 f0 00 00 00 movdqa XMMWORD PTR cb_const1$5[rbp], xmm0 -; 3178 : __m128i y_bias = _mm_set1_epi8((char)(unsigned char)128); +; 3191 : __m128i y_bias = _mm_set1_epi8((char)(unsigned char)128); 0008c 66 0f 6f 05 00 00 00 00 movdqa xmm0, XMMWORD PTR __xmm@80808080808080808080808080808080 00094 66 0f 7f 85 20 01 00 00 movdqa XMMWORD PTR y_bias$6[rbp], xmm0 -; 3179 : __m128i xw = _mm_set1_epi16(255); // alpha channel +; 3192 : __m128i xw = _mm_set1_epi16(255); // alpha channel 0009c 66 0f 6f 05 00 00 00 00 movdqa xmm0, XMMWORD PTR __xmm@00ff00ff00ff00ff00ff00ff00ff00ff 000a4 66 0f 7f 85 50 01 00 00 movdqa XMMWORD PTR xw$7[rbp], xmm0 -; 3180 : -; 3181 : for (; i + 7 < count; i += 8) { +; 3193 : +; 3194 : for (; i + 7 < count; i += 8) { 000ac eb 09 jmp SHORT $LN4@stbi__YCbC $LN2@stbi__YCbC: @@ -25167,8 +25187,8 @@ $LN4@stbi__YCbC: 000c3 0f 8d a1 02 00 00 jge $LN3@stbi__YCbC -; 3182 : // load -; 3183 : __m128i y_bytes = _mm_loadl_epi64((__m128i*) (y + i)); +; 3195 : // load +; 3196 : __m128i y_bytes = _mm_loadl_epi64((__m128i*) (y + i)); 000c9 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 000cd 48 8b 8d 38 0a @@ -25179,7 +25199,7 @@ $LN4@stbi__YCbC: 000de 66 0f 7f 85 80 01 00 00 movdqa XMMWORD PTR y_bytes$8[rbp], xmm0 -; 3184 : __m128i cr_bytes = _mm_loadl_epi64((__m128i*) (pcr + i)); +; 3197 : __m128i cr_bytes = _mm_loadl_epi64((__m128i*) (pcr + i)); 000e6 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 000ea 48 8b 8d 48 0a @@ -25190,7 +25210,7 @@ $LN4@stbi__YCbC: 000fb 66 0f 7f 85 b0 01 00 00 movdqa XMMWORD PTR cr_bytes$9[rbp], xmm0 -; 3185 : __m128i cb_bytes = _mm_loadl_epi64((__m128i*) (pcb + i)); +; 3198 : __m128i cb_bytes = _mm_loadl_epi64((__m128i*) (pcb + i)); 00103 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 00107 48 8b 8d 40 0a @@ -25201,7 +25221,7 @@ $LN4@stbi__YCbC: 00118 66 0f 7f 85 e0 01 00 00 movdqa XMMWORD PTR cb_bytes$10[rbp], xmm0 -; 3186 : __m128i cr_biased = _mm_xor_si128(cr_bytes, signflip); // -128 +; 3199 : __m128i cr_biased = _mm_xor_si128(cr_bytes, signflip); // -128 00120 66 0f 6f 85 b0 01 00 00 movdqa xmm0, XMMWORD PTR cr_bytes$9[rbp] @@ -25209,7 +25229,7 @@ $LN4@stbi__YCbC: 0012c 66 0f 7f 85 10 02 00 00 movdqa XMMWORD PTR cr_biased$11[rbp], xmm0 -; 3187 : __m128i cb_biased = _mm_xor_si128(cb_bytes, signflip); // -128 +; 3200 : __m128i cb_biased = _mm_xor_si128(cb_bytes, signflip); // -128 00134 66 0f 6f 85 e0 01 00 00 movdqa xmm0, XMMWORD PTR cb_bytes$10[rbp] @@ -25217,9 +25237,9 @@ $LN4@stbi__YCbC: 00140 66 0f 7f 85 40 02 00 00 movdqa XMMWORD PTR cb_biased$12[rbp], xmm0 -; 3188 : -; 3189 : // unpack to short (and left-shift cr, cb by 8) -; 3190 : __m128i yw = _mm_unpacklo_epi8(y_bias, y_bytes); +; 3201 : +; 3202 : // unpack to short (and left-shift cr, cb by 8) +; 3203 : __m128i yw = _mm_unpacklo_epi8(y_bias, y_bytes); 00148 66 0f 6f 85 20 01 00 00 movdqa xmm0, XMMWORD PTR y_bias$6[rbp] @@ -25228,7 +25248,7 @@ $LN4@stbi__YCbC: 00158 66 0f 7f 85 70 02 00 00 movdqa XMMWORD PTR yw$13[rbp], xmm0 -; 3191 : __m128i crw = _mm_unpacklo_epi8(_mm_setzero_si128(), cr_biased); +; 3204 : __m128i crw = _mm_unpacklo_epi8(_mm_setzero_si128(), cr_biased); 00160 66 0f ef c0 pxor xmm0, xmm0 00164 66 0f 60 85 10 @@ -25236,7 +25256,7 @@ $LN4@stbi__YCbC: 0016c 66 0f 7f 85 a0 02 00 00 movdqa XMMWORD PTR crw$14[rbp], xmm0 -; 3192 : __m128i cbw = _mm_unpacklo_epi8(_mm_setzero_si128(), cb_biased); +; 3205 : __m128i cbw = _mm_unpacklo_epi8(_mm_setzero_si128(), cb_biased); 00174 66 0f ef c0 pxor xmm0, xmm0 00178 66 0f 60 85 40 @@ -25244,9 +25264,9 @@ $LN4@stbi__YCbC: 00180 66 0f 7f 85 d0 02 00 00 movdqa XMMWORD PTR cbw$15[rbp], xmm0 -; 3193 : -; 3194 : // color transform -; 3195 : __m128i yws = _mm_srli_epi16(yw, 4); +; 3206 : +; 3207 : // color transform +; 3208 : __m128i yws = _mm_srli_epi16(yw, 4); 00188 66 0f 6f 85 70 02 00 00 movdqa xmm0, XMMWORD PTR yw$13[rbp] @@ -25254,7 +25274,7 @@ $LN4@stbi__YCbC: 00195 66 0f 7f 85 00 03 00 00 movdqa XMMWORD PTR yws$16[rbp], xmm0 -; 3196 : __m128i cr0 = _mm_mulhi_epi16(cr_const0, crw); +; 3209 : __m128i cr0 = _mm_mulhi_epi16(cr_const0, crw); 0019d 66 0f 6f 45 60 movdqa xmm0, XMMWORD PTR cr_const0$2[rbp] 001a2 66 0f e5 85 a0 @@ -25262,7 +25282,7 @@ $LN4@stbi__YCbC: 001aa 66 0f 7f 85 30 03 00 00 movdqa XMMWORD PTR cr0$17[rbp], xmm0 -; 3197 : __m128i cb0 = _mm_mulhi_epi16(cb_const0, cbw); +; 3210 : __m128i cb0 = _mm_mulhi_epi16(cb_const0, cbw); 001b2 66 0f 6f 85 c0 00 00 00 movdqa xmm0, XMMWORD PTR cb_const0$4[rbp] @@ -25271,7 +25291,7 @@ $LN4@stbi__YCbC: 001c2 66 0f 7f 85 60 03 00 00 movdqa XMMWORD PTR cb0$18[rbp], xmm0 -; 3198 : __m128i cb1 = _mm_mulhi_epi16(cbw, cb_const1); +; 3211 : __m128i cb1 = _mm_mulhi_epi16(cbw, cb_const1); 001ca 66 0f 6f 85 d0 02 00 00 movdqa xmm0, XMMWORD PTR cbw$15[rbp] @@ -25280,7 +25300,7 @@ $LN4@stbi__YCbC: 001da 66 0f 7f 85 90 03 00 00 movdqa XMMWORD PTR cb1$19[rbp], xmm0 -; 3199 : __m128i cr1 = _mm_mulhi_epi16(crw, cr_const1); +; 3212 : __m128i cr1 = _mm_mulhi_epi16(crw, cr_const1); 001e2 66 0f 6f 85 a0 02 00 00 movdqa xmm0, XMMWORD PTR crw$14[rbp] @@ -25289,7 +25309,7 @@ $LN4@stbi__YCbC: 001f2 66 0f 7f 85 c0 03 00 00 movdqa XMMWORD PTR cr1$20[rbp], xmm0 -; 3200 : __m128i rws = _mm_add_epi16(cr0, yws); +; 3213 : __m128i rws = _mm_add_epi16(cr0, yws); 001fa 66 0f 6f 85 30 03 00 00 movdqa xmm0, XMMWORD PTR cr0$17[rbp] @@ -25298,7 +25318,7 @@ $LN4@stbi__YCbC: 0020a 66 0f 7f 85 f0 03 00 00 movdqa XMMWORD PTR rws$21[rbp], xmm0 -; 3201 : __m128i gwt = _mm_add_epi16(cb0, yws); +; 3214 : __m128i gwt = _mm_add_epi16(cb0, yws); 00212 66 0f 6f 85 60 03 00 00 movdqa xmm0, XMMWORD PTR cb0$18[rbp] @@ -25307,7 +25327,7 @@ $LN4@stbi__YCbC: 00222 66 0f 7f 85 20 04 00 00 movdqa XMMWORD PTR gwt$22[rbp], xmm0 -; 3202 : __m128i bws = _mm_add_epi16(yws, cb1); +; 3215 : __m128i bws = _mm_add_epi16(yws, cb1); 0022a 66 0f 6f 85 00 03 00 00 movdqa xmm0, XMMWORD PTR yws$16[rbp] @@ -25316,7 +25336,7 @@ $LN4@stbi__YCbC: 0023a 66 0f 7f 85 50 04 00 00 movdqa XMMWORD PTR bws$23[rbp], xmm0 -; 3203 : __m128i gws = _mm_add_epi16(gwt, cr1); +; 3216 : __m128i gws = _mm_add_epi16(gwt, cr1); 00242 66 0f 6f 85 20 04 00 00 movdqa xmm0, XMMWORD PTR gwt$22[rbp] @@ -25325,9 +25345,9 @@ $LN4@stbi__YCbC: 00252 66 0f 7f 85 80 04 00 00 movdqa XMMWORD PTR gws$24[rbp], xmm0 -; 3204 : -; 3205 : // descale -; 3206 : __m128i rw = _mm_srai_epi16(rws, 4); +; 3217 : +; 3218 : // descale +; 3219 : __m128i rw = _mm_srai_epi16(rws, 4); 0025a 66 0f 6f 85 f0 03 00 00 movdqa xmm0, XMMWORD PTR rws$21[rbp] @@ -25335,7 +25355,7 @@ $LN4@stbi__YCbC: 00267 66 0f 7f 85 b0 04 00 00 movdqa XMMWORD PTR rw$25[rbp], xmm0 -; 3207 : __m128i bw = _mm_srai_epi16(bws, 4); +; 3220 : __m128i bw = _mm_srai_epi16(bws, 4); 0026f 66 0f 6f 85 50 04 00 00 movdqa xmm0, XMMWORD PTR bws$23[rbp] @@ -25343,7 +25363,7 @@ $LN4@stbi__YCbC: 0027c 66 0f 7f 85 e0 04 00 00 movdqa XMMWORD PTR bw$26[rbp], xmm0 -; 3208 : __m128i gw = _mm_srai_epi16(gws, 4); +; 3221 : __m128i gw = _mm_srai_epi16(gws, 4); 00284 66 0f 6f 85 80 04 00 00 movdqa xmm0, XMMWORD PTR gws$24[rbp] @@ -25351,9 +25371,9 @@ $LN4@stbi__YCbC: 00291 66 0f 7f 85 10 05 00 00 movdqa XMMWORD PTR gw$27[rbp], xmm0 -; 3209 : -; 3210 : // back to byte, set up for transpose -; 3211 : __m128i brb = _mm_packus_epi16(rw, bw); +; 3222 : +; 3223 : // back to byte, set up for transpose +; 3224 : __m128i brb = _mm_packus_epi16(rw, bw); 00299 66 0f 6f 85 b0 04 00 00 movdqa xmm0, XMMWORD PTR rw$25[rbp] @@ -25362,7 +25382,7 @@ $LN4@stbi__YCbC: 002a9 66 0f 7f 85 40 05 00 00 movdqa XMMWORD PTR brb$28[rbp], xmm0 -; 3212 : __m128i gxb = _mm_packus_epi16(gw, xw); +; 3225 : __m128i gxb = _mm_packus_epi16(gw, xw); 002b1 66 0f 6f 85 10 05 00 00 movdqa xmm0, XMMWORD PTR gw$27[rbp] @@ -25371,9 +25391,9 @@ $LN4@stbi__YCbC: 002c1 66 0f 7f 85 70 05 00 00 movdqa XMMWORD PTR gxb$29[rbp], xmm0 -; 3213 : -; 3214 : // transpose to interleave channels -; 3215 : __m128i t0 = _mm_unpacklo_epi8(brb, gxb); +; 3226 : +; 3227 : // transpose to interleave channels +; 3228 : __m128i t0 = _mm_unpacklo_epi8(brb, gxb); 002c9 66 0f 6f 85 40 05 00 00 movdqa xmm0, XMMWORD PTR brb$28[rbp] @@ -25382,7 +25402,7 @@ $LN4@stbi__YCbC: 002d9 66 0f 7f 85 a0 05 00 00 movdqa XMMWORD PTR t0$30[rbp], xmm0 -; 3216 : __m128i t1 = _mm_unpackhi_epi8(brb, gxb); +; 3229 : __m128i t1 = _mm_unpackhi_epi8(brb, gxb); 002e1 66 0f 6f 85 40 05 00 00 movdqa xmm0, XMMWORD PTR brb$28[rbp] @@ -25391,7 +25411,7 @@ $LN4@stbi__YCbC: 002f1 66 0f 7f 85 d0 05 00 00 movdqa XMMWORD PTR t1$31[rbp], xmm0 -; 3217 : __m128i o0 = _mm_unpacklo_epi16(t0, t1); +; 3230 : __m128i o0 = _mm_unpacklo_epi16(t0, t1); 002f9 66 0f 6f 85 a0 05 00 00 movdqa xmm0, XMMWORD PTR t0$30[rbp] @@ -25400,7 +25420,7 @@ $LN4@stbi__YCbC: 00309 66 0f 7f 85 00 06 00 00 movdqa XMMWORD PTR o0$32[rbp], xmm0 -; 3218 : __m128i o1 = _mm_unpackhi_epi16(t0, t1); +; 3231 : __m128i o1 = _mm_unpackhi_epi16(t0, t1); 00311 66 0f 6f 85 a0 05 00 00 movdqa xmm0, XMMWORD PTR t0$30[rbp] @@ -25409,9 +25429,9 @@ $LN4@stbi__YCbC: 00321 66 0f 7f 85 30 06 00 00 movdqa XMMWORD PTR o1$33[rbp], xmm0 -; 3219 : -; 3220 : // store -; 3221 : _mm_storeu_si128((__m128i*) (out + 0), o0); +; 3232 : +; 3233 : // store +; 3234 : _mm_storeu_si128((__m128i*) (out + 0), o0); 00329 48 8b 85 30 0a 00 00 mov rax, QWORD PTR out$[rbp] @@ -25419,7 +25439,7 @@ $LN4@stbi__YCbC: 06 00 00 movdqa xmm0, XMMWORD PTR o0$32[rbp] 00338 f3 0f 7f 00 movdqu XMMWORD PTR [rax], xmm0 -; 3222 : _mm_storeu_si128((__m128i*) (out + 16), o1); +; 3235 : _mm_storeu_si128((__m128i*) (out + 16), o1); 0033c 48 8b 85 30 0a 00 00 mov rax, QWORD PTR out$[rbp] @@ -25428,7 +25448,7 @@ $LN4@stbi__YCbC: 06 00 00 movdqa xmm0, XMMWORD PTR o1$33[rbp] 0034f f3 0f 7f 00 movdqu XMMWORD PTR [rax], xmm0 -; 3223 : out += 32; +; 3236 : out += 32; 00353 48 8b 85 30 0a 00 00 mov rax, QWORD PTR out$[rbp] @@ -25436,62 +25456,62 @@ $LN4@stbi__YCbC: 0035e 48 89 85 30 0a 00 00 mov QWORD PTR out$[rbp], rax -; 3224 : } +; 3237 : } 00365 e9 44 fd ff ff jmp $LN2@stbi__YCbC $LN3@stbi__YCbC: $LN8@stbi__YCbC: -; 3225 : } -; 3226 : #endif -; 3227 : -; 3228 : #ifdef STBI_NEON -; 3229 : // in this version, step=3 support would be easy to add. but is there demand? -; 3230 : if (step == 4) { -; 3231 : // this is a fairly straightforward implementation and not super-optimized. -; 3232 : uint8x8_t signflip = vdup_n_u8(0x80); -; 3233 : int16x8_t cr_const0 = vdupq_n_s16((short)(1.40200f * 4096.0f + 0.5f)); -; 3234 : int16x8_t cr_const1 = vdupq_n_s16(-(short)(0.71414f * 4096.0f + 0.5f)); -; 3235 : int16x8_t cb_const0 = vdupq_n_s16(-(short)(0.34414f * 4096.0f + 0.5f)); -; 3236 : int16x8_t cb_const1 = vdupq_n_s16((short)(1.77200f * 4096.0f + 0.5f)); -; 3237 : -; 3238 : for (; i + 7 < count; i += 8) { -; 3239 : // load -; 3240 : uint8x8_t y_bytes = vld1_u8(y + i); -; 3241 : uint8x8_t cr_bytes = vld1_u8(pcr + i); -; 3242 : uint8x8_t cb_bytes = vld1_u8(pcb + i); -; 3243 : int8x8_t cr_biased = vreinterpret_s8_u8(vsub_u8(cr_bytes, signflip)); -; 3244 : int8x8_t cb_biased = vreinterpret_s8_u8(vsub_u8(cb_bytes, signflip)); -; 3245 : -; 3246 : // expand to s16 -; 3247 : int16x8_t yws = vreinterpretq_s16_u16(vshll_n_u8(y_bytes, 4)); -; 3248 : int16x8_t crw = vshll_n_s8(cr_biased, 7); -; 3249 : int16x8_t cbw = vshll_n_s8(cb_biased, 7); +; 3238 : } +; 3239 : #endif +; 3240 : +; 3241 : #ifdef STBI_NEON +; 3242 : // in this version, step=3 support would be easy to add. but is there demand? +; 3243 : if (step == 4) { +; 3244 : // this is a fairly straightforward implementation and not super-optimized. +; 3245 : uint8x8_t signflip = vdup_n_u8(0x80); +; 3246 : int16x8_t cr_const0 = vdupq_n_s16((short)(1.40200f * 4096.0f + 0.5f)); +; 3247 : int16x8_t cr_const1 = vdupq_n_s16(-(short)(0.71414f * 4096.0f + 0.5f)); +; 3248 : int16x8_t cb_const0 = vdupq_n_s16(-(short)(0.34414f * 4096.0f + 0.5f)); +; 3249 : int16x8_t cb_const1 = vdupq_n_s16((short)(1.77200f * 4096.0f + 0.5f)); ; 3250 : -; 3251 : // color transform -; 3252 : int16x8_t cr0 = vqdmulhq_s16(crw, cr_const0); -; 3253 : int16x8_t cb0 = vqdmulhq_s16(cbw, cb_const0); -; 3254 : int16x8_t cr1 = vqdmulhq_s16(crw, cr_const1); -; 3255 : int16x8_t cb1 = vqdmulhq_s16(cbw, cb_const1); -; 3256 : int16x8_t rws = vaddq_s16(yws, cr0); -; 3257 : int16x8_t gws = vaddq_s16(vaddq_s16(yws, cb0), cr1); -; 3258 : int16x8_t bws = vaddq_s16(yws, cb1); -; 3259 : -; 3260 : // undo scaling, round, convert to byte -; 3261 : uint8x8x4_t o; -; 3262 : o.val[0] = vqrshrun_n_s16(rws, 4); -; 3263 : o.val[1] = vqrshrun_n_s16(gws, 4); -; 3264 : o.val[2] = vqrshrun_n_s16(bws, 4); -; 3265 : o.val[3] = vdup_n_u8(255); -; 3266 : -; 3267 : // store, interleaving r/g/b/a -; 3268 : vst4_u8(out, o); -; 3269 : out += 8 * 4; -; 3270 : } -; 3271 : } -; 3272 : #endif -; 3273 : -; 3274 : for (; i < count; ++i) { +; 3251 : for (; i + 7 < count; i += 8) { +; 3252 : // load +; 3253 : uint8x8_t y_bytes = vld1_u8(y + i); +; 3254 : uint8x8_t cr_bytes = vld1_u8(pcr + i); +; 3255 : uint8x8_t cb_bytes = vld1_u8(pcb + i); +; 3256 : int8x8_t cr_biased = vreinterpret_s8_u8(vsub_u8(cr_bytes, signflip)); +; 3257 : int8x8_t cb_biased = vreinterpret_s8_u8(vsub_u8(cb_bytes, signflip)); +; 3258 : +; 3259 : // expand to s16 +; 3260 : int16x8_t yws = vreinterpretq_s16_u16(vshll_n_u8(y_bytes, 4)); +; 3261 : int16x8_t crw = vshll_n_s8(cr_biased, 7); +; 3262 : int16x8_t cbw = vshll_n_s8(cb_biased, 7); +; 3263 : +; 3264 : // color transform +; 3265 : int16x8_t cr0 = vqdmulhq_s16(crw, cr_const0); +; 3266 : int16x8_t cb0 = vqdmulhq_s16(cbw, cb_const0); +; 3267 : int16x8_t cr1 = vqdmulhq_s16(crw, cr_const1); +; 3268 : int16x8_t cb1 = vqdmulhq_s16(cbw, cb_const1); +; 3269 : int16x8_t rws = vaddq_s16(yws, cr0); +; 3270 : int16x8_t gws = vaddq_s16(vaddq_s16(yws, cb0), cr1); +; 3271 : int16x8_t bws = vaddq_s16(yws, cb1); +; 3272 : +; 3273 : // undo scaling, round, convert to byte +; 3274 : uint8x8x4_t o; +; 3275 : o.val[0] = vqrshrun_n_s16(rws, 4); +; 3276 : o.val[1] = vqrshrun_n_s16(gws, 4); +; 3277 : o.val[2] = vqrshrun_n_s16(bws, 4); +; 3278 : o.val[3] = vdup_n_u8(255); +; 3279 : +; 3280 : // store, interleaving r/g/b/a +; 3281 : vst4_u8(out, o); +; 3282 : out += 8 * 4; +; 3283 : } +; 3284 : } +; 3285 : #endif +; 3286 : +; 3287 : for (; i < count; ++i) { 0036a eb 08 jmp SHORT $LN7@stbi__YCbC $LN5@stbi__YCbC: @@ -25505,7 +25525,7 @@ $LN7@stbi__YCbC: 0037d 0f 8d e1 01 00 00 jge $LN6@stbi__YCbC -; 3275 : int y_fixed = (y[i] << 20) + (1 << 19); // rounding +; 3288 : int y_fixed = (y[i] << 20) + (1 << 19); // rounding 00383 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 00387 48 8b 8d 38 0a @@ -25516,8 +25536,8 @@ $LN7@stbi__YCbC: 0039a 89 85 54 06 00 00 mov DWORD PTR y_fixed$34[rbp], eax -; 3276 : int r, g, b; -; 3277 : int cr = pcr[i] - 128; +; 3289 : int r, g, b; +; 3290 : int cr = pcr[i] - 128; 003a0 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 003a4 48 8b 8d 48 0a @@ -25527,7 +25547,7 @@ $LN7@stbi__YCbC: 003b4 89 85 d4 06 00 00 mov DWORD PTR cr$38[rbp], eax -; 3278 : int cb = pcb[i] - 128; +; 3291 : int cb = pcb[i] - 128; 003ba 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 003be 48 8b 8d 40 0a @@ -25537,7 +25557,7 @@ $LN7@stbi__YCbC: 003ce 89 85 f4 06 00 00 mov DWORD PTR cb$39[rbp], eax -; 3279 : r = y_fixed + cr * stbi__float2fixed(1.40200f); +; 3292 : r = y_fixed + cr * stbi__float2fixed(1.40200f); 003d4 69 85 d4 06 00 00 00 6f 16 00 imul eax, DWORD PTR cr$38[rbp], 1470208 ; 00166f00H @@ -25548,7 +25568,7 @@ $LN7@stbi__YCbC: 003e8 89 85 74 06 00 00 mov DWORD PTR r$35[rbp], eax -; 3280 : g = y_fixed + cr * -stbi__float2fixed(0.71414f) + ((cb * -stbi__float2fixed(0.34414f)) & 0xffff0000); +; 3293 : g = y_fixed + cr * -stbi__float2fixed(0.71414f) + ((cb * -stbi__float2fixed(0.34414f)) & 0xffff0000); 003ee 69 85 d4 06 00 00 00 93 f4 ff imul eax, DWORD PTR cr$38[rbp], -748800 ; fffffffffff49300H @@ -25564,7 +25584,7 @@ $LN7@stbi__YCbC: 00414 89 85 94 06 00 00 mov DWORD PTR g$36[rbp], eax -; 3281 : b = y_fixed + cb * stbi__float2fixed(1.77200f); +; 3294 : b = y_fixed + cb * stbi__float2fixed(1.77200f); 0041a 69 85 f4 06 00 00 00 5a 1c 00 imul eax, DWORD PTR cb$39[rbp], 1858048 ; 001c5a00H @@ -25575,7 +25595,7 @@ $LN7@stbi__YCbC: 0042e 89 85 b4 06 00 00 mov DWORD PTR b$37[rbp], eax -; 3282 : r >>= 20; +; 3295 : r >>= 20; 00434 8b 85 74 06 00 00 mov eax, DWORD PTR r$35[rbp] @@ -25583,7 +25603,7 @@ $LN7@stbi__YCbC: 0043d 89 85 74 06 00 00 mov DWORD PTR r$35[rbp], eax -; 3283 : g >>= 20; +; 3296 : g >>= 20; 00443 8b 85 94 06 00 00 mov eax, DWORD PTR g$36[rbp] @@ -25591,7 +25611,7 @@ $LN7@stbi__YCbC: 0044c 89 85 94 06 00 00 mov DWORD PTR g$36[rbp], eax -; 3284 : b >>= 20; +; 3297 : b >>= 20; 00452 8b 85 b4 06 00 00 mov eax, DWORD PTR b$37[rbp] @@ -25599,7 +25619,7 @@ $LN7@stbi__YCbC: 0045b 89 85 b4 06 00 00 mov DWORD PTR b$37[rbp], eax -; 3285 : if ((unsigned)r > 255) { if (r < 0) r = 0; else r = 255; } +; 3298 : if ((unsigned)r > 255) { if (r < 0) r = 0; else r = 255; } 00461 81 bd 74 06 00 00 ff 00 00 00 cmp DWORD PTR r$35[rbp], 255 ; 000000ffH @@ -25616,7 +25636,7 @@ $LN10@stbi__YCbC: $LN11@stbi__YCbC: $LN9@stbi__YCbC: -; 3286 : if ((unsigned)g > 255) { if (g < 0) g = 0; else g = 255; } +; 3299 : if ((unsigned)g > 255) { if (g < 0) g = 0; else g = 255; } 0048c 81 bd 94 06 00 00 ff 00 00 00 cmp DWORD PTR g$36[rbp], 255 ; 000000ffH @@ -25633,7 +25653,7 @@ $LN13@stbi__YCbC: $LN14@stbi__YCbC: $LN12@stbi__YCbC: -; 3287 : if ((unsigned)b > 255) { if (b < 0) b = 0; else b = 255; } +; 3300 : if ((unsigned)b > 255) { if (b < 0) b = 0; else b = 255; } 004b7 81 bd b4 06 00 00 ff 00 00 00 cmp DWORD PTR b$37[rbp], 255 ; 000000ffH @@ -25650,7 +25670,7 @@ $LN16@stbi__YCbC: $LN17@stbi__YCbC: $LN15@stbi__YCbC: -; 3288 : out[0] = (stbi_uc)r; +; 3301 : out[0] = (stbi_uc)r; 004e2 b8 01 00 00 00 mov eax, 1 004e7 48 6b c0 00 imul rax, rax, 0 @@ -25660,7 +25680,7 @@ $LN15@stbi__YCbC: 00 00 movzx edx, BYTE PTR r$35[rbp] 004f9 88 14 01 mov BYTE PTR [rcx+rax], dl -; 3289 : out[1] = (stbi_uc)g; +; 3302 : out[1] = (stbi_uc)g; 004fc b8 01 00 00 00 mov eax, 1 00501 48 6b c0 01 imul rax, rax, 1 @@ -25670,7 +25690,7 @@ $LN15@stbi__YCbC: 00 00 movzx edx, BYTE PTR g$36[rbp] 00513 88 14 01 mov BYTE PTR [rcx+rax], dl -; 3290 : out[2] = (stbi_uc)b; +; 3303 : out[2] = (stbi_uc)b; 00516 b8 01 00 00 00 mov eax, 1 0051b 48 6b c0 02 imul rax, rax, 2 @@ -25680,7 +25700,7 @@ $LN15@stbi__YCbC: 00 00 movzx edx, BYTE PTR b$37[rbp] 0052d 88 14 01 mov BYTE PTR [rcx+rax], dl -; 3291 : out[3] = 255; +; 3304 : out[3] = 255; 00530 b8 01 00 00 00 mov eax, 1 00535 48 6b c0 03 imul rax, rax, 3 @@ -25688,7 +25708,7 @@ $LN15@stbi__YCbC: 00 00 mov rcx, QWORD PTR out$[rbp] 00540 c6 04 01 ff mov BYTE PTR [rcx+rax], 255 ; 000000ffH -; 3292 : out += step; +; 3305 : out += step; 00544 48 63 85 58 0a 00 00 movsxd rax, DWORD PTR step$[rbp] @@ -25699,12 +25719,12 @@ $LN15@stbi__YCbC: 00558 48 89 85 30 0a 00 00 mov QWORD PTR out$[rbp], rax -; 3293 : } +; 3306 : } 0055f e9 08 fe ff ff jmp $LN5@stbi__YCbC $LN6@stbi__YCbC: -; 3294 : } +; 3307 : } 00564 48 8d a5 18 0a 00 00 lea rsp, QWORD PTR [rbp+2584] @@ -25732,7 +25752,7 @@ count$ = 480 step$ = 488 stbi__YCbCr_to_RGB_row PROC ; COMDAT -; 3138 : { +; 3151 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -25747,8 +25767,8 @@ stbi__YCbCr_to_RGB_row PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 3139 : int i; -; 3140 : for (i = 0; i < count; ++i) { +; 3152 : int i; +; 3153 : for (i = 0; i < count; ++i) { 0002e c7 45 04 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -25764,7 +25784,7 @@ $LN4@stbi__YCbC: 00048 0f 8d a5 01 00 00 jge $LN3@stbi__YCbC -; 3141 : int y_fixed = (y[i] << 20) + (1 << 19); // rounding +; 3154 : int y_fixed = (y[i] << 20) + (1 << 19); // rounding 0004e 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 00052 48 8b 8d c8 01 @@ -25774,8 +25794,8 @@ $LN4@stbi__YCbC: 00060 05 00 00 08 00 add eax, 524288 ; 00080000H 00065 89 45 24 mov DWORD PTR y_fixed$1[rbp], eax -; 3142 : int r, g, b; -; 3143 : int cr = pcr[i] - 128; +; 3155 : int r, g, b; +; 3156 : int cr = pcr[i] - 128; 00068 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 0006c 48 8b 8d d8 01 @@ -25785,7 +25805,7 @@ $LN4@stbi__YCbC: 0007c 89 85 a4 00 00 00 mov DWORD PTR cr$5[rbp], eax -; 3144 : int cb = pcb[i] - 128; +; 3157 : int cb = pcb[i] - 128; 00082 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 00086 48 8b 8d d0 01 @@ -25795,7 +25815,7 @@ $LN4@stbi__YCbC: 00096 89 85 c4 00 00 00 mov DWORD PTR cb$6[rbp], eax -; 3145 : r = y_fixed + cr * stbi__float2fixed(1.40200f); +; 3158 : r = y_fixed + cr * stbi__float2fixed(1.40200f); 0009c 69 85 a4 00 00 00 00 6f 16 00 imul eax, DWORD PTR cr$5[rbp], 1470208 ; 00166f00H @@ -25804,7 +25824,7 @@ $LN4@stbi__YCbC: 000ab 8b c1 mov eax, ecx 000ad 89 45 44 mov DWORD PTR r$2[rbp], eax -; 3146 : g = y_fixed + (cr * -stbi__float2fixed(0.71414f)) + ((cb * -stbi__float2fixed(0.34414f)) & 0xffff0000); +; 3159 : g = y_fixed + (cr * -stbi__float2fixed(0.71414f)) + ((cb * -stbi__float2fixed(0.34414f)) & 0xffff0000); 000b0 69 85 a4 00 00 00 00 93 f4 ff imul eax, DWORD PTR cr$5[rbp], -748800 ; fffffffffff49300H @@ -25818,7 +25838,7 @@ $LN4@stbi__YCbC: 000d1 03 c1 add eax, ecx 000d3 89 45 64 mov DWORD PTR g$3[rbp], eax -; 3147 : b = y_fixed + cb * stbi__float2fixed(1.77200f); +; 3160 : b = y_fixed + cb * stbi__float2fixed(1.77200f); 000d6 69 85 c4 00 00 00 00 5a 1c 00 imul eax, DWORD PTR cb$6[rbp], 1858048 ; 001c5a00H @@ -25828,19 +25848,19 @@ $LN4@stbi__YCbC: 000e7 89 85 84 00 00 00 mov DWORD PTR b$4[rbp], eax -; 3148 : r >>= 20; +; 3161 : r >>= 20; 000ed 8b 45 44 mov eax, DWORD PTR r$2[rbp] 000f0 c1 f8 14 sar eax, 20 000f3 89 45 44 mov DWORD PTR r$2[rbp], eax -; 3149 : g >>= 20; +; 3162 : g >>= 20; 000f6 8b 45 64 mov eax, DWORD PTR g$3[rbp] 000f9 c1 f8 14 sar eax, 20 000fc 89 45 64 mov DWORD PTR g$3[rbp], eax -; 3150 : b >>= 20; +; 3163 : b >>= 20; 000ff 8b 85 84 00 00 00 mov eax, DWORD PTR b$4[rbp] @@ -25848,7 +25868,7 @@ $LN4@stbi__YCbC: 00108 89 85 84 00 00 00 mov DWORD PTR b$4[rbp], eax -; 3151 : if ((unsigned)r > 255) { if (r < 0) r = 0; else r = 255; } +; 3164 : if ((unsigned)r > 255) { if (r < 0) r = 0; else r = 255; } 0010e 81 7d 44 ff 00 00 00 cmp DWORD PTR r$2[rbp], 255 ; 000000ffH @@ -25864,7 +25884,7 @@ $LN6@stbi__YCbC: $LN7@stbi__YCbC: $LN5@stbi__YCbC: -; 3152 : if ((unsigned)g > 255) { if (g < 0) g = 0; else g = 255; } +; 3165 : if ((unsigned)g > 255) { if (g < 0) g = 0; else g = 255; } 0012d 81 7d 64 ff 00 00 00 cmp DWORD PTR g$3[rbp], 255 ; 000000ffH @@ -25880,7 +25900,7 @@ $LN9@stbi__YCbC: $LN10@stbi__YCbC: $LN8@stbi__YCbC: -; 3153 : if ((unsigned)b > 255) { if (b < 0) b = 0; else b = 255; } +; 3166 : if ((unsigned)b > 255) { if (b < 0) b = 0; else b = 255; } 0014c 81 bd 84 00 00 00 ff 00 00 00 cmp DWORD PTR b$4[rbp], 255 ; 000000ffH @@ -25897,7 +25917,7 @@ $LN12@stbi__YCbC: $LN13@stbi__YCbC: $LN11@stbi__YCbC: -; 3154 : out[0] = (stbi_uc)r; +; 3167 : out[0] = (stbi_uc)r; 00177 b8 01 00 00 00 mov eax, 1 0017c 48 6b c0 00 imul rax, rax, 0 @@ -25906,7 +25926,7 @@ $LN11@stbi__YCbC: 00187 0f b6 55 44 movzx edx, BYTE PTR r$2[rbp] 0018b 88 14 01 mov BYTE PTR [rcx+rax], dl -; 3155 : out[1] = (stbi_uc)g; +; 3168 : out[1] = (stbi_uc)g; 0018e b8 01 00 00 00 mov eax, 1 00193 48 6b c0 01 imul rax, rax, 1 @@ -25915,7 +25935,7 @@ $LN11@stbi__YCbC: 0019e 0f b6 55 64 movzx edx, BYTE PTR g$3[rbp] 001a2 88 14 01 mov BYTE PTR [rcx+rax], dl -; 3156 : out[2] = (stbi_uc)b; +; 3169 : out[2] = (stbi_uc)b; 001a5 b8 01 00 00 00 mov eax, 1 001aa 48 6b c0 02 imul rax, rax, 2 @@ -25925,7 +25945,7 @@ $LN11@stbi__YCbC: 00 00 movzx edx, BYTE PTR b$4[rbp] 001bc 88 14 01 mov BYTE PTR [rcx+rax], dl -; 3157 : out[3] = 255; +; 3170 : out[3] = 255; 001bf b8 01 00 00 00 mov eax, 1 001c4 48 6b c0 03 imul rax, rax, 3 @@ -25933,7 +25953,7 @@ $LN11@stbi__YCbC: 00 00 mov rcx, QWORD PTR out$[rbp] 001cf c6 04 01 ff mov BYTE PTR [rcx+rax], 255 ; 000000ffH -; 3158 : out += step; +; 3171 : out += step; 001d3 48 63 85 e8 01 00 00 movsxd rax, DWORD PTR step$[rbp] @@ -25944,12 +25964,12 @@ $LN11@stbi__YCbC: 001e7 48 89 85 c0 01 00 00 mov QWORD PTR out$[rbp], rax -; 3159 : } +; 3172 : } 001ee e9 44 fe ff ff jmp $LN2@stbi__YCbC $LN3@stbi__YCbC: -; 3160 : } +; 3173 : } 001f3 48 8d a5 a8 01 00 00 lea rsp, QWORD PTR [rbp+424] @@ -25971,7 +25991,7 @@ w$ = 312 hs$ = 320 stbi__resample_row_generic PROC ; COMDAT -; 3124 : { +; 3137 : { 00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -25986,10 +26006,10 @@ stbi__resample_row_generic PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 3125 : // resample with nearest-neighbor -; 3126 : int i, j; -; 3127 : STBI_NOTUSED(in_far); -; 3128 : for (i = 0; i < w; ++i) +; 3138 : // resample with nearest-neighbor +; 3139 : int i, j; +; 3140 : STBI_NOTUSED(in_far); +; 3141 : for (i = 0; i < w; ++i) 0002e c7 45 04 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -26004,7 +26024,7 @@ $LN4@stbi__resa: 00045 39 45 04 cmp DWORD PTR i$[rbp], eax 00048 7d 4a jge SHORT $LN3@stbi__resa -; 3129 : for (j = 0; j < hs; ++j) +; 3142 : for (j = 0; j < hs; ++j) 0004a c7 45 24 00 00 00 00 mov DWORD PTR j$[rbp], 0 @@ -26019,7 +26039,7 @@ $LN7@stbi__resa: 00061 39 45 24 cmp DWORD PTR j$[rbp], eax 00064 7d 2c jge SHORT $LN6@stbi__resa -; 3130 : out[i * hs + j] = in_near[i]; +; 3143 : out[i * hs + j] = in_near[i]; 00066 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 0006a 8b 4d 04 mov ecx, DWORD PTR i$[rbp] @@ -26038,12 +26058,12 @@ $LN6@stbi__resa: 00092 eb a3 jmp SHORT $LN2@stbi__resa $LN3@stbi__resa: -; 3131 : return out; +; 3144 : return out; 00094 48 8b 85 20 01 00 00 mov rax, QWORD PTR out$[rbp] -; 3132 : } +; 3145 : } 0009b 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] @@ -26091,7 +26111,7 @@ w$ = 1880 hs$ = 1888 stbi__resample_row_hv_2_simd PROC ; COMDAT -; 3008 : { +; 3021 : { 00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -26106,20 +26126,20 @@ stbi__resample_row_hv_2_simd PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 3009 : // need to generate 2x2 samples for every one in input -; 3010 : int i = 0, t0, t1; +; 3022 : // need to generate 2x2 samples for every one in input +; 3023 : int i = 0, t0, t1; 0002e c7 45 04 00 00 00 00 mov DWORD PTR i$[rbp], 0 -; 3011 : -; 3012 : if (w == 1) { +; 3024 : +; 3025 : if (w == 1) { 00035 83 bd 58 07 00 00 01 cmp DWORD PTR w$[rbp], 1 0003c 75 78 jne SHORT $LN8@stbi__resa -; 3013 : out[0] = out[1] = stbi__div4(3 * in_near[0] + in_far[0] + 2); +; 3026 : out[0] = out[1] = stbi__div4(3 * in_near[0] + in_far[0] + 2); 0003e b8 01 00 00 00 mov eax, 1 00043 48 6b c0 00 imul rax, rax, 0 @@ -26151,16 +26171,16 @@ stbi__resample_row_hv_2_simd PROC ; COMDAT 00 00 movzx edx, BYTE PTR tv78[rbp] 000a7 88 14 01 mov BYTE PTR [rcx+rax], dl -; 3014 : return out; +; 3027 : return out; 000aa 48 8b 85 40 07 00 00 mov rax, QWORD PTR out$[rbp] 000b1 e9 e8 03 00 00 jmp $LN1@stbi__resa $LN8@stbi__resa: -; 3015 : } -; 3016 : -; 3017 : t1 = 3 * in_near[0] + in_far[0]; +; 3028 : } +; 3029 : +; 3030 : t1 = 3 * in_near[0] + in_far[0]; 000b6 b8 01 00 00 00 mov eax, 1 000bb 48 6b c0 00 imul rax, rax, 0 @@ -26176,10 +26196,10 @@ $LN8@stbi__resa: 000e1 03 c1 add eax, ecx 000e3 89 45 44 mov DWORD PTR t1$[rbp], eax -; 3018 : // process groups of 8 pixels for as long as we can. -; 3019 : // note we can't handle the last pixel in a row in this loop -; 3020 : // because we need to handle the filter boundary conditions. -; 3021 : for (; i < ((w - 1) & ~7); i += 8) { +; 3031 : // process groups of 8 pixels for as long as we can. +; 3032 : // note we can't handle the last pixel in a row in this loop +; 3033 : // because we need to handle the filter boundary conditions. +; 3034 : for (; i < ((w - 1) & ~7); i += 8) { 000e6 eb 09 jmp SHORT $LN4@stbi__resa $LN2@stbi__resa: @@ -26195,15 +26215,15 @@ $LN4@stbi__resa: 000ff 0f 8d 96 02 00 00 jge $LN3@stbi__resa -; 3022 : #if defined(STBI_SSE2) -; 3023 : // load and perform the vertical filtering pass -; 3024 : // this uses 3*x + y = 4*x + (y - x) -; 3025 : __m128i zero = _mm_setzero_si128(); +; 3035 : #if defined(STBI_SSE2) +; 3036 : // load and perform the vertical filtering pass +; 3037 : // this uses 3*x + y = 4*x + (y - x) +; 3038 : __m128i zero = _mm_setzero_si128(); 00105 66 0f ef c0 pxor xmm0, xmm0 00109 66 0f 7f 45 70 movdqa XMMWORD PTR zero$1[rbp], xmm0 -; 3026 : __m128i farb = _mm_loadl_epi64((__m128i*) (in_far + i)); +; 3039 : __m128i farb = _mm_loadl_epi64((__m128i*) (in_far + i)); 0010e 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 00112 48 8b 8d 50 07 @@ -26214,7 +26234,7 @@ $LN4@stbi__resa: 00123 66 0f 7f 85 a0 00 00 00 movdqa XMMWORD PTR farb$2[rbp], xmm0 -; 3027 : __m128i nearb = _mm_loadl_epi64((__m128i*) (in_near + i)); +; 3040 : __m128i nearb = _mm_loadl_epi64((__m128i*) (in_near + i)); 0012b 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 0012f 48 8b 8d 48 07 @@ -26225,7 +26245,7 @@ $LN4@stbi__resa: 00140 66 0f 7f 85 d0 00 00 00 movdqa XMMWORD PTR nearb$3[rbp], xmm0 -; 3028 : __m128i farw = _mm_unpacklo_epi8(farb, zero); +; 3041 : __m128i farw = _mm_unpacklo_epi8(farb, zero); 00148 66 0f 6f 85 a0 00 00 00 movdqa xmm0, XMMWORD PTR farb$2[rbp] @@ -26233,7 +26253,7 @@ $LN4@stbi__resa: 00155 66 0f 7f 85 00 01 00 00 movdqa XMMWORD PTR farw$4[rbp], xmm0 -; 3029 : __m128i nearw = _mm_unpacklo_epi8(nearb, zero); +; 3042 : __m128i nearw = _mm_unpacklo_epi8(nearb, zero); 0015d 66 0f 6f 85 d0 00 00 00 movdqa xmm0, XMMWORD PTR nearb$3[rbp] @@ -26241,7 +26261,7 @@ $LN4@stbi__resa: 0016a 66 0f 7f 85 30 01 00 00 movdqa XMMWORD PTR nearw$5[rbp], xmm0 -; 3030 : __m128i diff = _mm_sub_epi16(farw, nearw); +; 3043 : __m128i diff = _mm_sub_epi16(farw, nearw); 00172 66 0f 6f 85 00 01 00 00 movdqa xmm0, XMMWORD PTR farw$4[rbp] @@ -26250,7 +26270,7 @@ $LN4@stbi__resa: 00182 66 0f 7f 85 60 01 00 00 movdqa XMMWORD PTR diff$6[rbp], xmm0 -; 3031 : __m128i nears = _mm_slli_epi16(nearw, 2); +; 3044 : __m128i nears = _mm_slli_epi16(nearw, 2); 0018a 66 0f 6f 85 30 01 00 00 movdqa xmm0, XMMWORD PTR nearw$5[rbp] @@ -26258,7 +26278,7 @@ $LN4@stbi__resa: 00197 66 0f 7f 85 90 01 00 00 movdqa XMMWORD PTR nears$7[rbp], xmm0 -; 3032 : __m128i curr = _mm_add_epi16(nears, diff); // current row +; 3045 : __m128i curr = _mm_add_epi16(nears, diff); // current row 0019f 66 0f 6f 85 90 01 00 00 movdqa xmm0, XMMWORD PTR nears$7[rbp] @@ -26267,13 +26287,13 @@ $LN4@stbi__resa: 001af 66 0f 7f 85 c0 01 00 00 movdqa XMMWORD PTR curr$8[rbp], xmm0 -; 3033 : -; 3034 : // horizontal filter works the same based on shifted vers of current -; 3035 : // row. "prev" is current row shifted right by 1 pixel; we need to -; 3036 : // insert the previous pixel value (from t1). -; 3037 : // "next" is current row shifted left by 1 pixel, with first pixel -; 3038 : // of next block of 8 pixels added in. -; 3039 : __m128i prv0 = _mm_slli_si128(curr, 2); +; 3046 : +; 3047 : // horizontal filter works the same based on shifted vers of current +; 3048 : // row. "prev" is current row shifted right by 1 pixel; we need to +; 3049 : // insert the previous pixel value (from t1). +; 3050 : // "next" is current row shifted left by 1 pixel, with first pixel +; 3051 : // of next block of 8 pixels added in. +; 3052 : __m128i prv0 = _mm_slli_si128(curr, 2); 001b7 66 0f 6f 85 c0 01 00 00 movdqa xmm0, XMMWORD PTR curr$8[rbp] @@ -26281,7 +26301,7 @@ $LN4@stbi__resa: 001c4 66 0f 7f 85 f0 01 00 00 movdqa XMMWORD PTR prv0$9[rbp], xmm0 -; 3040 : __m128i nxt0 = _mm_srli_si128(curr, 2); +; 3053 : __m128i nxt0 = _mm_srli_si128(curr, 2); 001cc 66 0f 6f 85 c0 01 00 00 movdqa xmm0, XMMWORD PTR curr$8[rbp] @@ -26289,7 +26309,7 @@ $LN4@stbi__resa: 001d9 66 0f 7f 85 20 02 00 00 movdqa XMMWORD PTR nxt0$10[rbp], xmm0 -; 3041 : __m128i prev = _mm_insert_epi16(prv0, t1, 0); +; 3054 : __m128i prev = _mm_insert_epi16(prv0, t1, 0); 001e1 66 0f 6f 85 f0 01 00 00 movdqa xmm0, XMMWORD PTR prv0$9[rbp] @@ -26298,7 +26318,7 @@ $LN4@stbi__resa: 001ef 66 0f 7f 85 50 02 00 00 movdqa XMMWORD PTR prev$11[rbp], xmm0 -; 3042 : __m128i next = _mm_insert_epi16(nxt0, 3 * in_near[i + 8] + in_far[i + 8], 7); +; 3055 : __m128i next = _mm_insert_epi16(nxt0, 3 * in_near[i + 8] + in_far[i + 8], 7); 001f7 8b 45 04 mov eax, DWORD PTR i$[rbp] 001fa 83 c0 08 add eax, 8 @@ -26320,19 +26340,19 @@ $LN4@stbi__resa: 00230 66 0f 7f 85 80 02 00 00 movdqa XMMWORD PTR next$12[rbp], xmm0 -; 3043 : -; 3044 : // horizontal filter, polyphase implementation since it's convenient: -; 3045 : // even pixels = 3*cur + prev = cur*4 + (prev - cur) -; 3046 : // odd pixels = 3*cur + next = cur*4 + (next - cur) -; 3047 : // note the shared term. -; 3048 : __m128i bias = _mm_set1_epi16(8); +; 3056 : +; 3057 : // horizontal filter, polyphase implementation since it's convenient: +; 3058 : // even pixels = 3*cur + prev = cur*4 + (prev - cur) +; 3059 : // odd pixels = 3*cur + next = cur*4 + (next - cur) +; 3060 : // note the shared term. +; 3061 : __m128i bias = _mm_set1_epi16(8); 00238 66 0f 6f 05 00 00 00 00 movdqa xmm0, XMMWORD PTR __xmm@00080008000800080008000800080008 00240 66 0f 7f 85 b0 02 00 00 movdqa XMMWORD PTR bias$13[rbp], xmm0 -; 3049 : __m128i curs = _mm_slli_epi16(curr, 2); +; 3062 : __m128i curs = _mm_slli_epi16(curr, 2); 00248 66 0f 6f 85 c0 01 00 00 movdqa xmm0, XMMWORD PTR curr$8[rbp] @@ -26340,7 +26360,7 @@ $LN4@stbi__resa: 00255 66 0f 7f 85 e0 02 00 00 movdqa XMMWORD PTR curs$14[rbp], xmm0 -; 3050 : __m128i prvd = _mm_sub_epi16(prev, curr); +; 3063 : __m128i prvd = _mm_sub_epi16(prev, curr); 0025d 66 0f 6f 85 50 02 00 00 movdqa xmm0, XMMWORD PTR prev$11[rbp] @@ -26349,7 +26369,7 @@ $LN4@stbi__resa: 0026d 66 0f 7f 85 10 03 00 00 movdqa XMMWORD PTR prvd$15[rbp], xmm0 -; 3051 : __m128i nxtd = _mm_sub_epi16(next, curr); +; 3064 : __m128i nxtd = _mm_sub_epi16(next, curr); 00275 66 0f 6f 85 80 02 00 00 movdqa xmm0, XMMWORD PTR next$12[rbp] @@ -26358,7 +26378,7 @@ $LN4@stbi__resa: 00285 66 0f 7f 85 40 03 00 00 movdqa XMMWORD PTR nxtd$16[rbp], xmm0 -; 3052 : __m128i curb = _mm_add_epi16(curs, bias); +; 3065 : __m128i curb = _mm_add_epi16(curs, bias); 0028d 66 0f 6f 85 e0 02 00 00 movdqa xmm0, XMMWORD PTR curs$14[rbp] @@ -26367,7 +26387,7 @@ $LN4@stbi__resa: 0029d 66 0f 7f 85 70 03 00 00 movdqa XMMWORD PTR curb$17[rbp], xmm0 -; 3053 : __m128i even = _mm_add_epi16(prvd, curb); +; 3066 : __m128i even = _mm_add_epi16(prvd, curb); 002a5 66 0f 6f 85 10 03 00 00 movdqa xmm0, XMMWORD PTR prvd$15[rbp] @@ -26376,7 +26396,7 @@ $LN4@stbi__resa: 002b5 66 0f 7f 85 a0 03 00 00 movdqa XMMWORD PTR even$18[rbp], xmm0 -; 3054 : __m128i odd = _mm_add_epi16(nxtd, curb); +; 3067 : __m128i odd = _mm_add_epi16(nxtd, curb); 002bd 66 0f 6f 85 40 03 00 00 movdqa xmm0, XMMWORD PTR nxtd$16[rbp] @@ -26385,9 +26405,9 @@ $LN4@stbi__resa: 002cd 66 0f 7f 85 d0 03 00 00 movdqa XMMWORD PTR odd$19[rbp], xmm0 -; 3055 : -; 3056 : // interleave even and odd pixels, then undo scaling. -; 3057 : __m128i int0 = _mm_unpacklo_epi16(even, odd); +; 3068 : +; 3069 : // interleave even and odd pixels, then undo scaling. +; 3070 : __m128i int0 = _mm_unpacklo_epi16(even, odd); 002d5 66 0f 6f 85 a0 03 00 00 movdqa xmm0, XMMWORD PTR even$18[rbp] @@ -26396,7 +26416,7 @@ $LN4@stbi__resa: 002e5 66 0f 7f 85 00 04 00 00 movdqa XMMWORD PTR int0$20[rbp], xmm0 -; 3058 : __m128i int1 = _mm_unpackhi_epi16(even, odd); +; 3071 : __m128i int1 = _mm_unpackhi_epi16(even, odd); 002ed 66 0f 6f 85 a0 03 00 00 movdqa xmm0, XMMWORD PTR even$18[rbp] @@ -26405,7 +26425,7 @@ $LN4@stbi__resa: 002fd 66 0f 7f 85 30 04 00 00 movdqa XMMWORD PTR int1$21[rbp], xmm0 -; 3059 : __m128i de0 = _mm_srli_epi16(int0, 4); +; 3072 : __m128i de0 = _mm_srli_epi16(int0, 4); 00305 66 0f 6f 85 00 04 00 00 movdqa xmm0, XMMWORD PTR int0$20[rbp] @@ -26413,7 +26433,7 @@ $LN4@stbi__resa: 00312 66 0f 7f 85 60 04 00 00 movdqa XMMWORD PTR de0$22[rbp], xmm0 -; 3060 : __m128i de1 = _mm_srli_epi16(int1, 4); +; 3073 : __m128i de1 = _mm_srli_epi16(int1, 4); 0031a 66 0f 6f 85 30 04 00 00 movdqa xmm0, XMMWORD PTR int1$21[rbp] @@ -26421,9 +26441,9 @@ $LN4@stbi__resa: 00327 66 0f 7f 85 90 04 00 00 movdqa XMMWORD PTR de1$23[rbp], xmm0 -; 3061 : -; 3062 : // pack and write output -; 3063 : __m128i outv = _mm_packus_epi16(de0, de1); +; 3074 : +; 3075 : // pack and write output +; 3076 : __m128i outv = _mm_packus_epi16(de0, de1); 0032f 66 0f 6f 85 60 04 00 00 movdqa xmm0, XMMWORD PTR de0$22[rbp] @@ -26432,7 +26452,7 @@ $LN4@stbi__resa: 0033f 66 0f 7f 85 c0 04 00 00 movdqa XMMWORD PTR outv$24[rbp], xmm0 -; 3064 : _mm_storeu_si128((__m128i*) (out + i * 2), outv); +; 3077 : _mm_storeu_si128((__m128i*) (out + i * 2), outv); 00347 8b 45 04 mov eax, DWORD PTR i$[rbp] 0034a 03 c0 add eax, eax @@ -26445,44 +26465,44 @@ $LN4@stbi__resa: 04 00 00 movdqa xmm0, XMMWORD PTR outv$24[rbp] 00363 f3 0f 7f 00 movdqu XMMWORD PTR [rax], xmm0 -; 3065 : #elif defined(STBI_NEON) -; 3066 : // load and perform the vertical filtering pass -; 3067 : // this uses 3*x + y = 4*x + (y - x) -; 3068 : uint8x8_t farb = vld1_u8(in_far + i); -; 3069 : uint8x8_t nearb = vld1_u8(in_near + i); -; 3070 : int16x8_t diff = vreinterpretq_s16_u16(vsubl_u8(farb, nearb)); -; 3071 : int16x8_t nears = vreinterpretq_s16_u16(vshll_n_u8(nearb, 2)); -; 3072 : int16x8_t curr = vaddq_s16(nears, diff); // current row -; 3073 : -; 3074 : // horizontal filter works the same based on shifted vers of current -; 3075 : // row. "prev" is current row shifted right by 1 pixel; we need to -; 3076 : // insert the previous pixel value (from t1). -; 3077 : // "next" is current row shifted left by 1 pixel, with first pixel -; 3078 : // of next block of 8 pixels added in. -; 3079 : int16x8_t prv0 = vextq_s16(curr, curr, 7); -; 3080 : int16x8_t nxt0 = vextq_s16(curr, curr, 1); -; 3081 : int16x8_t prev = vsetq_lane_s16(t1, prv0, 0); -; 3082 : int16x8_t next = vsetq_lane_s16(3 * in_near[i + 8] + in_far[i + 8], nxt0, 7); -; 3083 : -; 3084 : // horizontal filter, polyphase implementation since it's convenient: -; 3085 : // even pixels = 3*cur + prev = cur*4 + (prev - cur) -; 3086 : // odd pixels = 3*cur + next = cur*4 + (next - cur) -; 3087 : // note the shared term. -; 3088 : int16x8_t curs = vshlq_n_s16(curr, 2); -; 3089 : int16x8_t prvd = vsubq_s16(prev, curr); -; 3090 : int16x8_t nxtd = vsubq_s16(next, curr); -; 3091 : int16x8_t even = vaddq_s16(curs, prvd); -; 3092 : int16x8_t odd = vaddq_s16(curs, nxtd); -; 3093 : -; 3094 : // undo scaling and round, then store with even/odd phases interleaved -; 3095 : uint8x8x2_t o; -; 3096 : o.val[0] = vqrshrun_n_s16(even, 4); -; 3097 : o.val[1] = vqrshrun_n_s16(odd, 4); -; 3098 : vst2_u8(out + i * 2, o); -; 3099 : #endif -; 3100 : -; 3101 : // "previous" value for next iter -; 3102 : t1 = 3 * in_near[i + 7] + in_far[i + 7]; +; 3078 : #elif defined(STBI_NEON) +; 3079 : // load and perform the vertical filtering pass +; 3080 : // this uses 3*x + y = 4*x + (y - x) +; 3081 : uint8x8_t farb = vld1_u8(in_far + i); +; 3082 : uint8x8_t nearb = vld1_u8(in_near + i); +; 3083 : int16x8_t diff = vreinterpretq_s16_u16(vsubl_u8(farb, nearb)); +; 3084 : int16x8_t nears = vreinterpretq_s16_u16(vshll_n_u8(nearb, 2)); +; 3085 : int16x8_t curr = vaddq_s16(nears, diff); // current row +; 3086 : +; 3087 : // horizontal filter works the same based on shifted vers of current +; 3088 : // row. "prev" is current row shifted right by 1 pixel; we need to +; 3089 : // insert the previous pixel value (from t1). +; 3090 : // "next" is current row shifted left by 1 pixel, with first pixel +; 3091 : // of next block of 8 pixels added in. +; 3092 : int16x8_t prv0 = vextq_s16(curr, curr, 7); +; 3093 : int16x8_t nxt0 = vextq_s16(curr, curr, 1); +; 3094 : int16x8_t prev = vsetq_lane_s16(t1, prv0, 0); +; 3095 : int16x8_t next = vsetq_lane_s16(3 * in_near[i + 8] + in_far[i + 8], nxt0, 7); +; 3096 : +; 3097 : // horizontal filter, polyphase implementation since it's convenient: +; 3098 : // even pixels = 3*cur + prev = cur*4 + (prev - cur) +; 3099 : // odd pixels = 3*cur + next = cur*4 + (next - cur) +; 3100 : // note the shared term. +; 3101 : int16x8_t curs = vshlq_n_s16(curr, 2); +; 3102 : int16x8_t prvd = vsubq_s16(prev, curr); +; 3103 : int16x8_t nxtd = vsubq_s16(next, curr); +; 3104 : int16x8_t even = vaddq_s16(curs, prvd); +; 3105 : int16x8_t odd = vaddq_s16(curs, nxtd); +; 3106 : +; 3107 : // undo scaling and round, then store with even/odd phases interleaved +; 3108 : uint8x8x2_t o; +; 3109 : o.val[0] = vqrshrun_n_s16(even, 4); +; 3110 : o.val[1] = vqrshrun_n_s16(odd, 4); +; 3111 : vst2_u8(out + i * 2, o); +; 3112 : #endif +; 3113 : +; 3114 : // "previous" value for next iter +; 3115 : t1 = 3 * in_near[i + 7] + in_far[i + 7]; 00367 8b 45 04 mov eax, DWORD PTR i$[rbp] 0036a 83 c0 07 add eax, 7 @@ -26500,18 +26520,18 @@ $LN4@stbi__resa: 00391 03 c1 add eax, ecx 00393 89 45 44 mov DWORD PTR t1$[rbp], eax -; 3103 : } +; 3116 : } 00396 e9 4d fd ff ff jmp $LN2@stbi__resa $LN3@stbi__resa: -; 3104 : -; 3105 : t0 = t1; +; 3117 : +; 3118 : t0 = t1; 0039b 8b 45 44 mov eax, DWORD PTR t1$[rbp] 0039e 89 45 24 mov DWORD PTR t0$[rbp], eax -; 3106 : t1 = 3 * in_near[i] + in_far[i]; +; 3119 : t1 = 3 * in_near[i] + in_far[i]; 003a1 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 003a5 48 8b 8d 48 07 @@ -26525,7 +26545,7 @@ $LN3@stbi__resa: 003c2 03 c1 add eax, ecx 003c4 89 45 44 mov DWORD PTR t1$[rbp], eax -; 3107 : out[i * 2] = stbi__div16(3 * t1 + t0 + 8); +; 3120 : out[i * 2] = stbi__div16(3 * t1 + t0 + 8); 003c7 6b 45 44 03 imul eax, DWORD PTR t1$[rbp], 3 003cb 8b 4d 24 mov ecx, DWORD PTR t0$[rbp] @@ -26538,8 +26558,8 @@ $LN3@stbi__resa: 00 00 mov rdx, QWORD PTR out$[rbp] 003e4 88 04 0a mov BYTE PTR [rdx+rcx], al -; 3108 : -; 3109 : for (++i; i < w; ++i) { +; 3121 : +; 3122 : for (++i; i < w; ++i) { 003e7 8b 45 04 mov eax, DWORD PTR i$[rbp] 003ea ff c0 inc eax @@ -26555,12 +26575,12 @@ $LN7@stbi__resa: 003ff 39 45 04 cmp DWORD PTR i$[rbp], eax 00402 7d 73 jge SHORT $LN6@stbi__resa -; 3110 : t0 = t1; +; 3123 : t0 = t1; 00404 8b 45 44 mov eax, DWORD PTR t1$[rbp] 00407 89 45 24 mov DWORD PTR t0$[rbp], eax -; 3111 : t1 = 3 * in_near[i] + in_far[i]; +; 3124 : t1 = 3 * in_near[i] + in_far[i]; 0040a 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 0040e 48 8b 8d 48 07 @@ -26574,7 +26594,7 @@ $LN7@stbi__resa: 0042b 03 c1 add eax, ecx 0042d 89 45 44 mov DWORD PTR t1$[rbp], eax -; 3112 : out[i * 2 - 1] = stbi__div16(3 * t0 + t1 + 8); +; 3125 : out[i * 2 - 1] = stbi__div16(3 * t0 + t1 + 8); 00430 6b 45 24 03 imul eax, DWORD PTR t0$[rbp], 3 00434 8b 4d 44 mov ecx, DWORD PTR t1$[rbp] @@ -26587,7 +26607,7 @@ $LN7@stbi__resa: 00 00 mov rdx, QWORD PTR out$[rbp] 0044f 88 04 0a mov BYTE PTR [rdx+rcx], al -; 3113 : out[i * 2] = stbi__div16(3 * t1 + t0 + 8); +; 3126 : out[i * 2] = stbi__div16(3 * t1 + t0 + 8); 00452 6b 45 44 03 imul eax, DWORD PTR t1$[rbp], 3 00456 8b 4d 24 mov ecx, DWORD PTR t0$[rbp] @@ -26600,12 +26620,12 @@ $LN7@stbi__resa: 00 00 mov rdx, QWORD PTR out$[rbp] 0046f 88 04 0a mov BYTE PTR [rdx+rcx], al -; 3114 : } +; 3127 : } 00472 e9 7a ff ff ff jmp $LN5@stbi__resa $LN6@stbi__resa: -; 3115 : out[w * 2 - 1] = stbi__div4(t1 + 2); +; 3128 : out[w * 2 - 1] = stbi__div4(t1 + 2); 00477 8b 45 44 mov eax, DWORD PTR t1$[rbp] 0047a 83 c0 02 add eax, 2 @@ -26618,16 +26638,16 @@ $LN6@stbi__resa: 00 00 mov rdx, QWORD PTR out$[rbp] 00494 88 04 0a mov BYTE PTR [rdx+rcx], al -; 3116 : -; 3117 : STBI_NOTUSED(hs); -; 3118 : -; 3119 : return out; +; 3129 : +; 3130 : STBI_NOTUSED(hs); +; 3131 : +; 3132 : return out; 00497 48 8b 85 40 07 00 00 mov rax, QWORD PTR out$[rbp] $LN1@stbi__resa: -; 3120 : } +; 3133 : } 0049e 48 8d a5 28 07 00 00 lea rsp, QWORD PTR [rbp+1832] @@ -26651,7 +26671,7 @@ w$ = 344 hs$ = 352 stbi__resample_row_hv_2 PROC ; COMDAT -; 2983 : { +; 2996 : { 00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -26666,15 +26686,15 @@ stbi__resample_row_hv_2 PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 2984 : // need to generate 2x2 samples for every one in input -; 2985 : int i, t0, t1; -; 2986 : if (w == 1) { +; 2997 : // need to generate 2x2 samples for every one in input +; 2998 : int i, t0, t1; +; 2999 : if (w == 1) { 0002e 83 bd 58 01 00 00 01 cmp DWORD PTR w$[rbp], 1 00035 75 78 jne SHORT $LN5@stbi__resa -; 2987 : out[0] = out[1] = stbi__div4(3 * in_near[0] + in_far[0] + 2); +; 3000 : out[0] = out[1] = stbi__div4(3 * in_near[0] + in_far[0] + 2); 00037 b8 01 00 00 00 mov eax, 1 0003c 48 6b c0 00 imul rax, rax, 0 @@ -26706,16 +26726,16 @@ stbi__resample_row_hv_2 PROC ; COMDAT 00 00 movzx edx, BYTE PTR tv78[rbp] 000a0 88 14 01 mov BYTE PTR [rcx+rax], dl -; 2988 : return out; +; 3001 : return out; 000a3 48 8b 85 40 01 00 00 mov rax, QWORD PTR out$[rbp] 000aa e9 02 01 00 00 jmp $LN1@stbi__resa $LN5@stbi__resa: -; 2989 : } -; 2990 : -; 2991 : t1 = 3 * in_near[0] + in_far[0]; +; 3002 : } +; 3003 : +; 3004 : t1 = 3 * in_near[0] + in_far[0]; 000af b8 01 00 00 00 mov eax, 1 000b4 48 6b c0 00 imul rax, rax, 0 @@ -26731,7 +26751,7 @@ $LN5@stbi__resa: 000da 03 c1 add eax, ecx 000dc 89 45 44 mov DWORD PTR t1$[rbp], eax -; 2992 : out[0] = stbi__div4(t1 + 2); +; 3005 : out[0] = stbi__div4(t1 + 2); 000df 8b 45 44 mov eax, DWORD PTR t1$[rbp] 000e2 83 c0 02 add eax, 2 @@ -26742,7 +26762,7 @@ $LN5@stbi__resa: 00 00 mov rdx, QWORD PTR out$[rbp] 000f8 88 04 0a mov BYTE PTR [rdx+rcx], al -; 2993 : for (i = 1; i < w; ++i) { +; 3006 : for (i = 1; i < w; ++i) { 000fb c7 45 04 01 00 00 00 mov DWORD PTR i$[rbp], 1 @@ -26757,12 +26777,12 @@ $LN4@stbi__resa: 00112 39 45 04 cmp DWORD PTR i$[rbp], eax 00115 7d 73 jge SHORT $LN3@stbi__resa -; 2994 : t0 = t1; +; 3007 : t0 = t1; 00117 8b 45 44 mov eax, DWORD PTR t1$[rbp] 0011a 89 45 24 mov DWORD PTR t0$[rbp], eax -; 2995 : t1 = 3 * in_near[i] + in_far[i]; +; 3008 : t1 = 3 * in_near[i] + in_far[i]; 0011d 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 00121 48 8b 8d 48 01 @@ -26776,7 +26796,7 @@ $LN4@stbi__resa: 0013e 03 c1 add eax, ecx 00140 89 45 44 mov DWORD PTR t1$[rbp], eax -; 2996 : out[i * 2 - 1] = stbi__div16(3 * t0 + t1 + 8); +; 3009 : out[i * 2 - 1] = stbi__div16(3 * t0 + t1 + 8); 00143 6b 45 24 03 imul eax, DWORD PTR t0$[rbp], 3 00147 8b 4d 44 mov ecx, DWORD PTR t1$[rbp] @@ -26789,7 +26809,7 @@ $LN4@stbi__resa: 00 00 mov rdx, QWORD PTR out$[rbp] 00162 88 04 0a mov BYTE PTR [rdx+rcx], al -; 2997 : out[i * 2] = stbi__div16(3 * t1 + t0 + 8); +; 3010 : out[i * 2] = stbi__div16(3 * t1 + t0 + 8); 00165 6b 45 44 03 imul eax, DWORD PTR t1$[rbp], 3 00169 8b 4d 24 mov ecx, DWORD PTR t0$[rbp] @@ -26802,12 +26822,12 @@ $LN4@stbi__resa: 00 00 mov rdx, QWORD PTR out$[rbp] 00182 88 04 0a mov BYTE PTR [rdx+rcx], al -; 2998 : } +; 3011 : } 00185 e9 7a ff ff ff jmp $LN2@stbi__resa $LN3@stbi__resa: -; 2999 : out[w * 2 - 1] = stbi__div4(t1 + 2); +; 3012 : out[w * 2 - 1] = stbi__div4(t1 + 2); 0018a 8b 45 44 mov eax, DWORD PTR t1$[rbp] 0018d 83 c0 02 add eax, 2 @@ -26820,16 +26840,16 @@ $LN3@stbi__resa: 00 00 mov rdx, QWORD PTR out$[rbp] 001a7 88 04 0a mov BYTE PTR [rdx+rcx], al -; 3000 : -; 3001 : STBI_NOTUSED(hs); -; 3002 : -; 3003 : return out; +; 3013 : +; 3014 : STBI_NOTUSED(hs); +; 3015 : +; 3016 : return out; 001aa 48 8b 85 40 01 00 00 mov rax, QWORD PTR out$[rbp] $LN1@stbi__resa: -; 3004 : } +; 3017 : } 001b1 48 8d a5 28 01 00 00 lea rsp, QWORD PTR [rbp+296] @@ -26852,7 +26872,7 @@ w$ = 344 hs$ = 352 stbi__resample_row_h_2 PROC ; COMDAT -; 2953 : { +; 2966 : { 00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -26867,23 +26887,23 @@ stbi__resample_row_h_2 PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 2954 : // need to generate two samples horizontally for every one in input -; 2955 : int i; -; 2956 : stbi_uc* input = in_near; +; 2967 : // need to generate two samples horizontally for every one in input +; 2968 : int i; +; 2969 : stbi_uc* input = in_near; 0002e 48 8b 85 48 01 00 00 mov rax, QWORD PTR in_near$[rbp] 00035 48 89 45 28 mov QWORD PTR input$[rbp], rax -; 2957 : -; 2958 : if (w == 1) { +; 2970 : +; 2971 : if (w == 1) { 00039 83 bd 58 01 00 00 01 cmp DWORD PTR w$[rbp], 1 00040 75 59 jne SHORT $LN5@stbi__resa -; 2959 : // if only one sample, can't do any interpolation -; 2960 : out[0] = out[1] = input[0]; +; 2972 : // if only one sample, can't do any interpolation +; 2973 : out[0] = out[1] = input[0]; 00042 b8 01 00 00 00 mov eax, 1 00047 48 6b c0 00 imul rax, rax, 0 @@ -26905,16 +26925,16 @@ stbi__resample_row_h_2 PROC ; COMDAT 00087 41 0f b6 04 00 movzx eax, BYTE PTR [r8+rax] 0008c 88 04 0a mov BYTE PTR [rdx+rcx], al -; 2961 : return out; +; 2974 : return out; 0008f 48 8b 85 40 01 00 00 mov rax, QWORD PTR out$[rbp] 00096 e9 64 01 00 00 jmp $LN1@stbi__resa $LN5@stbi__resa: -; 2962 : } -; 2963 : -; 2964 : out[0] = input[0]; +; 2975 : } +; 2976 : +; 2977 : out[0] = input[0]; 0009b b8 01 00 00 00 mov eax, 1 000a0 48 6b c0 00 imul rax, rax, 0 @@ -26926,7 +26946,7 @@ $LN5@stbi__resa: 000b8 41 0f b6 04 00 movzx eax, BYTE PTR [r8+rax] 000bd 88 04 0a mov BYTE PTR [rdx+rcx], al -; 2965 : out[1] = stbi__div4(input[0] * 3 + input[1] + 2); +; 2978 : out[1] = stbi__div4(input[0] * 3 + input[1] + 2); 000c0 b8 01 00 00 00 mov eax, 1 000c5 48 6b c0 00 imul rax, rax, 0 @@ -26945,7 +26965,7 @@ $LN5@stbi__resa: 00 00 mov rdx, QWORD PTR out$[rbp] 000fc 88 04 0a mov BYTE PTR [rdx+rcx], al -; 2966 : for (i = 1; i < w - 1; ++i) { +; 2979 : for (i = 1; i < w - 1; ++i) { 000ff c7 45 04 01 00 00 00 mov DWORD PTR i$[rbp], 1 @@ -26961,7 +26981,7 @@ $LN4@stbi__resa: 00118 39 45 04 cmp DWORD PTR i$[rbp], eax 0011b 7d 72 jge SHORT $LN3@stbi__resa -; 2967 : int n = 3 * input[i] + 2; +; 2980 : int n = 3 * input[i] + 2; 0011d 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 00121 48 8b 4d 28 mov rcx, QWORD PTR input$[rbp] @@ -26970,7 +26990,7 @@ $LN4@stbi__resa: 0012c 83 c0 02 add eax, 2 0012f 89 45 44 mov DWORD PTR n$1[rbp], eax -; 2968 : out[i * 2 + 0] = stbi__div4(n + input[i - 1]); +; 2981 : out[i * 2 + 0] = stbi__div4(n + input[i - 1]); 00132 8b 45 04 mov eax, DWORD PTR i$[rbp] 00135 ff c8 dec eax @@ -26988,7 +27008,7 @@ $LN4@stbi__resa: 00 00 mov rdx, QWORD PTR out$[rbp] 0015a 88 04 0a mov BYTE PTR [rdx+rcx], al -; 2969 : out[i * 2 + 1] = stbi__div4(n + input[i + 1]); +; 2982 : out[i * 2 + 1] = stbi__div4(n + input[i + 1]); 0015d 8b 45 04 mov eax, DWORD PTR i$[rbp] 00160 ff c0 inc eax @@ -27006,12 +27026,12 @@ $LN4@stbi__resa: 00 00 mov rdx, QWORD PTR out$[rbp] 00187 88 04 0a mov BYTE PTR [rdx+rcx], al -; 2970 : } +; 2983 : } 0018a e9 79 ff ff ff jmp $LN2@stbi__resa $LN3@stbi__resa: -; 2971 : out[i * 2 + 0] = stbi__div4(input[w - 2] * 3 + input[w - 1] + 2); +; 2984 : out[i * 2 + 0] = stbi__div4(input[w - 2] * 3 + input[w - 1] + 2); 0018f 8b 85 58 01 00 00 mov eax, DWORD PTR w$[rbp] @@ -27035,7 +27055,7 @@ $LN3@stbi__resa: 00 00 mov rdx, QWORD PTR out$[rbp] 001ce 88 04 0a mov BYTE PTR [rdx+rcx], al -; 2972 : out[i * 2 + 1] = input[w - 1]; +; 2985 : out[i * 2 + 1] = input[w - 1]; 001d1 8b 85 58 01 00 00 mov eax, DWORD PTR w$[rbp] @@ -27050,17 +27070,17 @@ $LN3@stbi__resa: 001f0 41 0f b6 04 00 movzx eax, BYTE PTR [r8+rax] 001f5 88 04 0a mov BYTE PTR [rdx+rcx], al -; 2973 : -; 2974 : STBI_NOTUSED(in_far); -; 2975 : STBI_NOTUSED(hs); -; 2976 : -; 2977 : return out; +; 2986 : +; 2987 : STBI_NOTUSED(in_far); +; 2988 : STBI_NOTUSED(hs); +; 2989 : +; 2990 : return out; 001f8 48 8b 85 40 01 00 00 mov rax, QWORD PTR out$[rbp] $LN1@stbi__resa: -; 2978 : } +; 2991 : } 001ff 48 8d a5 28 01 00 00 lea rsp, QWORD PTR [rbp+296] @@ -27081,7 +27101,7 @@ w$ = 280 hs$ = 288 stbi__resample_row_v_2 PROC ; COMDAT -; 2943 : { +; 2956 : { 00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -27096,10 +27116,10 @@ stbi__resample_row_v_2 PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 2944 : // need to generate two samples vertically for every one in input -; 2945 : int i; -; 2946 : STBI_NOTUSED(hs); -; 2947 : for (i = 0; i < w; ++i) +; 2957 : // need to generate two samples vertically for every one in input +; 2958 : int i; +; 2959 : STBI_NOTUSED(hs); +; 2960 : for (i = 0; i < w; ++i) 0002e c7 45 04 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -27114,7 +27134,7 @@ $LN4@stbi__resa: 00045 39 45 04 cmp DWORD PTR i$[rbp], eax 00048 7d 38 jge SHORT $LN3@stbi__resa -; 2948 : out[i] = stbi__div4(3 * in_near[i] + in_far[i] + 2); +; 2961 : out[i] = stbi__div4(3 * in_near[i] + in_far[i] + 2); 0004a 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 0004e 48 8b 8d 08 01 @@ -27134,12 +27154,12 @@ $LN4@stbi__resa: 00080 eb b5 jmp SHORT $LN2@stbi__resa $LN3@stbi__resa: -; 2949 : return out; +; 2962 : return out; 00082 48 8b 85 00 01 00 00 mov rax, QWORD PTR out$[rbp] -; 2950 : } +; 2963 : } 00089 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -27159,7 +27179,7 @@ w$ = 248 hs$ = 256 resample_row_1 PROC ; COMDAT -; 2934 : { +; 2947 : { 00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -27174,16 +27194,16 @@ resample_row_1 PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 2935 : STBI_NOTUSED(out); -; 2936 : STBI_NOTUSED(in_far); -; 2937 : STBI_NOTUSED(w); -; 2938 : STBI_NOTUSED(hs); -; 2939 : return in_near; +; 2948 : STBI_NOTUSED(out); +; 2949 : STBI_NOTUSED(in_far); +; 2950 : STBI_NOTUSED(w); +; 2951 : STBI_NOTUSED(hs); +; 2952 : return in_near; 0002e 48 8b 85 e8 00 00 00 mov rax, QWORD PTR in_near$[rbp] -; 2940 : } +; 2953 : } 00035 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] @@ -27202,7 +27222,7 @@ NL$2 = 68 j$ = 320 stbi__decode_jpeg_image PROC ; COMDAT -; 2888 : { +; 2901 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -27214,8 +27234,8 @@ stbi__decode_jpeg_image PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 2889 : int m; -; 2890 : for (m = 0; m < 4; m++) { +; 2902 : int m; +; 2903 : for (m = 0; m < 4; m++) { 0001f c7 45 04 00 00 00 00 mov DWORD PTR m$[rbp], 0 @@ -27228,7 +27248,7 @@ $LN4@stbi__deco: 00030 83 7d 04 04 cmp DWORD PTR m$[rbp], 4 00034 7d 38 jge SHORT $LN3@stbi__deco -; 2891 : j->img_comp[m].raw_data = NULL; +; 2904 : j->img_comp[m].raw_data = NULL; 00036 48 63 45 04 movsxd rax, DWORD PTR m$[rbp] 0003a 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -27238,7 +27258,7 @@ $LN4@stbi__deco: 46 00 00 00 00 00 00 mov QWORD PTR [rcx+rax+18136], 0 -; 2892 : j->img_comp[m].raw_coeff = NULL; +; 2905 : j->img_comp[m].raw_coeff = NULL; 00051 48 63 45 04 movsxd rax, DWORD PTR m$[rbp] 00055 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -27248,19 +27268,19 @@ $LN4@stbi__deco: 46 00 00 00 00 00 00 mov QWORD PTR [rcx+rax+18144], 0 -; 2893 : } +; 2906 : } 0006c eb ba jmp SHORT $LN2@stbi__deco $LN3@stbi__deco: -; 2894 : j->restart_interval = 0; +; 2907 : j->restart_interval = 0; 0006e 48 8b 85 40 01 00 00 mov rax, QWORD PTR j$[rbp] 00075 c7 80 68 48 00 00 00 00 00 00 mov DWORD PTR [rax+18536], 0 -; 2895 : if (!stbi__decode_jpeg_header(j, STBI__SCAN_load)) return 0; +; 2908 : if (!stbi__decode_jpeg_header(j, STBI__SCAN_load)) return 0; 0007f 33 d2 xor edx, edx 00081 48 8b 8d 40 01 @@ -27272,7 +27292,7 @@ $LN3@stbi__deco: 00093 e9 8d 01 00 00 jmp $LN1@stbi__deco $LN7@stbi__deco: -; 2896 : m = stbi__get_marker(j); +; 2909 : m = stbi__get_marker(j); 00098 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR j$[rbp] @@ -27281,21 +27301,21 @@ $LN7@stbi__deco: 000a7 89 45 04 mov DWORD PTR m$[rbp], eax $LN5@stbi__deco: -; 2897 : while (!stbi__EOI(m)) { +; 2910 : while (!stbi__EOI(m)) { 000aa 81 7d 04 d9 00 00 00 cmp DWORD PTR m$[rbp], 217 ; 000000d9H 000b1 0f 84 4d 01 00 00 je $LN6@stbi__deco -; 2898 : if (stbi__SOS(m)) { +; 2911 : if (stbi__SOS(m)) { 000b7 81 7d 04 da 00 00 00 cmp DWORD PTR m$[rbp], 218 ; 000000daH 000be 0f 85 97 00 00 00 jne $LN8@stbi__deco -; 2899 : if (!stbi__process_scan_header(j)) return 0; +; 2912 : if (!stbi__process_scan_header(j)) return 0; 000c4 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR j$[rbp] @@ -27306,7 +27326,7 @@ $LN5@stbi__deco: 000d6 e9 4a 01 00 00 jmp $LN1@stbi__deco $LN10@stbi__deco: -; 2900 : if (!stbi__parse_entropy_coded_data(j)) return 0; +; 2913 : if (!stbi__parse_entropy_coded_data(j)) return 0; 000db 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR j$[rbp] @@ -27317,7 +27337,7 @@ $LN10@stbi__deco: 000ed e9 33 01 00 00 jmp $LN1@stbi__deco $LN11@stbi__deco: -; 2901 : if (j->marker == STBI__MARKER_none) { +; 2914 : if (j->marker == STBI__MARKER_none) { 000f2 48 8b 85 40 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -27326,7 +27346,7 @@ $LN11@stbi__deco: 00100 3d ff 00 00 00 cmp eax, 255 ; 000000ffH 00105 75 19 jne SHORT $LN12@stbi__deco -; 2902 : j->marker = stbi__skip_jpeg_junk_at_end(j); +; 2915 : j->marker = stbi__skip_jpeg_junk_at_end(j); 00107 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR j$[rbp] @@ -27337,9 +27357,9 @@ $LN11@stbi__deco: 00 mov BYTE PTR [rcx+18472], al $LN12@stbi__deco: -; 2903 : // if we reach eof without hitting a marker, stbi__get_marker() below will fail and we'll eventually return 0 -; 2904 : } -; 2905 : m = stbi__get_marker(j); +; 2916 : // if we reach eof without hitting a marker, stbi__get_marker() below will fail and we'll eventually return 0 +; 2917 : } +; 2918 : m = stbi__get_marker(j); 00120 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR j$[rbp] @@ -27347,7 +27367,7 @@ $LN12@stbi__deco: 0012c 0f b6 c0 movzx eax, al 0012f 89 45 04 mov DWORD PTR m$[rbp], eax -; 2906 : if (STBI__RESTART(m)) +; 2919 : if (STBI__RESTART(m)) 00132 81 7d 04 d0 00 00 00 cmp DWORD PTR m$[rbp], 208 ; 000000d0H @@ -27356,7 +27376,7 @@ $LN12@stbi__deco: 00 00 cmp DWORD PTR m$[rbp], 215 ; 000000d7H 00142 7f 12 jg SHORT $LN13@stbi__deco -; 2907 : m = stbi__get_marker(j); +; 2920 : m = stbi__get_marker(j); 00144 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR j$[rbp] @@ -27365,18 +27385,18 @@ $LN12@stbi__deco: 00153 89 45 04 mov DWORD PTR m$[rbp], eax $LN13@stbi__deco: -; 2908 : } +; 2921 : } 00156 e9 a4 00 00 00 jmp $LN9@stbi__deco $LN8@stbi__deco: -; 2909 : else if (stbi__DNL(m)) { +; 2922 : else if (stbi__DNL(m)) { 0015b 81 7d 04 dc 00 00 00 cmp DWORD PTR m$[rbp], 220 ; 000000dcH 00162 75 6f jne SHORT $LN14@stbi__deco -; 2910 : int Ld = stbi__get16be(j->s); +; 2923 : int Ld = stbi__get16be(j->s); 00164 48 8b 85 40 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -27384,7 +27404,7 @@ $LN8@stbi__deco: 0016e e8 00 00 00 00 call stbi__get16be 00173 89 45 24 mov DWORD PTR Ld$1[rbp], eax -; 2911 : stbi__uint32 NL = stbi__get16be(j->s); +; 2924 : stbi__uint32 NL = stbi__get16be(j->s); 00176 48 8b 85 40 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -27392,7 +27412,7 @@ $LN8@stbi__deco: 00180 e8 00 00 00 00 call stbi__get16be 00185 89 45 44 mov DWORD PTR NL$2[rbp], eax -; 2912 : if (Ld != 4) return stbi__err("bad DNL len", "Corrupt JPEG"); +; 2925 : if (Ld != 4) return stbi__err("bad DNL len", "Corrupt JPEG"); 00188 83 7d 24 04 cmp DWORD PTR Ld$1[rbp], 4 0018c 74 11 je SHORT $LN16@stbi__deco @@ -27402,7 +27422,7 @@ $LN8@stbi__deco: 0019a e9 86 00 00 00 jmp $LN1@stbi__deco $LN16@stbi__deco: -; 2913 : if (NL != j->s->img_y) return stbi__err("bad DNL height", "Corrupt JPEG"); +; 2926 : if (NL != j->s->img_y) return stbi__err("bad DNL height", "Corrupt JPEG"); 0019f 48 8b 85 40 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -27416,7 +27436,7 @@ $LN16@stbi__deco: 001bd eb 66 jmp SHORT $LN1@stbi__deco $LN17@stbi__deco: -; 2914 : m = stbi__get_marker(j); +; 2927 : m = stbi__get_marker(j); 001bf 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR j$[rbp] @@ -27424,13 +27444,13 @@ $LN17@stbi__deco: 001cb 0f b6 c0 movzx eax, al 001ce 89 45 04 mov DWORD PTR m$[rbp], eax -; 2915 : } +; 2928 : } 001d1 eb 2c jmp SHORT $LN15@stbi__deco $LN14@stbi__deco: -; 2916 : else { -; 2917 : if (!stbi__process_marker(j, m)) return 1; +; 2929 : else { +; 2930 : if (!stbi__process_marker(j, m)) return 1; 001d3 8b 55 04 mov edx, DWORD PTR m$[rbp] 001d6 48 8b 8d 40 01 @@ -27442,7 +27462,7 @@ $LN14@stbi__deco: 001eb eb 38 jmp SHORT $LN1@stbi__deco $LN18@stbi__deco: -; 2918 : m = stbi__get_marker(j); +; 2931 : m = stbi__get_marker(j); 001ed 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR j$[rbp] @@ -27452,13 +27472,13 @@ $LN18@stbi__deco: $LN15@stbi__deco: $LN9@stbi__deco: -; 2919 : } -; 2920 : } +; 2932 : } +; 2933 : } 001ff e9 a6 fe ff ff jmp $LN5@stbi__deco $LN6@stbi__deco: -; 2921 : if (j->progressive) +; 2934 : if (j->progressive) 00204 48 8b 85 40 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -27466,19 +27486,19 @@ $LN6@stbi__deco: 00 00 cmp DWORD PTR [rax+18480], 0 00212 74 0c je SHORT $LN19@stbi__deco -; 2922 : stbi__jpeg_finish(j); +; 2935 : stbi__jpeg_finish(j); 00214 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR j$[rbp] 0021b e8 00 00 00 00 call stbi__jpeg_finish $LN19@stbi__deco: -; 2923 : return 1; +; 2936 : return 1; 00220 b8 01 00 00 00 mov eax, 1 $LN1@stbi__deco: -; 2924 : } +; 2937 : } 00225 48 8d a5 28 01 00 00 lea rsp, QWORD PTR [rbp+296] @@ -27495,7 +27515,7 @@ x$1 = 4 j$ = 256 stbi__skip_jpeg_junk_at_end PROC ; COMDAT -; 2865 : { +; 2878 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -27508,9 +27528,9 @@ stbi__skip_jpeg_junk_at_end PROC ; COMDAT 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode $LN2@stbi__skip: -; 2866 : // some JPEGs have junk at end, skip over it but if we find what looks -; 2867 : // like a valid marker, resume there -; 2868 : while (!stbi__at_eof(j->s)) { +; 2879 : // some JPEGs have junk at end, skip over it but if we find what looks +; 2880 : // like a valid marker, resume there +; 2881 : while (!stbi__at_eof(j->s)) { 0001f 48 8b 85 00 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -27519,7 +27539,7 @@ $LN2@stbi__skip: 0002e 85 c0 test eax, eax 00030 75 65 jne SHORT $LN3@stbi__skip -; 2869 : int x = stbi__get8(j->s); +; 2882 : int x = stbi__get8(j->s); 00032 48 8b 85 00 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -27529,13 +27549,13 @@ $LN2@stbi__skip: 00044 89 45 04 mov DWORD PTR x$1[rbp], eax $LN4@stbi__skip: -; 2870 : while (x == 255) { // might be a marker +; 2883 : while (x == 255) { // might be a marker 00047 81 7d 04 ff 00 00 00 cmp DWORD PTR x$1[rbp], 255 ; 000000ffH 0004e 75 45 jne SHORT $LN5@stbi__skip -; 2871 : if (stbi__at_eof(j->s)) return STBI__MARKER_none; +; 2884 : if (stbi__at_eof(j->s)) return STBI__MARKER_none; 00050 48 8b 85 00 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -27547,7 +27567,7 @@ $LN4@stbi__skip: 00068 eb 32 jmp SHORT $LN1@stbi__skip $LN6@stbi__skip: -; 2872 : x = stbi__get8(j->s); +; 2885 : x = stbi__get8(j->s); 0006a 48 8b 85 00 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -27556,7 +27576,7 @@ $LN6@stbi__skip: 00079 0f b6 c0 movzx eax, al 0007c 89 45 04 mov DWORD PTR x$1[rbp], eax -; 2873 : if (x != 0x00 && x != 0xff) { +; 2886 : if (x != 0x00 && x != 0xff) { 0007f 83 7d 04 00 cmp DWORD PTR x$1[rbp], 0 00083 74 0e je SHORT $LN7@stbi__skip @@ -27564,34 +27584,34 @@ $LN6@stbi__skip: 00 00 cmp DWORD PTR x$1[rbp], 255 ; 000000ffH 0008c 74 05 je SHORT $LN7@stbi__skip -; 2874 : // not a stuffed zero or lead-in to another marker, looks -; 2875 : // like an actual marker, return it -; 2876 : return x; +; 2887 : // not a stuffed zero or lead-in to another marker, looks +; 2888 : // like an actual marker, return it +; 2889 : return x; 0008e 8b 45 04 mov eax, DWORD PTR x$1[rbp] 00091 eb 09 jmp SHORT $LN1@stbi__skip $LN7@stbi__skip: -; 2877 : } -; 2878 : // stuffed zero has x=0 now which ends the loop, meaning we go -; 2879 : // back to regular scan loop. -; 2880 : // repeated 0xff keeps trying to read the next byte of the marker. -; 2881 : } +; 2890 : } +; 2891 : // stuffed zero has x=0 now which ends the loop, meaning we go +; 2892 : // back to regular scan loop. +; 2893 : // repeated 0xff keeps trying to read the next byte of the marker. +; 2894 : } 00093 eb b2 jmp SHORT $LN4@stbi__skip $LN5@stbi__skip: -; 2882 : } +; 2895 : } 00095 eb 88 jmp SHORT $LN2@stbi__skip $LN3@stbi__skip: -; 2883 : return STBI__MARKER_none; +; 2896 : return STBI__MARKER_none; 00097 b8 ff 00 00 00 mov eax, 255 ; 000000ffH $LN1@stbi__skip: -; 2884 : } +; 2897 : } 0009c 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -27610,7 +27630,7 @@ z$ = 256 scan$ = 264 stbi__decode_jpeg_header PROC ; COMDAT -; 2841 : { +; 2854 : { 00000 89 54 24 10 mov DWORD PTR [rsp+16], edx 00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx @@ -27623,29 +27643,29 @@ stbi__decode_jpeg_header PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001e e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 2842 : int m; -; 2843 : z->jfif = 0; +; 2855 : int m; +; 2856 : z->jfif = 0; 00023 48 8b 85 00 01 00 00 mov rax, QWORD PTR z$[rbp] 0002a c7 80 48 48 00 00 00 00 00 00 mov DWORD PTR [rax+18504], 0 -; 2844 : z->app14_color_transform = -1; // valid values are 0,1,2 +; 2857 : z->app14_color_transform = -1; // valid values are 0,1,2 00034 48 8b 85 00 01 00 00 mov rax, QWORD PTR z$[rbp] 0003b c7 80 4c 48 00 00 ff ff ff ff mov DWORD PTR [rax+18508], -1 -; 2845 : z->marker = STBI__MARKER_none; // initialize cached marker to empty +; 2858 : z->marker = STBI__MARKER_none; // initialize cached marker to empty 00045 48 8b 85 00 01 00 00 mov rax, QWORD PTR z$[rbp] 0004c c6 80 28 48 00 00 ff mov BYTE PTR [rax+18472], 255 ; 000000ffH -; 2846 : m = stbi__get_marker(z); +; 2859 : m = stbi__get_marker(z); 00053 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR z$[rbp] @@ -27653,7 +27673,7 @@ stbi__decode_jpeg_header PROC ; COMDAT 0005f 0f b6 c0 movzx eax, al 00062 89 45 04 mov DWORD PTR m$[rbp], eax -; 2847 : if (!stbi__SOI(m)) return stbi__err("no SOI", "Corrupt JPEG"); +; 2860 : if (!stbi__SOI(m)) return stbi__err("no SOI", "Corrupt JPEG"); 00065 81 7d 04 d8 00 00 00 cmp DWORD PTR m$[rbp], 216 ; 000000d8H @@ -27664,7 +27684,7 @@ stbi__decode_jpeg_header PROC ; COMDAT 0007a e9 04 01 00 00 jmp $LN1@stbi__deco $LN6@stbi__deco: -; 2848 : if (scan == STBI__SCAN_type) return 1; +; 2861 : if (scan == STBI__SCAN_type) return 1; 0007f 83 bd 08 01 00 00 01 cmp DWORD PTR scan$[rbp], 1 @@ -27673,7 +27693,7 @@ $LN6@stbi__deco: 0008d e9 f1 00 00 00 jmp $LN1@stbi__deco $LN7@stbi__deco: -; 2849 : m = stbi__get_marker(z); +; 2862 : m = stbi__get_marker(z); 00092 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR z$[rbp] @@ -27682,7 +27702,7 @@ $LN7@stbi__deco: 000a1 89 45 04 mov DWORD PTR m$[rbp], eax $LN2@stbi__deco: -; 2850 : while (!stbi__SOF(m)) { +; 2863 : while (!stbi__SOF(m)) { 000a4 81 7d 04 c0 00 00 00 cmp DWORD PTR m$[rbp], 192 ; 000000c0H @@ -27695,7 +27715,7 @@ $LN2@stbi__deco: 00 00 cmp DWORD PTR m$[rbp], 194 ; 000000c2H 000c1 74 6f je SHORT $LN3@stbi__deco -; 2851 : if (!stbi__process_marker(z, m)) return 0; +; 2864 : if (!stbi__process_marker(z, m)) return 0; 000c3 8b 55 04 mov edx, DWORD PTR m$[rbp] 000c6 48 8b 8d 00 01 @@ -27707,7 +27727,7 @@ $LN2@stbi__deco: 000d8 e9 a6 00 00 00 jmp $LN1@stbi__deco $LN8@stbi__deco: -; 2852 : m = stbi__get_marker(z); +; 2865 : m = stbi__get_marker(z); 000dd 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR z$[rbp] @@ -27716,14 +27736,14 @@ $LN8@stbi__deco: 000ec 89 45 04 mov DWORD PTR m$[rbp], eax $LN4@stbi__deco: -; 2853 : while (m == STBI__MARKER_none) { +; 2866 : while (m == STBI__MARKER_none) { 000ef 81 7d 04 ff 00 00 00 cmp DWORD PTR m$[rbp], 255 ; 000000ffH 000f6 75 35 jne SHORT $LN5@stbi__deco -; 2854 : // some files have extra padding after their blocks, so ok, we'll scan -; 2855 : if (stbi__at_eof(z->s)) return stbi__err("no SOF", "Corrupt JPEG"); +; 2867 : // some files have extra padding after their blocks, so ok, we'll scan +; 2868 : if (stbi__at_eof(z->s)) return stbi__err("no SOF", "Corrupt JPEG"); 000f8 48 8b 85 00 01 00 00 mov rax, QWORD PTR z$[rbp] @@ -27737,7 +27757,7 @@ $LN4@stbi__deco: 00117 eb 6a jmp SHORT $LN1@stbi__deco $LN9@stbi__deco: -; 2856 : m = stbi__get_marker(z); +; 2869 : m = stbi__get_marker(z); 00119 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR z$[rbp] @@ -27745,17 +27765,17 @@ $LN9@stbi__deco: 00125 0f b6 c0 movzx eax, al 00128 89 45 04 mov DWORD PTR m$[rbp], eax -; 2857 : } +; 2870 : } 0012b eb c2 jmp SHORT $LN4@stbi__deco $LN5@stbi__deco: -; 2858 : } +; 2871 : } 0012d e9 72 ff ff ff jmp $LN2@stbi__deco $LN3@stbi__deco: -; 2859 : z->progressive = stbi__SOF_progressive(m); +; 2872 : z->progressive = stbi__SOF_progressive(m); 00132 81 7d 04 c2 00 00 00 cmp DWORD PTR m$[rbp], 194 ; 000000c2H @@ -27774,7 +27794,7 @@ $LN13@stbi__deco: 0015e 89 88 30 48 00 00 mov DWORD PTR [rax+18480], ecx -; 2860 : if (!stbi__process_frame_header(z, scan)) return 0; +; 2873 : if (!stbi__process_frame_header(z, scan)) return 0; 00164 8b 95 08 01 00 00 mov edx, DWORD PTR scan$[rbp] @@ -27787,12 +27807,12 @@ $LN13@stbi__deco: 0017c eb 05 jmp SHORT $LN1@stbi__deco $LN10@stbi__deco: -; 2861 : return 1; +; 2874 : return 1; 0017e b8 01 00 00 00 mov eax, 1 $LN1@stbi__deco: -; 2862 : } +; 2875 : } 00183 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -27819,7 +27839,7 @@ z$ = 480 scan$ = 488 stbi__process_frame_header PROC ; COMDAT -; 2740 : { +; 2753 : { 00000 89 54 24 10 mov DWORD PTR [rsp+16], edx 00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx @@ -27832,21 +27852,21 @@ stbi__process_frame_header PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001e e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 2741 : stbi__context* s = z->s; +; 2754 : stbi__context* s = z->s; 00023 48 8b 85 e0 01 00 00 mov rax, QWORD PTR z$[rbp] 0002a 48 8b 00 mov rax, QWORD PTR [rax] 0002d 48 89 45 08 mov QWORD PTR s$[rbp], rax -; 2742 : int Lf, p, i, q, h_max = 1, v_max = 1, c; +; 2755 : int Lf, p, i, q, h_max = 1, v_max = 1, c; 00031 c7 85 a4 00 00 00 01 00 00 00 mov DWORD PTR h_max$[rbp], 1 0003b c7 85 c4 00 00 00 01 00 00 00 mov DWORD PTR v_max$[rbp], 1 -; 2743 : Lf = stbi__get16be(s); if (Lf < 11) return stbi__err("bad SOF len", "Corrupt JPEG"); // JPEG +; 2756 : Lf = stbi__get16be(s); if (Lf < 11) return stbi__err("bad SOF len", "Corrupt JPEG"); // JPEG 00045 48 8b 4d 08 mov rcx, QWORD PTR s$[rbp] 00049 e8 00 00 00 00 call stbi__get16be @@ -27859,7 +27879,7 @@ stbi__process_frame_header PROC ; COMDAT 00063 e9 11 09 00 00 jmp $LN1@stbi__proc $LN17@stbi__proc: -; 2744 : p = stbi__get8(s); if (p != 8) return stbi__err("only 8-bit", "JPEG format not supported: 8-bit only"); // JPEG baseline +; 2757 : p = stbi__get8(s); if (p != 8) return stbi__err("only 8-bit", "JPEG format not supported: 8-bit only"); // JPEG baseline 00068 48 8b 4d 08 mov rcx, QWORD PTR s$[rbp] 0006c e8 00 00 00 00 call stbi__get8 @@ -27873,7 +27893,7 @@ $LN17@stbi__proc: 00089 e9 eb 08 00 00 jmp $LN1@stbi__proc $LN18@stbi__proc: -; 2745 : s->img_y = stbi__get16be(s); if (s->img_y == 0) return stbi__err("no header height", "JPEG format not supported: delayed height"); // Legal, but we don't handle it--but neither does IJG +; 2758 : s->img_y = stbi__get16be(s); if (s->img_y == 0) return stbi__err("no header height", "JPEG format not supported: delayed height"); // Legal, but we don't handle it--but neither does IJG 0008e 48 8b 4d 08 mov rcx, QWORD PTR s$[rbp] 00092 e8 00 00 00 00 call stbi__get16be @@ -27888,7 +27908,7 @@ $LN18@stbi__proc: 000b4 e9 c0 08 00 00 jmp $LN1@stbi__proc $LN19@stbi__proc: -; 2746 : s->img_x = stbi__get16be(s); if (s->img_x == 0) return stbi__err("0 width", "Corrupt JPEG"); // JPEG requires +; 2759 : s->img_x = stbi__get16be(s); if (s->img_x == 0) return stbi__err("0 width", "Corrupt JPEG"); // JPEG requires 000b9 48 8b 4d 08 mov rcx, QWORD PTR s$[rbp] 000bd e8 00 00 00 00 call stbi__get16be @@ -27903,7 +27923,7 @@ $LN19@stbi__proc: 000dd e9 97 08 00 00 jmp $LN1@stbi__proc $LN20@stbi__proc: -; 2747 : if (s->img_y > STBI_MAX_DIMENSIONS) return stbi__err("too large", "Very large image (corrupt?)"); +; 2760 : if (s->img_y > STBI_MAX_DIMENSIONS) return stbi__err("too large", "Very large image (corrupt?)"); 000e2 48 8b 45 08 mov rax, QWORD PTR s$[rbp] 000e6 81 78 04 00 00 @@ -27915,7 +27935,7 @@ $LN20@stbi__proc: 000fb e9 79 08 00 00 jmp $LN1@stbi__proc $LN21@stbi__proc: -; 2748 : if (s->img_x > STBI_MAX_DIMENSIONS) return stbi__err("too large", "Very large image (corrupt?)"); +; 2761 : if (s->img_x > STBI_MAX_DIMENSIONS) return stbi__err("too large", "Very large image (corrupt?)"); 00100 48 8b 45 08 mov rax, QWORD PTR s$[rbp] 00104 81 38 00 00 00 @@ -27927,7 +27947,7 @@ $LN21@stbi__proc: 00118 e9 5c 08 00 00 jmp $LN1@stbi__proc $LN22@stbi__proc: -; 2749 : c = stbi__get8(s); +; 2762 : c = stbi__get8(s); 0011d 48 8b 4d 08 mov rcx, QWORD PTR s$[rbp] 00121 e8 00 00 00 00 call stbi__get8 @@ -27935,7 +27955,7 @@ $LN22@stbi__proc: 00129 89 85 e4 00 00 00 mov DWORD PTR c$[rbp], eax -; 2750 : if (c != 3 && c != 1 && c != 4) return stbi__err("bad component count", "Corrupt JPEG"); +; 2763 : if (c != 3 && c != 1 && c != 4) return stbi__err("bad component count", "Corrupt JPEG"); 0012f 83 bd e4 00 00 00 03 cmp DWORD PTR c$[rbp], 3 @@ -27952,14 +27972,14 @@ $LN22@stbi__proc: 00156 e9 1e 08 00 00 jmp $LN1@stbi__proc $LN23@stbi__proc: -; 2751 : s->img_n = c; +; 2764 : s->img_n = c; 0015b 48 8b 45 08 mov rax, QWORD PTR s$[rbp] 0015f 8b 8d e4 00 00 00 mov ecx, DWORD PTR c$[rbp] 00165 89 48 08 mov DWORD PTR [rax+8], ecx -; 2752 : for (i = 0; i < c; ++i) { +; 2765 : for (i = 0; i < c; ++i) { 00168 c7 45 64 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -27974,7 +27994,7 @@ $LN4@stbi__proc: 0017f 39 45 64 cmp DWORD PTR i$[rbp], eax 00182 7d 38 jge SHORT $LN3@stbi__proc -; 2753 : z->img_comp[i].data = NULL; +; 2766 : z->img_comp[i].data = NULL; 00184 48 63 45 64 movsxd rax, DWORD PTR i$[rbp] 00188 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -27984,7 +28004,7 @@ $LN4@stbi__proc: 46 00 00 00 00 00 00 mov QWORD PTR [rcx+rax+18128], 0 -; 2754 : z->img_comp[i].linebuf = NULL; +; 2767 : z->img_comp[i].linebuf = NULL; 0019f 48 63 45 64 movsxd rax, DWORD PTR i$[rbp] 001a3 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -27994,13 +28014,13 @@ $LN4@stbi__proc: 46 00 00 00 00 00 00 mov QWORD PTR [rcx+rax+18152], 0 -; 2755 : } +; 2768 : } 001ba eb b5 jmp SHORT $LN2@stbi__proc $LN3@stbi__proc: -; 2756 : -; 2757 : if (Lf != 8 + 3 * s->img_n) return stbi__err("bad SOF len", "Corrupt JPEG"); +; 2769 : +; 2770 : if (Lf != 8 + 3 * s->img_n) return stbi__err("bad SOF len", "Corrupt JPEG"); 001bc 48 8b 45 08 mov rax, QWORD PTR s$[rbp] 001c0 6b 40 08 03 imul eax, DWORD PTR [rax+8], 3 @@ -28013,15 +28033,15 @@ $LN3@stbi__proc: 001d8 e9 9c 07 00 00 jmp $LN1@stbi__proc $LN24@stbi__proc: -; 2758 : -; 2759 : z->rgb = 0; +; 2771 : +; 2772 : z->rgb = 0; 001dd 48 8b 85 e0 01 00 00 mov rax, QWORD PTR z$[rbp] 001e4 c7 80 50 48 00 00 00 00 00 00 mov DWORD PTR [rax+18512], 0 -; 2760 : for (i = 0; i < s->img_n; ++i) { +; 2773 : for (i = 0; i < s->img_n; ++i) { 001ee c7 45 64 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -28037,8 +28057,8 @@ $LN7@stbi__proc: 00209 0f 8d 96 01 00 00 jge $LN6@stbi__proc -; 2761 : static const unsigned char rgb[3] = { 'R', 'G', 'B' }; -; 2762 : z->img_comp[i].id = stbi__get8(s); +; 2774 : static const unsigned char rgb[3] = { 'R', 'G', 'B' }; +; 2775 : z->img_comp[i].id = stbi__get8(s); 0020f 48 8b 4d 08 mov rcx, QWORD PTR s$[rbp] 00213 e8 00 00 00 00 call stbi__get8 @@ -28050,7 +28070,7 @@ $LN7@stbi__proc: 0022a 89 84 0a a0 46 00 00 mov DWORD PTR [rdx+rcx+18080], eax -; 2763 : if (s->img_n == 3 && z->img_comp[i].id == rgb[i]) +; 2776 : if (s->img_n == 3 && z->img_comp[i].id == rgb[i]) 00231 48 8b 45 08 mov rax, QWORD PTR s$[rbp] 00235 83 78 08 03 cmp DWORD PTR [rax+8], 3 @@ -28067,7 +28087,7 @@ $LN7@stbi__proc: 00 00 cmp DWORD PTR [rdx+rax+18080], ecx 00260 75 1c jne SHORT $LN25@stbi__proc -; 2764 : ++z->rgb; +; 2777 : ++z->rgb; 00262 48 8b 85 e0 01 00 00 mov rax, QWORD PTR z$[rbp] @@ -28080,7 +28100,7 @@ $LN7@stbi__proc: 00 mov DWORD PTR [rcx+18512], eax $LN25@stbi__proc: -; 2765 : q = stbi__get8(s); +; 2778 : q = stbi__get8(s); 0027e 48 8b 4d 08 mov rcx, QWORD PTR s$[rbp] 00282 e8 00 00 00 00 call stbi__get8 @@ -28088,7 +28108,7 @@ $LN25@stbi__proc: 0028a 89 85 84 00 00 00 mov DWORD PTR q$[rbp], eax -; 2766 : z->img_comp[i].h = (q >> 4); if (!z->img_comp[i].h || z->img_comp[i].h > 4) return stbi__err("bad H", "Corrupt JPEG"); +; 2779 : z->img_comp[i].h = (q >> 4); if (!z->img_comp[i].h || z->img_comp[i].h > 4) return stbi__err("bad H", "Corrupt JPEG"); 00290 8b 85 84 00 00 00 mov eax, DWORD PTR q$[rbp] @@ -28120,7 +28140,7 @@ $LN27@stbi__proc: 002ed e9 87 06 00 00 jmp $LN1@stbi__proc $LN26@stbi__proc: -; 2767 : z->img_comp[i].v = q & 15; if (!z->img_comp[i].v || z->img_comp[i].v > 4) return stbi__err("bad V", "Corrupt JPEG"); +; 2780 : z->img_comp[i].v = q & 15; if (!z->img_comp[i].v || z->img_comp[i].v > 4) return stbi__err("bad V", "Corrupt JPEG"); 002f2 8b 85 84 00 00 00 mov eax, DWORD PTR q$[rbp] @@ -28152,7 +28172,7 @@ $LN29@stbi__proc: 0034f e9 25 06 00 00 jmp $LN1@stbi__proc $LN28@stbi__proc: -; 2768 : z->img_comp[i].tq = stbi__get8(s); if (z->img_comp[i].tq > 3) return stbi__err("bad TQ", "Corrupt JPEG"); +; 2781 : z->img_comp[i].tq = stbi__get8(s); if (z->img_comp[i].tq > 3) return stbi__err("bad TQ", "Corrupt JPEG"); 00354 48 8b 4d 08 mov rcx, QWORD PTR s$[rbp] 00358 e8 00 00 00 00 call stbi__get8 @@ -28176,13 +28196,13 @@ $LN28@stbi__proc: 0039b e9 d9 05 00 00 jmp $LN1@stbi__proc $LN30@stbi__proc: -; 2769 : } +; 2782 : } 003a0 e9 52 fe ff ff jmp $LN5@stbi__proc $LN6@stbi__proc: -; 2770 : -; 2771 : if (scan != STBI__SCAN_load) return 1; +; 2783 : +; 2784 : if (scan != STBI__SCAN_load) return 1; 003a5 83 bd e8 01 00 00 00 cmp DWORD PTR scan$[rbp], 0 @@ -28191,8 +28211,8 @@ $LN6@stbi__proc: 003b3 e9 c1 05 00 00 jmp $LN1@stbi__proc $LN31@stbi__proc: -; 2772 : -; 2773 : if (!stbi__mad3sizes_valid(s->img_x, s->img_y, s->img_n, 0)) return stbi__err("too large", "Image too large to decode"); +; 2785 : +; 2786 : if (!stbi__mad3sizes_valid(s->img_x, s->img_y, s->img_n, 0)) return stbi__err("too large", "Image too large to decode"); 003b8 45 33 c9 xor r9d, r9d 003bb 48 8b 45 08 mov rax, QWORD PTR s$[rbp] @@ -28210,8 +28230,8 @@ $LN31@stbi__proc: 003e5 e9 8f 05 00 00 jmp $LN1@stbi__proc $LN32@stbi__proc: -; 2774 : -; 2775 : for (i = 0; i < s->img_n; ++i) { +; 2787 : +; 2788 : for (i = 0; i < s->img_n; ++i) { 003ea c7 45 64 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -28226,7 +28246,7 @@ $LN10@stbi__proc: 00402 39 45 64 cmp DWORD PTR i$[rbp], eax 00405 7d 79 jge SHORT $LN9@stbi__proc -; 2776 : if (z->img_comp[i].h > h_max) h_max = z->img_comp[i].h; +; 2789 : if (z->img_comp[i].h > h_max) h_max = z->img_comp[i].h; 00407 48 63 45 64 movsxd rax, DWORD PTR i$[rbp] 0040b 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -28247,7 +28267,7 @@ $LN10@stbi__proc: 00 mov DWORD PTR h_max$[rbp], eax $LN33@stbi__proc: -; 2777 : if (z->img_comp[i].v > v_max) v_max = z->img_comp[i].v; +; 2790 : if (z->img_comp[i].v > v_max) v_max = z->img_comp[i].v; 00441 48 63 45 64 movsxd rax, DWORD PTR i$[rbp] 00445 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -28268,15 +28288,15 @@ $LN33@stbi__proc: 00 mov DWORD PTR v_max$[rbp], eax $LN34@stbi__proc: -; 2778 : } +; 2791 : } 0047b e9 73 ff ff ff jmp $LN8@stbi__proc $LN9@stbi__proc: -; 2779 : -; 2780 : // check that plane subsampling factors are integer ratios; our resamplers can't deal with fractional ratios -; 2781 : // and I've never seen a non-corrupted JPEG file actually use them -; 2782 : for (i = 0; i < s->img_n; ++i) { +; 2792 : +; 2793 : // check that plane subsampling factors are integer ratios; our resamplers can't deal with fractional ratios +; 2794 : // and I've never seen a non-corrupted JPEG file actually use them +; 2795 : for (i = 0; i < s->img_n; ++i) { 00480 c7 45 64 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -28292,7 +28312,7 @@ $LN13@stbi__proc: 0049b 0f 8d 8b 00 00 00 jge $LN12@stbi__proc -; 2783 : if (h_max % z->img_comp[i].h != 0) return stbi__err("bad H", "Corrupt JPEG"); +; 2796 : if (h_max % z->img_comp[i].h != 0) return stbi__err("bad H", "Corrupt JPEG"); 004a1 48 63 45 64 movsxd rax, DWORD PTR i$[rbp] 004a5 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -28316,7 +28336,7 @@ $LN13@stbi__proc: 004df e9 95 04 00 00 jmp $LN1@stbi__proc $LN35@stbi__proc: -; 2784 : if (v_max % z->img_comp[i].v != 0) return stbi__err("bad V", "Corrupt JPEG"); +; 2797 : if (v_max % z->img_comp[i].v != 0) return stbi__err("bad V", "Corrupt JPEG"); 004e4 48 63 45 64 movsxd rax, DWORD PTR i$[rbp] 004e8 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -28340,14 +28360,14 @@ $LN35@stbi__proc: 00522 e9 52 04 00 00 jmp $LN1@stbi__proc $LN36@stbi__proc: -; 2785 : } +; 2798 : } 00527 e9 5d ff ff ff jmp $LN11@stbi__proc $LN12@stbi__proc: -; 2786 : -; 2787 : // compute interleaved mcu info -; 2788 : z->img_h_max = h_max; +; 2799 : +; 2800 : // compute interleaved mcu info +; 2801 : z->img_h_max = h_max; 0052c 48 8b 85 e0 01 00 00 mov rax, QWORD PTR z$[rbp] @@ -28356,7 +28376,7 @@ $LN12@stbi__proc: 00539 89 88 88 46 00 00 mov DWORD PTR [rax+18056], ecx -; 2789 : z->img_v_max = v_max; +; 2802 : z->img_v_max = v_max; 0053f 48 8b 85 e0 01 00 00 mov rax, QWORD PTR z$[rbp] @@ -28365,7 +28385,7 @@ $LN12@stbi__proc: 0054c 89 88 8c 46 00 00 mov DWORD PTR [rax+18060], ecx -; 2790 : z->img_mcu_w = h_max * 8; +; 2803 : z->img_mcu_w = h_max * 8; 00552 8b 85 a4 00 00 00 mov eax, DWORD PTR h_max$[rbp] @@ -28375,7 +28395,7 @@ $LN12@stbi__proc: 00562 89 81 98 46 00 00 mov DWORD PTR [rcx+18072], eax -; 2791 : z->img_mcu_h = v_max * 8; +; 2804 : z->img_mcu_h = v_max * 8; 00568 8b 85 c4 00 00 00 mov eax, DWORD PTR v_max$[rbp] @@ -28385,8 +28405,8 @@ $LN12@stbi__proc: 00578 89 81 9c 46 00 00 mov DWORD PTR [rcx+18076], eax -; 2792 : // these sizes can't be more than 17 bits -; 2793 : z->img_mcu_x = (s->img_x + z->img_mcu_w - 1) / z->img_mcu_w; +; 2805 : // these sizes can't be more than 17 bits +; 2806 : z->img_mcu_x = (s->img_x + z->img_mcu_w - 1) / z->img_mcu_w; 0057e 48 8b 45 08 mov rax, QWORD PTR s$[rbp] 00582 8b 00 mov eax, DWORD PTR [rax] @@ -28405,7 +28425,7 @@ $LN12@stbi__proc: 005ab 89 81 90 46 00 00 mov DWORD PTR [rcx+18064], eax -; 2794 : z->img_mcu_y = (s->img_y + z->img_mcu_h - 1) / z->img_mcu_h; +; 2807 : z->img_mcu_y = (s->img_y + z->img_mcu_h - 1) / z->img_mcu_h; 005b1 48 8b 45 08 mov rax, QWORD PTR s$[rbp] 005b5 8b 40 04 mov eax, DWORD PTR [rax+4] @@ -28424,8 +28444,8 @@ $LN12@stbi__proc: 005df 89 81 94 46 00 00 mov DWORD PTR [rcx+18068], eax -; 2795 : -; 2796 : for (i = 0; i < s->img_n; ++i) { +; 2808 : +; 2809 : for (i = 0; i < s->img_n; ++i) { 005e5 c7 45 64 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -28441,8 +28461,8 @@ $LN16@stbi__proc: 00600 0f 8d 6e 03 00 00 jge $LN15@stbi__proc -; 2797 : // number of effective pixels (e.g. for non-interleaved MCU) -; 2798 : z->img_comp[i].x = (s->img_x * z->img_comp[i].h + h_max - 1) / h_max; +; 2810 : // number of effective pixels (e.g. for non-interleaved MCU) +; 2811 : z->img_comp[i].x = (s->img_x * z->img_comp[i].h + h_max - 1) / h_max; 00606 48 63 45 64 movsxd rax, DWORD PTR i$[rbp] 0060a 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -28466,7 +28486,7 @@ $LN16@stbi__proc: 00646 89 84 0a bc 46 00 00 mov DWORD PTR [rdx+rcx+18108], eax -; 2799 : z->img_comp[i].y = (s->img_y * z->img_comp[i].v + v_max - 1) / v_max; +; 2812 : z->img_comp[i].y = (s->img_y * z->img_comp[i].v + v_max - 1) / v_max; 0064d 48 63 45 64 movsxd rax, DWORD PTR i$[rbp] 00651 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -28490,14 +28510,14 @@ $LN16@stbi__proc: 0068e 89 84 0a c0 46 00 00 mov DWORD PTR [rdx+rcx+18112], eax -; 2800 : // to simplify generation, we'll allocate enough memory to decode -; 2801 : // the bogus oversized data from using interleaved MCUs and their -; 2802 : // big blocks (e.g. a 16x16 iMCU on an image of width 33); we won't -; 2803 : // discard the extra data until colorspace conversion -; 2804 : // -; 2805 : // img_mcu_x, img_mcu_y: <=17 bits; comp[i].h and .v are <=4 (checked earlier) -; 2806 : // so these muls can't overflow with 32-bit ints (which we require) -; 2807 : z->img_comp[i].w2 = z->img_mcu_x * z->img_comp[i].h * 8; +; 2813 : // to simplify generation, we'll allocate enough memory to decode +; 2814 : // the bogus oversized data from using interleaved MCUs and their +; 2815 : // big blocks (e.g. a 16x16 iMCU on an image of width 33); we won't +; 2816 : // discard the extra data until colorspace conversion +; 2817 : // +; 2818 : // img_mcu_x, img_mcu_y: <=17 bits; comp[i].h and .v are <=4 (checked earlier) +; 2819 : // so these muls can't overflow with 32-bit ints (which we require) +; 2820 : z->img_comp[i].w2 = z->img_mcu_x * z->img_comp[i].h * 8; 00695 48 63 45 64 movsxd rax, DWORD PTR i$[rbp] 00699 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -28518,7 +28538,7 @@ $LN16@stbi__proc: 006cd 89 84 0a c4 46 00 00 mov DWORD PTR [rdx+rcx+18116], eax -; 2808 : z->img_comp[i].h2 = z->img_mcu_y * z->img_comp[i].v * 8; +; 2821 : z->img_comp[i].h2 = z->img_mcu_y * z->img_comp[i].v * 8; 006d4 48 63 45 64 movsxd rax, DWORD PTR i$[rbp] 006d8 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -28539,7 +28559,7 @@ $LN16@stbi__proc: 0070c 89 84 0a c8 46 00 00 mov DWORD PTR [rdx+rcx+18120], eax -; 2809 : z->img_comp[i].coeff = 0; +; 2822 : z->img_comp[i].coeff = 0; 00713 48 63 45 64 movsxd rax, DWORD PTR i$[rbp] 00717 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -28549,7 +28569,7 @@ $LN16@stbi__proc: 46 00 00 00 00 00 00 mov QWORD PTR [rcx+rax+18160], 0 -; 2810 : z->img_comp[i].raw_coeff = 0; +; 2823 : z->img_comp[i].raw_coeff = 0; 0072e 48 63 45 64 movsxd rax, DWORD PTR i$[rbp] 00732 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -28559,7 +28579,7 @@ $LN16@stbi__proc: 46 00 00 00 00 00 00 mov QWORD PTR [rcx+rax+18144], 0 -; 2811 : z->img_comp[i].linebuf = NULL; +; 2824 : z->img_comp[i].linebuf = NULL; 00749 48 63 45 64 movsxd rax, DWORD PTR i$[rbp] 0074d 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -28569,7 +28589,7 @@ $LN16@stbi__proc: 46 00 00 00 00 00 00 mov QWORD PTR [rcx+rax+18152], 0 -; 2812 : z->img_comp[i].raw_data = stbi__malloc_mad2(z->img_comp[i].w2, z->img_comp[i].h2, 15); +; 2825 : z->img_comp[i].raw_data = stbi__malloc_mad2(z->img_comp[i].w2, z->img_comp[i].h2, 15); 00764 48 63 45 64 movsxd rax, DWORD PTR i$[rbp] 00768 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -28593,7 +28613,7 @@ $LN16@stbi__proc: 007aa 48 89 84 0a d8 46 00 00 mov QWORD PTR [rdx+rcx+18136], rax -; 2813 : if (z->img_comp[i].raw_data == NULL) +; 2826 : if (z->img_comp[i].raw_data == NULL) 007b2 48 63 45 64 movsxd rax, DWORD PTR i$[rbp] 007b6 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -28603,7 +28623,7 @@ $LN16@stbi__proc: 46 00 00 00 cmp QWORD PTR [rcx+rax+18136], 0 007ca 75 27 jne SHORT $LN37@stbi__proc -; 2814 : return stbi__free_jpeg_components(z, i + 1, stbi__err("outofmem", "Out of memory")); +; 2827 : return stbi__free_jpeg_components(z, i + 1, stbi__err("outofmem", "Out of memory")); 007cc 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_08NOGIMCHF@outofmem@ @@ -28618,8 +28638,8 @@ $LN16@stbi__proc: 007ee e9 86 01 00 00 jmp $LN1@stbi__proc $LN37@stbi__proc: -; 2815 : // align blocks for idct using mmx/sse -; 2816 : z->img_comp[i].data = (stbi_uc*)(((size_t)z->img_comp[i].raw_data + 15) & ~15); +; 2828 : // align blocks for idct using mmx/sse +; 2829 : z->img_comp[i].data = (stbi_uc*)(((size_t)z->img_comp[i].raw_data + 15) & ~15); 007f3 48 63 45 64 movsxd rax, DWORD PTR i$[rbp] 007f7 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -28636,7 +28656,7 @@ $LN37@stbi__proc: 00821 48 89 84 0a d0 46 00 00 mov QWORD PTR [rdx+rcx+18128], rax -; 2817 : if (z->progressive) { +; 2830 : if (z->progressive) { 00829 48 8b 85 e0 01 00 00 mov rax, QWORD PTR z$[rbp] @@ -28645,8 +28665,8 @@ $LN37@stbi__proc: 00837 0f 84 32 01 00 00 je $LN38@stbi__proc -; 2818 : // w2, h2 are multiples of 8 (see above) -; 2819 : z->img_comp[i].coeff_w = z->img_comp[i].w2 / 8; +; 2831 : // w2, h2 are multiples of 8 (see above) +; 2832 : z->img_comp[i].coeff_w = z->img_comp[i].w2 / 8; 0083d 48 63 45 64 movsxd rax, DWORD PTR i$[rbp] 00841 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -28665,7 +28685,7 @@ $LN37@stbi__proc: 0086b 89 84 0a f8 46 00 00 mov DWORD PTR [rdx+rcx+18168], eax -; 2820 : z->img_comp[i].coeff_h = z->img_comp[i].h2 / 8; +; 2833 : z->img_comp[i].coeff_h = z->img_comp[i].h2 / 8; 00872 48 63 45 64 movsxd rax, DWORD PTR i$[rbp] 00876 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -28684,7 +28704,7 @@ $LN37@stbi__proc: 008a0 89 84 0a fc 46 00 00 mov DWORD PTR [rdx+rcx+18172], eax -; 2821 : z->img_comp[i].raw_coeff = stbi__malloc_mad3(z->img_comp[i].w2, z->img_comp[i].h2, sizeof(short), 15); +; 2834 : z->img_comp[i].raw_coeff = stbi__malloc_mad3(z->img_comp[i].w2, z->img_comp[i].h2, sizeof(short), 15); 008a7 48 63 45 64 movsxd rax, DWORD PTR i$[rbp] 008ab 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -28710,7 +28730,7 @@ $LN37@stbi__proc: 008f3 48 89 84 0a e0 46 00 00 mov QWORD PTR [rdx+rcx+18144], rax -; 2822 : if (z->img_comp[i].raw_coeff == NULL) +; 2835 : if (z->img_comp[i].raw_coeff == NULL) 008fb 48 63 45 64 movsxd rax, DWORD PTR i$[rbp] 008ff 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -28720,7 +28740,7 @@ $LN37@stbi__proc: 46 00 00 00 cmp QWORD PTR [rcx+rax+18144], 0 00913 75 24 jne SHORT $LN39@stbi__proc -; 2823 : return stbi__free_jpeg_components(z, i + 1, stbi__err("outofmem", "Out of memory")); +; 2836 : return stbi__free_jpeg_components(z, i + 1, stbi__err("outofmem", "Out of memory")); 00915 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_08NOGIMCHF@outofmem@ @@ -28735,7 +28755,7 @@ $LN37@stbi__proc: 00937 eb 40 jmp SHORT $LN1@stbi__proc $LN39@stbi__proc: -; 2824 : z->img_comp[i].coeff = (short*)(((size_t)z->img_comp[i].raw_coeff + 15) & ~15); +; 2837 : z->img_comp[i].coeff = (short*)(((size_t)z->img_comp[i].raw_coeff + 15) & ~15); 00939 48 63 45 64 movsxd rax, DWORD PTR i$[rbp] 0093d 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -28753,19 +28773,19 @@ $LN39@stbi__proc: 46 00 00 mov QWORD PTR [rdx+rcx+18160], rax $LN38@stbi__proc: -; 2825 : } -; 2826 : } +; 2838 : } +; 2839 : } 0096f e9 7a fc ff ff jmp $LN14@stbi__proc $LN15@stbi__proc: -; 2827 : -; 2828 : return 1; +; 2840 : +; 2841 : return 1; 00974 b8 01 00 00 00 mov eax, 1 $LN1@stbi__proc: -; 2829 : } +; 2842 : } 00979 48 8d a5 c8 01 00 00 lea rsp, QWORD PTR [rbp+456] @@ -28784,7 +28804,7 @@ ncomp$ = 264 why$ = 272 stbi__free_jpeg_components PROC ; COMDAT -; 2718 : { +; 2731 : { 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 00005 89 54 24 10 mov DWORD PTR [rsp+16], edx @@ -28798,8 +28818,8 @@ stbi__free_jpeg_components PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00023 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 2719 : int i; -; 2720 : for (i = 0; i < ncomp; ++i) { +; 2732 : int i; +; 2733 : for (i = 0; i < ncomp; ++i) { 00028 c7 45 04 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -28815,7 +28835,7 @@ $LN4@stbi__free: 00042 0f 8d 31 01 00 00 jge $LN3@stbi__free -; 2721 : if (z->img_comp[i].raw_data) { +; 2734 : if (z->img_comp[i].raw_data) { 00048 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 0004c 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -28825,7 +28845,7 @@ $LN4@stbi__free: 46 00 00 00 cmp QWORD PTR [rcx+rax+18136], 0 00060 74 53 je SHORT $LN5@stbi__free -; 2722 : STBI_FREE(z->img_comp[i].raw_data); +; 2735 : STBI_FREE(z->img_comp[i].raw_data); 00062 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 00066 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -28836,7 +28856,7 @@ $LN4@stbi__free: 00079 ff 15 00 00 00 00 call QWORD PTR __imp_free -; 2723 : z->img_comp[i].raw_data = NULL; +; 2736 : z->img_comp[i].raw_data = NULL; 0007f 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 00083 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -28846,7 +28866,7 @@ $LN4@stbi__free: 46 00 00 00 00 00 00 mov QWORD PTR [rcx+rax+18136], 0 -; 2724 : z->img_comp[i].data = NULL; +; 2737 : z->img_comp[i].data = NULL; 0009a 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 0009e 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -28857,8 +28877,8 @@ $LN4@stbi__free: 00 00 mov QWORD PTR [rcx+rax+18128], 0 $LN5@stbi__free: -; 2725 : } -; 2726 : if (z->img_comp[i].raw_coeff) { +; 2738 : } +; 2739 : if (z->img_comp[i].raw_coeff) { 000b5 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 000b9 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -28868,7 +28888,7 @@ $LN5@stbi__free: 46 00 00 00 cmp QWORD PTR [rcx+rax+18144], 0 000cd 74 53 je SHORT $LN6@stbi__free -; 2727 : STBI_FREE(z->img_comp[i].raw_coeff); +; 2740 : STBI_FREE(z->img_comp[i].raw_coeff); 000cf 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 000d3 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -28879,7 +28899,7 @@ $LN5@stbi__free: 000e6 ff 15 00 00 00 00 call QWORD PTR __imp_free -; 2728 : z->img_comp[i].raw_coeff = 0; +; 2741 : z->img_comp[i].raw_coeff = 0; 000ec 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 000f0 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -28889,7 +28909,7 @@ $LN5@stbi__free: 46 00 00 00 00 00 00 mov QWORD PTR [rcx+rax+18144], 0 -; 2729 : z->img_comp[i].coeff = 0; +; 2742 : z->img_comp[i].coeff = 0; 00107 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 0010b 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -28900,8 +28920,8 @@ $LN5@stbi__free: 00 00 mov QWORD PTR [rcx+rax+18160], 0 $LN6@stbi__free: -; 2730 : } -; 2731 : if (z->img_comp[i].linebuf) { +; 2743 : } +; 2744 : if (z->img_comp[i].linebuf) { 00122 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 00126 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -28911,7 +28931,7 @@ $LN6@stbi__free: 46 00 00 00 cmp QWORD PTR [rcx+rax+18152], 0 0013a 74 38 je SHORT $LN7@stbi__free -; 2732 : STBI_FREE(z->img_comp[i].linebuf); +; 2745 : STBI_FREE(z->img_comp[i].linebuf); 0013c 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 00140 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -28922,7 +28942,7 @@ $LN6@stbi__free: 00153 ff 15 00 00 00 00 call QWORD PTR __imp_free -; 2733 : z->img_comp[i].linebuf = NULL; +; 2746 : z->img_comp[i].linebuf = NULL; 00159 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 0015d 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -28933,18 +28953,18 @@ $LN6@stbi__free: 00 00 mov QWORD PTR [rcx+rax+18152], 0 $LN7@stbi__free: -; 2734 : } -; 2735 : } +; 2747 : } +; 2748 : } 00174 e9 b8 fe ff ff jmp $LN2@stbi__free $LN3@stbi__free: -; 2736 : return why; +; 2749 : return why; 00179 8b 85 10 01 00 00 mov eax, DWORD PTR why$[rbp] -; 2737 : } +; 2750 : } 0017f 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -28966,7 +28986,7 @@ aa$4 = 164 z$ = 416 stbi__process_scan_header PROC ; COMDAT -; 2678 : { +; 2691 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -28978,8 +28998,8 @@ stbi__process_scan_header PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 2679 : int i; -; 2680 : int Ls = stbi__get16be(z->s); +; 2692 : int i; +; 2693 : int Ls = stbi__get16be(z->s); 0001f 48 8b 85 a0 01 00 00 mov rax, QWORD PTR z$[rbp] @@ -28987,7 +29007,7 @@ stbi__process_scan_header PROC ; COMDAT 00029 e8 00 00 00 00 call stbi__get16be 0002e 89 45 24 mov DWORD PTR Ls$[rbp], eax -; 2681 : z->scan_n = stbi__get8(z->s); +; 2694 : z->scan_n = stbi__get8(z->s); 00031 48 8b 85 a0 01 00 00 mov rax, QWORD PTR z$[rbp] @@ -28999,7 +29019,7 @@ stbi__process_scan_header PROC ; COMDAT 0004a 89 81 54 48 00 00 mov DWORD PTR [rcx+18516], eax -; 2682 : if (z->scan_n < 1 || z->scan_n > 4 || z->scan_n > (int)z->s->img_n) return stbi__err("bad SOS component count", "Corrupt JPEG"); +; 2695 : if (z->scan_n < 1 || z->scan_n > 4 || z->scan_n > (int)z->s->img_n) return stbi__err("bad SOS component count", "Corrupt JPEG"); 00050 48 8b 85 a0 01 00 00 mov rax, QWORD PTR z$[rbp] @@ -29027,7 +29047,7 @@ $LN9@stbi__proc: 00098 e9 e2 02 00 00 jmp $LN1@stbi__proc $LN8@stbi__proc: -; 2683 : if (Ls != 6 + 2 * z->scan_n) return stbi__err("bad SOS len", "Corrupt JPEG"); +; 2696 : if (Ls != 6 + 2 * z->scan_n) return stbi__err("bad SOS len", "Corrupt JPEG"); 0009d 48 8b 85 a0 01 00 00 mov rax, QWORD PTR z$[rbp] @@ -29042,7 +29062,7 @@ $LN8@stbi__proc: 000bf e9 bb 02 00 00 jmp $LN1@stbi__proc $LN10@stbi__proc: -; 2684 : for (i = 0; i < z->scan_n; ++i) { +; 2697 : for (i = 0; i < z->scan_n; ++i) { 000c4 c7 45 04 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -29060,7 +29080,7 @@ $LN4@stbi__proc: 000e5 0f 8d 34 01 00 00 jge $LN3@stbi__proc -; 2685 : int id = stbi__get8(z->s), which; +; 2698 : int id = stbi__get8(z->s), which; 000eb 48 8b 85 a0 01 00 00 mov rax, QWORD PTR z$[rbp] @@ -29069,7 +29089,7 @@ $LN4@stbi__proc: 000fa 0f b6 c0 movzx eax, al 000fd 89 45 44 mov DWORD PTR id$1[rbp], eax -; 2686 : int q = stbi__get8(z->s); +; 2699 : int q = stbi__get8(z->s); 00100 48 8b 85 a0 01 00 00 mov rax, QWORD PTR z$[rbp] @@ -29079,7 +29099,7 @@ $LN4@stbi__proc: 00112 89 85 84 00 00 00 mov DWORD PTR q$3[rbp], eax -; 2687 : for (which = 0; which < z->s->img_n; ++which) +; 2700 : for (which = 0; which < z->s->img_n; ++which) 00118 c7 45 64 00 00 00 00 mov DWORD PTR which$2[rbp], 0 @@ -29096,7 +29116,7 @@ $LN7@stbi__proc: 00136 39 45 64 cmp DWORD PTR which$2[rbp], eax 00139 7d 1f jge SHORT $LN6@stbi__proc -; 2688 : if (z->img_comp[which].id == id) +; 2701 : if (z->img_comp[which].id == id) 0013b 48 63 45 64 movsxd rax, DWORD PTR which$2[rbp] 0013f 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -29107,14 +29127,14 @@ $LN7@stbi__proc: 00 00 cmp DWORD PTR [rcx+rax+18080], edx 00154 75 02 jne SHORT $LN11@stbi__proc -; 2689 : break; +; 2702 : break; 00156 eb 02 jmp SHORT $LN6@stbi__proc $LN11@stbi__proc: 00158 eb c7 jmp SHORT $LN5@stbi__proc $LN6@stbi__proc: -; 2690 : if (which == z->s->img_n) return 0; // no match +; 2703 : if (which == z->s->img_n) return 0; // no match 0015a 48 8b 85 a0 01 00 00 mov rax, QWORD PTR z$[rbp] @@ -29126,7 +29146,7 @@ $LN6@stbi__proc: 0016e e9 0c 02 00 00 jmp $LN1@stbi__proc $LN12@stbi__proc: -; 2691 : z->img_comp[which].hd = q >> 4; if (z->img_comp[which].hd > 3) return stbi__err("bad DC huff", "Corrupt JPEG"); +; 2704 : z->img_comp[which].hd = q >> 4; if (z->img_comp[which].hd > 3) return stbi__err("bad DC huff", "Corrupt JPEG"); 00173 8b 85 84 00 00 00 mov eax, DWORD PTR q$3[rbp] @@ -29150,7 +29170,7 @@ $LN12@stbi__proc: 001b7 e9 c3 01 00 00 jmp $LN1@stbi__proc $LN13@stbi__proc: -; 2692 : z->img_comp[which].ha = q & 15; if (z->img_comp[which].ha > 3) return stbi__err("bad AC huff", "Corrupt JPEG"); +; 2705 : z->img_comp[which].ha = q & 15; if (z->img_comp[which].ha > 3) return stbi__err("bad AC huff", "Corrupt JPEG"); 001bc 8b 85 84 00 00 00 mov eax, DWORD PTR q$3[rbp] @@ -29174,7 +29194,7 @@ $LN13@stbi__proc: 00200 e9 7a 01 00 00 jmp $LN1@stbi__proc $LN14@stbi__proc: -; 2693 : z->order[i] = which; +; 2706 : z->order[i] = which; 00205 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 00209 48 8b 8d a0 01 @@ -29183,15 +29203,15 @@ $LN14@stbi__proc: 00213 89 94 81 58 48 00 00 mov DWORD PTR [rcx+rax*4+18520], edx -; 2694 : } +; 2707 : } 0021a e9 ae fe ff ff jmp $LN2@stbi__proc $LN3@stbi__proc: -; 2695 : -; 2696 : { -; 2697 : int aa; -; 2698 : z->spec_start = stbi__get8(z->s); +; 2708 : +; 2709 : { +; 2710 : int aa; +; 2711 : z->spec_start = stbi__get8(z->s); 0021f 48 8b 85 a0 01 00 00 mov rax, QWORD PTR z$[rbp] @@ -29203,7 +29223,7 @@ $LN3@stbi__proc: 00238 89 81 34 48 00 00 mov DWORD PTR [rcx+18484], eax -; 2699 : z->spec_end = stbi__get8(z->s); // should be 63, but might be 0 +; 2712 : z->spec_end = stbi__get8(z->s); // should be 63, but might be 0 0023e 48 8b 85 a0 01 00 00 mov rax, QWORD PTR z$[rbp] @@ -29215,7 +29235,7 @@ $LN3@stbi__proc: 00257 89 81 38 48 00 00 mov DWORD PTR [rcx+18488], eax -; 2700 : aa = stbi__get8(z->s); +; 2713 : aa = stbi__get8(z->s); 0025d 48 8b 85 a0 01 00 00 mov rax, QWORD PTR z$[rbp] @@ -29225,7 +29245,7 @@ $LN3@stbi__proc: 0026f 89 85 a4 00 00 00 mov DWORD PTR aa$4[rbp], eax -; 2701 : z->succ_high = (aa >> 4); +; 2714 : z->succ_high = (aa >> 4); 00275 8b 85 a4 00 00 00 mov eax, DWORD PTR aa$4[rbp] @@ -29235,7 +29255,7 @@ $LN3@stbi__proc: 00285 89 81 3c 48 00 00 mov DWORD PTR [rcx+18492], eax -; 2702 : z->succ_low = (aa & 15); +; 2715 : z->succ_low = (aa & 15); 0028b 8b 85 a4 00 00 00 mov eax, DWORD PTR aa$4[rbp] @@ -29245,7 +29265,7 @@ $LN3@stbi__proc: 0029b 89 81 40 48 00 00 mov DWORD PTR [rcx+18496], eax -; 2703 : if (z->progressive) { +; 2716 : if (z->progressive) { 002a1 48 8b 85 a0 01 00 00 mov rax, QWORD PTR z$[rbp] @@ -29253,7 +29273,7 @@ $LN3@stbi__proc: 00 00 cmp DWORD PTR [rax+18480], 0 002af 74 6c je SHORT $LN15@stbi__proc -; 2704 : if (z->spec_start > 63 || z->spec_end > 63 || z->spec_start > z->spec_end || z->succ_high > 13 || z->succ_low > 13) +; 2717 : if (z->spec_start > 63 || z->spec_end > 63 || z->spec_start > z->spec_end || z->succ_high > 13 || z->succ_low > 13) 002b1 48 8b 85 a0 01 00 00 mov rax, QWORD PTR z$[rbp] @@ -29286,7 +29306,7 @@ $LN3@stbi__proc: 0030b 7e 0e jle SHORT $LN17@stbi__proc $LN18@stbi__proc: -; 2705 : return stbi__err("bad SOS", "Corrupt JPEG"); +; 2718 : return stbi__err("bad SOS", "Corrupt JPEG"); 0030d 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_07EEJOMGGP@bad?5SOS@ @@ -29294,13 +29314,13 @@ $LN18@stbi__proc: 00319 eb 64 jmp SHORT $LN1@stbi__proc $LN17@stbi__proc: -; 2706 : } +; 2719 : } 0031b eb 5d jmp SHORT $LN16@stbi__proc $LN15@stbi__proc: -; 2707 : else { -; 2708 : if (z->spec_start != 0) return stbi__err("bad SOS", "Corrupt JPEG"); +; 2720 : else { +; 2721 : if (z->spec_start != 0) return stbi__err("bad SOS", "Corrupt JPEG"); 0031d 48 8b 85 a0 01 00 00 mov rax, QWORD PTR z$[rbp] @@ -29313,7 +29333,7 @@ $LN15@stbi__proc: 00339 eb 44 jmp SHORT $LN1@stbi__proc $LN19@stbi__proc: -; 2709 : if (z->succ_high != 0 || z->succ_low != 0) return stbi__err("bad SOS", "Corrupt JPEG"); +; 2722 : if (z->succ_high != 0 || z->succ_low != 0) return stbi__err("bad SOS", "Corrupt JPEG"); 0033b 48 8b 85 a0 01 00 00 mov rax, QWORD PTR z$[rbp] @@ -29332,7 +29352,7 @@ $LN21@stbi__proc: 00367 eb 16 jmp SHORT $LN1@stbi__proc $LN20@stbi__proc: -; 2710 : z->spec_end = 63; +; 2723 : z->spec_end = 63; 00369 48 8b 85 a0 01 00 00 mov rax, QWORD PTR z$[rbp] @@ -29340,15 +29360,15 @@ $LN20@stbi__proc: 00 3f 00 00 00 mov DWORD PTR [rax+18488], 63 ; 0000003fH $LN16@stbi__proc: -; 2711 : } -; 2712 : } -; 2713 : -; 2714 : return 1; +; 2724 : } +; 2725 : } +; 2726 : +; 2727 : return 1; 0037a b8 01 00 00 00 mov eax, 1 $LN1@stbi__proc: -; 2715 : } +; 2728 : } 0037f 48 8d a5 88 01 00 00 lea rsp, QWORD PTR [rbp+392] @@ -29389,7 +29409,7 @@ z$ = 1024 m$ = 1032 stbi__process_marker PROC ; COMDAT -; 2572 : { +; 2585 : { 00000 89 54 24 10 mov DWORD PTR [rsp+16], edx 00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx @@ -29413,8 +29433,8 @@ stbi__process_marker PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00048 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 2573 : int L; -; 2574 : switch (m) { +; 2586 : int L; +; 2587 : switch (m) { 0004d 8b 85 08 04 00 00 mov eax, DWORD PTR m$[rbp] @@ -29436,8 +29456,8 @@ stbi__process_marker PROC ; COMDAT 0008d e9 8a 04 00 00 jmp $LN2@stbi__proc $LN23@stbi__proc: -; 2575 : case STBI__MARKER_none: // no marker found -; 2576 : return stbi__err("expected marker", "Corrupt JPEG"); +; 2588 : case STBI__MARKER_none: // no marker found +; 2589 : return stbi__err("expected marker", "Corrupt JPEG"); 00092 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0BA@KLNDOKJD@expected?5marker@ @@ -29445,9 +29465,9 @@ $LN23@stbi__proc: 0009e e9 9c 06 00 00 jmp $LN1@stbi__proc $LN24@stbi__proc: -; 2577 : -; 2578 : case 0xDD: // DRI - specify restart interval -; 2579 : if (stbi__get16be(z->s) != 4) return stbi__err("bad DRI len", "Corrupt JPEG"); +; 2590 : +; 2591 : case 0xDD: // DRI - specify restart interval +; 2592 : if (stbi__get16be(z->s) != 4) return stbi__err("bad DRI len", "Corrupt JPEG"); 000a3 48 8b 85 00 04 00 00 mov rax, QWORD PTR z$[rbp] @@ -29461,7 +29481,7 @@ $LN24@stbi__proc: 000c3 e9 77 06 00 00 jmp $LN1@stbi__proc $LN25@stbi__proc: -; 2580 : z->restart_interval = stbi__get16be(z->s); +; 2593 : z->restart_interval = stbi__get16be(z->s); 000c8 48 8b 85 00 04 00 00 mov rax, QWORD PTR z$[rbp] @@ -29472,15 +29492,15 @@ $LN25@stbi__proc: 000de 89 81 68 48 00 00 mov DWORD PTR [rcx+18536], eax -; 2581 : return 1; +; 2594 : return 1; 000e4 b8 01 00 00 00 mov eax, 1 000e9 e9 51 06 00 00 jmp $LN1@stbi__proc $LN26@stbi__proc: -; 2582 : -; 2583 : case 0xDB: // DQT - define quantization table -; 2584 : L = stbi__get16be(z->s) - 2; +; 2595 : +; 2596 : case 0xDB: // DQT - define quantization table +; 2597 : L = stbi__get16be(z->s) - 2; 000ee 48 8b 85 00 04 00 00 mov rax, QWORD PTR z$[rbp] @@ -29490,13 +29510,13 @@ $LN26@stbi__proc: 00100 89 45 04 mov DWORD PTR L$[rbp], eax $LN4@stbi__proc: -; 2585 : while (L > 0) { +; 2598 : while (L > 0) { 00103 83 7d 04 00 cmp DWORD PTR L$[rbp], 0 00107 0f 8e 4e 01 00 00 jle $LN5@stbi__proc -; 2586 : int q = stbi__get8(z->s); +; 2599 : int q = stbi__get8(z->s); 0010d 48 8b 85 00 04 00 00 mov rax, QWORD PTR z$[rbp] @@ -29505,7 +29525,7 @@ $LN4@stbi__proc: 0011c 0f b6 c0 movzx eax, al 0011f 89 45 24 mov DWORD PTR q$4[rbp], eax -; 2587 : int p = q >> 4, sixteen = (p != 0); +; 2600 : int p = q >> 4, sixteen = (p != 0); 00122 8b 45 24 mov eax, DWORD PTR q$4[rbp] 00125 c1 f8 04 sar eax, 4 @@ -29523,14 +29543,14 @@ $LN53@stbi__proc: 00 mov eax, DWORD PTR tv88[rbp] 0014d 89 45 64 mov DWORD PTR sixteen$6[rbp], eax -; 2588 : int t = q & 15, i; +; 2601 : int t = q & 15, i; 00150 8b 45 24 mov eax, DWORD PTR q$4[rbp] 00153 83 e0 0f and eax, 15 00156 89 85 84 00 00 00 mov DWORD PTR t$7[rbp], eax -; 2589 : if (p != 0 && p != 1) return stbi__err("bad DQT type", "Corrupt JPEG"); +; 2602 : if (p != 0 && p != 1) return stbi__err("bad DQT type", "Corrupt JPEG"); 0015c 83 7d 44 00 cmp DWORD PTR p$5[rbp], 0 00160 74 17 je SHORT $LN27@stbi__proc @@ -29542,7 +29562,7 @@ $LN53@stbi__proc: 00174 e9 c6 05 00 00 jmp $LN1@stbi__proc $LN27@stbi__proc: -; 2590 : if (t > 3) return stbi__err("bad DQT table", "Corrupt JPEG"); +; 2603 : if (t > 3) return stbi__err("bad DQT table", "Corrupt JPEG"); 00179 83 bd 84 00 00 00 03 cmp DWORD PTR t$7[rbp], 3 @@ -29553,8 +29573,8 @@ $LN27@stbi__proc: 0018e e9 ac 05 00 00 jmp $LN1@stbi__proc $LN28@stbi__proc: -; 2591 : -; 2592 : for (i = 0; i < 64; ++i) +; 2604 : +; 2605 : for (i = 0; i < 64; ++i) 00193 c7 85 a4 00 00 00 00 00 00 00 mov DWORD PTR i$8[rbp], 0 @@ -29570,7 +29590,7 @@ $LN8@stbi__proc: 00 40 cmp DWORD PTR i$8[rbp], 64 ; 00000040H 001b4 7d 74 jge SHORT $LN7@stbi__proc -; 2593 : z->dequant[t][stbi__jpeg_dezigzag[i]] = (stbi__uint16)(sixteen ? stbi__get16be(z->s) : stbi__get8(z->s)); +; 2606 : z->dequant[t][stbi__jpeg_dezigzag[i]] = (stbi__uint16)(sixteen ? stbi__get16be(z->s) : stbi__get8(z->s)); 001b6 83 7d 64 00 cmp DWORD PTR sixteen$6[rbp], 0 001ba 74 17 je SHORT $LN54@stbi__proc @@ -29609,7 +29629,7 @@ $LN55@stbi__proc: 00225 e9 75 ff ff ff jmp $LN6@stbi__proc $LN7@stbi__proc: -; 2594 : L -= (sixteen ? 129 : 65); +; 2607 : L -= (sixteen ? 129 : 65); 0022a 83 7d 64 00 cmp DWORD PTR sixteen$6[rbp], 0 0022e 74 0c je SHORT $LN56@stbi__proc @@ -29627,12 +29647,12 @@ $LN57@stbi__proc: 00251 8b c1 mov eax, ecx 00253 89 45 04 mov DWORD PTR L$[rbp], eax -; 2595 : } +; 2608 : } 00256 e9 a8 fe ff ff jmp $LN4@stbi__proc $LN5@stbi__proc: -; 2596 : return L == 0; +; 2609 : return L == 0; 0025b 83 7d 04 00 cmp DWORD PTR L$[rbp], 0 0025f 75 0c jne SHORT $LN58@stbi__proc @@ -29648,9 +29668,9 @@ $LN59@stbi__proc: 0027d e9 bd 04 00 00 jmp $LN1@stbi__proc $LN29@stbi__proc: -; 2597 : -; 2598 : case 0xC4: // DHT - define huffman table -; 2599 : L = stbi__get16be(z->s) - 2; +; 2610 : +; 2611 : case 0xC4: // DHT - define huffman table +; 2612 : L = stbi__get16be(z->s) - 2; 00282 48 8b 85 00 04 00 00 mov rax, QWORD PTR z$[rbp] @@ -29660,19 +29680,19 @@ $LN29@stbi__proc: 00294 89 45 04 mov DWORD PTR L$[rbp], eax $LN9@stbi__proc: -; 2600 : while (L > 0) { +; 2613 : while (L > 0) { 00297 83 7d 04 00 cmp DWORD PTR L$[rbp], 0 0029b 0f 8e 54 02 00 00 jle $LN10@stbi__proc -; 2601 : stbi_uc* v; -; 2602 : int sizes[16], i, n = 0; +; 2614 : stbi_uc* v; +; 2615 : int sizes[16], i, n = 0; 002a1 c7 85 64 01 00 00 00 00 00 00 mov DWORD PTR n$12[rbp], 0 -; 2603 : int q = stbi__get8(z->s); +; 2616 : int q = stbi__get8(z->s); 002ab 48 8b 85 00 04 00 00 mov rax, QWORD PTR z$[rbp] @@ -29682,7 +29702,7 @@ $LN9@stbi__proc: 002bd 89 85 84 01 00 00 mov DWORD PTR q$13[rbp], eax -; 2604 : int tc = q >> 4; +; 2617 : int tc = q >> 4; 002c3 8b 85 84 01 00 00 mov eax, DWORD PTR q$13[rbp] @@ -29690,7 +29710,7 @@ $LN9@stbi__proc: 002cc 89 85 a4 01 00 00 mov DWORD PTR tc$14[rbp], eax -; 2605 : int th = q & 15; +; 2618 : int th = q & 15; 002d2 8b 85 84 01 00 00 mov eax, DWORD PTR q$13[rbp] @@ -29698,7 +29718,7 @@ $LN9@stbi__proc: 002db 89 85 c4 01 00 00 mov DWORD PTR th$15[rbp], eax -; 2606 : if (tc > 1 || th > 3) return stbi__err("bad DHT header", "Corrupt JPEG"); +; 2619 : if (tc > 1 || th > 3) return stbi__err("bad DHT header", "Corrupt JPEG"); 002e1 83 bd a4 01 00 00 01 cmp DWORD PTR tc$14[rbp], 1 @@ -29713,7 +29733,7 @@ $LN31@stbi__proc: 002ff e9 3b 04 00 00 jmp $LN1@stbi__proc $LN30@stbi__proc: -; 2607 : for (i = 0; i < 16; ++i) { +; 2620 : for (i = 0; i < 16; ++i) { 00304 c7 85 44 01 00 00 00 00 00 00 mov DWORD PTR i$11[rbp], 0 @@ -29729,7 +29749,7 @@ $LN13@stbi__proc: 00 10 cmp DWORD PTR i$11[rbp], 16 00325 7d 40 jge SHORT $LN12@stbi__proc -; 2608 : sizes[i] = stbi__get8(z->s); +; 2621 : sizes[i] = stbi__get8(z->s); 00327 48 8b 85 00 04 00 00 mov rax, QWORD PTR z$[rbp] @@ -29741,7 +29761,7 @@ $LN13@stbi__proc: 00340 89 84 8d f0 00 00 00 mov DWORD PTR sizes$10[rbp+rcx*4], eax -; 2609 : n += sizes[i]; +; 2622 : n += sizes[i]; 00347 48 63 85 44 01 00 00 movsxd rax, DWORD PTR i$11[rbp] @@ -29754,12 +29774,12 @@ $LN13@stbi__proc: 0035f 89 85 64 01 00 00 mov DWORD PTR n$12[rbp], eax -; 2610 : } +; 2623 : } 00365 eb a9 jmp SHORT $LN11@stbi__proc $LN12@stbi__proc: -; 2611 : if (n > 256) return stbi__err("bad DHT header", "Corrupt JPEG"); // Loop over i < n would write past end of values! +; 2624 : if (n > 256) return stbi__err("bad DHT header", "Corrupt JPEG"); // Loop over i < n would write past end of values! 00367 81 bd 64 01 00 00 00 01 00 00 cmp DWORD PTR n$12[rbp], 256 ; 00000100H @@ -29770,19 +29790,19 @@ $LN12@stbi__proc: 0037f e9 bb 03 00 00 jmp $LN1@stbi__proc $LN32@stbi__proc: -; 2612 : L -= 17; +; 2625 : L -= 17; 00384 8b 45 04 mov eax, DWORD PTR L$[rbp] 00387 83 e8 11 sub eax, 17 0038a 89 45 04 mov DWORD PTR L$[rbp], eax -; 2613 : if (tc == 0) { +; 2626 : if (tc == 0) { 0038d 83 bd a4 01 00 00 00 cmp DWORD PTR tc$14[rbp], 0 00394 75 5a jne SHORT $LN33@stbi__proc -; 2614 : if (!stbi__build_huffman(z->huff_dc + th, sizes)) return 0; +; 2627 : if (!stbi__build_huffman(z->huff_dc + th, sizes)) return 0; 00396 48 63 85 c4 01 00 00 movsxd rax, DWORD PTR th$15[rbp] @@ -29801,7 +29821,7 @@ $LN32@stbi__proc: 003c5 e9 75 03 00 00 jmp $LN1@stbi__proc $LN35@stbi__proc: -; 2615 : v = z->huff_dc[th].values; +; 2628 : v = z->huff_dc[th].values; 003ca 48 63 85 c4 01 00 00 movsxd rax, DWORD PTR th$15[rbp] @@ -29814,13 +29834,13 @@ $LN35@stbi__proc: 003e7 48 89 85 c8 00 00 00 mov QWORD PTR v$9[rbp], rax -; 2616 : } +; 2629 : } 003ee eb 5b jmp SHORT $LN34@stbi__proc $LN33@stbi__proc: -; 2617 : else { -; 2618 : if (!stbi__build_huffman(z->huff_ac + th, sizes)) return 0; +; 2630 : else { +; 2631 : if (!stbi__build_huffman(z->huff_ac + th, sizes)) return 0; 003f0 48 63 85 c4 01 00 00 movsxd rax, DWORD PTR th$15[rbp] @@ -29840,7 +29860,7 @@ $LN33@stbi__proc: 00422 e9 18 03 00 00 jmp $LN1@stbi__proc $LN36@stbi__proc: -; 2619 : v = z->huff_ac[th].values; +; 2632 : v = z->huff_ac[th].values; 00427 48 63 85 c4 01 00 00 movsxd rax, DWORD PTR th$15[rbp] @@ -29854,8 +29874,8 @@ $LN36@stbi__proc: 00 00 mov QWORD PTR v$9[rbp], rax $LN34@stbi__proc: -; 2620 : } -; 2621 : for (i = 0; i < n; ++i) +; 2633 : } +; 2634 : for (i = 0; i < n; ++i) 0044b c7 85 44 01 00 00 00 00 00 00 mov DWORD PTR i$11[rbp], 0 @@ -29873,7 +29893,7 @@ $LN16@stbi__proc: 00 cmp DWORD PTR i$11[rbp], eax 00471 7d 22 jge SHORT $LN15@stbi__proc -; 2622 : v[i] = stbi__get8(z->s); +; 2635 : v[i] = stbi__get8(z->s); 00473 48 8b 85 00 04 00 00 mov rax, QWORD PTR z$[rbp] @@ -29887,13 +29907,13 @@ $LN16@stbi__proc: 00493 eb c2 jmp SHORT $LN14@stbi__proc $LN15@stbi__proc: -; 2623 : if (tc != 0) +; 2636 : if (tc != 0) 00495 83 bd a4 01 00 00 00 cmp DWORD PTR tc$14[rbp], 0 0049c 74 42 je SHORT $LN37@stbi__proc -; 2624 : stbi__build_fast_ac(z->fast_ac[th], z->huff_ac + th); +; 2637 : stbi__build_fast_ac(z->fast_ac[th], z->huff_ac + th); 0049e 48 63 85 c4 01 00 00 movsxd rax, DWORD PTR th$15[rbp] @@ -29915,7 +29935,7 @@ $LN15@stbi__proc: 004db e8 00 00 00 00 call stbi__build_fast_ac $LN37@stbi__proc: -; 2625 : L -= n; +; 2638 : L -= n; 004e0 8b 85 64 01 00 00 mov eax, DWORD PTR n$12[rbp] @@ -29924,12 +29944,12 @@ $LN37@stbi__proc: 004eb 8b c1 mov eax, ecx 004ed 89 45 04 mov DWORD PTR L$[rbp], eax -; 2626 : } +; 2639 : } 004f0 e9 a2 fd ff ff jmp $LN9@stbi__proc $LN10@stbi__proc: -; 2627 : return L == 0; +; 2640 : return L == 0; 004f5 83 7d 04 00 cmp DWORD PTR L$[rbp], 0 004f9 75 0c jne SHORT $LN60@stbi__proc @@ -29945,10 +29965,10 @@ $LN61@stbi__proc: 00517 e9 23 02 00 00 jmp $LN1@stbi__proc $LN2@stbi__proc: -; 2628 : } -; 2629 : -; 2630 : // check for comment block or APP blocks -; 2631 : if ((m >= 0xE0 && m <= 0xEF) || m == 0xFE) { +; 2641 : } +; 2642 : +; 2643 : // check for comment block or APP blocks +; 2644 : if ((m >= 0xE0 && m <= 0xEF) || m == 0xFE) { 0051c 81 bd 08 04 00 00 e0 00 00 00 cmp DWORD PTR m$[rbp], 224 ; 000000e0H @@ -29963,7 +29983,7 @@ $LN40@stbi__proc: 00 jne $LN38@stbi__proc $LN39@stbi__proc: -; 2632 : L = stbi__get16be(z->s); +; 2645 : L = stbi__get16be(z->s); 00544 48 8b 85 00 04 00 00 mov rax, QWORD PTR z$[rbp] @@ -29971,18 +29991,18 @@ $LN39@stbi__proc: 0054e e8 00 00 00 00 call stbi__get16be 00553 89 45 04 mov DWORD PTR L$[rbp], eax -; 2633 : if (L < 2) { +; 2646 : if (L < 2) { 00556 83 7d 04 02 cmp DWORD PTR L$[rbp], 2 0055a 7d 30 jge SHORT $LN41@stbi__proc -; 2634 : if (m == 0xFE) +; 2647 : if (m == 0xFE) 0055c 81 bd 08 04 00 00 fe 00 00 00 cmp DWORD PTR m$[rbp], 254 ; 000000feH 00566 75 13 jne SHORT $LN42@stbi__proc -; 2635 : return stbi__err("bad COM len", "Corrupt JPEG"); +; 2648 : return stbi__err("bad COM len", "Corrupt JPEG"); 00568 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0M@CICAFFCH@bad?5COM?5len@ @@ -29991,8 +30011,8 @@ $LN39@stbi__proc: 00579 eb 11 jmp SHORT $LN43@stbi__proc $LN42@stbi__proc: -; 2636 : else -; 2637 : return stbi__err("bad APP len", "Corrupt JPEG"); +; 2649 : else +; 2650 : return stbi__err("bad APP len", "Corrupt JPEG"); 0057b 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0M@EENLKPDI@bad?5APP?5len@ @@ -30001,15 +30021,15 @@ $LN42@stbi__proc: $LN43@stbi__proc: $LN41@stbi__proc: -; 2638 : } -; 2639 : L -= 2; +; 2651 : } +; 2652 : L -= 2; 0058c 8b 45 04 mov eax, DWORD PTR L$[rbp] 0058f 83 e8 02 sub eax, 2 00592 89 45 04 mov DWORD PTR L$[rbp], eax -; 2640 : -; 2641 : if (m == 0xE0 && L >= 5) { // JFIF APP0 segment +; 2653 : +; 2654 : if (m == 0xE0 && L >= 5) { // JFIF APP0 segment 00595 81 bd 08 04 00 00 e0 00 00 00 cmp DWORD PTR m$[rbp], 224 ; 000000e0H @@ -30019,14 +30039,14 @@ $LN41@stbi__proc: 005a9 0f 8c 89 00 00 00 jl $LN44@stbi__proc -; 2642 : static const unsigned char tag[5] = { 'J','F','I','F','\0' }; -; 2643 : int ok = 1; +; 2655 : static const unsigned char tag[5] = { 'J','F','I','F','\0' }; +; 2656 : int ok = 1; 005af c7 85 e4 01 00 00 01 00 00 00 mov DWORD PTR ok$16[rbp], 1 -; 2644 : int i; -; 2645 : for (i = 0; i < 5; ++i) +; 2657 : int i; +; 2658 : for (i = 0; i < 5; ++i) 005b9 c7 85 04 02 00 00 00 00 00 00 mov DWORD PTR i$17[rbp], 0 @@ -30042,7 +30062,7 @@ $LN19@stbi__proc: 00 05 cmp DWORD PTR i$17[rbp], 5 005da 7d 34 jge SHORT $LN18@stbi__proc -; 2646 : if (stbi__get8(z->s) != tag[i]) +; 2659 : if (stbi__get8(z->s) != tag[i]) 005dc 48 8b 85 00 04 00 00 mov rax, QWORD PTR z$[rbp] @@ -30057,7 +30077,7 @@ $LN19@stbi__proc: 00600 3b c1 cmp eax, ecx 00602 74 0a je SHORT $LN46@stbi__proc -; 2647 : ok = 0; +; 2660 : ok = 0; 00604 c7 85 e4 01 00 00 00 00 00 00 mov DWORD PTR ok$16[rbp], 0 @@ -30065,19 +30085,19 @@ $LN46@stbi__proc: 0060e eb b5 jmp SHORT $LN17@stbi__proc $LN18@stbi__proc: -; 2648 : L -= 5; +; 2661 : L -= 5; 00610 8b 45 04 mov eax, DWORD PTR L$[rbp] 00613 83 e8 05 sub eax, 5 00616 89 45 04 mov DWORD PTR L$[rbp], eax -; 2649 : if (ok) +; 2662 : if (ok) 00619 83 bd e4 01 00 00 00 cmp DWORD PTR ok$16[rbp], 0 00620 74 11 je SHORT $LN47@stbi__proc -; 2650 : z->jfif = 1; +; 2663 : z->jfif = 1; 00622 48 8b 85 00 04 00 00 mov rax, QWORD PTR z$[rbp] @@ -30085,12 +30105,12 @@ $LN18@stbi__proc: 00 01 00 00 00 mov DWORD PTR [rax+18504], 1 $LN47@stbi__proc: -; 2651 : } +; 2664 : } 00633 e9 e2 00 00 00 jmp $LN45@stbi__proc $LN44@stbi__proc: -; 2652 : else if (m == 0xEE && L >= 12) { // Adobe APP14 segment +; 2665 : else if (m == 0xEE && L >= 12) { // Adobe APP14 segment 00638 81 bd 08 04 00 00 ee 00 00 00 cmp DWORD PTR m$[rbp], 238 ; 000000eeH @@ -30100,14 +30120,14 @@ $LN44@stbi__proc: 0064c 0f 8c c8 00 00 00 jl $LN48@stbi__proc -; 2653 : static const unsigned char tag[6] = { 'A','d','o','b','e','\0' }; -; 2654 : int ok = 1; +; 2666 : static const unsigned char tag[6] = { 'A','d','o','b','e','\0' }; +; 2667 : int ok = 1; 00652 c7 85 24 02 00 00 01 00 00 00 mov DWORD PTR ok$18[rbp], 1 -; 2655 : int i; -; 2656 : for (i = 0; i < 6; ++i) +; 2668 : int i; +; 2669 : for (i = 0; i < 6; ++i) 0065c c7 85 44 02 00 00 00 00 00 00 mov DWORD PTR i$19[rbp], 0 @@ -30123,7 +30143,7 @@ $LN22@stbi__proc: 00 06 cmp DWORD PTR i$19[rbp], 6 0067d 7d 34 jge SHORT $LN21@stbi__proc -; 2657 : if (stbi__get8(z->s) != tag[i]) +; 2670 : if (stbi__get8(z->s) != tag[i]) 0067f 48 8b 85 00 04 00 00 mov rax, QWORD PTR z$[rbp] @@ -30138,7 +30158,7 @@ $LN22@stbi__proc: 006a3 3b c1 cmp eax, ecx 006a5 74 0a je SHORT $LN49@stbi__proc -; 2658 : ok = 0; +; 2671 : ok = 0; 006a7 c7 85 24 02 00 00 00 00 00 00 mov DWORD PTR ok$18[rbp], 0 @@ -30146,40 +30166,40 @@ $LN49@stbi__proc: 006b1 eb b5 jmp SHORT $LN20@stbi__proc $LN21@stbi__proc: -; 2659 : L -= 6; +; 2672 : L -= 6; 006b3 8b 45 04 mov eax, DWORD PTR L$[rbp] 006b6 83 e8 06 sub eax, 6 006b9 89 45 04 mov DWORD PTR L$[rbp], eax -; 2660 : if (ok) { +; 2673 : if (ok) { 006bc 83 bd 24 02 00 00 00 cmp DWORD PTR ok$18[rbp], 0 006c3 74 55 je SHORT $LN50@stbi__proc -; 2661 : stbi__get8(z->s); // version +; 2674 : stbi__get8(z->s); // version 006c5 48 8b 85 00 04 00 00 mov rax, QWORD PTR z$[rbp] 006cc 48 8b 08 mov rcx, QWORD PTR [rax] 006cf e8 00 00 00 00 call stbi__get8 -; 2662 : stbi__get16be(z->s); // flags0 +; 2675 : stbi__get16be(z->s); // flags0 006d4 48 8b 85 00 04 00 00 mov rax, QWORD PTR z$[rbp] 006db 48 8b 08 mov rcx, QWORD PTR [rax] 006de e8 00 00 00 00 call stbi__get16be -; 2663 : stbi__get16be(z->s); // flags1 +; 2676 : stbi__get16be(z->s); // flags1 006e3 48 8b 85 00 04 00 00 mov rax, QWORD PTR z$[rbp] 006ea 48 8b 08 mov rcx, QWORD PTR [rax] 006ed e8 00 00 00 00 call stbi__get16be -; 2664 : z->app14_color_transform = stbi__get8(z->s); // color transform +; 2677 : z->app14_color_transform = stbi__get8(z->s); // color transform 006f2 48 8b 85 00 04 00 00 mov rax, QWORD PTR z$[rbp] @@ -30191,7 +30211,7 @@ $LN21@stbi__proc: 0070b 89 81 4c 48 00 00 mov DWORD PTR [rcx+18508], eax -; 2665 : L -= 6; +; 2678 : L -= 6; 00711 8b 45 04 mov eax, DWORD PTR L$[rbp] 00714 83 e8 06 sub eax, 6 @@ -30200,10 +30220,10 @@ $LN50@stbi__proc: $LN48@stbi__proc: $LN45@stbi__proc: -; 2666 : } -; 2667 : } -; 2668 : -; 2669 : stbi__skip(z->s, L); +; 2679 : } +; 2680 : } +; 2681 : +; 2682 : stbi__skip(z->s, L); 0071a 8b 55 04 mov edx, DWORD PTR L$[rbp] 0071d 48 8b 85 00 04 @@ -30211,22 +30231,22 @@ $LN45@stbi__proc: 00724 48 8b 08 mov rcx, QWORD PTR [rax] 00727 e8 00 00 00 00 call stbi__skip -; 2670 : return 1; +; 2683 : return 1; 0072c b8 01 00 00 00 mov eax, 1 00731 eb 0c jmp SHORT $LN1@stbi__proc $LN38@stbi__proc: -; 2671 : } -; 2672 : -; 2673 : return stbi__err("unknown marker", "Corrupt JPEG"); +; 2684 : } +; 2685 : +; 2686 : return stbi__err("unknown marker", "Corrupt JPEG"); 00733 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0P@NNGPHMMK@unknown?5marker@ 0073a e8 00 00 00 00 call stbi__err $LN1@stbi__proc: -; 2674 : } +; 2687 : } 0073f 48 8b f8 mov rdi, rax 00742 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] @@ -30258,7 +30278,7 @@ data$6 = 168 z$ = 416 stbi__jpeg_finish PROC ; COMDAT -; 2553 : { +; 2566 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -30270,7 +30290,7 @@ stbi__jpeg_finish PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 2554 : if (z->progressive) { +; 2567 : if (z->progressive) { 0001f 48 8b 85 a0 01 00 00 mov rax, QWORD PTR z$[rbp] @@ -30279,9 +30299,9 @@ stbi__jpeg_finish PROC ; COMDAT 0002d 0f 84 af 01 00 00 je $LN11@stbi__jpeg -; 2555 : // dequantize and idct the data -; 2556 : int i, j, n; -; 2557 : for (n = 0; n < z->s->img_n; ++n) { +; 2568 : // dequantize and idct the data +; 2569 : int i, j, n; +; 2570 : for (n = 0; n < z->s->img_n; ++n) { 00033 c7 45 44 00 00 00 00 mov DWORD PTR n$3[rbp], 0 @@ -30299,7 +30319,7 @@ $LN4@stbi__jpeg: 00054 0f 8d 88 01 00 00 jge $LN3@stbi__jpeg -; 2558 : int w = (z->img_comp[n].x + 7) >> 3; +; 2571 : int w = (z->img_comp[n].x + 7) >> 3; 0005a 48 63 45 44 movsxd rax, DWORD PTR n$3[rbp] 0005e 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -30311,7 +30331,7 @@ $LN4@stbi__jpeg: 00073 c1 f8 03 sar eax, 3 00076 89 45 64 mov DWORD PTR w$4[rbp], eax -; 2559 : int h = (z->img_comp[n].y + 7) >> 3; +; 2572 : int h = (z->img_comp[n].y + 7) >> 3; 00079 48 63 45 44 movsxd rax, DWORD PTR n$3[rbp] 0007d 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -30324,7 +30344,7 @@ $LN4@stbi__jpeg: 00095 89 85 84 00 00 00 mov DWORD PTR h$5[rbp], eax -; 2560 : for (j = 0; j < h; ++j) { +; 2573 : for (j = 0; j < h; ++j) { 0009b c7 45 24 00 00 00 00 mov DWORD PTR j$2[rbp], 0 @@ -30340,7 +30360,7 @@ $LN7@stbi__jpeg: 000b5 0f 8d 22 01 00 00 jge $LN6@stbi__jpeg -; 2561 : for (i = 0; i < w; ++i) { +; 2574 : for (i = 0; i < w; ++i) { 000bb c7 45 04 00 00 00 00 mov DWORD PTR i$1[rbp], 0 @@ -30355,7 +30375,7 @@ $LN10@stbi__jpeg: 000d2 0f 8d 00 01 00 00 jge $LN9@stbi__jpeg -; 2562 : short* data = z->img_comp[n].coeff + 64 * (i + j * z->img_comp[n].coeff_w); +; 2575 : short* data = z->img_comp[n].coeff + 64 * (i + j * z->img_comp[n].coeff_w); 000d8 48 63 45 44 movsxd rax, DWORD PTR n$3[rbp] 000dc 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -30380,7 +30400,7 @@ $LN10@stbi__jpeg: 0011f 48 89 85 a8 00 00 00 mov QWORD PTR data$6[rbp], rax -; 2563 : stbi__jpeg_dequantize(data, z->dequant[z->img_comp[n].tq]); +; 2576 : stbi__jpeg_dequantize(data, z->dequant[z->img_comp[n].tq]); 00126 48 63 45 44 movsxd rax, DWORD PTR n$3[rbp] 0012a 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -30399,7 +30419,7 @@ $LN10@stbi__jpeg: 00 00 mov rcx, QWORD PTR data$6[rbp] 0015d e8 00 00 00 00 call stbi__jpeg_dequantize -; 2564 : z->idct_block_kernel(z->img_comp[n].data + z->img_comp[n].w2 * j * 8 + i * 8, z->img_comp[n].w2, data); +; 2577 : z->idct_block_kernel(z->img_comp[n].data + z->img_comp[n].w2 * j * 8 + i * 8, z->img_comp[n].w2, data); 00162 48 63 45 44 movsxd rax, DWORD PTR n$3[rbp] 00166 48 6b c0 60 imul rax, rax, 96 ; 00000060H @@ -30434,24 +30454,24 @@ $LN10@stbi__jpeg: 001cd ff 90 70 48 00 00 call QWORD PTR [rax+18544] -; 2565 : } +; 2578 : } 001d3 e9 ec fe ff ff jmp $LN8@stbi__jpeg $LN9@stbi__jpeg: -; 2566 : } +; 2579 : } 001d8 e9 c7 fe ff ff jmp $LN5@stbi__jpeg $LN6@stbi__jpeg: -; 2567 : } +; 2580 : } 001dd e9 5a fe ff ff jmp $LN2@stbi__jpeg $LN3@stbi__jpeg: $LN11@stbi__jpeg: -; 2568 : } -; 2569 : } +; 2581 : } +; 2582 : } 001e2 48 8d a5 88 01 00 00 lea rsp, QWORD PTR [rbp+392] @@ -30469,7 +30489,7 @@ data$ = 256 dequant$ = 264 stbi__jpeg_dequantize PROC ; COMDAT -; 2546 : { +; 2559 : { 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx @@ -30482,8 +30502,8 @@ stbi__jpeg_dequantize PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 2547 : int i; -; 2548 : for (i = 0; i < 64; ++i) +; 2560 : int i; +; 2561 : for (i = 0; i < 64; ++i) 00024 c7 45 04 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -30496,7 +30516,7 @@ $LN4@stbi__jpeg: 00035 83 7d 04 40 cmp DWORD PTR i$[rbp], 64 ; 00000040H 00039 7d 32 jge SHORT $LN3@stbi__jpeg -; 2549 : data[i] *= dequant[i]; +; 2562 : data[i] *= dequant[i]; 0003b 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 0003f 48 63 4d 04 movsxd rcx, DWORD PTR i$[rbp] @@ -30514,7 +30534,7 @@ $LN4@stbi__jpeg: 0006b eb c0 jmp SHORT $LN2@stbi__jpeg $LN3@stbi__jpeg: -; 2550 : } +; 2563 : } 0006d 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -30568,7 +30588,7 @@ __$ArrayPad$ = 1880 z$ = 1920 stbi__parse_entropy_coded_data PROC ; COMDAT -; 2418 : { +; 2431 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -30591,13 +30611,13 @@ stbi__parse_entropy_coded_data PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00044 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 2419 : stbi__jpeg_reset(z); +; 2432 : stbi__jpeg_reset(z); 00049 48 8b 8d 80 07 00 00 mov rcx, QWORD PTR z$[rbp] 00050 e8 00 00 00 00 call stbi__jpeg_reset -; 2420 : if (!z->progressive) { +; 2433 : if (!z->progressive) { 00055 48 8b 85 80 07 00 00 mov rax, QWORD PTR z$[rbp] @@ -30606,7 +30626,7 @@ stbi__parse_entropy_coded_data PROC ; COMDAT 00063 0f 85 6c 06 00 00 jne $LN44@stbi__pars -; 2421 : if (z->scan_n == 1) { +; 2434 : if (z->scan_n == 1) { 00069 48 8b 85 80 07 00 00 mov rax, QWORD PTR z$[rbp] @@ -30615,9 +30635,9 @@ stbi__parse_entropy_coded_data PROC ; COMDAT 00077 0f 85 ac 02 00 00 jne $LN46@stbi__pars -; 2422 : int i, j; -; 2423 : STBI_SIMD_ALIGN(short, data[64]); -; 2424 : int n = z->order[0]; +; 2435 : int i, j; +; 2436 : STBI_SIMD_ALIGN(short, data[64]); +; 2437 : int n = z->order[0]; 0007d b8 04 00 00 00 mov eax, 4 00082 48 6b c0 00 imul rax, rax, 0 @@ -30628,11 +30648,11 @@ stbi__parse_entropy_coded_data PROC ; COMDAT 00094 89 85 e4 00 00 00 mov DWORD PTR n$8[rbp], eax -; 2425 : // non-interleaved data, we just need to process one block at a time, -; 2426 : // in trivial scanline order -; 2427 : // number of blocks to do just depends on how many actual "pixels" this -; 2428 : // component has, independent of interleaved MCU blocking and such -; 2429 : int w = (z->img_comp[n].x + 7) >> 3; +; 2438 : // non-interleaved data, we just need to process one block at a time, +; 2439 : // in trivial scanline order +; 2440 : // number of blocks to do just depends on how many actual "pixels" this +; 2441 : // component has, independent of interleaved MCU blocking and such +; 2442 : int w = (z->img_comp[n].x + 7) >> 3; 0009a 48 63 85 e4 00 00 00 movsxd rax, DWORD PTR n$8[rbp] @@ -30646,7 +30666,7 @@ stbi__parse_entropy_coded_data PROC ; COMDAT 000b9 89 85 04 01 00 00 mov DWORD PTR w$9[rbp], eax -; 2430 : int h = (z->img_comp[n].y + 7) >> 3; +; 2443 : int h = (z->img_comp[n].y + 7) >> 3; 000bf 48 63 85 e4 00 00 00 movsxd rax, DWORD PTR n$8[rbp] @@ -30660,7 +30680,7 @@ stbi__parse_entropy_coded_data PROC ; COMDAT 000de 89 85 24 01 00 00 mov DWORD PTR h$10[rbp], eax -; 2431 : for (j = 0; j < h; ++j) { +; 2444 : for (j = 0; j < h; ++j) { 000e4 c7 45 24 00 00 00 00 mov DWORD PTR j$6[rbp], 0 @@ -30676,7 +30696,7 @@ $LN4@stbi__pars: 000fe 0f 8d 16 02 00 00 jge $LN3@stbi__pars -; 2432 : for (i = 0; i < w; ++i) { +; 2445 : for (i = 0; i < w; ++i) { 00104 c7 45 04 00 00 00 00 mov DWORD PTR i$5[rbp], 0 @@ -30692,7 +30712,7 @@ $LN7@stbi__pars: 0011e 0f 8d f1 01 00 00 jge $LN6@stbi__pars -; 2433 : int ha = z->img_comp[n].ha; +; 2446 : int ha = z->img_comp[n].ha; 00124 48 63 85 e4 00 00 00 movsxd rax, DWORD PTR n$8[rbp] @@ -30704,7 +30724,7 @@ $LN7@stbi__pars: 0013d 89 85 44 01 00 00 mov DWORD PTR ha$11[rbp], eax -; 2434 : if (!stbi__jpeg_decode_block(z, data, z->huff_dc + z->img_comp[n].hd, z->huff_ac + ha, z->fast_ac[ha], n, z->dequant[z->img_comp[n].tq])) return 0; +; 2447 : if (!stbi__jpeg_decode_block(z, data, z->huff_dc + z->img_comp[n].hd, z->huff_ac + ha, z->fast_ac[ha], n, z->dequant[z->img_comp[n].tq])) return 0; 00143 48 63 85 e4 00 00 00 movsxd rax, DWORD PTR n$8[rbp] @@ -30763,7 +30783,7 @@ $LN7@stbi__pars: 00207 e9 65 0a 00 00 jmp $LN1@stbi__pars $LN48@stbi__pars: -; 2435 : z->idct_block_kernel(z->img_comp[n].data + z->img_comp[n].w2 * j * 8 + i * 8, z->img_comp[n].w2, data); +; 2448 : z->idct_block_kernel(z->img_comp[n].data + z->img_comp[n].w2 * j * 8 + i * 8, z->img_comp[n].w2, data); 0020c 48 63 85 e4 00 00 00 movsxd rax, DWORD PTR n$8[rbp] @@ -30800,8 +30820,8 @@ $LN48@stbi__pars: 0027d ff 90 70 48 00 00 call QWORD PTR [rax+18544] -; 2436 : // every data block is an MCU, so countdown the restart interval -; 2437 : if (--z->todo <= 0) { +; 2449 : // every data block is an MCU, so countdown the restart interval +; 2450 : if (--z->todo <= 0) { 00283 48 8b 85 80 07 00 00 mov rax, QWORD PTR z$[rbp] @@ -30820,7 +30840,7 @@ $LN48@stbi__pars: 00 00 cmp DWORD PTR tv190[rbp], 0 002b2 7f 5c jg SHORT $LN49@stbi__pars -; 2438 : if (z->code_bits < 24) stbi__grow_buffer_unsafe(z); +; 2451 : if (z->code_bits < 24) stbi__grow_buffer_unsafe(z); 002b4 48 8b 85 80 07 00 00 mov rax, QWORD PTR z$[rbp] @@ -30832,9 +30852,9 @@ $LN48@stbi__pars: 002cb e8 00 00 00 00 call stbi__grow_buffer_unsafe $LN50@stbi__pars: -; 2439 : // if it's NOT a restart, then just bail, so we get corrupt data -; 2440 : // rather than no data -; 2441 : if (!STBI__RESTART(z->marker)) return 1; +; 2452 : // if it's NOT a restart, then just bail, so we get corrupt data +; 2453 : // rather than no data +; 2454 : if (!STBI__RESTART(z->marker)) return 1; 002d0 48 8b 85 80 07 00 00 mov rax, QWORD PTR z$[rbp] @@ -30853,38 +30873,38 @@ $LN52@stbi__pars: 002ff e9 6d 09 00 00 jmp $LN1@stbi__pars $LN51@stbi__pars: -; 2442 : stbi__jpeg_reset(z); +; 2455 : stbi__jpeg_reset(z); 00304 48 8b 8d 80 07 00 00 mov rcx, QWORD PTR z$[rbp] 0030b e8 00 00 00 00 call stbi__jpeg_reset $LN49@stbi__pars: -; 2443 : } -; 2444 : } +; 2456 : } +; 2457 : } 00310 e9 f8 fd ff ff jmp $LN5@stbi__pars $LN6@stbi__pars: -; 2445 : } +; 2458 : } 00315 e9 d3 fd ff ff jmp $LN2@stbi__pars $LN3@stbi__pars: -; 2446 : return 1; +; 2459 : return 1; 0031a b8 01 00 00 00 mov eax, 1 0031f e9 4d 09 00 00 jmp $LN1@stbi__pars -; 2447 : } +; 2460 : } 00324 e9 a7 03 00 00 jmp $LN47@stbi__pars $LN46@stbi__pars: -; 2448 : else { // interleaved -; 2449 : int i, j, k, x, y; -; 2450 : STBI_SIMD_ALIGN(short, data[64]); -; 2451 : for (j = 0; j < z->img_mcu_y; ++j) { +; 2461 : else { // interleaved +; 2462 : int i, j, k, x, y; +; 2463 : STBI_SIMD_ALIGN(short, data[64]); +; 2464 : for (j = 0; j < z->img_mcu_y; ++j) { 00329 c7 85 84 01 00 00 00 00 00 00 mov DWORD PTR j$13[rbp], 0 @@ -30905,7 +30925,7 @@ $LN10@stbi__pars: 00356 0f 8d 6a 03 00 00 jge $LN9@stbi__pars -; 2452 : for (i = 0; i < z->img_mcu_x; ++i) { +; 2465 : for (i = 0; i < z->img_mcu_x; ++i) { 0035c c7 85 64 01 00 00 00 00 00 00 mov DWORD PTR i$12[rbp], 0 @@ -30926,8 +30946,8 @@ $LN13@stbi__pars: 00389 0f 8d 32 03 00 00 jge $LN12@stbi__pars -; 2453 : // scan an interleaved mcu... process scan_n components in order -; 2454 : for (k = 0; k < z->scan_n; ++k) { +; 2466 : // scan an interleaved mcu... process scan_n components in order +; 2467 : for (k = 0; k < z->scan_n; ++k) { 0038f c7 85 a4 01 00 00 00 00 00 00 mov DWORD PTR k$14[rbp], 0 @@ -30948,7 +30968,7 @@ $LN16@stbi__pars: 003bc 0f 8d 6d 02 00 00 jge $LN15@stbi__pars -; 2455 : int n = z->order[k]; +; 2468 : int n = z->order[k]; 003c2 48 63 85 a4 01 00 00 movsxd rax, DWORD PTR k$14[rbp] @@ -30959,9 +30979,9 @@ $LN16@stbi__pars: 003d7 89 85 a4 02 00 00 mov DWORD PTR n$18[rbp], eax -; 2456 : // scan out an mcu's worth of this component; that's just determined -; 2457 : // by the basic H and V specified for the component -; 2458 : for (y = 0; y < z->img_comp[n].v; ++y) { +; 2469 : // scan out an mcu's worth of this component; that's just determined +; 2470 : // by the basic H and V specified for the component +; 2471 : for (y = 0; y < z->img_comp[n].v; ++y) { 003dd c7 85 e4 01 00 00 00 00 00 00 mov DWORD PTR y$16[rbp], 0 @@ -30985,7 +31005,7 @@ $LN19@stbi__pars: 00416 0f 8d 0e 02 00 00 jge $LN18@stbi__pars -; 2459 : for (x = 0; x < z->img_comp[n].h; ++x) { +; 2472 : for (x = 0; x < z->img_comp[n].h; ++x) { 0041c c7 85 c4 01 00 00 00 00 00 00 mov DWORD PTR x$15[rbp], 0 @@ -31009,7 +31029,7 @@ $LN22@stbi__pars: 00455 0f 8d ca 01 00 00 jge $LN21@stbi__pars -; 2460 : int x2 = (i * z->img_comp[n].h + x) * 8; +; 2473 : int x2 = (i * z->img_comp[n].h + x) * 8; 0045b 48 63 85 a4 02 00 00 movsxd rax, DWORD PTR n$18[rbp] @@ -31027,7 +31047,7 @@ $LN22@stbi__pars: 00486 89 85 c4 02 00 00 mov DWORD PTR x2$19[rbp], eax -; 2461 : int y2 = (j * z->img_comp[n].v + y) * 8; +; 2474 : int y2 = (j * z->img_comp[n].v + y) * 8; 0048c 48 63 85 a4 02 00 00 movsxd rax, DWORD PTR n$18[rbp] @@ -31045,7 +31065,7 @@ $LN22@stbi__pars: 004b7 89 85 e4 02 00 00 mov DWORD PTR y2$20[rbp], eax -; 2462 : int ha = z->img_comp[n].ha; +; 2475 : int ha = z->img_comp[n].ha; 004bd 48 63 85 a4 02 00 00 movsxd rax, DWORD PTR n$18[rbp] @@ -31057,7 +31077,7 @@ $LN22@stbi__pars: 004d6 89 85 04 03 00 00 mov DWORD PTR ha$21[rbp], eax -; 2463 : if (!stbi__jpeg_decode_block(z, data, z->huff_dc + z->img_comp[n].hd, z->huff_ac + ha, z->fast_ac[ha], n, z->dequant[z->img_comp[n].tq])) return 0; +; 2476 : if (!stbi__jpeg_decode_block(z, data, z->huff_dc + z->img_comp[n].hd, z->huff_ac + ha, z->fast_ac[ha], n, z->dequant[z->img_comp[n].tq])) return 0; 004dc 48 63 85 a4 02 00 00 movsxd rax, DWORD PTR n$18[rbp] @@ -31117,7 +31137,7 @@ $LN22@stbi__pars: 005a3 e9 c9 06 00 00 jmp $LN1@stbi__pars $LN53@stbi__pars: -; 2464 : z->idct_block_kernel(z->img_comp[n].data + z->img_comp[n].w2 * y2 + x2, z->img_comp[n].w2, data); +; 2477 : z->idct_block_kernel(z->img_comp[n].data + z->img_comp[n].w2 * y2 + x2, z->img_comp[n].w2, data); 005a8 48 63 85 a4 02 00 00 movsxd rax, DWORD PTR n$18[rbp] @@ -31154,24 +31174,24 @@ $LN53@stbi__pars: 0061a ff 90 70 48 00 00 call QWORD PTR [rax+18544] -; 2465 : } +; 2478 : } 00620 e9 03 fe ff ff jmp $LN20@stbi__pars $LN21@stbi__pars: -; 2466 : } +; 2479 : } 00625 e9 bf fd ff ff jmp $LN17@stbi__pars $LN18@stbi__pars: -; 2467 : } +; 2480 : } 0062a e9 6c fd ff ff jmp $LN14@stbi__pars $LN15@stbi__pars: -; 2468 : // after all interleaved components, that's an interleaved MCU, -; 2469 : // so now count down the restart interval -; 2470 : if (--z->todo <= 0) { +; 2481 : // after all interleaved components, that's an interleaved MCU, +; 2482 : // so now count down the restart interval +; 2483 : if (--z->todo <= 0) { 0062f 48 8b 85 80 07 00 00 mov rax, QWORD PTR z$[rbp] @@ -31190,7 +31210,7 @@ $LN15@stbi__pars: 00 00 cmp DWORD PTR tv311[rbp], 0 0065e 7f 5c jg SHORT $LN54@stbi__pars -; 2471 : if (z->code_bits < 24) stbi__grow_buffer_unsafe(z); +; 2484 : if (z->code_bits < 24) stbi__grow_buffer_unsafe(z); 00660 48 8b 85 80 07 00 00 mov rax, QWORD PTR z$[rbp] @@ -31202,7 +31222,7 @@ $LN15@stbi__pars: 00677 e8 00 00 00 00 call stbi__grow_buffer_unsafe $LN55@stbi__pars: -; 2472 : if (!STBI__RESTART(z->marker)) return 1; +; 2485 : if (!STBI__RESTART(z->marker)) return 1; 0067c 48 8b 85 80 07 00 00 mov rax, QWORD PTR z$[rbp] @@ -31221,38 +31241,38 @@ $LN57@stbi__pars: 006ab e9 c1 05 00 00 jmp $LN1@stbi__pars $LN56@stbi__pars: -; 2473 : stbi__jpeg_reset(z); +; 2486 : stbi__jpeg_reset(z); 006b0 48 8b 8d 80 07 00 00 mov rcx, QWORD PTR z$[rbp] 006b7 e8 00 00 00 00 call stbi__jpeg_reset $LN54@stbi__pars: -; 2474 : } -; 2475 : } +; 2487 : } +; 2488 : } 006bc e9 a7 fc ff ff jmp $LN11@stbi__pars $LN12@stbi__pars: -; 2476 : } +; 2489 : } 006c1 e9 6f fc ff ff jmp $LN8@stbi__pars $LN9@stbi__pars: -; 2477 : return 1; +; 2490 : return 1; 006c6 b8 01 00 00 00 mov eax, 1 006cb e9 a1 05 00 00 jmp $LN1@stbi__pars $LN47@stbi__pars: -; 2478 : } -; 2479 : } +; 2491 : } +; 2492 : } 006d0 e9 9c 05 00 00 jmp $LN45@stbi__pars $LN44@stbi__pars: -; 2480 : else { -; 2481 : if (z->scan_n == 1) { +; 2493 : else { +; 2494 : if (z->scan_n == 1) { 006d5 48 8b 85 80 07 00 00 mov rax, QWORD PTR z$[rbp] @@ -31261,8 +31281,8 @@ $LN44@stbi__pars: 006e3 0f 85 a3 02 00 00 jne $LN58@stbi__pars -; 2482 : int i, j; -; 2483 : int n = z->order[0]; +; 2495 : int i, j; +; 2496 : int n = z->order[0]; 006e9 b8 04 00 00 00 mov eax, 4 006ee 48 6b c0 00 imul rax, rax, 0 @@ -31273,11 +31293,11 @@ $LN44@stbi__pars: 00700 89 85 64 03 00 00 mov DWORD PTR n$24[rbp], eax -; 2484 : // non-interleaved data, we just need to process one block at a time, -; 2485 : // in trivial scanline order -; 2486 : // number of blocks to do just depends on how many actual "pixels" this -; 2487 : // component has, independent of interleaved MCU blocking and such -; 2488 : int w = (z->img_comp[n].x + 7) >> 3; +; 2497 : // non-interleaved data, we just need to process one block at a time, +; 2498 : // in trivial scanline order +; 2499 : // number of blocks to do just depends on how many actual "pixels" this +; 2500 : // component has, independent of interleaved MCU blocking and such +; 2501 : int w = (z->img_comp[n].x + 7) >> 3; 00706 48 63 85 64 03 00 00 movsxd rax, DWORD PTR n$24[rbp] @@ -31291,7 +31311,7 @@ $LN44@stbi__pars: 00725 89 85 84 03 00 00 mov DWORD PTR w$25[rbp], eax -; 2489 : int h = (z->img_comp[n].y + 7) >> 3; +; 2502 : int h = (z->img_comp[n].y + 7) >> 3; 0072b 48 63 85 64 03 00 00 movsxd rax, DWORD PTR n$24[rbp] @@ -31305,7 +31325,7 @@ $LN44@stbi__pars: 0074a 89 85 a4 03 00 00 mov DWORD PTR h$26[rbp], eax -; 2490 : for (j = 0; j < h; ++j) { +; 2503 : for (j = 0; j < h; ++j) { 00750 c7 85 44 03 00 00 00 00 00 00 mov DWORD PTR j$23[rbp], 0 @@ -31324,7 +31344,7 @@ $LN25@stbi__pars: 00776 0f 8d 01 02 00 00 jge $LN24@stbi__pars -; 2491 : for (i = 0; i < w; ++i) { +; 2504 : for (i = 0; i < w; ++i) { 0077c c7 85 24 03 00 00 00 00 00 00 mov DWORD PTR i$22[rbp], 0 @@ -31343,7 +31363,7 @@ $LN28@stbi__pars: 007a2 0f 8d d0 01 00 00 jge $LN27@stbi__pars -; 2492 : short* data = z->img_comp[n].coeff + 64 * (i + j * z->img_comp[n].coeff_w); +; 2505 : short* data = z->img_comp[n].coeff + 64 * (i + j * z->img_comp[n].coeff_w); 007a8 48 63 85 64 03 00 00 movsxd rax, DWORD PTR n$24[rbp] @@ -31372,7 +31392,7 @@ $LN28@stbi__pars: 007fb 48 89 85 c8 03 00 00 mov QWORD PTR data$27[rbp], rax -; 2493 : if (z->spec_start == 0) { +; 2506 : if (z->spec_start == 0) { 00802 48 8b 85 80 07 00 00 mov rax, QWORD PTR z$[rbp] @@ -31380,7 +31400,7 @@ $LN28@stbi__pars: 00 00 cmp DWORD PTR [rax+18484], 0 00810 75 57 jne SHORT $LN60@stbi__pars -; 2494 : if (!stbi__jpeg_decode_block_prog_dc(z, data, &z->huff_dc[z->img_comp[n].hd], n)) +; 2507 : if (!stbi__jpeg_decode_block_prog_dc(z, data, &z->huff_dc[z->img_comp[n].hd], n)) 00812 48 63 85 64 03 00 00 movsxd rax, DWORD PTR n$24[rbp] @@ -31405,19 +31425,19 @@ $LN28@stbi__pars: 0085c 85 c0 test eax, eax 0085e 75 07 jne SHORT $LN62@stbi__pars -; 2495 : return 0; +; 2508 : return 0; 00860 33 c0 xor eax, eax 00862 e9 0a 04 00 00 jmp $LN1@stbi__pars $LN62@stbi__pars: -; 2496 : } +; 2509 : } 00867 eb 7d jmp SHORT $LN61@stbi__pars $LN60@stbi__pars: -; 2497 : else { -; 2498 : int ha = z->img_comp[n].ha; +; 2510 : else { +; 2511 : int ha = z->img_comp[n].ha; 00869 48 63 85 64 03 00 00 movsxd rax, DWORD PTR n$24[rbp] @@ -31429,7 +31449,7 @@ $LN60@stbi__pars: 00882 89 85 e4 03 00 00 mov DWORD PTR ha$28[rbp], eax -; 2499 : if (!stbi__jpeg_decode_block_prog_ac(z, data, &z->huff_ac[ha], z->fast_ac[ha])) +; 2512 : if (!stbi__jpeg_decode_block_prog_ac(z, data, &z->huff_ac[ha], z->fast_ac[ha])) 00888 48 63 85 e4 03 00 00 movsxd rax, DWORD PTR ha$28[rbp] @@ -31457,16 +31477,16 @@ $LN60@stbi__pars: 008db 85 c0 test eax, eax 008dd 75 07 jne SHORT $LN63@stbi__pars -; 2500 : return 0; +; 2513 : return 0; 008df 33 c0 xor eax, eax 008e1 e9 8b 03 00 00 jmp $LN1@stbi__pars $LN63@stbi__pars: $LN61@stbi__pars: -; 2501 : } -; 2502 : // every data block is an MCU, so countdown the restart interval -; 2503 : if (--z->todo <= 0) { +; 2514 : } +; 2515 : // every data block is an MCU, so countdown the restart interval +; 2516 : if (--z->todo <= 0) { 008e6 48 8b 85 80 07 00 00 mov rax, QWORD PTR z$[rbp] @@ -31485,7 +31505,7 @@ $LN61@stbi__pars: 00 00 cmp DWORD PTR tv400[rbp], 0 00915 7f 5c jg SHORT $LN64@stbi__pars -; 2504 : if (z->code_bits < 24) stbi__grow_buffer_unsafe(z); +; 2517 : if (z->code_bits < 24) stbi__grow_buffer_unsafe(z); 00917 48 8b 85 80 07 00 00 mov rax, QWORD PTR z$[rbp] @@ -31497,7 +31517,7 @@ $LN61@stbi__pars: 0092e e8 00 00 00 00 call stbi__grow_buffer_unsafe $LN65@stbi__pars: -; 2505 : if (!STBI__RESTART(z->marker)) return 1; +; 2518 : if (!STBI__RESTART(z->marker)) return 1; 00933 48 8b 85 80 07 00 00 mov rax, QWORD PTR z$[rbp] @@ -31516,37 +31536,37 @@ $LN67@stbi__pars: 00962 e9 0a 03 00 00 jmp $LN1@stbi__pars $LN66@stbi__pars: -; 2506 : stbi__jpeg_reset(z); +; 2519 : stbi__jpeg_reset(z); 00967 48 8b 8d 80 07 00 00 mov rcx, QWORD PTR z$[rbp] 0096e e8 00 00 00 00 call stbi__jpeg_reset $LN64@stbi__pars: -; 2507 : } -; 2508 : } +; 2520 : } +; 2521 : } 00973 e9 10 fe ff ff jmp $LN26@stbi__pars $LN27@stbi__pars: -; 2509 : } +; 2522 : } 00978 e9 df fd ff ff jmp $LN23@stbi__pars $LN24@stbi__pars: -; 2510 : return 1; +; 2523 : return 1; 0097d b8 01 00 00 00 mov eax, 1 00982 e9 ea 02 00 00 jmp $LN1@stbi__pars -; 2511 : } +; 2524 : } 00987 e9 e5 02 00 00 jmp $LN59@stbi__pars $LN58@stbi__pars: -; 2512 : else { // interleaved -; 2513 : int i, j, k, x, y; -; 2514 : for (j = 0; j < z->img_mcu_y; ++j) { +; 2525 : else { // interleaved +; 2526 : int i, j, k, x, y; +; 2527 : for (j = 0; j < z->img_mcu_y; ++j) { 0098c c7 85 24 04 00 00 00 00 00 00 mov DWORD PTR j$30[rbp], 0 @@ -31567,7 +31587,7 @@ $LN31@stbi__pars: 009b9 0f 8d ad 02 00 00 jge $LN30@stbi__pars -; 2515 : for (i = 0; i < z->img_mcu_x; ++i) { +; 2528 : for (i = 0; i < z->img_mcu_x; ++i) { 009bf c7 85 04 04 00 00 00 00 00 00 mov DWORD PTR i$29[rbp], 0 @@ -31588,8 +31608,8 @@ $LN34@stbi__pars: 009ec 0f 8d 75 02 00 00 jge $LN33@stbi__pars -; 2516 : // scan an interleaved mcu... process scan_n components in order -; 2517 : for (k = 0; k < z->scan_n; ++k) { +; 2529 : // scan an interleaved mcu... process scan_n components in order +; 2530 : for (k = 0; k < z->scan_n; ++k) { 009f2 c7 85 44 04 00 00 00 00 00 00 mov DWORD PTR k$31[rbp], 0 @@ -31610,7 +31630,7 @@ $LN37@stbi__pars: 00a1f 0f 8d b3 01 00 00 jge $LN36@stbi__pars -; 2518 : int n = z->order[k]; +; 2531 : int n = z->order[k]; 00a25 48 63 85 44 04 00 00 movsxd rax, DWORD PTR k$31[rbp] @@ -31621,9 +31641,9 @@ $LN37@stbi__pars: 00a3a 89 85 a4 04 00 00 mov DWORD PTR n$34[rbp], eax -; 2519 : // scan out an mcu's worth of this component; that's just determined -; 2520 : // by the basic H and V specified for the component -; 2521 : for (y = 0; y < z->img_comp[n].v; ++y) { +; 2532 : // scan out an mcu's worth of this component; that's just determined +; 2533 : // by the basic H and V specified for the component +; 2534 : for (y = 0; y < z->img_comp[n].v; ++y) { 00a40 c7 85 84 04 00 00 00 00 00 00 mov DWORD PTR y$33[rbp], 0 @@ -31647,7 +31667,7 @@ $LN40@stbi__pars: 00a79 0f 8d 54 01 00 00 jge $LN39@stbi__pars -; 2522 : for (x = 0; x < z->img_comp[n].h; ++x) { +; 2535 : for (x = 0; x < z->img_comp[n].h; ++x) { 00a7f c7 85 64 04 00 00 00 00 00 00 mov DWORD PTR x$32[rbp], 0 @@ -31671,7 +31691,7 @@ $LN43@stbi__pars: 00ab8 0f 8d 10 01 00 00 jge $LN42@stbi__pars -; 2523 : int x2 = (i * z->img_comp[n].h + x); +; 2536 : int x2 = (i * z->img_comp[n].h + x); 00abe 48 63 85 a4 04 00 00 movsxd rax, DWORD PTR n$34[rbp] @@ -31688,7 +31708,7 @@ $LN43@stbi__pars: 00ae6 89 85 c4 04 00 00 mov DWORD PTR x2$35[rbp], eax -; 2524 : int y2 = (j * z->img_comp[n].v + y); +; 2537 : int y2 = (j * z->img_comp[n].v + y); 00aec 48 63 85 a4 04 00 00 movsxd rax, DWORD PTR n$34[rbp] @@ -31705,7 +31725,7 @@ $LN43@stbi__pars: 00b14 89 85 e4 04 00 00 mov DWORD PTR y2$36[rbp], eax -; 2525 : short* data = z->img_comp[n].coeff + 64 * (x2 + y2 * z->img_comp[n].coeff_w); +; 2538 : short* data = z->img_comp[n].coeff + 64 * (x2 + y2 * z->img_comp[n].coeff_w); 00b1a 48 63 85 a4 04 00 00 movsxd rax, DWORD PTR n$34[rbp] @@ -31734,7 +31754,7 @@ $LN43@stbi__pars: 00b6d 48 89 85 08 05 00 00 mov QWORD PTR data$37[rbp], rax -; 2526 : if (!stbi__jpeg_decode_block_prog_dc(z, data, &z->huff_dc[z->img_comp[n].hd], n)) +; 2539 : if (!stbi__jpeg_decode_block_prog_dc(z, data, &z->huff_dc[z->img_comp[n].hd], n)) 00b74 48 63 85 a4 04 00 00 movsxd rax, DWORD PTR n$34[rbp] @@ -31759,30 +31779,30 @@ $LN43@stbi__pars: 00bbe 85 c0 test eax, eax 00bc0 75 07 jne SHORT $LN68@stbi__pars -; 2527 : return 0; +; 2540 : return 0; 00bc2 33 c0 xor eax, eax 00bc4 e9 a8 00 00 00 jmp $LN1@stbi__pars $LN68@stbi__pars: -; 2528 : } +; 2541 : } 00bc9 e9 bd fe ff ff jmp $LN41@stbi__pars $LN42@stbi__pars: -; 2529 : } +; 2542 : } 00bce e9 79 fe ff ff jmp $LN38@stbi__pars $LN39@stbi__pars: -; 2530 : } +; 2543 : } 00bd3 e9 26 fe ff ff jmp $LN35@stbi__pars $LN36@stbi__pars: -; 2531 : // after all interleaved components, that's an interleaved MCU, -; 2532 : // so now count down the restart interval -; 2533 : if (--z->todo <= 0) { +; 2544 : // after all interleaved components, that's an interleaved MCU, +; 2545 : // so now count down the restart interval +; 2546 : if (--z->todo <= 0) { 00bd8 48 8b 85 80 07 00 00 mov rax, QWORD PTR z$[rbp] @@ -31801,7 +31821,7 @@ $LN36@stbi__pars: 00 00 cmp DWORD PTR tv518[rbp], 0 00c07 7f 59 jg SHORT $LN69@stbi__pars -; 2534 : if (z->code_bits < 24) stbi__grow_buffer_unsafe(z); +; 2547 : if (z->code_bits < 24) stbi__grow_buffer_unsafe(z); 00c09 48 8b 85 80 07 00 00 mov rax, QWORD PTR z$[rbp] @@ -31813,7 +31833,7 @@ $LN36@stbi__pars: 00c20 e8 00 00 00 00 call stbi__grow_buffer_unsafe $LN70@stbi__pars: -; 2535 : if (!STBI__RESTART(z->marker)) return 1; +; 2548 : if (!STBI__RESTART(z->marker)) return 1; 00c25 48 8b 85 80 07 00 00 mov rax, QWORD PTR z$[rbp] @@ -31832,34 +31852,34 @@ $LN72@stbi__pars: 00c54 eb 1b jmp SHORT $LN1@stbi__pars $LN71@stbi__pars: -; 2536 : stbi__jpeg_reset(z); +; 2549 : stbi__jpeg_reset(z); 00c56 48 8b 8d 80 07 00 00 mov rcx, QWORD PTR z$[rbp] 00c5d e8 00 00 00 00 call stbi__jpeg_reset $LN69@stbi__pars: -; 2537 : } -; 2538 : } +; 2550 : } +; 2551 : } 00c62 e9 64 fd ff ff jmp $LN32@stbi__pars $LN33@stbi__pars: -; 2539 : } +; 2552 : } 00c67 e9 2c fd ff ff jmp $LN29@stbi__pars $LN30@stbi__pars: -; 2540 : return 1; +; 2553 : return 1; 00c6c b8 01 00 00 00 mov eax, 1 $LN59@stbi__pars: $LN45@stbi__pars: $LN1@stbi__pars: -; 2541 : } -; 2542 : } -; 2543 : } +; 2554 : } +; 2555 : } +; 2556 : } 00c71 48 8b f8 mov rdi, rax 00c74 48 8d 4d c0 lea rcx, QWORD PTR [rbp-64] @@ -31886,7 +31906,7 @@ tv88 = 192 j$ = 240 stbi__jpeg_reset PROC ; COMDAT -; 2405 : { +; 2418 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -31898,28 +31918,28 @@ stbi__jpeg_reset PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 2406 : j->code_bits = 0; +; 2419 : j->code_bits = 0; 0001f 48 8b 85 f0 00 00 00 mov rax, QWORD PTR j$[rbp] 00026 c7 80 24 48 00 00 00 00 00 00 mov DWORD PTR [rax+18468], 0 -; 2407 : j->code_buffer = 0; +; 2420 : j->code_buffer = 0; 00030 48 8b 85 f0 00 00 00 mov rax, QWORD PTR j$[rbp] 00037 c7 80 20 48 00 00 00 00 00 00 mov DWORD PTR [rax+18464], 0 -; 2408 : j->nomore = 0; +; 2421 : j->nomore = 0; 00041 48 8b 85 f0 00 00 00 mov rax, QWORD PTR j$[rbp] 00048 c7 80 2c 48 00 00 00 00 00 00 mov DWORD PTR [rax+18476], 0 -; 2409 : j->img_comp[0].dc_pred = j->img_comp[1].dc_pred = j->img_comp[2].dc_pred = j->img_comp[3].dc_pred = 0; +; 2422 : j->img_comp[0].dc_pred = j->img_comp[1].dc_pred = j->img_comp[2].dc_pred = j->img_comp[3].dc_pred = 0; 00052 b8 60 00 00 00 mov eax, 96 ; 00000060H 00057 48 6b c0 03 imul rax, rax, 3 @@ -31950,14 +31970,14 @@ stbi__jpeg_reset PROC ; COMDAT 00 00 00 00 00 00 mov DWORD PTR [rcx+rax+18104], 0 -; 2410 : j->marker = STBI__MARKER_none; +; 2423 : j->marker = STBI__MARKER_none; 000be 48 8b 85 f0 00 00 00 mov rax, QWORD PTR j$[rbp] 000c5 c6 80 28 48 00 00 ff mov BYTE PTR [rax+18472], 255 ; 000000ffH -; 2411 : j->todo = j->restart_interval ? j->restart_interval : 0x7fffffff; +; 2424 : j->todo = j->restart_interval ? j->restart_interval : 0x7fffffff; 000cc 48 8b 85 f0 00 00 00 mov rax, QWORD PTR j$[rbp] @@ -31982,16 +32002,16 @@ $LN4@stbi__jpeg: 00108 89 88 6c 48 00 00 mov DWORD PTR [rax+18540], ecx -; 2412 : j->eob_run = 0; +; 2425 : j->eob_run = 0; 0010e 48 8b 85 f0 00 00 00 mov rax, QWORD PTR j$[rbp] 00115 c7 80 44 48 00 00 00 00 00 00 mov DWORD PTR [rax+18500], 0 -; 2413 : // no more than 1<<31 MCUs if no restart_interal? that's plenty safe, -; 2414 : // since we don't even allow 1<<30 pixels -; 2415 : } +; 2426 : // no more than 1<<31 MCUs if no restart_interal? that's plenty safe, +; 2427 : // since we don't even allow 1<<30 pixels +; 2428 : } 0011f 48 8d a5 d8 00 00 00 lea rsp, QWORD PTR [rbp+216] @@ -32008,7 +32028,7 @@ x$ = 4 j$ = 256 stbi__get_marker PROC ; COMDAT -; 2388 : { +; 2401 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -32020,8 +32040,8 @@ stbi__get_marker PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 2389 : stbi_uc x; -; 2390 : if (j->marker != STBI__MARKER_none) { x = j->marker; j->marker = STBI__MARKER_none; return x; } +; 2402 : stbi_uc x; +; 2403 : if (j->marker != STBI__MARKER_none) { x = j->marker; j->marker = STBI__MARKER_none; return x; } 0001f 48 8b 85 00 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -32042,7 +32062,7 @@ stbi__get_marker PROC ; COMDAT 00057 eb 44 jmp SHORT $LN1@stbi__get_ $LN4@stbi__get_: -; 2391 : x = stbi__get8(j->s); +; 2404 : x = stbi__get8(j->s); 00059 48 8b 85 00 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -32050,7 +32070,7 @@ $LN4@stbi__get_: 00063 e8 00 00 00 00 call stbi__get8 00068 88 45 04 mov BYTE PTR x$[rbp], al -; 2392 : if (x != 0xff) return STBI__MARKER_none; +; 2405 : if (x != 0xff) return STBI__MARKER_none; 0006b 0f b6 45 04 movzx eax, BYTE PTR x$[rbp] 0006f 3d ff 00 00 00 cmp eax, 255 ; 000000ffH @@ -32060,13 +32080,13 @@ $LN4@stbi__get_: $LN5@stbi__get_: $LN2@stbi__get_: -; 2393 : while (x == 0xff) +; 2406 : while (x == 0xff) 0007a 0f b6 45 04 movzx eax, BYTE PTR x$[rbp] 0007e 3d ff 00 00 00 cmp eax, 255 ; 000000ffH 00083 75 14 jne SHORT $LN3@stbi__get_ -; 2394 : x = stbi__get8(j->s); // consume repeated 0xff fill bytes +; 2407 : x = stbi__get8(j->s); // consume repeated 0xff fill bytes 00085 48 8b 85 00 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -32076,12 +32096,12 @@ $LN2@stbi__get_: 00097 eb e1 jmp SHORT $LN2@stbi__get_ $LN3@stbi__get_: -; 2395 : return x; +; 2408 : return x; 00099 0f b6 45 04 movzx eax, BYTE PTR x$[rbp] $LN1@stbi__get_: -; 2396 : } +; 2409 : } 0009d 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -32266,7 +32286,7 @@ out_stride$ = 9592 data$ = 9600 stbi__idct_simd PROC ; COMDAT -; 1999 : { +; 2012 : { 00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 00005 89 54 24 10 mov DWORD PTR [rsp+16], edx @@ -32281,171 +32301,171 @@ stbi__idct_simd PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 2000 : // This is constructed to match our regular (generic) integer IDCT exactly. -; 2001 : __m128i row0, row1, row2, row3, row4, row5, row6, row7; -; 2002 : __m128i tmp; -; 2003 : -; 2004 : // dot product constant: even elems=x, odd elems=y -; 2005 : #define dct_const(x,y) _mm_setr_epi16((x),(y),(x),(y),(x),(y),(x),(y)) -; 2006 : -; 2007 : // out(0) = c0[even]*x + c0[odd]*y (c0, x, y 16-bit, out 32-bit) -; 2008 : // out(1) = c1[even]*x + c1[odd]*y -; 2009 : #define dct_rot(out0,out1, x,y,c0,c1) \ -; 2010 : __m128i c0##lo = _mm_unpacklo_epi16((x),(y)); \ -; 2011 : __m128i c0##hi = _mm_unpackhi_epi16((x),(y)); \ -; 2012 : __m128i out0##_l = _mm_madd_epi16(c0##lo, c0); \ -; 2013 : __m128i out0##_h = _mm_madd_epi16(c0##hi, c0); \ -; 2014 : __m128i out1##_l = _mm_madd_epi16(c0##lo, c1); \ -; 2015 : __m128i out1##_h = _mm_madd_epi16(c0##hi, c1) +; 2013 : // This is constructed to match our regular (generic) integer IDCT exactly. +; 2014 : __m128i row0, row1, row2, row3, row4, row5, row6, row7; +; 2015 : __m128i tmp; ; 2016 : -; 2017 : // out = in << 12 (in 16-bit, out 32-bit) -; 2018 : #define dct_widen(out, in) \ -; 2019 : __m128i out##_l = _mm_srai_epi32(_mm_unpacklo_epi16(_mm_setzero_si128(), (in)), 4); \ -; 2020 : __m128i out##_h = _mm_srai_epi32(_mm_unpackhi_epi16(_mm_setzero_si128(), (in)), 4) -; 2021 : -; 2022 : // wide add -; 2023 : #define dct_wadd(out, a, b) \ -; 2024 : __m128i out##_l = _mm_add_epi32(a##_l, b##_l); \ -; 2025 : __m128i out##_h = _mm_add_epi32(a##_h, b##_h) -; 2026 : -; 2027 : // wide sub -; 2028 : #define dct_wsub(out, a, b) \ -; 2029 : __m128i out##_l = _mm_sub_epi32(a##_l, b##_l); \ -; 2030 : __m128i out##_h = _mm_sub_epi32(a##_h, b##_h) -; 2031 : -; 2032 : // butterfly a/b, add bias, then shift by "s" and pack -; 2033 : #define dct_bfly32o(out0, out1, a,b,bias,s) \ -; 2034 : { \ -; 2035 : __m128i abiased_l = _mm_add_epi32(a##_l, bias); \ -; 2036 : __m128i abiased_h = _mm_add_epi32(a##_h, bias); \ -; 2037 : dct_wadd(sum, abiased, b); \ -; 2038 : dct_wsub(dif, abiased, b); \ -; 2039 : out0 = _mm_packs_epi32(_mm_srai_epi32(sum_l, s), _mm_srai_epi32(sum_h, s)); \ -; 2040 : out1 = _mm_packs_epi32(_mm_srai_epi32(dif_l, s), _mm_srai_epi32(dif_h, s)); \ -; 2041 : } -; 2042 : -; 2043 : // 8-bit interleave step (for transposes) -; 2044 : #define dct_interleave8(a, b) \ -; 2045 : tmp = a; \ -; 2046 : a = _mm_unpacklo_epi8(a, b); \ -; 2047 : b = _mm_unpackhi_epi8(tmp, b) -; 2048 : -; 2049 : // 16-bit interleave step (for transposes) -; 2050 : #define dct_interleave16(a, b) \ -; 2051 : tmp = a; \ -; 2052 : a = _mm_unpacklo_epi16(a, b); \ -; 2053 : b = _mm_unpackhi_epi16(tmp, b) -; 2054 : -; 2055 : #define dct_pass(bias,shift) \ -; 2056 : { \ -; 2057 : /* even part */ \ -; 2058 : dct_rot(t2e,t3e, row2,row6, rot0_0,rot0_1); \ -; 2059 : __m128i sum04 = _mm_add_epi16(row0, row4); \ -; 2060 : __m128i dif04 = _mm_sub_epi16(row0, row4); \ -; 2061 : dct_widen(t0e, sum04); \ -; 2062 : dct_widen(t1e, dif04); \ -; 2063 : dct_wadd(x0, t0e, t3e); \ -; 2064 : dct_wsub(x3, t0e, t3e); \ -; 2065 : dct_wadd(x1, t1e, t2e); \ -; 2066 : dct_wsub(x2, t1e, t2e); \ -; 2067 : /* odd part */ \ -; 2068 : dct_rot(y0o,y2o, row7,row3, rot2_0,rot2_1); \ -; 2069 : dct_rot(y1o,y3o, row5,row1, rot3_0,rot3_1); \ -; 2070 : __m128i sum17 = _mm_add_epi16(row1, row7); \ -; 2071 : __m128i sum35 = _mm_add_epi16(row3, row5); \ -; 2072 : dct_rot(y4o,y5o, sum17,sum35, rot1_0,rot1_1); \ -; 2073 : dct_wadd(x4, y0o, y4o); \ -; 2074 : dct_wadd(x5, y1o, y5o); \ -; 2075 : dct_wadd(x6, y2o, y5o); \ -; 2076 : dct_wadd(x7, y3o, y4o); \ -; 2077 : dct_bfly32o(row0,row7, x0,x7,bias,shift); \ -; 2078 : dct_bfly32o(row1,row6, x1,x6,bias,shift); \ -; 2079 : dct_bfly32o(row2,row5, x2,x5,bias,shift); \ -; 2080 : dct_bfly32o(row3,row4, x3,x4,bias,shift); \ -; 2081 : } -; 2082 : -; 2083 : __m128i rot0_0 = dct_const(stbi__f2f(0.5411961f), stbi__f2f(0.5411961f) + stbi__f2f(-1.847759065f)); +; 2017 : // dot product constant: even elems=x, odd elems=y +; 2018 : #define dct_const(x,y) _mm_setr_epi16((x),(y),(x),(y),(x),(y),(x),(y)) +; 2019 : +; 2020 : // out(0) = c0[even]*x + c0[odd]*y (c0, x, y 16-bit, out 32-bit) +; 2021 : // out(1) = c1[even]*x + c1[odd]*y +; 2022 : #define dct_rot(out0,out1, x,y,c0,c1) \ +; 2023 : __m128i c0##lo = _mm_unpacklo_epi16((x),(y)); \ +; 2024 : __m128i c0##hi = _mm_unpackhi_epi16((x),(y)); \ +; 2025 : __m128i out0##_l = _mm_madd_epi16(c0##lo, c0); \ +; 2026 : __m128i out0##_h = _mm_madd_epi16(c0##hi, c0); \ +; 2027 : __m128i out1##_l = _mm_madd_epi16(c0##lo, c1); \ +; 2028 : __m128i out1##_h = _mm_madd_epi16(c0##hi, c1) +; 2029 : +; 2030 : // out = in << 12 (in 16-bit, out 32-bit) +; 2031 : #define dct_widen(out, in) \ +; 2032 : __m128i out##_l = _mm_srai_epi32(_mm_unpacklo_epi16(_mm_setzero_si128(), (in)), 4); \ +; 2033 : __m128i out##_h = _mm_srai_epi32(_mm_unpackhi_epi16(_mm_setzero_si128(), (in)), 4) +; 2034 : +; 2035 : // wide add +; 2036 : #define dct_wadd(out, a, b) \ +; 2037 : __m128i out##_l = _mm_add_epi32(a##_l, b##_l); \ +; 2038 : __m128i out##_h = _mm_add_epi32(a##_h, b##_h) +; 2039 : +; 2040 : // wide sub +; 2041 : #define dct_wsub(out, a, b) \ +; 2042 : __m128i out##_l = _mm_sub_epi32(a##_l, b##_l); \ +; 2043 : __m128i out##_h = _mm_sub_epi32(a##_h, b##_h) +; 2044 : +; 2045 : // butterfly a/b, add bias, then shift by "s" and pack +; 2046 : #define dct_bfly32o(out0, out1, a,b,bias,s) \ +; 2047 : { \ +; 2048 : __m128i abiased_l = _mm_add_epi32(a##_l, bias); \ +; 2049 : __m128i abiased_h = _mm_add_epi32(a##_h, bias); \ +; 2050 : dct_wadd(sum, abiased, b); \ +; 2051 : dct_wsub(dif, abiased, b); \ +; 2052 : out0 = _mm_packs_epi32(_mm_srai_epi32(sum_l, s), _mm_srai_epi32(sum_h, s)); \ +; 2053 : out1 = _mm_packs_epi32(_mm_srai_epi32(dif_l, s), _mm_srai_epi32(dif_h, s)); \ +; 2054 : } +; 2055 : +; 2056 : // 8-bit interleave step (for transposes) +; 2057 : #define dct_interleave8(a, b) \ +; 2058 : tmp = a; \ +; 2059 : a = _mm_unpacklo_epi8(a, b); \ +; 2060 : b = _mm_unpackhi_epi8(tmp, b) +; 2061 : +; 2062 : // 16-bit interleave step (for transposes) +; 2063 : #define dct_interleave16(a, b) \ +; 2064 : tmp = a; \ +; 2065 : a = _mm_unpacklo_epi16(a, b); \ +; 2066 : b = _mm_unpackhi_epi16(tmp, b) +; 2067 : +; 2068 : #define dct_pass(bias,shift) \ +; 2069 : { \ +; 2070 : /* even part */ \ +; 2071 : dct_rot(t2e,t3e, row2,row6, rot0_0,rot0_1); \ +; 2072 : __m128i sum04 = _mm_add_epi16(row0, row4); \ +; 2073 : __m128i dif04 = _mm_sub_epi16(row0, row4); \ +; 2074 : dct_widen(t0e, sum04); \ +; 2075 : dct_widen(t1e, dif04); \ +; 2076 : dct_wadd(x0, t0e, t3e); \ +; 2077 : dct_wsub(x3, t0e, t3e); \ +; 2078 : dct_wadd(x1, t1e, t2e); \ +; 2079 : dct_wsub(x2, t1e, t2e); \ +; 2080 : /* odd part */ \ +; 2081 : dct_rot(y0o,y2o, row7,row3, rot2_0,rot2_1); \ +; 2082 : dct_rot(y1o,y3o, row5,row1, rot3_0,rot3_1); \ +; 2083 : __m128i sum17 = _mm_add_epi16(row1, row7); \ +; 2084 : __m128i sum35 = _mm_add_epi16(row3, row5); \ +; 2085 : dct_rot(y4o,y5o, sum17,sum35, rot1_0,rot1_1); \ +; 2086 : dct_wadd(x4, y0o, y4o); \ +; 2087 : dct_wadd(x5, y1o, y5o); \ +; 2088 : dct_wadd(x6, y2o, y5o); \ +; 2089 : dct_wadd(x7, y3o, y4o); \ +; 2090 : dct_bfly32o(row0,row7, x0,x7,bias,shift); \ +; 2091 : dct_bfly32o(row1,row6, x1,x6,bias,shift); \ +; 2092 : dct_bfly32o(row2,row5, x2,x5,bias,shift); \ +; 2093 : dct_bfly32o(row3,row4, x3,x4,bias,shift); \ +; 2094 : } +; 2095 : +; 2096 : __m128i rot0_0 = dct_const(stbi__f2f(0.5411961f), stbi__f2f(0.5411961f) + stbi__f2f(-1.847759065f)); 0002e 66 0f 6f 05 00 00 00 00 movdqa xmm0, XMMWORD PTR __xmm@eb1a08a9eb1a08a9eb1a08a9eb1a08a9 00036 66 0f 7f 85 c0 01 00 00 movdqa XMMWORD PTR rot0_0$[rbp], xmm0 -; 2084 : __m128i rot0_1 = dct_const(stbi__f2f(0.5411961f) + stbi__f2f(0.765366865f), stbi__f2f(0.5411961f)); +; 2097 : __m128i rot0_1 = dct_const(stbi__f2f(0.5411961f) + stbi__f2f(0.765366865f), stbi__f2f(0.5411961f)); 0003e 66 0f 6f 05 00 00 00 00 movdqa xmm0, XMMWORD PTR __xmm@08a914e808a914e808a914e808a914e8 00046 66 0f 7f 85 f0 01 00 00 movdqa XMMWORD PTR rot0_1$[rbp], xmm0 -; 2085 : __m128i rot1_0 = dct_const(stbi__f2f(1.175875602f) + stbi__f2f(-0.899976223f), stbi__f2f(1.175875602f)); +; 2098 : __m128i rot1_0 = dct_const(stbi__f2f(1.175875602f) + stbi__f2f(-0.899976223f), stbi__f2f(1.175875602f)); 0004e 66 0f 6f 05 00 00 00 00 movdqa xmm0, XMMWORD PTR __xmm@12d0046b12d0046b12d0046b12d0046b 00056 66 0f 7f 85 20 02 00 00 movdqa XMMWORD PTR rot1_0$[rbp], xmm0 -; 2086 : __m128i rot1_1 = dct_const(stbi__f2f(1.175875602f), stbi__f2f(1.175875602f) + stbi__f2f(-2.562915447f)); +; 2099 : __m128i rot1_1 = dct_const(stbi__f2f(1.175875602f), stbi__f2f(1.175875602f) + stbi__f2f(-2.562915447f)); 0005e 66 0f 6f 05 00 00 00 00 movdqa xmm0, XMMWORD PTR __xmm@e9cf12d0e9cf12d0e9cf12d0e9cf12d0 00066 66 0f 7f 85 50 02 00 00 movdqa XMMWORD PTR rot1_1$[rbp], xmm0 -; 2087 : __m128i rot2_0 = dct_const(stbi__f2f(-1.961570560f) + stbi__f2f(0.298631336f), stbi__f2f(-1.961570560f)); +; 2100 : __m128i rot2_0 = dct_const(stbi__f2f(-1.961570560f) + stbi__f2f(0.298631336f), stbi__f2f(-1.961570560f)); 0006e 66 0f 6f 05 00 00 00 00 movdqa xmm0, XMMWORD PTR __xmm@e09ee565e09ee565e09ee565e09ee565 00076 66 0f 7f 85 80 02 00 00 movdqa XMMWORD PTR rot2_0$[rbp], xmm0 -; 2088 : __m128i rot2_1 = dct_const(stbi__f2f(-1.961570560f), stbi__f2f(-1.961570560f) + stbi__f2f(3.072711026f)); +; 2101 : __m128i rot2_1 = dct_const(stbi__f2f(-1.961570560f), stbi__f2f(-1.961570560f) + stbi__f2f(3.072711026f)); 0007e 66 0f 6f 05 00 00 00 00 movdqa xmm0, XMMWORD PTR __xmm@11c8e09e11c8e09e11c8e09e11c8e09e 00086 66 0f 7f 85 b0 02 00 00 movdqa XMMWORD PTR rot2_1$[rbp], xmm0 -; 2089 : __m128i rot3_0 = dct_const(stbi__f2f(-0.390180644f) + stbi__f2f(2.053119869f), stbi__f2f(-0.390180644f)); +; 2102 : __m128i rot3_0 = dct_const(stbi__f2f(-0.390180644f) + stbi__f2f(2.053119869f), stbi__f2f(-0.390180644f)); 0008e 66 0f 6f 05 00 00 00 00 movdqa xmm0, XMMWORD PTR __xmm@f9c31a9df9c31a9df9c31a9df9c31a9d 00096 66 0f 7f 85 e0 02 00 00 movdqa XMMWORD PTR rot3_0$[rbp], xmm0 -; 2090 : __m128i rot3_1 = dct_const(stbi__f2f(-0.390180644f), stbi__f2f(-0.390180644f) + stbi__f2f(1.501321110f)); +; 2103 : __m128i rot3_1 = dct_const(stbi__f2f(-0.390180644f), stbi__f2f(-0.390180644f) + stbi__f2f(1.501321110f)); 0009e 66 0f 6f 05 00 00 00 00 movdqa xmm0, XMMWORD PTR __xmm@11c8f9c311c8f9c311c8f9c311c8f9c3 000a6 66 0f 7f 85 10 03 00 00 movdqa XMMWORD PTR rot3_1$[rbp], xmm0 -; 2091 : -; 2092 : // rounding biases in column/row passes, see stbi__idct_block for explanation. -; 2093 : __m128i bias_0 = _mm_set1_epi32(512); +; 2104 : +; 2105 : // rounding biases in column/row passes, see stbi__idct_block for explanation. +; 2106 : __m128i bias_0 = _mm_set1_epi32(512); 000ae 66 0f 6f 05 00 00 00 00 movdqa xmm0, XMMWORD PTR __xmm@00000200000002000000020000000200 000b6 66 0f 7f 85 40 03 00 00 movdqa XMMWORD PTR bias_0$[rbp], xmm0 -; 2094 : __m128i bias_1 = _mm_set1_epi32(65536 + (128 << 17)); +; 2107 : __m128i bias_1 = _mm_set1_epi32(65536 + (128 << 17)); 000be 66 0f 6f 05 00 00 00 00 movdqa xmm0, XMMWORD PTR __xmm@01010000010100000101000001010000 000c6 66 0f 7f 85 70 03 00 00 movdqa XMMWORD PTR bias_1$[rbp], xmm0 -; 2095 : -; 2096 : // load -; 2097 : row0 = _mm_load_si128((const __m128i*) (data + 0 * 8)); +; 2108 : +; 2109 : // load +; 2110 : row0 = _mm_load_si128((const __m128i*) (data + 0 * 8)); 000ce 48 8b 85 80 25 00 00 mov rax, QWORD PTR data$[rbp] 000d5 f3 0f 6f 00 movdqu xmm0, XMMWORD PTR [rax] 000d9 66 0f 7f 45 10 movdqa XMMWORD PTR row0$[rbp], xmm0 -; 2098 : row1 = _mm_load_si128((const __m128i*) (data + 1 * 8)); +; 2111 : row1 = _mm_load_si128((const __m128i*) (data + 1 * 8)); 000de 48 8b 85 80 25 00 00 mov rax, QWORD PTR data$[rbp] @@ -32453,7 +32473,7 @@ stbi__idct_simd PROC ; COMDAT 000e9 f3 0f 6f 00 movdqu xmm0, XMMWORD PTR [rax] 000ed 66 0f 7f 45 40 movdqa XMMWORD PTR row1$[rbp], xmm0 -; 2099 : row2 = _mm_load_si128((const __m128i*) (data + 2 * 8)); +; 2112 : row2 = _mm_load_si128((const __m128i*) (data + 2 * 8)); 000f2 48 8b 85 80 25 00 00 mov rax, QWORD PTR data$[rbp] @@ -32461,7 +32481,7 @@ stbi__idct_simd PROC ; COMDAT 000fd f3 0f 6f 00 movdqu xmm0, XMMWORD PTR [rax] 00101 66 0f 7f 45 70 movdqa XMMWORD PTR row2$[rbp], xmm0 -; 2100 : row3 = _mm_load_si128((const __m128i*) (data + 3 * 8)); +; 2113 : row3 = _mm_load_si128((const __m128i*) (data + 3 * 8)); 00106 48 8b 85 80 25 00 00 mov rax, QWORD PTR data$[rbp] @@ -32470,7 +32490,7 @@ stbi__idct_simd PROC ; COMDAT 00115 66 0f 7f 85 a0 00 00 00 movdqa XMMWORD PTR row3$[rbp], xmm0 -; 2101 : row4 = _mm_load_si128((const __m128i*) (data + 4 * 8)); +; 2114 : row4 = _mm_load_si128((const __m128i*) (data + 4 * 8)); 0011d 48 8b 85 80 25 00 00 mov rax, QWORD PTR data$[rbp] @@ -32479,7 +32499,7 @@ stbi__idct_simd PROC ; COMDAT 0012c 66 0f 7f 85 d0 00 00 00 movdqa XMMWORD PTR row4$[rbp], xmm0 -; 2102 : row5 = _mm_load_si128((const __m128i*) (data + 5 * 8)); +; 2115 : row5 = _mm_load_si128((const __m128i*) (data + 5 * 8)); 00134 48 8b 85 80 25 00 00 mov rax, QWORD PTR data$[rbp] @@ -32488,7 +32508,7 @@ stbi__idct_simd PROC ; COMDAT 00143 66 0f 7f 85 00 01 00 00 movdqa XMMWORD PTR row5$[rbp], xmm0 -; 2103 : row6 = _mm_load_si128((const __m128i*) (data + 6 * 8)); +; 2116 : row6 = _mm_load_si128((const __m128i*) (data + 6 * 8)); 0014b 48 8b 85 80 25 00 00 mov rax, QWORD PTR data$[rbp] @@ -32497,7 +32517,7 @@ stbi__idct_simd PROC ; COMDAT 0015a 66 0f 7f 85 30 01 00 00 movdqa XMMWORD PTR row6$[rbp], xmm0 -; 2104 : row7 = _mm_load_si128((const __m128i*) (data + 7 * 8)); +; 2117 : row7 = _mm_load_si128((const __m128i*) (data + 7 * 8)); 00162 48 8b 85 80 25 00 00 mov rax, QWORD PTR data$[rbp] @@ -32506,9 +32526,9 @@ stbi__idct_simd PROC ; COMDAT 00171 66 0f 7f 85 60 01 00 00 movdqa XMMWORD PTR row7$[rbp], xmm0 -; 2105 : -; 2106 : // column pass -; 2107 : dct_pass(bias_0, 10); +; 2118 : +; 2119 : // column pass +; 2120 : dct_pass(bias_0, 10); 00179 66 0f 6f 45 70 movdqa xmm0, XMMWORD PTR row2$[rbp] 0017e 66 0f 61 85 30 @@ -33013,10 +33033,10 @@ stbi__idct_simd PROC ; COMDAT 00967 66 0f 7f 85 d0 00 00 00 movdqa XMMWORD PTR row4$[rbp], xmm0 -; 2108 : -; 2109 : { -; 2110 : // 16bit 8x8 transpose pass 1 -; 2111 : dct_interleave16(row0, row4); +; 2121 : +; 2122 : { +; 2123 : // 16bit 8x8 transpose pass 1 +; 2124 : dct_interleave16(row0, row4); 0096f 66 0f 6f 45 10 movdqa xmm0, XMMWORD PTR row0$[rbp] 00974 66 0f 7f 85 90 @@ -33032,7 +33052,7 @@ stbi__idct_simd PROC ; COMDAT 0099e 66 0f 7f 85 d0 00 00 00 movdqa XMMWORD PTR row4$[rbp], xmm0 -; 2112 : dct_interleave16(row1, row5); +; 2125 : dct_interleave16(row1, row5); 009a6 66 0f 6f 45 40 movdqa xmm0, XMMWORD PTR row1$[rbp] 009ab 66 0f 7f 85 90 @@ -33048,7 +33068,7 @@ stbi__idct_simd PROC ; COMDAT 009d5 66 0f 7f 85 00 01 00 00 movdqa XMMWORD PTR row5$[rbp], xmm0 -; 2113 : dct_interleave16(row2, row6); +; 2126 : dct_interleave16(row2, row6); 009dd 66 0f 6f 45 70 movdqa xmm0, XMMWORD PTR row2$[rbp] 009e2 66 0f 7f 85 90 @@ -33064,7 +33084,7 @@ stbi__idct_simd PROC ; COMDAT 00a0c 66 0f 7f 85 30 01 00 00 movdqa XMMWORD PTR row6$[rbp], xmm0 -; 2114 : dct_interleave16(row3, row7); +; 2127 : dct_interleave16(row3, row7); 00a14 66 0f 6f 85 a0 00 00 00 movdqa xmm0, XMMWORD PTR row3$[rbp] @@ -33083,9 +33103,9 @@ stbi__idct_simd PROC ; COMDAT 00a4c 66 0f 7f 85 60 01 00 00 movdqa XMMWORD PTR row7$[rbp], xmm0 -; 2115 : -; 2116 : // transpose pass 2 -; 2117 : dct_interleave16(row0, row2); +; 2128 : +; 2129 : // transpose pass 2 +; 2130 : dct_interleave16(row0, row2); 00a54 66 0f 6f 45 10 movdqa xmm0, XMMWORD PTR row0$[rbp] 00a59 66 0f 7f 85 90 @@ -33098,7 +33118,7 @@ stbi__idct_simd PROC ; COMDAT 00a78 66 0f 69 45 70 punpckhwd xmm0, XMMWORD PTR row2$[rbp] 00a7d 66 0f 7f 45 70 movdqa XMMWORD PTR row2$[rbp], xmm0 -; 2118 : dct_interleave16(row1, row3); +; 2131 : dct_interleave16(row1, row3); 00a82 66 0f 6f 45 40 movdqa xmm0, XMMWORD PTR row1$[rbp] 00a87 66 0f 7f 85 90 @@ -33114,7 +33134,7 @@ stbi__idct_simd PROC ; COMDAT 00ab1 66 0f 7f 85 a0 00 00 00 movdqa XMMWORD PTR row3$[rbp], xmm0 -; 2119 : dct_interleave16(row4, row6); +; 2132 : dct_interleave16(row4, row6); 00ab9 66 0f 6f 85 d0 00 00 00 movdqa xmm0, XMMWORD PTR row4$[rbp] @@ -33133,7 +33153,7 @@ stbi__idct_simd PROC ; COMDAT 00af1 66 0f 7f 85 30 01 00 00 movdqa XMMWORD PTR row6$[rbp], xmm0 -; 2120 : dct_interleave16(row5, row7); +; 2133 : dct_interleave16(row5, row7); 00af9 66 0f 6f 85 00 01 00 00 movdqa xmm0, XMMWORD PTR row5$[rbp] @@ -33152,9 +33172,9 @@ stbi__idct_simd PROC ; COMDAT 00b31 66 0f 7f 85 60 01 00 00 movdqa XMMWORD PTR row7$[rbp], xmm0 -; 2121 : -; 2122 : // transpose pass 3 -; 2123 : dct_interleave16(row0, row1); +; 2134 : +; 2135 : // transpose pass 3 +; 2136 : dct_interleave16(row0, row1); 00b39 66 0f 6f 45 10 movdqa xmm0, XMMWORD PTR row0$[rbp] 00b3e 66 0f 7f 85 90 @@ -33167,7 +33187,7 @@ stbi__idct_simd PROC ; COMDAT 00b5d 66 0f 69 45 40 punpckhwd xmm0, XMMWORD PTR row1$[rbp] 00b62 66 0f 7f 45 40 movdqa XMMWORD PTR row1$[rbp], xmm0 -; 2124 : dct_interleave16(row2, row3); +; 2137 : dct_interleave16(row2, row3); 00b67 66 0f 6f 45 70 movdqa xmm0, XMMWORD PTR row2$[rbp] 00b6c 66 0f 7f 85 90 @@ -33183,7 +33203,7 @@ stbi__idct_simd PROC ; COMDAT 00b96 66 0f 7f 85 a0 00 00 00 movdqa XMMWORD PTR row3$[rbp], xmm0 -; 2125 : dct_interleave16(row4, row5); +; 2138 : dct_interleave16(row4, row5); 00b9e 66 0f 6f 85 d0 00 00 00 movdqa xmm0, XMMWORD PTR row4$[rbp] @@ -33202,7 +33222,7 @@ stbi__idct_simd PROC ; COMDAT 00bd6 66 0f 7f 85 00 01 00 00 movdqa XMMWORD PTR row5$[rbp], xmm0 -; 2126 : dct_interleave16(row6, row7); +; 2139 : dct_interleave16(row6, row7); 00bde 66 0f 6f 85 30 01 00 00 movdqa xmm0, XMMWORD PTR row6$[rbp] @@ -33221,10 +33241,10 @@ stbi__idct_simd PROC ; COMDAT 00c16 66 0f 7f 85 60 01 00 00 movdqa XMMWORD PTR row7$[rbp], xmm0 -; 2127 : } -; 2128 : -; 2129 : // row pass -; 2130 : dct_pass(bias_1, 17); +; 2140 : } +; 2141 : +; 2142 : // row pass +; 2143 : dct_pass(bias_1, 17); 00c1e 66 0f 6f 45 70 movdqa xmm0, XMMWORD PTR row2$[rbp] 00c23 66 0f 61 85 30 @@ -33729,17 +33749,17 @@ stbi__idct_simd PROC ; COMDAT 0140c 66 0f 7f 85 d0 00 00 00 movdqa XMMWORD PTR row4$[rbp], xmm0 -; 2131 : -; 2132 : { -; 2133 : // pack -; 2134 : __m128i p0 = _mm_packus_epi16(row0, row1); // a0a1a2a3...a7b0b1b2b3...b7 +; 2144 : +; 2145 : { +; 2146 : // pack +; 2147 : __m128i p0 = _mm_packus_epi16(row0, row1); // a0a1a2a3...a7b0b1b2b3...b7 01414 66 0f 6f 45 10 movdqa xmm0, XMMWORD PTR row0$[rbp] 01419 66 0f 67 45 40 packuswb xmm0, XMMWORD PTR row1$[rbp] 0141e 66 0f 7f 85 a0 1e 00 00 movdqa XMMWORD PTR p0$145[rbp], xmm0 -; 2135 : __m128i p1 = _mm_packus_epi16(row2, row3); +; 2148 : __m128i p1 = _mm_packus_epi16(row2, row3); 01426 66 0f 6f 45 70 movdqa xmm0, XMMWORD PTR row2$[rbp] 0142b 66 0f 67 85 a0 @@ -33747,7 +33767,7 @@ stbi__idct_simd PROC ; COMDAT 01433 66 0f 7f 85 d0 1e 00 00 movdqa XMMWORD PTR p1$146[rbp], xmm0 -; 2136 : __m128i p2 = _mm_packus_epi16(row4, row5); +; 2149 : __m128i p2 = _mm_packus_epi16(row4, row5); 0143b 66 0f 6f 85 d0 00 00 00 movdqa xmm0, XMMWORD PTR row4$[rbp] @@ -33756,7 +33776,7 @@ stbi__idct_simd PROC ; COMDAT 0144b 66 0f 7f 85 00 1f 00 00 movdqa XMMWORD PTR p2$147[rbp], xmm0 -; 2137 : __m128i p3 = _mm_packus_epi16(row6, row7); +; 2150 : __m128i p3 = _mm_packus_epi16(row6, row7); 01453 66 0f 6f 85 30 01 00 00 movdqa xmm0, XMMWORD PTR row6$[rbp] @@ -33765,9 +33785,9 @@ stbi__idct_simd PROC ; COMDAT 01463 66 0f 7f 85 30 1f 00 00 movdqa XMMWORD PTR p3$148[rbp], xmm0 -; 2138 : -; 2139 : // 8bit 8x8 transpose pass 1 -; 2140 : dct_interleave8(p0, p2); // a0e0a1e1... +; 2151 : +; 2152 : // 8bit 8x8 transpose pass 1 +; 2153 : dct_interleave8(p0, p2); // a0e0a1e1... 0146b 66 0f 6f 85 a0 1e 00 00 movdqa xmm0, XMMWORD PTR p0$145[rbp] @@ -33786,7 +33806,7 @@ stbi__idct_simd PROC ; COMDAT 014a3 66 0f 7f 85 00 1f 00 00 movdqa XMMWORD PTR p2$147[rbp], xmm0 -; 2141 : dct_interleave8(p1, p3); // c0g0c1g1... +; 2154 : dct_interleave8(p1, p3); // c0g0c1g1... 014ab 66 0f 6f 85 d0 1e 00 00 movdqa xmm0, XMMWORD PTR p1$146[rbp] @@ -33805,9 +33825,9 @@ stbi__idct_simd PROC ; COMDAT 014e3 66 0f 7f 85 30 1f 00 00 movdqa XMMWORD PTR p3$148[rbp], xmm0 -; 2142 : -; 2143 : // transpose pass 2 -; 2144 : dct_interleave8(p0, p1); // a0c0e0g0... +; 2155 : +; 2156 : // transpose pass 2 +; 2157 : dct_interleave8(p0, p1); // a0c0e0g0... 014eb 66 0f 6f 85 a0 1e 00 00 movdqa xmm0, XMMWORD PTR p0$145[rbp] @@ -33826,7 +33846,7 @@ stbi__idct_simd PROC ; COMDAT 01523 66 0f 7f 85 d0 1e 00 00 movdqa XMMWORD PTR p1$146[rbp], xmm0 -; 2145 : dct_interleave8(p2, p3); // b0d0f0h0... +; 2158 : dct_interleave8(p2, p3); // b0d0f0h0... 0152b 66 0f 6f 85 00 1f 00 00 movdqa xmm0, XMMWORD PTR p2$147[rbp] @@ -33845,9 +33865,9 @@ stbi__idct_simd PROC ; COMDAT 01563 66 0f 7f 85 30 1f 00 00 movdqa XMMWORD PTR p3$148[rbp], xmm0 -; 2146 : -; 2147 : // transpose pass 3 -; 2148 : dct_interleave8(p0, p2); // a0b0c0d0... +; 2159 : +; 2160 : // transpose pass 3 +; 2161 : dct_interleave8(p0, p2); // a0b0c0d0... 0156b 66 0f 6f 85 a0 1e 00 00 movdqa xmm0, XMMWORD PTR p0$145[rbp] @@ -33866,7 +33886,7 @@ stbi__idct_simd PROC ; COMDAT 015a3 66 0f 7f 85 00 1f 00 00 movdqa XMMWORD PTR p2$147[rbp], xmm0 -; 2149 : dct_interleave8(p1, p3); // a4b4c4d4... +; 2162 : dct_interleave8(p1, p3); // a4b4c4d4... 015ab 66 0f 6f 85 d0 1e 00 00 movdqa xmm0, XMMWORD PTR p1$146[rbp] @@ -33885,9 +33905,9 @@ stbi__idct_simd PROC ; COMDAT 015e3 66 0f 7f 85 30 1f 00 00 movdqa XMMWORD PTR p3$148[rbp], xmm0 -; 2150 : -; 2151 : // store -; 2152 : _mm_storel_epi64((__m128i*) out, p0); out += out_stride; +; 2163 : +; 2164 : // store +; 2165 : _mm_storel_epi64((__m128i*) out, p0); out += out_stride; 015eb 48 8b 85 70 25 00 00 mov rax, QWORD PTR out$[rbp] @@ -33903,7 +33923,7 @@ stbi__idct_simd PROC ; COMDAT 01612 48 89 85 70 25 00 00 mov QWORD PTR out$[rbp], rax -; 2153 : _mm_storel_epi64((__m128i*) out, _mm_shuffle_epi32(p0, 0x4e)); out += out_stride; +; 2166 : _mm_storel_epi64((__m128i*) out, _mm_shuffle_epi32(p0, 0x4e)); out += out_stride; 01619 66 0f 6f 85 a0 1e 00 00 movdqa xmm0, XMMWORD PTR p0$145[rbp] @@ -33920,7 +33940,7 @@ stbi__idct_simd PROC ; COMDAT 01645 48 89 85 70 25 00 00 mov QWORD PTR out$[rbp], rax -; 2154 : _mm_storel_epi64((__m128i*) out, p2); out += out_stride; +; 2167 : _mm_storel_epi64((__m128i*) out, p2); out += out_stride; 0164c 48 8b 85 70 25 00 00 mov rax, QWORD PTR out$[rbp] @@ -33936,7 +33956,7 @@ stbi__idct_simd PROC ; COMDAT 01673 48 89 85 70 25 00 00 mov QWORD PTR out$[rbp], rax -; 2155 : _mm_storel_epi64((__m128i*) out, _mm_shuffle_epi32(p2, 0x4e)); out += out_stride; +; 2168 : _mm_storel_epi64((__m128i*) out, _mm_shuffle_epi32(p2, 0x4e)); out += out_stride; 0167a 66 0f 6f 85 00 1f 00 00 movdqa xmm0, XMMWORD PTR p2$147[rbp] @@ -33953,7 +33973,7 @@ stbi__idct_simd PROC ; COMDAT 016a6 48 89 85 70 25 00 00 mov QWORD PTR out$[rbp], rax -; 2156 : _mm_storel_epi64((__m128i*) out, p1); out += out_stride; +; 2169 : _mm_storel_epi64((__m128i*) out, p1); out += out_stride; 016ad 48 8b 85 70 25 00 00 mov rax, QWORD PTR out$[rbp] @@ -33969,7 +33989,7 @@ stbi__idct_simd PROC ; COMDAT 016d4 48 89 85 70 25 00 00 mov QWORD PTR out$[rbp], rax -; 2157 : _mm_storel_epi64((__m128i*) out, _mm_shuffle_epi32(p1, 0x4e)); out += out_stride; +; 2170 : _mm_storel_epi64((__m128i*) out, _mm_shuffle_epi32(p1, 0x4e)); out += out_stride; 016db 66 0f 6f 85 d0 1e 00 00 movdqa xmm0, XMMWORD PTR p1$146[rbp] @@ -33986,7 +34006,7 @@ stbi__idct_simd PROC ; COMDAT 01707 48 89 85 70 25 00 00 mov QWORD PTR out$[rbp], rax -; 2158 : _mm_storel_epi64((__m128i*) out, p3); out += out_stride; +; 2171 : _mm_storel_epi64((__m128i*) out, p3); out += out_stride; 0170e 48 8b 85 70 25 00 00 mov rax, QWORD PTR out$[rbp] @@ -34002,7 +34022,7 @@ stbi__idct_simd PROC ; COMDAT 01735 48 89 85 70 25 00 00 mov QWORD PTR out$[rbp], rax -; 2159 : _mm_storel_epi64((__m128i*) out, _mm_shuffle_epi32(p3, 0x4e)); +; 2172 : _mm_storel_epi64((__m128i*) out, _mm_shuffle_epi32(p3, 0x4e)); 0173c 66 0f 6f 85 30 1f 00 00 movdqa xmm0, XMMWORD PTR p3$148[rbp] @@ -34011,18 +34031,18 @@ stbi__idct_simd PROC ; COMDAT 00 00 mov rax, QWORD PTR out$[rbp] 01750 66 0f d6 00 movq QWORD PTR [rax], xmm0 -; 2160 : } -; 2161 : -; 2162 : #undef dct_const -; 2163 : #undef dct_rot -; 2164 : #undef dct_widen -; 2165 : #undef dct_wadd -; 2166 : #undef dct_wsub -; 2167 : #undef dct_bfly32o -; 2168 : #undef dct_interleave8 -; 2169 : #undef dct_interleave16 -; 2170 : #undef dct_pass -; 2171 : } +; 2173 : } +; 2174 : +; 2175 : #undef dct_const +; 2176 : #undef dct_rot +; 2177 : #undef dct_widen +; 2178 : #undef dct_wadd +; 2179 : #undef dct_wsub +; 2180 : #undef dct_bfly32o +; 2181 : #undef dct_interleave8 +; 2182 : #undef dct_interleave16 +; 2183 : #undef dct_pass +; 2184 : } 01754 48 8d a5 58 25 00 00 lea rsp, QWORD PTR [rbp+9560] @@ -34073,7 +34093,7 @@ out_stride$ = 1896 data$ = 1904 stbi__idct_block PROC ; COMDAT -; 1935 : { +; 1948 : { 00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 00005 89 54 24 10 mov DWORD PTR [rsp+16], edx @@ -34098,23 +34118,23 @@ stbi__idct_block PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0004d e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 1936 : int i, val[64], * v = val; +; 1949 : int i, val[64], * v = val; 00052 48 8d 45 30 lea rax, QWORD PTR val$[rbp] 00056 48 89 85 48 01 00 00 mov QWORD PTR v$[rbp], rax -; 1937 : stbi_uc* o; -; 1938 : short* d = data; +; 1950 : stbi_uc* o; +; 1951 : short* d = data; 0005d 48 8b 85 70 07 00 00 mov rax, QWORD PTR data$[rbp] 00064 48 89 85 88 01 00 00 mov QWORD PTR d$[rbp], rax -; 1939 : -; 1940 : // columns -; 1941 : for (i = 0; i < 8; ++i, ++d, ++v) { +; 1952 : +; 1953 : // columns +; 1954 : for (i = 0; i < 8; ++i, ++d, ++v) { 0006b c7 45 04 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -34138,9 +34158,9 @@ $LN4@stbi__idct: 000a4 0f 8d 5f 06 00 00 jge $LN3@stbi__idct -; 1942 : // if all zeroes, shortcut -- this avoids dequantizing 0s and IDCTing -; 1943 : if (d[8] == 0 && d[16] == 0 && d[24] == 0 && d[32] == 0 -; 1944 : && d[40] == 0 && d[48] == 0 && d[56] == 0) { +; 1955 : // if all zeroes, shortcut -- this avoids dequantizing 0s and IDCTing +; 1956 : if (d[8] == 0 && d[16] == 0 && d[24] == 0 && d[32] == 0 +; 1957 : && d[40] == 0 && d[48] == 0 && d[56] == 0) { 000aa b8 02 00 00 00 mov eax, 2 000af 48 6b c0 08 imul rax, rax, 8 @@ -34199,11 +34219,11 @@ $LN4@stbi__idct: 00168 0f 85 ea 00 00 00 jne $LN8@stbi__idct -; 1945 : // no shortcut 0 seconds -; 1946 : // (1|2|3|4|5|6|7)==0 0 seconds -; 1947 : // all separate -0.047 seconds -; 1948 : // 1 && 2|3 && 4|5 && 6|7: -0.047 seconds -; 1949 : int dcterm = d[0] * 4; +; 1958 : // no shortcut 0 seconds +; 1959 : // (1|2|3|4|5|6|7)==0 0 seconds +; 1960 : // all separate -0.047 seconds +; 1961 : // 1 && 2|3 && 4|5 && 6|7: -0.047 seconds +; 1962 : int dcterm = d[0] * 4; 0016e b8 02 00 00 00 mov eax, 2 00173 48 6b c0 00 imul rax, rax, 0 @@ -34214,7 +34234,7 @@ $LN4@stbi__idct: 00185 89 85 a4 01 00 00 mov DWORD PTR dcterm$4[rbp], eax -; 1950 : v[0] = v[8] = v[16] = v[24] = v[32] = v[40] = v[48] = v[56] = dcterm; +; 1963 : v[0] = v[8] = v[16] = v[24] = v[32] = v[40] = v[48] = v[56] = dcterm; 0018b b8 04 00 00 00 mov eax, 4 00190 48 6b c0 38 imul rax, rax, 56 ; 00000038H @@ -34273,13 +34293,13 @@ $LN4@stbi__idct: 00 mov edx, DWORD PTR dcterm$4[rbp] 00250 89 14 01 mov DWORD PTR [rcx+rax], edx -; 1951 : } +; 1964 : } 00253 e9 ac 04 00 00 jmp $LN9@stbi__idct $LN8@stbi__idct: -; 1952 : else { -; 1953 : STBI__IDCT_1D(d[0], d[8], d[16], d[24], d[32], d[40], d[48], d[56]) +; 1965 : else { +; 1966 : STBI__IDCT_1D(d[0], d[8], d[16], d[24], d[32], d[40], d[48], d[56]) 00258 b8 02 00 00 00 mov eax, 2 0025d 48 6b c0 10 imul rax, rax, 16 @@ -34546,9 +34566,9 @@ $LN8@stbi__idct: 0058a 89 85 c4 01 00 00 mov DWORD PTR t0$5[rbp], eax -; 1954 : // constants scaled things up by 1<<12; let's bring them back -; 1955 : // down, but keep 2 extra bits of precision -; 1956 : x0 += 512; x1 += 512; x2 += 512; x3 += 512; +; 1967 : // constants scaled things up by 1<<12; let's bring them back +; 1968 : // down, but keep 2 extra bits of precision +; 1969 : x0 += 512; x1 += 512; x2 += 512; x3 += 512; 00590 8b 85 e4 02 00 00 mov eax, DWORD PTR x0$14[rbp] @@ -34571,7 +34591,7 @@ $LN8@stbi__idct: 005ce 89 85 44 03 00 00 mov DWORD PTR x3$17[rbp], eax -; 1957 : v[0] = (x0 + t3) >> 10; +; 1970 : v[0] = (x0 + t3) >> 10; 005d4 8b 85 24 02 00 00 mov eax, DWORD PTR t3$8[rbp] @@ -34586,7 +34606,7 @@ $LN8@stbi__idct: 00 00 mov rdx, QWORD PTR v$[rbp] 005f7 89 04 0a mov DWORD PTR [rdx+rcx], eax -; 1958 : v[56] = (x0 - t3) >> 10; +; 1971 : v[56] = (x0 - t3) >> 10; 005fa 8b 85 24 02 00 00 mov eax, DWORD PTR t3$8[rbp] @@ -34601,7 +34621,7 @@ $LN8@stbi__idct: 00 00 mov rdx, QWORD PTR v$[rbp] 0061d 89 04 0a mov DWORD PTR [rdx+rcx], eax -; 1959 : v[8] = (x1 + t2) >> 10; +; 1972 : v[8] = (x1 + t2) >> 10; 00620 8b 85 04 02 00 00 mov eax, DWORD PTR t2$7[rbp] @@ -34616,7 +34636,7 @@ $LN8@stbi__idct: 00 00 mov rdx, QWORD PTR v$[rbp] 00643 89 04 0a mov DWORD PTR [rdx+rcx], eax -; 1960 : v[48] = (x1 - t2) >> 10; +; 1973 : v[48] = (x1 - t2) >> 10; 00646 8b 85 04 02 00 00 mov eax, DWORD PTR t2$7[rbp] @@ -34631,7 +34651,7 @@ $LN8@stbi__idct: 00 00 mov rdx, QWORD PTR v$[rbp] 00669 89 04 0a mov DWORD PTR [rdx+rcx], eax -; 1961 : v[16] = (x2 + t1) >> 10; +; 1974 : v[16] = (x2 + t1) >> 10; 0066c 8b 85 e4 01 00 00 mov eax, DWORD PTR t1$6[rbp] @@ -34646,7 +34666,7 @@ $LN8@stbi__idct: 00 00 mov rdx, QWORD PTR v$[rbp] 0068f 89 04 0a mov DWORD PTR [rdx+rcx], eax -; 1962 : v[40] = (x2 - t1) >> 10; +; 1975 : v[40] = (x2 - t1) >> 10; 00692 8b 85 e4 01 00 00 mov eax, DWORD PTR t1$6[rbp] @@ -34661,7 +34681,7 @@ $LN8@stbi__idct: 00 00 mov rdx, QWORD PTR v$[rbp] 006b5 89 04 0a mov DWORD PTR [rdx+rcx], eax -; 1963 : v[24] = (x3 + t0) >> 10; +; 1976 : v[24] = (x3 + t0) >> 10; 006b8 8b 85 c4 01 00 00 mov eax, DWORD PTR t0$5[rbp] @@ -34676,7 +34696,7 @@ $LN8@stbi__idct: 00 00 mov rdx, QWORD PTR v$[rbp] 006db 89 04 0a mov DWORD PTR [rdx+rcx], eax -; 1964 : v[32] = (x3 - t0) >> 10; +; 1977 : v[32] = (x3 - t0) >> 10; 006de 8b 85 c4 01 00 00 mov eax, DWORD PTR t0$5[rbp] @@ -34692,14 +34712,14 @@ $LN8@stbi__idct: 00701 89 04 0a mov DWORD PTR [rdx+rcx], eax $LN9@stbi__idct: -; 1965 : } -; 1966 : } +; 1978 : } +; 1979 : } 00704 e9 6b f9 ff ff jmp $LN2@stbi__idct $LN3@stbi__idct: -; 1967 : -; 1968 : for (i = 0, v = val, o = out; i < 8; ++i, v += 8, o += out_stride) { +; 1980 : +; 1981 : for (i = 0, v = val, o = out; i < 8; ++i, v += 8, o += out_stride) { 00709 c7 45 04 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -34733,8 +34753,8 @@ $LN7@stbi__idct: 00764 0f 8d e1 04 00 00 jge $LN6@stbi__idct -; 1969 : // no fast case since the first 1D IDCT spread components out -; 1970 : STBI__IDCT_1D(v[0], v[1], v[2], v[3], v[4], v[5], v[6], v[7]) +; 1982 : // no fast case since the first 1D IDCT spread components out +; 1983 : STBI__IDCT_1D(v[0], v[1], v[2], v[3], v[4], v[5], v[6], v[7]) 0076a b8 04 00 00 00 mov eax, 4 0076f 48 6b c0 02 imul rax, rax, 2 @@ -35001,13 +35021,13 @@ $LN7@stbi__idct: 00a94 89 85 64 03 00 00 mov DWORD PTR t0$18[rbp], eax -; 1971 : // constants scaled things up by 1<<12, plus we had 1<<2 from first -; 1972 : // loop, plus horizontal and vertical each scale by sqrt(8) so together -; 1973 : // we've got an extra 1<<3, so 1<<17 total we need to remove. -; 1974 : // so we want to round that, which means adding 0.5 * 1<<17, -; 1975 : // aka 65536. Also, we'll end up with -128 to 127 that we want -; 1976 : // to encode as 0..255 by adding 128, so we'll add that before the shift -; 1977 : x0 += 65536 + (128 << 17); +; 1984 : // constants scaled things up by 1<<12, plus we had 1<<2 from first +; 1985 : // loop, plus horizontal and vertical each scale by sqrt(8) so together +; 1986 : // we've got an extra 1<<3, so 1<<17 total we need to remove. +; 1987 : // so we want to round that, which means adding 0.5 * 1<<17, +; 1988 : // aka 65536. Also, we'll end up with -128 to 127 that we want +; 1989 : // to encode as 0..255 by adding 128, so we'll add that before the shift +; 1990 : x0 += 65536 + (128 << 17); 00a9a 8b 85 84 04 00 00 mov eax, DWORD PTR x0$27[rbp] @@ -35015,7 +35035,7 @@ $LN7@stbi__idct: 00aa5 89 85 84 04 00 00 mov DWORD PTR x0$27[rbp], eax -; 1978 : x1 += 65536 + (128 << 17); +; 1991 : x1 += 65536 + (128 << 17); 00aab 8b 85 a4 04 00 00 mov eax, DWORD PTR x1$28[rbp] @@ -35023,7 +35043,7 @@ $LN7@stbi__idct: 00ab6 89 85 a4 04 00 00 mov DWORD PTR x1$28[rbp], eax -; 1979 : x2 += 65536 + (128 << 17); +; 1992 : x2 += 65536 + (128 << 17); 00abc 8b 85 c4 04 00 00 mov eax, DWORD PTR x2$29[rbp] @@ -35031,7 +35051,7 @@ $LN7@stbi__idct: 00ac7 89 85 c4 04 00 00 mov DWORD PTR x2$29[rbp], eax -; 1980 : x3 += 65536 + (128 << 17); +; 1993 : x3 += 65536 + (128 << 17); 00acd 8b 85 e4 04 00 00 mov eax, DWORD PTR x3$30[rbp] @@ -35039,9 +35059,9 @@ $LN7@stbi__idct: 00ad8 89 85 e4 04 00 00 mov DWORD PTR x3$30[rbp], eax -; 1981 : // tried computing the shifts into temps, or'ing the temps to see -; 1982 : // if any were out of range, but that was slower -; 1983 : o[0] = stbi__clamp((x0 + t3) >> 17); +; 1994 : // tried computing the shifts into temps, or'ing the temps to see +; 1995 : // if any were out of range, but that was slower +; 1996 : o[0] = stbi__clamp((x0 + t3) >> 17); 00ade 8b 85 c4 03 00 00 mov eax, DWORD PTR t3$21[rbp] @@ -35058,7 +35078,7 @@ $LN7@stbi__idct: 00 00 mov rdx, QWORD PTR o$[rbp] 00b08 88 04 0a mov BYTE PTR [rdx+rcx], al -; 1984 : o[7] = stbi__clamp((x0 - t3) >> 17); +; 1997 : o[7] = stbi__clamp((x0 - t3) >> 17); 00b0b 8b 85 c4 03 00 00 mov eax, DWORD PTR t3$21[rbp] @@ -35075,7 +35095,7 @@ $LN7@stbi__idct: 00 00 mov rdx, QWORD PTR o$[rbp] 00b35 88 04 0a mov BYTE PTR [rdx+rcx], al -; 1985 : o[1] = stbi__clamp((x1 + t2) >> 17); +; 1998 : o[1] = stbi__clamp((x1 + t2) >> 17); 00b38 8b 85 a4 03 00 00 mov eax, DWORD PTR t2$20[rbp] @@ -35092,7 +35112,7 @@ $LN7@stbi__idct: 00 00 mov rdx, QWORD PTR o$[rbp] 00b62 88 04 0a mov BYTE PTR [rdx+rcx], al -; 1986 : o[6] = stbi__clamp((x1 - t2) >> 17); +; 1999 : o[6] = stbi__clamp((x1 - t2) >> 17); 00b65 8b 85 a4 03 00 00 mov eax, DWORD PTR t2$20[rbp] @@ -35109,7 +35129,7 @@ $LN7@stbi__idct: 00 00 mov rdx, QWORD PTR o$[rbp] 00b8f 88 04 0a mov BYTE PTR [rdx+rcx], al -; 1987 : o[2] = stbi__clamp((x2 + t1) >> 17); +; 2000 : o[2] = stbi__clamp((x2 + t1) >> 17); 00b92 8b 85 84 03 00 00 mov eax, DWORD PTR t1$19[rbp] @@ -35126,7 +35146,7 @@ $LN7@stbi__idct: 00 00 mov rdx, QWORD PTR o$[rbp] 00bbc 88 04 0a mov BYTE PTR [rdx+rcx], al -; 1988 : o[5] = stbi__clamp((x2 - t1) >> 17); +; 2001 : o[5] = stbi__clamp((x2 - t1) >> 17); 00bbf 8b 85 84 03 00 00 mov eax, DWORD PTR t1$19[rbp] @@ -35143,7 +35163,7 @@ $LN7@stbi__idct: 00 00 mov rdx, QWORD PTR o$[rbp] 00be9 88 04 0a mov BYTE PTR [rdx+rcx], al -; 1989 : o[3] = stbi__clamp((x3 + t0) >> 17); +; 2002 : o[3] = stbi__clamp((x3 + t0) >> 17); 00bec 8b 85 64 03 00 00 mov eax, DWORD PTR t0$18[rbp] @@ -35160,7 +35180,7 @@ $LN7@stbi__idct: 00 00 mov rdx, QWORD PTR o$[rbp] 00c16 88 04 0a mov BYTE PTR [rdx+rcx], al -; 1990 : o[4] = stbi__clamp((x3 - t0) >> 17); +; 2003 : o[4] = stbi__clamp((x3 - t0) >> 17); 00c19 8b 85 64 03 00 00 mov eax, DWORD PTR t0$18[rbp] @@ -35177,12 +35197,12 @@ $LN7@stbi__idct: 00 00 mov rdx, QWORD PTR o$[rbp] 00c43 88 04 0a mov BYTE PTR [rdx+rcx], al -; 1991 : } +; 2004 : } 00c46 e9 e0 fa ff ff jmp $LN5@stbi__idct $LN6@stbi__idct: -; 1992 : } +; 2005 : } 00c4b 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] 00c4f 48 8d 15 00 00 @@ -35206,7 +35226,7 @@ _TEXT SEGMENT x$ = 224 stbi__clamp PROC ; COMDAT -; 1884 : { +; 1897 : { 00000 89 4c 24 08 mov DWORD PTR [rsp+8], ecx 00004 55 push rbp @@ -35218,14 +35238,14 @@ stbi__clamp PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00019 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 1885 : // trick to use a single test to catch both cases -; 1886 : if ((unsigned int)x > 255) { +; 1898 : // trick to use a single test to catch both cases +; 1899 : if ((unsigned int)x > 255) { 0001e 81 bd e0 00 00 00 ff 00 00 00 cmp DWORD PTR x$[rbp], 255 ; 000000ffH 00028 76 1d jbe SHORT $LN2@stbi__clam -; 1887 : if (x < 0) return 0; +; 1900 : if (x < 0) return 0; 0002a 83 bd e0 00 00 00 00 cmp DWORD PTR x$[rbp], 0 @@ -35234,7 +35254,7 @@ stbi__clamp PROC ; COMDAT 00035 eb 17 jmp SHORT $LN1@stbi__clam $LN3@stbi__clam: -; 1888 : if (x > 255) return 255; +; 1901 : if (x > 255) return 255; 00037 81 bd e0 00 00 00 ff 00 00 00 cmp DWORD PTR x$[rbp], 255 ; 000000ffH @@ -35244,14 +35264,14 @@ $LN3@stbi__clam: $LN4@stbi__clam: $LN2@stbi__clam: -; 1889 : } -; 1890 : return (stbi_uc)x; +; 1902 : } +; 1903 : return (stbi_uc)x; 00047 0f b6 85 e0 00 00 00 movzx eax, BYTE PTR x$[rbp] $LN1@stbi__clam: -; 1891 : } +; 1904 : } 0004e 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] @@ -35287,7 +35307,7 @@ hac$ = 656 fac$ = 664 stbi__jpeg_decode_block_prog_ac PROC ; COMDAT -; 1756 : { +; 1769 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -35302,8 +35322,8 @@ stbi__jpeg_decode_block_prog_ac PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 1757 : int k; -; 1758 : if (j->spec_start == 0) return stbi__err("can't merge dc and ac", "Corrupt JPEG"); +; 1770 : int k; +; 1771 : if (j->spec_start == 0) return stbi__err("can't merge dc and ac", "Corrupt JPEG"); 0002e 48 8b 85 80 02 00 00 mov rax, QWORD PTR j$[rbp] @@ -35316,8 +35336,8 @@ stbi__jpeg_decode_block_prog_ac PROC ; COMDAT 0004a e9 74 06 00 00 jmp $LN1@stbi__jpeg $LN13@stbi__jpeg: -; 1759 : -; 1760 : if (j->succ_high == 0) { +; 1772 : +; 1773 : if (j->succ_high == 0) { 0004f 48 8b 85 80 02 00 00 mov rax, QWORD PTR j$[rbp] @@ -35326,7 +35346,7 @@ $LN13@stbi__jpeg: 0005d 0f 85 f3 02 00 00 jne $LN14@stbi__jpeg -; 1761 : int shift = j->succ_low; +; 1774 : int shift = j->succ_low; 00063 48 8b 85 80 02 00 00 mov rax, QWORD PTR j$[rbp] @@ -35334,8 +35354,8 @@ $LN13@stbi__jpeg: 00 mov eax, DWORD PTR [rax+18496] 00070 89 45 24 mov DWORD PTR shift$1[rbp], eax -; 1762 : -; 1763 : if (j->eob_run) { +; 1775 : +; 1776 : if (j->eob_run) { 00073 48 8b 85 80 02 00 00 mov rax, QWORD PTR j$[rbp] @@ -35343,7 +35363,7 @@ $LN13@stbi__jpeg: 00 00 cmp DWORD PTR [rax+18500], 0 00081 74 26 je SHORT $LN16@stbi__jpeg -; 1764 : --j->eob_run; +; 1777 : --j->eob_run; 00083 48 8b 85 80 02 00 00 mov rax, QWORD PTR j$[rbp] @@ -35355,15 +35375,15 @@ $LN13@stbi__jpeg: 00099 89 81 44 48 00 00 mov DWORD PTR [rcx+18500], eax -; 1765 : return 1; +; 1778 : return 1; 0009f b8 01 00 00 00 mov eax, 1 000a4 e9 1a 06 00 00 jmp $LN1@stbi__jpeg $LN16@stbi__jpeg: -; 1766 : } -; 1767 : -; 1768 : k = j->spec_start; +; 1779 : } +; 1780 : +; 1781 : k = j->spec_start; 000a9 48 8b 85 80 02 00 00 mov rax, QWORD PTR j$[rbp] @@ -35372,10 +35392,10 @@ $LN16@stbi__jpeg: 000b6 89 45 04 mov DWORD PTR k$[rbp], eax $LN4@stbi__jpeg: -; 1769 : do { -; 1770 : unsigned int zig; -; 1771 : int c, r, s; -; 1772 : if (j->code_bits < 16) stbi__grow_buffer_unsafe(j); +; 1782 : do { +; 1783 : unsigned int zig; +; 1784 : int c, r, s; +; 1785 : if (j->code_bits < 16) stbi__grow_buffer_unsafe(j); 000b9 48 8b 85 80 02 00 00 mov rax, QWORD PTR j$[rbp] @@ -35387,7 +35407,7 @@ $LN4@stbi__jpeg: 000d0 e8 00 00 00 00 call stbi__grow_buffer_unsafe $LN17@stbi__jpeg: -; 1773 : c = (j->code_buffer >> (32 - FAST_BITS)) & ((1 << FAST_BITS) - 1); +; 1786 : c = (j->code_buffer >> (32 - FAST_BITS)) & ((1 << FAST_BITS) - 1); 000d5 48 8b 85 80 02 00 00 mov rax, QWORD PTR j$[rbp] @@ -35397,7 +35417,7 @@ $LN17@stbi__jpeg: 000e5 25 ff 01 00 00 and eax, 511 ; 000001ffH 000ea 89 45 64 mov DWORD PTR c$3[rbp], eax -; 1774 : r = fac[c]; +; 1787 : r = fac[c]; 000ed 48 63 45 64 movsxd rax, DWORD PTR c$3[rbp] 000f1 48 8b 8d 98 02 @@ -35406,14 +35426,14 @@ $LN17@stbi__jpeg: 000fc 89 85 84 00 00 00 mov DWORD PTR r$4[rbp], eax -; 1775 : if (r) { // fast-AC path +; 1788 : if (r) { // fast-AC path 00102 83 bd 84 00 00 00 00 cmp DWORD PTR r$4[rbp], 0 00109 0f 84 e5 00 00 00 je $LN18@stbi__jpeg -; 1776 : k += (r >> 4) & 15; // run +; 1789 : k += (r >> 4) & 15; // run 0010f 8b 85 84 00 00 00 mov eax, DWORD PTR r$4[rbp] @@ -35424,7 +35444,7 @@ $LN17@stbi__jpeg: 00120 8b c1 mov eax, ecx 00122 89 45 04 mov DWORD PTR k$[rbp], eax -; 1777 : s = r & 15; // combined length +; 1790 : s = r & 15; // combined length 00125 8b 85 84 00 00 00 mov eax, DWORD PTR r$4[rbp] @@ -35432,7 +35452,7 @@ $LN17@stbi__jpeg: 0012e 89 85 a4 00 00 00 mov DWORD PTR s$5[rbp], eax -; 1778 : if (s > j->code_bits) return stbi__err("bad huffman code", "Combined length longer than code bits available"); +; 1791 : if (s > j->code_bits) return stbi__err("bad huffman code", "Combined length longer than code bits available"); 00134 48 8b 85 80 02 00 00 mov rax, QWORD PTR j$[rbp] @@ -35447,7 +35467,7 @@ $LN17@stbi__jpeg: 00155 e9 69 05 00 00 jmp $LN1@stbi__jpeg $LN20@stbi__jpeg: -; 1779 : j->code_buffer <<= s; +; 1792 : j->code_buffer <<= s; 0015a 8b 85 a4 00 00 00 mov eax, DWORD PTR s$5[rbp] @@ -35466,7 +35486,7 @@ $LN20@stbi__jpeg: 00187 89 81 20 48 00 00 mov DWORD PTR [rcx+18464], eax -; 1780 : j->code_bits -= s; +; 1793 : j->code_bits -= s; 0018d 48 8b 85 80 02 00 00 mov rax, QWORD PTR j$[rbp] @@ -35480,7 +35500,7 @@ $LN20@stbi__jpeg: 001a9 89 81 24 48 00 00 mov DWORD PTR [rcx+18468], eax -; 1781 : zig = stbi__jpeg_dezigzag[k++]; +; 1794 : zig = stbi__jpeg_dezigzag[k++]; 001af 48 63 45 04 movsxd rax, DWORD PTR k$[rbp] 001b3 48 8d 0d 00 00 @@ -35491,7 +35511,7 @@ $LN20@stbi__jpeg: 001c4 ff c0 inc eax 001c6 89 45 04 mov DWORD PTR k$[rbp], eax -; 1782 : data[zig] = (short)((r >> 8) * (1 << shift)); +; 1795 : data[zig] = (short)((r >> 8) * (1 << shift)); 001c9 8b 85 84 00 00 00 mov eax, DWORD PTR r$4[rbp] @@ -35506,13 +35526,13 @@ $LN20@stbi__jpeg: 00 00 mov rdx, QWORD PTR data$[rbp] 001eb 66 89 04 4a mov WORD PTR [rdx+rcx*2], ax -; 1783 : } +; 1796 : } 001ef e9 47 01 00 00 jmp $LN19@stbi__jpeg $LN18@stbi__jpeg: -; 1784 : else { -; 1785 : int rs = stbi__jpeg_huff_decode(j, hac); +; 1797 : else { +; 1798 : int rs = stbi__jpeg_huff_decode(j, hac); 001f4 48 8b 95 90 02 00 00 mov rdx, QWORD PTR hac$[rbp] @@ -35522,7 +35542,7 @@ $LN18@stbi__jpeg: 00207 89 85 c4 00 00 00 mov DWORD PTR rs$6[rbp], eax -; 1786 : if (rs < 0) return stbi__err("bad huffman code", "Corrupt JPEG"); +; 1799 : if (rs < 0) return stbi__err("bad huffman code", "Corrupt JPEG"); 0020d 83 bd c4 00 00 00 00 cmp DWORD PTR rs$6[rbp], 0 @@ -35533,7 +35553,7 @@ $LN18@stbi__jpeg: 00222 e9 9c 04 00 00 jmp $LN1@stbi__jpeg $LN21@stbi__jpeg: -; 1787 : s = rs & 15; +; 1800 : s = rs & 15; 00227 8b 85 c4 00 00 00 mov eax, DWORD PTR rs$6[rbp] @@ -35541,7 +35561,7 @@ $LN21@stbi__jpeg: 00230 89 85 a4 00 00 00 mov DWORD PTR s$5[rbp], eax -; 1788 : r = rs >> 4; +; 1801 : r = rs >> 4; 00236 8b 85 c4 00 00 00 mov eax, DWORD PTR rs$6[rbp] @@ -35549,20 +35569,20 @@ $LN21@stbi__jpeg: 0023f 89 85 84 00 00 00 mov DWORD PTR r$4[rbp], eax -; 1789 : if (s == 0) { +; 1802 : if (s == 0) { 00245 83 bd a4 00 00 00 00 cmp DWORD PTR s$5[rbp], 0 0024c 0f 85 90 00 00 00 jne $LN22@stbi__jpeg -; 1790 : if (r < 15) { +; 1803 : if (r < 15) { 00252 83 bd 84 00 00 00 0f cmp DWORD PTR r$4[rbp], 15 00259 7d 7c jge SHORT $LN24@stbi__jpeg -; 1791 : j->eob_run = (1 << r); +; 1804 : j->eob_run = (1 << r); 0025b 8b 85 84 00 00 00 mov eax, DWORD PTR r$4[rbp] @@ -35578,13 +35598,13 @@ $LN21@stbi__jpeg: 0027e 89 81 44 48 00 00 mov DWORD PTR [rcx+18500], eax -; 1792 : if (r) +; 1805 : if (r) 00284 83 bd 84 00 00 00 00 cmp DWORD PTR r$4[rbp], 0 0028b 74 2c je SHORT $LN25@stbi__jpeg -; 1793 : j->eob_run += stbi__jpeg_get_bits(j, r); +; 1806 : j->eob_run += stbi__jpeg_get_bits(j, r); 0028d 8b 95 84 00 00 00 mov edx, DWORD PTR r$4[rbp] @@ -35601,7 +35621,7 @@ $LN21@stbi__jpeg: 00 mov DWORD PTR [rcx+18500], eax $LN25@stbi__jpeg: -; 1794 : --j->eob_run; +; 1807 : --j->eob_run; 002b9 48 8b 85 80 02 00 00 mov rax, QWORD PTR j$[rbp] @@ -35613,25 +35633,25 @@ $LN25@stbi__jpeg: 002cf 89 81 44 48 00 00 mov DWORD PTR [rcx+18500], eax -; 1795 : break; +; 1808 : break; 002d5 eb 7a jmp SHORT $LN3@stbi__jpeg $LN24@stbi__jpeg: -; 1796 : } -; 1797 : k += 16; +; 1809 : } +; 1810 : k += 16; 002d7 8b 45 04 mov eax, DWORD PTR k$[rbp] 002da 83 c0 10 add eax, 16 002dd 89 45 04 mov DWORD PTR k$[rbp], eax -; 1798 : } +; 1811 : } 002e0 eb 59 jmp SHORT $LN23@stbi__jpeg $LN22@stbi__jpeg: -; 1799 : else { -; 1800 : k += r; +; 1812 : else { +; 1813 : k += r; 002e2 8b 85 84 00 00 00 mov eax, DWORD PTR r$4[rbp] @@ -35640,7 +35660,7 @@ $LN22@stbi__jpeg: 002ed 8b c1 mov eax, ecx 002ef 89 45 04 mov DWORD PTR k$[rbp], eax -; 1801 : zig = stbi__jpeg_dezigzag[k++]; +; 1814 : zig = stbi__jpeg_dezigzag[k++]; 002f2 48 63 45 04 movsxd rax, DWORD PTR k$[rbp] 002f6 48 8d 0d 00 00 @@ -35651,7 +35671,7 @@ $LN22@stbi__jpeg: 00307 ff c0 inc eax 00309 89 45 04 mov DWORD PTR k$[rbp], eax -; 1802 : data[zig] = (short)(stbi__extend_receive(j, s) * (1 << shift)); +; 1815 : data[zig] = (short)(stbi__extend_receive(j, s) * (1 << shift)); 0030c 8b 95 a4 00 00 00 mov edx, DWORD PTR s$5[rbp] @@ -35670,9 +35690,9 @@ $LN22@stbi__jpeg: $LN23@stbi__jpeg: $LN19@stbi__jpeg: -; 1803 : } -; 1804 : } -; 1805 : } while (k <= j->spec_end); +; 1816 : } +; 1817 : } +; 1818 : } while (k <= j->spec_end); 0033b 48 8b 85 80 02 00 00 mov rax, QWORD PTR j$[rbp] @@ -35683,15 +35703,15 @@ $LN19@stbi__jpeg: ff jle $LN4@stbi__jpeg $LN3@stbi__jpeg: -; 1806 : } +; 1819 : } 00351 e9 68 03 00 00 jmp $LN15@stbi__jpeg $LN14@stbi__jpeg: -; 1807 : else { -; 1808 : // refinement scan for these AC coefficients -; 1809 : -; 1810 : short bit = (short)(1 << j->succ_low); +; 1820 : else { +; 1821 : // refinement scan for these AC coefficients +; 1822 : +; 1823 : short bit = (short)(1 << j->succ_low); 00356 48 8b 85 80 02 00 00 mov rax, QWORD PTR j$[rbp] @@ -35707,8 +35727,8 @@ $LN14@stbi__jpeg: 00379 66 89 85 e4 00 00 00 mov WORD PTR bit$7[rbp], ax -; 1811 : -; 1812 : if (j->eob_run) { +; 1824 : +; 1825 : if (j->eob_run) { 00380 48 8b 85 80 02 00 00 mov rax, QWORD PTR j$[rbp] @@ -35717,7 +35737,7 @@ $LN14@stbi__jpeg: 0038e 0f 84 fa 00 00 00 je $LN26@stbi__jpeg -; 1813 : --j->eob_run; +; 1826 : --j->eob_run; 00394 48 8b 85 80 02 00 00 mov rax, QWORD PTR j$[rbp] @@ -35729,7 +35749,7 @@ $LN14@stbi__jpeg: 003aa 89 81 44 48 00 00 mov DWORD PTR [rcx+18500], eax -; 1814 : for (k = j->spec_start; k <= j->spec_end; ++k) { +; 1827 : for (k = j->spec_start; k <= j->spec_end; ++k) { 003b0 48 8b 85 80 02 00 00 mov rax, QWORD PTR j$[rbp] @@ -35750,7 +35770,7 @@ $LN7@stbi__jpeg: 003da 0f 8f a9 00 00 00 jg $LN6@stbi__jpeg -; 1815 : short* p = &data[stbi__jpeg_dezigzag[k]]; +; 1828 : short* p = &data[stbi__jpeg_dezigzag[k]]; 003e0 48 63 45 04 movsxd rax, DWORD PTR k$[rbp] 003e4 48 8d 0d 00 00 @@ -35762,7 +35782,7 @@ $LN7@stbi__jpeg: 003fa 48 89 85 08 01 00 00 mov QWORD PTR p$8[rbp], rax -; 1816 : if (*p != 0) +; 1829 : if (*p != 0) 00401 48 8b 85 08 01 00 00 mov rax, QWORD PTR p$8[rbp] @@ -35770,7 +35790,7 @@ $LN7@stbi__jpeg: 0040b 85 c0 test eax, eax 0040d 74 75 je SHORT $LN28@stbi__jpeg -; 1817 : if (stbi__jpeg_get_bit(j)) +; 1830 : if (stbi__jpeg_get_bit(j)) 0040f 48 8b 8d 80 02 00 00 mov rcx, QWORD PTR j$[rbp] @@ -35778,7 +35798,7 @@ $LN7@stbi__jpeg: 0041b 85 c0 test eax, eax 0041d 74 65 je SHORT $LN29@stbi__jpeg -; 1818 : if ((*p & bit) == 0) { +; 1831 : if ((*p & bit) == 0) { 0041f 48 8b 85 08 01 00 00 mov rax, QWORD PTR p$8[rbp] @@ -35789,7 +35809,7 @@ $LN7@stbi__jpeg: 00432 85 c0 test eax, eax 00434 75 4e jne SHORT $LN30@stbi__jpeg -; 1819 : if (*p > 0) +; 1832 : if (*p > 0) 00436 48 8b 85 08 01 00 00 mov rax, QWORD PTR p$8[rbp] @@ -35797,7 +35817,7 @@ $LN7@stbi__jpeg: 00440 85 c0 test eax, eax 00442 7e 21 jle SHORT $LN31@stbi__jpeg -; 1820 : *p += bit; +; 1833 : *p += bit; 00444 0f bf 85 e4 00 00 00 movsx eax, WORD PTR bit$7[rbp] @@ -35812,8 +35832,8 @@ $LN7@stbi__jpeg: 00463 eb 1f jmp SHORT $LN32@stbi__jpeg $LN31@stbi__jpeg: -; 1821 : else -; 1822 : *p -= bit; +; 1834 : else +; 1835 : *p -= bit; 00465 0f bf 85 e4 00 00 00 movsx eax, WORD PTR bit$7[rbp] @@ -35830,19 +35850,19 @@ $LN30@stbi__jpeg: $LN29@stbi__jpeg: $LN28@stbi__jpeg: -; 1823 : } -; 1824 : } +; 1836 : } +; 1837 : } 00484 e9 39 ff ff ff jmp $LN5@stbi__jpeg $LN6@stbi__jpeg: -; 1825 : } +; 1838 : } 00489 e9 30 02 00 00 jmp $LN27@stbi__jpeg $LN26@stbi__jpeg: -; 1826 : else { -; 1827 : k = j->spec_start; +; 1839 : else { +; 1840 : k = j->spec_start; 0048e 48 8b 85 80 02 00 00 mov rax, QWORD PTR j$[rbp] @@ -35851,9 +35871,9 @@ $LN26@stbi__jpeg: 0049b 89 45 04 mov DWORD PTR k$[rbp], eax $LN10@stbi__jpeg: -; 1828 : do { -; 1829 : int r, s; -; 1830 : int rs = stbi__jpeg_huff_decode(j, hac); // @OPTIMIZE see if we can use the fast path here, advance-by-r is so slow, eh +; 1841 : do { +; 1842 : int r, s; +; 1843 : int rs = stbi__jpeg_huff_decode(j, hac); // @OPTIMIZE see if we can use the fast path here, advance-by-r is so slow, eh 0049e 48 8b 95 90 02 00 00 mov rdx, QWORD PTR hac$[rbp] @@ -35863,7 +35883,7 @@ $LN10@stbi__jpeg: 004b1 89 85 64 01 00 00 mov DWORD PTR rs$11[rbp], eax -; 1831 : if (rs < 0) return stbi__err("bad huffman code", "Corrupt JPEG"); +; 1844 : if (rs < 0) return stbi__err("bad huffman code", "Corrupt JPEG"); 004b7 83 bd 64 01 00 00 00 cmp DWORD PTR rs$11[rbp], 0 @@ -35874,7 +35894,7 @@ $LN10@stbi__jpeg: 004cc e9 f2 01 00 00 jmp $LN1@stbi__jpeg $LN33@stbi__jpeg: -; 1832 : s = rs & 15; +; 1845 : s = rs & 15; 004d1 8b 85 64 01 00 00 mov eax, DWORD PTR rs$11[rbp] @@ -35882,7 +35902,7 @@ $LN33@stbi__jpeg: 004da 89 85 44 01 00 00 mov DWORD PTR s$10[rbp], eax -; 1833 : r = rs >> 4; +; 1846 : r = rs >> 4; 004e0 8b 85 64 01 00 00 mov eax, DWORD PTR rs$11[rbp] @@ -35890,19 +35910,19 @@ $LN33@stbi__jpeg: 004e9 89 85 24 01 00 00 mov DWORD PTR r$9[rbp], eax -; 1834 : if (s == 0) { +; 1847 : if (s == 0) { 004ef 83 bd 44 01 00 00 00 cmp DWORD PTR s$10[rbp], 0 004f6 75 75 jne SHORT $LN34@stbi__jpeg -; 1835 : if (r < 15) { +; 1848 : if (r < 15) { 004f8 83 bd 24 01 00 00 0f cmp DWORD PTR r$9[rbp], 15 004ff 7d 6a jge SHORT $LN36@stbi__jpeg -; 1836 : j->eob_run = (1 << r) - 1; +; 1849 : j->eob_run = (1 << r) - 1; 00501 8b 85 24 01 00 00 mov eax, DWORD PTR r$9[rbp] @@ -35919,13 +35939,13 @@ $LN33@stbi__jpeg: 00526 89 81 44 48 00 00 mov DWORD PTR [rcx+18500], eax -; 1837 : if (r) +; 1850 : if (r) 0052c 83 bd 24 01 00 00 00 cmp DWORD PTR r$9[rbp], 0 00533 74 2c je SHORT $LN38@stbi__jpeg -; 1838 : j->eob_run += stbi__jpeg_get_bits(j, r); +; 1851 : j->eob_run += stbi__jpeg_get_bits(j, r); 00535 8b 95 24 01 00 00 mov edx, DWORD PTR r$9[rbp] @@ -35942,25 +35962,25 @@ $LN33@stbi__jpeg: 00 mov DWORD PTR [rcx+18500], eax $LN38@stbi__jpeg: -; 1839 : r = 64; // force end of block +; 1852 : r = 64; // force end of block 00561 c7 85 24 01 00 00 40 00 00 00 mov DWORD PTR r$9[rbp], 64 ; 00000040H $LN36@stbi__jpeg: -; 1840 : } -; 1841 : else { -; 1842 : // r=15 s=0 should write 16 0s, so we just do -; 1843 : // a run of 15 0s and then write s (which is 0), -; 1844 : // so we don't have to do anything special here -; 1845 : } -; 1846 : } +; 1853 : } +; 1854 : else { +; 1855 : // r=15 s=0 should write 16 0s, so we just do +; 1856 : // a run of 15 0s and then write s (which is 0), +; 1857 : // so we don't have to do anything special here +; 1858 : } +; 1859 : } 0056b eb 48 jmp SHORT $LN35@stbi__jpeg $LN34@stbi__jpeg: -; 1847 : else { -; 1848 : if (s != 1) return stbi__err("bad huffman code", "Corrupt JPEG"); +; 1860 : else { +; 1861 : if (s != 1) return stbi__err("bad huffman code", "Corrupt JPEG"); 0056d 83 bd 44 01 00 00 01 cmp DWORD PTR s$10[rbp], 1 @@ -35971,8 +35991,8 @@ $LN34@stbi__jpeg: 00582 e9 3c 01 00 00 jmp $LN1@stbi__jpeg $LN39@stbi__jpeg: -; 1849 : // sign bit -; 1850 : if (stbi__jpeg_get_bit(j)) +; 1862 : // sign bit +; 1863 : if (stbi__jpeg_get_bit(j)) 00587 48 8b 8d 80 02 00 00 mov rcx, QWORD PTR j$[rbp] @@ -35980,7 +36000,7 @@ $LN39@stbi__jpeg: 00593 85 c0 test eax, eax 00595 74 0f je SHORT $LN40@stbi__jpeg -; 1851 : s = bit; +; 1864 : s = bit; 00597 0f bf 85 e4 00 00 00 movsx eax, WORD PTR bit$7[rbp] @@ -35989,8 +36009,8 @@ $LN39@stbi__jpeg: 005a4 eb 0f jmp SHORT $LN41@stbi__jpeg $LN40@stbi__jpeg: -; 1852 : else -; 1853 : s = -bit; +; 1865 : else +; 1866 : s = -bit; 005a6 0f bf 85 e4 00 00 00 movsx eax, WORD PTR bit$7[rbp] @@ -36001,10 +36021,10 @@ $LN41@stbi__jpeg: $LN35@stbi__jpeg: $LN11@stbi__jpeg: -; 1854 : } -; 1855 : -; 1856 : // advance by r -; 1857 : while (k <= j->spec_end) { +; 1867 : } +; 1868 : +; 1869 : // advance by r +; 1870 : while (k <= j->spec_end) { 005b5 48 8b 85 80 02 00 00 mov rax, QWORD PTR j$[rbp] @@ -36014,7 +36034,7 @@ $LN11@stbi__jpeg: 005c5 0f 8f dd 00 00 00 jg $LN12@stbi__jpeg -; 1858 : short* p = &data[stbi__jpeg_dezigzag[k++]]; +; 1871 : short* p = &data[stbi__jpeg_dezigzag[k++]]; 005cb 48 63 45 04 movsxd rax, DWORD PTR k$[rbp] 005cf 48 8d 0d 00 00 @@ -36029,7 +36049,7 @@ $LN11@stbi__jpeg: 005ef ff c0 inc eax 005f1 89 45 04 mov DWORD PTR k$[rbp], eax -; 1859 : if (*p != 0) { +; 1872 : if (*p != 0) { 005f4 48 8b 85 88 01 00 00 mov rax, QWORD PTR p$12[rbp] @@ -36037,7 +36057,7 @@ $LN11@stbi__jpeg: 005fe 85 c0 test eax, eax 00600 74 77 je SHORT $LN42@stbi__jpeg -; 1860 : if (stbi__jpeg_get_bit(j)) +; 1873 : if (stbi__jpeg_get_bit(j)) 00602 48 8b 8d 80 02 00 00 mov rcx, QWORD PTR j$[rbp] @@ -36045,7 +36065,7 @@ $LN11@stbi__jpeg: 0060e 85 c0 test eax, eax 00610 74 65 je SHORT $LN44@stbi__jpeg -; 1861 : if ((*p & bit) == 0) { +; 1874 : if ((*p & bit) == 0) { 00612 48 8b 85 88 01 00 00 mov rax, QWORD PTR p$12[rbp] @@ -36056,7 +36076,7 @@ $LN11@stbi__jpeg: 00625 85 c0 test eax, eax 00627 75 4e jne SHORT $LN45@stbi__jpeg -; 1862 : if (*p > 0) +; 1875 : if (*p > 0) 00629 48 8b 85 88 01 00 00 mov rax, QWORD PTR p$12[rbp] @@ -36064,7 +36084,7 @@ $LN11@stbi__jpeg: 00633 85 c0 test eax, eax 00635 7e 21 jle SHORT $LN46@stbi__jpeg -; 1863 : *p += bit; +; 1876 : *p += bit; 00637 0f bf 85 e4 00 00 00 movsx eax, WORD PTR bit$7[rbp] @@ -36079,8 +36099,8 @@ $LN11@stbi__jpeg: 00656 eb 1f jmp SHORT $LN47@stbi__jpeg $LN46@stbi__jpeg: -; 1864 : else -; 1865 : *p -= bit; +; 1877 : else +; 1878 : *p -= bit; 00658 0f bf 85 e4 00 00 00 movsx eax, WORD PTR bit$7[rbp] @@ -36096,20 +36116,20 @@ $LN47@stbi__jpeg: $LN45@stbi__jpeg: $LN44@stbi__jpeg: -; 1866 : } -; 1867 : } +; 1879 : } +; 1880 : } 00677 eb 2a jmp SHORT $LN43@stbi__jpeg $LN42@stbi__jpeg: -; 1868 : else { -; 1869 : if (r == 0) { +; 1881 : else { +; 1882 : if (r == 0) { 00679 83 bd 24 01 00 00 00 cmp DWORD PTR r$9[rbp], 0 00680 75 13 jne SHORT $LN48@stbi__jpeg -; 1870 : *p = (short)s; +; 1883 : *p = (short)s; 00682 48 8b 85 88 01 00 00 mov rax, QWORD PTR p$12[rbp] @@ -36117,13 +36137,13 @@ $LN42@stbi__jpeg: 00 00 movzx ecx, WORD PTR s$10[rbp] 00690 66 89 08 mov WORD PTR [rax], cx -; 1871 : break; +; 1884 : break; 00693 eb 13 jmp SHORT $LN12@stbi__jpeg $LN48@stbi__jpeg: -; 1872 : } -; 1873 : --r; +; 1885 : } +; 1886 : --r; 00695 8b 85 24 01 00 00 mov eax, DWORD PTR r$9[rbp] @@ -36132,13 +36152,13 @@ $LN48@stbi__jpeg: 00 mov DWORD PTR r$9[rbp], eax $LN43@stbi__jpeg: -; 1874 : } -; 1875 : } +; 1887 : } +; 1888 : } 006a3 e9 0d ff ff ff jmp $LN11@stbi__jpeg $LN12@stbi__jpeg: -; 1876 : } while (k <= j->spec_end); +; 1889 : } while (k <= j->spec_end); 006a8 48 8b 85 80 02 00 00 mov rax, QWORD PTR j$[rbp] @@ -36150,14 +36170,14 @@ $LN12@stbi__jpeg: $LN27@stbi__jpeg: $LN15@stbi__jpeg: -; 1877 : } -; 1878 : } -; 1879 : return 1; +; 1890 : } +; 1891 : } +; 1892 : return 1; 006be b8 01 00 00 00 mov eax, 1 $LN1@stbi__jpeg: -; 1880 : } +; 1893 : } 006c3 48 8d a5 68 02 00 00 lea rsp, QWORD PTR [rbp+616] @@ -36182,7 +36202,7 @@ hdc$ = 336 b$ = 344 stbi__jpeg_decode_block_prog_dc PROC ; COMDAT -; 1725 : { +; 1738 : { 00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -36197,9 +36217,9 @@ stbi__jpeg_decode_block_prog_dc PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 1726 : int diff, dc; -; 1727 : int t; -; 1728 : if (j->spec_end != 0) return stbi__err("can't merge dc and ac", "Corrupt JPEG"); +; 1739 : int diff, dc; +; 1740 : int t; +; 1741 : if (j->spec_end != 0) return stbi__err("can't merge dc and ac", "Corrupt JPEG"); 0002e 48 8b 85 40 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -36212,8 +36232,8 @@ stbi__jpeg_decode_block_prog_dc PROC ; COMDAT 0004a e9 f5 01 00 00 jmp $LN1@stbi__jpeg $LN2@stbi__jpeg: -; 1729 : -; 1730 : if (j->code_bits < 16) stbi__grow_buffer_unsafe(j); +; 1742 : +; 1743 : if (j->code_bits < 16) stbi__grow_buffer_unsafe(j); 0004f 48 8b 85 40 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -36225,8 +36245,8 @@ $LN2@stbi__jpeg: 00066 e8 00 00 00 00 call stbi__grow_buffer_unsafe $LN3@stbi__jpeg: -; 1731 : -; 1732 : if (j->succ_high == 0) { +; 1744 : +; 1745 : if (j->succ_high == 0) { 0006b 48 8b 85 40 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -36235,8 +36255,8 @@ $LN3@stbi__jpeg: 00079 0f 85 6d 01 00 00 jne $LN4@stbi__jpeg -; 1733 : // first scan for DC coefficient, must be first -; 1734 : memset(data, 0, 64 * sizeof(data[0])); // 0 all the ac values now +; 1746 : // first scan for DC coefficient, must be first +; 1747 : memset(data, 0, 64 * sizeof(data[0])); // 0 all the ac values now 0007f 41 b8 80 00 00 00 mov r8d, 128 ; 00000080H @@ -36245,7 +36265,7 @@ $LN3@stbi__jpeg: 00 00 mov rcx, QWORD PTR data$[rbp] 0008e e8 00 00 00 00 call memset -; 1735 : t = stbi__jpeg_huff_decode(j, hdc); +; 1748 : t = stbi__jpeg_huff_decode(j, hdc); 00093 48 8b 95 50 01 00 00 mov rdx, QWORD PTR hdc$[rbp] @@ -36254,7 +36274,7 @@ $LN3@stbi__jpeg: 000a1 e8 00 00 00 00 call stbi__jpeg_huff_decode 000a6 89 45 44 mov DWORD PTR t$[rbp], eax -; 1736 : if (t < 0 || t > 15) return stbi__err("can't merge dc and ac", "Corrupt JPEG"); +; 1749 : if (t < 0 || t > 15) return stbi__err("can't merge dc and ac", "Corrupt JPEG"); 000a9 83 7d 44 00 cmp DWORD PTR t$[rbp], 0 000ad 7c 06 jl SHORT $LN7@stbi__jpeg @@ -36267,7 +36287,7 @@ $LN7@stbi__jpeg: 000c1 e9 7e 01 00 00 jmp $LN1@stbi__jpeg $LN6@stbi__jpeg: -; 1737 : diff = t ? stbi__extend_receive(j, t) : 0; +; 1750 : diff = t ? stbi__extend_receive(j, t) : 0; 000c6 83 7d 44 00 cmp DWORD PTR t$[rbp], 0 000ca 74 17 je SHORT $LN12@stbi__jpeg @@ -36286,8 +36306,8 @@ $LN13@stbi__jpeg: 00 mov eax, DWORD PTR tv87[rbp] 000f3 89 45 04 mov DWORD PTR diff$[rbp], eax -; 1738 : -; 1739 : if (!stbi__addints_valid(j->img_comp[b].dc_pred, diff)) return stbi__err("bad delta", "Corrupt JPEG"); +; 1751 : +; 1752 : if (!stbi__addints_valid(j->img_comp[b].dc_pred, diff)) return stbi__err("bad delta", "Corrupt JPEG"); 000f6 48 63 85 58 01 00 00 movsxd rax, DWORD PTR b$[rbp] @@ -36306,7 +36326,7 @@ $LN13@stbi__jpeg: 00127 e9 18 01 00 00 jmp $LN1@stbi__jpeg $LN8@stbi__jpeg: -; 1740 : dc = j->img_comp[b].dc_pred + diff; +; 1753 : dc = j->img_comp[b].dc_pred + diff; 0012c 48 63 85 58 01 00 00 movsxd rax, DWORD PTR b$[rbp] @@ -36318,7 +36338,7 @@ $LN8@stbi__jpeg: 00145 03 45 04 add eax, DWORD PTR diff$[rbp] 00148 89 45 24 mov DWORD PTR dc$[rbp], eax -; 1741 : j->img_comp[b].dc_pred = dc; +; 1754 : j->img_comp[b].dc_pred = dc; 0014b 48 63 85 58 01 00 00 movsxd rax, DWORD PTR b$[rbp] @@ -36329,7 +36349,7 @@ $LN8@stbi__jpeg: 00160 89 94 01 b8 46 00 00 mov DWORD PTR [rcx+rax+18104], edx -; 1742 : if (!stbi__mul2shorts_valid(dc, 1 << j->succ_low)) return stbi__err("can't merge dc and ac", "Corrupt JPEG"); +; 1755 : if (!stbi__mul2shorts_valid(dc, 1 << j->succ_low)) return stbi__err("can't merge dc and ac", "Corrupt JPEG"); 00167 48 8b 85 40 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -36353,7 +36373,7 @@ $LN8@stbi__jpeg: 001a6 e9 99 00 00 00 jmp $LN1@stbi__jpeg $LN9@stbi__jpeg: -; 1743 : data[0] = (short)(dc * (1 << j->succ_low)); +; 1756 : data[0] = (short)(dc * (1 << j->succ_low)); 001ab 48 8b 85 40 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -36375,14 +36395,14 @@ $LN9@stbi__jpeg: 00 00 mov rdx, QWORD PTR data$[rbp] 001e6 66 89 04 0a mov WORD PTR [rdx+rcx], ax -; 1744 : } +; 1757 : } 001ea eb 53 jmp SHORT $LN5@stbi__jpeg $LN4@stbi__jpeg: -; 1745 : else { -; 1746 : // refinement scan for DC coefficient -; 1747 : if (stbi__jpeg_get_bit(j)) +; 1758 : else { +; 1759 : // refinement scan for DC coefficient +; 1760 : if (stbi__jpeg_get_bit(j)) 001ec 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR j$[rbp] @@ -36390,7 +36410,7 @@ $LN4@stbi__jpeg: 001f8 85 c0 test eax, eax 001fa 74 43 je SHORT $LN10@stbi__jpeg -; 1748 : data[0] += (short)(1 << j->succ_low); +; 1761 : data[0] += (short)(1 << j->succ_low); 001fc b8 02 00 00 00 mov eax, 2 00201 48 6b c0 00 imul rax, rax, 0 @@ -36414,13 +36434,13 @@ $LN4@stbi__jpeg: $LN10@stbi__jpeg: $LN5@stbi__jpeg: -; 1749 : } -; 1750 : return 1; +; 1762 : } +; 1763 : return 1; 0023f b8 01 00 00 00 mov eax, 1 $LN1@stbi__jpeg: -; 1751 : } +; 1764 : } 00244 48 8d a5 28 01 00 00 lea rsp, QWORD PTR [rbp+296] @@ -36453,7 +36473,7 @@ b$ = 552 dequant$ = 560 stbi__jpeg_decode_block PROC ; COMDAT -; 1668 : { +; 1681 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -36468,10 +36488,10 @@ stbi__jpeg_decode_block PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 1669 : int diff, dc, k; -; 1670 : int t; -; 1671 : -; 1672 : if (j->code_bits < 16) stbi__grow_buffer_unsafe(j); +; 1682 : int diff, dc, k; +; 1683 : int t; +; 1684 : +; 1685 : if (j->code_bits < 16) stbi__grow_buffer_unsafe(j); 0002e 48 8b 85 00 02 00 00 mov rax, QWORD PTR j$[rbp] @@ -36483,7 +36503,7 @@ stbi__jpeg_decode_block PROC ; COMDAT 00045 e8 00 00 00 00 call stbi__grow_buffer_unsafe $LN5@stbi__jpeg: -; 1673 : t = stbi__jpeg_huff_decode(j, hdc); +; 1686 : t = stbi__jpeg_huff_decode(j, hdc); 0004a 48 8b 95 10 02 00 00 mov rdx, QWORD PTR hdc$[rbp] @@ -36492,7 +36512,7 @@ $LN5@stbi__jpeg: 00058 e8 00 00 00 00 call stbi__jpeg_huff_decode 0005d 89 45 64 mov DWORD PTR t$[rbp], eax -; 1674 : if (t < 0 || t > 15) return stbi__err("bad huffman code", "Corrupt JPEG"); +; 1687 : if (t < 0 || t > 15) return stbi__err("bad huffman code", "Corrupt JPEG"); 00060 83 7d 64 00 cmp DWORD PTR t$[rbp], 0 00064 7c 06 jl SHORT $LN7@stbi__jpeg @@ -36505,9 +36525,9 @@ $LN7@stbi__jpeg: 00078 e9 50 03 00 00 jmp $LN1@stbi__jpeg $LN6@stbi__jpeg: -; 1675 : -; 1676 : // 0 all the ac values now so we can do it 32-bits at a time -; 1677 : memset(data, 0, 64 * sizeof(data[0])); +; 1688 : +; 1689 : // 0 all the ac values now so we can do it 32-bits at a time +; 1690 : memset(data, 0, 64 * sizeof(data[0])); 0007d 41 b8 80 00 00 00 mov r8d, 128 ; 00000080H @@ -36516,8 +36536,8 @@ $LN6@stbi__jpeg: 00 00 mov rcx, QWORD PTR data$[rbp] 0008c e8 00 00 00 00 call memset -; 1678 : -; 1679 : diff = t ? stbi__extend_receive(j, t) : 0; +; 1691 : +; 1692 : diff = t ? stbi__extend_receive(j, t) : 0; 00091 83 7d 64 00 cmp DWORD PTR t$[rbp], 0 00095 74 17 je SHORT $LN19@stbi__jpeg @@ -36536,7 +36556,7 @@ $LN20@stbi__jpeg: 00 mov eax, DWORD PTR tv81[rbp] 000be 89 45 04 mov DWORD PTR diff$[rbp], eax -; 1680 : if (!stbi__addints_valid(j->img_comp[b].dc_pred, diff)) return stbi__err("bad delta", "Corrupt JPEG"); +; 1693 : if (!stbi__addints_valid(j->img_comp[b].dc_pred, diff)) return stbi__err("bad delta", "Corrupt JPEG"); 000c1 48 63 85 28 02 00 00 movsxd rax, DWORD PTR b$[rbp] @@ -36555,7 +36575,7 @@ $LN20@stbi__jpeg: 000f2 e9 d6 02 00 00 jmp $LN1@stbi__jpeg $LN8@stbi__jpeg: -; 1681 : dc = j->img_comp[b].dc_pred + diff; +; 1694 : dc = j->img_comp[b].dc_pred + diff; 000f7 48 63 85 28 02 00 00 movsxd rax, DWORD PTR b$[rbp] @@ -36567,7 +36587,7 @@ $LN8@stbi__jpeg: 00110 03 45 04 add eax, DWORD PTR diff$[rbp] 00113 89 45 24 mov DWORD PTR dc$[rbp], eax -; 1682 : j->img_comp[b].dc_pred = dc; +; 1695 : j->img_comp[b].dc_pred = dc; 00116 48 63 85 28 02 00 00 movsxd rax, DWORD PTR b$[rbp] @@ -36578,7 +36598,7 @@ $LN8@stbi__jpeg: 0012b 89 94 01 b8 46 00 00 mov DWORD PTR [rcx+rax+18104], edx -; 1683 : if (!stbi__mul2shorts_valid(dc, dequant[0])) return stbi__err("can't merge dc and ac", "Corrupt JPEG"); +; 1696 : if (!stbi__mul2shorts_valid(dc, dequant[0])) return stbi__err("can't merge dc and ac", "Corrupt JPEG"); 00132 b8 02 00 00 00 mov eax, 2 00137 48 6b c0 00 imul rax, rax, 0 @@ -36595,7 +36615,7 @@ $LN8@stbi__jpeg: 0015f e9 69 02 00 00 jmp $LN1@stbi__jpeg $LN9@stbi__jpeg: -; 1684 : data[0] = (short)(dc * dequant[0]); +; 1697 : data[0] = (short)(dc * dequant[0]); 00164 b8 02 00 00 00 mov eax, 2 00169 48 6b c0 00 imul rax, rax, 0 @@ -36611,18 +36631,18 @@ $LN9@stbi__jpeg: 00 00 mov rdx, QWORD PTR data$[rbp] 00190 66 89 04 0a mov WORD PTR [rdx+rcx], ax -; 1685 : -; 1686 : // decode AC components, see JPEG spec -; 1687 : k = 1; +; 1698 : +; 1699 : // decode AC components, see JPEG spec +; 1700 : k = 1; 00194 c7 45 44 01 00 00 00 mov DWORD PTR k$[rbp], 1 $LN4@stbi__jpeg: -; 1688 : do { -; 1689 : unsigned int zig; -; 1690 : int c, r, s; -; 1691 : if (j->code_bits < 16) stbi__grow_buffer_unsafe(j); +; 1701 : do { +; 1702 : unsigned int zig; +; 1703 : int c, r, s; +; 1704 : if (j->code_bits < 16) stbi__grow_buffer_unsafe(j); 0019b 48 8b 85 00 02 00 00 mov rax, QWORD PTR j$[rbp] @@ -36634,7 +36654,7 @@ $LN4@stbi__jpeg: 001b2 e8 00 00 00 00 call stbi__grow_buffer_unsafe $LN10@stbi__jpeg: -; 1692 : c = (j->code_buffer >> (32 - FAST_BITS)) & ((1 << FAST_BITS) - 1); +; 1705 : c = (j->code_buffer >> (32 - FAST_BITS)) & ((1 << FAST_BITS) - 1); 001b7 48 8b 85 00 02 00 00 mov rax, QWORD PTR j$[rbp] @@ -36645,7 +36665,7 @@ $LN10@stbi__jpeg: 001cc 89 85 a4 00 00 00 mov DWORD PTR c$2[rbp], eax -; 1693 : r = fac[c]; +; 1706 : r = fac[c]; 001d2 48 63 85 a4 00 00 00 movsxd rax, DWORD PTR c$2[rbp] @@ -36655,14 +36675,14 @@ $LN10@stbi__jpeg: 001e4 89 85 c4 00 00 00 mov DWORD PTR r$3[rbp], eax -; 1694 : if (r) { // fast-AC path +; 1707 : if (r) { // fast-AC path 001ea 83 bd c4 00 00 00 00 cmp DWORD PTR r$3[rbp], 0 001f1 0f 84 f0 00 00 00 je $LN11@stbi__jpeg -; 1695 : k += (r >> 4) & 15; // run +; 1708 : k += (r >> 4) & 15; // run 001f7 8b 85 c4 00 00 00 mov eax, DWORD PTR r$3[rbp] @@ -36673,7 +36693,7 @@ $LN10@stbi__jpeg: 00208 8b c1 mov eax, ecx 0020a 89 45 44 mov DWORD PTR k$[rbp], eax -; 1696 : s = r & 15; // combined length +; 1709 : s = r & 15; // combined length 0020d 8b 85 c4 00 00 00 mov eax, DWORD PTR r$3[rbp] @@ -36681,7 +36701,7 @@ $LN10@stbi__jpeg: 00216 89 85 e4 00 00 00 mov DWORD PTR s$4[rbp], eax -; 1697 : if (s > j->code_bits) return stbi__err("bad huffman code", "Combined length longer than code bits available"); +; 1710 : if (s > j->code_bits) return stbi__err("bad huffman code", "Combined length longer than code bits available"); 0021c 48 8b 85 00 02 00 00 mov rax, QWORD PTR j$[rbp] @@ -36696,7 +36716,7 @@ $LN10@stbi__jpeg: 0023d e9 8b 01 00 00 jmp $LN1@stbi__jpeg $LN13@stbi__jpeg: -; 1698 : j->code_buffer <<= s; +; 1711 : j->code_buffer <<= s; 00242 8b 85 e4 00 00 00 mov eax, DWORD PTR s$4[rbp] @@ -36715,7 +36735,7 @@ $LN13@stbi__jpeg: 0026f 89 81 20 48 00 00 mov DWORD PTR [rcx+18464], eax -; 1699 : j->code_bits -= s; +; 1712 : j->code_bits -= s; 00275 48 8b 85 00 02 00 00 mov rax, QWORD PTR j$[rbp] @@ -36729,8 +36749,8 @@ $LN13@stbi__jpeg: 00291 89 81 24 48 00 00 mov DWORD PTR [rcx+18468], eax -; 1700 : // decode into unzigzag'd location -; 1701 : zig = stbi__jpeg_dezigzag[k++]; +; 1713 : // decode into unzigzag'd location +; 1714 : zig = stbi__jpeg_dezigzag[k++]; 00297 48 63 45 44 movsxd rax, DWORD PTR k$[rbp] 0029b 48 8d 0d 00 00 @@ -36742,7 +36762,7 @@ $LN13@stbi__jpeg: 002af ff c0 inc eax 002b1 89 45 44 mov DWORD PTR k$[rbp], eax -; 1702 : data[zig] = (short)((r >> 8) * dequant[zig]); +; 1715 : data[zig] = (short)((r >> 8) * dequant[zig]); 002b4 8b 85 c4 00 00 00 mov eax, DWORD PTR r$3[rbp] @@ -36759,13 +36779,13 @@ $LN13@stbi__jpeg: 00 00 mov rdx, QWORD PTR data$[rbp] 002de 66 89 04 4a mov WORD PTR [rdx+rcx*2], ax -; 1703 : } +; 1716 : } 002e2 e9 d7 00 00 00 jmp $LN12@stbi__jpeg $LN11@stbi__jpeg: -; 1704 : else { -; 1705 : int rs = stbi__jpeg_huff_decode(j, hac); +; 1717 : else { +; 1718 : int rs = stbi__jpeg_huff_decode(j, hac); 002e7 48 8b 95 18 02 00 00 mov rdx, QWORD PTR hac$[rbp] @@ -36775,7 +36795,7 @@ $LN11@stbi__jpeg: 002fa 89 85 04 01 00 00 mov DWORD PTR rs$5[rbp], eax -; 1706 : if (rs < 0) return stbi__err("bad huffman code", "Corrupt JPEG"); +; 1719 : if (rs < 0) return stbi__err("bad huffman code", "Corrupt JPEG"); 00300 83 bd 04 01 00 00 00 cmp DWORD PTR rs$5[rbp], 0 @@ -36786,7 +36806,7 @@ $LN11@stbi__jpeg: 00315 e9 b3 00 00 00 jmp $LN1@stbi__jpeg $LN14@stbi__jpeg: -; 1707 : s = rs & 15; +; 1720 : s = rs & 15; 0031a 8b 85 04 01 00 00 mov eax, DWORD PTR rs$5[rbp] @@ -36794,7 +36814,7 @@ $LN14@stbi__jpeg: 00323 89 85 e4 00 00 00 mov DWORD PTR s$4[rbp], eax -; 1708 : r = rs >> 4; +; 1721 : r = rs >> 4; 00329 8b 85 04 01 00 00 mov eax, DWORD PTR rs$5[rbp] @@ -36802,13 +36822,13 @@ $LN14@stbi__jpeg: 00332 89 85 c4 00 00 00 mov DWORD PTR r$3[rbp], eax -; 1709 : if (s == 0) { +; 1722 : if (s == 0) { 00338 83 bd e4 00 00 00 00 cmp DWORD PTR s$4[rbp], 0 0033f 75 19 jne SHORT $LN15@stbi__jpeg -; 1710 : if (rs != 0xf0) break; // end block +; 1723 : if (rs != 0xf0) break; // end block 00341 81 bd 04 01 00 00 f0 00 00 00 cmp DWORD PTR rs$5[rbp], 240 ; 000000f0H @@ -36816,19 +36836,19 @@ $LN14@stbi__jpeg: 0034d eb 79 jmp SHORT $LN3@stbi__jpeg $LN17@stbi__jpeg: -; 1711 : k += 16; +; 1724 : k += 16; 0034f 8b 45 44 mov eax, DWORD PTR k$[rbp] 00352 83 c0 10 add eax, 16 00355 89 45 44 mov DWORD PTR k$[rbp], eax -; 1712 : } +; 1725 : } 00358 eb 64 jmp SHORT $LN16@stbi__jpeg $LN15@stbi__jpeg: -; 1713 : else { -; 1714 : k += r; +; 1726 : else { +; 1727 : k += r; 0035a 8b 85 c4 00 00 00 mov eax, DWORD PTR r$3[rbp] @@ -36837,8 +36857,8 @@ $LN15@stbi__jpeg: 00365 8b c1 mov eax, ecx 00367 89 45 44 mov DWORD PTR k$[rbp], eax -; 1715 : // decode into unzigzag'd location -; 1716 : zig = stbi__jpeg_dezigzag[k++]; +; 1728 : // decode into unzigzag'd location +; 1729 : zig = stbi__jpeg_dezigzag[k++]; 0036a 48 63 45 44 movsxd rax, DWORD PTR k$[rbp] 0036e 48 8d 0d 00 00 @@ -36850,7 +36870,7 @@ $LN15@stbi__jpeg: 00382 ff c0 inc eax 00384 89 45 44 mov DWORD PTR k$[rbp], eax -; 1717 : data[zig] = (short)(stbi__extend_receive(j, s) * dequant[zig]); +; 1730 : data[zig] = (short)(stbi__extend_receive(j, s) * dequant[zig]); 00387 8b 95 e4 00 00 00 mov edx, DWORD PTR s$4[rbp] @@ -36871,21 +36891,21 @@ $LN15@stbi__jpeg: $LN16@stbi__jpeg: $LN12@stbi__jpeg: -; 1718 : } -; 1719 : } -; 1720 : } while (k < 64); +; 1731 : } +; 1732 : } +; 1733 : } while (k < 64); 003be 83 7d 44 40 cmp DWORD PTR k$[rbp], 64 ; 00000040H 003c2 0f 8c d3 fd ff ff jl $LN4@stbi__jpeg $LN3@stbi__jpeg: -; 1721 : return 1; +; 1734 : return 1; 003c8 b8 01 00 00 00 mov eax, 1 $LN1@stbi__jpeg: -; 1722 : } +; 1735 : } 003cd 48 8d a5 e8 01 00 00 lea rsp, QWORD PTR [rbp+488] @@ -36902,7 +36922,7 @@ k$ = 4 j$ = 256 stbi__jpeg_get_bit PROC ; COMDAT -; 1639 : { +; 1652 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -36914,8 +36934,8 @@ stbi__jpeg_get_bit PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 1640 : unsigned int k; -; 1641 : if (j->code_bits < 1) stbi__grow_buffer_unsafe(j); +; 1653 : unsigned int k; +; 1654 : if (j->code_bits < 1) stbi__grow_buffer_unsafe(j); 0001f 48 8b 85 00 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -36927,7 +36947,7 @@ stbi__jpeg_get_bit PROC ; COMDAT 00036 e8 00 00 00 00 call stbi__grow_buffer_unsafe $LN2@stbi__jpeg: -; 1642 : if (j->code_bits < 1) return 0; // ran out of bits from stream, return 0s intead of continuing +; 1655 : if (j->code_bits < 1) return 0; // ran out of bits from stream, return 0s intead of continuing 0003b 48 8b 85 00 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -36938,7 +36958,7 @@ $LN2@stbi__jpeg: 0004d eb 50 jmp SHORT $LN1@stbi__jpeg $LN3@stbi__jpeg: -; 1643 : k = j->code_buffer; +; 1656 : k = j->code_buffer; 0004f 48 8b 85 00 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -36946,7 +36966,7 @@ $LN3@stbi__jpeg: 00 mov eax, DWORD PTR [rax+18464] 0005c 89 45 04 mov DWORD PTR k$[rbp], eax -; 1644 : j->code_buffer <<= 1; +; 1657 : j->code_buffer <<= 1; 0005f 48 8b 85 00 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -36958,7 +36978,7 @@ $LN3@stbi__jpeg: 00075 89 81 20 48 00 00 mov DWORD PTR [rcx+18464], eax -; 1645 : --j->code_bits; +; 1658 : --j->code_bits; 0007b 48 8b 85 00 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -36970,13 +36990,13 @@ $LN3@stbi__jpeg: 00091 89 81 24 48 00 00 mov DWORD PTR [rcx+18468], eax -; 1646 : return k & 0x80000000; +; 1659 : return k & 0x80000000; 00097 8b 45 04 mov eax, DWORD PTR k$[rbp] 0009a 25 00 00 00 80 and eax, -2147483648 ; 80000000H $LN1@stbi__jpeg: -; 1647 : } +; 1660 : } 0009f 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -36994,7 +37014,7 @@ j$ = 256 n$ = 264 stbi__jpeg_get_bits PROC ; COMDAT -; 1627 : { +; 1640 : { 00000 89 54 24 10 mov DWORD PTR [rsp+16], edx 00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx @@ -37007,8 +37027,8 @@ stbi__jpeg_get_bits PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001e e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 1628 : unsigned int k; -; 1629 : if (j->code_bits < n) stbi__grow_buffer_unsafe(j); +; 1641 : unsigned int k; +; 1642 : if (j->code_bits < n) stbi__grow_buffer_unsafe(j); 00023 48 8b 85 00 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -37022,7 +37042,7 @@ stbi__jpeg_get_bits PROC ; COMDAT 0003f e8 00 00 00 00 call stbi__grow_buffer_unsafe $LN2@stbi__jpeg: -; 1630 : if (j->code_bits < n) return 0; // ran out of bits from stream, return 0s intead of continuing +; 1643 : if (j->code_bits < n) return 0; // ran out of bits from stream, return 0s intead of continuing 00044 48 8b 85 00 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -37035,7 +37055,7 @@ $LN2@stbi__jpeg: 0005b e9 82 00 00 00 jmp $LN1@stbi__jpeg $LN3@stbi__jpeg: -; 1631 : k = stbi_lrot(j->code_buffer, n); +; 1644 : k = stbi_lrot(j->code_buffer, n); 00060 8b 95 08 01 00 00 mov edx, DWORD PTR n$[rbp] @@ -37046,7 +37066,7 @@ $LN3@stbi__jpeg: 00073 e8 00 00 00 00 call _lrotl 00078 89 45 04 mov DWORD PTR k$[rbp], eax -; 1632 : j->code_buffer = k & ~stbi__bmask[n]; +; 1645 : j->code_buffer = k & ~stbi__bmask[n]; 0007b 48 63 85 08 01 00 00 movsxd rax, DWORD PTR n$[rbp] @@ -37062,7 +37082,7 @@ $LN3@stbi__jpeg: 0009c 89 81 20 48 00 00 mov DWORD PTR [rcx+18464], eax -; 1633 : k &= stbi__bmask[n]; +; 1646 : k &= stbi__bmask[n]; 000a2 48 63 85 08 01 00 00 movsxd rax, DWORD PTR n$[rbp] @@ -37074,7 +37094,7 @@ $LN3@stbi__jpeg: 000b8 8b c1 mov eax, ecx 000ba 89 45 04 mov DWORD PTR k$[rbp], eax -; 1634 : j->code_bits -= n; +; 1647 : j->code_bits -= n; 000bd 48 8b 85 00 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -37088,12 +37108,12 @@ $LN3@stbi__jpeg: 000d9 89 81 24 48 00 00 mov DWORD PTR [rcx+18468], eax -; 1635 : return k; +; 1648 : return k; 000df 8b 45 04 mov eax, DWORD PTR k$[rbp] $LN1@stbi__jpeg: -; 1636 : } +; 1649 : } 000e2 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -37112,7 +37132,7 @@ j$ = 288 n$ = 296 stbi__extend_receive PROC ; COMDAT -; 1611 : { +; 1624 : { 00000 89 54 24 10 mov DWORD PTR [rsp+16], edx 00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx @@ -37125,9 +37145,9 @@ stbi__extend_receive PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001e e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 1612 : unsigned int k; -; 1613 : int sgn; -; 1614 : if (j->code_bits < n) stbi__grow_buffer_unsafe(j); +; 1625 : unsigned int k; +; 1626 : int sgn; +; 1627 : if (j->code_bits < n) stbi__grow_buffer_unsafe(j); 00023 48 8b 85 20 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -37141,7 +37161,7 @@ stbi__extend_receive PROC ; COMDAT 0003f e8 00 00 00 00 call stbi__grow_buffer_unsafe $LN2@stbi__exte: -; 1615 : if (j->code_bits < n) return 0; // ran out of bits from stream, return 0s intead of continuing +; 1628 : if (j->code_bits < n) return 0; // ran out of bits from stream, return 0s intead of continuing 00044 48 8b 85 20 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -37154,8 +37174,8 @@ $LN2@stbi__exte: 0005b e9 b1 00 00 00 jmp $LN1@stbi__exte $LN3@stbi__exte: -; 1616 : -; 1617 : sgn = j->code_buffer >> 31; // sign bit always in MSB; 0 if MSB clear (positive), 1 if MSB set (negative) +; 1629 : +; 1630 : sgn = j->code_buffer >> 31; // sign bit always in MSB; 0 if MSB clear (positive), 1 if MSB set (negative) 00060 48 8b 85 20 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -37164,7 +37184,7 @@ $LN3@stbi__exte: 0006d c1 e8 1f shr eax, 31 00070 89 45 24 mov DWORD PTR sgn$[rbp], eax -; 1618 : k = stbi_lrot(j->code_buffer, n); +; 1631 : k = stbi_lrot(j->code_buffer, n); 00073 8b 95 28 01 00 00 mov edx, DWORD PTR n$[rbp] @@ -37175,7 +37195,7 @@ $LN3@stbi__exte: 00086 e8 00 00 00 00 call _lrotl 0008b 89 45 04 mov DWORD PTR k$[rbp], eax -; 1619 : j->code_buffer = k & ~stbi__bmask[n]; +; 1632 : j->code_buffer = k & ~stbi__bmask[n]; 0008e 48 63 85 28 01 00 00 movsxd rax, DWORD PTR n$[rbp] @@ -37191,7 +37211,7 @@ $LN3@stbi__exte: 000af 89 81 20 48 00 00 mov DWORD PTR [rcx+18464], eax -; 1620 : k &= stbi__bmask[n]; +; 1633 : k &= stbi__bmask[n]; 000b5 48 63 85 28 01 00 00 movsxd rax, DWORD PTR n$[rbp] @@ -37203,7 +37223,7 @@ $LN3@stbi__exte: 000cb 8b c1 mov eax, ecx 000cd 89 45 04 mov DWORD PTR k$[rbp], eax -; 1621 : j->code_bits -= n; +; 1634 : j->code_bits -= n; 000d0 48 8b 85 20 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -37217,7 +37237,7 @@ $LN3@stbi__exte: 000ec 89 81 24 48 00 00 mov DWORD PTR [rcx+18468], eax -; 1622 : return k + (stbi__jbias[n] & (sgn - 1)); +; 1635 : return k + (stbi__jbias[n] & (sgn - 1)); 000f2 48 63 85 28 01 00 00 movsxd rax, DWORD PTR n$[rbp] @@ -37232,7 +37252,7 @@ $LN3@stbi__exte: 0010f 8b c1 mov eax, ecx $LN1@stbi__exte: -; 1623 : } +; 1636 : } 00111 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] @@ -37257,7 +37277,7 @@ j$ = 352 h$ = 360 stbi__jpeg_huff_decode PROC ; COMDAT -; 1555 : { +; 1568 : { 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx @@ -37270,10 +37290,10 @@ stbi__jpeg_huff_decode PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 1556 : unsigned int temp; -; 1557 : int c, k; -; 1558 : -; 1559 : if (j->code_bits < 16) stbi__grow_buffer_unsafe(j); +; 1569 : unsigned int temp; +; 1570 : int c, k; +; 1571 : +; 1572 : if (j->code_bits < 16) stbi__grow_buffer_unsafe(j); 00024 48 8b 85 60 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -37285,10 +37305,10 @@ stbi__jpeg_huff_decode PROC ; COMDAT 0003b e8 00 00 00 00 call stbi__grow_buffer_unsafe $LN5@stbi__jpeg: -; 1560 : -; 1561 : // look at the top FAST_BITS and determine what symbol ID it is, -; 1562 : // if the code is <= FAST_BITS -; 1563 : c = (j->code_buffer >> (32 - FAST_BITS)) & ((1 << FAST_BITS) - 1); +; 1573 : +; 1574 : // look at the top FAST_BITS and determine what symbol ID it is, +; 1575 : // if the code is <= FAST_BITS +; 1576 : c = (j->code_buffer >> (32 - FAST_BITS)) & ((1 << FAST_BITS) - 1); 00040 48 8b 85 60 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -37298,7 +37318,7 @@ $LN5@stbi__jpeg: 00050 25 ff 01 00 00 and eax, 511 ; 000001ffH 00055 89 45 24 mov DWORD PTR c$[rbp], eax -; 1564 : k = h->fast[c]; +; 1577 : k = h->fast[c]; 00058 48 63 45 24 movsxd rax, DWORD PTR c$[rbp] 0005c 48 8b 8d 68 01 @@ -37306,14 +37326,14 @@ $LN5@stbi__jpeg: 00063 0f b6 04 01 movzx eax, BYTE PTR [rcx+rax] 00067 89 45 44 mov DWORD PTR k$[rbp], eax -; 1565 : if (k < 255) { +; 1578 : if (k < 255) { 0006a 81 7d 44 ff 00 00 00 cmp DWORD PTR k$[rbp], 255 ; 000000ffH 00071 0f 8d 99 00 00 00 jge $LN6@stbi__jpeg -; 1566 : int s = h->size[k]; +; 1579 : int s = h->size[k]; 00077 48 63 45 44 movsxd rax, DWORD PTR k$[rbp] 0007b 48 8b 8d 68 01 @@ -37322,7 +37342,7 @@ $LN5@stbi__jpeg: 05 00 00 movzx eax, BYTE PTR [rcx+rax+1280] 0008a 89 45 64 mov DWORD PTR s$1[rbp], eax -; 1567 : if (s > j->code_bits) +; 1580 : if (s > j->code_bits) 0008d 48 8b 85 60 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -37331,13 +37351,13 @@ $LN5@stbi__jpeg: 0009a 39 45 64 cmp DWORD PTR s$1[rbp], eax 0009d 7e 0a jle SHORT $LN7@stbi__jpeg -; 1568 : return -1; +; 1581 : return -1; 0009f b8 ff ff ff ff mov eax, -1 000a4 e9 41 02 00 00 jmp $LN1@stbi__jpeg $LN7@stbi__jpeg: -; 1569 : j->code_buffer <<= s; +; 1582 : j->code_buffer <<= s; 000a9 8b 45 64 mov eax, DWORD PTR s$1[rbp] 000ac 48 8b 8d 60 01 @@ -37355,7 +37375,7 @@ $LN7@stbi__jpeg: 000d3 89 81 20 48 00 00 mov DWORD PTR [rcx+18464], eax -; 1570 : j->code_bits -= s; +; 1583 : j->code_bits -= s; 000d9 48 8b 85 60 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -37368,7 +37388,7 @@ $LN7@stbi__jpeg: 000f2 89 81 24 48 00 00 mov DWORD PTR [rcx+18468], eax -; 1571 : return h->values[k]; +; 1584 : return h->values[k]; 000f8 48 63 45 44 movsxd rax, DWORD PTR k$[rbp] 000fc 48 8b 8d 68 01 @@ -37378,15 +37398,15 @@ $LN7@stbi__jpeg: 0010b e9 da 01 00 00 jmp $LN1@stbi__jpeg $LN6@stbi__jpeg: -; 1572 : } -; 1573 : -; 1574 : // naive test is to shift the code_buffer down so k bits are -; 1575 : // valid, then test against maxcode. To speed this up, we've -; 1576 : // preshifted maxcode left so that it has (16-k) 0s at the -; 1577 : // end; in other words, regardless of the number of bits, it -; 1578 : // wants to be compared against something shifted to have 16; -; 1579 : // that way we don't need to shift inside the loop. -; 1580 : temp = j->code_buffer >> 16; +; 1585 : } +; 1586 : +; 1587 : // naive test is to shift the code_buffer down so k bits are +; 1588 : // valid, then test against maxcode. To speed this up, we've +; 1589 : // preshifted maxcode left so that it has (16-k) 0s at the +; 1590 : // end; in other words, regardless of the number of bits, it +; 1591 : // wants to be compared against something shifted to have 16; +; 1592 : // that way we don't need to shift inside the loop. +; 1593 : temp = j->code_buffer >> 16; 00110 48 8b 85 60 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -37395,7 +37415,7 @@ $LN6@stbi__jpeg: 0011d c1 e8 10 shr eax, 16 00120 89 45 04 mov DWORD PTR temp$[rbp], eax -; 1581 : for (k = FAST_BITS + 1; ; ++k) +; 1594 : for (k = FAST_BITS + 1; ; ++k) 00123 c7 45 44 0a 00 00 00 mov DWORD PTR k$[rbp], 10 @@ -37406,7 +37426,7 @@ $LN2@stbi__jpeg: 00131 89 45 44 mov DWORD PTR k$[rbp], eax $LN4@stbi__jpeg: -; 1582 : if (temp < h->maxcode[k]) +; 1595 : if (temp < h->maxcode[k]) 00134 48 63 45 44 movsxd rax, DWORD PTR k$[rbp] 00138 48 8b 8d 68 01 @@ -37416,20 +37436,20 @@ $LN4@stbi__jpeg: 00146 39 45 04 cmp DWORD PTR temp$[rbp], eax 00149 73 02 jae SHORT $LN8@stbi__jpeg -; 1583 : break; +; 1596 : break; 0014b eb 02 jmp SHORT $LN3@stbi__jpeg $LN8@stbi__jpeg: 0014d eb dd jmp SHORT $LN2@stbi__jpeg $LN3@stbi__jpeg: -; 1584 : if (k == 17) { +; 1597 : if (k == 17) { 0014f 83 7d 44 11 cmp DWORD PTR k$[rbp], 17 00153 75 27 jne SHORT $LN9@stbi__jpeg -; 1585 : // error! code not found -; 1586 : j->code_bits -= 16; +; 1598 : // error! code not found +; 1599 : j->code_bits -= 16; 00155 48 8b 85 60 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -37441,15 +37461,15 @@ $LN3@stbi__jpeg: 0016c 89 81 24 48 00 00 mov DWORD PTR [rcx+18468], eax -; 1587 : return -1; +; 1600 : return -1; 00172 b8 ff ff ff ff mov eax, -1 00177 e9 6e 01 00 00 jmp $LN1@stbi__jpeg $LN9@stbi__jpeg: -; 1588 : } -; 1589 : -; 1590 : if (k > j->code_bits) +; 1601 : } +; 1602 : +; 1603 : if (k > j->code_bits) 0017c 48 8b 85 60 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -37458,15 +37478,15 @@ $LN9@stbi__jpeg: 00189 39 45 44 cmp DWORD PTR k$[rbp], eax 0018c 7e 0a jle SHORT $LN10@stbi__jpeg -; 1591 : return -1; +; 1604 : return -1; 0018e b8 ff ff ff ff mov eax, -1 00193 e9 52 01 00 00 jmp $LN1@stbi__jpeg $LN10@stbi__jpeg: -; 1592 : -; 1593 : // convert the huffman code to the symbol id -; 1594 : c = ((j->code_buffer >> (32 - k)) & stbi__bmask[k]) + h->delta[k]; +; 1605 : +; 1606 : // convert the huffman code to the symbol id +; 1607 : c = ((j->code_buffer >> (32 - k)) & stbi__bmask[k]) + h->delta[k]; 00198 b8 20 00 00 00 mov eax, 32 ; 00000020H 0019d 2b 45 44 sub eax, DWORD PTR k$[rbp] @@ -37491,7 +37511,7 @@ $LN10@stbi__jpeg: 00 00 add eax, DWORD PTR [rdx+rcx*4+1612] 001e0 89 45 24 mov DWORD PTR c$[rbp], eax -; 1595 : if (c < 0 || c >= 256) // symbol id out of bounds! +; 1608 : if (c < 0 || c >= 256) // symbol id out of bounds! 001e3 83 7d 24 00 cmp DWORD PTR c$[rbp], 0 001e7 7c 09 jl SHORT $LN12@stbi__jpeg @@ -37500,13 +37520,13 @@ $LN10@stbi__jpeg: 001f0 7c 0a jl SHORT $LN11@stbi__jpeg $LN12@stbi__jpeg: -; 1596 : return -1; +; 1609 : return -1; 001f2 b8 ff ff ff ff mov eax, -1 001f7 e9 ee 00 00 00 jmp $LN1@stbi__jpeg $LN11@stbi__jpeg: -; 1597 : STBI_ASSERT((((j->code_buffer) >> (32 - h->size[c])) & stbi__bmask[h->size[c]]) == h->code[c]); +; 1610 : STBI_ASSERT((((j->code_buffer) >> (32 - h->size[c])) & stbi__bmask[h->size[c]]) == h->code[c]); 001fc 48 63 45 24 movsxd rax, DWORD PTR c$[rbp] 00200 48 8b 8d 68 01 @@ -37541,8 +37561,8 @@ $LN11@stbi__jpeg: 02 00 00 movzx ecx, WORD PTR [rdx+rcx*2+512] 00268 3b c1 cmp eax, ecx 0026a 74 1c je SHORT $LN14@stbi__jpeg - 0026c 41 b8 3d 06 00 - 00 mov r8d, 1597 ; 0000063dH + 0026c 41 b8 4a 06 00 + 00 mov r8d, 1610 ; 0000064aH 00272 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_1KA@LPJPGBDN@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@ 00279 48 8d 0d 00 00 @@ -37552,9 +37572,9 @@ $LN11@stbi__jpeg: 00286 33 c0 xor eax, eax $LN14@stbi__jpeg: -; 1598 : -; 1599 : // convert the id to a symbol -; 1600 : j->code_bits -= k; +; 1611 : +; 1612 : // convert the id to a symbol +; 1613 : j->code_bits -= k; 00288 48 8b 85 60 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -37567,7 +37587,7 @@ $LN14@stbi__jpeg: 002a1 89 81 24 48 00 00 mov DWORD PTR [rcx+18468], eax -; 1601 : j->code_buffer <<= k; +; 1614 : j->code_buffer <<= k; 002a7 8b 45 44 mov eax, DWORD PTR k$[rbp] 002aa 48 8b 8d 60 01 @@ -37585,7 +37605,7 @@ $LN14@stbi__jpeg: 002d1 89 81 20 48 00 00 mov DWORD PTR [rcx+18464], eax -; 1602 : return h->values[c]; +; 1615 : return h->values[c]; 002d7 48 63 45 24 movsxd rax, DWORD PTR c$[rbp] 002db 48 8b 8d 68 01 @@ -37594,7 +37614,7 @@ $LN14@stbi__jpeg: 04 00 00 movzx eax, BYTE PTR [rcx+rax+1024] $LN1@stbi__jpeg: -; 1603 : } +; 1616 : } 002ea 48 8d a5 48 01 00 00 lea rsp, QWORD PTR [rbp+328] @@ -37613,7 +37633,7 @@ tv70 = 244 j$ = 288 stbi__grow_buffer_unsafe PROC ; COMDAT -; 1533 : { +; 1546 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -37626,8 +37646,8 @@ stbi__grow_buffer_unsafe PROC ; COMDAT 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode $LN4@stbi__grow: -; 1534 : do { -; 1535 : unsigned int b = j->nomore ? 0 : stbi__get8(j->s); +; 1547 : do { +; 1548 : unsigned int b = j->nomore ? 0 : stbi__get8(j->s); 0001f 48 8b 85 20 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -37650,13 +37670,13 @@ $LN11@stbi__grow: 00 mov eax, DWORD PTR tv70[rbp] 00059 89 45 04 mov DWORD PTR b$1[rbp], eax -; 1536 : if (b == 0xff) { +; 1549 : if (b == 0xff) { 0005c 81 7d 04 ff 00 00 00 cmp DWORD PTR b$1[rbp], 255 ; 000000ffH 00063 75 5f jne SHORT $LN7@stbi__grow -; 1537 : int c = stbi__get8(j->s); +; 1550 : int c = stbi__get8(j->s); 00065 48 8b 85 20 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -37666,7 +37686,7 @@ $LN11@stbi__grow: 00077 89 45 24 mov DWORD PTR c$2[rbp], eax $LN5@stbi__grow: -; 1538 : while (c == 0xff) c = stbi__get8(j->s); // consume fill bytes +; 1551 : while (c == 0xff) c = stbi__get8(j->s); // consume fill bytes 0007a 81 7d 24 ff 00 00 00 cmp DWORD PTR c$2[rbp], 255 ; 000000ffH @@ -37680,12 +37700,12 @@ $LN5@stbi__grow: 00098 eb e0 jmp SHORT $LN5@stbi__grow $LN6@stbi__grow: -; 1539 : if (c != 0) { +; 1552 : if (c != 0) { 0009a 83 7d 24 00 cmp DWORD PTR c$2[rbp], 0 0009e 74 24 je SHORT $LN8@stbi__grow -; 1540 : j->marker = (unsigned char)c; +; 1553 : j->marker = (unsigned char)c; 000a0 48 8b 85 20 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -37693,22 +37713,22 @@ $LN6@stbi__grow: 000ab 88 88 28 48 00 00 mov BYTE PTR [rax+18472], cl -; 1541 : j->nomore = 1; +; 1554 : j->nomore = 1; 000b1 48 8b 85 20 01 00 00 mov rax, QWORD PTR j$[rbp] 000b8 c7 80 2c 48 00 00 01 00 00 00 mov DWORD PTR [rax+18476], 1 -; 1542 : return; +; 1555 : return; 000c2 eb 6b jmp SHORT $LN1@stbi__grow $LN8@stbi__grow: $LN7@stbi__grow: -; 1543 : } -; 1544 : } -; 1545 : j->code_buffer |= b << (24 - j->code_bits); +; 1556 : } +; 1557 : } +; 1558 : j->code_buffer |= b << (24 - j->code_bits); 000c4 48 8b 85 20 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -37730,7 +37750,7 @@ $LN7@stbi__grow: 000f8 89 81 20 48 00 00 mov DWORD PTR [rcx+18464], eax -; 1546 : j->code_bits += 8; +; 1559 : j->code_bits += 8; 000fe 48 8b 85 20 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -37742,7 +37762,7 @@ $LN7@stbi__grow: 00115 89 81 24 48 00 00 mov DWORD PTR [rcx+18468], eax -; 1547 : } while (j->code_bits <= 24); +; 1560 : } while (j->code_bits <= 24); 0011b 48 8b 85 20 01 00 00 mov rax, QWORD PTR j$[rbp] @@ -37752,7 +37772,7 @@ $LN7@stbi__grow: ff jle $LN4@stbi__grow $LN1@stbi__grow: -; 1548 : } +; 1561 : } 0012f 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] @@ -37779,7 +37799,7 @@ fast_ac$ = 480 h$ = 488 stbi__build_fast_ac PROC ; COMDAT -; 1508 : { +; 1521 : { 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx @@ -37792,8 +37812,8 @@ stbi__build_fast_ac PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 1509 : int i; -; 1510 : for (i = 0; i < (1 << FAST_BITS); ++i) { +; 1522 : int i; +; 1523 : for (i = 0; i < (1 << FAST_BITS); ++i) { 00024 c7 45 04 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -37808,7 +37828,7 @@ $LN4@stbi__buil: 0003c 0f 8d 6b 01 00 00 jge $LN3@stbi__buil -; 1511 : stbi_uc fast = h->fast[i]; +; 1524 : stbi_uc fast = h->fast[i]; 00042 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 00046 48 8b 8d e8 01 @@ -37816,7 +37836,7 @@ $LN4@stbi__buil: 0004d 0f b6 04 01 movzx eax, BYTE PTR [rcx+rax] 00051 88 45 24 mov BYTE PTR fast$1[rbp], al -; 1512 : fast_ac[i] = 0; +; 1525 : fast_ac[i] = 0; 00054 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 00058 33 c9 xor ecx, ecx @@ -37824,14 +37844,14 @@ $LN4@stbi__buil: 00 00 mov rdx, QWORD PTR fast_ac$[rbp] 00061 66 89 0c 42 mov WORD PTR [rdx+rax*2], cx -; 1513 : if (fast < 255) { +; 1526 : if (fast < 255) { 00065 0f b6 45 24 movzx eax, BYTE PTR fast$1[rbp] 00069 3d ff 00 00 00 cmp eax, 255 ; 000000ffH 0006e 0f 8d 34 01 00 00 jge $LN5@stbi__buil -; 1514 : int rs = h->values[fast]; +; 1527 : int rs = h->values[fast]; 00074 0f b6 45 24 movzx eax, BYTE PTR fast$1[rbp] 00078 48 8b 8d e8 01 @@ -37840,21 +37860,21 @@ $LN4@stbi__buil: 04 00 00 movzx eax, BYTE PTR [rcx+rax+1024] 00087 89 45 44 mov DWORD PTR rs$2[rbp], eax -; 1515 : int run = (rs >> 4) & 15; +; 1528 : int run = (rs >> 4) & 15; 0008a 8b 45 44 mov eax, DWORD PTR rs$2[rbp] 0008d c1 f8 04 sar eax, 4 00090 83 e0 0f and eax, 15 00093 89 45 64 mov DWORD PTR run$3[rbp], eax -; 1516 : int magbits = rs & 15; +; 1529 : int magbits = rs & 15; 00096 8b 45 44 mov eax, DWORD PTR rs$2[rbp] 00099 83 e0 0f and eax, 15 0009c 89 85 84 00 00 00 mov DWORD PTR magbits$4[rbp], eax -; 1517 : int len = h->size[fast]; +; 1530 : int len = h->size[fast]; 000a2 0f b6 45 24 movzx eax, BYTE PTR fast$1[rbp] 000a6 48 8b 8d e8 01 @@ -37864,8 +37884,8 @@ $LN4@stbi__buil: 000b5 89 85 a4 00 00 00 mov DWORD PTR len$5[rbp], eax -; 1518 : -; 1519 : if (magbits && len + magbits <= FAST_BITS) { +; 1531 : +; 1532 : if (magbits && len + magbits <= FAST_BITS) { 000bb 83 bd 84 00 00 00 00 cmp DWORD PTR magbits$4[rbp], 0 @@ -37881,8 +37901,8 @@ $LN4@stbi__buil: 000db 0f 8f c7 00 00 00 jg $LN6@stbi__buil -; 1520 : // magnitude code followed by receive_extend code -; 1521 : int k = ((i << len) & ((1 << FAST_BITS) - 1)) >> (FAST_BITS - magbits); +; 1533 : // magnitude code followed by receive_extend code +; 1534 : int k = ((i << len) & ((1 << FAST_BITS) - 1)) >> (FAST_BITS - magbits); 000e1 8b 85 a4 00 00 00 mov eax, DWORD PTR len$5[rbp] @@ -37897,7 +37917,7 @@ $LN4@stbi__buil: 00101 89 85 c4 00 00 00 mov DWORD PTR k$6[rbp], eax -; 1522 : int m = 1 << (magbits - 1); +; 1535 : int m = 1 << (magbits - 1); 00107 8b 85 84 00 00 00 mov eax, DWORD PTR magbits$4[rbp] @@ -37912,7 +37932,7 @@ $LN4@stbi__buil: 00125 89 85 e4 00 00 00 mov DWORD PTR m$7[rbp], eax -; 1523 : if (k < m) k += (~0U << magbits) + 1; +; 1536 : if (k < m) k += (~0U << magbits) + 1; 0012b 8b 85 e4 00 00 00 mov eax, DWORD PTR m$7[rbp] @@ -37935,8 +37955,8 @@ $LN4@stbi__buil: 00 mov DWORD PTR k$6[rbp], eax $LN7@stbi__buil: -; 1524 : // if the result is small enough, we can fit it in fast_ac table -; 1525 : if (k >= -128 && k <= 127) +; 1537 : // if the result is small enough, we can fit it in fast_ac table +; 1538 : if (k >= -128 && k <= 127) 00165 83 bd c4 00 00 00 80 cmp DWORD PTR k$6[rbp], -128 ; ffffffffffffff80H @@ -37945,7 +37965,7 @@ $LN7@stbi__buil: 00 7f cmp DWORD PTR k$6[rbp], 127 ; 0000007fH 00175 7f 31 jg SHORT $LN8@stbi__buil -; 1526 : fast_ac[i] = (stbi__int16)((k * 256) + (run * 16) + (len + magbits)); +; 1539 : fast_ac[i] = (stbi__int16)((k * 256) + (run * 16) + (len + magbits)); 00177 69 85 c4 00 00 00 00 01 00 00 imul eax, DWORD PTR k$6[rbp], 256 ; 00000100H @@ -37966,14 +37986,14 @@ $LN8@stbi__buil: $LN6@stbi__buil: $LN5@stbi__buil: -; 1527 : } -; 1528 : } -; 1529 : } +; 1540 : } +; 1541 : } +; 1542 : } 001a8 e9 80 fe ff ff jmp $LN2@stbi__buil $LN3@stbi__buil: -; 1530 : } +; 1543 : } 001ad 48 8d a5 c8 01 00 00 lea rsp, QWORD PTR [rbp+456] @@ -37998,7 +38018,7 @@ h$ = 448 count$ = 456 stbi__build_huffman PROC ; COMDAT -; 1461 : { +; 1474 : { 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx @@ -38011,14 +38031,14 @@ stbi__build_huffman PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 1462 : int i, j, k = 0; +; 1475 : int i, j, k = 0; 00024 c7 45 44 00 00 00 00 mov DWORD PTR k$[rbp], 0 -; 1463 : unsigned int code; -; 1464 : // build size list for each symbol (from JPEG spec) -; 1465 : for (i = 0; i < 16; ++i) { +; 1476 : unsigned int code; +; 1477 : // build size list for each symbol (from JPEG spec) +; 1478 : for (i = 0; i < 16; ++i) { 0002b c7 45 04 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -38031,7 +38051,7 @@ $LN4@stbi__buil: 0003c 83 7d 04 10 cmp DWORD PTR i$[rbp], 16 00040 7d 61 jge SHORT $LN3@stbi__buil -; 1466 : for (j = 0; j < count[i]; ++j) { +; 1479 : for (j = 0; j < count[i]; ++j) { 00042 c7 45 24 00 00 00 00 mov DWORD PTR j$[rbp], 0 @@ -38048,7 +38068,7 @@ $LN7@stbi__buil: 00061 39 45 24 cmp DWORD PTR j$[rbp], eax 00064 7d 3b jge SHORT $LN6@stbi__buil -; 1467 : h->size[k++] = (stbi_uc)(i + 1); +; 1480 : h->size[k++] = (stbi_uc)(i + 1); 00066 8b 45 04 mov eax, DWORD PTR i$[rbp] 00069 ff c0 inc eax @@ -38061,7 +38081,7 @@ $LN7@stbi__buil: 00080 ff c0 inc eax 00082 89 45 44 mov DWORD PTR k$[rbp], eax -; 1468 : if (k >= 257) return stbi__err("bad size list", "Corrupt JPEG"); +; 1481 : if (k >= 257) return stbi__err("bad size list", "Corrupt JPEG"); 00085 81 7d 44 01 01 00 00 cmp DWORD PTR k$[rbp], 257 ; 00000101H @@ -38072,17 +38092,17 @@ $LN7@stbi__buil: 0009a e9 0f 02 00 00 jmp $LN1@stbi__buil $LN19@stbi__buil: -; 1469 : } +; 1482 : } 0009f eb aa jmp SHORT $LN5@stbi__buil $LN6@stbi__buil: -; 1470 : } +; 1483 : } 000a1 eb 91 jmp SHORT $LN2@stbi__buil $LN3@stbi__buil: -; 1471 : h->size[k] = 0; +; 1484 : h->size[k] = 0; 000a3 48 63 45 44 movsxd rax, DWORD PTR k$[rbp] 000a7 48 8b 8d c0 01 @@ -38090,19 +38110,19 @@ $LN3@stbi__buil: 000ae c6 84 01 00 05 00 00 00 mov BYTE PTR [rcx+rax+1280], 0 -; 1472 : -; 1473 : // compute actual symbols (from jpeg spec) -; 1474 : code = 0; +; 1485 : +; 1486 : // compute actual symbols (from jpeg spec) +; 1487 : code = 0; 000b6 c7 45 64 00 00 00 00 mov DWORD PTR code$[rbp], 0 -; 1475 : k = 0; +; 1488 : k = 0; 000bd c7 45 44 00 00 00 00 mov DWORD PTR k$[rbp], 0 -; 1476 : for (j = 1; j <= 16; ++j) { +; 1489 : for (j = 1; j <= 16; ++j) { 000c4 c7 45 24 01 00 00 00 mov DWORD PTR j$[rbp], 1 @@ -38116,8 +38136,8 @@ $LN10@stbi__buil: 000d9 0f 8f ca 00 00 00 jg $LN9@stbi__buil -; 1477 : // compute delta to add to code to compute symbol id -; 1478 : h->delta[j] = k - code; +; 1490 : // compute delta to add to code to compute symbol id +; 1491 : h->delta[j] = k - code; 000df 8b 45 64 mov eax, DWORD PTR code$[rbp] 000e2 8b 4d 44 mov ecx, DWORD PTR k$[rbp] @@ -38129,7 +38149,7 @@ $LN10@stbi__buil: 000f4 89 84 8a 4c 06 00 00 mov DWORD PTR [rdx+rcx*4+1612], eax -; 1479 : if (h->size[k] == j) { +; 1492 : if (h->size[k] == j) { 000fb 48 63 45 44 movsxd rax, DWORD PTR k$[rbp] 000ff 48 8b 8d c0 01 @@ -38140,7 +38160,7 @@ $LN10@stbi__buil: 00111 75 67 jne SHORT $LN20@stbi__buil $LN11@stbi__buil: -; 1480 : while (h->size[k] == j) +; 1493 : while (h->size[k] == j) 00113 48 63 45 44 movsxd rax, DWORD PTR k$[rbp] 00117 48 8b 8d c0 01 @@ -38150,7 +38170,7 @@ $LN11@stbi__buil: 00126 3b 45 24 cmp eax, DWORD PTR j$[rbp] 00129 75 29 jne SHORT $LN12@stbi__buil -; 1481 : h->code[k++] = (stbi__uint16)(code++); +; 1494 : h->code[k++] = (stbi__uint16)(code++); 0012b 48 63 45 44 movsxd rax, DWORD PTR k$[rbp] 0012f 48 8b 8d c0 01 @@ -38167,7 +38187,7 @@ $LN11@stbi__buil: 00152 eb bf jmp SHORT $LN11@stbi__buil $LN12@stbi__buil: -; 1482 : if (code - 1 >= (1u << j)) return stbi__err("bad code lengths", "Corrupt JPEG"); +; 1495 : if (code - 1 >= (1u << j)) return stbi__err("bad code lengths", "Corrupt JPEG"); 00154 8b 45 64 mov eax, DWORD PTR code$[rbp] 00157 ff c8 dec eax @@ -38184,9 +38204,9 @@ $LN12@stbi__buil: $LN21@stbi__buil: $LN20@stbi__buil: -; 1483 : } -; 1484 : // compute largest code + 1 for this size, preshifted as needed later -; 1485 : h->maxcode[j] = code << (16 - j); +; 1496 : } +; 1497 : // compute largest code + 1 for this size, preshifted as needed later +; 1498 : h->maxcode[j] = code << (16 - j); 0017a b8 10 00 00 00 mov eax, 16 0017f 2b 45 24 sub eax, DWORD PTR j$[rbp] @@ -38199,18 +38219,18 @@ $LN20@stbi__buil: 00195 89 84 8a 04 06 00 00 mov DWORD PTR [rdx+rcx*4+1540], eax -; 1486 : code <<= 1; +; 1499 : code <<= 1; 0019c 8b 45 64 mov eax, DWORD PTR code$[rbp] 0019f d1 e0 shl eax, 1 001a1 89 45 64 mov DWORD PTR code$[rbp], eax -; 1487 : } +; 1500 : } 001a4 e9 24 ff ff ff jmp $LN8@stbi__buil $LN9@stbi__buil: -; 1488 : h->maxcode[j] = 0xffffffff; +; 1501 : h->maxcode[j] = 0xffffffff; 001a9 48 63 45 24 movsxd rax, DWORD PTR j$[rbp] 001ad 48 8b 8d c0 01 @@ -38219,9 +38239,9 @@ $LN9@stbi__buil: 00 00 ff ff ff ff mov DWORD PTR [rcx+rax*4+1540], -1 ; ffffffffH -; 1489 : -; 1490 : // build non-spec acceleration table; 255 is flag for not-accelerated -; 1491 : memset(h->fast, 255, 1 << FAST_BITS); +; 1502 : +; 1503 : // build non-spec acceleration table; 255 is flag for not-accelerated +; 1504 : memset(h->fast, 255, 1 << FAST_BITS); 001bf 48 8b 85 c0 01 00 00 mov rax, QWORD PTR h$[rbp] @@ -38231,7 +38251,7 @@ $LN9@stbi__buil: 001d1 48 8b c8 mov rcx, rax 001d4 e8 00 00 00 00 call memset -; 1492 : for (i = 0; i < k; ++i) { +; 1505 : for (i = 0; i < k; ++i) { 001d9 c7 45 04 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -38246,7 +38266,7 @@ $LN15@stbi__buil: 001f0 0f 8d b3 00 00 00 jge $LN14@stbi__buil -; 1493 : int s = h->size[i]; +; 1506 : int s = h->size[i]; 001f6 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 001fa 48 8b 8d c0 01 @@ -38256,14 +38276,14 @@ $LN15@stbi__buil: 00209 89 85 84 00 00 00 mov DWORD PTR s$1[rbp], eax -; 1494 : if (s <= FAST_BITS) { +; 1507 : if (s <= FAST_BITS) { 0020f 83 bd 84 00 00 00 09 cmp DWORD PTR s$1[rbp], 9 00216 0f 8f 88 00 00 00 jg $LN22@stbi__buil -; 1495 : int c = h->code[i] << (FAST_BITS - s); +; 1508 : int c = h->code[i] << (FAST_BITS - s); 0021c 48 63 45 04 movsxd rax, DWORD PTR i$[rbp] 00220 48 8b 8d c0 01 @@ -38277,7 +38297,7 @@ $LN15@stbi__buil: 0023c 89 85 a4 00 00 00 mov DWORD PTR c$2[rbp], eax -; 1496 : int m = 1 << (FAST_BITS - s); +; 1509 : int m = 1 << (FAST_BITS - s); 00242 b8 09 00 00 00 mov eax, 9 00247 2b 85 84 00 00 @@ -38292,7 +38312,7 @@ $LN15@stbi__buil: 00263 89 85 c4 00 00 00 mov DWORD PTR m$3[rbp], eax -; 1497 : for (j = 0; j < m; ++j) { +; 1510 : for (j = 0; j < m; ++j) { 00269 c7 45 24 00 00 00 00 mov DWORD PTR j$[rbp], 0 @@ -38307,7 +38327,7 @@ $LN18@stbi__buil: 00280 39 45 24 cmp DWORD PTR j$[rbp], eax 00283 7d 1f jge SHORT $LN17@stbi__buil -; 1498 : h->fast[c + j] = (stbi_uc)i; +; 1511 : h->fast[c + j] = (stbi_uc)i; 00285 8b 45 24 mov eax, DWORD PTR j$[rbp] 00288 8b 8d a4 00 00 @@ -38320,24 +38340,24 @@ $LN18@stbi__buil: 0029b 0f b6 55 04 movzx edx, BYTE PTR i$[rbp] 0029f 88 14 01 mov BYTE PTR [rcx+rax], dl -; 1499 : } +; 1512 : } 002a2 eb ce jmp SHORT $LN16@stbi__buil $LN17@stbi__buil: $LN22@stbi__buil: -; 1500 : } -; 1501 : } +; 1513 : } +; 1514 : } 002a4 e9 39 ff ff ff jmp $LN13@stbi__buil $LN14@stbi__buil: -; 1502 : return 1; +; 1515 : return 1; 002a9 b8 01 00 00 00 mov eax, 1 $LN1@stbi__buil: -; 1503 : } +; 1516 : } 002ae 48 8d a5 a8 01 00 00 lea rsp, QWORD PTR [rbp+424] @@ -38369,7 +38389,7 @@ x$ = 408 y$ = 416 stbi__convert_format16 PROC ; COMDAT -; 1270 : { +; 1283 : { 00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d 00005 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d @@ -38384,10 +38404,10 @@ stbi__convert_format16 PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00028 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 1271 : int i, j; -; 1272 : stbi__uint16* good; -; 1273 : -; 1274 : if (req_comp == img_n) return data; +; 1284 : int i, j; +; 1285 : stbi__uint16* good; +; 1286 : +; 1287 : if (req_comp == img_n) return data; 0002d 8b 85 88 01 00 00 mov eax, DWORD PTR img_n$[rbp] @@ -38399,7 +38419,7 @@ stbi__convert_format16 PROC ; COMDAT 00042 e9 33 0a 00 00 jmp $LN1@stbi__conv $LN43@stbi__conv: -; 1275 : STBI_ASSERT(req_comp >= 1 && req_comp <= 4); +; 1288 : STBI_ASSERT(req_comp >= 1 && req_comp <= 4); 00047 83 bd 90 01 00 00 01 cmp DWORD PTR req_comp$[rbp], 1 @@ -38408,8 +38428,8 @@ $LN43@stbi__conv: 00 04 cmp DWORD PTR req_comp$[rbp], 4 00057 7e 1c jle SHORT $LN60@stbi__conv $LN59@stbi__conv: - 00059 41 b8 fb 04 00 - 00 mov r8d, 1275 ; 000004fbH + 00059 41 b8 08 05 00 + 00 mov r8d, 1288 ; 00000508H 0005f 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_1KA@LPJPGBDN@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@ 00066 48 8d 0d 00 00 @@ -38419,8 +38439,8 @@ $LN59@stbi__conv: 00073 33 c0 xor eax, eax $LN60@stbi__conv: -; 1276 : -; 1277 : good = (stbi__uint16*)stbi__malloc(req_comp * x * y * 2); +; 1289 : +; 1290 : good = (stbi__uint16*)stbi__malloc(req_comp * x * y * 2); 00075 8b 85 90 01 00 00 mov eax, DWORD PTR req_comp$[rbp] @@ -38434,19 +38454,19 @@ $LN60@stbi__conv: 0008f e8 00 00 00 00 call stbi__malloc 00094 48 89 45 48 mov QWORD PTR good$[rbp], rax -; 1278 : if (good == NULL) { +; 1291 : if (good == NULL) { 00098 48 83 7d 48 00 cmp QWORD PTR good$[rbp], 0 0009d 75 41 jne SHORT $LN44@stbi__conv -; 1279 : STBI_FREE(data); +; 1292 : STBI_FREE(data); 0009f 48 8b 8d 80 01 00 00 mov rcx, QWORD PTR data$[rbp] 000a6 ff 15 00 00 00 00 call QWORD PTR __imp_free -; 1280 : return (stbi__uint16*)stbi__errpuc("outofmem", "Out of memory"); +; 1293 : return (stbi__uint16*)stbi__errpuc("outofmem", "Out of memory"); 000ac 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_08NOGIMCHF@outofmem@ @@ -38467,9 +38487,9 @@ $LN62@stbi__conv: 000db e9 9a 09 00 00 jmp $LN1@stbi__conv $LN44@stbi__conv: -; 1281 : } -; 1282 : -; 1283 : for (j = 0; j < (int)y; ++j) { +; 1294 : } +; 1295 : +; 1296 : for (j = 0; j < (int)y; ++j) { 000e0 c7 45 24 00 00 00 00 mov DWORD PTR j$[rbp], 0 @@ -38485,7 +38505,7 @@ $LN4@stbi__conv: 000fa 0f 8d 69 09 00 00 jge $LN3@stbi__conv -; 1284 : stbi__uint16* src = data + j * x * img_n; +; 1297 : stbi__uint16* src = data + j * x * img_n; 00100 8b 45 24 mov eax, DWORD PTR j$[rbp] 00103 0f af 85 98 01 @@ -38498,7 +38518,7 @@ $LN4@stbi__conv: 0011a 48 8d 04 41 lea rax, QWORD PTR [rcx+rax*2] 0011e 48 89 45 68 mov QWORD PTR src$1[rbp], rax -; 1285 : stbi__uint16* dest = good + j * x * req_comp; +; 1298 : stbi__uint16* dest = good + j * x * req_comp; 00122 8b 45 24 mov eax, DWORD PTR j$[rbp] 00125 0f af 85 98 01 @@ -38511,12 +38531,12 @@ $LN4@stbi__conv: 0013d 48 89 85 88 00 00 00 mov QWORD PTR dest$2[rbp], rax -; 1286 : -; 1287 : #define STBI__COMBO(a,b) ((a)*8+(b)) -; 1288 : #define STBI__CASE(a,b) case STBI__COMBO(a,b): for(i=x-1; i >= 0; --i, src += a, dest += b) -; 1289 : // convert source image with img_n components to one with req_comp components; -; 1290 : // avoid switch per pixel, so use switch per scanline and massive macros -; 1291 : switch (STBI__COMBO(img_n, req_comp)) { +; 1299 : +; 1300 : #define STBI__COMBO(a,b) ((a)*8+(b)) +; 1301 : #define STBI__CASE(a,b) case STBI__COMBO(a,b): for(i=x-1; i >= 0; --i, src += a, dest += b) +; 1302 : // convert source image with img_n components to one with req_comp components; +; 1303 : // avoid switch per pixel, so use switch per scanline and massive macros +; 1304 : switch (STBI__COMBO(img_n, req_comp)) { 00144 8b 85 90 01 00 00 mov eax, DWORD PTR req_comp$[rbp] @@ -38544,7 +38564,7 @@ $LN4@stbi__conv: 0018d ff e0 jmp rax $LN45@stbi__conv: -; 1292 : STBI__CASE(1, 2) { dest[0] = src[0]; dest[1] = 0xffff; } break; +; 1305 : STBI__CASE(1, 2) { dest[0] = src[0]; dest[1] = 0xffff; } break; 0018f 8b 85 98 01 00 00 mov eax, DWORD PTR x$[rbp] @@ -38586,7 +38606,7 @@ $LN8@stbi__conv: 00209 e9 56 08 00 00 jmp $LN5@stbi__conv $LN46@stbi__conv: -; 1293 : STBI__CASE(1, 3) { dest[0] = dest[1] = dest[2] = src[0]; } break; +; 1306 : STBI__CASE(1, 3) { dest[0] = dest[1] = dest[2] = src[0]; } break; 0020e 8b 85 98 01 00 00 mov eax, DWORD PTR x$[rbp] @@ -38642,7 +38662,7 @@ $LN11@stbi__conv: 002c4 e9 9b 07 00 00 jmp $LN5@stbi__conv $LN47@stbi__conv: -; 1294 : STBI__CASE(1, 4) { dest[0] = dest[1] = dest[2] = src[0]; dest[3] = 0xffff; } break; +; 1307 : STBI__CASE(1, 4) { dest[0] = dest[1] = dest[2] = src[0]; dest[3] = 0xffff; } break; 002c9 8b 85 98 01 00 00 mov eax, DWORD PTR x$[rbp] @@ -38705,7 +38725,7 @@ $LN14@stbi__conv: 0039c e9 c3 06 00 00 jmp $LN5@stbi__conv $LN48@stbi__conv: -; 1295 : STBI__CASE(2, 1) { dest[0] = src[0]; } break; +; 1308 : STBI__CASE(2, 1) { dest[0] = src[0]; } break; 003a1 8b 85 98 01 00 00 mov eax, DWORD PTR x$[rbp] @@ -38741,7 +38761,7 @@ $LN17@stbi__conv: 00402 e9 5d 06 00 00 jmp $LN5@stbi__conv $LN49@stbi__conv: -; 1296 : STBI__CASE(2, 3) { dest[0] = dest[1] = dest[2] = src[0]; } break; +; 1309 : STBI__CASE(2, 3) { dest[0] = dest[1] = dest[2] = src[0]; } break; 00407 8b 85 98 01 00 00 mov eax, DWORD PTR x$[rbp] @@ -38797,7 +38817,7 @@ $LN20@stbi__conv: 004bd e9 a2 05 00 00 jmp $LN5@stbi__conv $LN50@stbi__conv: -; 1297 : STBI__CASE(2, 4) { dest[0] = dest[1] = dest[2] = src[0]; dest[3] = src[1]; } break; +; 1310 : STBI__CASE(2, 4) { dest[0] = dest[1] = dest[2] = src[0]; dest[3] = src[1]; } break; 004c2 8b 85 98 01 00 00 mov eax, DWORD PTR x$[rbp] @@ -38863,7 +38883,7 @@ $LN23@stbi__conv: 005a2 e9 bd 04 00 00 jmp $LN5@stbi__conv $LN51@stbi__conv: -; 1298 : STBI__CASE(3, 4) { dest[0] = src[0]; dest[1] = src[1]; dest[2] = src[2]; dest[3] = 0xffff; } break; +; 1311 : STBI__CASE(3, 4) { dest[0] = src[0]; dest[1] = src[1]; dest[2] = src[2]; dest[3] = 0xffff; } break; 005a7 8b 85 98 01 00 00 mov eax, DWORD PTR x$[rbp] @@ -38924,7 +38944,7 @@ $LN26@stbi__conv: 00674 e9 eb 03 00 00 jmp $LN5@stbi__conv $LN52@stbi__conv: -; 1299 : STBI__CASE(3, 1) { dest[0] = stbi__compute_y_16(src[0], src[1], src[2]); } break; +; 1312 : STBI__CASE(3, 1) { dest[0] = stbi__compute_y_16(src[0], src[1], src[2]); } break; 00679 8b 85 98 01 00 00 mov eax, DWORD PTR x$[rbp] @@ -38976,7 +38996,7 @@ $LN29@stbi__conv: 00717 e9 48 03 00 00 jmp $LN5@stbi__conv $LN53@stbi__conv: -; 1300 : STBI__CASE(3, 2) { dest[0] = stbi__compute_y_16(src[0], src[1], src[2]); dest[1] = 0xffff; } break; +; 1313 : STBI__CASE(3, 2) { dest[0] = stbi__compute_y_16(src[0], src[1], src[2]); dest[1] = 0xffff; } break; 0071c 8b 85 98 01 00 00 mov eax, DWORD PTR x$[rbp] @@ -39034,7 +39054,7 @@ $LN32@stbi__conv: 007d3 e9 8c 02 00 00 jmp $LN5@stbi__conv $LN54@stbi__conv: -; 1301 : STBI__CASE(4, 1) { dest[0] = stbi__compute_y_16(src[0], src[1], src[2]); } break; +; 1314 : STBI__CASE(4, 1) { dest[0] = stbi__compute_y_16(src[0], src[1], src[2]); } break; 007d8 8b 85 98 01 00 00 mov eax, DWORD PTR x$[rbp] @@ -39086,7 +39106,7 @@ $LN35@stbi__conv: 00876 e9 e9 01 00 00 jmp $LN5@stbi__conv $LN55@stbi__conv: -; 1302 : STBI__CASE(4, 2) { dest[0] = stbi__compute_y_16(src[0], src[1], src[2]); dest[1] = src[3]; } break; +; 1315 : STBI__CASE(4, 2) { dest[0] = stbi__compute_y_16(src[0], src[1], src[2]); dest[1] = src[3]; } break; 0087b 8b 85 98 01 00 00 mov eax, DWORD PTR x$[rbp] @@ -39148,7 +39168,7 @@ $LN38@stbi__conv: 00943 e9 1c 01 00 00 jmp $LN5@stbi__conv $LN56@stbi__conv: -; 1303 : STBI__CASE(4, 3) { dest[0] = src[0]; dest[1] = src[1]; dest[2] = src[2]; } break; +; 1316 : STBI__CASE(4, 3) { dest[0] = src[0]; dest[1] = src[1]; dest[2] = src[2]; } break; 00948 8b 85 98 01 00 00 mov eax, DWORD PTR x$[rbp] @@ -39202,13 +39222,13 @@ $LN41@stbi__conv: 009f8 eb 6a jmp SHORT $LN5@stbi__conv $LN57@stbi__conv: -; 1304 : default: STBI_ASSERT(0); STBI_FREE(data); STBI_FREE(good); return (stbi__uint16*)stbi__errpuc("unsupported", "Unsupported format conversion"); +; 1317 : default: STBI_ASSERT(0); STBI_FREE(data); STBI_FREE(good); return (stbi__uint16*)stbi__errpuc("unsupported", "Unsupported format conversion"); 009fa 33 c0 xor eax, eax 009fc 85 c0 test eax, eax 009fe 75 1c jne SHORT $LN63@stbi__conv - 00a00 41 b8 18 05 00 - 00 mov r8d, 1304 ; 00000518H + 00a00 41 b8 25 05 00 + 00 mov r8d, 1317 ; 00000525H 00a06 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_1KA@LPJPGBDN@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@ 00a0d 48 8d 0d 00 00 @@ -39243,27 +39263,27 @@ $LN65@stbi__conv: 00a62 eb 16 jmp SHORT $LN1@stbi__conv $LN5@stbi__conv: -; 1305 : } -; 1306 : #undef STBI__CASE -; 1307 : } +; 1318 : } +; 1319 : #undef STBI__CASE +; 1320 : } 00a64 e9 80 f6 ff ff jmp $LN2@stbi__conv $LN3@stbi__conv: -; 1308 : -; 1309 : STBI_FREE(data); +; 1321 : +; 1322 : STBI_FREE(data); 00a69 48 8b 8d 80 01 00 00 mov rcx, QWORD PTR data$[rbp] 00a70 ff 15 00 00 00 00 call QWORD PTR __imp_free -; 1310 : return good; +; 1323 : return good; 00a76 48 8b 45 48 mov rax, QWORD PTR good$[rbp] $LN1@stbi__conv: -; 1311 : } +; 1324 : } 00a7a 48 8d a5 68 01 00 00 lea rsp, QWORD PTR [rbp+360] @@ -39308,7 +39328,7 @@ g$ = 232 b$ = 240 stbi__compute_y_16 PROC ; COMDAT -; 1261 : { +; 1274 : { 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 00005 89 54 24 10 mov DWORD PTR [rsp+16], edx @@ -39322,7 +39342,7 @@ stbi__compute_y_16 PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00022 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 1262 : return (stbi__uint16)(((r * 77) + (g * 150) + (29 * b)) >> 8); +; 1275 : return (stbi__uint16)(((r * 77) + (g * 150) + (29 * b)) >> 8); 00027 6b 85 e0 00 00 00 4d imul eax, DWORD PTR r$[rbp], 77 ; 0000004dH @@ -39334,7 +39354,7 @@ stbi__compute_y_16 PROC ; COMDAT 00041 03 c1 add eax, ecx 00043 c1 f8 08 sar eax, 8 -; 1263 : } +; 1276 : } 00046 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] @@ -39366,7 +39386,7 @@ x$ = 408 y$ = 416 stbi__convert_format PROC ; COMDAT -; 1213 : { +; 1226 : { 00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d 00005 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d @@ -39381,10 +39401,10 @@ stbi__convert_format PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00028 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 1214 : int i, j; -; 1215 : unsigned char* good; -; 1216 : -; 1217 : if (req_comp == img_n) return data; +; 1227 : int i, j; +; 1228 : unsigned char* good; +; 1229 : +; 1230 : if (req_comp == img_n) return data; 0002d 8b 85 88 01 00 00 mov eax, DWORD PTR img_n$[rbp] @@ -39396,7 +39416,7 @@ stbi__convert_format PROC ; COMDAT 00042 e9 ff 09 00 00 jmp $LN1@stbi__conv $LN43@stbi__conv: -; 1218 : STBI_ASSERT(req_comp >= 1 && req_comp <= 4); +; 1231 : STBI_ASSERT(req_comp >= 1 && req_comp <= 4); 00047 83 bd 90 01 00 00 01 cmp DWORD PTR req_comp$[rbp], 1 @@ -39405,8 +39425,8 @@ $LN43@stbi__conv: 00 04 cmp DWORD PTR req_comp$[rbp], 4 00057 7e 1c jle SHORT $LN60@stbi__conv $LN59@stbi__conv: - 00059 41 b8 c2 04 00 - 00 mov r8d, 1218 ; 000004c2H + 00059 41 b8 cf 04 00 + 00 mov r8d, 1231 ; 000004cfH 0005f 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_1KA@LPJPGBDN@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@ 00066 48 8d 0d 00 00 @@ -39416,8 +39436,8 @@ $LN59@stbi__conv: 00073 33 c0 xor eax, eax $LN60@stbi__conv: -; 1219 : -; 1220 : good = (unsigned char*)stbi__malloc_mad3(req_comp, x, y, 0); +; 1232 : +; 1233 : good = (unsigned char*)stbi__malloc_mad3(req_comp, x, y, 0); 00075 45 33 c9 xor r9d, r9d 00078 44 8b 85 a0 01 @@ -39429,19 +39449,19 @@ $LN60@stbi__conv: 0008b e8 00 00 00 00 call stbi__malloc_mad3 00090 48 89 45 48 mov QWORD PTR good$[rbp], rax -; 1221 : if (good == NULL) { +; 1234 : if (good == NULL) { 00094 48 83 7d 48 00 cmp QWORD PTR good$[rbp], 0 00099 75 41 jne SHORT $LN44@stbi__conv -; 1222 : STBI_FREE(data); +; 1235 : STBI_FREE(data); 0009b 48 8b 8d 80 01 00 00 mov rcx, QWORD PTR data$[rbp] 000a2 ff 15 00 00 00 00 call QWORD PTR __imp_free -; 1223 : return stbi__errpuc("outofmem", "Out of memory"); +; 1236 : return stbi__errpuc("outofmem", "Out of memory"); 000a8 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_08NOGIMCHF@outofmem@ @@ -39462,9 +39482,9 @@ $LN62@stbi__conv: 000d7 e9 6a 09 00 00 jmp $LN1@stbi__conv $LN44@stbi__conv: -; 1224 : } -; 1225 : -; 1226 : for (j = 0; j < (int)y; ++j) { +; 1237 : } +; 1238 : +; 1239 : for (j = 0; j < (int)y; ++j) { 000dc c7 45 24 00 00 00 00 mov DWORD PTR j$[rbp], 0 @@ -39480,7 +39500,7 @@ $LN4@stbi__conv: 000f6 0f 8d 39 09 00 00 jge $LN3@stbi__conv -; 1227 : unsigned char* src = data + j * x * img_n; +; 1240 : unsigned char* src = data + j * x * img_n; 000fc 8b 45 24 mov eax, DWORD PTR j$[rbp] 000ff 0f af 85 98 01 @@ -39494,7 +39514,7 @@ $LN4@stbi__conv: 00119 48 8b c1 mov rax, rcx 0011c 48 89 45 68 mov QWORD PTR src$1[rbp], rax -; 1228 : unsigned char* dest = good + j * x * req_comp; +; 1241 : unsigned char* dest = good + j * x * req_comp; 00120 8b 45 24 mov eax, DWORD PTR j$[rbp] 00123 0f af 85 98 01 @@ -39508,12 +39528,12 @@ $LN4@stbi__conv: 0013d 48 89 85 88 00 00 00 mov QWORD PTR dest$2[rbp], rax -; 1229 : -; 1230 : #define STBI__COMBO(a,b) ((a)*8+(b)) -; 1231 : #define STBI__CASE(a,b) case STBI__COMBO(a,b): for(i=x-1; i >= 0; --i, src += a, dest += b) -; 1232 : // convert source image with img_n components to one with req_comp components; -; 1233 : // avoid switch per pixel, so use switch per scanline and massive macros -; 1234 : switch (STBI__COMBO(img_n, req_comp)) { +; 1242 : +; 1243 : #define STBI__COMBO(a,b) ((a)*8+(b)) +; 1244 : #define STBI__CASE(a,b) case STBI__COMBO(a,b): for(i=x-1; i >= 0; --i, src += a, dest += b) +; 1245 : // convert source image with img_n components to one with req_comp components; +; 1246 : // avoid switch per pixel, so use switch per scanline and massive macros +; 1247 : switch (STBI__COMBO(img_n, req_comp)) { 00144 8b 85 90 01 00 00 mov eax, DWORD PTR req_comp$[rbp] @@ -39541,7 +39561,7 @@ $LN4@stbi__conv: 0018d ff e0 jmp rax $LN45@stbi__conv: -; 1235 : STBI__CASE(1, 2) { dest[0] = src[0]; dest[1] = 255; } break; +; 1248 : STBI__CASE(1, 2) { dest[0] = src[0]; dest[1] = 255; } break; 0018f 8b 85 98 01 00 00 mov eax, DWORD PTR x$[rbp] @@ -39582,7 +39602,7 @@ $LN8@stbi__conv: 00202 e9 29 08 00 00 jmp $LN5@stbi__conv $LN46@stbi__conv: -; 1236 : STBI__CASE(1, 3) { dest[0] = dest[1] = dest[2] = src[0]; } break; +; 1249 : STBI__CASE(1, 3) { dest[0] = dest[1] = dest[2] = src[0]; } break; 00207 8b 85 98 01 00 00 mov eax, DWORD PTR x$[rbp] @@ -39638,7 +39658,7 @@ $LN11@stbi__conv: 002b9 e9 72 07 00 00 jmp $LN5@stbi__conv $LN47@stbi__conv: -; 1237 : STBI__CASE(1, 4) { dest[0] = dest[1] = dest[2] = src[0]; dest[3] = 255; } break; +; 1250 : STBI__CASE(1, 4) { dest[0] = dest[1] = dest[2] = src[0]; dest[3] = 255; } break; 002be 8b 85 98 01 00 00 mov eax, DWORD PTR x$[rbp] @@ -39700,7 +39720,7 @@ $LN14@stbi__conv: 00388 e9 a3 06 00 00 jmp $LN5@stbi__conv $LN48@stbi__conv: -; 1238 : STBI__CASE(2, 1) { dest[0] = src[0]; } break; +; 1251 : STBI__CASE(2, 1) { dest[0] = src[0]; } break; 0038d 8b 85 98 01 00 00 mov eax, DWORD PTR x$[rbp] @@ -39736,7 +39756,7 @@ $LN17@stbi__conv: 003ec e9 3f 06 00 00 jmp $LN5@stbi__conv $LN49@stbi__conv: -; 1239 : STBI__CASE(2, 3) { dest[0] = dest[1] = dest[2] = src[0]; } break; +; 1252 : STBI__CASE(2, 3) { dest[0] = dest[1] = dest[2] = src[0]; } break; 003f1 8b 85 98 01 00 00 mov eax, DWORD PTR x$[rbp] @@ -39792,7 +39812,7 @@ $LN20@stbi__conv: 004a4 e9 87 05 00 00 jmp $LN5@stbi__conv $LN50@stbi__conv: -; 1240 : STBI__CASE(2, 4) { dest[0] = dest[1] = dest[2] = src[0]; dest[3] = src[1]; } break; +; 1253 : STBI__CASE(2, 4) { dest[0] = dest[1] = dest[2] = src[0]; dest[3] = src[1]; } break; 004a9 8b 85 98 01 00 00 mov eax, DWORD PTR x$[rbp] @@ -39858,7 +39878,7 @@ $LN23@stbi__conv: 00585 e9 a6 04 00 00 jmp $LN5@stbi__conv $LN51@stbi__conv: -; 1241 : STBI__CASE(3, 4) { dest[0] = src[0]; dest[1] = src[1]; dest[2] = src[2]; dest[3] = 255; } break; +; 1254 : STBI__CASE(3, 4) { dest[0] = src[0]; dest[1] = src[1]; dest[2] = src[2]; dest[3] = 255; } break; 0058a 8b 85 98 01 00 00 mov eax, DWORD PTR x$[rbp] @@ -39918,7 +39938,7 @@ $LN26@stbi__conv: 0064f e9 dc 03 00 00 jmp $LN5@stbi__conv $LN52@stbi__conv: -; 1242 : STBI__CASE(3, 1) { dest[0] = stbi__compute_y(src[0], src[1], src[2]); } break; +; 1255 : STBI__CASE(3, 1) { dest[0] = stbi__compute_y(src[0], src[1], src[2]); } break; 00654 8b 85 98 01 00 00 mov eax, DWORD PTR x$[rbp] @@ -39970,7 +39990,7 @@ $LN29@stbi__conv: 006f0 e9 3b 03 00 00 jmp $LN5@stbi__conv $LN53@stbi__conv: -; 1243 : STBI__CASE(3, 2) { dest[0] = stbi__compute_y(src[0], src[1], src[2]); dest[1] = 255; } break; +; 1256 : STBI__CASE(3, 2) { dest[0] = stbi__compute_y(src[0], src[1], src[2]); dest[1] = 255; } break; 006f5 8b 85 98 01 00 00 mov eax, DWORD PTR x$[rbp] @@ -40027,7 +40047,7 @@ $LN32@stbi__conv: 007a6 e9 85 02 00 00 jmp $LN5@stbi__conv $LN54@stbi__conv: -; 1244 : STBI__CASE(4, 1) { dest[0] = stbi__compute_y(src[0], src[1], src[2]); } break; +; 1257 : STBI__CASE(4, 1) { dest[0] = stbi__compute_y(src[0], src[1], src[2]); } break; 007ab 8b 85 98 01 00 00 mov eax, DWORD PTR x$[rbp] @@ -40079,7 +40099,7 @@ $LN35@stbi__conv: 00847 e9 e4 01 00 00 jmp $LN5@stbi__conv $LN55@stbi__conv: -; 1245 : STBI__CASE(4, 2) { dest[0] = stbi__compute_y(src[0], src[1], src[2]); dest[1] = src[3]; } break; +; 1258 : STBI__CASE(4, 2) { dest[0] = stbi__compute_y(src[0], src[1], src[2]); dest[1] = src[3]; } break; 0084c 8b 85 98 01 00 00 mov eax, DWORD PTR x$[rbp] @@ -40141,7 +40161,7 @@ $LN38@stbi__conv: 00912 e9 19 01 00 00 jmp $LN5@stbi__conv $LN56@stbi__conv: -; 1246 : STBI__CASE(4, 3) { dest[0] = src[0]; dest[1] = src[1]; dest[2] = src[2]; } break; +; 1259 : STBI__CASE(4, 3) { dest[0] = src[0]; dest[1] = src[1]; dest[2] = src[2]; } break; 00917 8b 85 98 01 00 00 mov eax, DWORD PTR x$[rbp] @@ -40195,13 +40215,13 @@ $LN41@stbi__conv: 009c4 eb 6a jmp SHORT $LN5@stbi__conv $LN57@stbi__conv: -; 1247 : default: STBI_ASSERT(0); STBI_FREE(data); STBI_FREE(good); return stbi__errpuc("unsupported", "Unsupported format conversion"); +; 1260 : default: STBI_ASSERT(0); STBI_FREE(data); STBI_FREE(good); return stbi__errpuc("unsupported", "Unsupported format conversion"); 009c6 33 c0 xor eax, eax 009c8 85 c0 test eax, eax 009ca 75 1c jne SHORT $LN63@stbi__conv - 009cc 41 b8 df 04 00 - 00 mov r8d, 1247 ; 000004dfH + 009cc 41 b8 ec 04 00 + 00 mov r8d, 1260 ; 000004ecH 009d2 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_1KA@LPJPGBDN@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@ 009d9 48 8d 0d 00 00 @@ -40236,27 +40256,27 @@ $LN65@stbi__conv: 00a2e eb 16 jmp SHORT $LN1@stbi__conv $LN5@stbi__conv: -; 1248 : } -; 1249 : #undef STBI__CASE -; 1250 : } +; 1261 : } +; 1262 : #undef STBI__CASE +; 1263 : } 00a30 e9 b0 f6 ff ff jmp $LN2@stbi__conv $LN3@stbi__conv: -; 1251 : -; 1252 : STBI_FREE(data); +; 1264 : +; 1265 : STBI_FREE(data); 00a35 48 8b 8d 80 01 00 00 mov rcx, QWORD PTR data$[rbp] 00a3c ff 15 00 00 00 00 call QWORD PTR __imp_free -; 1253 : return good; +; 1266 : return good; 00a42 48 8b 45 48 mov rax, QWORD PTR good$[rbp] $LN1@stbi__conv: -; 1254 : } +; 1267 : } 00a46 48 8d a5 68 01 00 00 lea rsp, QWORD PTR [rbp+360] @@ -40301,7 +40321,7 @@ g$ = 232 b$ = 240 stbi__compute_y PROC ; COMDAT -; 1204 : { +; 1217 : { 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 00005 89 54 24 10 mov DWORD PTR [rsp+16], edx @@ -40315,7 +40335,7 @@ stbi__compute_y PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00022 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 1205 : return (stbi_uc)(((r * 77) + (g * 150) + (29 * b)) >> 8); +; 1218 : return (stbi_uc)(((r * 77) + (g * 150) + (29 * b)) >> 8); 00027 6b 85 e0 00 00 00 4d imul eax, DWORD PTR r$[rbp], 77 ; 0000004dH @@ -40327,7 +40347,7 @@ stbi__compute_y PROC ; COMDAT 00041 03 c1 add eax, ecx 00043 c1 f8 08 sar eax, 8 -; 1206 : } +; 1219 : } 00046 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] @@ -40344,7 +40364,7 @@ z$ = 4 s$ = 256 stbi__get32le PROC ; COMDAT -; 1180 : { +; 1193 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -40356,14 +40376,14 @@ stbi__get32le PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 1181 : stbi__uint32 z = stbi__get16le(s); +; 1194 : stbi__uint32 z = stbi__get16le(s); 0001f 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] 00026 e8 00 00 00 00 call stbi__get16le 0002b 89 45 04 mov DWORD PTR z$[rbp], eax -; 1182 : z += (stbi__uint32)stbi__get16le(s) << 16; +; 1195 : z += (stbi__uint32)stbi__get16le(s) << 16; 0002e 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -40374,11 +40394,11 @@ stbi__get32le PROC ; COMDAT 00042 8b c1 mov eax, ecx 00044 89 45 04 mov DWORD PTR z$[rbp], eax -; 1183 : return z; +; 1196 : return z; 00047 8b 45 04 mov eax, DWORD PTR z$[rbp] -; 1184 : } +; 1197 : } 0004a 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -40395,7 +40415,7 @@ z$ = 4 s$ = 256 stbi__get16le PROC ; COMDAT -; 1172 : { +; 1185 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -40407,7 +40427,7 @@ stbi__get16le PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 1173 : int z = stbi__get8(s); +; 1186 : int z = stbi__get8(s); 0001f 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -40415,7 +40435,7 @@ stbi__get16le PROC ; COMDAT 0002b 0f b6 c0 movzx eax, al 0002e 89 45 04 mov DWORD PTR z$[rbp], eax -; 1174 : return z + (stbi__get8(s) << 8); +; 1187 : return z + (stbi__get8(s) << 8); 00031 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -40426,7 +40446,7 @@ stbi__get16le PROC ; COMDAT 00046 03 c8 add ecx, eax 00048 8b c1 mov eax, ecx -; 1175 : } +; 1188 : } 0004a 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -40444,7 +40464,7 @@ tv66 = 212 s$ = 256 stbi__get32be PROC ; COMDAT -; 1162 : { +; 1175 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -40456,14 +40476,14 @@ stbi__get32be PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 1163 : stbi__uint32 z = stbi__get16be(s); +; 1176 : stbi__uint32 z = stbi__get16be(s); 0001f 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] 00026 e8 00 00 00 00 call stbi__get16be 0002b 89 45 04 mov DWORD PTR z$[rbp], eax -; 1164 : return (z << 16) + stbi__get16be(s); +; 1177 : return (z << 16) + stbi__get16be(s); 0002e 8b 45 04 mov eax, DWORD PTR z$[rbp] 00031 c1 e0 10 shl eax, 16 @@ -40477,7 +40497,7 @@ stbi__get32be PROC ; COMDAT 0004c 03 c8 add ecx, eax 0004e 8b c1 mov eax, ecx -; 1165 : } +; 1178 : } 00050 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -40495,7 +40515,7 @@ tv67 = 212 s$ = 256 stbi__get16be PROC ; COMDAT -; 1152 : { +; 1165 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -40507,7 +40527,7 @@ stbi__get16be PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 1153 : int z = stbi__get8(s); +; 1166 : int z = stbi__get8(s); 0001f 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -40515,7 +40535,7 @@ stbi__get16be PROC ; COMDAT 0002b 0f b6 c0 movzx eax, al 0002e 89 45 04 mov DWORD PTR z$[rbp], eax -; 1154 : return (z << 8) + stbi__get8(s); +; 1167 : return (z << 8) + stbi__get8(s); 00031 8b 45 04 mov eax, DWORD PTR z$[rbp] 00034 c1 e0 08 shl eax, 8 @@ -40530,7 +40550,7 @@ stbi__get16be PROC ; COMDAT 00052 03 c8 add ecx, eax 00054 8b c1 mov eax, ecx -; 1155 : } +; 1168 : } 00056 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -40552,7 +40572,7 @@ buffer$ = 328 n$ = 336 stbi__getn PROC ; COMDAT -; 1123 : { +; 1136 : { 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx @@ -40566,7 +40586,7 @@ stbi__getn PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00024 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 1124 : if (s->io.read) { +; 1137 : if (s->io.read) { 00029 48 8b 85 40 01 00 00 mov rax, QWORD PTR s$[rbp] @@ -40574,7 +40594,7 @@ stbi__getn PROC ; COMDAT 00035 0f 84 e0 00 00 00 je $LN2@stbi__getn -; 1125 : int blen = (int)(s->img_buffer_end - s->img_buffer); +; 1138 : int blen = (int)(s->img_buffer_end - s->img_buffer); 0003b 48 8b 85 40 01 00 00 mov rax, QWORD PTR s$[rbp] @@ -40587,7 +40607,7 @@ stbi__getn PROC ; COMDAT 00057 48 2b c1 sub rax, rcx 0005a 89 45 04 mov DWORD PTR blen$1[rbp], eax -; 1126 : if (blen < n) { +; 1139 : if (blen < n) { 0005d 8b 85 50 01 00 00 mov eax, DWORD PTR n$[rbp] @@ -40595,9 +40615,9 @@ stbi__getn PROC ; COMDAT 00066 0f 8d af 00 00 00 jge $LN3@stbi__getn -; 1127 : int res, count; -; 1128 : -; 1129 : memcpy(buffer, s->img_buffer, blen); +; 1140 : int res, count; +; 1141 : +; 1142 : memcpy(buffer, s->img_buffer, blen); 0006c 48 63 45 04 movsxd rax, DWORD PTR blen$1[rbp] 00070 4c 8b c0 mov r8, rax @@ -40609,8 +40629,8 @@ stbi__getn PROC ; COMDAT 00 00 mov rcx, QWORD PTR buffer$[rbp] 00088 e8 00 00 00 00 call memcpy -; 1130 : -; 1131 : count = (s->io.read)(s->io_user_data, (char*)buffer + blen, n - blen); +; 1143 : +; 1144 : count = (s->io.read)(s->io_user_data, (char*)buffer + blen, n - blen); 0008d 8b 45 04 mov eax, DWORD PTR blen$1[rbp] 00090 8b 8d 50 01 00 @@ -40632,7 +40652,7 @@ stbi__getn PROC ; COMDAT 000c3 ff 50 10 call QWORD PTR [rax+16] 000c6 89 45 44 mov DWORD PTR count$3[rbp], eax -; 1132 : res = (count == (n - blen)); +; 1145 : res = (count == (n - blen)); 000c9 8b 45 04 mov eax, DWORD PTR blen$1[rbp] 000cc 8b 8d 50 01 00 @@ -40652,7 +40672,7 @@ $LN8@stbi__getn: 00 mov eax, DWORD PTR tv87[rbp] 000f7 89 45 24 mov DWORD PTR res$2[rbp], eax -; 1133 : s->img_buffer = s->img_buffer_end; +; 1146 : s->img_buffer = s->img_buffer_end; 000fa 48 8b 85 40 01 00 00 mov rax, QWORD PTR s$[rbp] @@ -40663,17 +40683,17 @@ $LN8@stbi__getn: 0010f 48 89 88 c0 00 00 00 mov QWORD PTR [rax+192], rcx -; 1134 : return res; +; 1147 : return res; 00116 8b 45 24 mov eax, DWORD PTR res$2[rbp] 00119 eb 77 jmp SHORT $LN1@stbi__getn $LN3@stbi__getn: $LN2@stbi__getn: -; 1135 : } -; 1136 : } -; 1137 : -; 1138 : if (s->img_buffer + n <= s->img_buffer_end) { +; 1148 : } +; 1149 : } +; 1150 : +; 1151 : if (s->img_buffer + n <= s->img_buffer_end) { 0011b 48 63 85 50 01 00 00 movsxd rax, DWORD PTR n$[rbp] @@ -40687,7 +40707,7 @@ $LN2@stbi__getn: 00 00 cmp rax, QWORD PTR [rcx+200] 0013e 77 50 ja SHORT $LN4@stbi__getn -; 1139 : memcpy(buffer, s->img_buffer, n); +; 1152 : memcpy(buffer, s->img_buffer, n); 00140 48 63 85 50 01 00 00 movsxd rax, DWORD PTR n$[rbp] @@ -40700,7 +40720,7 @@ $LN2@stbi__getn: 00 00 mov rcx, QWORD PTR buffer$[rbp] 0015f e8 00 00 00 00 call memcpy -; 1140 : s->img_buffer += n; +; 1153 : s->img_buffer += n; 00164 48 63 85 50 01 00 00 movsxd rax, DWORD PTR n$[rbp] @@ -40713,24 +40733,24 @@ $LN2@stbi__getn: 00180 48 89 81 c0 00 00 00 mov QWORD PTR [rcx+192], rax -; 1141 : return 1; +; 1154 : return 1; 00187 b8 01 00 00 00 mov eax, 1 0018c eb 04 jmp SHORT $LN1@stbi__getn -; 1142 : } +; 1155 : } 0018e eb 02 jmp SHORT $LN5@stbi__getn $LN4@stbi__getn: -; 1143 : else -; 1144 : return 0; +; 1156 : else +; 1157 : return 0; 00190 33 c0 xor eax, eax $LN5@stbi__getn: $LN1@stbi__getn: -; 1145 : } +; 1158 : } 00192 48 8d a5 28 01 00 00 lea rsp, QWORD PTR [rbp+296] @@ -40748,7 +40768,7 @@ s$ = 256 n$ = 264 stbi__skip PROC ; COMDAT -; 1101 : { +; 1114 : { 00000 89 54 24 10 mov DWORD PTR [rsp+16], edx 00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx @@ -40761,7 +40781,7 @@ stbi__skip PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001e e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 1102 : if (n == 0) return; // already there! +; 1115 : if (n == 0) return; // already there! 00023 83 bd 08 01 00 00 00 cmp DWORD PTR n$[rbp], 0 @@ -40769,13 +40789,13 @@ stbi__skip PROC ; COMDAT 0002c e9 ca 00 00 00 jmp $LN1@stbi__skip $LN2@stbi__skip: -; 1103 : if (n < 0) { +; 1116 : if (n < 0) { 00031 83 bd 08 01 00 00 00 cmp DWORD PTR n$[rbp], 0 00038 7d 21 jge SHORT $LN3@stbi__skip -; 1104 : s->img_buffer = s->img_buffer_end; +; 1117 : s->img_buffer = s->img_buffer_end; 0003a 48 8b 85 00 01 00 00 mov rax, QWORD PTR s$[rbp] @@ -40786,20 +40806,20 @@ $LN2@stbi__skip: 0004f 48 89 88 c0 00 00 00 mov QWORD PTR [rax+192], rcx -; 1105 : return; +; 1118 : return; 00056 e9 a0 00 00 00 jmp $LN1@stbi__skip $LN3@stbi__skip: -; 1106 : } -; 1107 : if (s->io.read) { +; 1119 : } +; 1120 : if (s->io.read) { 0005b 48 8b 85 00 01 00 00 mov rax, QWORD PTR s$[rbp] 00062 48 83 78 10 00 cmp QWORD PTR [rax+16], 0 00067 74 6f je SHORT $LN4@stbi__skip -; 1108 : int blen = (int)(s->img_buffer_end - s->img_buffer); +; 1121 : int blen = (int)(s->img_buffer_end - s->img_buffer); 00069 48 8b 85 00 01 00 00 mov rax, QWORD PTR s$[rbp] @@ -40812,14 +40832,14 @@ $LN3@stbi__skip: 00085 48 2b c1 sub rax, rcx 00088 89 45 04 mov DWORD PTR blen$1[rbp], eax -; 1109 : if (blen < n) { +; 1122 : if (blen < n) { 0008b 8b 85 08 01 00 00 mov eax, DWORD PTR n$[rbp] 00091 39 45 04 cmp DWORD PTR blen$1[rbp], eax 00094 7d 42 jge SHORT $LN5@stbi__skip -; 1110 : s->img_buffer = s->img_buffer_end; +; 1123 : s->img_buffer = s->img_buffer_end; 00096 48 8b 85 00 01 00 00 mov rax, QWORD PTR s$[rbp] @@ -40830,7 +40850,7 @@ $LN3@stbi__skip: 000ab 48 89 88 c0 00 00 00 mov QWORD PTR [rax+192], rcx -; 1111 : (s->io.skip)(s->io_user_data, n - blen); +; 1124 : (s->io.skip)(s->io_user_data, n - blen); 000b2 8b 45 04 mov eax, DWORD PTR blen$1[rbp] 000b5 8b 8d 08 01 00 @@ -40845,15 +40865,15 @@ $LN3@stbi__skip: 00 00 mov rax, QWORD PTR s$[rbp] 000d3 ff 50 18 call QWORD PTR [rax+24] -; 1112 : return; +; 1125 : return; 000d6 eb 23 jmp SHORT $LN1@stbi__skip $LN5@stbi__skip: $LN4@stbi__skip: -; 1113 : } -; 1114 : } -; 1115 : s->img_buffer += n; +; 1126 : } +; 1127 : } +; 1128 : s->img_buffer += n; 000d8 48 63 85 08 01 00 00 movsxd rax, DWORD PTR n$[rbp] @@ -40867,7 +40887,7 @@ $LN4@stbi__skip: 00 00 mov QWORD PTR [rcx+192], rax $LN1@stbi__skip: -; 1116 : } +; 1129 : } 000fb 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -40884,7 +40904,7 @@ tv76 = 192 s$ = 240 stbi__at_eof PROC ; COMDAT -; 1085 : { +; 1098 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -40896,14 +40916,14 @@ stbi__at_eof PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 1086 : if (s->io.read) { +; 1099 : if (s->io.read) { 0001f 48 8b 85 f0 00 00 00 mov rax, QWORD PTR s$[rbp] 00026 48 83 78 10 00 cmp QWORD PTR [rax+16], 0 0002b 74 31 je SHORT $LN2@stbi__at_e -; 1087 : if (!(s->io.eof)(s->io_user_data)) return 0; +; 1100 : if (!(s->io.eof)(s->io_user_data)) return 0; 0002d 48 8b 85 f0 00 00 00 mov rax, QWORD PTR s$[rbp] @@ -40917,9 +40937,9 @@ stbi__at_eof PROC ; COMDAT 00048 eb 4e jmp SHORT $LN1@stbi__at_e $LN3@stbi__at_e: -; 1088 : // if feof() is true, check if buffer = end -; 1089 : // special case: we've only got the special 0 character at the end -; 1090 : if (s->read_from_callbacks == 0) return 1; +; 1101 : // if feof() is true, check if buffer = end +; 1102 : // special case: we've only got the special 0 character at the end +; 1103 : if (s->read_from_callbacks == 0) return 1; 0004a 48 8b 85 f0 00 00 00 mov rax, QWORD PTR s$[rbp] @@ -40930,9 +40950,9 @@ $LN3@stbi__at_e: $LN4@stbi__at_e: $LN2@stbi__at_e: -; 1091 : } -; 1092 : -; 1093 : return s->img_buffer >= s->img_buffer_end; +; 1104 : } +; 1105 : +; 1106 : return s->img_buffer >= s->img_buffer_end; 0005e 48 8b 85 f0 00 00 00 mov rax, QWORD PTR s$[rbp] @@ -40954,7 +40974,7 @@ $LN7@stbi__at_e: 00 mov eax, DWORD PTR tv76[rbp] $LN1@stbi__at_e: -; 1094 : } +; 1107 : } 00098 48 8d a5 d8 00 00 00 lea rsp, QWORD PTR [rbp+216] @@ -40972,7 +40992,7 @@ tv72 = 192 s$ = 240 stbi__get8 PROC ; COMDAT -; 1071 : { +; 1084 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -40984,7 +41004,7 @@ stbi__get8 PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 1072 : if (s->img_buffer < s->img_buffer_end) +; 1085 : if (s->img_buffer < s->img_buffer_end) 0001f 48 8b 85 f0 00 00 00 mov rax, QWORD PTR s$[rbp] @@ -40996,7 +41016,7 @@ stbi__get8 PROC ; COMDAT 00 00 cmp QWORD PTR [rax+192], rcx 0003b 73 3f jae SHORT $LN2@stbi__get8 -; 1073 : return *s->img_buffer++; +; 1086 : return *s->img_buffer++; 0003d 48 8b 85 f0 00 00 00 mov rax, QWORD PTR s$[rbp] @@ -41019,20 +41039,20 @@ stbi__get8 PROC ; COMDAT 0007a eb 5a jmp SHORT $LN1@stbi__get8 $LN2@stbi__get8: -; 1074 : if (s->read_from_callbacks) { +; 1087 : if (s->read_from_callbacks) { 0007c 48 8b 85 f0 00 00 00 mov rax, QWORD PTR s$[rbp] 00083 83 78 30 00 cmp DWORD PTR [rax+48], 0 00087 74 4b je SHORT $LN3@stbi__get8 -; 1075 : stbi__refill_buffer(s); +; 1088 : stbi__refill_buffer(s); 00089 48 8b 8d f0 00 00 00 mov rcx, QWORD PTR s$[rbp] 00090 e8 00 00 00 00 call stbi__refill_buffer -; 1076 : return *s->img_buffer++; +; 1089 : return *s->img_buffer++; 00095 48 8b 85 f0 00 00 00 mov rax, QWORD PTR s$[rbp] @@ -41055,13 +41075,13 @@ $LN2@stbi__get8: 000d2 eb 02 jmp SHORT $LN1@stbi__get8 $LN3@stbi__get8: -; 1077 : } -; 1078 : return 0; +; 1090 : } +; 1091 : return 0; 000d4 32 c0 xor al, al $LN1@stbi__get8: -; 1079 : } +; 1092 : } 000d6 48 8d a5 d8 00 00 00 lea rsp, QWORD PTR [rbp+216] @@ -41087,7 +41107,7 @@ comp$ = 376 req_comp$ = 384 stbi__loadf_main PROC ; COMDAT -; 916 : { +; 929 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -41113,9 +41133,9 @@ stbi__loadf_main PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 917 : unsigned char* data; -; 918 : #ifndef STBI_NO_HDR -; 919 : if (stbi__hdr_test(s)) { +; 930 : unsigned char* data; +; 931 : #ifndef STBI_NO_HDR +; 932 : if (stbi__hdr_test(s)) { 00058 48 8b 8d 60 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -41123,8 +41143,8 @@ stbi__loadf_main PROC ; COMDAT 00064 85 c0 test eax, eax 00066 74 70 je SHORT $LN2@stbi__load -; 920 : stbi__result_info ri; -; 921 : float* hdr_data = stbi__hdr_load(s, x, y, comp, req_comp, &ri); +; 933 : stbi__result_info ri; +; 934 : float* hdr_data = stbi__hdr_load(s, x, y, comp, req_comp, &ri); 00068 48 8d 45 28 lea rax, QWORD PTR ri$4[rbp] 0006c 48 89 44 24 28 mov QWORD PTR [rsp+40], rax @@ -41142,12 +41162,12 @@ stbi__loadf_main PROC ; COMDAT 00097 e8 00 00 00 00 call stbi__hdr_load 0009c 48 89 45 58 mov QWORD PTR hdr_data$5[rbp], rax -; 922 : if (hdr_data) +; 935 : if (hdr_data) 000a0 48 83 7d 58 00 cmp QWORD PTR hdr_data$5[rbp], 0 000a5 74 28 je SHORT $LN3@stbi__load -; 923 : stbi__float_postprocess(hdr_data, x, y, comp, req_comp); +; 936 : stbi__float_postprocess(hdr_data, x, y, comp, req_comp); 000a7 8b 85 80 01 00 00 mov eax, DWORD PTR req_comp$[rbp] @@ -41162,15 +41182,15 @@ stbi__loadf_main PROC ; COMDAT 000ca e8 00 00 00 00 call stbi__float_postprocess $LN3@stbi__load: -; 924 : return hdr_data; +; 937 : return hdr_data; 000cf 48 8b 45 58 mov rax, QWORD PTR hdr_data$5[rbp] 000d3 e9 b0 00 00 00 jmp $LN1@stbi__load $LN2@stbi__load: -; 925 : } -; 926 : #endif -; 927 : data = stbi__load_and_postprocess_8bit(s, x, y, comp, req_comp); +; 938 : } +; 939 : #endif +; 940 : data = stbi__load_and_postprocess_8bit(s, x, y, comp, req_comp); 000d8 8b 85 80 01 00 00 mov eax, DWORD PTR req_comp$[rbp] @@ -41186,12 +41206,12 @@ $LN2@stbi__load: 000fe e8 00 00 00 00 call stbi__load_and_postprocess_8bit 00103 48 89 45 08 mov QWORD PTR data$[rbp], rax -; 928 : if (data) +; 941 : if (data) 00107 48 83 7d 08 00 cmp QWORD PTR data$[rbp], 0 0010c 74 4b je SHORT $LN4@stbi__load -; 929 : return stbi__ldr_to_hdr(data, *x, *y, req_comp ? req_comp : *comp); +; 942 : return stbi__ldr_to_hdr(data, *x, *y, req_comp ? req_comp : *comp); 0010e 83 bd 80 01 00 00 00 cmp DWORD PTR req_comp$[rbp], 0 @@ -41221,7 +41241,7 @@ $LN7@stbi__load: 00157 eb 2f jmp SHORT $LN1@stbi__load $LN4@stbi__load: -; 930 : return stbi__errpf("unknown image type", "Image not of any known type, or corrupt"); +; 943 : return stbi__errpf("unknown image type", "Image not of any known type, or corrupt"); 00159 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0BD@CBEDEJPH@unknown?5image?5type@ @@ -41241,7 +41261,7 @@ $LN9@stbi__load: 00 00 mov rax, QWORD PTR tv129[rbp] $LN1@stbi__load: -; 931 : } +; 944 : } 00188 48 8b f8 mov rdi, rax 0018b 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48] @@ -42921,7 +42941,7 @@ y$ = 432 comp$ = 440 stbi__hdr_to_ldr PROC ; COMDAT -; 1342 : { +; 1355 : { 00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d 00005 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d @@ -42936,9 +42956,9 @@ stbi__hdr_to_ldr PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00028 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 1343 : int i, k, n; -; 1344 : stbi_uc* output; -; 1345 : if (!data) return NULL; +; 1356 : int i, k, n; +; 1357 : stbi_uc* output; +; 1358 : if (!data) return NULL; 0002d 48 83 bd a0 01 00 00 00 cmp QWORD PTR data$[rbp], 0 @@ -42947,7 +42967,7 @@ stbi__hdr_to_ldr PROC ; COMDAT 00039 e9 3c 02 00 00 jmp $LN1@stbi__hdr_ $LN8@stbi__hdr_: -; 1346 : output = (stbi_uc*)stbi__malloc_mad3(x, y, comp, 0); +; 1359 : output = (stbi_uc*)stbi__malloc_mad3(x, y, comp, 0); 0003e 45 33 c9 xor r9d, r9d 00041 44 8b 85 b8 01 @@ -42959,7 +42979,7 @@ $LN8@stbi__hdr_: 00054 e8 00 00 00 00 call stbi__malloc_mad3 00059 48 89 45 68 mov QWORD PTR output$[rbp], rax -; 1347 : if (output == NULL) { STBI_FREE(data); return stbi__errpuc("outofmem", "Out of memory"); } +; 1360 : if (output == NULL) { STBI_FREE(data); return stbi__errpuc("outofmem", "Out of memory"); } 0005d 48 83 7d 68 00 cmp QWORD PTR output$[rbp], 0 00062 75 41 jne SHORT $LN9@stbi__hdr_ @@ -42986,8 +43006,8 @@ $LN19@stbi__hdr_: 000a0 e9 d5 01 00 00 jmp $LN1@stbi__hdr_ $LN9@stbi__hdr_: -; 1348 : // compute number of non-alpha components -; 1349 : if (comp & 1) n = comp; else n = comp - 1; +; 1361 : // compute number of non-alpha components +; 1362 : if (comp & 1) n = comp; else n = comp - 1; 000a5 8b 85 b8 01 00 00 mov eax, DWORD PTR comp$[rbp] @@ -43005,7 +43025,7 @@ $LN10@stbi__hdr_: 000c5 89 45 44 mov DWORD PTR n$[rbp], eax $LN11@stbi__hdr_: -; 1350 : for (i = 0; i < x * y; ++i) { +; 1363 : for (i = 0; i < x * y; ++i) { 000c8 c7 45 04 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -43023,7 +43043,7 @@ $LN4@stbi__hdr_: 000e9 0f 8d 7a 01 00 00 jge $LN3@stbi__hdr_ -; 1351 : for (k = 0; k < n; ++k) { +; 1364 : for (k = 0; k < n; ++k) { 000ef c7 45 24 00 00 00 00 mov DWORD PTR k$[rbp], 0 @@ -43038,7 +43058,7 @@ $LN7@stbi__hdr_: 00106 0f 8d bf 00 00 00 jge $LN6@stbi__hdr_ -; 1352 : float z = (float)pow(data[i * comp + k] * stbi__h2l_scale_i, stbi__h2l_gamma_i) * 255 + 0.5f; +; 1365 : float z = (float)pow(data[i * comp + k] * stbi__h2l_scale_i, stbi__h2l_gamma_i) * 255 + 0.5f; 0010c f3 0f 5a 05 00 00 00 00 cvtss2sd xmm0, DWORD PTR stbi__h2l_gamma_i @@ -43067,7 +43087,7 @@ $LN7@stbi__hdr_: 00167 f3 0f 11 85 84 00 00 00 movss DWORD PTR z$1[rbp], xmm0 -; 1353 : if (z < 0) z = 0; +; 1366 : if (z < 0) z = 0; 0016f 0f 57 c0 xorps xmm0, xmm0 00172 0f 2f 85 84 00 @@ -43078,7 +43098,7 @@ $LN7@stbi__hdr_: 00 00 00 movss DWORD PTR z$1[rbp], xmm0 $LN12@stbi__hdr_: -; 1354 : if (z > 255) z = 255; +; 1367 : if (z > 255) z = 255; 00186 f3 0f 10 85 84 00 00 00 movss xmm0, DWORD PTR z$1[rbp] @@ -43091,7 +43111,7 @@ $LN12@stbi__hdr_: 00 00 00 movss DWORD PTR z$1[rbp], xmm0 $LN13@stbi__hdr_: -; 1355 : output[i * comp + k] = (stbi_uc)stbi__float2int(z); +; 1368 : output[i * comp + k] = (stbi_uc)stbi__float2int(z); 001a7 f3 0f 2c 85 84 00 00 00 cvttss2si eax, DWORD PTR z$1[rbp] @@ -43103,12 +43123,12 @@ $LN13@stbi__hdr_: 001bf 48 8b 55 68 mov rdx, QWORD PTR output$[rbp] 001c3 88 04 0a mov BYTE PTR [rdx+rcx], al -; 1356 : } +; 1369 : } 001c6 e9 2d ff ff ff jmp $LN5@stbi__hdr_ $LN6@stbi__hdr_: -; 1357 : if (k < comp) { +; 1370 : if (k < comp) { 001cb 8b 85 b8 01 00 00 mov eax, DWORD PTR comp$[rbp] @@ -43116,7 +43136,7 @@ $LN6@stbi__hdr_: 001d4 0f 8d 8a 00 00 00 jge $LN14@stbi__hdr_ -; 1358 : float z = data[i * comp + k] * 255 + 0.5f; +; 1371 : float z = data[i * comp + k] * 255 + 0.5f; 001da 8b 45 04 mov eax, DWORD PTR i$[rbp] 001dd 0f af 85 b8 01 @@ -43133,7 +43153,7 @@ $LN6@stbi__hdr_: 00205 f3 0f 11 85 a4 00 00 00 movss DWORD PTR z$2[rbp], xmm0 -; 1359 : if (z < 0) z = 0; +; 1372 : if (z < 0) z = 0; 0020d 0f 57 c0 xorps xmm0, xmm0 00210 0f 2f 85 a4 00 @@ -43144,7 +43164,7 @@ $LN6@stbi__hdr_: 00 00 00 movss DWORD PTR z$2[rbp], xmm0 $LN15@stbi__hdr_: -; 1360 : if (z > 255) z = 255; +; 1373 : if (z > 255) z = 255; 00224 f3 0f 10 85 a4 00 00 00 movss xmm0, DWORD PTR z$2[rbp] @@ -43157,7 +43177,7 @@ $LN15@stbi__hdr_: 00 00 00 movss DWORD PTR z$2[rbp], xmm0 $LN16@stbi__hdr_: -; 1361 : output[i * comp + k] = (stbi_uc)stbi__float2int(z); +; 1374 : output[i * comp + k] = (stbi_uc)stbi__float2int(z); 00245 f3 0f 2c 85 a4 00 00 00 cvttss2si eax, DWORD PTR z$2[rbp] @@ -43170,25 +43190,25 @@ $LN16@stbi__hdr_: 00261 88 04 0a mov BYTE PTR [rdx+rcx], al $LN14@stbi__hdr_: -; 1362 : } -; 1363 : } +; 1375 : } +; 1376 : } 00264 e9 68 fe ff ff jmp $LN2@stbi__hdr_ $LN3@stbi__hdr_: -; 1364 : STBI_FREE(data); +; 1377 : STBI_FREE(data); 00269 48 8b 8d a0 01 00 00 mov rcx, QWORD PTR data$[rbp] 00270 ff 15 00 00 00 00 call QWORD PTR __imp_free -; 1365 : return output; +; 1378 : return output; 00276 48 8b 45 68 mov rax, QWORD PTR output$[rbp] $LN1@stbi__hdr_: -; 1366 : } +; 1379 : } 0027a 48 8d a5 88 01 00 00 lea rsp, QWORD PTR [rbp+392] @@ -43213,7 +43233,7 @@ y$ = 368 comp$ = 376 stbi__ldr_to_hdr PROC ; COMDAT -; 1316 : { +; 1329 : { 00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d 00005 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d @@ -43228,9 +43248,9 @@ stbi__ldr_to_hdr PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00028 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 1317 : int i, k, n; -; 1318 : float* output; -; 1319 : if (!data) return NULL; +; 1330 : int i, k, n; +; 1331 : float* output; +; 1332 : if (!data) return NULL; 0002d 48 83 bd 60 01 00 00 00 cmp QWORD PTR data$[rbp], 0 @@ -43239,7 +43259,7 @@ stbi__ldr_to_hdr PROC ; COMDAT 00039 e9 d0 01 00 00 jmp $LN1@stbi__ldr_ $LN11@stbi__ldr_: -; 1320 : output = (float*)stbi__malloc_mad4(x, y, comp, sizeof(float), 0); +; 1333 : output = (float*)stbi__malloc_mad4(x, y, comp, sizeof(float), 0); 0003e c7 44 24 20 00 00 00 00 mov DWORD PTR [rsp+32], 0 @@ -43254,7 +43274,7 @@ $LN11@stbi__ldr_: 0005f e8 00 00 00 00 call stbi__malloc_mad4 00064 48 89 45 68 mov QWORD PTR output$[rbp], rax -; 1321 : if (output == NULL) { STBI_FREE(data); return stbi__errpf("outofmem", "Out of memory"); } +; 1334 : if (output == NULL) { STBI_FREE(data); return stbi__errpf("outofmem", "Out of memory"); } 00068 48 83 7d 68 00 cmp QWORD PTR output$[rbp], 0 0006d 75 41 jne SHORT $LN12@stbi__ldr_ @@ -43281,8 +43301,8 @@ $LN18@stbi__ldr_: 000ab e9 5e 01 00 00 jmp $LN1@stbi__ldr_ $LN12@stbi__ldr_: -; 1322 : // compute number of non-alpha components -; 1323 : if (comp & 1) n = comp; else n = comp - 1; +; 1335 : // compute number of non-alpha components +; 1336 : if (comp & 1) n = comp; else n = comp - 1; 000b0 8b 85 78 01 00 00 mov eax, DWORD PTR comp$[rbp] @@ -43300,7 +43320,7 @@ $LN13@stbi__ldr_: 000d0 89 45 44 mov DWORD PTR n$[rbp], eax $LN14@stbi__ldr_: -; 1324 : for (i = 0; i < x * y; ++i) { +; 1337 : for (i = 0; i < x * y; ++i) { 000d3 c7 45 04 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -43318,7 +43338,7 @@ $LN4@stbi__ldr_: 000f4 0f 8d 95 00 00 00 jge $LN3@stbi__ldr_ -; 1325 : for (k = 0; k < n; ++k) { +; 1338 : for (k = 0; k < n; ++k) { 000fa c7 45 24 00 00 00 00 mov DWORD PTR k$[rbp], 0 @@ -43332,7 +43352,7 @@ $LN7@stbi__ldr_: 0010e 39 45 24 cmp DWORD PTR k$[rbp], eax 00111 7d 77 jge SHORT $LN6@stbi__ldr_ -; 1326 : output[i * comp + k] = (float)(pow(data[i * comp + k] / 255.0f, stbi__l2h_gamma) * stbi__l2h_scale); +; 1339 : output[i * comp + k] = (float)(pow(data[i * comp + k] / 255.0f, stbi__l2h_gamma) * stbi__l2h_scale); 00113 f3 0f 5a 05 00 00 00 00 cvtss2sd xmm0, DWORD PTR stbi__l2h_gamma @@ -43366,24 +43386,24 @@ $LN7@stbi__ldr_: 0017c 48 8b 4d 68 mov rcx, QWORD PTR output$[rbp] 00180 f3 0f 11 04 81 movss DWORD PTR [rcx+rax*4], xmm0 -; 1327 : } +; 1340 : } 00185 e9 79 ff ff ff jmp $LN5@stbi__ldr_ $LN6@stbi__ldr_: -; 1328 : } +; 1341 : } 0018a e9 4d ff ff ff jmp $LN2@stbi__ldr_ $LN3@stbi__ldr_: -; 1329 : if (n < comp) { +; 1342 : if (n < comp) { 0018f 8b 85 78 01 00 00 mov eax, DWORD PTR comp$[rbp] 00195 39 45 44 cmp DWORD PTR n$[rbp], eax 00198 7d 63 jge SHORT $LN15@stbi__ldr_ -; 1330 : for (i = 0; i < x * y; ++i) { +; 1343 : for (i = 0; i < x * y; ++i) { 0019a c7 45 04 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -43400,7 +43420,7 @@ $LN10@stbi__ldr_: 001b8 39 45 04 cmp DWORD PTR i$[rbp], eax 001bb 7d 40 jge SHORT $LN9@stbi__ldr_ -; 1331 : output[i * comp + n] = data[i * comp + n] / 255.0f; +; 1344 : output[i * comp + n] = data[i * comp + n] / 255.0f; 001bd 8b 45 04 mov eax, DWORD PTR i$[rbp] 001c0 0f af 85 78 01 @@ -43421,26 +43441,26 @@ $LN10@stbi__ldr_: 001f2 48 8b 4d 68 mov rcx, QWORD PTR output$[rbp] 001f6 f3 0f 11 04 81 movss DWORD PTR [rcx+rax*4], xmm0 -; 1332 : } +; 1345 : } 001fb eb a6 jmp SHORT $LN8@stbi__ldr_ $LN9@stbi__ldr_: $LN15@stbi__ldr_: -; 1333 : } -; 1334 : STBI_FREE(data); +; 1346 : } +; 1347 : STBI_FREE(data); 001fd 48 8b 8d 60 01 00 00 mov rcx, QWORD PTR data$[rbp] 00204 ff 15 00 00 00 00 call QWORD PTR __imp_free -; 1335 : return output; +; 1348 : return output; 0020a 48 8b 45 68 mov rax, QWORD PTR output$[rbp] $LN1@stbi__ldr_: -; 1336 : } +; 1349 : } 0020e 48 8d a5 48 01 00 00 lea rsp, QWORD PTR [rbp+328] @@ -44376,7 +44396,7 @@ _TEXT SEGMENT s$ = 224 stbi__pnm_is16 PROC ; COMDAT -; 7193 : { +; 7206 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -44388,7 +44408,7 @@ stbi__pnm_is16 PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 7194 : if (stbi__pnm_info(s, NULL, NULL, NULL) == 16) +; 7207 : if (stbi__pnm_info(s, NULL, NULL, NULL) == 16) 0001f 45 33 c9 xor r9d, r9d 00022 45 33 c0 xor r8d, r8d @@ -44399,18 +44419,18 @@ stbi__pnm_is16 PROC ; COMDAT 00033 83 f8 10 cmp eax, 16 00036 75 07 jne SHORT $LN2@stbi__pnm_ -; 7195 : return 1; +; 7208 : return 1; 00038 b8 01 00 00 00 mov eax, 1 0003d eb 02 jmp SHORT $LN1@stbi__pnm_ $LN2@stbi__pnm_: -; 7196 : return 0; +; 7209 : return 0; 0003f 33 c0 xor eax, eax $LN1@stbi__pnm_: -; 7197 : } +; 7210 : } 00041 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] @@ -44436,7 +44456,7 @@ y$ = 400 comp$ = 408 stbi__pnm_info PROC ; COMDAT -; 7150 : { +; 7163 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -44462,10 +44482,10 @@ stbi__pnm_info PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 7151 : int maxv, dummy; -; 7152 : char c, p, t; -; 7153 : -; 7154 : if (!x) x = &dummy; +; 7164 : int maxv, dummy; +; 7165 : char c, p, t; +; 7166 : +; 7167 : if (!x) x = &dummy; 00058 48 83 bd 88 01 00 00 00 cmp QWORD PTR x$[rbp], 0 @@ -44475,7 +44495,7 @@ stbi__pnm_info PROC ; COMDAT 00 00 mov QWORD PTR x$[rbp], rax $LN2@stbi__pnm_: -; 7155 : if (!y) y = &dummy; +; 7168 : if (!y) y = &dummy; 0006d 48 83 bd 90 01 00 00 00 cmp QWORD PTR y$[rbp], 0 @@ -44485,7 +44505,7 @@ $LN2@stbi__pnm_: 00 00 mov QWORD PTR y$[rbp], rax $LN3@stbi__pnm_: -; 7156 : if (!comp) comp = &dummy; +; 7169 : if (!comp) comp = &dummy; 00082 48 83 bd 98 01 00 00 00 cmp QWORD PTR comp$[rbp], 0 @@ -44495,23 +44515,23 @@ $LN3@stbi__pnm_: 00 00 mov QWORD PTR comp$[rbp], rax $LN4@stbi__pnm_: -; 7157 : -; 7158 : stbi__rewind(s); +; 7170 : +; 7171 : stbi__rewind(s); 00097 48 8b 8d 80 01 00 00 mov rcx, QWORD PTR s$[rbp] 0009e e8 00 00 00 00 call stbi__rewind -; 7159 : -; 7160 : // Get identifier -; 7161 : p = (char)stbi__get8(s); +; 7172 : +; 7173 : // Get identifier +; 7174 : p = (char)stbi__get8(s); 000a3 48 8b 8d 80 01 00 00 mov rcx, QWORD PTR s$[rbp] 000aa e8 00 00 00 00 call stbi__get8 000af 88 45 64 mov BYTE PTR p$[rbp], al -; 7162 : t = (char)stbi__get8(s); +; 7175 : t = (char)stbi__get8(s); 000b2 48 8b 8d 80 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -44519,7 +44539,7 @@ $LN4@stbi__pnm_: 000be 88 85 84 00 00 00 mov BYTE PTR t$[rbp], al -; 7163 : if (p != 'P' || (t != '5' && t != '6')) { +; 7176 : if (p != 'P' || (t != '5' && t != '6')) { 000c4 0f be 45 64 movsx eax, BYTE PTR p$[rbp] 000c8 83 f8 50 cmp eax, 80 ; 00000050H @@ -44534,21 +44554,21 @@ $LN4@stbi__pnm_: 000e3 74 13 je SHORT $LN5@stbi__pnm_ $LN6@stbi__pnm_: -; 7164 : stbi__rewind(s); +; 7177 : stbi__rewind(s); 000e5 48 8b 8d 80 01 00 00 mov rcx, QWORD PTR s$[rbp] 000ec e8 00 00 00 00 call stbi__rewind -; 7165 : return 0; +; 7178 : return 0; 000f1 33 c0 xor eax, eax 000f3 e9 1c 01 00 00 jmp $LN1@stbi__pnm_ $LN5@stbi__pnm_: -; 7166 : } -; 7167 : -; 7168 : *comp = (t == '6') ? 3 : 1; // '5' is 1-component .pgm; '6' is 3-component .ppm +; 7179 : } +; 7180 : +; 7181 : *comp = (t == '6') ? 3 : 1; // '5' is 1-component .pgm; '6' is 3-component .ppm 000f8 0f be 85 84 00 00 00 movsx eax, BYTE PTR t$[rbp] @@ -44567,23 +44587,23 @@ $LN15@stbi__pnm_: 00 mov ecx, DWORD PTR tv81[rbp] 00127 89 08 mov DWORD PTR [rax], ecx -; 7169 : -; 7170 : c = (char)stbi__get8(s); +; 7182 : +; 7183 : c = (char)stbi__get8(s); 00129 48 8b 8d 80 01 00 00 mov rcx, QWORD PTR s$[rbp] 00130 e8 00 00 00 00 call stbi__get8 00135 88 45 44 mov BYTE PTR c$[rbp], al -; 7171 : stbi__pnm_skip_whitespace(s, &c); +; 7184 : stbi__pnm_skip_whitespace(s, &c); 00138 48 8d 55 44 lea rdx, QWORD PTR c$[rbp] 0013c 48 8b 8d 80 01 00 00 mov rcx, QWORD PTR s$[rbp] 00143 e8 00 00 00 00 call stbi__pnm_skip_whitespace -; 7172 : -; 7173 : *x = stbi__pnm_getinteger(s, &c); // read width +; 7185 : +; 7186 : *x = stbi__pnm_getinteger(s, &c); // read width 00148 48 8d 55 44 lea rdx, QWORD PTR c$[rbp] 0014c 48 8b 8d 80 01 @@ -44593,14 +44613,14 @@ $LN15@stbi__pnm_: 00 00 mov rcx, QWORD PTR x$[rbp] 0015f 89 01 mov DWORD PTR [rcx], eax -; 7174 : if (*x == 0) +; 7187 : if (*x == 0) 00161 48 8b 85 88 01 00 00 mov rax, QWORD PTR x$[rbp] 00168 83 38 00 cmp DWORD PTR [rax], 0 0016b 75 11 jne SHORT $LN7@stbi__pnm_ -; 7175 : return stbi__err("invalid width", "PPM image header had zero or overflowing width"); +; 7188 : return stbi__err("invalid width", "PPM image header had zero or overflowing width"); 0016d 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0O@MKGNGALN@invalid?5width@ @@ -44608,15 +44628,15 @@ $LN15@stbi__pnm_: 00179 e9 96 00 00 00 jmp $LN1@stbi__pnm_ $LN7@stbi__pnm_: -; 7176 : stbi__pnm_skip_whitespace(s, &c); +; 7189 : stbi__pnm_skip_whitespace(s, &c); 0017e 48 8d 55 44 lea rdx, QWORD PTR c$[rbp] 00182 48 8b 8d 80 01 00 00 mov rcx, QWORD PTR s$[rbp] 00189 e8 00 00 00 00 call stbi__pnm_skip_whitespace -; 7177 : -; 7178 : *y = stbi__pnm_getinteger(s, &c); // read height +; 7190 : +; 7191 : *y = stbi__pnm_getinteger(s, &c); // read height 0018e 48 8d 55 44 lea rdx, QWORD PTR c$[rbp] 00192 48 8b 8d 80 01 @@ -44626,14 +44646,14 @@ $LN7@stbi__pnm_: 00 00 mov rcx, QWORD PTR y$[rbp] 001a5 89 01 mov DWORD PTR [rcx], eax -; 7179 : if (*y == 0) +; 7192 : if (*y == 0) 001a7 48 8b 85 90 01 00 00 mov rax, QWORD PTR y$[rbp] 001ae 83 38 00 cmp DWORD PTR [rax], 0 001b1 75 0e jne SHORT $LN8@stbi__pnm_ -; 7180 : return stbi__err("invalid width", "PPM image header had zero or overflowing width"); +; 7193 : return stbi__err("invalid width", "PPM image header had zero or overflowing width"); 001b3 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0O@MKGNGALN@invalid?5width@ @@ -44641,15 +44661,15 @@ $LN7@stbi__pnm_: 001bf eb 53 jmp SHORT $LN1@stbi__pnm_ $LN8@stbi__pnm_: -; 7181 : stbi__pnm_skip_whitespace(s, &c); +; 7194 : stbi__pnm_skip_whitespace(s, &c); 001c1 48 8d 55 44 lea rdx, QWORD PTR c$[rbp] 001c5 48 8b 8d 80 01 00 00 mov rcx, QWORD PTR s$[rbp] 001cc e8 00 00 00 00 call stbi__pnm_skip_whitespace -; 7182 : -; 7183 : maxv = stbi__pnm_getinteger(s, &c); // read max value +; 7195 : +; 7196 : maxv = stbi__pnm_getinteger(s, &c); // read max value 001d1 48 8d 55 44 lea rdx, QWORD PTR c$[rbp] 001d5 48 8b 8d 80 01 @@ -44657,13 +44677,13 @@ $LN8@stbi__pnm_: 001dc e8 00 00 00 00 call stbi__pnm_getinteger 001e1 89 45 04 mov DWORD PTR maxv$[rbp], eax -; 7184 : if (maxv > 65535) +; 7197 : if (maxv > 65535) 001e4 81 7d 04 ff ff 00 00 cmp DWORD PTR maxv$[rbp], 65535 ; 0000ffffH 001eb 7e 10 jle SHORT $LN9@stbi__pnm_ -; 7185 : return stbi__err("max value > 65535", "PPM image supports only 8-bit and 16-bit images"); +; 7198 : return stbi__err("max value > 65535", "PPM image supports only 8-bit and 16-bit images"); 001ed 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0BC@CNFMOKHC@max?5value?5?$DO?565535@ @@ -44672,28 +44692,28 @@ $LN8@stbi__pnm_: 001fb eb 17 jmp SHORT $LN10@stbi__pnm_ $LN9@stbi__pnm_: -; 7186 : else if (maxv > 255) +; 7199 : else if (maxv > 255) 001fd 81 7d 04 ff 00 00 00 cmp DWORD PTR maxv$[rbp], 255 ; 000000ffH 00204 7e 09 jle SHORT $LN11@stbi__pnm_ -; 7187 : return 16; +; 7200 : return 16; 00206 b8 10 00 00 00 mov eax, 16 0020b eb 07 jmp SHORT $LN1@stbi__pnm_ 0020d eb 05 jmp SHORT $LN12@stbi__pnm_ $LN11@stbi__pnm_: -; 7188 : else -; 7189 : return 8; +; 7201 : else +; 7202 : return 8; 0020f b8 08 00 00 00 mov eax, 8 $LN12@stbi__pnm_: $LN10@stbi__pnm_: $LN1@stbi__pnm_: -; 7190 : } +; 7203 : } 00214 48 8b f8 mov rdi, rax 00217 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] @@ -44731,7 +44751,7 @@ req_comp$ = 288 ri$ = 296 stbi__pnm_load PROC ; COMDAT -; 7074 : { +; 7087 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -44746,10 +44766,10 @@ stbi__pnm_load PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 7075 : stbi_uc* out; -; 7076 : STBI_NOTUSED(ri); -; 7077 : -; 7078 : ri->bits_per_channel = stbi__pnm_info(s, (int*)&s->img_x, (int*)&s->img_y, (int*)&s->img_n); +; 7088 : stbi_uc* out; +; 7089 : STBI_NOTUSED(ri); +; 7090 : +; 7091 : ri->bits_per_channel = stbi__pnm_info(s, (int*)&s->img_x, (int*)&s->img_y, (int*)&s->img_n); 0002e 48 8b 85 00 01 00 00 mov rax, QWORD PTR s$[rbp] @@ -44768,21 +44788,21 @@ stbi__pnm_load PROC ; COMDAT 00 00 mov rcx, QWORD PTR ri$[rbp] 00064 89 01 mov DWORD PTR [rcx], eax -; 7079 : if (ri->bits_per_channel == 0) +; 7092 : if (ri->bits_per_channel == 0) 00066 48 8b 85 28 01 00 00 mov rax, QWORD PTR ri$[rbp] 0006d 83 38 00 cmp DWORD PTR [rax], 0 00070 75 07 jne SHORT $LN2@stbi__pnm_ -; 7080 : return 0; +; 7093 : return 0; 00072 33 c0 xor eax, eax 00074 e9 05 03 00 00 jmp $LN1@stbi__pnm_ $LN2@stbi__pnm_: -; 7081 : -; 7082 : if (s->img_y > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large", "Very large image (corrupt?)"); +; 7094 : +; 7095 : if (s->img_y > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large", "Very large image (corrupt?)"); 00079 48 8b 85 00 01 00 00 mov rax, QWORD PTR s$[rbp] @@ -44808,7 +44828,7 @@ $LN15@stbi__pnm_: 000b8 e9 c1 02 00 00 jmp $LN1@stbi__pnm_ $LN3@stbi__pnm_: -; 7083 : if (s->img_x > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large", "Very large image (corrupt?)"); +; 7096 : if (s->img_x > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large", "Very large image (corrupt?)"); 000bd 48 8b 85 00 01 00 00 mov rax, QWORD PTR s$[rbp] @@ -44834,8 +44854,8 @@ $LN17@stbi__pnm_: 000fb e9 7e 02 00 00 jmp $LN1@stbi__pnm_ $LN4@stbi__pnm_: -; 7084 : -; 7085 : *x = s->img_x; +; 7097 : +; 7098 : *x = s->img_x; 00100 48 8b 85 08 01 00 00 mov rax, QWORD PTR x$[rbp] @@ -44844,7 +44864,7 @@ $LN4@stbi__pnm_: 0010e 8b 09 mov ecx, DWORD PTR [rcx] 00110 89 08 mov DWORD PTR [rax], ecx -; 7086 : *y = s->img_y; +; 7099 : *y = s->img_y; 00112 48 8b 85 10 01 00 00 mov rax, QWORD PTR y$[rbp] @@ -44853,7 +44873,7 @@ $LN4@stbi__pnm_: 00120 8b 49 04 mov ecx, DWORD PTR [rcx+4] 00123 89 08 mov DWORD PTR [rax], ecx -; 7087 : if (comp) *comp = s->img_n; +; 7100 : if (comp) *comp = s->img_n; 00125 48 83 bd 18 01 00 00 00 cmp QWORD PTR comp$[rbp], 0 @@ -44866,8 +44886,8 @@ $LN4@stbi__pnm_: 00140 89 08 mov DWORD PTR [rax], ecx $LN5@stbi__pnm_: -; 7088 : -; 7089 : if (!stbi__mad4sizes_valid(s->img_n, s->img_x, s->img_y, ri->bits_per_channel / 8, 0)) +; 7101 : +; 7102 : if (!stbi__mad4sizes_valid(s->img_n, s->img_x, s->img_y, ri->bits_per_channel / 8, 0)) 00142 48 8b 85 28 01 00 00 mov rax, QWORD PTR ri$[rbp] @@ -44892,7 +44912,7 @@ $LN5@stbi__pnm_: 00182 85 c0 test eax, eax 00184 75 34 jne SHORT $LN6@stbi__pnm_ -; 7090 : return stbi__errpuc("too large", "PNM too large"); +; 7103 : return stbi__errpuc("too large", "PNM too large"); 00186 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_09OJDLMMBJ@too?5large@ @@ -44913,8 +44933,8 @@ $LN19@stbi__pnm_: 001b5 e9 c4 01 00 00 jmp $LN1@stbi__pnm_ $LN6@stbi__pnm_: -; 7091 : -; 7092 : out = (stbi_uc*)stbi__malloc_mad4(s->img_n, s->img_x, s->img_y, ri->bits_per_channel / 8, 0); +; 7104 : +; 7105 : out = (stbi_uc*)stbi__malloc_mad4(s->img_n, s->img_x, s->img_y, ri->bits_per_channel / 8, 0); 001ba 48 8b 85 28 01 00 00 mov rax, QWORD PTR ri$[rbp] @@ -44938,7 +44958,7 @@ $LN6@stbi__pnm_: 001f5 e8 00 00 00 00 call stbi__malloc_mad4 001fa 48 89 45 08 mov QWORD PTR out$[rbp], rax -; 7093 : if (!out) return stbi__errpuc("outofmem", "Out of memory"); +; 7106 : if (!out) return stbi__errpuc("outofmem", "Out of memory"); 001fe 48 83 7d 08 00 cmp QWORD PTR out$[rbp], 0 00203 75 34 jne SHORT $LN7@stbi__pnm_ @@ -44961,7 +44981,7 @@ $LN21@stbi__pnm_: 00234 e9 45 01 00 00 jmp $LN1@stbi__pnm_ $LN7@stbi__pnm_: -; 7094 : if (!stbi__getn(s, out, s->img_n * s->img_x * s->img_y * (ri->bits_per_channel / 8))) { +; 7107 : if (!stbi__getn(s, out, s->img_n * s->img_x * s->img_y * (ri->bits_per_channel / 8))) { 00239 48 8b 85 00 01 00 00 mov rax, QWORD PTR s$[rbp] @@ -44993,13 +45013,13 @@ $LN7@stbi__pnm_: 0028e 85 c0 test eax, eax 00290 75 3e jne SHORT $LN8@stbi__pnm_ -; 7095 : STBI_FREE(out); +; 7108 : STBI_FREE(out); 00292 48 8b 4d 08 mov rcx, QWORD PTR out$[rbp] 00296 ff 15 00 00 00 00 call QWORD PTR __imp_free -; 7096 : return stbi__errpuc("bad PNM", "PNM file truncated"); +; 7109 : return stbi__errpuc("bad PNM", "PNM file truncated"); 0029c 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_07IDKIDMGJ@bad?5PNM@ @@ -45020,9 +45040,9 @@ $LN23@stbi__pnm_: 002cb e9 ae 00 00 00 jmp $LN1@stbi__pnm_ $LN8@stbi__pnm_: -; 7097 : } -; 7098 : -; 7099 : if (req_comp && req_comp != s->img_n) { +; 7110 : } +; 7111 : +; 7112 : if (req_comp && req_comp != s->img_n) { 002d0 83 bd 20 01 00 00 00 cmp DWORD PTR req_comp$[rbp], 0 @@ -45036,14 +45056,14 @@ $LN8@stbi__pnm_: 002ed 0f 84 87 00 00 00 je $LN9@stbi__pnm_ -; 7100 : if (ri->bits_per_channel == 16) { +; 7113 : if (ri->bits_per_channel == 16) { 002f3 48 8b 85 28 01 00 00 mov rax, QWORD PTR ri$[rbp] 002fa 83 38 10 cmp DWORD PTR [rax], 16 002fd 75 38 jne SHORT $LN10@stbi__pnm_ -; 7101 : out = (stbi_uc*)stbi__convert_format16((stbi__uint16*)out, s->img_n, req_comp, s->img_x, s->img_y); +; 7114 : out = (stbi_uc*)stbi__convert_format16((stbi__uint16*)out, s->img_n, req_comp, s->img_x, s->img_y); 002ff 48 8b 85 00 01 00 00 mov rax, QWORD PTR s$[rbp] @@ -45061,13 +45081,13 @@ $LN8@stbi__pnm_: 0032c e8 00 00 00 00 call stbi__convert_format16 00331 48 89 45 08 mov QWORD PTR out$[rbp], rax -; 7102 : } +; 7115 : } 00335 eb 36 jmp SHORT $LN11@stbi__pnm_ $LN10@stbi__pnm_: -; 7103 : else { -; 7104 : out = stbi__convert_format(out, s->img_n, req_comp, s->img_x, s->img_y); +; 7116 : else { +; 7117 : out = stbi__convert_format(out, s->img_n, req_comp, s->img_x, s->img_y); 00337 48 8b 85 00 01 00 00 mov rax, QWORD PTR s$[rbp] @@ -45086,8 +45106,8 @@ $LN10@stbi__pnm_: 00369 48 89 45 08 mov QWORD PTR out$[rbp], rax $LN11@stbi__pnm_: -; 7105 : } -; 7106 : if (out == NULL) return out; // stbi__convert_format frees input on failure +; 7118 : } +; 7119 : if (out == NULL) return out; // stbi__convert_format frees input on failure 0036d 48 83 7d 08 00 cmp QWORD PTR out$[rbp], 0 00372 75 06 jne SHORT $LN12@stbi__pnm_ @@ -45096,13 +45116,13 @@ $LN11@stbi__pnm_: $LN12@stbi__pnm_: $LN9@stbi__pnm_: -; 7107 : } -; 7108 : return out; +; 7120 : } +; 7121 : return out; 0037a 48 8b 45 08 mov rax, QWORD PTR out$[rbp] $LN1@stbi__pnm_: -; 7109 : } +; 7122 : } 0037e 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -45120,7 +45140,7 @@ t$ = 36 s$ = 288 stbi__pnm_test PROC ; COMDAT -; 7062 : { +; 7075 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -45132,22 +45152,22 @@ stbi__pnm_test PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 7063 : char p, t; -; 7064 : p = (char)stbi__get8(s); +; 7076 : char p, t; +; 7077 : p = (char)stbi__get8(s); 0001f 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR s$[rbp] 00026 e8 00 00 00 00 call stbi__get8 0002b 88 45 04 mov BYTE PTR p$[rbp], al -; 7065 : t = (char)stbi__get8(s); +; 7078 : t = (char)stbi__get8(s); 0002e 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR s$[rbp] 00035 e8 00 00 00 00 call stbi__get8 0003a 88 45 24 mov BYTE PTR t$[rbp], al -; 7066 : if (p != 'P' || (t != '5' && t != '6')) { +; 7079 : if (p != 'P' || (t != '5' && t != '6')) { 0003d 0f be 45 04 movsx eax, BYTE PTR p$[rbp] 00041 83 f8 50 cmp eax, 80 ; 00000050H @@ -45160,25 +45180,25 @@ stbi__pnm_test PROC ; COMDAT 00056 74 10 je SHORT $LN2@stbi__pnm_ $LN3@stbi__pnm_: -; 7067 : stbi__rewind(s); +; 7080 : stbi__rewind(s); 00058 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR s$[rbp] 0005f e8 00 00 00 00 call stbi__rewind -; 7068 : return 0; +; 7081 : return 0; 00064 33 c0 xor eax, eax 00066 eb 05 jmp SHORT $LN1@stbi__pnm_ $LN2@stbi__pnm_: -; 7069 : } -; 7070 : return 1; +; 7082 : } +; 7083 : return 1; 00068 b8 01 00 00 00 mov eax, 1 $LN1@stbi__pnm_: -; 7071 : } +; 7084 : } 0006d 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] @@ -45197,7 +45217,7 @@ y$ = 240 comp$ = 248 stbi__gif_info PROC ; COMDAT -; 6642 : { +; 6655 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -45212,7 +45232,7 @@ stbi__gif_info PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 6643 : return stbi__gif_info_raw(s, x, y, comp); +; 6656 : return stbi__gif_info_raw(s, x, y, comp); 0002e 4c 8b 8d f8 00 00 00 mov r9, QWORD PTR comp$[rbp] @@ -45224,7 +45244,7 @@ stbi__gif_info PROC ; COMDAT 00 00 mov rcx, QWORD PTR s$[rbp] 0004a e8 00 00 00 00 call stbi__gif_info_raw -; 6644 : } +; 6657 : } 0004f 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] @@ -45259,7 +45279,7 @@ comp$ = 36872 req_comp$ = 36880 stbi__load_gif_main PROC ; COMDAT -; 6525 : { +; 6538 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -45286,7 +45306,7 @@ stbi__load_gif_main PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00059 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 6526 : if (stbi__gif_test(s)) { +; 6539 : if (stbi__gif_test(s)) { 0005e 48 8b 8d e0 8f 00 00 mov rcx, QWORD PTR s$[rbp] @@ -45295,43 +45315,43 @@ stbi__load_gif_main PROC ; COMDAT 0006c 0f 84 94 03 00 00 je $LN5@stbi__load -; 6527 : int layers = 0; +; 6540 : int layers = 0; 00072 c7 45 04 00 00 00 00 mov DWORD PTR layers$4[rbp], 0 -; 6528 : stbi_uc* u = 0; +; 6541 : stbi_uc* u = 0; 00079 48 c7 45 28 00 00 00 00 mov QWORD PTR u$5[rbp], 0 -; 6529 : stbi_uc* out = 0; +; 6542 : stbi_uc* out = 0; 00081 48 c7 45 48 00 00 00 00 mov QWORD PTR out$6[rbp], 0 -; 6530 : stbi_uc* two_back = 0; +; 6543 : stbi_uc* two_back = 0; 00089 48 c7 45 68 00 00 00 00 mov QWORD PTR two_back$7[rbp], 0 -; 6531 : stbi__gif g; -; 6532 : int stride; -; 6533 : int out_size = 0; +; 6544 : stbi__gif g; +; 6545 : int stride; +; 6546 : int out_size = 0; 00091 c7 85 34 89 00 00 00 00 00 00 mov DWORD PTR out_size$10[rbp], 0 -; 6534 : int delays_size = 0; +; 6547 : int delays_size = 0; 0009b c7 85 54 89 00 00 00 00 00 00 mov DWORD PTR delays_size$11[rbp], 0 -; 6535 : -; 6536 : STBI_NOTUSED(out_size); -; 6537 : STBI_NOTUSED(delays_size); -; 6538 : -; 6539 : memset(&g, 0, sizeof(g)); +; 6548 : +; 6549 : STBI_NOTUSED(out_size); +; 6550 : STBI_NOTUSED(delays_size); +; 6551 : +; 6552 : memset(&g, 0, sizeof(g)); 000a5 41 b8 70 88 00 00 mov r8d, 34928 ; 00008870H @@ -45340,13 +45360,13 @@ stbi__load_gif_main PROC ; COMDAT 00 00 lea rcx, QWORD PTR g$8[rbp] 000b4 e8 00 00 00 00 call memset -; 6540 : if (delays) { +; 6553 : if (delays) { 000b9 48 83 bd e8 8f 00 00 00 cmp QWORD PTR delays$[rbp], 0 000c1 74 0e je SHORT $LN7@stbi__load -; 6541 : *delays = 0; +; 6554 : *delays = 0; 000c3 48 8b 85 e8 8f 00 00 mov rax, QWORD PTR delays$[rbp] @@ -45355,10 +45375,10 @@ stbi__load_gif_main PROC ; COMDAT $LN7@stbi__load: $LN4@stbi__load: -; 6542 : } -; 6543 : -; 6544 : do { -; 6545 : u = stbi__gif_load_next(s, &g, comp, req_comp, two_back); +; 6555 : } +; 6556 : +; 6557 : do { +; 6558 : u = stbi__gif_load_next(s, &g, comp, req_comp, two_back); 000d1 48 8b 45 68 mov rax, QWORD PTR two_back$7[rbp] 000d5 48 89 44 24 20 mov QWORD PTR [rsp+32], rax @@ -45373,7 +45393,7 @@ $LN4@stbi__load: 000f6 e8 00 00 00 00 call stbi__gif_load_next 000fb 48 89 45 28 mov QWORD PTR u$5[rbp], rax -; 6546 : if (u == (stbi_uc*)s) u = 0; // end of animated gif marker +; 6559 : if (u == (stbi_uc*)s) u = 0; // end of animated gif marker 000ff 48 8b 85 e0 8f 00 00 mov rax, QWORD PTR s$[rbp] @@ -45383,14 +45403,14 @@ $LN4@stbi__load: 00 00 00 mov QWORD PTR u$5[rbp], 0 $LN8@stbi__load: -; 6547 : -; 6548 : if (u) { +; 6560 : +; 6561 : if (u) { 00114 48 83 7d 28 00 cmp QWORD PTR u$5[rbp], 0 00119 0f 84 5f 02 00 00 je $LN9@stbi__load -; 6549 : *x = g.w; +; 6562 : *x = g.w; 0011f 48 8b 85 f0 8f 00 00 mov rax, QWORD PTR x$[rbp] @@ -45398,7 +45418,7 @@ $LN8@stbi__load: 00 mov ecx, DWORD PTR g$8[rbp] 0012c 89 08 mov DWORD PTR [rax], ecx -; 6550 : *y = g.h; +; 6563 : *y = g.h; 0012e 48 8b 85 f8 8f 00 00 mov rax, QWORD PTR y$[rbp] @@ -45406,13 +45426,13 @@ $LN8@stbi__load: 00 mov ecx, DWORD PTR g$8[rbp+4] 0013b 89 08 mov DWORD PTR [rax], ecx -; 6551 : ++layers; +; 6564 : ++layers; 0013d 8b 45 04 mov eax, DWORD PTR layers$4[rbp] 00140 ff c0 inc eax 00142 89 45 04 mov DWORD PTR layers$4[rbp], eax -; 6552 : stride = g.w * g.h * 4; +; 6565 : stride = g.w * g.h * 4; 00145 8b 85 90 00 00 00 mov eax, DWORD PTR g$8[rbp] @@ -45422,14 +45442,14 @@ $LN8@stbi__load: 00155 89 85 14 89 00 00 mov DWORD PTR stride$9[rbp], eax -; 6553 : -; 6554 : if (out) { +; 6566 : +; 6567 : if (out) { 0015b 48 83 7d 48 00 cmp QWORD PTR out$6[rbp], 0 00160 0f 84 04 01 00 00 je $LN10@stbi__load -; 6555 : void* tmp = (stbi_uc*)STBI_REALLOC_SIZED(out, out_size, layers * stride); +; 6568 : void* tmp = (stbi_uc*)STBI_REALLOC_SIZED(out, out_size, layers * stride); 00166 8b 85 14 89 00 00 mov eax, DWORD PTR stride$9[rbp] @@ -45445,13 +45465,13 @@ $LN8@stbi__load: 00189 48 89 85 78 89 00 00 mov QWORD PTR tmp$12[rbp], rax -; 6556 : if (!tmp) +; 6569 : if (!tmp) 00190 48 83 bd 78 89 00 00 00 cmp QWORD PTR tmp$12[rbp], 0 00198 75 1e jne SHORT $LN12@stbi__load -; 6557 : return stbi__load_gif_main_outofmem(&g, out, delays); +; 6570 : return stbi__load_gif_main_outofmem(&g, out, delays); 0019a 4c 8b 85 e8 8f 00 00 mov r8, QWORD PTR delays$[rbp] @@ -45463,14 +45483,14 @@ $LN8@stbi__load: 001b6 eb 1b jmp SHORT $LN13@stbi__load $LN12@stbi__load: -; 6558 : else { -; 6559 : out = (stbi_uc*)tmp; +; 6571 : else { +; 6572 : out = (stbi_uc*)tmp; 001b8 48 8b 85 78 89 00 00 mov rax, QWORD PTR tmp$12[rbp] 001bf 48 89 45 48 mov QWORD PTR out$6[rbp], rax -; 6560 : out_size = layers * stride; +; 6573 : out_size = layers * stride; 001c3 8b 45 04 mov eax, DWORD PTR layers$4[rbp] 001c6 0f af 85 14 89 @@ -45479,16 +45499,16 @@ $LN12@stbi__load: 00 mov DWORD PTR out_size$10[rbp], eax $LN13@stbi__load: -; 6561 : } -; 6562 : -; 6563 : if (delays) { +; 6574 : } +; 6575 : +; 6576 : if (delays) { 001d3 48 83 bd e8 8f 00 00 00 cmp QWORD PTR delays$[rbp], 0 001db 0f 84 84 00 00 00 je $LN14@stbi__load -; 6564 : int* new_delays = (int*)STBI_REALLOC_SIZED(*delays, delays_size, sizeof(int) * layers); +; 6577 : int* new_delays = (int*)STBI_REALLOC_SIZED(*delays, delays_size, sizeof(int) * layers); 001e1 48 63 45 04 movsxd rax, DWORD PTR layers$4[rbp] 001e5 48 89 85 a8 8f @@ -45509,13 +45529,13 @@ $LN13@stbi__load: 00219 48 89 85 98 89 00 00 mov QWORD PTR new_delays$13[rbp], rax -; 6565 : if (!new_delays) +; 6578 : if (!new_delays) 00220 48 83 bd 98 89 00 00 00 cmp QWORD PTR new_delays$13[rbp], 0 00228 75 1c jne SHORT $LN15@stbi__load -; 6566 : return stbi__load_gif_main_outofmem(&g, out, delays); +; 6579 : return stbi__load_gif_main_outofmem(&g, out, delays); 0022a 4c 8b 85 e8 8f 00 00 mov r8, QWORD PTR delays$[rbp] @@ -45526,7 +45546,7 @@ $LN13@stbi__load: 00241 e9 ef 01 00 00 jmp $LN1@stbi__load $LN15@stbi__load: -; 6567 : *delays = new_delays; +; 6580 : *delays = new_delays; 00246 48 8b 85 e8 8f 00 00 mov rax, QWORD PTR delays$[rbp] @@ -45534,7 +45554,7 @@ $LN15@stbi__load: 00 00 mov rcx, QWORD PTR new_delays$13[rbp] 00254 48 89 08 mov QWORD PTR [rax], rcx -; 6568 : delays_size = layers * sizeof(int); +; 6581 : delays_size = layers * sizeof(int); 00257 48 63 45 04 movsxd rax, DWORD PTR layers$4[rbp] 0025b 48 c1 e0 02 shl rax, 2 @@ -45542,14 +45562,14 @@ $LN15@stbi__load: 00 mov DWORD PTR delays_size$11[rbp], eax $LN14@stbi__load: -; 6569 : } -; 6570 : } +; 6582 : } +; 6583 : } 00265 e9 a6 00 00 00 jmp $LN11@stbi__load $LN10@stbi__load: -; 6571 : else { -; 6572 : out = (stbi_uc*)stbi__malloc(layers * stride); +; 6584 : else { +; 6585 : out = (stbi_uc*)stbi__malloc(layers * stride); 0026a 8b 45 04 mov eax, DWORD PTR layers$4[rbp] 0026d 0f af 85 14 89 @@ -45559,12 +45579,12 @@ $LN10@stbi__load: 00279 e8 00 00 00 00 call stbi__malloc 0027e 48 89 45 48 mov QWORD PTR out$6[rbp], rax -; 6573 : if (!out) +; 6586 : if (!out) 00282 48 83 7d 48 00 cmp QWORD PTR out$6[rbp], 0 00287 75 1c jne SHORT $LN16@stbi__load -; 6574 : return stbi__load_gif_main_outofmem(&g, out, delays); +; 6587 : return stbi__load_gif_main_outofmem(&g, out, delays); 00289 4c 8b 85 e8 8f 00 00 mov r8, QWORD PTR delays$[rbp] @@ -45575,7 +45595,7 @@ $LN10@stbi__load: 002a0 e9 90 01 00 00 jmp $LN1@stbi__load $LN16@stbi__load: -; 6575 : out_size = layers * stride; +; 6588 : out_size = layers * stride; 002a5 8b 45 04 mov eax, DWORD PTR layers$4[rbp] 002a8 0f af 85 14 89 @@ -45583,13 +45603,13 @@ $LN16@stbi__load: 002af 89 85 34 89 00 00 mov DWORD PTR out_size$10[rbp], eax -; 6576 : if (delays) { +; 6589 : if (delays) { 002b5 48 83 bd e8 8f 00 00 00 cmp QWORD PTR delays$[rbp], 0 002bd 74 51 je SHORT $LN17@stbi__load -; 6577 : *delays = (int*)stbi__malloc(layers * sizeof(int)); +; 6590 : *delays = (int*)stbi__malloc(layers * sizeof(int)); 002bf 48 63 45 04 movsxd rax, DWORD PTR layers$4[rbp] 002c3 48 c1 e0 02 shl rax, 2 @@ -45599,14 +45619,14 @@ $LN16@stbi__load: 00 00 mov rcx, QWORD PTR delays$[rbp] 002d6 48 89 01 mov QWORD PTR [rcx], rax -; 6578 : if (!*delays) +; 6591 : if (!*delays) 002d9 48 8b 85 e8 8f 00 00 mov rax, QWORD PTR delays$[rbp] 002e0 48 83 38 00 cmp QWORD PTR [rax], 0 002e4 75 1c jne SHORT $LN18@stbi__load -; 6579 : return stbi__load_gif_main_outofmem(&g, out, delays); +; 6592 : return stbi__load_gif_main_outofmem(&g, out, delays); 002e6 4c 8b 85 e8 8f 00 00 mov r8, QWORD PTR delays$[rbp] @@ -45617,7 +45637,7 @@ $LN16@stbi__load: 002fd e9 33 01 00 00 jmp $LN1@stbi__load $LN18@stbi__load: -; 6580 : delays_size = layers * sizeof(int); +; 6593 : delays_size = layers * sizeof(int); 00302 48 63 45 04 movsxd rax, DWORD PTR layers$4[rbp] 00306 48 c1 e0 02 shl rax, 2 @@ -45626,9 +45646,9 @@ $LN18@stbi__load: $LN17@stbi__load: $LN11@stbi__load: -; 6581 : } -; 6582 : } -; 6583 : memcpy(out + ((layers - 1) * stride), u, stride); +; 6594 : } +; 6595 : } +; 6596 : memcpy(out + ((layers - 1) * stride), u, stride); 00310 48 63 85 14 89 00 00 movsxd rax, DWORD PTR stride$9[rbp] @@ -45644,12 +45664,12 @@ $LN11@stbi__load: 00333 48 8b 55 28 mov rdx, QWORD PTR u$5[rbp] 00337 e8 00 00 00 00 call memcpy -; 6584 : if (layers >= 2) { +; 6597 : if (layers >= 2) { 0033c 83 7d 04 02 cmp DWORD PTR layers$4[rbp], 2 00340 7c 18 jl SHORT $LN19@stbi__load -; 6585 : two_back = out - 2 * stride; +; 6598 : two_back = out - 2 * stride; 00342 8b 85 14 89 00 00 mov eax, DWORD PTR stride$9[rbp] @@ -45661,15 +45681,15 @@ $LN11@stbi__load: 00356 48 89 45 68 mov QWORD PTR two_back$7[rbp], rax $LN19@stbi__load: -; 6586 : } -; 6587 : -; 6588 : if (delays) { +; 6599 : } +; 6600 : +; 6601 : if (delays) { 0035a 48 83 bd e8 8f 00 00 00 cmp QWORD PTR delays$[rbp], 0 00362 74 1a je SHORT $LN20@stbi__load -; 6589 : (*delays)[layers - 1U] = g.delay; +; 6602 : (*delays)[layers - 1U] = g.delay; 00364 8b 45 04 mov eax, DWORD PTR layers$4[rbp] 00367 ff c8 dec eax @@ -45683,40 +45703,40 @@ $LN19@stbi__load: $LN20@stbi__load: $LN9@stbi__load: -; 6590 : } -; 6591 : } -; 6592 : } while (u != 0); +; 6603 : } +; 6604 : } +; 6605 : } while (u != 0); 0037e 48 83 7d 28 00 cmp QWORD PTR u$5[rbp], 0 00383 0f 85 48 fd ff ff jne $LN4@stbi__load -; 6593 : -; 6594 : // free temp buffer; -; 6595 : STBI_FREE(g.out); +; 6606 : +; 6607 : // free temp buffer; +; 6608 : STBI_FREE(g.out); 00389 48 8b 8d 98 00 00 00 mov rcx, QWORD PTR g$8[rbp+8] 00390 ff 15 00 00 00 00 call QWORD PTR __imp_free -; 6596 : STBI_FREE(g.history); +; 6609 : STBI_FREE(g.history); 00396 48 8b 8d a8 00 00 00 mov rcx, QWORD PTR g$8[rbp+24] 0039d ff 15 00 00 00 00 call QWORD PTR __imp_free -; 6597 : STBI_FREE(g.background); +; 6610 : STBI_FREE(g.background); 003a3 48 8b 8d a0 00 00 00 mov rcx, QWORD PTR g$8[rbp+16] 003aa ff 15 00 00 00 00 call QWORD PTR __imp_free -; 6598 : -; 6599 : // do the final conversion after loading everything; -; 6600 : if (req_comp && req_comp != 4) +; 6611 : +; 6612 : // do the final conversion after loading everything; +; 6613 : if (req_comp && req_comp != 4) 003b0 83 bd 10 90 00 00 00 cmp DWORD PTR req_comp$[rbp], 0 @@ -45725,7 +45745,7 @@ $LN9@stbi__load: 00 04 cmp DWORD PTR req_comp$[rbp], 4 003c0 74 30 je SHORT $LN21@stbi__load -; 6601 : out = stbi__convert_format(out, 4, req_comp, layers * g.w, g.h); +; 6614 : out = stbi__convert_format(out, 4, req_comp, layers * g.w, g.h); 003c2 8b 45 04 mov eax, DWORD PTR layers$4[rbp] 003c5 0f af 85 90 00 @@ -45742,26 +45762,26 @@ $LN9@stbi__load: 003ee 48 89 45 48 mov QWORD PTR out$6[rbp], rax $LN21@stbi__load: -; 6602 : -; 6603 : *z = layers; +; 6615 : +; 6616 : *z = layers; 003f2 48 8b 85 00 90 00 00 mov rax, QWORD PTR z$[rbp] 003f9 8b 4d 04 mov ecx, DWORD PTR layers$4[rbp] 003fc 89 08 mov DWORD PTR [rax], ecx -; 6604 : return out; +; 6617 : return out; 003fe 48 8b 45 48 mov rax, QWORD PTR out$6[rbp] 00402 eb 31 jmp SHORT $LN1@stbi__load -; 6605 : } +; 6618 : } 00404 eb 2f jmp SHORT $LN6@stbi__load $LN5@stbi__load: -; 6606 : else { -; 6607 : return stbi__errpuc("not GIF", "Image was not as a gif type."); +; 6619 : else { +; 6620 : return stbi__errpuc("not GIF", "Image was not as a gif type."); 00406 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_07KMJLPAII@not?5GIF@ @@ -45782,8 +45802,8 @@ $LN24@stbi__load: $LN6@stbi__load: $LN1@stbi__load: -; 6608 : } -; 6609 : } +; 6621 : } +; 6622 : } 00435 48 8b f8 mov rdi, rax 00438 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48] @@ -45817,7 +45837,7 @@ req_comp$ = 36592 ri$ = 36600 stbi__gif_load PROC ; COMDAT -; 6612 : { +; 6625 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -45844,13 +45864,13 @@ stbi__gif_load PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00059 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 6613 : stbi_uc* u = 0; +; 6626 : stbi_uc* u = 0; 0005e 48 c7 45 08 00 00 00 00 mov QWORD PTR u$[rbp], 0 -; 6614 : stbi__gif g; -; 6615 : memset(&g, 0, sizeof(g)); +; 6627 : stbi__gif g; +; 6628 : memset(&g, 0, sizeof(g)); 00066 41 b8 70 88 00 00 mov r8d, 34928 ; 00008870H @@ -45858,9 +45878,9 @@ stbi__gif_load PROC ; COMDAT 0006e 48 8d 4d 30 lea rcx, QWORD PTR g$[rbp] 00072 e8 00 00 00 00 call memset -; 6616 : STBI_NOTUSED(ri); -; 6617 : -; 6618 : u = stbi__gif_load_next(s, &g, comp, req_comp, 0); +; 6629 : STBI_NOTUSED(ri); +; 6630 : +; 6631 : u = stbi__gif_load_next(s, &g, comp, req_comp, 0); 00077 48 c7 44 24 20 00 00 00 00 mov QWORD PTR [rsp+32], 0 @@ -45874,7 +45894,7 @@ stbi__gif_load PROC ; COMDAT 00099 e8 00 00 00 00 call stbi__gif_load_next 0009e 48 89 45 08 mov QWORD PTR u$[rbp], rax -; 6619 : if (u == (stbi_uc*)s) u = 0; // end of animated gif marker +; 6632 : if (u == (stbi_uc*)s) u = 0; // end of animated gif marker 000a2 48 8b 85 d0 8e 00 00 mov rax, QWORD PTR s$[rbp] @@ -45884,29 +45904,29 @@ stbi__gif_load PROC ; COMDAT 00 00 00 mov QWORD PTR u$[rbp], 0 $LN2@stbi__gif_: -; 6620 : if (u) { +; 6633 : if (u) { 000b7 48 83 7d 08 00 cmp QWORD PTR u$[rbp], 0 000bc 74 50 je SHORT $LN3@stbi__gif_ -; 6621 : *x = g.w; +; 6634 : *x = g.w; 000be 48 8b 85 d8 8e 00 00 mov rax, QWORD PTR x$[rbp] 000c5 8b 4d 30 mov ecx, DWORD PTR g$[rbp] 000c8 89 08 mov DWORD PTR [rax], ecx -; 6622 : *y = g.h; +; 6635 : *y = g.h; 000ca 48 8b 85 e0 8e 00 00 mov rax, QWORD PTR y$[rbp] 000d1 8b 4d 34 mov ecx, DWORD PTR g$[rbp+4] 000d4 89 08 mov DWORD PTR [rax], ecx -; 6623 : -; 6624 : // moved conversion to after successful load so that the same -; 6625 : // can be done for multiple frames. -; 6626 : if (req_comp && req_comp != 4) +; 6636 : +; 6637 : // moved conversion to after successful load so that the same +; 6638 : // can be done for multiple frames. +; 6639 : if (req_comp && req_comp != 4) 000d6 83 bd f0 8e 00 00 00 cmp DWORD PTR req_comp$[rbp], 0 @@ -45915,7 +45935,7 @@ $LN2@stbi__gif_: 00 04 cmp DWORD PTR req_comp$[rbp], 4 000e6 74 24 je SHORT $LN5@stbi__gif_ -; 6627 : u = stbi__convert_format(u, 4, req_comp, g.w, g.h); +; 6640 : u = stbi__convert_format(u, 4, req_comp, g.w, g.h); 000e8 8b 45 34 mov eax, DWORD PTR g$[rbp+4] 000eb 89 44 24 20 mov DWORD PTR [rsp+32], eax @@ -45928,18 +45948,18 @@ $LN2@stbi__gif_: 00108 48 89 45 08 mov QWORD PTR u$[rbp], rax $LN5@stbi__gif_: -; 6628 : } +; 6641 : } 0010c eb 11 jmp SHORT $LN4@stbi__gif_ $LN3@stbi__gif_: -; 6629 : else if (g.out) { +; 6642 : else if (g.out) { 0010e 48 83 7d 38 00 cmp QWORD PTR g$[rbp+8], 0 00113 74 0a je SHORT $LN6@stbi__gif_ -; 6630 : // if there was an error and we allocated an image buffer, free it! -; 6631 : STBI_FREE(g.out); +; 6643 : // if there was an error and we allocated an image buffer, free it! +; 6644 : STBI_FREE(g.out); 00115 48 8b 4d 38 mov rcx, QWORD PTR g$[rbp+8] 00119 ff 15 00 00 00 @@ -45947,27 +45967,27 @@ $LN3@stbi__gif_: $LN6@stbi__gif_: $LN4@stbi__gif_: -; 6632 : } -; 6633 : -; 6634 : // free buffers needed for multiple frame loading; -; 6635 : STBI_FREE(g.history); +; 6645 : } +; 6646 : +; 6647 : // free buffers needed for multiple frame loading; +; 6648 : STBI_FREE(g.history); 0011f 48 8b 4d 48 mov rcx, QWORD PTR g$[rbp+24] 00123 ff 15 00 00 00 00 call QWORD PTR __imp_free -; 6636 : STBI_FREE(g.background); +; 6649 : STBI_FREE(g.background); 00129 48 8b 4d 40 mov rcx, QWORD PTR g$[rbp+16] 0012d ff 15 00 00 00 00 call QWORD PTR __imp_free -; 6637 : -; 6638 : return u; +; 6650 : +; 6651 : return u; 00133 48 8b 45 08 mov rax, QWORD PTR u$[rbp] -; 6639 : } +; 6652 : } 00137 48 8b f8 mov rdi, rax 0013a 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48] @@ -45994,7 +46014,7 @@ r$ = 4 s$ = 256 stbi__gif_test PROC ; COMDAT -; 6139 : { +; 6152 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -46006,24 +46026,24 @@ stbi__gif_test PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 6140 : int r = stbi__gif_test_raw(s); +; 6153 : int r = stbi__gif_test_raw(s); 0001f 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] 00026 e8 00 00 00 00 call stbi__gif_test_raw 0002b 89 45 04 mov DWORD PTR r$[rbp], eax -; 6141 : stbi__rewind(s); +; 6154 : stbi__rewind(s); 0002e 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] 00035 e8 00 00 00 00 call stbi__rewind -; 6142 : return r; +; 6155 : return r; 0003a 8b 45 04 mov eax, DWORD PTR r$[rbp] -; 6143 : } +; 6156 : } 0003d 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -46050,7 +46070,7 @@ y$ = 464 comp$ = 472 stbi__pic_info PROC ; COMDAT -; 6991 : { +; 7004 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -46076,16 +46096,16 @@ stbi__pic_info PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 6992 : int act_comp = 0, num_packets = 0, chained, dummy; +; 7005 : int act_comp = 0, num_packets = 0, chained, dummy; 00058 c7 45 04 00 00 00 00 mov DWORD PTR act_comp$[rbp], 0 0005f c7 45 24 00 00 00 00 mov DWORD PTR num_packets$[rbp], 0 -; 6993 : stbi__pic_packet packets[10]; -; 6994 : -; 6995 : if (!x) x = &dummy; +; 7006 : stbi__pic_packet packets[10]; +; 7007 : +; 7008 : if (!x) x = &dummy; 00066 48 83 bd c8 01 00 00 00 cmp QWORD PTR x$[rbp], 0 @@ -46095,7 +46115,7 @@ stbi__pic_info PROC ; COMDAT 00 00 mov QWORD PTR x$[rbp], rax $LN5@stbi__pic_: -; 6996 : if (!y) y = &dummy; +; 7009 : if (!y) y = &dummy; 0007b 48 83 bd d0 01 00 00 00 cmp QWORD PTR y$[rbp], 0 @@ -46105,7 +46125,7 @@ $LN5@stbi__pic_: 00 00 mov QWORD PTR y$[rbp], rax $LN6@stbi__pic_: -; 6997 : if (!comp) comp = &dummy; +; 7010 : if (!comp) comp = &dummy; 00090 48 83 bd d8 01 00 00 00 cmp QWORD PTR comp$[rbp], 0 @@ -46115,8 +46135,8 @@ $LN6@stbi__pic_: 00 00 mov QWORD PTR comp$[rbp], rax $LN7@stbi__pic_: -; 6998 : -; 6999 : if (!stbi__pic_is4(s, "\x53\x80\xF6\x34")) { +; 7011 : +; 7012 : if (!stbi__pic_is4(s, "\x53\x80\xF6\x34")) { 000a5 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_04KBFEPHFH@S?$IA?v4@ @@ -46126,29 +46146,29 @@ $LN7@stbi__pic_: 000b8 85 c0 test eax, eax 000ba 75 13 jne SHORT $LN8@stbi__pic_ -; 7000 : stbi__rewind(s); +; 7013 : stbi__rewind(s); 000bc 48 8b 8d c0 01 00 00 mov rcx, QWORD PTR s$[rbp] 000c3 e8 00 00 00 00 call stbi__rewind -; 7001 : return 0; +; 7014 : return 0; 000c8 33 c0 xor eax, eax 000ca e9 bd 01 00 00 jmp $LN1@stbi__pic_ $LN8@stbi__pic_: -; 7002 : } -; 7003 : -; 7004 : stbi__skip(s, 88); +; 7015 : } +; 7016 : +; 7017 : stbi__skip(s, 88); 000cf ba 58 00 00 00 mov edx, 88 ; 00000058H 000d4 48 8b 8d c0 01 00 00 mov rcx, QWORD PTR s$[rbp] 000db e8 00 00 00 00 call stbi__skip -; 7005 : -; 7006 : *x = stbi__get16be(s); +; 7018 : +; 7019 : *x = stbi__get16be(s); 000e0 48 8b 8d c0 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -46157,7 +46177,7 @@ $LN8@stbi__pic_: 00 00 mov rcx, QWORD PTR x$[rbp] 000f3 89 01 mov DWORD PTR [rcx], eax -; 7007 : *y = stbi__get16be(s); +; 7020 : *y = stbi__get16be(s); 000f5 48 8b 8d c0 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -46166,7 +46186,7 @@ $LN8@stbi__pic_: 00 00 mov rcx, QWORD PTR y$[rbp] 00108 89 01 mov DWORD PTR [rcx], eax -; 7008 : if (stbi__at_eof(s)) { +; 7021 : if (stbi__at_eof(s)) { 0010a 48 8b 8d c0 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -46174,20 +46194,20 @@ $LN8@stbi__pic_: 00116 85 c0 test eax, eax 00118 74 13 je SHORT $LN9@stbi__pic_ -; 7009 : stbi__rewind(s); +; 7022 : stbi__rewind(s); 0011a 48 8b 8d c0 01 00 00 mov rcx, QWORD PTR s$[rbp] 00121 e8 00 00 00 00 call stbi__rewind -; 7010 : return 0; +; 7023 : return 0; 00126 33 c0 xor eax, eax 00128 e9 5f 01 00 00 jmp $LN1@stbi__pic_ $LN9@stbi__pic_: -; 7011 : } -; 7012 : if ((*x) != 0 && (1 << 28) / (*x) < (*y)) { +; 7024 : } +; 7025 : if ((*x) != 0 && (1 << 28) / (*x) < (*y)) { 0012d 48 8b 85 c8 01 00 00 mov rax, QWORD PTR x$[rbp] @@ -46203,21 +46223,21 @@ $LN9@stbi__pic_: 0014f 3b 01 cmp eax, DWORD PTR [rcx] 00151 7d 13 jge SHORT $LN10@stbi__pic_ -; 7013 : stbi__rewind(s); +; 7026 : stbi__rewind(s); 00153 48 8b 8d c0 01 00 00 mov rcx, QWORD PTR s$[rbp] 0015a e8 00 00 00 00 call stbi__rewind -; 7014 : return 0; +; 7027 : return 0; 0015f 33 c0 xor eax, eax 00161 e9 26 01 00 00 jmp $LN1@stbi__pic_ $LN10@stbi__pic_: -; 7015 : } -; 7016 : -; 7017 : stbi__skip(s, 8); +; 7028 : } +; 7029 : +; 7030 : stbi__skip(s, 8); 00166 ba 08 00 00 00 mov edx, 8 0016b 48 8b 8d c0 01 @@ -46225,24 +46245,24 @@ $LN10@stbi__pic_: 00172 e8 00 00 00 00 call stbi__skip $LN4@stbi__pic_: -; 7018 : -; 7019 : do { -; 7020 : stbi__pic_packet* packet; -; 7021 : -; 7022 : if (num_packets == sizeof(packets) / sizeof(packets[0])) +; 7031 : +; 7032 : do { +; 7033 : stbi__pic_packet* packet; +; 7034 : +; 7035 : if (num_packets == sizeof(packets) / sizeof(packets[0])) 00177 48 63 45 24 movsxd rax, DWORD PTR num_packets$[rbp] 0017b 48 83 f8 0a cmp rax, 10 0017f 75 07 jne SHORT $LN11@stbi__pic_ -; 7023 : return 0; +; 7036 : return 0; 00181 33 c0 xor eax, eax 00183 e9 04 01 00 00 jmp $LN1@stbi__pic_ $LN11@stbi__pic_: -; 7024 : -; 7025 : packet = &packets[num_packets++]; +; 7037 : +; 7038 : packet = &packets[num_packets++]; 00188 48 63 45 24 movsxd rax, DWORD PTR num_packets$[rbp] 0018c 48 6b c0 03 imul rax, rax, 3 @@ -46254,7 +46274,7 @@ $LN11@stbi__pic_: 001a2 ff c0 inc eax 001a4 89 45 24 mov DWORD PTR num_packets$[rbp], eax -; 7026 : chained = stbi__get8(s); +; 7039 : chained = stbi__get8(s); 001a7 48 8b 8d c0 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -46262,7 +46282,7 @@ $LN11@stbi__pic_: 001b3 0f b6 c0 movzx eax, al 001b6 89 45 44 mov DWORD PTR chained$[rbp], eax -; 7027 : packet->size = stbi__get8(s); +; 7040 : packet->size = stbi__get8(s); 001b9 48 8b 8d c0 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -46271,7 +46291,7 @@ $LN11@stbi__pic_: 00 00 mov rcx, QWORD PTR packet$5[rbp] 001cc 88 01 mov BYTE PTR [rcx], al -; 7028 : packet->type = stbi__get8(s); +; 7041 : packet->type = stbi__get8(s); 001ce 48 8b 8d c0 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -46280,7 +46300,7 @@ $LN11@stbi__pic_: 00 00 mov rcx, QWORD PTR packet$5[rbp] 001e1 88 41 01 mov BYTE PTR [rcx+1], al -; 7029 : packet->channel = stbi__get8(s); +; 7042 : packet->channel = stbi__get8(s); 001e4 48 8b 8d c0 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -46289,7 +46309,7 @@ $LN11@stbi__pic_: 00 00 mov rcx, QWORD PTR packet$5[rbp] 001f7 88 41 02 mov BYTE PTR [rcx+2], al -; 7030 : act_comp |= packet->channel; +; 7043 : act_comp |= packet->channel; 001fa 48 8b 85 c8 00 00 00 mov rax, QWORD PTR packet$5[rbp] @@ -46299,8 +46319,8 @@ $LN11@stbi__pic_: 0020a 8b c1 mov eax, ecx 0020c 89 45 04 mov DWORD PTR act_comp$[rbp], eax -; 7031 : -; 7032 : if (stbi__at_eof(s)) { +; 7044 : +; 7045 : if (stbi__at_eof(s)) { 0020f 48 8b 8d c0 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -46308,20 +46328,20 @@ $LN11@stbi__pic_: 0021b 85 c0 test eax, eax 0021d 74 10 je SHORT $LN12@stbi__pic_ -; 7033 : stbi__rewind(s); +; 7046 : stbi__rewind(s); 0021f 48 8b 8d c0 01 00 00 mov rcx, QWORD PTR s$[rbp] 00226 e8 00 00 00 00 call stbi__rewind -; 7034 : return 0; +; 7047 : return 0; 0022b 33 c0 xor eax, eax 0022d eb 5d jmp SHORT $LN1@stbi__pic_ $LN12@stbi__pic_: -; 7035 : } -; 7036 : if (packet->size != 8) { +; 7048 : } +; 7049 : if (packet->size != 8) { 0022f 48 8b 85 c8 00 00 00 mov rax, QWORD PTR packet$5[rbp] @@ -46329,27 +46349,27 @@ $LN12@stbi__pic_: 00239 83 f8 08 cmp eax, 8 0023c 74 10 je SHORT $LN13@stbi__pic_ -; 7037 : stbi__rewind(s); +; 7050 : stbi__rewind(s); 0023e 48 8b 8d c0 01 00 00 mov rcx, QWORD PTR s$[rbp] 00245 e8 00 00 00 00 call stbi__rewind -; 7038 : return 0; +; 7051 : return 0; 0024a 33 c0 xor eax, eax 0024c eb 3e jmp SHORT $LN1@stbi__pic_ $LN13@stbi__pic_: -; 7039 : } -; 7040 : } while (chained); +; 7052 : } +; 7053 : } while (chained); 0024e 83 7d 44 00 cmp DWORD PTR chained$[rbp], 0 00252 0f 85 1f ff ff ff jne $LN4@stbi__pic_ -; 7041 : -; 7042 : *comp = (act_comp & 0x10 ? 4 : 3); +; 7054 : +; 7055 : *comp = (act_comp & 0x10 ? 4 : 3); 00258 8b 45 04 mov eax, DWORD PTR act_comp$[rbp] 0025b 83 e0 10 and eax, 16 @@ -46368,13 +46388,13 @@ $LN16@stbi__pic_: 00 mov ecx, DWORD PTR tv152[rbp] 00285 89 08 mov DWORD PTR [rax], ecx -; 7043 : -; 7044 : return 1; +; 7056 : +; 7057 : return 1; 00287 b8 01 00 00 00 mov eax, 1 $LN1@stbi__pic_: -; 7045 : } +; 7058 : } 0028c 48 8b f8 mov rdi, rax 0028f 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] @@ -46416,7 +46436,7 @@ req_comp$ = 432 ri$ = 440 stbi__pic_load PROC ; COMDAT -; 6049 : { +; 6062 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -46442,11 +46462,11 @@ stbi__pic_load PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 6050 : stbi_uc* result; -; 6051 : int i, x, y, internal_comp; -; 6052 : STBI_NOTUSED(ri); -; 6053 : -; 6054 : if (!comp) comp = &internal_comp; +; 6063 : stbi_uc* result; +; 6064 : int i, x, y, internal_comp; +; 6065 : STBI_NOTUSED(ri); +; 6066 : +; 6067 : if (!comp) comp = &internal_comp; 00058 48 83 bd a8 01 00 00 00 cmp QWORD PTR comp$[rbp], 0 @@ -46457,8 +46477,8 @@ stbi__pic_load PROC ; COMDAT 00 00 mov QWORD PTR comp$[rbp], rax $LN5@stbi__pic_: -; 6055 : -; 6056 : for (i = 0; i < 92; ++i) +; 6068 : +; 6069 : for (i = 0; i < 92; ++i) 00070 c7 45 24 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -46471,7 +46491,7 @@ $LN4@stbi__pic_: 00081 83 7d 24 5c cmp DWORD PTR i$[rbp], 92 ; 0000005cH 00085 7d 0e jge SHORT $LN3@stbi__pic_ -; 6057 : stbi__get8(s); +; 6070 : stbi__get8(s); 00087 48 8b 8d 90 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -46479,23 +46499,23 @@ $LN4@stbi__pic_: 00093 eb e4 jmp SHORT $LN2@stbi__pic_ $LN3@stbi__pic_: -; 6058 : -; 6059 : x = stbi__get16be(s); +; 6071 : +; 6072 : x = stbi__get16be(s); 00095 48 8b 8d 90 01 00 00 mov rcx, QWORD PTR s$[rbp] 0009c e8 00 00 00 00 call stbi__get16be 000a1 89 45 44 mov DWORD PTR x$[rbp], eax -; 6060 : y = stbi__get16be(s); +; 6073 : y = stbi__get16be(s); 000a4 48 8b 8d 90 01 00 00 mov rcx, QWORD PTR s$[rbp] 000ab e8 00 00 00 00 call stbi__get16be 000b0 89 45 64 mov DWORD PTR y$[rbp], eax -; 6061 : -; 6062 : if (y > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large", "Very large image (corrupt?)"); +; 6074 : +; 6075 : if (y > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large", "Very large image (corrupt?)"); 000b3 81 7d 64 00 00 00 01 cmp DWORD PTR y$[rbp], 16777216 ; 01000000H @@ -46519,7 +46539,7 @@ $LN15@stbi__pic_: 000eb e9 f3 01 00 00 jmp $LN1@stbi__pic_ $LN6@stbi__pic_: -; 6063 : if (x > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large", "Very large image (corrupt?)"); +; 6076 : if (x > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large", "Very large image (corrupt?)"); 000f0 81 7d 44 00 00 00 01 cmp DWORD PTR x$[rbp], 16777216 ; 01000000H @@ -46543,8 +46563,8 @@ $LN17@stbi__pic_: 00128 e9 b6 01 00 00 jmp $LN1@stbi__pic_ $LN7@stbi__pic_: -; 6064 : -; 6065 : if (stbi__at_eof(s)) return stbi__errpuc("bad file", "file too short (pic header)"); +; 6077 : +; 6078 : if (stbi__at_eof(s)) return stbi__errpuc("bad file", "file too short (pic header)"); 0012d 48 8b 8d 90 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -46570,7 +46590,7 @@ $LN19@stbi__pic_: 0016c e9 72 01 00 00 jmp $LN1@stbi__pic_ $LN8@stbi__pic_: -; 6066 : if (!stbi__mad3sizes_valid(x, y, 4, 0)) return stbi__errpuc("too large", "PIC image too large to decode"); +; 6079 : if (!stbi__mad3sizes_valid(x, y, 4, 0)) return stbi__errpuc("too large", "PIC image too large to decode"); 00171 45 33 c9 xor r9d, r9d 00174 41 b8 04 00 00 @@ -46599,28 +46619,28 @@ $LN21@stbi__pic_: 001b8 e9 26 01 00 00 jmp $LN1@stbi__pic_ $LN9@stbi__pic_: -; 6067 : -; 6068 : stbi__get32be(s); //skip `ratio' +; 6080 : +; 6081 : stbi__get32be(s); //skip `ratio' 001bd 48 8b 8d 90 01 00 00 mov rcx, QWORD PTR s$[rbp] 001c4 e8 00 00 00 00 call stbi__get32be -; 6069 : stbi__get16be(s); //skip `fields' +; 6082 : stbi__get16be(s); //skip `fields' 001c9 48 8b 8d 90 01 00 00 mov rcx, QWORD PTR s$[rbp] 001d0 e8 00 00 00 00 call stbi__get16be -; 6070 : stbi__get16be(s); //skip `pad' +; 6083 : stbi__get16be(s); //skip `pad' 001d5 48 8b 8d 90 01 00 00 mov rcx, QWORD PTR s$[rbp] 001dc e8 00 00 00 00 call stbi__get16be -; 6071 : -; 6072 : // intermediate buffer is RGBA -; 6073 : result = (stbi_uc*)stbi__malloc_mad3(x, y, 4, 0); +; 6084 : +; 6085 : // intermediate buffer is RGBA +; 6086 : result = (stbi_uc*)stbi__malloc_mad3(x, y, 4, 0); 001e1 45 33 c9 xor r9d, r9d 001e4 41 b8 04 00 00 @@ -46630,7 +46650,7 @@ $LN9@stbi__pic_: 001f0 e8 00 00 00 00 call stbi__malloc_mad3 001f5 48 89 45 08 mov QWORD PTR result$[rbp], rax -; 6074 : if (!result) return stbi__errpuc("outofmem", "Out of memory"); +; 6087 : if (!result) return stbi__errpuc("outofmem", "Out of memory"); 001f9 48 83 7d 08 00 cmp QWORD PTR result$[rbp], 0 001fe 75 34 jne SHORT $LN10@stbi__pic_ @@ -46653,7 +46673,7 @@ $LN23@stbi__pic_: 0022f e9 af 00 00 00 jmp $LN1@stbi__pic_ $LN10@stbi__pic_: -; 6075 : memset(result, 0xff, x * y * 4); +; 6088 : memset(result, 0xff, x * y * 4); 00234 8b 45 44 mov eax, DWORD PTR x$[rbp] 00237 0f af 45 64 imul eax, DWORD PTR y$[rbp] @@ -46664,8 +46684,8 @@ $LN10@stbi__pic_: 00248 48 8b 4d 08 mov rcx, QWORD PTR result$[rbp] 0024c e8 00 00 00 00 call memset -; 6076 : -; 6077 : if (!stbi__pic_load_core(s, x, y, comp, result)) { +; 6089 : +; 6090 : if (!stbi__pic_load_core(s, x, y, comp, result)) { 00251 48 8b 45 08 mov rax, QWORD PTR result$[rbp] 00255 48 89 44 24 20 mov QWORD PTR [rsp+32], rax @@ -46679,34 +46699,34 @@ $LN10@stbi__pic_: 00274 48 85 c0 test rax, rax 00277 75 12 jne SHORT $LN11@stbi__pic_ -; 6078 : STBI_FREE(result); +; 6091 : STBI_FREE(result); 00279 48 8b 4d 08 mov rcx, QWORD PTR result$[rbp] 0027d ff 15 00 00 00 00 call QWORD PTR __imp_free -; 6079 : result = 0; +; 6092 : result = 0; 00283 48 c7 45 08 00 00 00 00 mov QWORD PTR result$[rbp], 0 $LN11@stbi__pic_: -; 6080 : } -; 6081 : *px = x; +; 6093 : } +; 6094 : *px = x; 0028b 48 8b 85 98 01 00 00 mov rax, QWORD PTR px$[rbp] 00292 8b 4d 44 mov ecx, DWORD PTR x$[rbp] 00295 89 08 mov DWORD PTR [rax], ecx -; 6082 : *py = y; +; 6095 : *py = y; 00297 48 8b 85 a0 01 00 00 mov rax, QWORD PTR py$[rbp] 0029e 8b 4d 64 mov ecx, DWORD PTR y$[rbp] 002a1 89 08 mov DWORD PTR [rax], ecx -; 6083 : if (req_comp == 0) req_comp = *comp; +; 6096 : if (req_comp == 0) req_comp = *comp; 002a3 83 bd b0 01 00 00 00 cmp DWORD PTR req_comp$[rbp], 0 @@ -46718,7 +46738,7 @@ $LN11@stbi__pic_: 00 mov DWORD PTR req_comp$[rbp], eax $LN12@stbi__pic_: -; 6084 : result = stbi__convert_format(result, 4, req_comp, x, y); +; 6097 : result = stbi__convert_format(result, 4, req_comp, x, y); 002bb 8b 45 64 mov eax, DWORD PTR y$[rbp] 002be 89 44 24 20 mov DWORD PTR [rsp+32], eax @@ -46730,13 +46750,13 @@ $LN12@stbi__pic_: 002d6 e8 00 00 00 00 call stbi__convert_format 002db 48 89 45 08 mov QWORD PTR result$[rbp], rax -; 6085 : -; 6086 : return result; +; 6098 : +; 6099 : return result; 002df 48 8b 45 08 mov rax, QWORD PTR result$[rbp] $LN1@stbi__pic_: -; 6087 : } +; 6100 : } 002e3 48 8b f8 mov rdi, rax 002e6 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48] @@ -46763,7 +46783,7 @@ r$ = 4 s$ = 256 stbi__pic_test PROC ; COMDAT -; 6090 : { +; 6103 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -46775,24 +46795,24 @@ stbi__pic_test PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 6091 : int r = stbi__pic_test_core(s); +; 6104 : int r = stbi__pic_test_core(s); 0001f 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] 00026 e8 00 00 00 00 call stbi__pic_test_core 0002b 89 45 04 mov DWORD PTR r$[rbp], eax -; 6092 : stbi__rewind(s); +; 6105 : stbi__rewind(s); 0002e 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] 00035 e8 00 00 00 00 call stbi__rewind -; 6093 : return r; +; 6106 : return r; 0003a 8b 45 04 mov eax, DWORD PTR r$[rbp] -; 6094 : } +; 6107 : } 0003d 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -46816,7 +46836,7 @@ y$ = 1776 comp$ = 1784 stbi__hdr_info PROC ; COMDAT -; 6857 : { +; 6870 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -46842,16 +46862,16 @@ stbi__hdr_info PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 6858 : char buffer[STBI__HDR_BUFLEN]; -; 6859 : char* token; -; 6860 : int valid = 0; +; 6871 : char buffer[STBI__HDR_BUFLEN]; +; 6872 : char* token; +; 6873 : int valid = 0; 00058 c7 85 44 04 00 00 00 00 00 00 mov DWORD PTR valid$[rbp], 0 -; 6861 : int dummy; -; 6862 : -; 6863 : if (!x) x = &dummy; +; 6874 : int dummy; +; 6875 : +; 6876 : if (!x) x = &dummy; 00062 48 83 bd e8 06 00 00 00 cmp QWORD PTR x$[rbp], 0 @@ -46862,7 +46882,7 @@ stbi__hdr_info PROC ; COMDAT 00 00 mov QWORD PTR x$[rbp], rax $LN7@stbi__hdr_: -; 6864 : if (!y) y = &dummy; +; 6877 : if (!y) y = &dummy; 0007a 48 83 bd f0 06 00 00 00 cmp QWORD PTR y$[rbp], 0 @@ -46873,7 +46893,7 @@ $LN7@stbi__hdr_: 00 00 mov QWORD PTR y$[rbp], rax $LN8@stbi__hdr_: -; 6865 : if (!comp) comp = &dummy; +; 6878 : if (!comp) comp = &dummy; 00092 48 83 bd f8 06 00 00 00 cmp QWORD PTR comp$[rbp], 0 @@ -46884,8 +46904,8 @@ $LN8@stbi__hdr_: 00 00 mov QWORD PTR comp$[rbp], rax $LN9@stbi__hdr_: -; 6866 : -; 6867 : if (stbi__hdr_test(s) == 0) { +; 6879 : +; 6880 : if (stbi__hdr_test(s) == 0) { 000aa 48 8b 8d e0 06 00 00 mov rcx, QWORD PTR s$[rbp] @@ -46893,23 +46913,23 @@ $LN9@stbi__hdr_: 000b6 85 c0 test eax, eax 000b8 75 13 jne SHORT $LN10@stbi__hdr_ -; 6868 : stbi__rewind(s); +; 6881 : stbi__rewind(s); 000ba 48 8b 8d e0 06 00 00 mov rcx, QWORD PTR s$[rbp] 000c1 e8 00 00 00 00 call stbi__rewind -; 6869 : return 0; +; 6882 : return 0; 000c6 33 c0 xor eax, eax 000c8 e9 7f 01 00 00 jmp $LN1@stbi__hdr_ $LN10@stbi__hdr_: $LN2@stbi__hdr_: -; 6870 : } -; 6871 : -; 6872 : for (;;) { -; 6873 : token = stbi__hdr_gettoken(s, buffer); +; 6883 : } +; 6884 : +; 6885 : for (;;) { +; 6886 : token = stbi__hdr_gettoken(s, buffer); 000cd 48 8d 55 10 lea rdx, QWORD PTR buffer$[rbp] 000d1 48 8b 8d e0 06 @@ -46918,7 +46938,7 @@ $LN2@stbi__hdr_: 000dd 48 89 85 28 04 00 00 mov QWORD PTR token$[rbp], rax -; 6874 : if (token[0] == 0) break; +; 6887 : if (token[0] == 0) break; 000e4 b8 01 00 00 00 mov eax, 1 000e9 48 6b c0 00 imul rax, rax, 0 @@ -46930,7 +46950,7 @@ $LN2@stbi__hdr_: 000fc eb 23 jmp SHORT $LN3@stbi__hdr_ $LN11@stbi__hdr_: -; 6875 : if (strcmp(token, "FORMAT=32-bit_rle_rgbe") == 0) valid = 1; +; 6888 : if (strcmp(token, "FORMAT=32-bit_rle_rgbe") == 0) valid = 1; 000fe 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0BH@JFGBLLKC@FORMAT?$DN32?9bit_rle_rgbe@ @@ -46943,32 +46963,32 @@ $LN11@stbi__hdr_: 00 01 00 00 00 mov DWORD PTR valid$[rbp], 1 $LN12@stbi__hdr_: -; 6876 : } +; 6889 : } 0011f eb ac jmp SHORT $LN2@stbi__hdr_ $LN3@stbi__hdr_: -; 6877 : -; 6878 : if (!valid) { +; 6890 : +; 6891 : if (!valid) { 00121 83 bd 44 04 00 00 00 cmp DWORD PTR valid$[rbp], 0 00128 75 13 jne SHORT $LN13@stbi__hdr_ -; 6879 : stbi__rewind(s); +; 6892 : stbi__rewind(s); 0012a 48 8b 8d e0 06 00 00 mov rcx, QWORD PTR s$[rbp] 00131 e8 00 00 00 00 call stbi__rewind -; 6880 : return 0; +; 6893 : return 0; 00136 33 c0 xor eax, eax 00138 e9 0f 01 00 00 jmp $LN1@stbi__hdr_ $LN13@stbi__hdr_: -; 6881 : } -; 6882 : token = stbi__hdr_gettoken(s, buffer); +; 6894 : } +; 6895 : token = stbi__hdr_gettoken(s, buffer); 0013d 48 8d 55 10 lea rdx, QWORD PTR buffer$[rbp] 00141 48 8b 8d e0 06 @@ -46977,7 +46997,7 @@ $LN13@stbi__hdr_: 0014d 48 89 85 28 04 00 00 mov QWORD PTR token$[rbp], rax -; 6883 : if (strncmp(token, "-Y ", 3)) { +; 6896 : if (strncmp(token, "-Y ", 3)) { 00154 41 b8 03 00 00 00 mov r8d, 3 @@ -46990,20 +47010,20 @@ $LN13@stbi__hdr_: 0016e 85 c0 test eax, eax 00170 74 13 je SHORT $LN14@stbi__hdr_ -; 6884 : stbi__rewind(s); +; 6897 : stbi__rewind(s); 00172 48 8b 8d e0 06 00 00 mov rcx, QWORD PTR s$[rbp] 00179 e8 00 00 00 00 call stbi__rewind -; 6885 : return 0; +; 6898 : return 0; 0017e 33 c0 xor eax, eax 00180 e9 c7 00 00 00 jmp $LN1@stbi__hdr_ $LN14@stbi__hdr_: -; 6886 : } -; 6887 : token += 3; +; 6899 : } +; 6900 : token += 3; 00185 48 8b 85 28 04 00 00 mov rax, QWORD PTR token$[rbp] @@ -47011,7 +47031,7 @@ $LN14@stbi__hdr_: 00190 48 89 85 28 04 00 00 mov QWORD PTR token$[rbp], rax -; 6888 : *y = (int)strtol(token, &token, 10); +; 6901 : *y = (int)strtol(token, &token, 10); 00197 41 b8 0a 00 00 00 mov r8d, 10 @@ -47026,7 +47046,7 @@ $LN14@stbi__hdr_: 001b8 89 01 mov DWORD PTR [rcx], eax $LN5@stbi__hdr_: -; 6889 : while (*token == ' ') ++token; +; 6902 : while (*token == ' ') ++token; 001ba 48 8b 85 28 04 00 00 mov rax, QWORD PTR token$[rbp] @@ -47041,7 +47061,7 @@ $LN5@stbi__hdr_: 001da eb de jmp SHORT $LN5@stbi__hdr_ $LN6@stbi__hdr_: -; 6890 : if (strncmp(token, "+X ", 3)) { +; 6903 : if (strncmp(token, "+X ", 3)) { 001dc 41 b8 03 00 00 00 mov r8d, 3 @@ -47054,20 +47074,20 @@ $LN6@stbi__hdr_: 001f6 85 c0 test eax, eax 001f8 74 10 je SHORT $LN15@stbi__hdr_ -; 6891 : stbi__rewind(s); +; 6904 : stbi__rewind(s); 001fa 48 8b 8d e0 06 00 00 mov rcx, QWORD PTR s$[rbp] 00201 e8 00 00 00 00 call stbi__rewind -; 6892 : return 0; +; 6905 : return 0; 00206 33 c0 xor eax, eax 00208 eb 42 jmp SHORT $LN1@stbi__hdr_ $LN15@stbi__hdr_: -; 6893 : } -; 6894 : token += 3; +; 6906 : } +; 6907 : token += 3; 0020a 48 8b 85 28 04 00 00 mov rax, QWORD PTR token$[rbp] @@ -47075,7 +47095,7 @@ $LN15@stbi__hdr_: 00215 48 89 85 28 04 00 00 mov QWORD PTR token$[rbp], rax -; 6895 : *x = (int)strtol(token, NULL, 10); +; 6908 : *x = (int)strtol(token, NULL, 10); 0021c 41 b8 0a 00 00 00 mov r8d, 10 @@ -47088,19 +47108,19 @@ $LN15@stbi__hdr_: 00 00 mov rcx, QWORD PTR x$[rbp] 00238 89 01 mov DWORD PTR [rcx], eax -; 6896 : *comp = 3; +; 6909 : *comp = 3; 0023a 48 8b 85 f8 06 00 00 mov rax, QWORD PTR comp$[rbp] 00241 c7 00 03 00 00 00 mov DWORD PTR [rax], 3 -; 6897 : return 1; +; 6910 : return 1; 00247 b8 01 00 00 00 mov eax, 1 $LN1@stbi__hdr_: -; 6898 : } +; 6911 : } 0024c 48 8b f8 mov rdi, rax 0024f 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] @@ -47164,7 +47184,7 @@ req_comp$ = 2512 ri$ = 2520 stbi__hdr_load PROC ; COMDAT -; 6724 : { +; 6737 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -47190,24 +47210,24 @@ stbi__hdr_load PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 6725 : char buffer[STBI__HDR_BUFLEN]; -; 6726 : char* token; -; 6727 : int valid = 0; +; 6738 : char buffer[STBI__HDR_BUFLEN]; +; 6739 : char* token; +; 6740 : int valid = 0; 00058 c7 85 44 04 00 00 00 00 00 00 mov DWORD PTR valid$[rbp], 0 -; 6728 : int width, height; -; 6729 : stbi_uc* scanline; -; 6730 : float* hdr_data; -; 6731 : int len; -; 6732 : unsigned char count, value; -; 6733 : int i, j, k, c1, c2, z; -; 6734 : const char* headerToken; -; 6735 : STBI_NOTUSED(ri); -; 6736 : -; 6737 : // Check identifier -; 6738 : headerToken = stbi__hdr_gettoken(s, buffer); +; 6741 : int width, height; +; 6742 : stbi_uc* scanline; +; 6743 : float* hdr_data; +; 6744 : int len; +; 6745 : unsigned char count, value; +; 6746 : int i, j, k, c1, c2, z; +; 6747 : const char* headerToken; +; 6748 : STBI_NOTUSED(ri); +; 6749 : +; 6750 : // Check identifier +; 6751 : headerToken = stbi__hdr_gettoken(s, buffer); 00062 48 8d 55 10 lea rdx, QWORD PTR buffer$[rbp] 00066 48 8b 8d b0 09 @@ -47216,7 +47236,7 @@ stbi__hdr_load PROC ; COMDAT 00072 48 89 85 08 06 00 00 mov QWORD PTR headerToken$[rbp], rax -; 6739 : if (strcmp(headerToken, "#?RADIANCE") != 0 && strcmp(headerToken, "#?RGBE") != 0) +; 6752 : if (strcmp(headerToken, "#?RADIANCE") != 0 && strcmp(headerToken, "#?RGBE") != 0) 00079 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0L@NCPEAJBD@?$CD?$DPRADIANCE@ @@ -47233,7 +47253,7 @@ stbi__hdr_load PROC ; COMDAT 000a3 85 c0 test eax, eax 000a5 74 34 je SHORT $LN30@stbi__hdr_ -; 6740 : return stbi__errpf("not HDR", "Corrupt HDR image"); +; 6753 : return stbi__errpf("not HDR", "Corrupt HDR image"); 000a7 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_07NCIOKENI@not?5HDR@ @@ -47255,10 +47275,10 @@ $LN59@stbi__hdr_: $LN30@stbi__hdr_: $LN2@stbi__hdr_: -; 6741 : -; 6742 : // Parse header -; 6743 : for (;;) { -; 6744 : token = stbi__hdr_gettoken(s, buffer); +; 6754 : +; 6755 : // Parse header +; 6756 : for (;;) { +; 6757 : token = stbi__hdr_gettoken(s, buffer); 000db 48 8d 55 10 lea rdx, QWORD PTR buffer$[rbp] 000df 48 8b 8d b0 09 @@ -47267,7 +47287,7 @@ $LN2@stbi__hdr_: 000eb 48 89 85 28 04 00 00 mov QWORD PTR token$[rbp], rax -; 6745 : if (token[0] == 0) break; +; 6758 : if (token[0] == 0) break; 000f2 b8 01 00 00 00 mov eax, 1 000f7 48 6b c0 00 imul rax, rax, 0 @@ -47279,7 +47299,7 @@ $LN2@stbi__hdr_: 0010a eb 23 jmp SHORT $LN3@stbi__hdr_ $LN31@stbi__hdr_: -; 6746 : if (strcmp(token, "FORMAT=32-bit_rle_rgbe") == 0) valid = 1; +; 6759 : if (strcmp(token, "FORMAT=32-bit_rle_rgbe") == 0) valid = 1; 0010c 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0BH@JFGBLLKC@FORMAT?$DN32?9bit_rle_rgbe@ @@ -47292,13 +47312,13 @@ $LN31@stbi__hdr_: 00 01 00 00 00 mov DWORD PTR valid$[rbp], 1 $LN32@stbi__hdr_: -; 6747 : } +; 6760 : } 0012d eb ac jmp SHORT $LN2@stbi__hdr_ $LN3@stbi__hdr_: -; 6748 : -; 6749 : if (!valid) return stbi__errpf("unsupported format", "Unsupported HDR format"); +; 6761 : +; 6762 : if (!valid) return stbi__errpf("unsupported format", "Unsupported HDR format"); 0012f 83 bd 44 04 00 00 00 cmp DWORD PTR valid$[rbp], 0 @@ -47322,10 +47342,10 @@ $LN61@stbi__hdr_: 00167 e9 b5 08 00 00 jmp $LN1@stbi__hdr_ $LN33@stbi__hdr_: -; 6750 : -; 6751 : // Parse width and height -; 6752 : // can't use sscanf() if we're not using stdio! -; 6753 : token = stbi__hdr_gettoken(s, buffer); +; 6763 : +; 6764 : // Parse width and height +; 6765 : // can't use sscanf() if we're not using stdio! +; 6766 : token = stbi__hdr_gettoken(s, buffer); 0016c 48 8d 55 10 lea rdx, QWORD PTR buffer$[rbp] 00170 48 8b 8d b0 09 @@ -47334,7 +47354,7 @@ $LN33@stbi__hdr_: 0017c 48 89 85 28 04 00 00 mov QWORD PTR token$[rbp], rax -; 6754 : if (strncmp(token, "-Y ", 3)) return stbi__errpf("unsupported data layout", "Unsupported HDR format"); +; 6767 : if (strncmp(token, "-Y ", 3)) return stbi__errpf("unsupported data layout", "Unsupported HDR format"); 00183 41 b8 03 00 00 00 mov r8d, 3 @@ -47365,7 +47385,7 @@ $LN63@stbi__hdr_: 001d0 e9 4c 08 00 00 jmp $LN1@stbi__hdr_ $LN34@stbi__hdr_: -; 6755 : token += 3; +; 6768 : token += 3; 001d5 48 8b 85 28 04 00 00 mov rax, QWORD PTR token$[rbp] @@ -47373,7 +47393,7 @@ $LN34@stbi__hdr_: 001e0 48 89 85 28 04 00 00 mov QWORD PTR token$[rbp], rax -; 6756 : height = (int)strtol(token, &token, 10); +; 6769 : height = (int)strtol(token, &token, 10); 001e7 41 b8 0a 00 00 00 mov r8d, 10 @@ -47387,7 +47407,7 @@ $LN34@stbi__hdr_: 00 mov DWORD PTR height$[rbp], eax $LN5@stbi__hdr_: -; 6757 : while (*token == ' ') ++token; +; 6770 : while (*token == ' ') ++token; 00207 48 8b 85 28 04 00 00 mov rax, QWORD PTR token$[rbp] @@ -47402,7 +47422,7 @@ $LN5@stbi__hdr_: 00227 eb de jmp SHORT $LN5@stbi__hdr_ $LN6@stbi__hdr_: -; 6758 : if (strncmp(token, "+X ", 3)) return stbi__errpf("unsupported data layout", "Unsupported HDR format"); +; 6771 : if (strncmp(token, "+X ", 3)) return stbi__errpf("unsupported data layout", "Unsupported HDR format"); 00229 41 b8 03 00 00 00 mov r8d, 3 @@ -47433,7 +47453,7 @@ $LN65@stbi__hdr_: 00276 e9 a6 07 00 00 jmp $LN1@stbi__hdr_ $LN35@stbi__hdr_: -; 6759 : token += 3; +; 6772 : token += 3; 0027b 48 8b 85 28 04 00 00 mov rax, QWORD PTR token$[rbp] @@ -47441,7 +47461,7 @@ $LN35@stbi__hdr_: 00286 48 89 85 28 04 00 00 mov QWORD PTR token$[rbp], rax -; 6760 : width = (int)strtol(token, NULL, 10); +; 6773 : width = (int)strtol(token, NULL, 10); 0028d 41 b8 0a 00 00 00 mov r8d, 10 @@ -47453,8 +47473,8 @@ $LN35@stbi__hdr_: 002a2 89 85 64 04 00 00 mov DWORD PTR width$[rbp], eax -; 6761 : -; 6762 : if (height > STBI_MAX_DIMENSIONS) return stbi__errpf("too large", "Very large image (corrupt?)"); +; 6774 : +; 6775 : if (height > STBI_MAX_DIMENSIONS) return stbi__errpf("too large", "Very large image (corrupt?)"); 002a8 81 bd 84 04 00 00 00 00 00 01 cmp DWORD PTR height$[rbp], 16777216 ; 01000000H @@ -47478,7 +47498,7 @@ $LN67@stbi__hdr_: 002e3 e9 39 07 00 00 jmp $LN1@stbi__hdr_ $LN36@stbi__hdr_: -; 6763 : if (width > STBI_MAX_DIMENSIONS) return stbi__errpf("too large", "Very large image (corrupt?)"); +; 6776 : if (width > STBI_MAX_DIMENSIONS) return stbi__errpf("too large", "Very large image (corrupt?)"); 002e8 81 bd 64 04 00 00 00 00 00 01 cmp DWORD PTR width$[rbp], 16777216 ; 01000000H @@ -47502,8 +47522,8 @@ $LN69@stbi__hdr_: 00323 e9 f9 06 00 00 jmp $LN1@stbi__hdr_ $LN37@stbi__hdr_: -; 6764 : -; 6765 : *x = width; +; 6777 : +; 6778 : *x = width; 00328 48 8b 85 b8 09 00 00 mov rax, QWORD PTR x$[rbp] @@ -47511,7 +47531,7 @@ $LN37@stbi__hdr_: 00 mov ecx, DWORD PTR width$[rbp] 00335 89 08 mov DWORD PTR [rax], ecx -; 6766 : *y = height; +; 6779 : *y = height; 00337 48 8b 85 c0 09 00 00 mov rax, QWORD PTR y$[rbp] @@ -47519,8 +47539,8 @@ $LN37@stbi__hdr_: 00 mov ecx, DWORD PTR height$[rbp] 00344 89 08 mov DWORD PTR [rax], ecx -; 6767 : -; 6768 : if (comp) *comp = 3; +; 6780 : +; 6781 : if (comp) *comp = 3; 00346 48 83 bd c8 09 00 00 00 cmp QWORD PTR comp$[rbp], 0 @@ -47531,7 +47551,7 @@ $LN37@stbi__hdr_: 00 mov DWORD PTR [rax], 3 $LN38@stbi__hdr_: -; 6769 : if (req_comp == 0) req_comp = 3; +; 6782 : if (req_comp == 0) req_comp = 3; 0035d 83 bd d0 09 00 00 00 cmp DWORD PTR req_comp$[rbp], 0 @@ -47540,8 +47560,8 @@ $LN38@stbi__hdr_: 00 03 00 00 00 mov DWORD PTR req_comp$[rbp], 3 $LN39@stbi__hdr_: -; 6770 : -; 6771 : if (!stbi__mad4sizes_valid(width, height, req_comp, sizeof(float), 0)) +; 6783 : +; 6784 : if (!stbi__mad4sizes_valid(width, height, req_comp, sizeof(float), 0)) 00370 c7 44 24 20 00 00 00 00 mov DWORD PTR [rsp+32], 0 @@ -47557,7 +47577,7 @@ $LN39@stbi__hdr_: 00396 85 c0 test eax, eax 00398 75 34 jne SHORT $LN40@stbi__hdr_ -; 6772 : return stbi__errpf("too large", "HDR image is too large"); +; 6785 : return stbi__errpf("too large", "HDR image is too large"); 0039a 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_09OJDLMMBJ@too?5large@ @@ -47578,9 +47598,9 @@ $LN71@stbi__hdr_: 003c9 e9 53 06 00 00 jmp $LN1@stbi__hdr_ $LN40@stbi__hdr_: -; 6773 : -; 6774 : // Read data -; 6775 : hdr_data = (float*)stbi__malloc_mad4(width, height, req_comp, sizeof(float), 0); +; 6786 : +; 6787 : // Read data +; 6788 : hdr_data = (float*)stbi__malloc_mad4(width, height, req_comp, sizeof(float), 0); 003ce c7 44 24 20 00 00 00 00 mov DWORD PTR [rsp+32], 0 @@ -47596,13 +47616,13 @@ $LN40@stbi__hdr_: 003f4 48 89 85 c8 04 00 00 mov QWORD PTR hdr_data$[rbp], rax -; 6776 : if (!hdr_data) +; 6789 : if (!hdr_data) 003fb 48 83 bd c8 04 00 00 00 cmp QWORD PTR hdr_data$[rbp], 0 00403 75 34 jne SHORT $LN41@stbi__hdr_ -; 6777 : return stbi__errpf("outofmem", "Out of memory"); +; 6790 : return stbi__errpf("outofmem", "Out of memory"); 00405 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_08NOGIMCHF@outofmem@ @@ -47623,10 +47643,10 @@ $LN73@stbi__hdr_: 00434 e9 e8 05 00 00 jmp $LN1@stbi__hdr_ $LN41@stbi__hdr_: -; 6778 : -; 6779 : // Load image data -; 6780 : // image data is stored as some number of sca -; 6781 : if (width < 8 || width >= 32768) { +; 6791 : +; 6792 : // Load image data +; 6793 : // image data is stored as some number of sca +; 6794 : if (width < 8 || width >= 32768) { 00439 83 bd 64 04 00 00 08 cmp DWORD PTR width$[rbp], 8 @@ -47637,8 +47657,8 @@ $LN41@stbi__hdr_: 00 jl $LN42@stbi__hdr_ $LN44@stbi__hdr_: -; 6782 : // Read flat data -; 6783 : for (j = 0; j < height; ++j) { +; 6795 : // Read flat data +; 6796 : for (j = 0; j < height; ++j) { 00452 c7 85 64 05 00 00 00 00 00 00 mov DWORD PTR j$[rbp], 0 @@ -47657,7 +47677,7 @@ $LN9@stbi__hdr_: 00478 0f 8d 96 00 00 00 jge $LN8@stbi__hdr_ -; 6784 : for (i = 0; i < width; ++i) { +; 6797 : for (i = 0; i < width; ++i) { 0047e c7 85 44 05 00 00 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -47676,9 +47696,9 @@ $LN12@stbi__hdr_: 004a4 7d 69 jge SHORT $LN11@stbi__hdr_ $main_decode_loop$82: -; 6785 : stbi_uc rgbe[4]; -; 6786 : main_decode_loop: -; 6787 : stbi__getn(s, rgbe, 4); +; 6798 : stbi_uc rgbe[4]; +; 6799 : main_decode_loop: +; 6800 : stbi__getn(s, rgbe, 4); 004a6 41 b8 04 00 00 00 mov r8d, 4 @@ -47688,7 +47708,7 @@ $main_decode_loop$82: 00 00 mov rcx, QWORD PTR s$[rbp] 004ba e8 00 00 00 00 call stbi__getn -; 6788 : stbi__hdr_convert(hdr_data + j * width * req_comp + i * req_comp, rgbe, req_comp); +; 6801 : stbi__hdr_convert(hdr_data + j * width * req_comp + i * req_comp, rgbe, req_comp); 004bf 8b 85 64 05 00 00 mov eax, DWORD PTR j$[rbp] @@ -47713,31 +47733,31 @@ $main_decode_loop$82: 00502 48 8b c8 mov rcx, rax 00505 e8 00 00 00 00 call stbi__hdr_convert -; 6789 : } +; 6802 : } 0050a e9 7b ff ff ff jmp $LN10@stbi__hdr_ $LN11@stbi__hdr_: -; 6790 : } +; 6803 : } 0050f e9 4a ff ff ff jmp $LN7@stbi__hdr_ $LN8@stbi__hdr_: -; 6791 : } +; 6804 : } 00514 e9 01 05 00 00 jmp $LN43@stbi__hdr_ $LN42@stbi__hdr_: -; 6792 : else { -; 6793 : // Read RLE-encoded data -; 6794 : scanline = NULL; +; 6805 : else { +; 6806 : // Read RLE-encoded data +; 6807 : scanline = NULL; 00519 48 c7 85 a8 04 00 00 00 00 00 00 mov QWORD PTR scanline$[rbp], 0 -; 6795 : -; 6796 : for (j = 0; j < height; ++j) { +; 6808 : +; 6809 : for (j = 0; j < height; ++j) { 00524 c7 85 64 05 00 00 00 00 00 00 mov DWORD PTR j$[rbp], 0 @@ -47756,7 +47776,7 @@ $LN15@stbi__hdr_: 0054a 0f 8d b3 04 00 00 jge $LN14@stbi__hdr_ -; 6797 : c1 = stbi__get8(s); +; 6810 : c1 = stbi__get8(s); 00550 48 8b 8d b0 09 00 00 mov rcx, QWORD PTR s$[rbp] @@ -47765,7 +47785,7 @@ $LN15@stbi__hdr_: 0055f 89 85 a4 05 00 00 mov DWORD PTR c1$[rbp], eax -; 6798 : c2 = stbi__get8(s); +; 6811 : c2 = stbi__get8(s); 00565 48 8b 8d b0 09 00 00 mov rcx, QWORD PTR s$[rbp] @@ -47774,7 +47794,7 @@ $LN15@stbi__hdr_: 00574 89 85 c4 05 00 00 mov DWORD PTR c2$[rbp], eax -; 6799 : len = stbi__get8(s); +; 6812 : len = stbi__get8(s); 0057a 48 8b 8d b0 09 00 00 mov rcx, QWORD PTR s$[rbp] @@ -47783,7 +47803,7 @@ $LN15@stbi__hdr_: 00589 89 85 e4 04 00 00 mov DWORD PTR len$[rbp], eax -; 6800 : if (c1 != 2 || c2 != 2 || (len & 0x80)) { +; 6813 : if (c1 != 2 || c2 != 2 || (len & 0x80)) { 0058f 83 bd a4 05 00 00 02 cmp DWORD PTR c1$[rbp], 2 @@ -47799,10 +47819,10 @@ $LN15@stbi__hdr_: 00 je $LN45@stbi__hdr_ $LN46@stbi__hdr_: -; 6801 : // not run-length encoded, so we have to actually use THIS data as a decoded -; 6802 : // pixel (note this can't be a valid pixel--one of RGB must be >= 128) -; 6803 : stbi_uc rgbe[4]; -; 6804 : rgbe[0] = (stbi_uc)c1; +; 6814 : // not run-length encoded, so we have to actually use THIS data as a decoded +; 6815 : // pixel (note this can't be a valid pixel--one of RGB must be >= 128) +; 6816 : stbi_uc rgbe[4]; +; 6817 : rgbe[0] = (stbi_uc)c1; 005b4 b8 01 00 00 00 mov eax, 1 005b9 48 6b c0 00 imul rax, rax, 0 @@ -47811,7 +47831,7 @@ $LN46@stbi__hdr_: 005c4 88 8c 05 44 06 00 00 mov BYTE PTR rgbe$8[rbp+rax], cl -; 6805 : rgbe[1] = (stbi_uc)c2; +; 6818 : rgbe[1] = (stbi_uc)c2; 005cb b8 01 00 00 00 mov eax, 1 005d0 48 6b c0 01 imul rax, rax, 1 @@ -47820,7 +47840,7 @@ $LN46@stbi__hdr_: 005db 88 8c 05 44 06 00 00 mov BYTE PTR rgbe$8[rbp+rax], cl -; 6806 : rgbe[2] = (stbi_uc)len; +; 6819 : rgbe[2] = (stbi_uc)len; 005e2 b8 01 00 00 00 mov eax, 1 005e7 48 6b c0 02 imul rax, rax, 2 @@ -47829,7 +47849,7 @@ $LN46@stbi__hdr_: 005f2 88 8c 05 44 06 00 00 mov BYTE PTR rgbe$8[rbp+rax], cl -; 6807 : rgbe[3] = (stbi_uc)stbi__get8(s); +; 6820 : rgbe[3] = (stbi_uc)stbi__get8(s); 005f9 48 8b 8d b0 09 00 00 mov rcx, QWORD PTR s$[rbp] @@ -47839,7 +47859,7 @@ $LN46@stbi__hdr_: 0060e 88 84 0d 44 06 00 00 mov BYTE PTR rgbe$8[rbp+rcx], al -; 6808 : stbi__hdr_convert(hdr_data, rgbe, req_comp); +; 6821 : stbi__hdr_convert(hdr_data, rgbe, req_comp); 00615 44 8b 85 d0 09 00 00 mov r8d, DWORD PTR req_comp$[rbp] @@ -47849,30 +47869,30 @@ $LN46@stbi__hdr_: 00 00 mov rcx, QWORD PTR hdr_data$[rbp] 0062a e8 00 00 00 00 call stbi__hdr_convert -; 6809 : i = 1; +; 6822 : i = 1; 0062f c7 85 44 05 00 00 01 00 00 00 mov DWORD PTR i$[rbp], 1 -; 6810 : j = 0; +; 6823 : j = 0; 00639 c7 85 64 05 00 00 00 00 00 00 mov DWORD PTR j$[rbp], 0 -; 6811 : STBI_FREE(scanline); +; 6824 : STBI_FREE(scanline); 00643 48 8b 8d a8 04 00 00 mov rcx, QWORD PTR scanline$[rbp] 0064a ff 15 00 00 00 00 call QWORD PTR __imp_free -; 6812 : goto main_decode_loop; // yes, this makes no sense +; 6825 : goto main_decode_loop; // yes, this makes no sense 00650 e9 51 fe ff ff jmp $main_decode_loop$82 $LN45@stbi__hdr_: -; 6813 : } -; 6814 : len <<= 8; +; 6826 : } +; 6827 : len <<= 8; 00655 8b 85 e4 04 00 00 mov eax, DWORD PTR len$[rbp] @@ -47880,7 +47900,7 @@ $LN45@stbi__hdr_: 0065e 89 85 e4 04 00 00 mov DWORD PTR len$[rbp], eax -; 6815 : len |= stbi__get8(s); +; 6828 : len |= stbi__get8(s); 00664 48 8b 8d b0 09 00 00 mov rcx, QWORD PTR s$[rbp] @@ -47893,7 +47913,7 @@ $LN45@stbi__hdr_: 0067d 89 85 e4 04 00 00 mov DWORD PTR len$[rbp], eax -; 6816 : if (len != width) { STBI_FREE(hdr_data); STBI_FREE(scanline); return stbi__errpf("invalid decoded scanline length", "corrupt HDR"); } +; 6829 : if (len != width) { STBI_FREE(hdr_data); STBI_FREE(scanline); return stbi__errpf("invalid decoded scanline length", "corrupt HDR"); } 00683 8b 85 64 04 00 00 mov eax, DWORD PTR width$[rbp] @@ -47927,13 +47947,13 @@ $LN75@stbi__hdr_: 006da e9 42 03 00 00 jmp $LN1@stbi__hdr_ $LN47@stbi__hdr_: -; 6817 : if (scanline == NULL) { +; 6830 : if (scanline == NULL) { 006df 48 83 bd a8 04 00 00 00 cmp QWORD PTR scanline$[rbp], 0 006e7 75 65 jne SHORT $LN48@stbi__hdr_ -; 6818 : scanline = (stbi_uc*)stbi__malloc_mad2(width, 4, 0); +; 6831 : scanline = (stbi_uc*)stbi__malloc_mad2(width, 4, 0); 006e9 45 33 c0 xor r8d, r8d 006ec ba 04 00 00 00 mov edx, 4 @@ -47943,20 +47963,20 @@ $LN47@stbi__hdr_: 006fc 48 89 85 a8 04 00 00 mov QWORD PTR scanline$[rbp], rax -; 6819 : if (!scanline) { +; 6832 : if (!scanline) { 00703 48 83 bd a8 04 00 00 00 cmp QWORD PTR scanline$[rbp], 0 0070b 75 41 jne SHORT $LN49@stbi__hdr_ -; 6820 : STBI_FREE(hdr_data); +; 6833 : STBI_FREE(hdr_data); 0070d 48 8b 8d c8 04 00 00 mov rcx, QWORD PTR hdr_data$[rbp] 00714 ff 15 00 00 00 00 call QWORD PTR __imp_free -; 6821 : return stbi__errpf("outofmem", "Out of memory"); +; 6834 : return stbi__errpf("outofmem", "Out of memory"); 0071a 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_08NOGIMCHF@outofmem@ @@ -47978,10 +47998,10 @@ $LN77@stbi__hdr_: $LN49@stbi__hdr_: $LN48@stbi__hdr_: -; 6822 : } -; 6823 : } -; 6824 : -; 6825 : for (k = 0; k < 4; ++k) { +; 6835 : } +; 6836 : } +; 6837 : +; 6838 : for (k = 0; k < 4; ++k) { 0074e c7 85 84 05 00 00 00 00 00 00 mov DWORD PTR k$[rbp], 0 @@ -47998,14 +48018,14 @@ $LN18@stbi__hdr_: 0076f 0f 8d 10 02 00 00 jge $LN17@stbi__hdr_ -; 6826 : int nleft; -; 6827 : i = 0; +; 6839 : int nleft; +; 6840 : i = 0; 00775 c7 85 44 05 00 00 00 00 00 00 mov DWORD PTR i$[rbp], 0 $LN19@stbi__hdr_: -; 6828 : while ((nleft = width - i) > 0) { +; 6841 : while ((nleft = width - i) > 0) { 0077f 8b 85 44 05 00 00 mov eax, DWORD PTR i$[rbp] @@ -48020,7 +48040,7 @@ $LN19@stbi__hdr_: 0079c 0f 8e de 01 00 00 jle $LN20@stbi__hdr_ -; 6829 : count = stbi__get8(s); +; 6842 : count = stbi__get8(s); 007a2 48 8b 8d b0 09 00 00 mov rcx, QWORD PTR s$[rbp] @@ -48028,7 +48048,7 @@ $LN19@stbi__hdr_: 007ae 88 85 04 05 00 00 mov BYTE PTR count$[rbp], al -; 6830 : if (count > 128) { +; 6843 : if (count > 128) { 007b4 0f b6 85 04 05 00 00 movzx eax, BYTE PTR count$[rbp] @@ -48036,8 +48056,8 @@ $LN19@stbi__hdr_: 007c0 0f 8e ec 00 00 00 jle $LN50@stbi__hdr_ -; 6831 : // Run -; 6832 : value = stbi__get8(s); +; 6844 : // Run +; 6845 : value = stbi__get8(s); 007c6 48 8b 8d b0 09 00 00 mov rcx, QWORD PTR s$[rbp] @@ -48045,7 +48065,7 @@ $LN19@stbi__hdr_: 007d2 88 85 24 05 00 00 mov BYTE PTR value$[rbp], al -; 6833 : count -= 128; +; 6846 : count -= 128; 007d8 0f b6 85 04 05 00 00 movzx eax, BYTE PTR count$[rbp] @@ -48053,7 +48073,7 @@ $LN19@stbi__hdr_: 007e4 88 85 04 05 00 00 mov BYTE PTR count$[rbp], al -; 6834 : if ((count == 0) || (count > nleft)) { STBI_FREE(hdr_data); STBI_FREE(scanline); return stbi__errpf("corrupt", "bad RLE data in HDR"); } +; 6847 : if ((count == 0) || (count > nleft)) { STBI_FREE(hdr_data); STBI_FREE(scanline); return stbi__errpf("corrupt", "bad RLE data in HDR"); } 007ea 0f b6 85 04 05 00 00 movzx eax, BYTE PTR count$[rbp] @@ -48092,7 +48112,7 @@ $LN79@stbi__hdr_: 0084d e9 cf 01 00 00 jmp $LN1@stbi__hdr_ $LN52@stbi__hdr_: -; 6835 : for (z = 0; z < count; ++z) +; 6848 : for (z = 0; z < count; ++z) 00852 c7 85 e4 05 00 00 00 00 00 00 mov DWORD PTR z$[rbp], 0 @@ -48110,7 +48130,7 @@ $LN23@stbi__hdr_: 00 cmp DWORD PTR z$[rbp], eax 00879 7d 32 jge SHORT $LN22@stbi__hdr_ -; 6836 : scanline[i++ * 4 + k] = value; +; 6849 : scanline[i++ * 4 + k] = value; 0087b 8b 85 84 05 00 00 mov eax, DWORD PTR k$[rbp] @@ -48131,14 +48151,14 @@ $LN23@stbi__hdr_: 008ab eb b1 jmp SHORT $LN21@stbi__hdr_ $LN22@stbi__hdr_: -; 6837 : } +; 6850 : } 008ad e9 c9 00 00 00 jmp $LN51@stbi__hdr_ $LN50@stbi__hdr_: -; 6838 : else { -; 6839 : // Dump -; 6840 : if ((count == 0) || (count > nleft)) { STBI_FREE(hdr_data); STBI_FREE(scanline); return stbi__errpf("corrupt", "bad RLE data in HDR"); } +; 6851 : else { +; 6852 : // Dump +; 6853 : if ((count == 0) || (count > nleft)) { STBI_FREE(hdr_data); STBI_FREE(scanline); return stbi__errpf("corrupt", "bad RLE data in HDR"); } 008b2 0f b6 85 04 05 00 00 movzx eax, BYTE PTR count$[rbp] @@ -48177,7 +48197,7 @@ $LN81@stbi__hdr_: 00915 e9 07 01 00 00 jmp $LN1@stbi__hdr_ $LN54@stbi__hdr_: -; 6841 : for (z = 0; z < count; ++z) +; 6854 : for (z = 0; z < count; ++z) 0091a c7 85 e4 05 00 00 00 00 00 00 mov DWORD PTR z$[rbp], 0 @@ -48195,7 +48215,7 @@ $LN26@stbi__hdr_: 00 cmp DWORD PTR z$[rbp], eax 00941 7d 38 jge SHORT $LN25@stbi__hdr_ -; 6842 : scanline[i++ * 4 + k] = stbi__get8(s); +; 6855 : scanline[i++ * 4 + k] = stbi__get8(s); 00943 48 8b 8d b0 09 00 00 mov rcx, QWORD PTR s$[rbp] @@ -48218,18 +48238,18 @@ $LN26@stbi__hdr_: $LN25@stbi__hdr_: $LN51@stbi__hdr_: -; 6843 : } -; 6844 : } +; 6856 : } +; 6857 : } 0097b e9 ff fd ff ff jmp $LN19@stbi__hdr_ $LN20@stbi__hdr_: -; 6845 : } +; 6858 : } 00980 e9 d5 fd ff ff jmp $LN16@stbi__hdr_ $LN17@stbi__hdr_: -; 6846 : for (i = 0; i < width; ++i) +; 6859 : for (i = 0; i < width; ++i) 00985 c7 85 44 05 00 00 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -48247,7 +48267,7 @@ $LN29@stbi__hdr_: 00 cmp DWORD PTR i$[rbp], eax 009ab 7d 51 jge SHORT $LN28@stbi__hdr_ -; 6847 : stbi__hdr_convert(hdr_data + (j * width + i) * req_comp, scanline + i * 4, req_comp); +; 6860 : stbi__hdr_convert(hdr_data + (j * width + i) * req_comp, scanline + i * 4, req_comp); 009ad 8b 85 44 05 00 00 mov eax, DWORD PTR i$[rbp] @@ -48276,18 +48296,18 @@ $LN29@stbi__hdr_: 009fc eb 93 jmp SHORT $LN27@stbi__hdr_ $LN28@stbi__hdr_: -; 6848 : } +; 6861 : } 009fe e9 2d fb ff ff jmp $LN13@stbi__hdr_ $LN14@stbi__hdr_: -; 6849 : if (scanline) +; 6862 : if (scanline) 00a03 48 83 bd a8 04 00 00 00 cmp QWORD PTR scanline$[rbp], 0 00a0b 74 0d je SHORT $LN56@stbi__hdr_ -; 6850 : STBI_FREE(scanline); +; 6863 : STBI_FREE(scanline); 00a0d 48 8b 8d a8 04 00 00 mov rcx, QWORD PTR scanline$[rbp] @@ -48296,15 +48316,15 @@ $LN14@stbi__hdr_: $LN56@stbi__hdr_: $LN43@stbi__hdr_: -; 6851 : } -; 6852 : -; 6853 : return hdr_data; +; 6864 : } +; 6865 : +; 6866 : return hdr_data; 00a1a 48 8b 85 c8 04 00 00 mov rax, QWORD PTR hdr_data$[rbp] $LN1@stbi__hdr_: -; 6854 : } +; 6867 : } 00a21 48 8b f8 mov rdi, rax 00a24 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48] @@ -48331,7 +48351,7 @@ r$ = 4 s$ = 256 stbi__hdr_test PROC ; COMDAT -; 6662 : { +; 6675 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -48343,7 +48363,7 @@ stbi__hdr_test PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 6663 : int r = stbi__hdr_test_core(s, "#?RADIANCE\n"); +; 6676 : int r = stbi__hdr_test_core(s, "#?RADIANCE\n"); 0001f 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0M@HOIDFNFN@?$CD?$DPRADIANCE?6@ @@ -48352,18 +48372,18 @@ stbi__hdr_test PROC ; COMDAT 0002d e8 00 00 00 00 call stbi__hdr_test_core 00032 89 45 04 mov DWORD PTR r$[rbp], eax -; 6664 : stbi__rewind(s); +; 6677 : stbi__rewind(s); 00035 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] 0003c e8 00 00 00 00 call stbi__rewind -; 6665 : if (!r) { +; 6678 : if (!r) { 00041 83 7d 04 00 cmp DWORD PTR r$[rbp], 0 00045 75 22 jne SHORT $LN2@stbi__hdr_ -; 6666 : r = stbi__hdr_test_core(s, "#?RGBE\n"); +; 6679 : r = stbi__hdr_test_core(s, "#?RGBE\n"); 00047 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_07KFDJIKCK@?$CD?$DPRGBE?6@ @@ -48372,19 +48392,19 @@ stbi__hdr_test PROC ; COMDAT 00055 e8 00 00 00 00 call stbi__hdr_test_core 0005a 89 45 04 mov DWORD PTR r$[rbp], eax -; 6667 : stbi__rewind(s); +; 6680 : stbi__rewind(s); 0005d 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] 00064 e8 00 00 00 00 call stbi__rewind $LN2@stbi__hdr_: -; 6668 : } -; 6669 : return r; +; 6681 : } +; 6682 : return r; 00069 8b 45 04 mov eax, DWORD PTR r$[rbp] -; 6670 : } +; 6683 : } 0006c 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -48402,7 +48422,7 @@ depth$ = 36 s$ = 288 stbi__psd_is16 PROC ; COMDAT -; 6962 : { +; 6975 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -48414,8 +48434,8 @@ stbi__psd_is16 PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 6963 : int channelCount, depth; -; 6964 : if (stbi__get32be(s) != 0x38425053) { +; 6976 : int channelCount, depth; +; 6977 : if (stbi__get32be(s) != 0x38425053) { 0001f 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -48423,20 +48443,20 @@ stbi__psd_is16 PROC ; COMDAT 0002b 3d 53 50 42 38 cmp eax, 943870035 ; 38425053H 00030 74 13 je SHORT $LN2@stbi__psd_ -; 6965 : stbi__rewind(s); +; 6978 : stbi__rewind(s); 00032 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR s$[rbp] 00039 e8 00 00 00 00 call stbi__rewind -; 6966 : return 0; +; 6979 : return 0; 0003e 33 c0 xor eax, eax 00040 e9 9f 00 00 00 jmp $LN1@stbi__psd_ $LN2@stbi__psd_: -; 6967 : } -; 6968 : if (stbi__get16be(s) != 1) { +; 6980 : } +; 6981 : if (stbi__get16be(s) != 1) { 00045 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -48444,34 +48464,34 @@ $LN2@stbi__psd_: 00051 83 f8 01 cmp eax, 1 00054 74 10 je SHORT $LN3@stbi__psd_ -; 6969 : stbi__rewind(s); +; 6982 : stbi__rewind(s); 00056 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR s$[rbp] 0005d e8 00 00 00 00 call stbi__rewind -; 6970 : return 0; +; 6983 : return 0; 00062 33 c0 xor eax, eax 00064 eb 7e jmp SHORT $LN1@stbi__psd_ $LN3@stbi__psd_: -; 6971 : } -; 6972 : stbi__skip(s, 6); +; 6984 : } +; 6985 : stbi__skip(s, 6); 00066 ba 06 00 00 00 mov edx, 6 0006b 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR s$[rbp] 00072 e8 00 00 00 00 call stbi__skip -; 6973 : channelCount = stbi__get16be(s); +; 6986 : channelCount = stbi__get16be(s); 00077 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR s$[rbp] 0007e e8 00 00 00 00 call stbi__get16be 00083 89 45 04 mov DWORD PTR channelCount$[rbp], eax -; 6974 : if (channelCount < 0 || channelCount > 16) { +; 6987 : if (channelCount < 0 || channelCount > 16) { 00086 83 7d 04 00 cmp DWORD PTR channelCount$[rbp], 0 0008a 7c 06 jl SHORT $LN5@stbi__psd_ @@ -48479,62 +48499,62 @@ $LN3@stbi__psd_: 00090 7e 10 jle SHORT $LN4@stbi__psd_ $LN5@stbi__psd_: -; 6975 : stbi__rewind(s); +; 6988 : stbi__rewind(s); 00092 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR s$[rbp] 00099 e8 00 00 00 00 call stbi__rewind -; 6976 : return 0; +; 6989 : return 0; 0009e 33 c0 xor eax, eax 000a0 eb 42 jmp SHORT $LN1@stbi__psd_ $LN4@stbi__psd_: -; 6977 : } -; 6978 : STBI_NOTUSED(stbi__get32be(s)); +; 6990 : } +; 6991 : STBI_NOTUSED(stbi__get32be(s)); 000a2 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR s$[rbp] 000a9 e8 00 00 00 00 call stbi__get32be -; 6979 : STBI_NOTUSED(stbi__get32be(s)); +; 6992 : STBI_NOTUSED(stbi__get32be(s)); 000ae 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR s$[rbp] 000b5 e8 00 00 00 00 call stbi__get32be -; 6980 : depth = stbi__get16be(s); +; 6993 : depth = stbi__get16be(s); 000ba 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR s$[rbp] 000c1 e8 00 00 00 00 call stbi__get16be 000c6 89 45 24 mov DWORD PTR depth$[rbp], eax -; 6981 : if (depth != 16) { +; 6994 : if (depth != 16) { 000c9 83 7d 24 10 cmp DWORD PTR depth$[rbp], 16 000cd 74 10 je SHORT $LN6@stbi__psd_ -; 6982 : stbi__rewind(s); +; 6995 : stbi__rewind(s); 000cf 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR s$[rbp] 000d6 e8 00 00 00 00 call stbi__rewind -; 6983 : return 0; +; 6996 : return 0; 000db 33 c0 xor eax, eax 000dd eb 05 jmp SHORT $LN1@stbi__psd_ $LN6@stbi__psd_: -; 6984 : } -; 6985 : return 1; +; 6997 : } +; 6998 : return 1; 000df b8 01 00 00 00 mov eax, 1 $LN1@stbi__psd_: -; 6986 : } +; 6999 : } 000e4 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] @@ -48557,7 +48577,7 @@ y$ = 336 comp$ = 344 stbi__psd_info PROC ; COMDAT -; 6927 : { +; 6940 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -48583,8 +48603,8 @@ stbi__psd_info PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 6928 : int channelCount, dummy, depth; -; 6929 : if (!x) x = &dummy; +; 6941 : int channelCount, dummy, depth; +; 6942 : if (!x) x = &dummy; 00058 48 83 bd 48 01 00 00 00 cmp QWORD PTR x$[rbp], 0 @@ -48594,7 +48614,7 @@ stbi__psd_info PROC ; COMDAT 00 00 mov QWORD PTR x$[rbp], rax $LN2@stbi__psd_: -; 6930 : if (!y) y = &dummy; +; 6943 : if (!y) y = &dummy; 0006d 48 83 bd 50 01 00 00 00 cmp QWORD PTR y$[rbp], 0 @@ -48604,7 +48624,7 @@ $LN2@stbi__psd_: 00 00 mov QWORD PTR y$[rbp], rax $LN3@stbi__psd_: -; 6931 : if (!comp) comp = &dummy; +; 6944 : if (!comp) comp = &dummy; 00082 48 83 bd 58 01 00 00 00 cmp QWORD PTR comp$[rbp], 0 @@ -48614,7 +48634,7 @@ $LN3@stbi__psd_: 00 00 mov QWORD PTR comp$[rbp], rax $LN4@stbi__psd_: -; 6932 : if (stbi__get32be(s) != 0x38425053) { +; 6945 : if (stbi__get32be(s) != 0x38425053) { 00097 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -48622,20 +48642,20 @@ $LN4@stbi__psd_: 000a3 3d 53 50 42 38 cmp eax, 943870035 ; 38425053H 000a8 74 13 je SHORT $LN5@stbi__psd_ -; 6933 : stbi__rewind(s); +; 6946 : stbi__rewind(s); 000aa 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] 000b1 e8 00 00 00 00 call stbi__rewind -; 6934 : return 0; +; 6947 : return 0; 000b6 33 c0 xor eax, eax 000b8 e9 eb 00 00 00 jmp $LN1@stbi__psd_ $LN5@stbi__psd_: -; 6935 : } -; 6936 : if (stbi__get16be(s) != 1) { +; 6948 : } +; 6949 : if (stbi__get16be(s) != 1) { 000bd 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -48643,34 +48663,34 @@ $LN5@stbi__psd_: 000c9 83 f8 01 cmp eax, 1 000cc 74 13 je SHORT $LN6@stbi__psd_ -; 6937 : stbi__rewind(s); +; 6950 : stbi__rewind(s); 000ce 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] 000d5 e8 00 00 00 00 call stbi__rewind -; 6938 : return 0; +; 6951 : return 0; 000da 33 c0 xor eax, eax 000dc e9 c7 00 00 00 jmp $LN1@stbi__psd_ $LN6@stbi__psd_: -; 6939 : } -; 6940 : stbi__skip(s, 6); +; 6952 : } +; 6953 : stbi__skip(s, 6); 000e1 ba 06 00 00 00 mov edx, 6 000e6 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] 000ed e8 00 00 00 00 call stbi__skip -; 6941 : channelCount = stbi__get16be(s); +; 6954 : channelCount = stbi__get16be(s); 000f2 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] 000f9 e8 00 00 00 00 call stbi__get16be 000fe 89 45 04 mov DWORD PTR channelCount$[rbp], eax -; 6942 : if (channelCount < 0 || channelCount > 16) { +; 6955 : if (channelCount < 0 || channelCount > 16) { 00101 83 7d 04 00 cmp DWORD PTR channelCount$[rbp], 0 00105 7c 06 jl SHORT $LN8@stbi__psd_ @@ -48678,20 +48698,20 @@ $LN6@stbi__psd_: 0010b 7e 13 jle SHORT $LN7@stbi__psd_ $LN8@stbi__psd_: -; 6943 : stbi__rewind(s); +; 6956 : stbi__rewind(s); 0010d 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] 00114 e8 00 00 00 00 call stbi__rewind -; 6944 : return 0; +; 6957 : return 0; 00119 33 c0 xor eax, eax 0011b e9 88 00 00 00 jmp $LN1@stbi__psd_ $LN7@stbi__psd_: -; 6945 : } -; 6946 : *y = stbi__get32be(s); +; 6958 : } +; 6959 : *y = stbi__get32be(s); 00120 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -48700,7 +48720,7 @@ $LN7@stbi__psd_: 00 00 mov rcx, QWORD PTR y$[rbp] 00133 89 01 mov DWORD PTR [rcx], eax -; 6947 : *x = stbi__get32be(s); +; 6960 : *x = stbi__get32be(s); 00135 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -48709,34 +48729,34 @@ $LN7@stbi__psd_: 00 00 mov rcx, QWORD PTR x$[rbp] 00148 89 01 mov DWORD PTR [rcx], eax -; 6948 : depth = stbi__get16be(s); +; 6961 : depth = stbi__get16be(s); 0014a 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] 00151 e8 00 00 00 00 call stbi__get16be 00156 89 45 44 mov DWORD PTR depth$[rbp], eax -; 6949 : if (depth != 8 && depth != 16) { +; 6962 : if (depth != 8 && depth != 16) { 00159 83 7d 44 08 cmp DWORD PTR depth$[rbp], 8 0015d 74 16 je SHORT $LN9@stbi__psd_ 0015f 83 7d 44 10 cmp DWORD PTR depth$[rbp], 16 00163 74 10 je SHORT $LN9@stbi__psd_ -; 6950 : stbi__rewind(s); +; 6963 : stbi__rewind(s); 00165 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] 0016c e8 00 00 00 00 call stbi__rewind -; 6951 : return 0; +; 6964 : return 0; 00171 33 c0 xor eax, eax 00173 eb 33 jmp SHORT $LN1@stbi__psd_ $LN9@stbi__psd_: -; 6952 : } -; 6953 : if (stbi__get16be(s) != 3) { +; 6965 : } +; 6966 : if (stbi__get16be(s) != 3) { 00175 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -48744,32 +48764,32 @@ $LN9@stbi__psd_: 00181 83 f8 03 cmp eax, 3 00184 74 10 je SHORT $LN10@stbi__psd_ -; 6954 : stbi__rewind(s); +; 6967 : stbi__rewind(s); 00186 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] 0018d e8 00 00 00 00 call stbi__rewind -; 6955 : return 0; +; 6968 : return 0; 00192 33 c0 xor eax, eax 00194 eb 12 jmp SHORT $LN1@stbi__psd_ $LN10@stbi__psd_: -; 6956 : } -; 6957 : *comp = 4; +; 6969 : } +; 6970 : *comp = 4; 00196 48 8b 85 58 01 00 00 mov rax, QWORD PTR comp$[rbp] 0019d c7 00 04 00 00 00 mov DWORD PTR [rax], 4 -; 6958 : return 1; +; 6971 : return 1; 001a3 b8 01 00 00 00 mov eax, 1 $LN1@stbi__psd_: -; 6959 : } +; 6972 : } 001a8 48 8b f8 mov rdi, rax 001ab 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] @@ -48839,7 +48859,7 @@ ri$ = 1224 bpc$ = 1232 stbi__psd_load PROC ; COMDAT -; 5666 : { +; 5679 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -48854,16 +48874,16 @@ stbi__psd_load PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 5667 : int pixelCount; -; 5668 : int channelCount, compression; -; 5669 : int channel, i; -; 5670 : int bitdepth; -; 5671 : int w, h; -; 5672 : stbi_uc* out; -; 5673 : STBI_NOTUSED(ri); -; 5674 : -; 5675 : // Check identifier -; 5676 : if (stbi__get32be(s) != 0x38425053) // "8BPS" +; 5680 : int pixelCount; +; 5681 : int channelCount, compression; +; 5682 : int channel, i; +; 5683 : int bitdepth; +; 5684 : int w, h; +; 5685 : stbi_uc* out; +; 5686 : STBI_NOTUSED(ri); +; 5687 : +; 5688 : // Check identifier +; 5689 : if (stbi__get32be(s) != 0x38425053) // "8BPS" 0002e 48 8b 8d a0 04 00 00 mov rcx, QWORD PTR s$[rbp] @@ -48871,7 +48891,7 @@ stbi__psd_load PROC ; COMDAT 0003a 3d 53 50 42 38 cmp eax, 943870035 ; 38425053H 0003f 74 34 je SHORT $LN32@stbi__psd_ -; 5677 : return stbi__errpuc("not PSD", "Corrupt PSD image"); +; 5690 : return stbi__errpuc("not PSD", "Corrupt PSD image"); 00041 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_07ECNCNLIK@not?5PSD@ @@ -48892,9 +48912,9 @@ $LN70@stbi__psd_: 00070 e9 b1 0b 00 00 jmp $LN1@stbi__psd_ $LN32@stbi__psd_: -; 5678 : -; 5679 : // Check file type version. -; 5680 : if (stbi__get16be(s) != 1) +; 5691 : +; 5692 : // Check file type version. +; 5693 : if (stbi__get16be(s) != 1) 00075 48 8b 8d a0 04 00 00 mov rcx, QWORD PTR s$[rbp] @@ -48902,7 +48922,7 @@ $LN32@stbi__psd_: 00081 83 f8 01 cmp eax, 1 00084 74 34 je SHORT $LN33@stbi__psd_ -; 5681 : return stbi__errpuc("wrong version", "Unsupported version of PSD image"); +; 5694 : return stbi__errpuc("wrong version", "Unsupported version of PSD image"); 00086 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0O@CHBCDKKC@wrong?5version@ @@ -48923,25 +48943,25 @@ $LN72@stbi__psd_: 000b5 e9 6c 0b 00 00 jmp $LN1@stbi__psd_ $LN33@stbi__psd_: -; 5682 : -; 5683 : // Skip 6 reserved bytes. -; 5684 : stbi__skip(s, 6); +; 5695 : +; 5696 : // Skip 6 reserved bytes. +; 5697 : stbi__skip(s, 6); 000ba ba 06 00 00 00 mov edx, 6 000bf 48 8b 8d a0 04 00 00 mov rcx, QWORD PTR s$[rbp] 000c6 e8 00 00 00 00 call stbi__skip -; 5685 : -; 5686 : // Read the number of channels (R, G, B, A, etc). -; 5687 : channelCount = stbi__get16be(s); +; 5698 : +; 5699 : // Read the number of channels (R, G, B, A, etc). +; 5700 : channelCount = stbi__get16be(s); 000cb 48 8b 8d a0 04 00 00 mov rcx, QWORD PTR s$[rbp] 000d2 e8 00 00 00 00 call stbi__get16be 000d7 89 45 24 mov DWORD PTR channelCount$[rbp], eax -; 5688 : if (channelCount < 0 || channelCount > 16) +; 5701 : if (channelCount < 0 || channelCount > 16) 000da 83 7d 24 00 cmp DWORD PTR channelCount$[rbp], 0 000de 7c 06 jl SHORT $LN35@stbi__psd_ @@ -48949,7 +48969,7 @@ $LN33@stbi__psd_: 000e4 7e 34 jle SHORT $LN34@stbi__psd_ $LN35@stbi__psd_: -; 5689 : return stbi__errpuc("wrong channel count", "Unsupported number of channels in PSD image"); +; 5702 : return stbi__errpuc("wrong channel count", "Unsupported number of channels in PSD image"); 000e6 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0BE@PJBNGDBE@wrong?5channel?5count@ @@ -48970,9 +48990,9 @@ $LN74@stbi__psd_: 00115 e9 0c 0b 00 00 jmp $LN1@stbi__psd_ $LN34@stbi__psd_: -; 5690 : -; 5691 : // Read the rows and columns of the image. -; 5692 : h = stbi__get32be(s); +; 5703 : +; 5704 : // Read the rows and columns of the image. +; 5705 : h = stbi__get32be(s); 0011a 48 8b 8d a0 04 00 00 mov rcx, QWORD PTR s$[rbp] @@ -48980,7 +49000,7 @@ $LN34@stbi__psd_: 00126 89 85 e4 00 00 00 mov DWORD PTR h$[rbp], eax -; 5693 : w = stbi__get32be(s); +; 5706 : w = stbi__get32be(s); 0012c 48 8b 8d a0 04 00 00 mov rcx, QWORD PTR s$[rbp] @@ -48988,8 +49008,8 @@ $LN34@stbi__psd_: 00138 89 85 c4 00 00 00 mov DWORD PTR w$[rbp], eax -; 5694 : -; 5695 : if (h > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large", "Very large image (corrupt?)"); +; 5707 : +; 5708 : if (h > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large", "Very large image (corrupt?)"); 0013e 81 bd e4 00 00 00 00 00 00 01 cmp DWORD PTR h$[rbp], 16777216 ; 01000000H @@ -49013,7 +49033,7 @@ $LN76@stbi__psd_: 00179 e9 a8 0a 00 00 jmp $LN1@stbi__psd_ $LN36@stbi__psd_: -; 5696 : if (w > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large", "Very large image (corrupt?)"); +; 5709 : if (w > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large", "Very large image (corrupt?)"); 0017e 81 bd c4 00 00 00 00 00 00 01 cmp DWORD PTR w$[rbp], 16777216 ; 01000000H @@ -49037,9 +49057,9 @@ $LN78@stbi__psd_: 001b9 e9 68 0a 00 00 jmp $LN1@stbi__psd_ $LN37@stbi__psd_: -; 5697 : -; 5698 : // Make sure the depth is 8 bits. -; 5699 : bitdepth = stbi__get16be(s); +; 5710 : +; 5711 : // Make sure the depth is 8 bits. +; 5712 : bitdepth = stbi__get16be(s); 001be 48 8b 8d a0 04 00 00 mov rcx, QWORD PTR s$[rbp] @@ -49047,7 +49067,7 @@ $LN37@stbi__psd_: 001ca 89 85 a4 00 00 00 mov DWORD PTR bitdepth$[rbp], eax -; 5700 : if (bitdepth != 8 && bitdepth != 16) +; 5713 : if (bitdepth != 8 && bitdepth != 16) 001d0 83 bd a4 00 00 00 08 cmp DWORD PTR bitdepth$[rbp], 8 @@ -49056,7 +49076,7 @@ $LN37@stbi__psd_: 00 10 cmp DWORD PTR bitdepth$[rbp], 16 001e0 74 34 je SHORT $LN38@stbi__psd_ -; 5701 : return stbi__errpuc("unsupported bit depth", "PSD bit depth is not 8 or 16 bit"); +; 5714 : return stbi__errpuc("unsupported bit depth", "PSD bit depth is not 8 or 16 bit"); 001e2 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0BG@NOLDLPP@unsupported?5bit?5depth@ @@ -49077,18 +49097,18 @@ $LN80@stbi__psd_: 00211 e9 10 0a 00 00 jmp $LN1@stbi__psd_ $LN38@stbi__psd_: -; 5702 : -; 5703 : // Make sure the color mode is RGB. -; 5704 : // Valid options are: -; 5705 : // 0: Bitmap -; 5706 : // 1: Grayscale -; 5707 : // 2: Indexed color -; 5708 : // 3: RGB color -; 5709 : // 4: CMYK color -; 5710 : // 7: Multichannel -; 5711 : // 8: Duotone -; 5712 : // 9: Lab color -; 5713 : if (stbi__get16be(s) != 3) +; 5715 : +; 5716 : // Make sure the color mode is RGB. +; 5717 : // Valid options are: +; 5718 : // 0: Bitmap +; 5719 : // 1: Grayscale +; 5720 : // 2: Indexed color +; 5721 : // 3: RGB color +; 5722 : // 4: CMYK color +; 5723 : // 7: Multichannel +; 5724 : // 8: Duotone +; 5725 : // 9: Lab color +; 5726 : if (stbi__get16be(s) != 3) 00216 48 8b 8d a0 04 00 00 mov rcx, QWORD PTR s$[rbp] @@ -49096,7 +49116,7 @@ $LN38@stbi__psd_: 00222 83 f8 03 cmp eax, 3 00225 74 34 je SHORT $LN39@stbi__psd_ -; 5714 : return stbi__errpuc("wrong color format", "PSD is not in RGB color format"); +; 5727 : return stbi__errpuc("wrong color format", "PSD is not in RGB color format"); 00227 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0BD@IOGGBMNK@wrong?5color?5format@ @@ -49117,9 +49137,9 @@ $LN82@stbi__psd_: 00256 e9 cb 09 00 00 jmp $LN1@stbi__psd_ $LN39@stbi__psd_: -; 5715 : -; 5716 : // Skip the Mode Data. (It's the palette for indexed color; other info for other modes.) -; 5717 : stbi__skip(s, stbi__get32be(s)); +; 5728 : +; 5729 : // Skip the Mode Data. (It's the palette for indexed color; other info for other modes.) +; 5730 : stbi__skip(s, stbi__get32be(s)); 0025b 48 8b 8d a0 04 00 00 mov rcx, QWORD PTR s$[rbp] @@ -49129,9 +49149,9 @@ $LN39@stbi__psd_: 00 00 mov rcx, QWORD PTR s$[rbp] 00270 e8 00 00 00 00 call stbi__skip -; 5718 : -; 5719 : // Skip the image resources. (resolution, pen tool paths, etc) -; 5720 : stbi__skip(s, stbi__get32be(s)); +; 5731 : +; 5732 : // Skip the image resources. (resolution, pen tool paths, etc) +; 5733 : stbi__skip(s, stbi__get32be(s)); 00275 48 8b 8d a0 04 00 00 mov rcx, QWORD PTR s$[rbp] @@ -49141,9 +49161,9 @@ $LN39@stbi__psd_: 00 00 mov rcx, QWORD PTR s$[rbp] 0028a e8 00 00 00 00 call stbi__skip -; 5721 : -; 5722 : // Skip the reserved data. -; 5723 : stbi__skip(s, stbi__get32be(s)); +; 5734 : +; 5735 : // Skip the reserved data. +; 5736 : stbi__skip(s, stbi__get32be(s)); 0028f 48 8b 8d a0 04 00 00 mov rcx, QWORD PTR s$[rbp] @@ -49153,24 +49173,24 @@ $LN39@stbi__psd_: 00 00 mov rcx, QWORD PTR s$[rbp] 002a4 e8 00 00 00 00 call stbi__skip -; 5724 : -; 5725 : // Find out if the data is compressed. -; 5726 : // Known values: -; 5727 : // 0: no compression -; 5728 : // 1: RLE compressed -; 5729 : compression = stbi__get16be(s); +; 5737 : +; 5738 : // Find out if the data is compressed. +; 5739 : // Known values: +; 5740 : // 0: no compression +; 5741 : // 1: RLE compressed +; 5742 : compression = stbi__get16be(s); 002a9 48 8b 8d a0 04 00 00 mov rcx, QWORD PTR s$[rbp] 002b0 e8 00 00 00 00 call stbi__get16be 002b5 89 45 44 mov DWORD PTR compression$[rbp], eax -; 5730 : if (compression > 1) +; 5743 : if (compression > 1) 002b8 83 7d 44 01 cmp DWORD PTR compression$[rbp], 1 002bc 7e 34 jle SHORT $LN40@stbi__psd_ -; 5731 : return stbi__errpuc("bad compression", "PSD has an unknown compression format"); +; 5744 : return stbi__errpuc("bad compression", "PSD has an unknown compression format"); 002be 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0BA@MCNBDLPD@bad?5compression@ @@ -49191,9 +49211,9 @@ $LN84@stbi__psd_: 002ed e9 34 09 00 00 jmp $LN1@stbi__psd_ $LN40@stbi__psd_: -; 5732 : -; 5733 : // Check size -; 5734 : if (!stbi__mad3sizes_valid(4, w, h, 0)) +; 5745 : +; 5746 : // Check size +; 5747 : if (!stbi__mad3sizes_valid(4, w, h, 0)) 002f2 45 33 c9 xor r9d, r9d 002f5 44 8b 85 e4 00 @@ -49205,7 +49225,7 @@ $LN40@stbi__psd_: 0030c 85 c0 test eax, eax 0030e 75 34 jne SHORT $LN41@stbi__psd_ -; 5735 : return stbi__errpuc("too large", "Corrupt PSD"); +; 5748 : return stbi__errpuc("too large", "Corrupt PSD"); 00310 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_09OJDLMMBJ@too?5large@ @@ -49226,10 +49246,10 @@ $LN86@stbi__psd_: 0033f e9 e2 08 00 00 jmp $LN1@stbi__psd_ $LN41@stbi__psd_: -; 5736 : -; 5737 : // Create the destination image. -; 5738 : -; 5739 : if (!compression && bitdepth == 16 && bpc == 16) { +; 5749 : +; 5750 : // Create the destination image. +; 5751 : +; 5752 : if (!compression && bitdepth == 16 && bpc == 16) { 00344 83 7d 44 00 cmp DWORD PTR compression$[rbp], 0 00348 75 42 jne SHORT $LN42@stbi__psd_ @@ -49240,7 +49260,7 @@ $LN41@stbi__psd_: 00 10 cmp DWORD PTR bpc$[rbp], 16 0035a 75 30 jne SHORT $LN42@stbi__psd_ -; 5740 : out = (stbi_uc*)stbi__malloc_mad3(8, w, h, 0); +; 5753 : out = (stbi_uc*)stbi__malloc_mad3(8, w, h, 0); 0035c 45 33 c9 xor r9d, r9d 0035f 44 8b 85 e4 00 @@ -49252,20 +49272,20 @@ $LN41@stbi__psd_: 00376 48 89 85 08 01 00 00 mov QWORD PTR out$[rbp], rax -; 5741 : ri->bits_per_channel = 16; +; 5754 : ri->bits_per_channel = 16; 0037d 48 8b 85 c8 04 00 00 mov rax, QWORD PTR ri$[rbp] 00384 c7 00 10 00 00 00 mov DWORD PTR [rax], 16 -; 5742 : } +; 5755 : } 0038a eb 21 jmp SHORT $LN43@stbi__psd_ $LN42@stbi__psd_: -; 5743 : else -; 5744 : out = (stbi_uc*)stbi__malloc(4 * w * h); +; 5756 : else +; 5757 : out = (stbi_uc*)stbi__malloc(4 * w * h); 0038c 8b 85 c4 00 00 00 mov eax, DWORD PTR w$[rbp] @@ -49279,8 +49299,8 @@ $LN42@stbi__psd_: 00 00 mov QWORD PTR out$[rbp], rax $LN43@stbi__psd_: -; 5745 : -; 5746 : if (!out) return stbi__errpuc("outofmem", "Out of memory"); +; 5758 : +; 5759 : if (!out) return stbi__errpuc("outofmem", "Out of memory"); 003ad 48 83 bd 08 01 00 00 00 cmp QWORD PTR out$[rbp], 0 @@ -49304,7 +49324,7 @@ $LN88@stbi__psd_: 003e6 e9 3b 08 00 00 jmp $LN1@stbi__psd_ $LN44@stbi__psd_: -; 5747 : pixelCount = w * h; +; 5760 : pixelCount = w * h; 003eb 8b 85 c4 00 00 00 mov eax, DWORD PTR w$[rbp] @@ -49312,28 +49332,28 @@ $LN44@stbi__psd_: 00 00 imul eax, DWORD PTR h$[rbp] 003f8 89 45 04 mov DWORD PTR pixelCount$[rbp], eax -; 5748 : -; 5749 : // Initialize the data to zero. -; 5750 : //memset( out, 0, pixelCount * 4 ); -; 5751 : -; 5752 : // Finally, the image data. -; 5753 : if (compression) { +; 5761 : +; 5762 : // Initialize the data to zero. +; 5763 : //memset( out, 0, pixelCount * 4 ); +; 5764 : +; 5765 : // Finally, the image data. +; 5766 : if (compression) { 003fb 83 7d 44 00 cmp DWORD PTR compression$[rbp], 0 003ff 0f 84 22 01 00 00 je $LN45@stbi__psd_ -; 5754 : // RLE as used by .PSD and .TIFF -; 5755 : // Loop until you get the number of unpacked bytes you are expecting: -; 5756 : // Read the next source byte into n. -; 5757 : // If n is between 0 and 127 inclusive, copy the next n+1 bytes literally. -; 5758 : // Else if n is between -127 and -1 inclusive, copy the next byte -n+1 times. -; 5759 : // Else if n is 128, noop. -; 5760 : // Endloop -; 5761 : -; 5762 : // The RLE-compressed data is preceded by a 2-byte data count for each row in the data, -; 5763 : // which we're going to just skip. -; 5764 : stbi__skip(s, h * channelCount * 2); +; 5767 : // RLE as used by .PSD and .TIFF +; 5768 : // Loop until you get the number of unpacked bytes you are expecting: +; 5769 : // Read the next source byte into n. +; 5770 : // If n is between 0 and 127 inclusive, copy the next n+1 bytes literally. +; 5771 : // Else if n is between -127 and -1 inclusive, copy the next byte -n+1 times. +; 5772 : // Else if n is 128, noop. +; 5773 : // Endloop +; 5774 : +; 5775 : // The RLE-compressed data is preceded by a 2-byte data count for each row in the data, +; 5776 : // which we're going to just skip. +; 5777 : stbi__skip(s, h * channelCount * 2); 00405 8b 85 e4 00 00 00 mov eax, DWORD PTR h$[rbp] @@ -49344,9 +49364,9 @@ $LN44@stbi__psd_: 00 00 mov rcx, QWORD PTR s$[rbp] 0041a e8 00 00 00 00 call stbi__skip -; 5765 : -; 5766 : // Read the RLE data by channel. -; 5767 : for (channel = 0; channel < 4; channel++) { +; 5778 : +; 5779 : // Read the RLE data by channel. +; 5780 : for (channel = 0; channel < 4; channel++) { 0041f c7 45 64 00 00 00 00 mov DWORD PTR channel$[rbp], 0 @@ -49360,9 +49380,9 @@ $LN4@stbi__psd_: 00434 0f 8d e8 00 00 00 jge $LN3@stbi__psd_ -; 5768 : stbi_uc* p; -; 5769 : -; 5770 : p = out + channel; +; 5781 : stbi_uc* p; +; 5782 : +; 5783 : p = out + channel; 0043a 48 63 45 64 movsxd rax, DWORD PTR channel$[rbp] 0043e 48 8b 8d 08 01 @@ -49372,14 +49392,14 @@ $LN4@stbi__psd_: 0044b 48 89 85 28 01 00 00 mov QWORD PTR p$1[rbp], rax -; 5771 : if (channel >= channelCount) { +; 5784 : if (channel >= channelCount) { 00452 8b 45 24 mov eax, DWORD PTR channelCount$[rbp] 00455 39 45 64 cmp DWORD PTR channel$[rbp], eax 00458 7c 67 jl SHORT $LN47@stbi__psd_ -; 5772 : // Fill this channel with default data. -; 5773 : for (i = 0; i < pixelCount; i++, p += 4) +; 5785 : // Fill this channel with default data. +; 5786 : for (i = 0; i < pixelCount; i++, p += 4) 0045a c7 85 84 00 00 00 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -49401,7 +49421,7 @@ $LN7@stbi__psd_: 00 cmp DWORD PTR i$[rbp], eax 0048f 7d 2e jge SHORT $LN6@stbi__psd_ -; 5774 : *p = (channel == 3 ? 255 : 0); +; 5787 : *p = (channel == 3 ? 255 : 0); 00491 83 7d 64 03 cmp DWORD PTR channel$[rbp], 3 00495 75 0c jne SHORT $LN89@stbi__psd_ @@ -49420,14 +49440,14 @@ $LN90@stbi__psd_: 004bd eb a7 jmp SHORT $LN5@stbi__psd_ $LN6@stbi__psd_: -; 5775 : } +; 5788 : } 004bf eb 5c jmp SHORT $LN48@stbi__psd_ $LN47@stbi__psd_: -; 5776 : else { -; 5777 : // Read the RLE data. -; 5778 : if (!stbi__psd_decode_rle(s, p, pixelCount)) { +; 5789 : else { +; 5790 : // Read the RLE data. +; 5791 : if (!stbi__psd_decode_rle(s, p, pixelCount)) { 004c1 44 8b 45 04 mov r8d, DWORD PTR pixelCount$[rbp] 004c5 48 8b 95 28 01 @@ -49438,14 +49458,14 @@ $LN47@stbi__psd_: 004d8 85 c0 test eax, eax 004da 75 41 jne SHORT $LN49@stbi__psd_ -; 5779 : STBI_FREE(out); +; 5792 : STBI_FREE(out); 004dc 48 8b 8d 08 01 00 00 mov rcx, QWORD PTR out$[rbp] 004e3 ff 15 00 00 00 00 call QWORD PTR __imp_free -; 5780 : return stbi__errpuc("corrupt", "bad RLE data"); +; 5793 : return stbi__errpuc("corrupt", "bad RLE data"); 004e9 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_07DPPMCAKL@corrupt@ @@ -49467,25 +49487,25 @@ $LN92@stbi__psd_: $LN49@stbi__psd_: $LN48@stbi__psd_: -; 5781 : } -; 5782 : } -; 5783 : } +; 5794 : } +; 5795 : } +; 5796 : } 0051d e9 06 ff ff ff jmp $LN2@stbi__psd_ $LN3@stbi__psd_: -; 5784 : -; 5785 : } +; 5797 : +; 5798 : } 00522 e9 9c 02 00 00 jmp $LN46@stbi__psd_ $LN45@stbi__psd_: -; 5786 : else { -; 5787 : // We're at the raw image data. It's each channel in order (Red, Green, Blue, Alpha, ...) -; 5788 : // where each channel consists of an 8-bit (or 16-bit) value for each pixel in the image. -; 5789 : -; 5790 : // Read the data by channel. -; 5791 : for (channel = 0; channel < 4; channel++) { +; 5799 : else { +; 5800 : // We're at the raw image data. It's each channel in order (Red, Green, Blue, Alpha, ...) +; 5801 : // where each channel consists of an 8-bit (or 16-bit) value for each pixel in the image. +; 5802 : +; 5803 : // Read the data by channel. +; 5804 : for (channel = 0; channel < 4; channel++) { 00527 c7 45 64 00 00 00 00 mov DWORD PTR channel$[rbp], 0 @@ -49499,15 +49519,15 @@ $LN10@stbi__psd_: 0053c 0f 8d 81 02 00 00 jge $LN9@stbi__psd_ -; 5792 : if (channel >= channelCount) { +; 5805 : if (channel >= channelCount) { 00542 8b 45 24 mov eax, DWORD PTR channelCount$[rbp] 00545 39 45 64 cmp DWORD PTR channel$[rbp], eax 00548 0f 8c 38 01 00 00 jl $LN50@stbi__psd_ -; 5793 : // Fill this channel with default data. -; 5794 : if (bitdepth == 16 && bpc == 16) { +; 5806 : // Fill this channel with default data. +; 5807 : if (bitdepth == 16 && bpc == 16) { 0054e 83 bd a4 00 00 00 10 cmp DWORD PTR bitdepth$[rbp], 16 @@ -49518,7 +49538,7 @@ $LN10@stbi__psd_: 00562 0f 85 8f 00 00 00 jne $LN52@stbi__psd_ -; 5795 : stbi__uint16* q = ((stbi__uint16*)out) + channel; +; 5808 : stbi__uint16* q = ((stbi__uint16*)out) + channel; 00568 48 63 45 64 movsxd rax, DWORD PTR channel$[rbp] 0056c 48 8b 8d 08 01 @@ -49527,7 +49547,7 @@ $LN10@stbi__psd_: 00577 48 89 85 48 01 00 00 mov QWORD PTR q$2[rbp], rax -; 5796 : stbi__uint16 val = channel == 3 ? 65535 : 0; +; 5809 : stbi__uint16 val = channel == 3 ? 65535 : 0; 0057e 83 7d 64 03 cmp DWORD PTR channel$[rbp], 3 00582 75 0c jne SHORT $LN93@stbi__psd_ @@ -49543,7 +49563,7 @@ $LN94@stbi__psd_: 005a1 66 89 85 64 01 00 00 mov WORD PTR val$3[rbp], ax -; 5797 : for (i = 0; i < pixelCount; i++, q += 4) +; 5810 : for (i = 0; i < pixelCount; i++, q += 4) 005a8 c7 85 84 00 00 00 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -49565,7 +49585,7 @@ $LN13@stbi__psd_: 00 cmp DWORD PTR i$[rbp], eax 005dd 7d 13 jge SHORT $LN12@stbi__psd_ -; 5798 : *q = val; +; 5811 : *q = val; 005df 48 8b 85 48 01 00 00 mov rax, QWORD PTR q$2[rbp] @@ -49575,13 +49595,13 @@ $LN13@stbi__psd_: 005f0 eb c2 jmp SHORT $LN11@stbi__psd_ $LN12@stbi__psd_: -; 5799 : } +; 5812 : } 005f2 e9 8a 00 00 00 jmp $LN53@stbi__psd_ $LN52@stbi__psd_: -; 5800 : else { -; 5801 : stbi_uc* p = out + channel; +; 5813 : else { +; 5814 : stbi_uc* p = out + channel; 005f7 48 63 45 64 movsxd rax, DWORD PTR channel$[rbp] 005fb 48 8b 8d 08 01 @@ -49591,7 +49611,7 @@ $LN52@stbi__psd_: 00608 48 89 85 88 01 00 00 mov QWORD PTR p$4[rbp], rax -; 5802 : stbi_uc val = channel == 3 ? 255 : 0; +; 5815 : stbi_uc val = channel == 3 ? 255 : 0; 0060f 83 7d 64 03 cmp DWORD PTR channel$[rbp], 3 00613 75 0c jne SHORT $LN95@stbi__psd_ @@ -49607,7 +49627,7 @@ $LN96@stbi__psd_: 00632 88 85 a4 01 00 00 mov BYTE PTR val$5[rbp], al -; 5803 : for (i = 0; i < pixelCount; i++, p += 4) +; 5816 : for (i = 0; i < pixelCount; i++, p += 4) 00638 c7 85 84 00 00 00 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -49629,7 +49649,7 @@ $LN16@stbi__psd_: 00 cmp DWORD PTR i$[rbp], eax 0066d 7d 12 jge SHORT $LN15@stbi__psd_ -; 5804 : *p = val; +; 5817 : *p = val; 0066f 48 8b 85 88 01 00 00 mov rax, QWORD PTR p$4[rbp] @@ -49640,21 +49660,21 @@ $LN16@stbi__psd_: $LN15@stbi__psd_: $LN53@stbi__psd_: -; 5805 : } -; 5806 : } +; 5818 : } +; 5819 : } 00681 e9 38 01 00 00 jmp $LN51@stbi__psd_ $LN50@stbi__psd_: -; 5807 : else { -; 5808 : if (ri->bits_per_channel == 16) { // output bpc +; 5820 : else { +; 5821 : if (ri->bits_per_channel == 16) { // output bpc 00686 48 8b 85 c8 04 00 00 mov rax, QWORD PTR ri$[rbp] 0068d 83 38 10 cmp DWORD PTR [rax], 16 00690 75 6a jne SHORT $LN54@stbi__psd_ -; 5809 : stbi__uint16* q = ((stbi__uint16*)out) + channel; +; 5822 : stbi__uint16* q = ((stbi__uint16*)out) + channel; 00692 48 63 45 64 movsxd rax, DWORD PTR channel$[rbp] 00696 48 8b 8d 08 01 @@ -49663,7 +49683,7 @@ $LN50@stbi__psd_: 006a1 48 89 85 c8 01 00 00 mov QWORD PTR q$6[rbp], rax -; 5810 : for (i = 0; i < pixelCount; i++, q += 4) +; 5823 : for (i = 0; i < pixelCount; i++, q += 4) 006a8 c7 85 84 00 00 00 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -49685,7 +49705,7 @@ $LN19@stbi__psd_: 00 cmp DWORD PTR i$[rbp], eax 006dd 7d 18 jge SHORT $LN18@stbi__psd_ -; 5811 : *q = (stbi__uint16)stbi__get16be(s); +; 5824 : *q = (stbi__uint16)stbi__get16be(s); 006df 48 8b 8d a0 04 00 00 mov rcx, QWORD PTR s$[rbp] @@ -49696,13 +49716,13 @@ $LN19@stbi__psd_: 006f5 eb bd jmp SHORT $LN17@stbi__psd_ $LN18@stbi__psd_: -; 5812 : } +; 5825 : } 006f7 e9 c2 00 00 00 jmp $LN55@stbi__psd_ $LN54@stbi__psd_: -; 5813 : else { -; 5814 : stbi_uc* p = out + channel; +; 5826 : else { +; 5827 : stbi_uc* p = out + channel; 006fc 48 63 45 64 movsxd rax, DWORD PTR channel$[rbp] 00700 48 8b 8d 08 01 @@ -49712,13 +49732,13 @@ $LN54@stbi__psd_: 0070d 48 89 85 e8 01 00 00 mov QWORD PTR p$7[rbp], rax -; 5815 : if (bitdepth == 16) { // input bpc +; 5828 : if (bitdepth == 16) { // input bpc 00714 83 bd a4 00 00 00 10 cmp DWORD PTR bitdepth$[rbp], 16 0071b 75 53 jne SHORT $LN56@stbi__psd_ -; 5816 : for (i = 0; i < pixelCount; i++, p += 4) +; 5829 : for (i = 0; i < pixelCount; i++, p += 4) 0071d c7 85 84 00 00 00 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -49740,7 +49760,7 @@ $LN22@stbi__psd_: 00 cmp DWORD PTR i$[rbp], eax 00752 7d 1a jge SHORT $LN21@stbi__psd_ -; 5817 : *p = (stbi_uc)(stbi__get16be(s) >> 8); +; 5830 : *p = (stbi_uc)(stbi__get16be(s) >> 8); 00754 48 8b 8d a0 04 00 00 mov rcx, QWORD PTR s$[rbp] @@ -49752,13 +49772,13 @@ $LN22@stbi__psd_: 0076c eb bb jmp SHORT $LN20@stbi__psd_ $LN21@stbi__psd_: -; 5818 : } +; 5831 : } 0076e eb 4e jmp SHORT $LN57@stbi__psd_ $LN56@stbi__psd_: -; 5819 : else { -; 5820 : for (i = 0; i < pixelCount; i++, p += 4) +; 5832 : else { +; 5833 : for (i = 0; i < pixelCount; i++, p += 4) 00770 c7 85 84 00 00 00 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -49780,7 +49800,7 @@ $LN25@stbi__psd_: 00 cmp DWORD PTR i$[rbp], eax 007a5 7d 17 jge SHORT $LN24@stbi__psd_ -; 5821 : *p = stbi__get8(s); +; 5834 : *p = stbi__get8(s); 007a7 48 8b 8d a0 04 00 00 mov rcx, QWORD PTR s$[rbp] @@ -49794,25 +49814,25 @@ $LN57@stbi__psd_: $LN55@stbi__psd_: $LN51@stbi__psd_: -; 5822 : } -; 5823 : } -; 5824 : } -; 5825 : } +; 5835 : } +; 5836 : } +; 5837 : } +; 5838 : } 007be e9 6d fd ff ff jmp $LN8@stbi__psd_ $LN9@stbi__psd_: $LN46@stbi__psd_: -; 5826 : } -; 5827 : -; 5828 : // remove weird white matte from PSD -; 5829 : if (channelCount >= 4) { +; 5839 : } +; 5840 : +; 5841 : // remove weird white matte from PSD +; 5842 : if (channelCount >= 4) { 007c3 83 7d 24 04 cmp DWORD PTR channelCount$[rbp], 4 007c7 0f 8c 82 03 00 00 jl $LN58@stbi__psd_ -; 5830 : if (ri->bits_per_channel == 16) { +; 5843 : if (ri->bits_per_channel == 16) { 007cd 48 8b 85 c8 04 00 00 mov rax, QWORD PTR ri$[rbp] @@ -49820,7 +49840,7 @@ $LN46@stbi__psd_: 007d7 0f 85 bc 01 00 00 jne $LN59@stbi__psd_ -; 5831 : for (i = 0; i < w * h; ++i) { +; 5844 : for (i = 0; i < w * h; ++i) { 007dd c7 85 84 00 00 00 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -49841,7 +49861,7 @@ $LN28@stbi__psd_: 0080a 0f 8d 84 01 00 00 jge $LN27@stbi__psd_ -; 5832 : stbi__uint16* pixel = (stbi__uint16*)out + 4 * i; +; 5845 : stbi__uint16* pixel = (stbi__uint16*)out + 4 * i; 00810 8b 85 84 00 00 00 mov eax, DWORD PTR i$[rbp] @@ -49853,7 +49873,7 @@ $LN28@stbi__psd_: 00826 48 89 85 08 02 00 00 mov QWORD PTR pixel$8[rbp], rax -; 5833 : if (pixel[3] != 0 && pixel[3] != 65535) { +; 5846 : if (pixel[3] != 0 && pixel[3] != 65535) { 0082d b8 02 00 00 00 mov eax, 2 00832 48 6b c0 03 imul rax, rax, 3 @@ -49872,7 +49892,7 @@ $LN28@stbi__psd_: 00862 0f 84 27 01 00 00 je $LN61@stbi__psd_ -; 5834 : float a = pixel[3] / 65535.0f; +; 5847 : float a = pixel[3] / 65535.0f; 00868 b8 02 00 00 00 mov eax, 2 0086d 48 6b c0 03 imul rax, rax, 3 @@ -49885,7 +49905,7 @@ $LN28@stbi__psd_: 00888 f3 0f 11 85 24 02 00 00 movss DWORD PTR a$9[rbp], xmm0 -; 5835 : float ra = 1.0f / a; +; 5848 : float ra = 1.0f / a; 00890 f3 0f 10 05 00 00 00 00 movss xmm0, DWORD PTR __real@3f800000 @@ -49894,7 +49914,7 @@ $LN28@stbi__psd_: 008a0 f3 0f 11 85 44 02 00 00 movss DWORD PTR ra$10[rbp], xmm0 -; 5836 : float inv_a = 65535.0f * (1 - ra); +; 5849 : float inv_a = 65535.0f * (1 - ra); 008a8 f3 0f 10 05 00 00 00 00 movss xmm0, DWORD PTR __real@3f800000 @@ -49907,7 +49927,7 @@ $LN28@stbi__psd_: 008c7 f3 0f 11 85 64 02 00 00 movss DWORD PTR inv_a$11[rbp], xmm0 -; 5837 : pixel[0] = (stbi__uint16)(pixel[0] * ra + inv_a); +; 5850 : pixel[0] = (stbi__uint16)(pixel[0] * ra + inv_a); 008cf b8 02 00 00 00 mov eax, 2 008d4 48 6b c0 00 imul rax, rax, 0 @@ -49926,7 +49946,7 @@ $LN28@stbi__psd_: 00 00 mov rdx, QWORD PTR pixel$8[rbp] 0090b 66 89 04 0a mov WORD PTR [rdx+rcx], ax -; 5838 : pixel[1] = (stbi__uint16)(pixel[1] * ra + inv_a); +; 5851 : pixel[1] = (stbi__uint16)(pixel[1] * ra + inv_a); 0090f b8 02 00 00 00 mov eax, 2 00914 48 6b c0 01 imul rax, rax, 1 @@ -49945,7 +49965,7 @@ $LN28@stbi__psd_: 00 00 mov rdx, QWORD PTR pixel$8[rbp] 0094b 66 89 04 0a mov WORD PTR [rdx+rcx], ax -; 5839 : pixel[2] = (stbi__uint16)(pixel[2] * ra + inv_a); +; 5852 : pixel[2] = (stbi__uint16)(pixel[2] * ra + inv_a); 0094f b8 02 00 00 00 mov eax, 2 00954 48 6b c0 02 imul rax, rax, 2 @@ -49965,19 +49985,19 @@ $LN28@stbi__psd_: 0098b 66 89 04 0a mov WORD PTR [rdx+rcx], ax $LN61@stbi__psd_: -; 5840 : } -; 5841 : } +; 5853 : } +; 5854 : } 0098f e9 55 fe ff ff jmp $LN26@stbi__psd_ $LN27@stbi__psd_: -; 5842 : } +; 5855 : } 00994 e9 b6 01 00 00 jmp $LN60@stbi__psd_ $LN59@stbi__psd_: -; 5843 : else { -; 5844 : for (i = 0; i < w * h; ++i) { +; 5856 : else { +; 5857 : for (i = 0; i < w * h; ++i) { 00999 c7 85 84 00 00 00 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -49998,7 +50018,7 @@ $LN31@stbi__psd_: 009c6 0f 8d 83 01 00 00 jge $LN30@stbi__psd_ -; 5845 : unsigned char* pixel = out + 4 * i; +; 5858 : unsigned char* pixel = out + 4 * i; 009cc 8b 85 84 00 00 00 mov eax, DWORD PTR i$[rbp] @@ -50011,7 +50031,7 @@ $LN31@stbi__psd_: 009e4 48 89 85 88 02 00 00 mov QWORD PTR pixel$12[rbp], rax -; 5846 : if (pixel[3] != 0 && pixel[3] != 255) { +; 5859 : if (pixel[3] != 0 && pixel[3] != 255) { 009eb b8 01 00 00 00 mov eax, 1 009f0 48 6b c0 03 imul rax, rax, 3 @@ -50030,7 +50050,7 @@ $LN31@stbi__psd_: 00a20 0f 84 24 01 00 00 je $LN62@stbi__psd_ -; 5847 : float a = pixel[3] / 255.0f; +; 5860 : float a = pixel[3] / 255.0f; 00a26 b8 01 00 00 00 mov eax, 1 00a2b 48 6b c0 03 imul rax, rax, 3 @@ -50043,7 +50063,7 @@ $LN31@stbi__psd_: 00a46 f3 0f 11 85 a4 02 00 00 movss DWORD PTR a$13[rbp], xmm0 -; 5848 : float ra = 1.0f / a; +; 5861 : float ra = 1.0f / a; 00a4e f3 0f 10 05 00 00 00 00 movss xmm0, DWORD PTR __real@3f800000 @@ -50052,7 +50072,7 @@ $LN31@stbi__psd_: 00a5e f3 0f 11 85 c4 02 00 00 movss DWORD PTR ra$14[rbp], xmm0 -; 5849 : float inv_a = 255.0f * (1 - ra); +; 5862 : float inv_a = 255.0f * (1 - ra); 00a66 f3 0f 10 05 00 00 00 00 movss xmm0, DWORD PTR __real@3f800000 @@ -50065,7 +50085,7 @@ $LN31@stbi__psd_: 00a85 f3 0f 11 85 e4 02 00 00 movss DWORD PTR inv_a$15[rbp], xmm0 -; 5850 : pixel[0] = (unsigned char)(pixel[0] * ra + inv_a); +; 5863 : pixel[0] = (unsigned char)(pixel[0] * ra + inv_a); 00a8d b8 01 00 00 00 mov eax, 1 00a92 48 6b c0 00 imul rax, rax, 0 @@ -50084,7 +50104,7 @@ $LN31@stbi__psd_: 00 00 mov rdx, QWORD PTR pixel$12[rbp] 00ac9 88 04 0a mov BYTE PTR [rdx+rcx], al -; 5851 : pixel[1] = (unsigned char)(pixel[1] * ra + inv_a); +; 5864 : pixel[1] = (unsigned char)(pixel[1] * ra + inv_a); 00acc b8 01 00 00 00 mov eax, 1 00ad1 48 6b c0 01 imul rax, rax, 1 @@ -50103,7 +50123,7 @@ $LN31@stbi__psd_: 00 00 mov rdx, QWORD PTR pixel$12[rbp] 00b08 88 04 0a mov BYTE PTR [rdx+rcx], al -; 5852 : pixel[2] = (unsigned char)(pixel[2] * ra + inv_a); +; 5865 : pixel[2] = (unsigned char)(pixel[2] * ra + inv_a); 00b0b b8 01 00 00 00 mov eax, 1 00b10 48 6b c0 02 imul rax, rax, 2 @@ -50123,19 +50143,19 @@ $LN31@stbi__psd_: 00b47 88 04 0a mov BYTE PTR [rdx+rcx], al $LN62@stbi__psd_: -; 5853 : } -; 5854 : } +; 5866 : } +; 5867 : } 00b4a e9 56 fe ff ff jmp $LN29@stbi__psd_ $LN30@stbi__psd_: $LN60@stbi__psd_: $LN58@stbi__psd_: -; 5855 : } -; 5856 : } -; 5857 : -; 5858 : // convert to desired output format -; 5859 : if (req_comp && req_comp != 4) { +; 5868 : } +; 5869 : } +; 5870 : +; 5871 : // convert to desired output format +; 5872 : if (req_comp && req_comp != 4) { 00b4f 83 bd c0 04 00 00 00 cmp DWORD PTR req_comp$[rbp], 0 @@ -50146,14 +50166,14 @@ $LN58@stbi__psd_: 00b63 0f 84 81 00 00 00 je $LN63@stbi__psd_ -; 5860 : if (ri->bits_per_channel == 16) +; 5873 : if (ri->bits_per_channel == 16) 00b69 48 8b 85 c8 04 00 00 mov rax, QWORD PTR ri$[rbp] 00b70 83 38 10 cmp DWORD PTR [rax], 16 00b73 75 32 jne SHORT $LN64@stbi__psd_ -; 5861 : out = (stbi_uc*)stbi__convert_format16((stbi__uint16*)out, 4, req_comp, w, h); +; 5874 : out = (stbi_uc*)stbi__convert_format16((stbi__uint16*)out, 4, req_comp, w, h); 00b75 8b 85 e4 00 00 00 mov eax, DWORD PTR h$[rbp] @@ -50171,8 +50191,8 @@ $LN58@stbi__psd_: 00ba5 eb 30 jmp SHORT $LN65@stbi__psd_ $LN64@stbi__psd_: -; 5862 : else -; 5863 : out = stbi__convert_format(out, 4, req_comp, w, h); +; 5875 : else +; 5876 : out = stbi__convert_format(out, 4, req_comp, w, h); 00ba7 8b 85 e4 00 00 00 mov eax, DWORD PTR h$[rbp] @@ -50189,7 +50209,7 @@ $LN64@stbi__psd_: 00 00 mov QWORD PTR out$[rbp], rax $LN65@stbi__psd_: -; 5864 : if (out == NULL) return out; // stbi__convert_format frees input on failure +; 5877 : if (out == NULL) return out; // stbi__convert_format frees input on failure 00bd7 48 83 bd 08 01 00 00 00 cmp QWORD PTR out$[rbp], 0 @@ -50200,9 +50220,9 @@ $LN65@stbi__psd_: $LN66@stbi__psd_: $LN63@stbi__psd_: -; 5865 : } -; 5866 : -; 5867 : if (comp) *comp = 4; +; 5878 : } +; 5879 : +; 5880 : if (comp) *comp = 4; 00bea 48 83 bd b8 04 00 00 00 cmp QWORD PTR comp$[rbp], 0 @@ -50213,7 +50233,7 @@ $LN63@stbi__psd_: 00 mov DWORD PTR [rax], 4 $LN67@stbi__psd_: -; 5868 : *y = h; +; 5881 : *y = h; 00c01 48 8b 85 b0 04 00 00 mov rax, QWORD PTR y$[rbp] @@ -50221,7 +50241,7 @@ $LN67@stbi__psd_: 00 mov ecx, DWORD PTR h$[rbp] 00c0e 89 08 mov DWORD PTR [rax], ecx -; 5869 : *x = w; +; 5882 : *x = w; 00c10 48 8b 85 a8 04 00 00 mov rax, QWORD PTR x$[rbp] @@ -50229,14 +50249,14 @@ $LN67@stbi__psd_: 00 mov ecx, DWORD PTR w$[rbp] 00c1d 89 08 mov DWORD PTR [rax], ecx -; 5870 : -; 5871 : return out; +; 5883 : +; 5884 : return out; 00c1f 48 8b 85 08 01 00 00 mov rax, QWORD PTR out$[rbp] $LN1@stbi__psd_: -; 5872 : } +; 5885 : } 00c26 48 8d a5 88 04 00 00 lea rsp, QWORD PTR [rbp+1160] @@ -50254,7 +50274,7 @@ tv67 = 212 s$ = 256 stbi__psd_test PROC ; COMDAT -; 5619 : { +; 5632 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -50266,7 +50286,7 @@ stbi__psd_test PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 5620 : int r = (stbi__get32be(s) == 0x38425053); +; 5633 : int r = (stbi__get32be(s) == 0x38425053); 0001f 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -50284,17 +50304,17 @@ $LN4@stbi__psd_: 00 mov eax, DWORD PTR tv67[rbp] 0004e 89 45 04 mov DWORD PTR r$[rbp], eax -; 5621 : stbi__rewind(s); +; 5634 : stbi__rewind(s); 00051 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] 00058 e8 00 00 00 00 call stbi__rewind -; 5622 : return r; +; 5635 : return r; 0005d 8b 45 04 mov eax, DWORD PTR r$[rbp] -; 5623 : } +; 5636 : } 00060 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -50322,7 +50342,7 @@ y$ = 496 comp$ = 504 stbi__tga_info PROC ; COMDAT -; 5284 : { +; 5297 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -50337,15 +50357,15 @@ stbi__tga_info PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 5285 : int tga_w, tga_h, tga_comp, tga_image_type, tga_bits_per_pixel, tga_colormap_bpp; -; 5286 : int sz, tga_colormap_type; -; 5287 : stbi__get8(s); // discard Offset +; 5298 : int tga_w, tga_h, tga_comp, tga_image_type, tga_bits_per_pixel, tga_colormap_bpp; +; 5299 : int sz, tga_colormap_type; +; 5300 : stbi__get8(s); // discard Offset 0002e 48 8b 8d e0 01 00 00 mov rcx, QWORD PTR s$[rbp] 00035 e8 00 00 00 00 call stbi__get8 -; 5288 : tga_colormap_type = stbi__get8(s); // colormap type +; 5301 : tga_colormap_type = stbi__get8(s); // colormap type 0003a 48 8b 8d e0 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -50354,26 +50374,26 @@ stbi__tga_info PROC ; COMDAT 00049 89 85 e4 00 00 00 mov DWORD PTR tga_colormap_type$[rbp], eax -; 5289 : if (tga_colormap_type > 1) { +; 5302 : if (tga_colormap_type > 1) { 0004f 83 bd e4 00 00 00 01 cmp DWORD PTR tga_colormap_type$[rbp], 1 00056 7e 13 jle SHORT $LN2@stbi__tga_ -; 5290 : stbi__rewind(s); +; 5303 : stbi__rewind(s); 00058 48 8b 8d e0 01 00 00 mov rcx, QWORD PTR s$[rbp] 0005f e8 00 00 00 00 call stbi__rewind -; 5291 : return 0; // only RGB or indexed allowed +; 5304 : return 0; // only RGB or indexed allowed 00064 33 c0 xor eax, eax 00066 e9 53 02 00 00 jmp $LN1@stbi__tga_ $LN2@stbi__tga_: -; 5292 : } -; 5293 : tga_image_type = stbi__get8(s); // image type +; 5305 : } +; 5306 : tga_image_type = stbi__get8(s); // image type 0006b 48 8b 8d e0 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -50381,41 +50401,41 @@ $LN2@stbi__tga_: 00077 0f b6 c0 movzx eax, al 0007a 89 45 64 mov DWORD PTR tga_image_type$[rbp], eax -; 5294 : if (tga_colormap_type == 1) { // colormapped (paletted) image +; 5307 : if (tga_colormap_type == 1) { // colormapped (paletted) image 0007d 83 bd e4 00 00 00 01 cmp DWORD PTR tga_colormap_type$[rbp], 1 00084 0f 85 a4 00 00 00 jne $LN3@stbi__tga_ -; 5295 : if (tga_image_type != 1 && tga_image_type != 9) { +; 5308 : if (tga_image_type != 1 && tga_image_type != 9) { 0008a 83 7d 64 01 cmp DWORD PTR tga_image_type$[rbp], 1 0008e 74 19 je SHORT $LN5@stbi__tga_ 00090 83 7d 64 09 cmp DWORD PTR tga_image_type$[rbp], 9 00094 74 13 je SHORT $LN5@stbi__tga_ -; 5296 : stbi__rewind(s); +; 5309 : stbi__rewind(s); 00096 48 8b 8d e0 01 00 00 mov rcx, QWORD PTR s$[rbp] 0009d e8 00 00 00 00 call stbi__rewind -; 5297 : return 0; +; 5310 : return 0; 000a2 33 c0 xor eax, eax 000a4 e9 15 02 00 00 jmp $LN1@stbi__tga_ $LN5@stbi__tga_: -; 5298 : } -; 5299 : stbi__skip(s, 4); // skip index of first colormap entry and number of entries +; 5311 : } +; 5312 : stbi__skip(s, 4); // skip index of first colormap entry and number of entries 000a9 ba 04 00 00 00 mov edx, 4 000ae 48 8b 8d e0 01 00 00 mov rcx, QWORD PTR s$[rbp] 000b5 e8 00 00 00 00 call stbi__skip -; 5300 : sz = stbi__get8(s); // check bits per palette color entry +; 5313 : sz = stbi__get8(s); // check bits per palette color entry 000ba 48 8b 8d e0 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -50424,7 +50444,7 @@ $LN5@stbi__tga_: 000c9 89 85 c4 00 00 00 mov DWORD PTR sz$[rbp], eax -; 5301 : if ((sz != 8) && (sz != 15) && (sz != 16) && (sz != 24) && (sz != 32)) { +; 5314 : if ((sz != 8) && (sz != 15) && (sz != 16) && (sz != 24) && (sz != 32)) { 000cf 83 bd c4 00 00 00 08 cmp DWORD PTR sz$[rbp], 8 @@ -50442,40 +50462,40 @@ $LN5@stbi__tga_: 00 20 cmp DWORD PTR sz$[rbp], 32 ; 00000020H 000fa 74 13 je SHORT $LN6@stbi__tga_ -; 5302 : stbi__rewind(s); +; 5315 : stbi__rewind(s); 000fc 48 8b 8d e0 01 00 00 mov rcx, QWORD PTR s$[rbp] 00103 e8 00 00 00 00 call stbi__rewind -; 5303 : return 0; +; 5316 : return 0; 00108 33 c0 xor eax, eax 0010a e9 af 01 00 00 jmp $LN1@stbi__tga_ $LN6@stbi__tga_: -; 5304 : } -; 5305 : stbi__skip(s, 4); // skip image x and y origin +; 5317 : } +; 5318 : stbi__skip(s, 4); // skip image x and y origin 0010f ba 04 00 00 00 mov edx, 4 00114 48 8b 8d e0 01 00 00 mov rcx, QWORD PTR s$[rbp] 0011b e8 00 00 00 00 call stbi__skip -; 5306 : tga_colormap_bpp = sz; +; 5319 : tga_colormap_bpp = sz; 00120 8b 85 c4 00 00 00 mov eax, DWORD PTR sz$[rbp] 00126 89 85 a4 00 00 00 mov DWORD PTR tga_colormap_bpp$[rbp], eax -; 5307 : } +; 5320 : } 0012c eb 46 jmp SHORT $LN4@stbi__tga_ $LN3@stbi__tga_: -; 5308 : else { // "normal" image w/o colormap - only RGB or grey allowed, +/- RLE -; 5309 : if ((tga_image_type != 2) && (tga_image_type != 3) && (tga_image_type != 10) && (tga_image_type != 11)) { +; 5321 : else { // "normal" image w/o colormap - only RGB or grey allowed, +/- RLE +; 5322 : if ((tga_image_type != 2) && (tga_image_type != 3) && (tga_image_type != 10) && (tga_image_type != 11)) { 0012e 83 7d 64 02 cmp DWORD PTR tga_image_type$[rbp], 2 00132 74 25 je SHORT $LN7@stbi__tga_ @@ -50486,84 +50506,84 @@ $LN3@stbi__tga_: 00140 83 7d 64 0b cmp DWORD PTR tga_image_type$[rbp], 11 00144 74 13 je SHORT $LN7@stbi__tga_ -; 5310 : stbi__rewind(s); +; 5323 : stbi__rewind(s); 00146 48 8b 8d e0 01 00 00 mov rcx, QWORD PTR s$[rbp] 0014d e8 00 00 00 00 call stbi__rewind -; 5311 : return 0; // only RGB or grey allowed, +/- RLE +; 5324 : return 0; // only RGB or grey allowed, +/- RLE 00152 33 c0 xor eax, eax 00154 e9 65 01 00 00 jmp $LN1@stbi__tga_ $LN7@stbi__tga_: -; 5312 : } -; 5313 : stbi__skip(s, 9); // skip colormap specification and image x/y origin +; 5325 : } +; 5326 : stbi__skip(s, 9); // skip colormap specification and image x/y origin 00159 ba 09 00 00 00 mov edx, 9 0015e 48 8b 8d e0 01 00 00 mov rcx, QWORD PTR s$[rbp] 00165 e8 00 00 00 00 call stbi__skip -; 5314 : tga_colormap_bpp = 0; +; 5327 : tga_colormap_bpp = 0; 0016a c7 85 a4 00 00 00 00 00 00 00 mov DWORD PTR tga_colormap_bpp$[rbp], 0 $LN4@stbi__tga_: -; 5315 : } -; 5316 : tga_w = stbi__get16le(s); +; 5328 : } +; 5329 : tga_w = stbi__get16le(s); 00174 48 8b 8d e0 01 00 00 mov rcx, QWORD PTR s$[rbp] 0017b e8 00 00 00 00 call stbi__get16le 00180 89 45 04 mov DWORD PTR tga_w$[rbp], eax -; 5317 : if (tga_w < 1) { +; 5330 : if (tga_w < 1) { 00183 83 7d 04 01 cmp DWORD PTR tga_w$[rbp], 1 00187 7d 13 jge SHORT $LN8@stbi__tga_ -; 5318 : stbi__rewind(s); +; 5331 : stbi__rewind(s); 00189 48 8b 8d e0 01 00 00 mov rcx, QWORD PTR s$[rbp] 00190 e8 00 00 00 00 call stbi__rewind -; 5319 : return 0; // test width +; 5332 : return 0; // test width 00195 33 c0 xor eax, eax 00197 e9 22 01 00 00 jmp $LN1@stbi__tga_ $LN8@stbi__tga_: -; 5320 : } -; 5321 : tga_h = stbi__get16le(s); +; 5333 : } +; 5334 : tga_h = stbi__get16le(s); 0019c 48 8b 8d e0 01 00 00 mov rcx, QWORD PTR s$[rbp] 001a3 e8 00 00 00 00 call stbi__get16le 001a8 89 45 24 mov DWORD PTR tga_h$[rbp], eax -; 5322 : if (tga_h < 1) { +; 5335 : if (tga_h < 1) { 001ab 83 7d 24 01 cmp DWORD PTR tga_h$[rbp], 1 001af 7d 13 jge SHORT $LN9@stbi__tga_ -; 5323 : stbi__rewind(s); +; 5336 : stbi__rewind(s); 001b1 48 8b 8d e0 01 00 00 mov rcx, QWORD PTR s$[rbp] 001b8 e8 00 00 00 00 call stbi__rewind -; 5324 : return 0; // test height +; 5337 : return 0; // test height 001bd 33 c0 xor eax, eax 001bf e9 fa 00 00 00 jmp $LN1@stbi__tga_ $LN9@stbi__tga_: -; 5325 : } -; 5326 : tga_bits_per_pixel = stbi__get8(s); // bits per pixel +; 5338 : } +; 5339 : tga_bits_per_pixel = stbi__get8(s); // bits per pixel 001c4 48 8b 8d e0 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -50572,19 +50592,19 @@ $LN9@stbi__tga_: 001d3 89 85 84 00 00 00 mov DWORD PTR tga_bits_per_pixel$[rbp], eax -; 5327 : stbi__get8(s); // ignore alpha bits +; 5340 : stbi__get8(s); // ignore alpha bits 001d9 48 8b 8d e0 01 00 00 mov rcx, QWORD PTR s$[rbp] 001e0 e8 00 00 00 00 call stbi__get8 -; 5328 : if (tga_colormap_bpp != 0) { +; 5341 : if (tga_colormap_bpp != 0) { 001e5 83 bd a4 00 00 00 00 cmp DWORD PTR tga_colormap_bpp$[rbp], 0 001ec 74 3a je SHORT $LN10@stbi__tga_ -; 5329 : if ((tga_bits_per_pixel != 8) && (tga_bits_per_pixel != 16)) { +; 5342 : if ((tga_bits_per_pixel != 8) && (tga_bits_per_pixel != 16)) { 001ee 83 bd 84 00 00 00 08 cmp DWORD PTR tga_bits_per_pixel$[rbp], 8 @@ -50593,22 +50613,22 @@ $LN9@stbi__tga_: 00 10 cmp DWORD PTR tga_bits_per_pixel$[rbp], 16 001fe 74 13 je SHORT $LN12@stbi__tga_ -; 5330 : // when using a colormap, tga_bits_per_pixel is the size of the indexes -; 5331 : // I don't think anything but 8 or 16bit indexes makes sense -; 5332 : stbi__rewind(s); +; 5343 : // when using a colormap, tga_bits_per_pixel is the size of the indexes +; 5344 : // I don't think anything but 8 or 16bit indexes makes sense +; 5345 : stbi__rewind(s); 00200 48 8b 8d e0 01 00 00 mov rcx, QWORD PTR s$[rbp] 00207 e8 00 00 00 00 call stbi__rewind -; 5333 : return 0; +; 5346 : return 0; 0020c 33 c0 xor eax, eax 0020e e9 ab 00 00 00 jmp $LN1@stbi__tga_ $LN12@stbi__tga_: -; 5334 : } -; 5335 : tga_comp = stbi__tga_get_comp(tga_colormap_bpp, 0, NULL); +; 5347 : } +; 5348 : tga_comp = stbi__tga_get_comp(tga_colormap_bpp, 0, NULL); 00213 45 33 c0 xor r8d, r8d 00216 33 d2 xor edx, edx @@ -50617,13 +50637,13 @@ $LN12@stbi__tga_: 0021e e8 00 00 00 00 call stbi__tga_get_comp 00223 89 45 44 mov DWORD PTR tga_comp$[rbp], eax -; 5336 : } +; 5349 : } 00226 eb 39 jmp SHORT $LN11@stbi__tga_ $LN10@stbi__tga_: -; 5337 : else { -; 5338 : tga_comp = stbi__tga_get_comp(tga_bits_per_pixel, (tga_image_type == 3) || (tga_image_type == 11), NULL); +; 5350 : else { +; 5351 : tga_comp = stbi__tga_get_comp(tga_bits_per_pixel, (tga_image_type == 3) || (tga_image_type == 11), NULL); 00228 83 7d 64 03 cmp DWORD PTR tga_image_type$[rbp], 3 0022c 74 12 je SHORT $LN18@stbi__tga_ @@ -50645,26 +50665,26 @@ $LN19@stbi__tga_: 0025e 89 45 44 mov DWORD PTR tga_comp$[rbp], eax $LN11@stbi__tga_: -; 5339 : } -; 5340 : if (!tga_comp) { +; 5352 : } +; 5353 : if (!tga_comp) { 00261 83 7d 44 00 cmp DWORD PTR tga_comp$[rbp], 0 00265 75 10 jne SHORT $LN13@stbi__tga_ -; 5341 : stbi__rewind(s); +; 5354 : stbi__rewind(s); 00267 48 8b 8d e0 01 00 00 mov rcx, QWORD PTR s$[rbp] 0026e e8 00 00 00 00 call stbi__rewind -; 5342 : return 0; +; 5355 : return 0; 00273 33 c0 xor eax, eax 00275 eb 47 jmp SHORT $LN1@stbi__tga_ $LN13@stbi__tga_: -; 5343 : } -; 5344 : if (x) *x = tga_w; +; 5356 : } +; 5357 : if (x) *x = tga_w; 00277 48 83 bd e8 01 00 00 00 cmp QWORD PTR x$[rbp], 0 @@ -50675,7 +50695,7 @@ $LN13@stbi__tga_: 0028b 89 08 mov DWORD PTR [rax], ecx $LN14@stbi__tga_: -; 5345 : if (y) *y = tga_h; +; 5358 : if (y) *y = tga_h; 0028d 48 83 bd f0 01 00 00 00 cmp QWORD PTR y$[rbp], 0 @@ -50686,7 +50706,7 @@ $LN14@stbi__tga_: 002a1 89 08 mov DWORD PTR [rax], ecx $LN15@stbi__tga_: -; 5346 : if (comp) *comp = tga_comp; +; 5359 : if (comp) *comp = tga_comp; 002a3 48 83 bd f8 01 00 00 00 cmp QWORD PTR comp$[rbp], 0 @@ -50697,12 +50717,12 @@ $LN15@stbi__tga_: 002b7 89 08 mov DWORD PTR [rax], ecx $LN16@stbi__tga_: -; 5347 : return 1; // seems to have passed everything +; 5360 : return 1; // seems to have passed everything 002b9 b8 01 00 00 00 mov eax, 1 $LN1@stbi__tga_: -; 5348 : } +; 5361 : } 002be 48 8d a5 c8 01 00 00 lea rsp, QWORD PTR [rbp+456] @@ -50768,7 +50788,7 @@ req_comp$ = 1712 ri$ = 1720 stbi__tga_load PROC ; COMDAT -; 5403 : { +; 5416 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -50794,8 +50814,8 @@ stbi__tga_load PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 5404 : // read in the TGA header stuff -; 5405 : int tga_offset = stbi__get8(s); +; 5417 : // read in the TGA header stuff +; 5418 : int tga_offset = stbi__get8(s); 00058 48 8b 8d 90 06 00 00 mov rcx, QWORD PTR s$[rbp] @@ -50803,7 +50823,7 @@ stbi__tga_load PROC ; COMDAT 00064 0f b6 c0 movzx eax, al 00067 89 45 04 mov DWORD PTR tga_offset$[rbp], eax -; 5406 : int tga_indexed = stbi__get8(s); +; 5419 : int tga_indexed = stbi__get8(s); 0006a 48 8b 8d 90 06 00 00 mov rcx, QWORD PTR s$[rbp] @@ -50811,7 +50831,7 @@ stbi__tga_load PROC ; COMDAT 00076 0f b6 c0 movzx eax, al 00079 89 45 24 mov DWORD PTR tga_indexed$[rbp], eax -; 5407 : int tga_image_type = stbi__get8(s); +; 5420 : int tga_image_type = stbi__get8(s); 0007c 48 8b 8d 90 06 00 00 mov rcx, QWORD PTR s$[rbp] @@ -50819,12 +50839,12 @@ stbi__tga_load PROC ; COMDAT 00088 0f b6 c0 movzx eax, al 0008b 89 45 44 mov DWORD PTR tga_image_type$[rbp], eax -; 5408 : int tga_is_RLE = 0; +; 5421 : int tga_is_RLE = 0; 0008e c7 45 64 00 00 00 00 mov DWORD PTR tga_is_RLE$[rbp], 0 -; 5409 : int tga_palette_start = stbi__get16le(s); +; 5422 : int tga_palette_start = stbi__get16le(s); 00095 48 8b 8d 90 06 00 00 mov rcx, QWORD PTR s$[rbp] @@ -50832,7 +50852,7 @@ stbi__tga_load PROC ; COMDAT 000a1 89 85 84 00 00 00 mov DWORD PTR tga_palette_start$[rbp], eax -; 5410 : int tga_palette_len = stbi__get16le(s); +; 5423 : int tga_palette_len = stbi__get16le(s); 000a7 48 8b 8d 90 06 00 00 mov rcx, QWORD PTR s$[rbp] @@ -50840,7 +50860,7 @@ stbi__tga_load PROC ; COMDAT 000b3 89 85 a4 00 00 00 mov DWORD PTR tga_palette_len$[rbp], eax -; 5411 : int tga_palette_bits = stbi__get8(s); +; 5424 : int tga_palette_bits = stbi__get8(s); 000b9 48 8b 8d 90 06 00 00 mov rcx, QWORD PTR s$[rbp] @@ -50849,7 +50869,7 @@ stbi__tga_load PROC ; COMDAT 000c8 89 85 c4 00 00 00 mov DWORD PTR tga_palette_bits$[rbp], eax -; 5412 : int tga_x_origin = stbi__get16le(s); +; 5425 : int tga_x_origin = stbi__get16le(s); 000ce 48 8b 8d 90 06 00 00 mov rcx, QWORD PTR s$[rbp] @@ -50857,7 +50877,7 @@ stbi__tga_load PROC ; COMDAT 000da 89 85 e4 00 00 00 mov DWORD PTR tga_x_origin$[rbp], eax -; 5413 : int tga_y_origin = stbi__get16le(s); +; 5426 : int tga_y_origin = stbi__get16le(s); 000e0 48 8b 8d 90 06 00 00 mov rcx, QWORD PTR s$[rbp] @@ -50865,7 +50885,7 @@ stbi__tga_load PROC ; COMDAT 000ec 89 85 04 01 00 00 mov DWORD PTR tga_y_origin$[rbp], eax -; 5414 : int tga_width = stbi__get16le(s); +; 5427 : int tga_width = stbi__get16le(s); 000f2 48 8b 8d 90 06 00 00 mov rcx, QWORD PTR s$[rbp] @@ -50873,7 +50893,7 @@ stbi__tga_load PROC ; COMDAT 000fe 89 85 24 01 00 00 mov DWORD PTR tga_width$[rbp], eax -; 5415 : int tga_height = stbi__get16le(s); +; 5428 : int tga_height = stbi__get16le(s); 00104 48 8b 8d 90 06 00 00 mov rcx, QWORD PTR s$[rbp] @@ -50881,7 +50901,7 @@ stbi__tga_load PROC ; COMDAT 00110 89 85 44 01 00 00 mov DWORD PTR tga_height$[rbp], eax -; 5416 : int tga_bits_per_pixel = stbi__get8(s); +; 5429 : int tga_bits_per_pixel = stbi__get8(s); 00116 48 8b 8d 90 06 00 00 mov rcx, QWORD PTR s$[rbp] @@ -50890,12 +50910,12 @@ stbi__tga_load PROC ; COMDAT 00125 89 85 64 01 00 00 mov DWORD PTR tga_bits_per_pixel$[rbp], eax -; 5417 : int tga_comp, tga_rgb16 = 0; +; 5430 : int tga_comp, tga_rgb16 = 0; 0012b c7 85 a4 01 00 00 00 00 00 00 mov DWORD PTR tga_rgb16$[rbp], 0 -; 5418 : int tga_inverted = stbi__get8(s); +; 5431 : int tga_inverted = stbi__get8(s); 00135 48 8b 8d 90 06 00 00 mov rcx, QWORD PTR s$[rbp] @@ -50904,17 +50924,17 @@ stbi__tga_load PROC ; COMDAT 00144 89 85 c4 01 00 00 mov DWORD PTR tga_inverted$[rbp], eax -; 5419 : // int tga_alpha_bits = tga_inverted & 15; // the 4 lowest bits - unused (useless?) -; 5420 : // image data -; 5421 : unsigned char* tga_data; -; 5422 : unsigned char* tga_palette = NULL; +; 5432 : // int tga_alpha_bits = tga_inverted & 15; // the 4 lowest bits - unused (useless?) +; 5433 : // image data +; 5434 : unsigned char* tga_data; +; 5435 : unsigned char* tga_palette = NULL; 0014a 48 c7 85 08 02 00 00 00 00 00 00 mov QWORD PTR tga_palette$[rbp], 0 -; 5423 : int i, j; -; 5424 : unsigned char raw_data[4] = { 0 }; +; 5436 : int i, j; +; 5437 : unsigned char raw_data[4] = { 0 }; 00155 48 8d 85 64 02 00 00 lea rax, QWORD PTR raw_data$[rbp] @@ -50923,26 +50943,26 @@ stbi__tga_load PROC ; COMDAT 00161 b9 04 00 00 00 mov ecx, 4 00166 f3 aa rep stosb -; 5425 : int RLE_count = 0; +; 5438 : int RLE_count = 0; 00168 c7 85 84 02 00 00 00 00 00 00 mov DWORD PTR RLE_count$[rbp], 0 -; 5426 : int RLE_repeating = 0; +; 5439 : int RLE_repeating = 0; 00172 c7 85 a4 02 00 00 00 00 00 00 mov DWORD PTR RLE_repeating$[rbp], 0 -; 5427 : int read_next_pixel = 1; +; 5440 : int read_next_pixel = 1; 0017c c7 85 c4 02 00 00 01 00 00 00 mov DWORD PTR read_next_pixel$[rbp], 1 -; 5428 : STBI_NOTUSED(ri); -; 5429 : STBI_NOTUSED(tga_x_origin); // @TODO -; 5430 : STBI_NOTUSED(tga_y_origin); // @TODO -; 5431 : -; 5432 : if (tga_height > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large", "Very large image (corrupt?)"); +; 5441 : STBI_NOTUSED(ri); +; 5442 : STBI_NOTUSED(tga_x_origin); // @TODO +; 5443 : STBI_NOTUSED(tga_y_origin); // @TODO +; 5444 : +; 5445 : if (tga_height > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large", "Very large image (corrupt?)"); 00186 81 bd 44 01 00 00 00 00 00 01 cmp DWORD PTR tga_height$[rbp], 16777216 ; 01000000H @@ -50966,7 +50986,7 @@ $LN63@stbi__tga_: 001c1 e9 c4 09 00 00 jmp $LN1@stbi__tga_ $LN29@stbi__tga_: -; 5433 : if (tga_width > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large", "Very large image (corrupt?)"); +; 5446 : if (tga_width > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large", "Very large image (corrupt?)"); 001c6 81 bd 24 01 00 00 00 00 00 01 cmp DWORD PTR tga_width$[rbp], 16777216 ; 01000000H @@ -50990,28 +51010,28 @@ $LN65@stbi__tga_: 00201 e9 84 09 00 00 jmp $LN1@stbi__tga_ $LN30@stbi__tga_: -; 5434 : -; 5435 : // do a tiny bit of precessing -; 5436 : if (tga_image_type >= 8) +; 5447 : +; 5448 : // do a tiny bit of precessing +; 5449 : if (tga_image_type >= 8) 00206 83 7d 44 08 cmp DWORD PTR tga_image_type$[rbp], 8 0020a 7c 10 jl SHORT $LN31@stbi__tga_ -; 5437 : { -; 5438 : tga_image_type -= 8; +; 5450 : { +; 5451 : tga_image_type -= 8; 0020c 8b 45 44 mov eax, DWORD PTR tga_image_type$[rbp] 0020f 83 e8 08 sub eax, 8 00212 89 45 44 mov DWORD PTR tga_image_type$[rbp], eax -; 5439 : tga_is_RLE = 1; +; 5452 : tga_is_RLE = 1; 00215 c7 45 64 01 00 00 00 mov DWORD PTR tga_is_RLE$[rbp], 1 $LN31@stbi__tga_: -; 5440 : } -; 5441 : tga_inverted = 1 - ((tga_inverted >> 5) & 1); +; 5453 : } +; 5454 : tga_inverted = 1 - ((tga_inverted >> 5) & 1); 0021c 8b 85 c4 01 00 00 mov eax, DWORD PTR tga_inverted$[rbp] @@ -51023,9 +51043,9 @@ $LN31@stbi__tga_: 00231 89 85 c4 01 00 00 mov DWORD PTR tga_inverted$[rbp], eax -; 5442 : -; 5443 : // If I'm paletted, then I'll use the number of bits from the palette -; 5444 : if (tga_indexed) tga_comp = stbi__tga_get_comp(tga_palette_bits, 0, &tga_rgb16); +; 5455 : +; 5456 : // If I'm paletted, then I'll use the number of bits from the palette +; 5457 : if (tga_indexed) tga_comp = stbi__tga_get_comp(tga_palette_bits, 0, &tga_rgb16); 00237 83 7d 24 00 cmp DWORD PTR tga_indexed$[rbp], 0 0023b 74 1c je SHORT $LN32@stbi__tga_ @@ -51040,7 +51060,7 @@ $LN31@stbi__tga_: 00257 eb 3a jmp SHORT $LN33@stbi__tga_ $LN32@stbi__tga_: -; 5445 : else tga_comp = stbi__tga_get_comp(tga_bits_per_pixel, (tga_image_type == 3), &tga_rgb16); +; 5458 : else tga_comp = stbi__tga_get_comp(tga_bits_per_pixel, (tga_image_type == 3), &tga_rgb16); 00259 83 7d 44 03 cmp DWORD PTR tga_image_type$[rbp], 3 0025d 75 0c jne SHORT $LN66@stbi__tga_ @@ -51062,14 +51082,14 @@ $LN67@stbi__tga_: 00 mov DWORD PTR tga_comp$[rbp], eax $LN33@stbi__tga_: -; 5446 : -; 5447 : if (!tga_comp) // shouldn't really happen, stbi__tga_test() should have ensured basic consistency +; 5459 : +; 5460 : if (!tga_comp) // shouldn't really happen, stbi__tga_test() should have ensured basic consistency 00293 83 bd 84 01 00 00 00 cmp DWORD PTR tga_comp$[rbp], 0 0029a 75 34 jne SHORT $LN34@stbi__tga_ -; 5448 : return stbi__errpuc("bad format", "Can't find out TGA pixelformat"); +; 5461 : return stbi__errpuc("bad format", "Can't find out TGA pixelformat"); 0029c 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0L@DMAPJJO@bad?5format@ @@ -51090,9 +51110,9 @@ $LN69@stbi__tga_: 002cb e9 ba 08 00 00 jmp $LN1@stbi__tga_ $LN34@stbi__tga_: -; 5449 : -; 5450 : // tga info -; 5451 : *x = tga_width; +; 5462 : +; 5463 : // tga info +; 5464 : *x = tga_width; 002d0 48 8b 85 98 06 00 00 mov rax, QWORD PTR x$[rbp] @@ -51100,7 +51120,7 @@ $LN34@stbi__tga_: 00 mov ecx, DWORD PTR tga_width$[rbp] 002dd 89 08 mov DWORD PTR [rax], ecx -; 5452 : *y = tga_height; +; 5465 : *y = tga_height; 002df 48 8b 85 a0 06 00 00 mov rax, QWORD PTR y$[rbp] @@ -51108,7 +51128,7 @@ $LN34@stbi__tga_: 00 mov ecx, DWORD PTR tga_height$[rbp] 002ec 89 08 mov DWORD PTR [rax], ecx -; 5453 : if (comp) *comp = tga_comp; +; 5466 : if (comp) *comp = tga_comp; 002ee 48 83 bd a8 06 00 00 00 cmp QWORD PTR comp$[rbp], 0 @@ -51120,8 +51140,8 @@ $LN34@stbi__tga_: 00305 89 08 mov DWORD PTR [rax], ecx $LN35@stbi__tga_: -; 5454 : -; 5455 : if (!stbi__mad3sizes_valid(tga_width, tga_height, tga_comp, 0)) +; 5467 : +; 5468 : if (!stbi__mad3sizes_valid(tga_width, tga_height, tga_comp, 0)) 00307 45 33 c9 xor r9d, r9d 0030a 44 8b 85 84 01 @@ -51134,7 +51154,7 @@ $LN35@stbi__tga_: 00322 85 c0 test eax, eax 00324 75 34 jne SHORT $LN36@stbi__tga_ -; 5456 : return stbi__errpuc("too large", "Corrupt TGA"); +; 5469 : return stbi__errpuc("too large", "Corrupt TGA"); 00326 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_09OJDLMMBJ@too?5large@ @@ -51155,8 +51175,8 @@ $LN71@stbi__tga_: 00355 e9 30 08 00 00 jmp $LN1@stbi__tga_ $LN36@stbi__tga_: -; 5457 : -; 5458 : tga_data = (unsigned char*)stbi__malloc_mad3(tga_width, tga_height, tga_comp, 0); +; 5470 : +; 5471 : tga_data = (unsigned char*)stbi__malloc_mad3(tga_width, tga_height, tga_comp, 0); 0035a 45 33 c9 xor r9d, r9d 0035d 44 8b 85 84 01 @@ -51169,7 +51189,7 @@ $LN36@stbi__tga_: 00375 48 89 85 e8 01 00 00 mov QWORD PTR tga_data$[rbp], rax -; 5459 : if (!tga_data) return stbi__errpuc("outofmem", "Out of memory"); +; 5472 : if (!tga_data) return stbi__errpuc("outofmem", "Out of memory"); 0037c 48 83 bd e8 01 00 00 00 cmp QWORD PTR tga_data$[rbp], 0 @@ -51193,17 +51213,17 @@ $LN73@stbi__tga_: 003b5 e9 d0 07 00 00 jmp $LN1@stbi__tga_ $LN37@stbi__tga_: -; 5460 : -; 5461 : // skip to the data's starting position (offset usually = 0) -; 5462 : stbi__skip(s, tga_offset); +; 5473 : +; 5474 : // skip to the data's starting position (offset usually = 0) +; 5475 : stbi__skip(s, tga_offset); 003ba 8b 55 04 mov edx, DWORD PTR tga_offset$[rbp] 003bd 48 8b 8d 90 06 00 00 mov rcx, QWORD PTR s$[rbp] 003c4 e8 00 00 00 00 call stbi__skip -; 5463 : -; 5464 : if (!tga_indexed && !tga_is_RLE && !tga_rgb16) { +; 5476 : +; 5477 : if (!tga_indexed && !tga_is_RLE && !tga_rgb16) { 003c9 83 7d 24 00 cmp DWORD PTR tga_indexed$[rbp], 0 003cd 0f 85 d5 00 00 @@ -51216,7 +51236,7 @@ $LN37@stbi__tga_: 003e4 0f 85 be 00 00 00 jne $LN38@stbi__tga_ -; 5465 : for (i = 0; i < tga_height; ++i) { +; 5478 : for (i = 0; i < tga_height; ++i) { 003ea c7 85 24 02 00 00 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -51235,7 +51255,7 @@ $LN4@stbi__tga_: 00410 0f 8d 8d 00 00 00 jge $LN3@stbi__tga_ -; 5466 : int row = tga_inverted ? tga_height - i - 1 : i; +; 5479 : int row = tga_inverted ? tga_height - i - 1 : i; 00416 83 bd c4 01 00 00 00 cmp DWORD PTR tga_inverted$[rbp], 0 @@ -51261,7 +51281,7 @@ $LN75@stbi__tga_: 0044b 89 85 e4 02 00 00 mov DWORD PTR row$5[rbp], eax -; 5467 : stbi_uc* tga_row = tga_data + row * tga_width * tga_comp; +; 5480 : stbi_uc* tga_row = tga_data + row * tga_width * tga_comp; 00451 8b 85 e4 02 00 00 mov eax, DWORD PTR row$5[rbp] @@ -51277,7 +51297,7 @@ $LN75@stbi__tga_: 00474 48 89 85 08 03 00 00 mov QWORD PTR tga_row$6[rbp], rax -; 5468 : stbi__getn(s, tga_row, tga_width * tga_comp); +; 5481 : stbi__getn(s, tga_row, tga_width * tga_comp); 0047b 8b 85 24 01 00 00 mov eax, DWORD PTR tga_width$[rbp] @@ -51290,39 +51310,39 @@ $LN75@stbi__tga_: 00 00 mov rcx, QWORD PTR s$[rbp] 00499 e8 00 00 00 00 call stbi__getn -; 5469 : } +; 5482 : } 0049e e9 53 ff ff ff jmp $LN2@stbi__tga_ $LN3@stbi__tga_: -; 5470 : } +; 5483 : } 004a3 e9 87 05 00 00 jmp $LN39@stbi__tga_ $LN38@stbi__tga_: -; 5471 : else { -; 5472 : // do I need to load a palette? -; 5473 : if (tga_indexed) +; 5484 : else { +; 5485 : // do I need to load a palette? +; 5486 : if (tga_indexed) 004a8 83 7d 24 00 cmp DWORD PTR tga_indexed$[rbp], 0 004ac 0f 84 d1 01 00 00 je $LN40@stbi__tga_ -; 5474 : { -; 5475 : if (tga_palette_len == 0) { /* you have to have at least one entry! */ +; 5487 : { +; 5488 : if (tga_palette_len == 0) { /* you have to have at least one entry! */ 004b2 83 bd a4 00 00 00 00 cmp DWORD PTR tga_palette_len$[rbp], 0 004b9 75 41 jne SHORT $LN41@stbi__tga_ -; 5476 : STBI_FREE(tga_data); +; 5489 : STBI_FREE(tga_data); 004bb 48 8b 8d e8 01 00 00 mov rcx, QWORD PTR tga_data$[rbp] 004c2 ff 15 00 00 00 00 call QWORD PTR __imp_free -; 5477 : return stbi__errpuc("bad palette", "Corrupt TGA"); +; 5490 : return stbi__errpuc("bad palette", "Corrupt TGA"); 004c8 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0M@ILLOCNCO@bad?5palette@ @@ -51343,10 +51363,10 @@ $LN77@stbi__tga_: 004f7 e9 8e 06 00 00 jmp $LN1@stbi__tga_ $LN41@stbi__tga_: -; 5478 : } -; 5479 : -; 5480 : // any data to skip? (offset usually = 0) -; 5481 : stbi__skip(s, tga_palette_start); +; 5491 : } +; 5492 : +; 5493 : // any data to skip? (offset usually = 0) +; 5494 : stbi__skip(s, tga_palette_start); 004fc 8b 95 84 00 00 00 mov edx, DWORD PTR tga_palette_start$[rbp] @@ -51354,8 +51374,8 @@ $LN41@stbi__tga_: 00 00 mov rcx, QWORD PTR s$[rbp] 00509 e8 00 00 00 00 call stbi__skip -; 5482 : // load the palette -; 5483 : tga_palette = (unsigned char*)stbi__malloc_mad2(tga_palette_len, tga_comp, 0); +; 5495 : // load the palette +; 5496 : tga_palette = (unsigned char*)stbi__malloc_mad2(tga_palette_len, tga_comp, 0); 0050e 45 33 c0 xor r8d, r8d 00511 8b 95 84 01 00 @@ -51366,20 +51386,20 @@ $LN41@stbi__tga_: 00522 48 89 85 08 02 00 00 mov QWORD PTR tga_palette$[rbp], rax -; 5484 : if (!tga_palette) { +; 5497 : if (!tga_palette) { 00529 48 83 bd 08 02 00 00 00 cmp QWORD PTR tga_palette$[rbp], 0 00531 75 41 jne SHORT $LN42@stbi__tga_ -; 5485 : STBI_FREE(tga_data); +; 5498 : STBI_FREE(tga_data); 00533 48 8b 8d e8 01 00 00 mov rcx, QWORD PTR tga_data$[rbp] 0053a ff 15 00 00 00 00 call QWORD PTR __imp_free -; 5486 : return stbi__errpuc("outofmem", "Out of memory"); +; 5499 : return stbi__errpuc("outofmem", "Out of memory"); 00540 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_08NOGIMCHF@outofmem@ @@ -51400,28 +51420,28 @@ $LN79@stbi__tga_: 0056f e9 16 06 00 00 jmp $LN1@stbi__tga_ $LN42@stbi__tga_: -; 5487 : } -; 5488 : if (tga_rgb16) { +; 5500 : } +; 5501 : if (tga_rgb16) { 00574 83 bd a4 01 00 00 00 cmp DWORD PTR tga_rgb16$[rbp], 0 0057b 0f 84 8d 00 00 00 je $LN43@stbi__tga_ -; 5489 : stbi_uc* pal_entry = tga_palette; +; 5502 : stbi_uc* pal_entry = tga_palette; 00581 48 8b 85 08 02 00 00 mov rax, QWORD PTR tga_palette$[rbp] 00588 48 89 85 28 03 00 00 mov QWORD PTR pal_entry$7[rbp], rax -; 5490 : STBI_ASSERT(tga_comp == STBI_rgb); +; 5503 : STBI_ASSERT(tga_comp == STBI_rgb); 0058f 83 bd 84 01 00 00 03 cmp DWORD PTR tga_comp$[rbp], 3 00596 74 1c je SHORT $LN80@stbi__tga_ - 00598 41 b8 72 15 00 - 00 mov r8d, 5490 ; 00001572H + 00598 41 b8 7f 15 00 + 00 mov r8d, 5503 ; 0000157fH 0059e 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_1KA@LPJPGBDN@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@ 005a5 48 8d 0d 00 00 @@ -51431,7 +51451,7 @@ $LN42@stbi__tga_: 005b2 33 c0 xor eax, eax $LN80@stbi__tga_: -; 5491 : for (i = 0; i < tga_palette_len; ++i) { +; 5504 : for (i = 0; i < tga_palette_len; ++i) { 005b4 c7 85 24 02 00 00 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -51449,7 +51469,7 @@ $LN7@stbi__tga_: 00 cmp DWORD PTR i$[rbp], eax 005da 7d 30 jge SHORT $LN6@stbi__tga_ -; 5492 : stbi__tga_read_rgb16(s, pal_entry); +; 5505 : stbi__tga_read_rgb16(s, pal_entry); 005dc 48 8b 95 28 03 00 00 mov rdx, QWORD PTR pal_entry$7[rbp] @@ -51457,7 +51477,7 @@ $LN7@stbi__tga_: 00 00 mov rcx, QWORD PTR s$[rbp] 005ea e8 00 00 00 00 call stbi__tga_read_rgb16 -; 5493 : pal_entry += tga_comp; +; 5506 : pal_entry += tga_comp; 005ef 48 63 85 84 01 00 00 movsxd rax, DWORD PTR tga_comp$[rbp] @@ -51468,17 +51488,17 @@ $LN7@stbi__tga_: 00603 48 89 85 28 03 00 00 mov QWORD PTR pal_entry$7[rbp], rax -; 5494 : } +; 5507 : } 0060a eb b4 jmp SHORT $LN5@stbi__tga_ $LN6@stbi__tga_: -; 5495 : } +; 5508 : } 0060c eb 75 jmp SHORT $LN44@stbi__tga_ $LN43@stbi__tga_: -; 5496 : else if (!stbi__getn(s, tga_palette, tga_palette_len * tga_comp)) { +; 5509 : else if (!stbi__getn(s, tga_palette, tga_palette_len * tga_comp)) { 0060e 8b 85 a4 00 00 00 mov eax, DWORD PTR tga_palette_len$[rbp] @@ -51493,21 +51513,21 @@ $LN43@stbi__tga_: 00631 85 c0 test eax, eax 00633 75 4e jne SHORT $LN45@stbi__tga_ -; 5497 : STBI_FREE(tga_data); +; 5510 : STBI_FREE(tga_data); 00635 48 8b 8d e8 01 00 00 mov rcx, QWORD PTR tga_data$[rbp] 0063c ff 15 00 00 00 00 call QWORD PTR __imp_free -; 5498 : STBI_FREE(tga_palette); +; 5511 : STBI_FREE(tga_palette); 00642 48 8b 8d 08 02 00 00 mov rcx, QWORD PTR tga_palette$[rbp] 00649 ff 15 00 00 00 00 call QWORD PTR __imp_free -; 5499 : return stbi__errpuc("bad palette", "Corrupt TGA"); +; 5512 : return stbi__errpuc("bad palette", "Corrupt TGA"); 0064f 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0M@ILLOCNCO@bad?5palette@ @@ -51530,10 +51550,10 @@ $LN45@stbi__tga_: $LN44@stbi__tga_: $LN40@stbi__tga_: -; 5500 : } -; 5501 : } -; 5502 : // load the data -; 5503 : for (i = 0; i < tga_width * tga_height; ++i) +; 5513 : } +; 5514 : } +; 5515 : // load the data +; 5516 : for (i = 0; i < tga_width * tga_height; ++i) 00683 c7 85 24 02 00 00 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -51554,23 +51574,23 @@ $LN10@stbi__tga_: 006b0 0f 8d 46 02 00 00 jge $LN9@stbi__tga_ -; 5504 : { -; 5505 : // if I'm in RLE mode, do I need to get a RLE stbi__pngchunk? -; 5506 : if (tga_is_RLE) +; 5517 : { +; 5518 : // if I'm in RLE mode, do I need to get a RLE stbi__pngchunk? +; 5519 : if (tga_is_RLE) 006b6 83 7d 64 00 cmp DWORD PTR tga_is_RLE$[rbp], 0 006ba 74 5f je SHORT $LN46@stbi__tga_ -; 5507 : { -; 5508 : if (RLE_count == 0) +; 5520 : { +; 5521 : if (RLE_count == 0) 006bc 83 bd 84 02 00 00 00 cmp DWORD PTR RLE_count$[rbp], 0 006c3 75 41 jne SHORT $LN48@stbi__tga_ -; 5509 : { -; 5510 : // yep, get the next byte as a RLE command -; 5511 : int RLE_cmd = stbi__get8(s); +; 5522 : { +; 5523 : // yep, get the next byte as a RLE command +; 5524 : int RLE_cmd = stbi__get8(s); 006c5 48 8b 8d 90 06 00 00 mov rcx, QWORD PTR s$[rbp] @@ -51579,7 +51599,7 @@ $LN10@stbi__tga_: 006d4 89 85 44 03 00 00 mov DWORD PTR RLE_cmd$8[rbp], eax -; 5512 : RLE_count = 1 + (RLE_cmd & 127); +; 5525 : RLE_count = 1 + (RLE_cmd & 127); 006da 8b 85 44 03 00 00 mov eax, DWORD PTR RLE_cmd$8[rbp] @@ -51588,7 +51608,7 @@ $LN10@stbi__tga_: 006e5 89 85 84 02 00 00 mov DWORD PTR RLE_count$[rbp], eax -; 5513 : RLE_repeating = RLE_cmd >> 7; +; 5526 : RLE_repeating = RLE_cmd >> 7; 006eb 8b 85 44 03 00 00 mov eax, DWORD PTR RLE_cmd$8[rbp] @@ -51596,64 +51616,64 @@ $LN10@stbi__tga_: 006f4 89 85 a4 02 00 00 mov DWORD PTR RLE_repeating$[rbp], eax -; 5514 : read_next_pixel = 1; +; 5527 : read_next_pixel = 1; 006fa c7 85 c4 02 00 00 01 00 00 00 mov DWORD PTR read_next_pixel$[rbp], 1 -; 5515 : } +; 5528 : } 00704 eb 13 jmp SHORT $LN49@stbi__tga_ $LN48@stbi__tga_: -; 5516 : else if (!RLE_repeating) +; 5529 : else if (!RLE_repeating) 00706 83 bd a4 02 00 00 00 cmp DWORD PTR RLE_repeating$[rbp], 0 0070d 75 0a jne SHORT $LN50@stbi__tga_ -; 5517 : { -; 5518 : read_next_pixel = 1; +; 5530 : { +; 5531 : read_next_pixel = 1; 0070f c7 85 c4 02 00 00 01 00 00 00 mov DWORD PTR read_next_pixel$[rbp], 1 $LN50@stbi__tga_: $LN49@stbi__tga_: -; 5519 : } -; 5520 : } +; 5532 : } +; 5533 : } 00719 eb 0a jmp SHORT $LN47@stbi__tga_ $LN46@stbi__tga_: -; 5521 : else -; 5522 : { -; 5523 : read_next_pixel = 1; +; 5534 : else +; 5535 : { +; 5536 : read_next_pixel = 1; 0071b c7 85 c4 02 00 00 01 00 00 00 mov DWORD PTR read_next_pixel$[rbp], 1 $LN47@stbi__tga_: -; 5524 : } -; 5525 : // OK, if I need to read a pixel, do it now -; 5526 : if (read_next_pixel) +; 5537 : } +; 5538 : // OK, if I need to read a pixel, do it now +; 5539 : if (read_next_pixel) 00725 83 bd c4 02 00 00 00 cmp DWORD PTR read_next_pixel$[rbp], 0 0072c 0f 84 5e 01 00 00 je $LN51@stbi__tga_ -; 5527 : { -; 5528 : // load however much data we did have -; 5529 : if (tga_indexed) +; 5540 : { +; 5541 : // load however much data we did have +; 5542 : if (tga_indexed) 00732 83 7d 24 00 cmp DWORD PTR tga_indexed$[rbp], 0 00736 0f 84 c3 00 00 00 je $LN52@stbi__tga_ -; 5530 : { -; 5531 : // read in index, then perform the lookup -; 5532 : int pal_idx = (tga_bits_per_pixel == 8) ? stbi__get8(s) : stbi__get16le(s); +; 5543 : { +; 5544 : // read in index, then perform the lookup +; 5545 : int pal_idx = (tga_bits_per_pixel == 8) ? stbi__get8(s) : stbi__get16le(s); 0073c 83 bd 64 01 00 00 08 cmp DWORD PTR tga_bits_per_pixel$[rbp], 8 @@ -51677,7 +51697,7 @@ $LN84@stbi__tga_: 00774 89 85 64 03 00 00 mov DWORD PTR pal_idx$9[rbp], eax -; 5533 : if (pal_idx >= tga_palette_len) { +; 5546 : if (pal_idx >= tga_palette_len) { 0077a 8b 85 a4 00 00 00 mov eax, DWORD PTR tga_palette_len$[rbp] @@ -51685,15 +51705,15 @@ $LN84@stbi__tga_: 00 cmp DWORD PTR pal_idx$9[rbp], eax 00786 7c 0a jl SHORT $LN54@stbi__tga_ -; 5534 : // invalid index -; 5535 : pal_idx = 0; +; 5547 : // invalid index +; 5548 : pal_idx = 0; 00788 c7 85 64 03 00 00 00 00 00 00 mov DWORD PTR pal_idx$9[rbp], 0 $LN54@stbi__tga_: -; 5536 : } -; 5537 : pal_idx *= tga_comp; +; 5549 : } +; 5550 : pal_idx *= tga_comp; 00792 8b 85 64 03 00 00 mov eax, DWORD PTR pal_idx$9[rbp] @@ -51702,7 +51722,7 @@ $LN54@stbi__tga_: 0079f 89 85 64 03 00 00 mov DWORD PTR pal_idx$9[rbp], eax -; 5538 : for (j = 0; j < tga_comp; ++j) { +; 5551 : for (j = 0; j < tga_comp; ++j) { 007a5 c7 85 44 02 00 00 00 00 00 00 mov DWORD PTR j$[rbp], 0 @@ -51720,7 +51740,7 @@ $LN13@stbi__tga_: 00 cmp DWORD PTR j$[rbp], eax 007cb 7d 2d jge SHORT $LN12@stbi__tga_ -; 5539 : raw_data[j] = tga_palette[pal_idx + j]; +; 5552 : raw_data[j] = tga_palette[pal_idx + j]; 007cd 8b 85 44 02 00 00 mov eax, DWORD PTR j$[rbp] @@ -51737,29 +51757,29 @@ $LN13@stbi__tga_: 007f1 88 84 0d 64 02 00 00 mov BYTE PTR raw_data$[rbp+rcx], al -; 5540 : } +; 5553 : } 007f8 eb b7 jmp SHORT $LN11@stbi__tga_ $LN12@stbi__tga_: -; 5541 : } +; 5554 : } 007fa e9 87 00 00 00 jmp $LN53@stbi__tga_ $LN52@stbi__tga_: -; 5542 : else if (tga_rgb16) { +; 5555 : else if (tga_rgb16) { 007ff 83 bd a4 01 00 00 00 cmp DWORD PTR tga_rgb16$[rbp], 0 00806 74 3a je SHORT $LN55@stbi__tga_ -; 5543 : STBI_ASSERT(tga_comp == STBI_rgb); +; 5556 : STBI_ASSERT(tga_comp == STBI_rgb); 00808 83 bd 84 01 00 00 03 cmp DWORD PTR tga_comp$[rbp], 3 0080f 74 1c je SHORT $LN85@stbi__tga_ - 00811 41 b8 a7 15 00 - 00 mov r8d, 5543 ; 000015a7H + 00811 41 b8 b4 15 00 + 00 mov r8d, 5556 ; 000015b4H 00817 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_1KA@LPJPGBDN@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@ 0081e 48 8d 0d 00 00 @@ -51769,7 +51789,7 @@ $LN52@stbi__tga_: 0082b 33 c0 xor eax, eax $LN85@stbi__tga_: -; 5544 : stbi__tga_read_rgb16(s, raw_data); +; 5557 : stbi__tga_read_rgb16(s, raw_data); 0082d 48 8d 95 64 02 00 00 lea rdx, QWORD PTR raw_data$[rbp] @@ -51777,14 +51797,14 @@ $LN85@stbi__tga_: 00 00 mov rcx, QWORD PTR s$[rbp] 0083b e8 00 00 00 00 call stbi__tga_read_rgb16 -; 5545 : } +; 5558 : } 00840 eb 44 jmp SHORT $LN56@stbi__tga_ $LN55@stbi__tga_: -; 5546 : else { -; 5547 : // read in the data raw -; 5548 : for (j = 0; j < tga_comp; ++j) { +; 5559 : else { +; 5560 : // read in the data raw +; 5561 : for (j = 0; j < tga_comp; ++j) { 00842 c7 85 44 02 00 00 00 00 00 00 mov DWORD PTR j$[rbp], 0 @@ -51802,7 +51822,7 @@ $LN16@stbi__tga_: 00 cmp DWORD PTR j$[rbp], eax 00868 7d 1c jge SHORT $LN15@stbi__tga_ -; 5549 : raw_data[j] = stbi__get8(s); +; 5562 : raw_data[j] = stbi__get8(s); 0086a 48 8b 8d 90 06 00 00 mov rcx, QWORD PTR s$[rbp] @@ -51812,25 +51832,25 @@ $LN16@stbi__tga_: 0087d 88 84 0d 64 02 00 00 mov BYTE PTR raw_data$[rbp+rcx], al -; 5550 : } +; 5563 : } 00884 eb c8 jmp SHORT $LN14@stbi__tga_ $LN15@stbi__tga_: $LN56@stbi__tga_: $LN53@stbi__tga_: -; 5551 : } -; 5552 : // clear the reading flag for the next pixel -; 5553 : read_next_pixel = 0; +; 5564 : } +; 5565 : // clear the reading flag for the next pixel +; 5566 : read_next_pixel = 0; 00886 c7 85 c4 02 00 00 00 00 00 00 mov DWORD PTR read_next_pixel$[rbp], 0 $LN51@stbi__tga_: -; 5554 : } // end of reading a pixel -; 5555 : -; 5556 : // copy data -; 5557 : for (j = 0; j < tga_comp; ++j) +; 5567 : } // end of reading a pixel +; 5568 : +; 5569 : // copy data +; 5570 : for (j = 0; j < tga_comp; ++j) 00890 c7 85 44 02 00 00 00 00 00 00 mov DWORD PTR j$[rbp], 0 @@ -51848,7 +51868,7 @@ $LN19@stbi__tga_: 00 cmp DWORD PTR j$[rbp], eax 008b6 7d 31 jge SHORT $LN18@stbi__tga_ -; 5558 : tga_data[i * tga_comp + j] = raw_data[j]; +; 5571 : tga_data[i * tga_comp + j] = raw_data[j]; 008b8 48 63 85 44 02 00 00 movsxd rax, DWORD PTR j$[rbp] @@ -51867,9 +51887,9 @@ $LN19@stbi__tga_: 008e7 eb b3 jmp SHORT $LN17@stbi__tga_ $LN18@stbi__tga_: -; 5559 : -; 5560 : // in case we're in RLE mode, keep counting down -; 5561 : --RLE_count; +; 5572 : +; 5573 : // in case we're in RLE mode, keep counting down +; 5574 : --RLE_count; 008e9 8b 85 84 02 00 00 mov eax, DWORD PTR RLE_count$[rbp] @@ -51877,21 +51897,21 @@ $LN18@stbi__tga_: 008f1 89 85 84 02 00 00 mov DWORD PTR RLE_count$[rbp], eax -; 5562 : } +; 5575 : } 008f7 e9 93 fd ff ff jmp $LN8@stbi__tga_ $LN9@stbi__tga_: -; 5563 : // do I need to invert the image? -; 5564 : if (tga_inverted) +; 5576 : // do I need to invert the image? +; 5577 : if (tga_inverted) 008fc 83 bd c4 01 00 00 00 cmp DWORD PTR tga_inverted$[rbp], 0 00903 0f 84 0f 01 00 00 je $LN57@stbi__tga_ -; 5565 : { -; 5566 : for (j = 0; j * 2 < tga_height; ++j) +; 5578 : { +; 5579 : for (j = 0; j * 2 < tga_height; ++j) 00909 c7 85 44 02 00 00 00 00 00 00 mov DWORD PTR j$[rbp], 0 @@ -51911,8 +51931,8 @@ $LN22@stbi__tga_: 00931 0f 8d e1 00 00 00 jge $LN21@stbi__tga_ -; 5567 : { -; 5568 : int index1 = j * tga_width * tga_comp; +; 5580 : { +; 5581 : int index1 = j * tga_width * tga_comp; 00937 8b 85 44 02 00 00 mov eax, DWORD PTR j$[rbp] @@ -51923,7 +51943,7 @@ $LN22@stbi__tga_: 0094b 89 85 84 03 00 00 mov DWORD PTR index1$10[rbp], eax -; 5569 : int index2 = (tga_height - 1 - j) * tga_width * tga_comp; +; 5582 : int index2 = (tga_height - 1 - j) * tga_width * tga_comp; 00951 8b 85 44 01 00 00 mov eax, DWORD PTR tga_height$[rbp] @@ -51937,7 +51957,7 @@ $LN22@stbi__tga_: 0096d 89 85 a4 03 00 00 mov DWORD PTR index2$11[rbp], eax -; 5570 : for (i = tga_width * tga_comp; i > 0; --i) +; 5583 : for (i = tga_width * tga_comp; i > 0; --i) 00973 8b 85 24 01 00 00 mov eax, DWORD PTR tga_width$[rbp] @@ -51957,8 +51977,8 @@ $LN25@stbi__tga_: 00 00 cmp DWORD PTR i$[rbp], 0 0099d 7e 74 jle SHORT $LN24@stbi__tga_ -; 5571 : { -; 5572 : unsigned char temp = tga_data[index1]; +; 5584 : { +; 5585 : unsigned char temp = tga_data[index1]; 0099f 48 63 85 84 03 00 00 movsxd rax, DWORD PTR index1$10[rbp] @@ -51968,7 +51988,7 @@ $LN25@stbi__tga_: 009b1 88 85 c4 03 00 00 mov BYTE PTR temp$12[rbp], al -; 5573 : tga_data[index1] = tga_data[index2]; +; 5586 : tga_data[index1] = tga_data[index2]; 009b7 48 63 85 a4 03 00 00 movsxd rax, DWORD PTR index2$11[rbp] @@ -51981,7 +52001,7 @@ $LN25@stbi__tga_: 009d3 0f b6 04 07 movzx eax, BYTE PTR [rdi+rax] 009d7 88 04 0a mov BYTE PTR [rdx+rcx], al -; 5574 : tga_data[index2] = temp; +; 5587 : tga_data[index2] = temp; 009da 48 63 85 a4 03 00 00 movsxd rax, DWORD PTR index2$11[rbp] @@ -51991,7 +52011,7 @@ $LN25@stbi__tga_: 00 00 movzx edx, BYTE PTR temp$12[rbp] 009ef 88 14 01 mov BYTE PTR [rcx+rax], dl -; 5575 : ++index1; +; 5588 : ++index1; 009f2 8b 85 84 03 00 00 mov eax, DWORD PTR index1$10[rbp] @@ -51999,7 +52019,7 @@ $LN25@stbi__tga_: 009fa 89 85 84 03 00 00 mov DWORD PTR index1$10[rbp], eax -; 5576 : ++index2; +; 5589 : ++index2; 00a00 8b 85 a4 03 00 00 mov eax, DWORD PTR index2$11[rbp] @@ -52007,27 +52027,27 @@ $LN25@stbi__tga_: 00a08 89 85 a4 03 00 00 mov DWORD PTR index2$11[rbp], eax -; 5577 : } +; 5590 : } 00a0e e9 75 ff ff ff jmp $LN23@stbi__tga_ $LN24@stbi__tga_: -; 5578 : } +; 5591 : } 00a13 e9 fd fe ff ff jmp $LN20@stbi__tga_ $LN21@stbi__tga_: $LN57@stbi__tga_: -; 5579 : } -; 5580 : // clear my palette, if I had one -; 5581 : if (tga_palette != NULL) +; 5592 : } +; 5593 : // clear my palette, if I had one +; 5594 : if (tga_palette != NULL) 00a18 48 83 bd 08 02 00 00 00 cmp QWORD PTR tga_palette$[rbp], 0 00a20 74 0d je SHORT $LN58@stbi__tga_ -; 5582 : { -; 5583 : STBI_FREE(tga_palette); +; 5595 : { +; 5596 : STBI_FREE(tga_palette); 00a22 48 8b 8d 08 02 00 00 mov rcx, QWORD PTR tga_palette$[rbp] @@ -52036,11 +52056,11 @@ $LN57@stbi__tga_: $LN58@stbi__tga_: $LN39@stbi__tga_: -; 5584 : } -; 5585 : } -; 5586 : -; 5587 : // swap RGB - if the source data was RGB16, it already is in the right order -; 5588 : if (tga_comp >= 3 && !tga_rgb16) +; 5597 : } +; 5598 : } +; 5599 : +; 5600 : // swap RGB - if the source data was RGB16, it already is in the right order +; 5601 : if (tga_comp >= 3 && !tga_rgb16) 00a2f 83 bd 84 01 00 00 03 cmp DWORD PTR tga_comp$[rbp], 3 @@ -52051,15 +52071,15 @@ $LN39@stbi__tga_: 00a43 0f 85 b8 00 00 00 jne $LN59@stbi__tga_ -; 5589 : { -; 5590 : unsigned char* tga_pixel = tga_data; +; 5602 : { +; 5603 : unsigned char* tga_pixel = tga_data; 00a49 48 8b 85 e8 01 00 00 mov rax, QWORD PTR tga_data$[rbp] 00a50 48 89 85 e8 03 00 00 mov QWORD PTR tga_pixel$13[rbp], rax -; 5591 : for (i = 0; i < tga_width * tga_height; ++i) +; 5604 : for (i = 0; i < tga_width * tga_height; ++i) 00a57 c7 85 24 02 00 00 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -52079,8 +52099,8 @@ $LN28@stbi__tga_: 00 cmp DWORD PTR i$[rbp], eax 00a84 7d 7b jge SHORT $LN27@stbi__tga_ -; 5592 : { -; 5593 : unsigned char temp = tga_pixel[0]; +; 5605 : { +; 5606 : unsigned char temp = tga_pixel[0]; 00a86 b8 01 00 00 00 mov eax, 1 00a8b 48 6b c0 00 imul rax, rax, 0 @@ -52090,7 +52110,7 @@ $LN28@stbi__tga_: 00a9a 88 85 04 04 00 00 mov BYTE PTR temp$14[rbp], al -; 5594 : tga_pixel[0] = tga_pixel[2]; +; 5607 : tga_pixel[0] = tga_pixel[2]; 00aa0 b8 01 00 00 00 mov eax, 1 00aa5 48 6b c0 02 imul rax, rax, 2 @@ -52103,7 +52123,7 @@ $LN28@stbi__tga_: 00ac0 0f b6 04 07 movzx eax, BYTE PTR [rdi+rax] 00ac4 88 04 0a mov BYTE PTR [rdx+rcx], al -; 5595 : tga_pixel[2] = temp; +; 5608 : tga_pixel[2] = temp; 00ac7 b8 01 00 00 00 mov eax, 1 00acc 48 6b c0 02 imul rax, rax, 2 @@ -52113,7 +52133,7 @@ $LN28@stbi__tga_: 00 00 movzx edx, BYTE PTR temp$14[rbp] 00ade 88 14 01 mov BYTE PTR [rcx+rax], dl -; 5596 : tga_pixel += tga_comp; +; 5609 : tga_pixel += tga_comp; 00ae1 48 63 85 84 01 00 00 movsxd rax, DWORD PTR tga_comp$[rbp] @@ -52124,16 +52144,16 @@ $LN28@stbi__tga_: 00af5 48 89 85 e8 03 00 00 mov QWORD PTR tga_pixel$13[rbp], rax -; 5597 : } +; 5610 : } 00afc e9 62 ff ff ff jmp $LN26@stbi__tga_ $LN27@stbi__tga_: $LN59@stbi__tga_: -; 5598 : } -; 5599 : -; 5600 : // convert to target component count -; 5601 : if (req_comp && req_comp != tga_comp) +; 5611 : } +; 5612 : +; 5613 : // convert to target component count +; 5614 : if (req_comp && req_comp != tga_comp) 00b01 83 bd b0 06 00 00 00 cmp DWORD PTR req_comp$[rbp], 0 @@ -52144,7 +52164,7 @@ $LN59@stbi__tga_: 00 cmp DWORD PTR req_comp$[rbp], eax 00b16 74 31 je SHORT $LN60@stbi__tga_ -; 5602 : tga_data = stbi__convert_format(tga_data, tga_comp, req_comp, tga_width, tga_height); +; 5615 : tga_data = stbi__convert_format(tga_data, tga_comp, req_comp, tga_width, tga_height); 00b18 8b 85 44 01 00 00 mov eax, DWORD PTR tga_height$[rbp] @@ -52162,10 +52182,10 @@ $LN59@stbi__tga_: 00 00 mov QWORD PTR tga_data$[rbp], rax $LN60@stbi__tga_: -; 5603 : -; 5604 : // the things I do to get rid of an error message, and yet keep -; 5605 : // Microsoft's C compilers happy... [8^( -; 5606 : tga_palette_start = tga_palette_len = tga_palette_bits = +; 5616 : +; 5617 : // the things I do to get rid of an error message, and yet keep +; 5618 : // Microsoft's C compilers happy... [8^( +; 5619 : tga_palette_start = tga_palette_len = tga_palette_bits = 00b49 c7 85 04 01 00 00 00 00 00 00 mov DWORD PTR tga_y_origin$[rbp], 0 @@ -52186,16 +52206,16 @@ $LN60@stbi__tga_: 00b7d 89 85 84 00 00 00 mov DWORD PTR tga_palette_start$[rbp], eax -; 5607 : tga_x_origin = tga_y_origin = 0; -; 5608 : STBI_NOTUSED(tga_palette_start); -; 5609 : // OK, done -; 5610 : return tga_data; +; 5620 : tga_x_origin = tga_y_origin = 0; +; 5621 : STBI_NOTUSED(tga_palette_start); +; 5622 : // OK, done +; 5623 : return tga_data; 00b83 48 8b 85 e8 01 00 00 mov rax, QWORD PTR tga_data$[rbp] $LN1@stbi__tga_: -; 5611 : } +; 5624 : } 00b8a 48 8b f8 mov rdi, rax 00b8d 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48] @@ -52224,7 +52244,7 @@ tga_color_type$ = 68 s$ = 320 stbi__tga_test PROC ; COMDAT -; 5351 : { +; 5364 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -52236,19 +52256,19 @@ stbi__tga_test PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 5352 : int res = 0; +; 5365 : int res = 0; 0001f c7 45 04 00 00 00 00 mov DWORD PTR res$[rbp], 0 -; 5353 : int sz, tga_color_type; -; 5354 : stbi__get8(s); // discard Offset +; 5366 : int sz, tga_color_type; +; 5367 : stbi__get8(s); // discard Offset 00026 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] 0002d e8 00 00 00 00 call stbi__get8 -; 5355 : tga_color_type = stbi__get8(s); // color type +; 5368 : tga_color_type = stbi__get8(s); // color type 00032 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -52256,14 +52276,14 @@ stbi__tga_test PROC ; COMDAT 0003e 0f b6 c0 movzx eax, al 00041 89 45 44 mov DWORD PTR tga_color_type$[rbp], eax -; 5356 : if (tga_color_type > 1) goto errorEnd; // only RGB or indexed allowed +; 5369 : if (tga_color_type > 1) goto errorEnd; // only RGB or indexed allowed 00044 83 7d 44 01 cmp DWORD PTR tga_color_type$[rbp], 1 00048 7e 05 jle SHORT $LN2@stbi__tga_ 0004a e9 23 01 00 00 jmp $errorEnd$13 $LN2@stbi__tga_: -; 5357 : sz = stbi__get8(s); // image type +; 5370 : sz = stbi__get8(s); // image type 0004f 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -52271,12 +52291,12 @@ $LN2@stbi__tga_: 0005b 0f b6 c0 movzx eax, al 0005e 89 45 24 mov DWORD PTR sz$[rbp], eax -; 5358 : if (tga_color_type == 1) { // colormapped (paletted) image +; 5371 : if (tga_color_type == 1) { // colormapped (paletted) image 00061 83 7d 44 01 cmp DWORD PTR tga_color_type$[rbp], 1 00065 75 6a jne SHORT $LN3@stbi__tga_ -; 5359 : if (sz != 1 && sz != 9) goto errorEnd; // colortype 1 demands image type 1 or 9 +; 5372 : if (sz != 1 && sz != 9) goto errorEnd; // colortype 1 demands image type 1 or 9 00067 83 7d 24 01 cmp DWORD PTR sz$[rbp], 1 0006b 74 0b je SHORT $LN5@stbi__tga_ @@ -52285,14 +52305,14 @@ $LN2@stbi__tga_: 00073 e9 fa 00 00 00 jmp $errorEnd$13 $LN5@stbi__tga_: -; 5360 : stbi__skip(s, 4); // skip index of first colormap entry and number of entries +; 5373 : stbi__skip(s, 4); // skip index of first colormap entry and number of entries 00078 ba 04 00 00 00 mov edx, 4 0007d 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] 00084 e8 00 00 00 00 call stbi__skip -; 5361 : sz = stbi__get8(s); // check bits per palette color entry +; 5374 : sz = stbi__get8(s); // check bits per palette color entry 00089 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -52300,7 +52320,7 @@ $LN5@stbi__tga_: 00095 0f b6 c0 movzx eax, al 00098 89 45 24 mov DWORD PTR sz$[rbp], eax -; 5362 : if ((sz != 8) && (sz != 15) && (sz != 16) && (sz != 24) && (sz != 32)) goto errorEnd; +; 5375 : if ((sz != 8) && (sz != 15) && (sz != 16) && (sz != 24) && (sz != 32)) goto errorEnd; 0009b 83 7d 24 08 cmp DWORD PTR sz$[rbp], 8 0009f 74 1d je SHORT $LN6@stbi__tga_ @@ -52315,20 +52335,20 @@ $LN5@stbi__tga_: 000b9 e9 b4 00 00 00 jmp $errorEnd$13 $LN6@stbi__tga_: -; 5363 : stbi__skip(s, 4); // skip image x and y origin +; 5376 : stbi__skip(s, 4); // skip image x and y origin 000be ba 04 00 00 00 mov edx, 4 000c3 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] 000ca e8 00 00 00 00 call stbi__skip -; 5364 : } +; 5377 : } 000cf eb 2e jmp SHORT $LN4@stbi__tga_ $LN3@stbi__tga_: -; 5365 : else { // "normal" image w/o colormap -; 5366 : if ((sz != 2) && (sz != 3) && (sz != 10) && (sz != 11)) goto errorEnd; // only RGB or grey allowed, +/- RLE +; 5378 : else { // "normal" image w/o colormap +; 5379 : if ((sz != 2) && (sz != 3) && (sz != 10) && (sz != 11)) goto errorEnd; // only RGB or grey allowed, +/- RLE 000d1 83 7d 24 02 cmp DWORD PTR sz$[rbp], 2 000d5 74 17 je SHORT $LN7@stbi__tga_ @@ -52341,7 +52361,7 @@ $LN3@stbi__tga_: 000e9 e9 84 00 00 00 jmp $errorEnd$13 $LN7@stbi__tga_: -; 5367 : stbi__skip(s, 9); // skip colormap specification and image x/y origin +; 5380 : stbi__skip(s, 9); // skip colormap specification and image x/y origin 000ee ba 09 00 00 00 mov edx, 9 000f3 48 8b 8d 40 01 @@ -52349,8 +52369,8 @@ $LN7@stbi__tga_: 000fa e8 00 00 00 00 call stbi__skip $LN4@stbi__tga_: -; 5368 : } -; 5369 : if (stbi__get16le(s) < 1) goto errorEnd; // test width +; 5381 : } +; 5382 : if (stbi__get16le(s) < 1) goto errorEnd; // test width 000ff 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -52360,7 +52380,7 @@ $LN4@stbi__tga_: 00110 eb 60 jmp SHORT $errorEnd$13 $LN8@stbi__tga_: -; 5370 : if (stbi__get16le(s) < 1) goto errorEnd; // test height +; 5383 : if (stbi__get16le(s) < 1) goto errorEnd; // test height 00112 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -52370,7 +52390,7 @@ $LN8@stbi__tga_: 00123 eb 4d jmp SHORT $errorEnd$13 $LN9@stbi__tga_: -; 5371 : sz = stbi__get8(s); // bits per pixel +; 5384 : sz = stbi__get8(s); // bits per pixel 00125 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] @@ -52378,7 +52398,7 @@ $LN9@stbi__tga_: 00131 0f b6 c0 movzx eax, al 00134 89 45 24 mov DWORD PTR sz$[rbp], eax -; 5372 : if ((tga_color_type == 1) && (sz != 8) && (sz != 16)) goto errorEnd; // for colormapped images, bpp is size of an index +; 5385 : if ((tga_color_type == 1) && (sz != 8) && (sz != 16)) goto errorEnd; // for colormapped images, bpp is size of an index 00137 83 7d 44 01 cmp DWORD PTR tga_color_type$[rbp], 1 0013b 75 0e jne SHORT $LN10@stbi__tga_ @@ -52389,7 +52409,7 @@ $LN9@stbi__tga_: 00149 eb 27 jmp SHORT $errorEnd$13 $LN10@stbi__tga_: -; 5373 : if ((sz != 8) && (sz != 15) && (sz != 16) && (sz != 24) && (sz != 32)) goto errorEnd; +; 5386 : if ((sz != 8) && (sz != 15) && (sz != 16) && (sz != 24) && (sz != 32)) goto errorEnd; 0014b 83 7d 24 08 cmp DWORD PTR sz$[rbp], 8 0014f 74 1a je SHORT $LN11@stbi__tga_ @@ -52404,26 +52424,26 @@ $LN10@stbi__tga_: 00169 eb 07 jmp SHORT $errorEnd$13 $LN11@stbi__tga_: -; 5374 : -; 5375 : res = 1; // if we got this far, everything's good and we can return 1 instead of 0 +; 5387 : +; 5388 : res = 1; // if we got this far, everything's good and we can return 1 instead of 0 0016b c7 45 04 01 00 00 00 mov DWORD PTR res$[rbp], 1 $errorEnd$13: -; 5376 : -; 5377 : errorEnd: -; 5378 : stbi__rewind(s); +; 5389 : +; 5390 : errorEnd: +; 5391 : stbi__rewind(s); 00172 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] 00179 e8 00 00 00 00 call stbi__rewind -; 5379 : return res; +; 5392 : return res; 0017e 8b 45 04 mov eax, DWORD PTR res$[rbp] -; 5380 : } +; 5393 : } 00181 48 8d a5 28 01 00 00 lea rsp, QWORD PTR [rbp+296] @@ -52446,7 +52466,7 @@ y$ = 336 comp$ = 344 stbi__bmp_info PROC ; COMDAT -; 6903 : { +; 6916 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -52472,15 +52492,15 @@ stbi__bmp_info PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 6904 : void* p; -; 6905 : stbi__bmp_data info; -; 6906 : -; 6907 : info.all_a = 255; +; 6917 : void* p; +; 6918 : stbi__bmp_data info; +; 6919 : +; 6920 : info.all_a = 255; 00058 c7 45 44 ff 00 00 00 mov DWORD PTR info$[rbp+28], 255 ; 000000ffH -; 6908 : p = stbi__bmp_parse_header(s, &info); +; 6921 : p = stbi__bmp_parse_header(s, &info); 0005f 48 8d 55 28 lea rdx, QWORD PTR info$[rbp] 00063 48 8b 8d 40 01 @@ -52488,25 +52508,25 @@ stbi__bmp_info PROC ; COMDAT 0006a e8 00 00 00 00 call stbi__bmp_parse_header 0006f 48 89 45 08 mov QWORD PTR p$[rbp], rax -; 6909 : if (p == NULL) { +; 6922 : if (p == NULL) { 00073 48 83 7d 08 00 cmp QWORD PTR p$[rbp], 0 00078 75 13 jne SHORT $LN2@stbi__bmp_ -; 6910 : stbi__rewind(s); +; 6923 : stbi__rewind(s); 0007a 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR s$[rbp] 00081 e8 00 00 00 00 call stbi__rewind -; 6911 : return 0; +; 6924 : return 0; 00086 33 c0 xor eax, eax 00088 e9 91 00 00 00 jmp $LN1@stbi__bmp_ $LN2@stbi__bmp_: -; 6912 : } -; 6913 : if (x) *x = s->img_x; +; 6925 : } +; 6926 : if (x) *x = s->img_x; 0008d 48 83 bd 48 01 00 00 00 cmp QWORD PTR x$[rbp], 0 @@ -52519,7 +52539,7 @@ $LN2@stbi__bmp_: 000a7 89 08 mov DWORD PTR [rax], ecx $LN3@stbi__bmp_: -; 6914 : if (y) *y = s->img_y; +; 6927 : if (y) *y = s->img_y; 000a9 48 83 bd 50 01 00 00 00 cmp QWORD PTR y$[rbp], 0 @@ -52532,13 +52552,13 @@ $LN3@stbi__bmp_: 000c4 89 08 mov DWORD PTR [rax], ecx $LN4@stbi__bmp_: -; 6915 : if (comp) { +; 6928 : if (comp) { 000c6 48 83 bd 58 01 00 00 00 cmp QWORD PTR comp$[rbp], 0 000ce 74 49 je SHORT $LN5@stbi__bmp_ -; 6916 : if (info.bpp == 24 && info.ma == 0xff000000) +; 6929 : if (info.bpp == 24 && info.ma == 0xff000000) 000d0 83 7d 28 18 cmp DWORD PTR info$[rbp], 24 000d4 75 18 jne SHORT $LN6@stbi__bmp_ @@ -52546,7 +52566,7 @@ $LN4@stbi__bmp_: 00 ff cmp DWORD PTR info$[rbp+24], -16777216 ; ff000000H 000dd 75 0f jne SHORT $LN6@stbi__bmp_ -; 6917 : *comp = 3; +; 6930 : *comp = 3; 000df 48 8b 85 58 01 00 00 mov rax, QWORD PTR comp$[rbp] @@ -52555,8 +52575,8 @@ $LN4@stbi__bmp_: 000ec eb 2b jmp SHORT $LN7@stbi__bmp_ $LN6@stbi__bmp_: -; 6918 : else -; 6919 : *comp = info.ma ? 4 : 3; +; 6931 : else +; 6932 : *comp = info.ma ? 4 : 3; 000ee 83 7d 40 00 cmp DWORD PTR info$[rbp+24], 0 000f2 74 0c je SHORT $LN9@stbi__bmp_ @@ -52575,13 +52595,13 @@ $LN10@stbi__bmp_: $LN7@stbi__bmp_: $LN5@stbi__bmp_: -; 6920 : } -; 6921 : return 1; +; 6933 : } +; 6934 : return 1; 00119 b8 01 00 00 00 mov eax, 1 $LN1@stbi__bmp_: -; 6922 : } +; 6935 : } 0011e 48 8b f8 mov rdi, rax 00121 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] @@ -52671,7 +52691,7 @@ req_comp$ = 3408 ri$ = 3416 stbi__bmp_load PROC ; COMDAT -; 5054 : { +; 5067 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -52697,8 +52717,8 @@ stbi__bmp_load PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 5055 : stbi_uc* out; -; 5056 : unsigned int mr = 0, mg = 0, mb = 0, ma = 0, all_a; +; 5068 : stbi_uc* out; +; 5069 : unsigned int mr = 0, mg = 0, mb = 0, ma = 0, all_a; 00058 c7 45 24 00 00 00 00 mov DWORD PTR mr$[rbp], 0 @@ -52709,22 +52729,22 @@ stbi__bmp_load PROC ; COMDAT 0006d c7 85 84 00 00 00 00 00 00 00 mov DWORD PTR ma$[rbp], 0 -; 5057 : stbi_uc pal[256][4]; -; 5058 : int psize = 0, i, j, width; +; 5070 : stbi_uc pal[256][4]; +; 5071 : int psize = 0, i, j, width; 00077 c7 85 e4 04 00 00 00 00 00 00 mov DWORD PTR psize$[rbp], 0 -; 5059 : int flip_vertically, pad, target; -; 5060 : stbi__bmp_data info; -; 5061 : STBI_NOTUSED(ri); -; 5062 : -; 5063 : info.all_a = 255; +; 5072 : int flip_vertically, pad, target; +; 5073 : stbi__bmp_data info; +; 5074 : STBI_NOTUSED(ri); +; 5075 : +; 5076 : info.all_a = 255; 00081 c7 85 e4 05 00 00 ff 00 00 00 mov DWORD PTR info$[rbp+28], 255 ; 000000ffH -; 5064 : if (stbi__bmp_parse_header(s, &info) == NULL) +; 5077 : if (stbi__bmp_parse_header(s, &info) == NULL) 0008b 48 8d 95 c8 05 00 00 lea rdx, QWORD PTR info$[rbp] @@ -52734,14 +52754,14 @@ stbi__bmp_load PROC ; COMDAT 0009e 48 85 c0 test rax, rax 000a1 75 07 jne SHORT $LN35@stbi__bmp_ -; 5065 : return NULL; // error code already set +; 5078 : return NULL; // error code already set 000a3 33 c0 xor eax, eax 000a5 e9 5c 12 00 00 jmp $LN1@stbi__bmp_ $LN35@stbi__bmp_: -; 5066 : -; 5067 : flip_vertically = ((int)s->img_y) > 0; +; 5079 : +; 5080 : flip_vertically = ((int)s->img_y) > 0; 000aa 48 8b 85 30 0d 00 00 mov rax, QWORD PTR s$[rbp] @@ -52759,7 +52779,7 @@ $LN98@stbi__bmp_: 000d3 89 85 64 05 00 00 mov DWORD PTR flip_vertically$[rbp], eax -; 5068 : s->img_y = abs((int)s->img_y); +; 5081 : s->img_y = abs((int)s->img_y); 000d9 48 8b 85 30 0d 00 00 mov rax, QWORD PTR s$[rbp] @@ -52769,8 +52789,8 @@ $LN98@stbi__bmp_: 00 00 mov rcx, QWORD PTR s$[rbp] 000ef 89 41 04 mov DWORD PTR [rcx+4], eax -; 5069 : -; 5070 : if (s->img_y > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large", "Very large image (corrupt?)"); +; 5082 : +; 5083 : if (s->img_y > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large", "Very large image (corrupt?)"); 000f2 48 8b 85 30 0d 00 00 mov rax, QWORD PTR s$[rbp] @@ -52796,7 +52816,7 @@ $LN100@stbi__bmp_: 00131 e9 d0 11 00 00 jmp $LN1@stbi__bmp_ $LN36@stbi__bmp_: -; 5071 : if (s->img_x > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large", "Very large image (corrupt?)"); +; 5084 : if (s->img_x > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large", "Very large image (corrupt?)"); 00136 48 8b 85 30 0d 00 00 mov rax, QWORD PTR s$[rbp] @@ -52822,53 +52842,53 @@ $LN102@stbi__bmp_: 00174 e9 8d 11 00 00 jmp $LN1@stbi__bmp_ $LN37@stbi__bmp_: -; 5072 : -; 5073 : mr = info.mr; +; 5085 : +; 5086 : mr = info.mr; 00179 8b 85 d4 05 00 00 mov eax, DWORD PTR info$[rbp+12] 0017f 89 45 24 mov DWORD PTR mr$[rbp], eax -; 5074 : mg = info.mg; +; 5087 : mg = info.mg; 00182 8b 85 d8 05 00 00 mov eax, DWORD PTR info$[rbp+16] 00188 89 45 44 mov DWORD PTR mg$[rbp], eax -; 5075 : mb = info.mb; +; 5088 : mb = info.mb; 0018b 8b 85 dc 05 00 00 mov eax, DWORD PTR info$[rbp+20] 00191 89 45 64 mov DWORD PTR mb$[rbp], eax -; 5076 : ma = info.ma; +; 5089 : ma = info.ma; 00194 8b 85 e0 05 00 00 mov eax, DWORD PTR info$[rbp+24] 0019a 89 85 84 00 00 00 mov DWORD PTR ma$[rbp], eax -; 5077 : all_a = info.all_a; +; 5090 : all_a = info.all_a; 001a0 8b 85 e4 05 00 00 mov eax, DWORD PTR info$[rbp+28] 001a6 89 85 a4 00 00 00 mov DWORD PTR all_a$[rbp], eax -; 5078 : -; 5079 : if (info.hsz == 12) { +; 5091 : +; 5092 : if (info.hsz == 12) { 001ac 83 bd d0 05 00 00 0c cmp DWORD PTR info$[rbp+8], 12 001b3 75 2c jne SHORT $LN38@stbi__bmp_ -; 5080 : if (info.bpp < 24) +; 5093 : if (info.bpp < 24) 001b5 83 bd c8 05 00 00 18 cmp DWORD PTR info$[rbp], 24 001bc 7d 21 jge SHORT $LN40@stbi__bmp_ -; 5081 : psize = (info.offset - info.extra_read - 24) / 3; +; 5094 : psize = (info.offset - info.extra_read - 24) / 3; 001be 8b 85 e8 05 00 00 mov eax, DWORD PTR info$[rbp+32] @@ -52884,19 +52904,19 @@ $LN37@stbi__bmp_: 00 mov DWORD PTR psize$[rbp], eax $LN40@stbi__bmp_: -; 5082 : } +; 5095 : } 001df eb 28 jmp SHORT $LN39@stbi__bmp_ $LN38@stbi__bmp_: -; 5083 : else { -; 5084 : if (info.bpp < 16) +; 5096 : else { +; 5097 : if (info.bpp < 16) 001e1 83 bd c8 05 00 00 10 cmp DWORD PTR info$[rbp], 16 001e8 7d 1f jge SHORT $LN41@stbi__bmp_ -; 5085 : psize = (info.offset - info.extra_read - info.hsz) >> 2; +; 5098 : psize = (info.offset - info.extra_read - info.hsz) >> 2; 001ea 8b 85 e8 05 00 00 mov eax, DWORD PTR info$[rbp+32] @@ -52912,17 +52932,17 @@ $LN38@stbi__bmp_: $LN41@stbi__bmp_: $LN39@stbi__bmp_: -; 5086 : } -; 5087 : if (psize == 0) { +; 5099 : } +; 5100 : if (psize == 0) { 00209 83 bd e4 04 00 00 00 cmp DWORD PTR psize$[rbp], 0 00210 0f 85 0b 01 00 00 jne $LN42@stbi__bmp_ -; 5088 : // accept some number of extra bytes after the header, but if the offset points either to before -; 5089 : // the header ends or implies a large amount of extra data, reject the file as malformed -; 5090 : int bytes_read_so_far = s->callback_already_read + (int)(s->img_buffer - s->img_buffer_original); +; 5101 : // accept some number of extra bytes after the header, but if the offset points either to before +; 5102 : // the header ends or implies a large amount of extra data, reject the file as malformed +; 5103 : int bytes_read_so_far = s->callback_already_read + (int)(s->img_buffer - s->img_buffer_original); 00216 48 8b 85 30 0d 00 00 mov rax, QWORD PTR s$[rbp] @@ -52940,17 +52960,17 @@ $LN39@stbi__bmp_: 00242 89 85 04 06 00 00 mov DWORD PTR bytes_read_so_far$5[rbp], eax -; 5091 : int header_limit = 1024; // max we actually read is below 256 bytes currently. +; 5104 : int header_limit = 1024; // max we actually read is below 256 bytes currently. 00248 c7 85 24 06 00 00 00 04 00 00 mov DWORD PTR header_limit$6[rbp], 1024 ; 00000400H -; 5092 : int extra_data_limit = 256 * 4; // what ordinarily goes here is a palette; 256 entries*4 bytes is its max size. +; 5105 : int extra_data_limit = 256 * 4; // what ordinarily goes here is a palette; 256 entries*4 bytes is its max size. 00252 c7 85 44 06 00 00 00 04 00 00 mov DWORD PTR extra_data_limit$7[rbp], 1024 ; 00000400H -; 5093 : if (bytes_read_so_far <= 0 || bytes_read_so_far > header_limit) { +; 5106 : if (bytes_read_so_far <= 0 || bytes_read_so_far > header_limit) { 0025c 83 bd 04 06 00 00 00 cmp DWORD PTR bytes_read_so_far$5[rbp], 0 @@ -52962,7 +52982,7 @@ $LN39@stbi__bmp_: 00271 7e 34 jle SHORT $LN43@stbi__bmp_ $LN44@stbi__bmp_: -; 5094 : return stbi__errpuc("bad header", "Corrupt BMP"); +; 5107 : return stbi__errpuc("bad header", "Corrupt BMP"); 00273 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0L@PJHPAMCH@bad?5header@ @@ -52983,12 +53003,12 @@ $LN104@stbi__bmp_: 002a2 e9 5f 10 00 00 jmp $LN1@stbi__bmp_ $LN43@stbi__bmp_: -; 5095 : } -; 5096 : // we established that bytes_read_so_far is positive and sensible. -; 5097 : // the first half of this test rejects offsets that are either too small positives, or -; 5098 : // negative, and guarantees that info.offset >= bytes_read_so_far > 0. this in turn -; 5099 : // ensures the number computed in the second half of the test can't overflow. -; 5100 : if (info.offset < bytes_read_so_far || info.offset - bytes_read_so_far > extra_data_limit) { +; 5108 : } +; 5109 : // we established that bytes_read_so_far is positive and sensible. +; 5110 : // the first half of this test rejects offsets that are either too small positives, or +; 5111 : // negative, and guarantees that info.offset >= bytes_read_so_far > 0. this in turn +; 5112 : // ensures the number computed in the second half of the test can't overflow. +; 5113 : if (info.offset < bytes_read_so_far || info.offset - bytes_read_so_far > extra_data_limit) { 002a7 8b 85 04 06 00 00 mov eax, DWORD PTR bytes_read_so_far$5[rbp] @@ -53006,7 +53026,7 @@ $LN43@stbi__bmp_: 002cb 7e 36 jle SHORT $LN45@stbi__bmp_ $LN47@stbi__bmp_: -; 5101 : return stbi__errpuc("bad offset", "Corrupt BMP"); +; 5114 : return stbi__errpuc("bad offset", "Corrupt BMP"); 002cd 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0L@JDPIFELH@bad?5offset@ @@ -53026,13 +53046,13 @@ $LN106@stbi__bmp_: 00 00 mov rax, QWORD PTR tv179[rbp] 002fc e9 05 10 00 00 jmp $LN1@stbi__bmp_ -; 5102 : } +; 5115 : } 00301 eb 1e jmp SHORT $LN46@stbi__bmp_ $LN45@stbi__bmp_: -; 5103 : else { -; 5104 : stbi__skip(s, info.offset - bytes_read_so_far); +; 5116 : else { +; 5117 : stbi__skip(s, info.offset - bytes_read_so_far); 00303 8b 85 04 06 00 00 mov eax, DWORD PTR bytes_read_so_far$5[rbp] @@ -53047,10 +53067,10 @@ $LN45@stbi__bmp_: $LN46@stbi__bmp_: $LN42@stbi__bmp_: -; 5105 : } -; 5106 : } -; 5107 : -; 5108 : if (info.bpp == 24 && ma == 0xff000000) +; 5118 : } +; 5119 : } +; 5120 : +; 5121 : if (info.bpp == 24 && ma == 0xff000000) 00321 83 bd c8 05 00 00 18 cmp DWORD PTR info$[rbp], 24 @@ -53059,7 +53079,7 @@ $LN42@stbi__bmp_: 00 00 00 00 ff cmp DWORD PTR ma$[rbp], -16777216 ; ff000000H 00334 75 10 jne SHORT $LN48@stbi__bmp_ -; 5109 : s->img_n = 3; +; 5122 : s->img_n = 3; 00336 48 8b 85 30 0d 00 00 mov rax, QWORD PTR s$[rbp] @@ -53068,8 +53088,8 @@ $LN42@stbi__bmp_: 00344 eb 2f jmp SHORT $LN49@stbi__bmp_ $LN48@stbi__bmp_: -; 5110 : else -; 5111 : s->img_n = ma ? 4 : 3; +; 5123 : else +; 5124 : s->img_n = ma ? 4 : 3; 00346 83 bd 84 00 00 00 00 cmp DWORD PTR ma$[rbp], 0 @@ -53088,7 +53108,7 @@ $LN108@stbi__bmp_: 00372 89 48 08 mov DWORD PTR [rax+8], ecx $LN49@stbi__bmp_: -; 5112 : if (req_comp && req_comp >= 3) // we can directly decode 3 or 4 +; 5125 : if (req_comp && req_comp >= 3) // we can directly decode 3 or 4 00375 83 bd 50 0d 00 00 00 cmp DWORD PTR req_comp$[rbp], 0 @@ -53097,7 +53117,7 @@ $LN49@stbi__bmp_: 00 03 cmp DWORD PTR req_comp$[rbp], 3 00385 7c 0e jl SHORT $LN50@stbi__bmp_ -; 5113 : target = req_comp; +; 5126 : target = req_comp; 00387 8b 85 50 0d 00 00 mov eax, DWORD PTR req_comp$[rbp] @@ -53106,8 +53126,8 @@ $LN49@stbi__bmp_: 00393 eb 10 jmp SHORT $LN51@stbi__bmp_ $LN50@stbi__bmp_: -; 5114 : else -; 5115 : target = s->img_n; // if they want monochrome, we'll post-convert +; 5127 : else +; 5128 : target = s->img_n; // if they want monochrome, we'll post-convert 00395 48 8b 85 30 0d 00 00 mov rax, QWORD PTR s$[rbp] @@ -53116,9 +53136,9 @@ $LN50@stbi__bmp_: 00 mov DWORD PTR target$[rbp], eax $LN51@stbi__bmp_: -; 5116 : -; 5117 : // sanity-check size -; 5118 : if (!stbi__mad3sizes_valid(target, s->img_x, s->img_y, 0)) +; 5129 : +; 5130 : // sanity-check size +; 5131 : if (!stbi__mad3sizes_valid(target, s->img_x, s->img_y, 0)) 003a5 45 33 c9 xor r9d, r9d 003a8 48 8b 85 30 0d @@ -53133,7 +53153,7 @@ $LN51@stbi__bmp_: 003c7 85 c0 test eax, eax 003c9 75 34 jne SHORT $LN52@stbi__bmp_ -; 5119 : return stbi__errpuc("too large", "Corrupt BMP"); +; 5132 : return stbi__errpuc("too large", "Corrupt BMP"); 003cb 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_09OJDLMMBJ@too?5large@ @@ -53154,8 +53174,8 @@ $LN110@stbi__bmp_: 003fa e9 07 0f 00 00 jmp $LN1@stbi__bmp_ $LN52@stbi__bmp_: -; 5120 : -; 5121 : out = (stbi_uc*)stbi__malloc_mad3(target, s->img_x, s->img_y, 0); +; 5133 : +; 5134 : out = (stbi_uc*)stbi__malloc_mad3(target, s->img_x, s->img_y, 0); 003ff 45 33 c9 xor r9d, r9d 00402 48 8b 85 30 0d @@ -53169,7 +53189,7 @@ $LN52@stbi__bmp_: 0041c e8 00 00 00 00 call stbi__malloc_mad3 00421 48 89 45 08 mov QWORD PTR out$[rbp], rax -; 5122 : if (!out) return stbi__errpuc("outofmem", "Out of memory"); +; 5135 : if (!out) return stbi__errpuc("outofmem", "Out of memory"); 00425 48 83 7d 08 00 cmp QWORD PTR out$[rbp], 0 0042a 75 34 jne SHORT $LN53@stbi__bmp_ @@ -53192,19 +53212,19 @@ $LN112@stbi__bmp_: 0045b e9 a6 0e 00 00 jmp $LN1@stbi__bmp_ $LN53@stbi__bmp_: -; 5123 : if (info.bpp < 16) { +; 5136 : if (info.bpp < 16) { 00460 83 bd c8 05 00 00 10 cmp DWORD PTR info$[rbp], 16 00467 0f 8d c8 06 00 00 jge $LN54@stbi__bmp_ -; 5124 : int z = 0; +; 5137 : int z = 0; 0046d c7 85 64 06 00 00 00 00 00 00 mov DWORD PTR z$8[rbp], 0 -; 5125 : if (psize == 0 || psize > 256) { STBI_FREE(out); return stbi__errpuc("invalid", "Corrupt BMP"); } +; 5138 : if (psize == 0 || psize > 256) { STBI_FREE(out); return stbi__errpuc("invalid", "Corrupt BMP"); } 00477 83 bd e4 04 00 00 00 cmp DWORD PTR psize$[rbp], 0 @@ -53235,7 +53255,7 @@ $LN114@stbi__bmp_: 004c5 e9 3c 0e 00 00 jmp $LN1@stbi__bmp_ $LN56@stbi__bmp_: -; 5126 : for (i = 0; i < psize; ++i) { +; 5139 : for (i = 0; i < psize; ++i) { 004ca c7 85 04 05 00 00 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -53254,7 +53274,7 @@ $LN4@stbi__bmp_: 004f0 0f 8d ab 00 00 00 jge $LN3@stbi__bmp_ -; 5127 : pal[i][2] = stbi__get8(s); +; 5140 : pal[i][2] = stbi__get8(s); 004f6 48 8b 8d 30 0d 00 00 mov rcx, QWORD PTR s$[rbp] @@ -53267,7 +53287,7 @@ $LN4@stbi__bmp_: 00516 48 6b d2 02 imul rdx, rdx, 2 0051a 88 04 11 mov BYTE PTR [rcx+rdx], al -; 5128 : pal[i][1] = stbi__get8(s); +; 5141 : pal[i][1] = stbi__get8(s); 0051d 48 8b 8d 30 0d 00 00 mov rcx, QWORD PTR s$[rbp] @@ -53280,7 +53300,7 @@ $LN4@stbi__bmp_: 0053d 48 6b d2 01 imul rdx, rdx, 1 00541 88 04 11 mov BYTE PTR [rcx+rdx], al -; 5129 : pal[i][0] = stbi__get8(s); +; 5142 : pal[i][0] = stbi__get8(s); 00544 48 8b 8d 30 0d 00 00 mov rcx, QWORD PTR s$[rbp] @@ -53293,7 +53313,7 @@ $LN4@stbi__bmp_: 00564 48 6b d2 00 imul rdx, rdx, 0 00568 88 04 11 mov BYTE PTR [rcx+rdx], al -; 5130 : if (info.hsz != 12) stbi__get8(s); +; 5143 : if (info.hsz != 12) stbi__get8(s); 0056b 83 bd d0 05 00 00 0c cmp DWORD PTR info$[rbp+8], 12 @@ -53303,7 +53323,7 @@ $LN4@stbi__bmp_: 0057b e8 00 00 00 00 call stbi__get8 $LN58@stbi__bmp_: -; 5131 : pal[i][3] = 255; +; 5144 : pal[i][3] = 255; 00580 48 63 85 04 05 00 00 movsxd rax, DWORD PTR i$[rbp] @@ -53313,12 +53333,12 @@ $LN58@stbi__bmp_: 00594 48 6b c9 03 imul rcx, rcx, 3 00598 c6 04 08 ff mov BYTE PTR [rax+rcx], 255 ; 000000ffH -; 5132 : } +; 5145 : } 0059c e9 35 ff ff ff jmp $LN2@stbi__bmp_ $LN3@stbi__bmp_: -; 5133 : stbi__skip(s, info.offset - info.extra_read - info.hsz - psize * (info.hsz == 12 ? 3 : 4)); +; 5146 : stbi__skip(s, info.offset - info.extra_read - info.hsz - psize * (info.hsz == 12 ? 3 : 4)); 005a1 83 bd d0 05 00 00 0c cmp DWORD PTR info$[rbp+8], 12 @@ -53348,7 +53368,7 @@ $LN116@stbi__bmp_: 00 00 mov rcx, QWORD PTR s$[rbp] 005ee e8 00 00 00 00 call stbi__skip -; 5134 : if (info.bpp == 1) width = (s->img_x + 7) >> 3; +; 5147 : if (info.bpp == 1) width = (s->img_x + 7) >> 3; 005f3 83 bd c8 05 00 00 01 cmp DWORD PTR info$[rbp], 1 @@ -53363,7 +53383,7 @@ $LN116@stbi__bmp_: 00611 eb 76 jmp SHORT $LN60@stbi__bmp_ $LN59@stbi__bmp_: -; 5135 : else if (info.bpp == 4) width = (s->img_x + 1) >> 1; +; 5148 : else if (info.bpp == 4) width = (s->img_x + 1) >> 1; 00613 83 bd c8 05 00 00 04 cmp DWORD PTR info$[rbp], 4 @@ -53378,7 +53398,7 @@ $LN59@stbi__bmp_: 0062f eb 58 jmp SHORT $LN62@stbi__bmp_ $LN61@stbi__bmp_: -; 5136 : else if (info.bpp == 8) width = s->img_x; +; 5149 : else if (info.bpp == 8) width = s->img_x; 00631 83 bd c8 05 00 00 08 cmp DWORD PTR info$[rbp], 8 @@ -53391,7 +53411,7 @@ $LN61@stbi__bmp_: 00649 eb 3e jmp SHORT $LN64@stbi__bmp_ $LN63@stbi__bmp_: -; 5137 : else { STBI_FREE(out); return stbi__errpuc("bad bpp", "Corrupt BMP"); } +; 5150 : else { STBI_FREE(out); return stbi__errpuc("bad bpp", "Corrupt BMP"); } 0064b 48 8b 4d 08 mov rcx, QWORD PTR out$[rbp] 0064f ff 15 00 00 00 @@ -53417,7 +53437,7 @@ $LN64@stbi__bmp_: $LN62@stbi__bmp_: $LN60@stbi__bmp_: -; 5138 : pad = (-width) & 3; +; 5151 : pad = (-width) & 3; 00689 8b 85 44 05 00 00 mov eax, DWORD PTR width$[rbp] @@ -53426,14 +53446,14 @@ $LN60@stbi__bmp_: 00694 89 85 84 05 00 00 mov DWORD PTR pad$[rbp], eax -; 5139 : if (info.bpp == 1) { +; 5152 : if (info.bpp == 1) { 0069a 83 bd c8 05 00 00 01 cmp DWORD PTR info$[rbp], 1 006a1 0f 85 d5 01 00 00 jne $LN65@stbi__bmp_ -; 5140 : for (j = 0; j < (int)s->img_y; ++j) { +; 5153 : for (j = 0; j < (int)s->img_y; ++j) { 006a7 c7 85 24 05 00 00 00 00 00 00 mov DWORD PTR j$[rbp], 0 @@ -53453,7 +53473,7 @@ $LN7@stbi__bmp_: 006d1 0f 8d a0 01 00 00 jge $LN6@stbi__bmp_ -; 5141 : int bit_offset = 7, v = stbi__get8(s); +; 5154 : int bit_offset = 7, v = stbi__get8(s); 006d7 c7 85 84 06 00 00 07 00 00 00 mov DWORD PTR bit_offset$9[rbp], 7 @@ -53464,7 +53484,7 @@ $LN7@stbi__bmp_: 006f0 89 85 a4 06 00 00 mov DWORD PTR v$10[rbp], eax -; 5142 : for (i = 0; i < (int)s->img_x; ++i) { +; 5155 : for (i = 0; i < (int)s->img_x; ++i) { 006f6 c7 85 04 05 00 00 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -53484,7 +53504,7 @@ $LN10@stbi__bmp_: 0071f 0f 8d 3b 01 00 00 jge $LN9@stbi__bmp_ -; 5143 : int color = (v >> bit_offset) & 0x1; +; 5156 : int color = (v >> bit_offset) & 0x1; 00725 8b 85 84 06 00 00 mov eax, DWORD PTR bit_offset$9[rbp] @@ -53496,7 +53516,7 @@ $LN10@stbi__bmp_: 00739 89 85 c4 06 00 00 mov DWORD PTR color$11[rbp], eax -; 5144 : out[z++] = pal[color][0]; +; 5157 : out[z++] = pal[color][0]; 0073f 48 63 85 c4 06 00 00 movsxd rax, DWORD PTR color$11[rbp] @@ -53515,7 +53535,7 @@ $LN10@stbi__bmp_: 00772 89 85 64 06 00 00 mov DWORD PTR z$8[rbp], eax -; 5145 : out[z++] = pal[color][1]; +; 5158 : out[z++] = pal[color][1]; 00778 48 63 85 c4 06 00 00 movsxd rax, DWORD PTR color$11[rbp] @@ -53534,7 +53554,7 @@ $LN10@stbi__bmp_: 007ab 89 85 64 06 00 00 mov DWORD PTR z$8[rbp], eax -; 5146 : out[z++] = pal[color][2]; +; 5159 : out[z++] = pal[color][2]; 007b1 48 63 85 c4 06 00 00 movsxd rax, DWORD PTR color$11[rbp] @@ -53553,7 +53573,7 @@ $LN10@stbi__bmp_: 007e4 89 85 64 06 00 00 mov DWORD PTR z$8[rbp], eax -; 5147 : if (target == 4) out[z++] = 255; +; 5160 : if (target == 4) out[z++] = 255; 007ea 83 bd a4 05 00 00 04 cmp DWORD PTR target$[rbp], 4 @@ -53569,7 +53589,7 @@ $LN10@stbi__bmp_: 00 mov DWORD PTR z$8[rbp], eax $LN67@stbi__bmp_: -; 5148 : if (i + 1 == (int)s->img_x) break; +; 5161 : if (i + 1 == (int)s->img_x) break; 00810 8b 85 04 05 00 00 mov eax, DWORD PTR i$[rbp] @@ -53581,7 +53601,7 @@ $LN67@stbi__bmp_: 00823 eb 3b jmp SHORT $LN9@stbi__bmp_ $LN68@stbi__bmp_: -; 5149 : if ((--bit_offset) < 0) { +; 5162 : if ((--bit_offset) < 0) { 00825 8b 85 84 06 00 00 mov eax, DWORD PTR bit_offset$9[rbp] @@ -53592,12 +53612,12 @@ $LN68@stbi__bmp_: 00 00 cmp DWORD PTR bit_offset$9[rbp], 0 0083a 7d 1f jge SHORT $LN69@stbi__bmp_ -; 5150 : bit_offset = 7; +; 5163 : bit_offset = 7; 0083c c7 85 84 06 00 00 07 00 00 00 mov DWORD PTR bit_offset$9[rbp], 7 -; 5151 : v = stbi__get8(s); +; 5164 : v = stbi__get8(s); 00846 48 8b 8d 30 0d 00 00 mov rcx, QWORD PTR s$[rbp] @@ -53607,13 +53627,13 @@ $LN68@stbi__bmp_: 00 mov DWORD PTR v$10[rbp], eax $LN69@stbi__bmp_: -; 5152 : } -; 5153 : } +; 5165 : } +; 5166 : } 0085b e9 a2 fe ff ff jmp $LN8@stbi__bmp_ $LN9@stbi__bmp_: -; 5154 : stbi__skip(s, pad); +; 5167 : stbi__skip(s, pad); 00860 8b 95 84 05 00 00 mov edx, DWORD PTR pad$[rbp] @@ -53621,18 +53641,18 @@ $LN9@stbi__bmp_: 00 00 mov rcx, QWORD PTR s$[rbp] 0086d e8 00 00 00 00 call stbi__skip -; 5155 : } +; 5168 : } 00872 e9 3c fe ff ff jmp $LN5@stbi__bmp_ $LN6@stbi__bmp_: -; 5156 : } +; 5169 : } 00877 e9 b4 02 00 00 jmp $LN66@stbi__bmp_ $LN65@stbi__bmp_: -; 5157 : else { -; 5158 : for (j = 0; j < (int)s->img_y; ++j) { +; 5170 : else { +; 5171 : for (j = 0; j < (int)s->img_y; ++j) { 0087c c7 85 24 05 00 00 00 00 00 00 mov DWORD PTR j$[rbp], 0 @@ -53652,7 +53672,7 @@ $LN13@stbi__bmp_: 008a6 0f 8d 84 02 00 00 jge $LN12@stbi__bmp_ -; 5159 : for (i = 0; i < (int)s->img_x; i += 2) { +; 5172 : for (i = 0; i < (int)s->img_x; i += 2) { 008ac c7 85 04 05 00 00 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -53672,7 +53692,7 @@ $LN16@stbi__bmp_: 008d6 0f 8d 3d 02 00 00 jge $LN15@stbi__bmp_ -; 5160 : int v = stbi__get8(s), v2 = 0; +; 5173 : int v = stbi__get8(s), v2 = 0; 008dc 48 8b 8d 30 0d 00 00 mov rcx, QWORD PTR s$[rbp] @@ -53683,13 +53703,13 @@ $LN16@stbi__bmp_: 008f1 c7 85 04 07 00 00 00 00 00 00 mov DWORD PTR v2$13[rbp], 0 -; 5161 : if (info.bpp == 4) { +; 5174 : if (info.bpp == 4) { 008fb 83 bd c8 05 00 00 04 cmp DWORD PTR info$[rbp], 4 00902 75 1e jne SHORT $LN70@stbi__bmp_ -; 5162 : v2 = v & 15; +; 5175 : v2 = v & 15; 00904 8b 85 e4 06 00 00 mov eax, DWORD PTR v$12[rbp] @@ -53697,7 +53717,7 @@ $LN16@stbi__bmp_: 0090d 89 85 04 07 00 00 mov DWORD PTR v2$13[rbp], eax -; 5163 : v >>= 4; +; 5176 : v >>= 4; 00913 8b 85 e4 06 00 00 mov eax, DWORD PTR v$12[rbp] @@ -53706,8 +53726,8 @@ $LN16@stbi__bmp_: 00 mov DWORD PTR v$12[rbp], eax $LN70@stbi__bmp_: -; 5164 : } -; 5165 : out[z++] = pal[v][0]; +; 5177 : } +; 5178 : out[z++] = pal[v][0]; 00922 48 63 85 e4 06 00 00 movsxd rax, DWORD PTR v$12[rbp] @@ -53726,7 +53746,7 @@ $LN70@stbi__bmp_: 00955 89 85 64 06 00 00 mov DWORD PTR z$8[rbp], eax -; 5166 : out[z++] = pal[v][1]; +; 5179 : out[z++] = pal[v][1]; 0095b 48 63 85 e4 06 00 00 movsxd rax, DWORD PTR v$12[rbp] @@ -53745,7 +53765,7 @@ $LN70@stbi__bmp_: 0098e 89 85 64 06 00 00 mov DWORD PTR z$8[rbp], eax -; 5167 : out[z++] = pal[v][2]; +; 5180 : out[z++] = pal[v][2]; 00994 48 63 85 e4 06 00 00 movsxd rax, DWORD PTR v$12[rbp] @@ -53764,7 +53784,7 @@ $LN70@stbi__bmp_: 009c7 89 85 64 06 00 00 mov DWORD PTR z$8[rbp], eax -; 5168 : if (target == 4) out[z++] = 255; +; 5181 : if (target == 4) out[z++] = 255; 009cd 83 bd a4 05 00 00 04 cmp DWORD PTR target$[rbp], 4 @@ -53780,7 +53800,7 @@ $LN70@stbi__bmp_: 00 mov DWORD PTR z$8[rbp], eax $LN71@stbi__bmp_: -; 5169 : if (i + 1 == (int)s->img_x) break; +; 5182 : if (i + 1 == (int)s->img_x) break; 009f3 8b 85 04 05 00 00 mov eax, DWORD PTR i$[rbp] @@ -53792,7 +53812,7 @@ $LN71@stbi__bmp_: 00a06 e9 0e 01 00 00 jmp $LN15@stbi__bmp_ $LN72@stbi__bmp_: -; 5170 : v = (info.bpp == 8) ? stbi__get8(s) : v2; +; 5183 : v = (info.bpp == 8) ? stbi__get8(s) : v2; 00a0b 83 bd c8 05 00 00 08 cmp DWORD PTR info$[rbp], 8 @@ -53815,7 +53835,7 @@ $LN120@stbi__bmp_: 00a3d 89 85 e4 06 00 00 mov DWORD PTR v$12[rbp], eax -; 5171 : out[z++] = pal[v][0]; +; 5184 : out[z++] = pal[v][0]; 00a43 48 63 85 e4 06 00 00 movsxd rax, DWORD PTR v$12[rbp] @@ -53834,7 +53854,7 @@ $LN120@stbi__bmp_: 00a76 89 85 64 06 00 00 mov DWORD PTR z$8[rbp], eax -; 5172 : out[z++] = pal[v][1]; +; 5185 : out[z++] = pal[v][1]; 00a7c 48 63 85 e4 06 00 00 movsxd rax, DWORD PTR v$12[rbp] @@ -53853,7 +53873,7 @@ $LN120@stbi__bmp_: 00aaf 89 85 64 06 00 00 mov DWORD PTR z$8[rbp], eax -; 5173 : out[z++] = pal[v][2]; +; 5186 : out[z++] = pal[v][2]; 00ab5 48 63 85 e4 06 00 00 movsxd rax, DWORD PTR v$12[rbp] @@ -53872,7 +53892,7 @@ $LN120@stbi__bmp_: 00ae8 89 85 64 06 00 00 mov DWORD PTR z$8[rbp], eax -; 5174 : if (target == 4) out[z++] = 255; +; 5187 : if (target == 4) out[z++] = 255; 00aee 83 bd a4 05 00 00 04 cmp DWORD PTR target$[rbp], 4 @@ -53888,12 +53908,12 @@ $LN120@stbi__bmp_: 00 mov DWORD PTR z$8[rbp], eax $LN73@stbi__bmp_: -; 5175 : } +; 5188 : } 00b14 e9 9f fd ff ff jmp $LN14@stbi__bmp_ $LN15@stbi__bmp_: -; 5176 : stbi__skip(s, pad); +; 5189 : stbi__skip(s, pad); 00b19 8b 95 84 05 00 00 mov edx, DWORD PTR pad$[rbp] @@ -53901,20 +53921,20 @@ $LN15@stbi__bmp_: 00 00 mov rcx, QWORD PTR s$[rbp] 00b26 e8 00 00 00 00 call stbi__skip -; 5177 : } +; 5190 : } 00b2b e9 58 fd ff ff jmp $LN11@stbi__bmp_ $LN12@stbi__bmp_: $LN66@stbi__bmp_: -; 5178 : } -; 5179 : } +; 5191 : } +; 5192 : } 00b30 e9 ab 05 00 00 jmp $LN55@stbi__bmp_ $LN54@stbi__bmp_: -; 5180 : else { -; 5181 : int rshift = 0, gshift = 0, bshift = 0, ashift = 0, rcount = 0, gcount = 0, bcount = 0, acount = 0; +; 5193 : else { +; 5194 : int rshift = 0, gshift = 0, bshift = 0, ashift = 0, rcount = 0, gcount = 0, bcount = 0, acount = 0; 00b35 c7 85 24 07 00 00 00 00 00 00 mov DWORD PTR rshift$14[rbp], 0 @@ -53933,17 +53953,17 @@ $LN54@stbi__bmp_: 00b7b c7 85 04 08 00 00 00 00 00 00 mov DWORD PTR acount$21[rbp], 0 -; 5182 : int z = 0; +; 5195 : int z = 0; 00b85 c7 85 24 08 00 00 00 00 00 00 mov DWORD PTR z$22[rbp], 0 -; 5183 : int easy = 0; +; 5196 : int easy = 0; 00b8f c7 85 44 08 00 00 00 00 00 00 mov DWORD PTR easy$23[rbp], 0 -; 5184 : stbi__skip(s, info.offset - info.extra_read - info.hsz); +; 5197 : stbi__skip(s, info.offset - info.extra_read - info.hsz); 00b99 8b 85 e8 05 00 00 mov eax, DWORD PTR info$[rbp+32] @@ -53958,7 +53978,7 @@ $LN54@stbi__bmp_: 00 00 mov rcx, QWORD PTR s$[rbp] 00bb8 e8 00 00 00 00 call stbi__skip -; 5185 : if (info.bpp == 24) width = 3 * s->img_x; +; 5198 : if (info.bpp == 24) width = 3 * s->img_x; 00bbd 83 bd c8 05 00 00 18 cmp DWORD PTR info$[rbp], 24 @@ -53971,7 +53991,7 @@ $LN54@stbi__bmp_: 00bd6 eb 26 jmp SHORT $LN75@stbi__bmp_ $LN74@stbi__bmp_: -; 5186 : else if (info.bpp == 16) width = 2 * s->img_x; +; 5199 : else if (info.bpp == 16) width = 2 * s->img_x; 00bd8 83 bd c8 05 00 00 10 cmp DWORD PTR info$[rbp], 16 @@ -53985,14 +54005,14 @@ $LN74@stbi__bmp_: 00bf2 eb 0a jmp SHORT $LN77@stbi__bmp_ $LN76@stbi__bmp_: -; 5187 : else /* bpp = 32 and pad = 0 */ width = 0; +; 5200 : else /* bpp = 32 and pad = 0 */ width = 0; 00bf4 c7 85 44 05 00 00 00 00 00 00 mov DWORD PTR width$[rbp], 0 $LN77@stbi__bmp_: $LN75@stbi__bmp_: -; 5188 : pad = (-width) & 3; +; 5201 : pad = (-width) & 3; 00bfe 8b 85 44 05 00 00 mov eax, DWORD PTR width$[rbp] @@ -54001,29 +54021,29 @@ $LN75@stbi__bmp_: 00c09 89 85 84 05 00 00 mov DWORD PTR pad$[rbp], eax -; 5189 : if (info.bpp == 24) { +; 5202 : if (info.bpp == 24) { 00c0f 83 bd c8 05 00 00 18 cmp DWORD PTR info$[rbp], 24 00c16 75 0c jne SHORT $LN78@stbi__bmp_ -; 5190 : easy = 1; +; 5203 : easy = 1; 00c18 c7 85 44 08 00 00 01 00 00 00 mov DWORD PTR easy$23[rbp], 1 -; 5191 : } +; 5204 : } 00c22 eb 3a jmp SHORT $LN79@stbi__bmp_ $LN78@stbi__bmp_: -; 5192 : else if (info.bpp == 32) { +; 5205 : else if (info.bpp == 32) { 00c24 83 bd c8 05 00 00 20 cmp DWORD PTR info$[rbp], 32 ; 00000020H 00c2b 75 31 jne SHORT $LN80@stbi__bmp_ -; 5193 : if (mb == 0xff && mg == 0xff00 && mr == 0x00ff0000 && ma == 0xff000000) +; 5206 : if (mb == 0xff && mg == 0xff00 && mr == 0x00ff0000 && ma == 0xff000000) 00c2d 81 7d 64 ff 00 00 00 cmp DWORD PTR mb$[rbp], 255 ; 000000ffH @@ -54038,7 +54058,7 @@ $LN78@stbi__bmp_: 00 00 00 00 ff cmp DWORD PTR ma$[rbp], -16777216 ; ff000000H 00c52 75 0a jne SHORT $LN81@stbi__bmp_ -; 5194 : easy = 2; +; 5207 : easy = 2; 00c54 c7 85 44 08 00 00 02 00 00 00 mov DWORD PTR easy$23[rbp], 2 @@ -54046,15 +54066,15 @@ $LN81@stbi__bmp_: $LN80@stbi__bmp_: $LN79@stbi__bmp_: -; 5195 : } -; 5196 : if (!easy) { +; 5208 : } +; 5209 : if (!easy) { 00c5e 83 bd 44 08 00 00 00 cmp DWORD PTR easy$23[rbp], 0 00c65 0f 85 34 01 00 00 jne $LN82@stbi__bmp_ -; 5197 : if (!mr || !mg || !mb) { STBI_FREE(out); return stbi__errpuc("bad masks", "Corrupt BMP"); } +; 5210 : if (!mr || !mg || !mb) { STBI_FREE(out); return stbi__errpuc("bad masks", "Corrupt BMP"); } 00c6b 83 7d 24 00 cmp DWORD PTR mr$[rbp], 0 00c6f 74 0c je SHORT $LN84@stbi__bmp_ @@ -54085,8 +54105,8 @@ $LN122@stbi__bmp_: 00cb6 e9 4b 06 00 00 jmp $LN1@stbi__bmp_ $LN83@stbi__bmp_: -; 5198 : // right shift amt to put high bit in position #7 -; 5199 : rshift = stbi__high_bit(mr) - 7; rcount = stbi__bitcount(mr); +; 5211 : // right shift amt to put high bit in position #7 +; 5212 : rshift = stbi__high_bit(mr) - 7; rcount = stbi__bitcount(mr); 00cbb 8b 4d 24 mov ecx, DWORD PTR mr$[rbp] 00cbe e8 00 00 00 00 call stbi__high_bit @@ -54098,7 +54118,7 @@ $LN83@stbi__bmp_: 00cd4 89 85 a4 07 00 00 mov DWORD PTR rcount$18[rbp], eax -; 5200 : gshift = stbi__high_bit(mg) - 7; gcount = stbi__bitcount(mg); +; 5213 : gshift = stbi__high_bit(mg) - 7; gcount = stbi__bitcount(mg); 00cda 8b 4d 44 mov ecx, DWORD PTR mg$[rbp] 00cdd e8 00 00 00 00 call stbi__high_bit @@ -54110,7 +54130,7 @@ $LN83@stbi__bmp_: 00cf3 89 85 c4 07 00 00 mov DWORD PTR gcount$19[rbp], eax -; 5201 : bshift = stbi__high_bit(mb) - 7; bcount = stbi__bitcount(mb); +; 5214 : bshift = stbi__high_bit(mb) - 7; bcount = stbi__bitcount(mb); 00cf9 8b 4d 64 mov ecx, DWORD PTR mb$[rbp] 00cfc e8 00 00 00 00 call stbi__high_bit @@ -54122,7 +54142,7 @@ $LN83@stbi__bmp_: 00d12 89 85 e4 07 00 00 mov DWORD PTR bcount$20[rbp], eax -; 5202 : ashift = stbi__high_bit(ma) - 7; acount = stbi__bitcount(ma); +; 5215 : ashift = stbi__high_bit(ma) - 7; acount = stbi__bitcount(ma); 00d18 8b 8d 84 00 00 00 mov ecx, DWORD PTR ma$[rbp] @@ -54136,7 +54156,7 @@ $LN83@stbi__bmp_: 00d37 89 85 04 08 00 00 mov DWORD PTR acount$21[rbp], eax -; 5203 : if (rcount > 8 || gcount > 8 || bcount > 8 || acount > 8) { STBI_FREE(out); return stbi__errpuc("bad masks", "Corrupt BMP"); } +; 5216 : if (rcount > 8 || gcount > 8 || bcount > 8 || acount > 8) { STBI_FREE(out); return stbi__errpuc("bad masks", "Corrupt BMP"); } 00d3d 83 bd a4 07 00 00 08 cmp DWORD PTR rcount$18[rbp], 8 @@ -54174,8 +54194,8 @@ $LN124@stbi__bmp_: $LN85@stbi__bmp_: $LN82@stbi__bmp_: -; 5204 : } -; 5205 : for (j = 0; j < (int)s->img_y; ++j) { +; 5217 : } +; 5218 : for (j = 0; j < (int)s->img_y; ++j) { 00d9f c7 85 24 05 00 00 00 00 00 00 mov DWORD PTR j$[rbp], 0 @@ -54195,14 +54215,14 @@ $LN19@stbi__bmp_: 00dc9 0f 8d 11 03 00 00 jge $LN18@stbi__bmp_ -; 5206 : if (easy) { +; 5219 : if (easy) { 00dcf 83 bd 44 08 00 00 00 cmp DWORD PTR easy$23[rbp], 0 00dd6 0f 84 1b 01 00 00 je $LN87@stbi__bmp_ -; 5207 : for (i = 0; i < (int)s->img_x; ++i) { +; 5220 : for (i = 0; i < (int)s->img_x; ++i) { 00ddc c7 85 04 05 00 00 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -54222,8 +54242,8 @@ $LN22@stbi__bmp_: 00e05 0f 8d e7 00 00 00 jge $LN21@stbi__bmp_ -; 5208 : unsigned char a; -; 5209 : out[z + 2] = stbi__get8(s); +; 5221 : unsigned char a; +; 5222 : out[z + 2] = stbi__get8(s); 00e0b 48 8b 8d 30 0d 00 00 mov rcx, QWORD PTR s$[rbp] @@ -54235,7 +54255,7 @@ $LN22@stbi__bmp_: 00e23 48 8b 55 08 mov rdx, QWORD PTR out$[rbp] 00e27 88 04 0a mov BYTE PTR [rdx+rcx], al -; 5210 : out[z + 1] = stbi__get8(s); +; 5223 : out[z + 1] = stbi__get8(s); 00e2a 48 8b 8d 30 0d 00 00 mov rcx, QWORD PTR s$[rbp] @@ -54247,7 +54267,7 @@ $LN22@stbi__bmp_: 00e41 48 8b 55 08 mov rdx, QWORD PTR out$[rbp] 00e45 88 04 0a mov BYTE PTR [rdx+rcx], al -; 5211 : out[z + 0] = stbi__get8(s); +; 5224 : out[z + 0] = stbi__get8(s); 00e48 48 8b 8d 30 0d 00 00 mov rcx, QWORD PTR s$[rbp] @@ -54258,7 +54278,7 @@ $LN22@stbi__bmp_: 00e5d 48 8b 55 08 mov rdx, QWORD PTR out$[rbp] 00e61 88 04 0a mov BYTE PTR [rdx+rcx], al -; 5212 : z += 3; +; 5225 : z += 3; 00e64 8b 85 24 08 00 00 mov eax, DWORD PTR z$22[rbp] @@ -54266,7 +54286,7 @@ $LN22@stbi__bmp_: 00e6d 89 85 24 08 00 00 mov DWORD PTR z$22[rbp], eax -; 5213 : a = (easy == 2 ? stbi__get8(s) : 255); +; 5226 : a = (easy == 2 ? stbi__get8(s) : 255); 00e73 83 bd 44 08 00 00 02 cmp DWORD PTR easy$23[rbp], 2 @@ -54287,7 +54307,7 @@ $LN126@stbi__bmp_: 00ea4 88 85 64 08 00 00 mov BYTE PTR a$24[rbp], al -; 5214 : all_a |= a; +; 5227 : all_a |= a; 00eaa 0f b6 85 64 08 00 00 movzx eax, BYTE PTR a$24[rbp] @@ -54298,7 +54318,7 @@ $LN126@stbi__bmp_: 00ebb 89 85 a4 00 00 00 mov DWORD PTR all_a$[rbp], eax -; 5215 : if (target == 4) out[z++] = a; +; 5228 : if (target == 4) out[z++] = a; 00ec1 83 bd a4 05 00 00 04 cmp DWORD PTR target$[rbp], 4 @@ -54316,25 +54336,25 @@ $LN126@stbi__bmp_: 00 mov DWORD PTR z$22[rbp], eax $LN89@stbi__bmp_: -; 5216 : } +; 5229 : } 00eed e9 f6 fe ff ff jmp $LN20@stbi__bmp_ $LN21@stbi__bmp_: -; 5217 : } +; 5230 : } 00ef2 e9 d2 01 00 00 jmp $LN88@stbi__bmp_ $LN87@stbi__bmp_: -; 5218 : else { -; 5219 : int bpp = info.bpp; +; 5231 : else { +; 5232 : int bpp = info.bpp; 00ef7 8b 85 c8 05 00 00 mov eax, DWORD PTR info$[rbp] 00efd 89 85 84 08 00 00 mov DWORD PTR bpp$25[rbp], eax -; 5220 : for (i = 0; i < (int)s->img_x; ++i) { +; 5233 : for (i = 0; i < (int)s->img_x; ++i) { 00f03 c7 85 04 05 00 00 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -54354,7 +54374,7 @@ $LN25@stbi__bmp_: 00f2c 0f 8d 97 01 00 00 jge $LN24@stbi__bmp_ -; 5221 : stbi__uint32 v = (bpp == 16 ? (stbi__uint32)stbi__get16le(s) : stbi__get32le(s)); +; 5234 : stbi__uint32 v = (bpp == 16 ? (stbi__uint32)stbi__get16le(s) : stbi__get32le(s)); 00f32 83 bd 84 08 00 00 10 cmp DWORD PTR bpp$25[rbp], 16 @@ -54377,8 +54397,8 @@ $LN128@stbi__bmp_: 00f67 89 85 a4 08 00 00 mov DWORD PTR v$26[rbp], eax -; 5222 : unsigned int a; -; 5223 : out[z++] = STBI__BYTECAST(stbi__shiftsigned(v & mr, rshift, rcount)); +; 5235 : unsigned int a; +; 5236 : out[z++] = STBI__BYTECAST(stbi__shiftsigned(v & mr, rshift, rcount)); 00f6d 8b 45 24 mov eax, DWORD PTR mr$[rbp] 00f70 8b 8d a4 08 00 @@ -54402,7 +54422,7 @@ $LN128@stbi__bmp_: 00fa9 89 85 24 08 00 00 mov DWORD PTR z$22[rbp], eax -; 5224 : out[z++] = STBI__BYTECAST(stbi__shiftsigned(v & mg, gshift, gcount)); +; 5237 : out[z++] = STBI__BYTECAST(stbi__shiftsigned(v & mg, gshift, gcount)); 00faf 8b 45 44 mov eax, DWORD PTR mg$[rbp] 00fb2 8b 8d a4 08 00 @@ -54426,7 +54446,7 @@ $LN128@stbi__bmp_: 00feb 89 85 24 08 00 00 mov DWORD PTR z$22[rbp], eax -; 5225 : out[z++] = STBI__BYTECAST(stbi__shiftsigned(v & mb, bshift, bcount)); +; 5238 : out[z++] = STBI__BYTECAST(stbi__shiftsigned(v & mb, bshift, bcount)); 00ff1 8b 45 64 mov eax, DWORD PTR mb$[rbp] 00ff4 8b 8d a4 08 00 @@ -54450,7 +54470,7 @@ $LN128@stbi__bmp_: 0102d 89 85 24 08 00 00 mov DWORD PTR z$22[rbp], eax -; 5226 : a = (ma ? stbi__shiftsigned(v & ma, ashift, acount) : 255); +; 5239 : a = (ma ? stbi__shiftsigned(v & ma, ashift, acount) : 255); 01033 83 bd 84 00 00 00 00 cmp DWORD PTR ma$[rbp], 0 @@ -54479,7 +54499,7 @@ $LN130@stbi__bmp_: 01078 89 85 c4 08 00 00 mov DWORD PTR a$27[rbp], eax -; 5227 : all_a |= a; +; 5240 : all_a |= a; 0107e 8b 85 c4 08 00 00 mov eax, DWORD PTR a$27[rbp] @@ -54490,7 +54510,7 @@ $LN130@stbi__bmp_: 0108e 89 85 a4 00 00 00 mov DWORD PTR all_a$[rbp], eax -; 5228 : if (target == 4) out[z++] = STBI__BYTECAST(a); +; 5241 : if (target == 4) out[z++] = STBI__BYTECAST(a); 01094 83 bd a4 05 00 00 04 cmp DWORD PTR target$[rbp], 4 @@ -54509,14 +54529,14 @@ $LN130@stbi__bmp_: 00 mov DWORD PTR z$22[rbp], eax $LN90@stbi__bmp_: -; 5229 : } +; 5242 : } 010c4 e9 46 fe ff ff jmp $LN23@stbi__bmp_ $LN24@stbi__bmp_: $LN88@stbi__bmp_: -; 5230 : } -; 5231 : stbi__skip(s, pad); +; 5243 : } +; 5244 : stbi__skip(s, pad); 010c9 8b 95 84 05 00 00 mov edx, DWORD PTR pad$[rbp] @@ -54524,16 +54544,16 @@ $LN88@stbi__bmp_: 00 00 mov rcx, QWORD PTR s$[rbp] 010d6 e8 00 00 00 00 call stbi__skip -; 5232 : } +; 5245 : } 010db e9 cb fc ff ff jmp $LN17@stbi__bmp_ $LN18@stbi__bmp_: $LN55@stbi__bmp_: -; 5233 : } -; 5234 : -; 5235 : // if alpha channel is all 0s, replace with all 255s -; 5236 : if (target == 4 && all_a == 0) +; 5246 : } +; 5247 : +; 5248 : // if alpha channel is all 0s, replace with all 255s +; 5249 : if (target == 4 && all_a == 0) 010e0 83 bd a4 05 00 00 04 cmp DWORD PTR target$[rbp], 4 @@ -54542,7 +54562,7 @@ $LN55@stbi__bmp_: 00 00 cmp DWORD PTR all_a$[rbp], 0 010f0 75 4a jne SHORT $LN91@stbi__bmp_ -; 5237 : for (i = 4 * s->img_x * s->img_y - 1; i >= 0; i -= 4) +; 5250 : for (i = 4 * s->img_x * s->img_y - 1; i >= 0; i -= 4) 010f2 48 8b 85 30 0d 00 00 mov rax, QWORD PTR s$[rbp] @@ -54566,7 +54586,7 @@ $LN28@stbi__bmp_: 00 00 cmp DWORD PTR i$[rbp], 0 01129 7c 11 jl SHORT $LN27@stbi__bmp_ -; 5238 : out[i] = 255; +; 5251 : out[i] = 255; 0112b 48 63 85 04 05 00 00 movsxd rax, DWORD PTR i$[rbp] @@ -54576,16 +54596,16 @@ $LN28@stbi__bmp_: $LN27@stbi__bmp_: $LN91@stbi__bmp_: -; 5239 : -; 5240 : if (flip_vertically) { +; 5252 : +; 5253 : if (flip_vertically) { 0113c 83 bd 64 05 00 00 00 cmp DWORD PTR flip_vertically$[rbp], 0 01143 0f 84 21 01 00 00 je $LN92@stbi__bmp_ -; 5241 : stbi_uc t; -; 5242 : for (j = 0; j < (int)s->img_y >> 1; ++j) { +; 5254 : stbi_uc t; +; 5255 : for (j = 0; j < (int)s->img_y >> 1; ++j) { 01149 c7 85 24 05 00 00 00 00 00 00 mov DWORD PTR j$[rbp], 0 @@ -54606,7 +54626,7 @@ $LN31@stbi__bmp_: 01175 0f 8d ef 00 00 00 jge $LN30@stbi__bmp_ -; 5243 : stbi_uc* p1 = out + j * s->img_x * target; +; 5256 : stbi_uc* p1 = out + j * s->img_x * target; 0117b 48 8b 85 30 0d 00 00 mov rax, QWORD PTR s$[rbp] @@ -54623,7 +54643,7 @@ $LN31@stbi__bmp_: 011a0 48 89 85 08 09 00 00 mov QWORD PTR p1$29[rbp], rax -; 5244 : stbi_uc* p2 = out + (s->img_y - 1 - j) * s->img_x * target; +; 5257 : stbi_uc* p2 = out + (s->img_y - 1 - j) * s->img_x * target; 011a7 48 8b 85 30 0d 00 00 mov rax, QWORD PTR s$[rbp] @@ -54643,7 +54663,7 @@ $LN31@stbi__bmp_: 011d6 48 89 85 28 09 00 00 mov QWORD PTR p2$30[rbp], rax -; 5245 : for (i = 0; i < (int)s->img_x * target; ++i) { +; 5258 : for (i = 0; i < (int)s->img_x * target; ++i) { 011dd c7 85 04 05 00 00 00 00 00 00 mov DWORD PTR i$[rbp], 0 @@ -54664,7 +54684,7 @@ $LN34@stbi__bmp_: 00 cmp DWORD PTR i$[rbp], eax 0120d 7d 56 jge SHORT $LN33@stbi__bmp_ -; 5246 : t = p1[i]; p1[i] = p2[i]; p2[i] = t; +; 5259 : t = p1[i]; p1[i] = p2[i]; p2[i] = t; 0120f 48 63 85 04 05 00 00 movsxd rax, DWORD PTR i$[rbp] @@ -54691,20 +54711,20 @@ $LN34@stbi__bmp_: 00 00 movzx edx, BYTE PTR t$28[rbp] 01260 88 14 01 mov BYTE PTR [rcx+rax], dl -; 5247 : } +; 5260 : } 01263 eb 84 jmp SHORT $LN32@stbi__bmp_ $LN33@stbi__bmp_: -; 5248 : } +; 5261 : } 01265 e9 eb fe ff ff jmp $LN29@stbi__bmp_ $LN30@stbi__bmp_: $LN92@stbi__bmp_: -; 5249 : } -; 5250 : -; 5251 : if (req_comp && req_comp != target) { +; 5262 : } +; 5263 : +; 5264 : if (req_comp && req_comp != target) { 0126a 83 bd 50 0d 00 00 00 cmp DWORD PTR req_comp$[rbp], 0 @@ -54715,7 +54735,7 @@ $LN92@stbi__bmp_: 00 cmp DWORD PTR req_comp$[rbp], eax 0127f 74 3f je SHORT $LN93@stbi__bmp_ -; 5252 : out = stbi__convert_format(out, target, req_comp, s->img_x, s->img_y); +; 5265 : out = stbi__convert_format(out, target, req_comp, s->img_x, s->img_y); 01281 48 8b 85 30 0d 00 00 mov rax, QWORD PTR s$[rbp] @@ -54732,7 +54752,7 @@ $LN92@stbi__bmp_: 012aa e8 00 00 00 00 call stbi__convert_format 012af 48 89 45 08 mov QWORD PTR out$[rbp], rax -; 5253 : if (out == NULL) return out; // stbi__convert_format frees input on failure +; 5266 : if (out == NULL) return out; // stbi__convert_format frees input on failure 012b3 48 83 7d 08 00 cmp QWORD PTR out$[rbp], 0 012b8 75 06 jne SHORT $LN94@stbi__bmp_ @@ -54741,9 +54761,9 @@ $LN92@stbi__bmp_: $LN94@stbi__bmp_: $LN93@stbi__bmp_: -; 5254 : } -; 5255 : -; 5256 : *x = s->img_x; +; 5267 : } +; 5268 : +; 5269 : *x = s->img_x; 012c0 48 8b 85 38 0d 00 00 mov rax, QWORD PTR x$[rbp] @@ -54752,7 +54772,7 @@ $LN93@stbi__bmp_: 012ce 8b 09 mov ecx, DWORD PTR [rcx] 012d0 89 08 mov DWORD PTR [rax], ecx -; 5257 : *y = s->img_y; +; 5270 : *y = s->img_y; 012d2 48 8b 85 40 0d 00 00 mov rax, QWORD PTR y$[rbp] @@ -54761,7 +54781,7 @@ $LN93@stbi__bmp_: 012e0 8b 49 04 mov ecx, DWORD PTR [rcx+4] 012e3 89 08 mov DWORD PTR [rax], ecx -; 5258 : if (comp) *comp = s->img_n; +; 5271 : if (comp) *comp = s->img_n; 012e5 48 83 bd 48 0d 00 00 00 cmp QWORD PTR comp$[rbp], 0 @@ -54774,12 +54794,12 @@ $LN93@stbi__bmp_: 01300 89 08 mov DWORD PTR [rax], ecx $LN95@stbi__bmp_: -; 5259 : return out; +; 5272 : return out; 01302 48 8b 45 08 mov rax, QWORD PTR out$[rbp] $LN1@stbi__bmp_: -; 5260 : } +; 5273 : } 01306 48 8b f8 mov rdi, rax 01309 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48] @@ -54806,7 +54826,7 @@ r$ = 4 s$ = 256 stbi__bmp_test PROC ; COMDAT -; 4878 : { +; 4891 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -54818,24 +54838,24 @@ stbi__bmp_test PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4879 : int r = stbi__bmp_test_raw(s); +; 4892 : int r = stbi__bmp_test_raw(s); 0001f 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] 00026 e8 00 00 00 00 call stbi__bmp_test_raw 0002b 89 45 04 mov DWORD PTR r$[rbp], eax -; 4880 : stbi__rewind(s); +; 4893 : stbi__rewind(s); 0002e 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] 00035 e8 00 00 00 00 call stbi__rewind -; 4881 : return r; +; 4894 : return r; 0003a 8b 45 04 mov eax, DWORD PTR r$[rbp] -; 4882 : } +; 4895 : } 0003d 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -54853,7 +54873,7 @@ __$ArrayPad$ = 248 s$ = 288 stbi__png_is16 PROC ; COMDAT -; 4846 : { +; 4859 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -54876,14 +54896,14 @@ stbi__png_is16 PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00044 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4847 : stbi__png p; -; 4848 : p.s = s; +; 4860 : stbi__png p; +; 4861 : p.s = s; 00049 48 8b 85 20 01 00 00 mov rax, QWORD PTR s$[rbp] 00050 48 89 45 08 mov QWORD PTR p$[rbp], rax -; 4849 : if (!stbi__png_info_raw(&p, NULL, NULL, NULL)) +; 4862 : if (!stbi__png_info_raw(&p, NULL, NULL, NULL)) 00054 45 33 c9 xor r9d, r9d 00057 45 33 c0 xor r8d, r8d @@ -54893,35 +54913,35 @@ stbi__png_is16 PROC ; COMDAT 00065 85 c0 test eax, eax 00067 75 04 jne SHORT $LN2@stbi__png_ -; 4850 : return 0; +; 4863 : return 0; 00069 33 c0 xor eax, eax 0006b eb 18 jmp SHORT $LN1@stbi__png_ $LN2@stbi__png_: -; 4851 : if (p.depth != 16) { +; 4864 : if (p.depth != 16) { 0006d 83 7d 28 10 cmp DWORD PTR p$[rbp+32], 16 00071 74 0d je SHORT $LN3@stbi__png_ -; 4852 : stbi__rewind(p.s); +; 4865 : stbi__rewind(p.s); 00073 48 8b 4d 08 mov rcx, QWORD PTR p$[rbp] 00077 e8 00 00 00 00 call stbi__rewind -; 4853 : return 0; +; 4866 : return 0; 0007c 33 c0 xor eax, eax 0007e eb 05 jmp SHORT $LN1@stbi__png_ $LN3@stbi__png_: -; 4854 : } -; 4855 : return 1; +; 4867 : } +; 4868 : return 1; 00080 b8 01 00 00 00 mov eax, 1 $LN1@stbi__png_: -; 4856 : } +; 4869 : } 00085 48 8b f8 mov rdi, rax 00088 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] @@ -54952,7 +54972,7 @@ y$ = 304 comp$ = 312 stbi__png_info PROC ; COMDAT -; 4839 : { +; 4852 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -54978,14 +54998,14 @@ stbi__png_info PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4840 : stbi__png p; -; 4841 : p.s = s; +; 4853 : stbi__png p; +; 4854 : p.s = s; 00058 48 8b 85 20 01 00 00 mov rax, QWORD PTR s$[rbp] 0005f 48 89 45 08 mov QWORD PTR p$[rbp], rax -; 4842 : return stbi__png_info_raw(&p, x, y, comp); +; 4855 : return stbi__png_info_raw(&p, x, y, comp); 00063 4c 8b 8d 38 01 00 00 mov r9, QWORD PTR comp$[rbp] @@ -54996,7 +55016,7 @@ stbi__png_info PROC ; COMDAT 00078 48 8d 4d 08 lea rcx, QWORD PTR p$[rbp] 0007c e8 00 00 00 00 call stbi__png_info_raw -; 4843 : } +; 4856 : } 00081 48 8b f8 mov rdi, rax 00084 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] @@ -55029,7 +55049,7 @@ req_comp$ = 320 ri$ = 328 stbi__png_load PROC ; COMDAT -; 4812 : { +; 4825 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -55055,14 +55075,14 @@ stbi__png_load PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4813 : stbi__png p; -; 4814 : p.s = s; +; 4826 : stbi__png p; +; 4827 : p.s = s; 00058 48 8b 85 20 01 00 00 mov rax, QWORD PTR s$[rbp] 0005f 48 89 45 08 mov QWORD PTR p$[rbp], rax -; 4815 : return stbi__do_png(&p, x, y, comp, req_comp, ri); +; 4828 : return stbi__do_png(&p, x, y, comp, req_comp, ri); 00063 48 8b 85 48 01 00 00 mov rax, QWORD PTR ri$[rbp] @@ -55079,7 +55099,7 @@ stbi__png_load PROC ; COMDAT 0008e 48 8d 4d 08 lea rcx, QWORD PTR p$[rbp] 00092 e8 00 00 00 00 call stbi__do_png -; 4816 : } +; 4829 : } 00097 48 8b f8 mov rdi, rax 0009a 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48] @@ -55106,7 +55126,7 @@ r$ = 4 s$ = 256 stbi__png_test PROC ; COMDAT -; 4819 : { +; 4832 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -55118,25 +55138,25 @@ stbi__png_test PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4820 : int r; -; 4821 : r = stbi__check_png_header(s); +; 4833 : int r; +; 4834 : r = stbi__check_png_header(s); 0001f 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] 00026 e8 00 00 00 00 call stbi__check_png_header 0002b 89 45 04 mov DWORD PTR r$[rbp], eax -; 4822 : stbi__rewind(s); +; 4835 : stbi__rewind(s); 0002e 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR s$[rbp] 00035 e8 00 00 00 00 call stbi__rewind -; 4823 : return r; +; 4836 : return r; 0003a 8b 45 04 mov eax, DWORD PTR r$[rbp] -; 4824 : } +; 4837 : } 0003d 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -55157,7 +55177,7 @@ y$ = 304 comp$ = 312 stbi__jpeg_info PROC ; COMDAT -; 3555 : { +; 3568 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -55172,14 +55192,14 @@ stbi__jpeg_info PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 3556 : int result; -; 3557 : stbi__jpeg* j = (stbi__jpeg*)(stbi__malloc(sizeof(stbi__jpeg))); +; 3569 : int result; +; 3570 : stbi__jpeg* j = (stbi__jpeg*)(stbi__malloc(sizeof(stbi__jpeg))); 0002e b9 88 48 00 00 mov ecx, 18568 ; 00004888H 00033 e8 00 00 00 00 call stbi__malloc 00038 48 89 45 28 mov QWORD PTR j$[rbp], rax -; 3558 : if (!j) return stbi__err("outofmem", "Out of memory"); +; 3571 : if (!j) return stbi__err("outofmem", "Out of memory"); 0003c 48 83 7d 28 00 cmp QWORD PTR j$[rbp], 0 00041 75 0e jne SHORT $LN2@stbi__jpeg @@ -55189,7 +55209,7 @@ stbi__jpeg_info PROC ; COMDAT 0004f eb 4d jmp SHORT $LN1@stbi__jpeg $LN2@stbi__jpeg: -; 3559 : memset(j, 0, sizeof(stbi__jpeg)); +; 3572 : memset(j, 0, sizeof(stbi__jpeg)); 00051 41 b8 88 48 00 00 mov r8d, 18568 ; 00004888H @@ -55197,14 +55217,14 @@ $LN2@stbi__jpeg: 00059 48 8b 4d 28 mov rcx, QWORD PTR j$[rbp] 0005d e8 00 00 00 00 call memset -; 3560 : j->s = s; +; 3573 : j->s = s; 00062 48 8b 45 28 mov rax, QWORD PTR j$[rbp] 00066 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR s$[rbp] 0006d 48 89 08 mov QWORD PTR [rax], rcx -; 3561 : result = stbi__jpeg_info_raw(j, x, y, comp); +; 3574 : result = stbi__jpeg_info_raw(j, x, y, comp); 00070 4c 8b 8d 38 01 00 00 mov r9, QWORD PTR comp$[rbp] @@ -55216,18 +55236,18 @@ $LN2@stbi__jpeg: 00089 e8 00 00 00 00 call stbi__jpeg_info_raw 0008e 89 45 04 mov DWORD PTR result$[rbp], eax -; 3562 : STBI_FREE(j); +; 3575 : STBI_FREE(j); 00091 48 8b 4d 28 mov rcx, QWORD PTR j$[rbp] 00095 ff 15 00 00 00 00 call QWORD PTR __imp_free -; 3563 : return result; +; 3576 : return result; 0009b 8b 45 04 mov eax, DWORD PTR result$[rbp] $LN1@stbi__jpeg: -; 3564 : } +; 3577 : } 0009e 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] @@ -55251,7 +55271,7 @@ req_comp$ = 320 ri$ = 328 stbi__jpeg_load PROC ; COMDAT -; 3515 : { +; 3528 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -55266,14 +55286,14 @@ stbi__jpeg_load PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 3516 : unsigned char* result; -; 3517 : stbi__jpeg* j = (stbi__jpeg*)stbi__malloc(sizeof(stbi__jpeg)); +; 3529 : unsigned char* result; +; 3530 : stbi__jpeg* j = (stbi__jpeg*)stbi__malloc(sizeof(stbi__jpeg)); 0002e b9 88 48 00 00 mov ecx, 18568 ; 00004888H 00033 e8 00 00 00 00 call stbi__malloc 00038 48 89 45 28 mov QWORD PTR j$[rbp], rax -; 3518 : if (!j) return stbi__errpuc("outofmem", "Out of memory"); +; 3531 : if (!j) return stbi__errpuc("outofmem", "Out of memory"); 0003c 48 83 7d 28 00 cmp QWORD PTR j$[rbp], 0 00041 75 31 jne SHORT $LN2@stbi__jpeg @@ -55296,7 +55316,7 @@ $LN5@stbi__jpeg: 00072 eb 62 jmp SHORT $LN1@stbi__jpeg $LN2@stbi__jpeg: -; 3519 : memset(j, 0, sizeof(stbi__jpeg)); +; 3532 : memset(j, 0, sizeof(stbi__jpeg)); 00074 41 b8 88 48 00 00 mov r8d, 18568 ; 00004888H @@ -55304,20 +55324,20 @@ $LN2@stbi__jpeg: 0007c 48 8b 4d 28 mov rcx, QWORD PTR j$[rbp] 00080 e8 00 00 00 00 call memset -; 3520 : STBI_NOTUSED(ri); -; 3521 : j->s = s; +; 3533 : STBI_NOTUSED(ri); +; 3534 : j->s = s; 00085 48 8b 45 28 mov rax, QWORD PTR j$[rbp] 00089 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR s$[rbp] 00090 48 89 08 mov QWORD PTR [rax], rcx -; 3522 : stbi__setup_jpeg(j); +; 3535 : stbi__setup_jpeg(j); 00093 48 8b 4d 28 mov rcx, QWORD PTR j$[rbp] 00097 e8 00 00 00 00 call stbi__setup_jpeg -; 3523 : result = load_jpeg_image(j, x, y, comp, req_comp); +; 3536 : result = load_jpeg_image(j, x, y, comp, req_comp); 0009c 8b 85 40 01 00 00 mov eax, DWORD PTR req_comp$[rbp] @@ -55332,18 +55352,18 @@ $LN2@stbi__jpeg: 000bf e8 00 00 00 00 call load_jpeg_image 000c4 48 89 45 08 mov QWORD PTR result$[rbp], rax -; 3524 : STBI_FREE(j); +; 3537 : STBI_FREE(j); 000c8 48 8b 4d 28 mov rcx, QWORD PTR j$[rbp] 000cc ff 15 00 00 00 00 call QWORD PTR __imp_free -; 3525 : return result; +; 3538 : return result; 000d2 48 8b 45 08 mov rax, QWORD PTR result$[rbp] $LN1@stbi__jpeg: -; 3526 : } +; 3539 : } 000d6 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] @@ -55361,7 +55381,7 @@ j$ = 40 s$ = 288 stbi__jpeg_test PROC ; COMDAT -; 3529 : { +; 3542 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -55373,14 +55393,14 @@ stbi__jpeg_test PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 3530 : int r; -; 3531 : stbi__jpeg* j = (stbi__jpeg*)stbi__malloc(sizeof(stbi__jpeg)); +; 3543 : int r; +; 3544 : stbi__jpeg* j = (stbi__jpeg*)stbi__malloc(sizeof(stbi__jpeg)); 0001f b9 88 48 00 00 mov ecx, 18568 ; 00004888H 00024 e8 00 00 00 00 call stbi__malloc 00029 48 89 45 28 mov QWORD PTR j$[rbp], rax -; 3532 : if (!j) return stbi__err("outofmem", "Out of memory"); +; 3545 : if (!j) return stbi__err("outofmem", "Out of memory"); 0002d 48 83 7d 28 00 cmp QWORD PTR j$[rbp], 0 00032 75 0e jne SHORT $LN2@stbi__jpeg @@ -55390,7 +55410,7 @@ stbi__jpeg_test PROC ; COMDAT 00040 eb 52 jmp SHORT $LN1@stbi__jpeg $LN2@stbi__jpeg: -; 3533 : memset(j, 0, sizeof(stbi__jpeg)); +; 3546 : memset(j, 0, sizeof(stbi__jpeg)); 00042 41 b8 88 48 00 00 mov r8d, 18568 ; 00004888H @@ -55398,43 +55418,43 @@ $LN2@stbi__jpeg: 0004a 48 8b 4d 28 mov rcx, QWORD PTR j$[rbp] 0004e e8 00 00 00 00 call memset -; 3534 : j->s = s; +; 3547 : j->s = s; 00053 48 8b 45 28 mov rax, QWORD PTR j$[rbp] 00057 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR s$[rbp] 0005e 48 89 08 mov QWORD PTR [rax], rcx -; 3535 : stbi__setup_jpeg(j); +; 3548 : stbi__setup_jpeg(j); 00061 48 8b 4d 28 mov rcx, QWORD PTR j$[rbp] 00065 e8 00 00 00 00 call stbi__setup_jpeg -; 3536 : r = stbi__decode_jpeg_header(j, STBI__SCAN_type); +; 3549 : r = stbi__decode_jpeg_header(j, STBI__SCAN_type); 0006a ba 01 00 00 00 mov edx, 1 0006f 48 8b 4d 28 mov rcx, QWORD PTR j$[rbp] 00073 e8 00 00 00 00 call stbi__decode_jpeg_header 00078 89 45 04 mov DWORD PTR r$[rbp], eax -; 3537 : stbi__rewind(s); +; 3550 : stbi__rewind(s); 0007b 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR s$[rbp] 00082 e8 00 00 00 00 call stbi__rewind -; 3538 : STBI_FREE(j); +; 3551 : STBI_FREE(j); 00087 48 8b 4d 28 mov rcx, QWORD PTR j$[rbp] 0008b ff 15 00 00 00 00 call QWORD PTR __imp_free -; 3539 : return r; +; 3552 : return r; 00091 8b 45 04 mov eax, DWORD PTR r$[rbp] $LN1@stbi__jpeg: -; 3540 : } +; 3553 : } 00094 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] @@ -55910,7 +55930,7 @@ n$ = 4 s$ = 256 stbi__refill_buffer PROC ; COMDAT -; 1053 : { +; 1066 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp @@ -55922,7 +55942,7 @@ stbi__refill_buffer PROC ; COMDAT 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 1054 : int n = (s->io.read)(s->io_user_data, (char*)s->buffer_start, s->buflen); +; 1067 : int n = (s->io.read)(s->io_user_data, (char*)s->buffer_start, s->buflen); 0001f 48 8b 85 00 01 00 00 mov rax, QWORD PTR s$[rbp] @@ -55939,7 +55959,7 @@ stbi__refill_buffer PROC ; COMDAT 0004a ff 50 10 call QWORD PTR [rax+16] 0004d 89 45 04 mov DWORD PTR n$[rbp], eax -; 1055 : s->callback_already_read += (int)(s->img_buffer - s->img_buffer_original); +; 1068 : s->callback_already_read += (int)(s->img_buffer - s->img_buffer_original); 00050 48 8b 85 00 01 00 00 mov rax, QWORD PTR s$[rbp] @@ -55959,21 +55979,21 @@ stbi__refill_buffer PROC ; COMDAT 00083 89 81 b8 00 00 00 mov DWORD PTR [rcx+184], eax -; 1056 : if (n == 0) { +; 1069 : if (n == 0) { 00089 83 7d 04 00 cmp DWORD PTR n$[rbp], 0 0008d 75 53 jne SHORT $LN2@stbi__refi -; 1057 : // at end of file, treat same as if from memory, but need to handle case -; 1058 : // where s->img_buffer isn't pointing to safe memory, e.g. 0-byte file -; 1059 : s->read_from_callbacks = 0; +; 1070 : // at end of file, treat same as if from memory, but need to handle case +; 1071 : // where s->img_buffer isn't pointing to safe memory, e.g. 0-byte file +; 1072 : s->read_from_callbacks = 0; 0008f 48 8b 85 00 01 00 00 mov rax, QWORD PTR s$[rbp] 00096 c7 40 30 00 00 00 00 mov DWORD PTR [rax+48], 0 -; 1060 : s->img_buffer = s->buffer_start; +; 1073 : s->img_buffer = s->buffer_start; 0009d 48 8b 85 00 01 00 00 mov rax, QWORD PTR s$[rbp] @@ -55983,7 +56003,7 @@ stbi__refill_buffer PROC ; COMDAT 000af 48 89 81 c0 00 00 00 mov QWORD PTR [rcx+192], rax -; 1061 : s->img_buffer_end = s->buffer_start + 1; +; 1074 : s->img_buffer_end = s->buffer_start + 1; 000b6 48 8b 85 00 01 00 00 mov rax, QWORD PTR s$[rbp] @@ -55993,7 +56013,7 @@ stbi__refill_buffer PROC ; COMDAT 000c8 48 89 81 c8 00 00 00 mov QWORD PTR [rcx+200], rax -; 1062 : *s->img_buffer = 0; +; 1075 : *s->img_buffer = 0; 000cf 48 8b 85 00 01 00 00 mov rax, QWORD PTR s$[rbp] @@ -56001,13 +56021,13 @@ stbi__refill_buffer PROC ; COMDAT 00 00 mov rax, QWORD PTR [rax+192] 000dd c6 00 00 mov BYTE PTR [rax], 0 -; 1063 : } +; 1076 : } 000e0 eb 37 jmp SHORT $LN3@stbi__refi $LN2@stbi__refi: -; 1064 : else { -; 1065 : s->img_buffer = s->buffer_start; +; 1077 : else { +; 1078 : s->img_buffer = s->buffer_start; 000e2 48 8b 85 00 01 00 00 mov rax, QWORD PTR s$[rbp] @@ -56017,7 +56037,7 @@ $LN2@stbi__refi: 000f4 48 89 81 c0 00 00 00 mov QWORD PTR [rcx+192], rax -; 1066 : s->img_buffer_end = s->buffer_start + n; +; 1079 : s->img_buffer_end = s->buffer_start + n; 000fb 48 63 45 04 movsxd rax, DWORD PTR n$[rbp] 000ff 48 8b 8d 00 01 @@ -56029,8 +56049,8 @@ $LN2@stbi__refi: 00 00 mov QWORD PTR [rcx+200], rax $LN3@stbi__refi: -; 1067 : } -; 1068 : } +; 1080 : } +; 1081 : } 00119 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] @@ -56168,7 +56188,7 @@ ibuffer$ = 5712 ilen$ = 5720 stbi_zlib_decode_noheader_buffer PROC ; COMDAT -; 4062 : { +; 4075 : { $LN5: 00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d @@ -56196,14 +56216,14 @@ $LN5: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00058 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4063 : stbi__zbuf a; -; 4064 : a.zbuffer = (stbi_uc*)ibuffer; +; 4076 : stbi__zbuf a; +; 4077 : a.zbuffer = (stbi_uc*)ibuffer; 0005d 48 8b 85 50 16 00 00 mov rax, QWORD PTR ibuffer$[rbp] 00064 48 89 45 10 mov QWORD PTR a$[rbp], rax -; 4065 : a.zbuffer_end = (stbi_uc*)ibuffer + ilen; +; 4078 : a.zbuffer_end = (stbi_uc*)ibuffer + ilen; 00068 48 63 85 58 16 00 00 movsxd rax, DWORD PTR ilen$[rbp] @@ -56213,7 +56233,7 @@ $LN5: 00079 48 8b c1 mov rax, rcx 0007c 48 89 45 18 mov QWORD PTR a$[rbp+8], rax -; 4066 : if (stbi__do_zlib(&a, obuffer, olen, 0, 0)) +; 4079 : if (stbi__do_zlib(&a, obuffer, olen, 0, 0)) 00080 c7 44 24 20 00 00 00 00 mov DWORD PTR [rsp+32], 0 @@ -56227,7 +56247,7 @@ $LN5: 000a2 85 c0 test eax, eax 000a4 74 12 je SHORT $LN2@stbi_zlib_ -; 4067 : return (int)(a.zout - a.zout_start); +; 4080 : return (int)(a.zout - a.zout_start); 000a6 48 8b 45 30 mov rax, QWORD PTR a$[rbp+32] 000aa 48 8b 4d 28 mov rcx, QWORD PTR a$[rbp+24] @@ -56237,14 +56257,14 @@ $LN5: 000b6 eb 05 jmp SHORT $LN3@stbi_zlib_ $LN2@stbi_zlib_: -; 4068 : else -; 4069 : return -1; +; 4081 : else +; 4082 : return -1; 000b8 b8 ff ff ff ff mov eax, -1 $LN3@stbi_zlib_: $LN1@stbi_zlib_: -; 4070 : } +; 4083 : } 000bd 48 8b f8 mov rdi, rax 000c0 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48] @@ -56275,7 +56295,7 @@ len$ = 5736 outlen$ = 5744 stbi_zlib_decode_noheader_malloc PROC ; COMDAT -; 4045 : { +; 4058 : { $LN7: 00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -56302,15 +56322,15 @@ $LN7: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4046 : stbi__zbuf a; -; 4047 : char* p = (char*)stbi__malloc(16384); +; 4059 : stbi__zbuf a; +; 4060 : char* p = (char*)stbi__malloc(16384); 00058 b9 00 40 00 00 mov ecx, 16384 ; 00004000H 0005d e8 00 00 00 00 call stbi__malloc 00062 48 89 85 28 10 00 00 mov QWORD PTR p$[rbp], rax -; 4048 : if (p == NULL) return NULL; +; 4061 : if (p == NULL) return NULL; 00069 48 83 bd 28 10 00 00 00 cmp QWORD PTR p$[rbp], 0 @@ -56319,13 +56339,13 @@ $LN7: 00075 e9 80 00 00 00 jmp $LN1@stbi_zlib_ $LN2@stbi_zlib_: -; 4049 : a.zbuffer = (stbi_uc*)buffer; +; 4062 : a.zbuffer = (stbi_uc*)buffer; 0007a 48 8b 85 60 16 00 00 mov rax, QWORD PTR buffer$[rbp] 00081 48 89 45 10 mov QWORD PTR a$[rbp], rax -; 4050 : a.zbuffer_end = (stbi_uc*)buffer + len; +; 4063 : a.zbuffer_end = (stbi_uc*)buffer + len; 00085 48 63 85 68 16 00 00 movsxd rax, DWORD PTR len$[rbp] @@ -56335,7 +56355,7 @@ $LN2@stbi_zlib_: 00096 48 8b c1 mov rax, rcx 00099 48 89 45 18 mov QWORD PTR a$[rbp+8], rax -; 4051 : if (stbi__do_zlib(&a, p, 16384, 1, 0)) { +; 4064 : if (stbi__do_zlib(&a, p, 16384, 1, 0)) { 0009d c7 44 24 20 00 00 00 00 mov DWORD PTR [rsp+32], 0 @@ -56350,7 +56370,7 @@ $LN2@stbi_zlib_: 000c1 85 c0 test eax, eax 000c3 74 29 je SHORT $LN3@stbi_zlib_ -; 4052 : if (outlen) *outlen = (int)(a.zout - a.zout_start); +; 4065 : if (outlen) *outlen = (int)(a.zout - a.zout_start); 000c5 48 83 bd 70 16 00 00 00 cmp QWORD PTR outlen$[rbp], 0 @@ -56364,31 +56384,31 @@ $LN2@stbi_zlib_: 000e4 89 01 mov DWORD PTR [rcx], eax $LN5@stbi_zlib_: -; 4053 : return a.zout_start; +; 4066 : return a.zout_start; 000e6 48 8b 45 30 mov rax, QWORD PTR a$[rbp+32] 000ea eb 0e jmp SHORT $LN1@stbi_zlib_ -; 4054 : } +; 4067 : } 000ec eb 0c jmp SHORT $LN4@stbi_zlib_ $LN3@stbi_zlib_: -; 4055 : else { -; 4056 : STBI_FREE(a.zout_start); +; 4068 : else { +; 4069 : STBI_FREE(a.zout_start); 000ee 48 8b 4d 30 mov rcx, QWORD PTR a$[rbp+32] 000f2 ff 15 00 00 00 00 call QWORD PTR __imp_free -; 4057 : return NULL; +; 4070 : return NULL; 000f8 33 c0 xor eax, eax $LN4@stbi_zlib_: $LN1@stbi_zlib_: -; 4058 : } -; 4059 : } +; 4071 : } +; 4072 : } 000fa 48 8b f8 mov rdi, rax 000fd 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48] @@ -56419,7 +56439,7 @@ ibuffer$ = 5712 ilen$ = 5720 stbi_zlib_decode_buffer PROC ; COMDAT -; 4034 : { +; 4047 : { $LN5: 00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d @@ -56447,14 +56467,14 @@ $LN5: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00058 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4035 : stbi__zbuf a; -; 4036 : a.zbuffer = (stbi_uc*)ibuffer; +; 4048 : stbi__zbuf a; +; 4049 : a.zbuffer = (stbi_uc*)ibuffer; 0005d 48 8b 85 50 16 00 00 mov rax, QWORD PTR ibuffer$[rbp] 00064 48 89 45 10 mov QWORD PTR a$[rbp], rax -; 4037 : a.zbuffer_end = (stbi_uc*)ibuffer + ilen; +; 4050 : a.zbuffer_end = (stbi_uc*)ibuffer + ilen; 00068 48 63 85 58 16 00 00 movsxd rax, DWORD PTR ilen$[rbp] @@ -56464,7 +56484,7 @@ $LN5: 00079 48 8b c1 mov rax, rcx 0007c 48 89 45 18 mov QWORD PTR a$[rbp+8], rax -; 4038 : if (stbi__do_zlib(&a, obuffer, olen, 0, 1)) +; 4051 : if (stbi__do_zlib(&a, obuffer, olen, 0, 1)) 00080 c7 44 24 20 01 00 00 00 mov DWORD PTR [rsp+32], 1 @@ -56478,7 +56498,7 @@ $LN5: 000a2 85 c0 test eax, eax 000a4 74 12 je SHORT $LN2@stbi_zlib_ -; 4039 : return (int)(a.zout - a.zout_start); +; 4052 : return (int)(a.zout - a.zout_start); 000a6 48 8b 45 30 mov rax, QWORD PTR a$[rbp+32] 000aa 48 8b 4d 28 mov rcx, QWORD PTR a$[rbp+24] @@ -56488,14 +56508,14 @@ $LN5: 000b6 eb 05 jmp SHORT $LN3@stbi_zlib_ $LN2@stbi_zlib_: -; 4040 : else -; 4041 : return -1; +; 4053 : else +; 4054 : return -1; 000b8 b8 ff ff ff ff mov eax, -1 $LN3@stbi_zlib_: $LN1@stbi_zlib_: -; 4042 : } +; 4055 : } 000bd 48 8b f8 mov rdi, rax 000c0 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48] @@ -56523,7 +56543,7 @@ len$ = 232 outlen$ = 240 stbi_zlib_decode_malloc PROC ; COMDAT -; 4012 : { +; 4025 : { $LN3: 00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 @@ -56538,7 +56558,7 @@ $LN3: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00023 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4013 : return stbi_zlib_decode_malloc_guesssize(buffer, len, 16384, outlen); +; 4026 : return stbi_zlib_decode_malloc_guesssize(buffer, len, 16384, outlen); 00028 4c 8b 8d f0 00 00 00 mov r9, QWORD PTR outlen$[rbp] @@ -56550,7 +56570,7 @@ $LN3: 00 00 mov rcx, QWORD PTR buffer$[rbp] 00042 e8 00 00 00 00 call stbi_zlib_decode_malloc_guesssize -; 4014 : } +; 4027 : } 00047 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] @@ -56573,7 +56593,7 @@ outlen$ = 5752 parse_header$ = 5760 stbi_zlib_decode_malloc_guesssize_headerflag PROC ; COMDAT -; 4017 : { +; 4030 : { $LN7: 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 @@ -56601,8 +56621,8 @@ $LN7: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00058 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4018 : stbi__zbuf a; -; 4019 : char* p = (char*)stbi__malloc(initial_size); +; 4031 : stbi__zbuf a; +; 4032 : char* p = (char*)stbi__malloc(initial_size); 0005d 48 63 85 70 16 00 00 movsxd rax, DWORD PTR initial_size$[rbp] @@ -56611,7 +56631,7 @@ $LN7: 0006c 48 89 85 28 10 00 00 mov QWORD PTR p$[rbp], rax -; 4020 : if (p == NULL) return NULL; +; 4033 : if (p == NULL) return NULL; 00073 48 83 bd 28 10 00 00 00 cmp QWORD PTR p$[rbp], 0 @@ -56620,13 +56640,13 @@ $LN7: 0007f e9 83 00 00 00 jmp $LN1@stbi_zlib_ $LN2@stbi_zlib_: -; 4021 : a.zbuffer = (stbi_uc*)buffer; +; 4034 : a.zbuffer = (stbi_uc*)buffer; 00084 48 8b 85 60 16 00 00 mov rax, QWORD PTR buffer$[rbp] 0008b 48 89 45 10 mov QWORD PTR a$[rbp], rax -; 4022 : a.zbuffer_end = (stbi_uc*)buffer + len; +; 4035 : a.zbuffer_end = (stbi_uc*)buffer + len; 0008f 48 63 85 68 16 00 00 movsxd rax, DWORD PTR len$[rbp] @@ -56636,7 +56656,7 @@ $LN2@stbi_zlib_: 000a0 48 8b c1 mov rax, rcx 000a3 48 89 45 18 mov QWORD PTR a$[rbp+8], rax -; 4023 : if (stbi__do_zlib(&a, p, initial_size, 1, parse_header)) { +; 4036 : if (stbi__do_zlib(&a, p, initial_size, 1, parse_header)) { 000a7 8b 85 80 16 00 00 mov eax, DWORD PTR parse_header$[rbp] @@ -56652,7 +56672,7 @@ $LN2@stbi_zlib_: 000ce 85 c0 test eax, eax 000d0 74 29 je SHORT $LN3@stbi_zlib_ -; 4024 : if (outlen) *outlen = (int)(a.zout - a.zout_start); +; 4037 : if (outlen) *outlen = (int)(a.zout - a.zout_start); 000d2 48 83 bd 78 16 00 00 00 cmp QWORD PTR outlen$[rbp], 0 @@ -56666,31 +56686,31 @@ $LN2@stbi_zlib_: 000f1 89 01 mov DWORD PTR [rcx], eax $LN5@stbi_zlib_: -; 4025 : return a.zout_start; +; 4038 : return a.zout_start; 000f3 48 8b 45 30 mov rax, QWORD PTR a$[rbp+32] 000f7 eb 0e jmp SHORT $LN1@stbi_zlib_ -; 4026 : } +; 4039 : } 000f9 eb 0c jmp SHORT $LN4@stbi_zlib_ $LN3@stbi_zlib_: -; 4027 : else { -; 4028 : STBI_FREE(a.zout_start); +; 4040 : else { +; 4041 : STBI_FREE(a.zout_start); 000fb 48 8b 4d 30 mov rcx, QWORD PTR a$[rbp+32] 000ff ff 15 00 00 00 00 call QWORD PTR __imp_free -; 4029 : return NULL; +; 4042 : return NULL; 00105 33 c0 xor eax, eax $LN4@stbi_zlib_: $LN1@stbi_zlib_: -; 4030 : } -; 4031 : } +; 4043 : } +; 4044 : } 00107 48 8b f8 mov rdi, rax 0010a 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48] @@ -56722,7 +56742,7 @@ initial_size$ = 5744 outlen$ = 5752 stbi_zlib_decode_malloc_guesssize PROC ; COMDAT -; 3995 : { +; 4008 : { $LN7: 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 @@ -56750,8 +56770,8 @@ $LN7: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00058 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 3996 : stbi__zbuf a; -; 3997 : char* p = (char*)stbi__malloc(initial_size); +; 4009 : stbi__zbuf a; +; 4010 : char* p = (char*)stbi__malloc(initial_size); 0005d 48 63 85 70 16 00 00 movsxd rax, DWORD PTR initial_size$[rbp] @@ -56760,7 +56780,7 @@ $LN7: 0006c 48 89 85 28 10 00 00 mov QWORD PTR p$[rbp], rax -; 3998 : if (p == NULL) return NULL; +; 4011 : if (p == NULL) return NULL; 00073 48 83 bd 28 10 00 00 00 cmp QWORD PTR p$[rbp], 0 @@ -56769,13 +56789,13 @@ $LN7: 0007f e9 81 00 00 00 jmp $LN1@stbi_zlib_ $LN2@stbi_zlib_: -; 3999 : a.zbuffer = (stbi_uc*)buffer; +; 4012 : a.zbuffer = (stbi_uc*)buffer; 00084 48 8b 85 60 16 00 00 mov rax, QWORD PTR buffer$[rbp] 0008b 48 89 45 10 mov QWORD PTR a$[rbp], rax -; 4000 : a.zbuffer_end = (stbi_uc*)buffer + len; +; 4013 : a.zbuffer_end = (stbi_uc*)buffer + len; 0008f 48 63 85 68 16 00 00 movsxd rax, DWORD PTR len$[rbp] @@ -56785,7 +56805,7 @@ $LN2@stbi_zlib_: 000a0 48 8b c1 mov rax, rcx 000a3 48 89 45 18 mov QWORD PTR a$[rbp+8], rax -; 4001 : if (stbi__do_zlib(&a, p, initial_size, 1, 1)) { +; 4014 : if (stbi__do_zlib(&a, p, initial_size, 1, 1)) { 000a7 c7 44 24 20 01 00 00 00 mov DWORD PTR [rsp+32], 1 @@ -56800,7 +56820,7 @@ $LN2@stbi_zlib_: 000cc 85 c0 test eax, eax 000ce 74 29 je SHORT $LN3@stbi_zlib_ -; 4002 : if (outlen) *outlen = (int)(a.zout - a.zout_start); +; 4015 : if (outlen) *outlen = (int)(a.zout - a.zout_start); 000d0 48 83 bd 78 16 00 00 00 cmp QWORD PTR outlen$[rbp], 0 @@ -56814,31 +56834,31 @@ $LN2@stbi_zlib_: 000ef 89 01 mov DWORD PTR [rcx], eax $LN5@stbi_zlib_: -; 4003 : return a.zout_start; +; 4016 : return a.zout_start; 000f1 48 8b 45 30 mov rax, QWORD PTR a$[rbp+32] 000f5 eb 0e jmp SHORT $LN1@stbi_zlib_ -; 4004 : } +; 4017 : } 000f7 eb 0c jmp SHORT $LN4@stbi_zlib_ $LN3@stbi_zlib_: -; 4005 : else { -; 4006 : STBI_FREE(a.zout_start); +; 4018 : else { +; 4019 : STBI_FREE(a.zout_start); 000f9 48 8b 4d 30 mov rcx, QWORD PTR a$[rbp+32] 000fd ff 15 00 00 00 00 call QWORD PTR __imp_free -; 4007 : return NULL; +; 4020 : return NULL; 00103 33 c0 xor eax, eax $LN4@stbi_zlib_: $LN1@stbi_zlib_: -; 4008 : } -; 4009 : } +; 4021 : } +; 4022 : } 00105 48 8b f8 mov rdi, rax 00108 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48] @@ -56918,7 +56938,7 @@ _TEXT SEGMENT flag_true_if_should_convert$ = 224 stbi_convert_iphone_png_to_rgb_thread PROC ; COMDAT -; 4530 : { +; 4543 : { $LN3: 00000 89 4c 24 08 mov DWORD PTR [rsp+8], ecx @@ -56931,7 +56951,7 @@ $LN3: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00019 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4531 : stbi__de_iphone_flag_local = flag_true_if_should_convert; +; 4544 : stbi__de_iphone_flag_local = flag_true_if_should_convert; 0001e b8 00 00 00 00 mov eax, OFFSET FLAT:stbi__de_iphone_flag_local 00023 8b c0 mov eax, eax @@ -56944,7 +56964,7 @@ $LN3: 00 mov edx, DWORD PTR flag_true_if_should_convert$[rbp] 0003e 89 14 08 mov DWORD PTR [rax+rcx], edx -; 4532 : stbi__de_iphone_flag_set = 1; +; 4545 : stbi__de_iphone_flag_set = 1; 00041 b8 00 00 00 00 mov eax, OFFSET FLAT:stbi__de_iphone_flag_set 00046 8b c0 mov eax, eax @@ -56956,7 +56976,7 @@ $LN3: 0005b c7 04 08 01 00 00 00 mov DWORD PTR [rax+rcx], 1 -; 4533 : } +; 4546 : } 00062 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] @@ -56972,7 +56992,7 @@ _TEXT SEGMENT flag_true_if_should_unpremultiply$ = 224 stbi_set_unpremultiply_on_load_thread PROC ; COMDAT -; 4524 : { +; 4537 : { $LN3: 00000 89 4c 24 08 mov DWORD PTR [rsp+8], ecx @@ -56985,7 +57005,7 @@ $LN3: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00019 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4525 : stbi__unpremultiply_on_load_local = flag_true_if_should_unpremultiply; +; 4538 : stbi__unpremultiply_on_load_local = flag_true_if_should_unpremultiply; 0001e b8 00 00 00 00 mov eax, OFFSET FLAT:stbi__unpremultiply_on_load_local 00023 8b c0 mov eax, eax @@ -56998,7 +57018,7 @@ $LN3: 00 mov edx, DWORD PTR flag_true_if_should_unpremultiply$[rbp] 0003e 89 14 08 mov DWORD PTR [rax+rcx], edx -; 4526 : stbi__unpremultiply_on_load_set = 1; +; 4539 : stbi__unpremultiply_on_load_set = 1; 00041 b8 00 00 00 00 mov eax, OFFSET FLAT:stbi__unpremultiply_on_load_set 00046 8b c0 mov eax, eax @@ -57010,7 +57030,7 @@ $LN3: 0005b c7 04 08 01 00 00 00 mov DWORD PTR [rax+rcx], 1 -; 4527 : } +; 4540 : } 00062 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] @@ -57062,7 +57082,7 @@ _TEXT SEGMENT flag_true_if_should_convert$ = 224 stbi_convert_iphone_png_to_rgb PROC ; COMDAT -; 4512 : { +; 4525 : { $LN3: 00000 89 4c 24 08 mov DWORD PTR [rsp+8], ecx @@ -57075,14 +57095,14 @@ $LN3: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00019 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4513 : stbi__de_iphone_flag_global = flag_true_if_should_convert; +; 4526 : stbi__de_iphone_flag_global = flag_true_if_should_convert; 0001e 8b 85 e0 00 00 00 mov eax, DWORD PTR flag_true_if_should_convert$[rbp] 00024 89 05 00 00 00 00 mov DWORD PTR stbi__de_iphone_flag_global, eax -; 4514 : } +; 4527 : } 0002a 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] @@ -57098,7 +57118,7 @@ _TEXT SEGMENT flag_true_if_should_unpremultiply$ = 224 stbi_set_unpremultiply_on_load PROC ; COMDAT -; 4507 : { +; 4520 : { $LN3: 00000 89 4c 24 08 mov DWORD PTR [rsp+8], ecx @@ -57111,14 +57131,14 @@ $LN3: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00019 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 4508 : stbi__unpremultiply_on_load_global = flag_true_if_should_unpremultiply; +; 4521 : stbi__unpremultiply_on_load_global = flag_true_if_should_unpremultiply; 0001e 8b 85 e0 00 00 00 mov eax, DWORD PTR flag_true_if_should_unpremultiply$[rbp] 00024 89 05 00 00 00 00 mov DWORD PTR stbi__unpremultiply_on_load_global, eax -; 4509 : } +; 4522 : } 0002a 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] @@ -57138,7 +57158,7 @@ __$ArrayPad$ = 504 f$ = 544 stbi_is_16_bit_from_file PROC ; COMDAT -; 7291 : { +; 7304 : { $LN3: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx @@ -57162,9 +57182,9 @@ $LN3: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00044 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 7292 : int r; -; 7293 : stbi__context s; -; 7294 : long pos = ftell(f); +; 7305 : int r; +; 7306 : stbi__context s; +; 7307 : long pos = ftell(f); 00049 48 8b 8d 20 02 00 00 mov rcx, QWORD PTR f$[rbp] @@ -57173,20 +57193,20 @@ $LN3: 00056 89 85 24 01 00 00 mov DWORD PTR pos$[rbp], eax -; 7295 : stbi__start_file(&s, f); +; 7308 : stbi__start_file(&s, f); 0005c 48 8b 95 20 02 00 00 mov rdx, QWORD PTR f$[rbp] 00063 48 8d 4d 30 lea rcx, QWORD PTR s$[rbp] 00067 e8 00 00 00 00 call stbi__start_file -; 7296 : r = stbi__is_16_main(&s); +; 7309 : r = stbi__is_16_main(&s); 0006c 48 8d 4d 30 lea rcx, QWORD PTR s$[rbp] 00070 e8 00 00 00 00 call stbi__is_16_main 00075 89 45 04 mov DWORD PTR r$[rbp], eax -; 7297 : fseek(f, pos, SEEK_SET); +; 7310 : fseek(f, pos, SEEK_SET); 00078 45 33 c0 xor r8d, r8d 0007b 8b 95 24 01 00 @@ -57196,11 +57216,11 @@ $LN3: 00088 ff 15 00 00 00 00 call QWORD PTR __imp_fseek -; 7298 : return r; +; 7311 : return r; 0008e 8b 45 04 mov eax, DWORD PTR r$[rbp] -; 7299 : } +; 7312 : } 00091 8b f8 mov edi, eax 00093 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] @@ -57228,7 +57248,7 @@ result$ = 36 filename$ = 288 stbi_is_16_bit PROC ; COMDAT -; 7281 : { +; 7294 : { $LN4: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx @@ -57241,7 +57261,7 @@ $LN4: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 7282 : FILE* f = stbi__fopen(filename, "rb"); +; 7295 : FILE* f = stbi__fopen(filename, "rb"); 0001f 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_02JDPG@rb@ @@ -57250,8 +57270,8 @@ $LN4: 0002d e8 00 00 00 00 call stbi__fopen 00032 48 89 45 08 mov QWORD PTR f$[rbp], rax -; 7283 : int result; -; 7284 : if (!f) return stbi__err("can't fopen", "Unable to open file"); +; 7296 : int result; +; 7297 : if (!f) return stbi__err("can't fopen", "Unable to open file"); 00036 48 83 7d 08 00 cmp QWORD PTR f$[rbp], 0 0003b 75 0e jne SHORT $LN2@stbi_is_16 @@ -57261,24 +57281,24 @@ $LN4: 00049 eb 19 jmp SHORT $LN1@stbi_is_16 $LN2@stbi_is_16: -; 7285 : result = stbi_is_16_bit_from_file(f); +; 7298 : result = stbi_is_16_bit_from_file(f); 0004b 48 8b 4d 08 mov rcx, QWORD PTR f$[rbp] 0004f e8 00 00 00 00 call stbi_is_16_bit_from_file 00054 89 45 24 mov DWORD PTR result$[rbp], eax -; 7286 : fclose(f); +; 7299 : fclose(f); 00057 48 8b 4d 08 mov rcx, QWORD PTR f$[rbp] 0005b ff 15 00 00 00 00 call QWORD PTR __imp_fclose -; 7287 : return result; +; 7300 : return result; 00061 8b 45 24 mov eax, DWORD PTR result$[rbp] $LN1@stbi_is_16: -; 7288 : } +; 7301 : } 00064 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] @@ -57301,7 +57321,7 @@ y$ = 560 comp$ = 568 stbi_info_from_file PROC ; COMDAT -; 7270 : { +; 7283 : { $LN3: 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 @@ -57328,9 +57348,9 @@ $LN3: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 7271 : int r; -; 7272 : stbi__context s; -; 7273 : long pos = ftell(f); +; 7284 : int r; +; 7285 : stbi__context s; +; 7286 : long pos = ftell(f); 00058 48 8b 8d 20 02 00 00 mov rcx, QWORD PTR f$[rbp] @@ -57339,14 +57359,14 @@ $LN3: 00065 89 85 24 01 00 00 mov DWORD PTR pos$[rbp], eax -; 7274 : stbi__start_file(&s, f); +; 7287 : stbi__start_file(&s, f); 0006b 48 8b 95 20 02 00 00 mov rdx, QWORD PTR f$[rbp] 00072 48 8d 4d 30 lea rcx, QWORD PTR s$[rbp] 00076 e8 00 00 00 00 call stbi__start_file -; 7275 : r = stbi__info_main(&s, x, y, comp); +; 7288 : r = stbi__info_main(&s, x, y, comp); 0007b 4c 8b 8d 38 02 00 00 mov r9, QWORD PTR comp$[rbp] @@ -57358,7 +57378,7 @@ $LN3: 00094 e8 00 00 00 00 call stbi__info_main 00099 89 45 04 mov DWORD PTR r$[rbp], eax -; 7276 : fseek(f, pos, SEEK_SET); +; 7289 : fseek(f, pos, SEEK_SET); 0009c 45 33 c0 xor r8d, r8d 0009f 8b 95 24 01 00 @@ -57368,11 +57388,11 @@ $LN3: 000ac ff 15 00 00 00 00 call QWORD PTR __imp_fseek -; 7277 : return r; +; 7290 : return r; 000b2 8b 45 04 mov eax, DWORD PTR r$[rbp] -; 7278 : } +; 7291 : } 000b5 8b f8 mov edi, eax 000b7 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] @@ -57403,7 +57423,7 @@ y$ = 304 comp$ = 312 stbi_info PROC ; COMDAT -; 7260 : { +; 7273 : { $LN4: 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 @@ -57419,7 +57439,7 @@ $LN4: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 7261 : FILE* f = stbi__fopen(filename, "rb"); +; 7274 : FILE* f = stbi__fopen(filename, "rb"); 0002e 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_02JDPG@rb@ @@ -57428,8 +57448,8 @@ $LN4: 0003c e8 00 00 00 00 call stbi__fopen 00041 48 89 45 08 mov QWORD PTR f$[rbp], rax -; 7262 : int result; -; 7263 : if (!f) return stbi__err("can't fopen", "Unable to open file"); +; 7275 : int result; +; 7276 : if (!f) return stbi__err("can't fopen", "Unable to open file"); 00045 48 83 7d 08 00 cmp QWORD PTR f$[rbp], 0 0004a 75 0e jne SHORT $LN2@stbi_info @@ -57439,7 +57459,7 @@ $LN4: 00058 eb 2e jmp SHORT $LN1@stbi_info $LN2@stbi_info: -; 7264 : result = stbi_info_from_file(f, x, y, comp); +; 7277 : result = stbi_info_from_file(f, x, y, comp); 0005a 4c 8b 8d 38 01 00 00 mov r9, QWORD PTR comp$[rbp] @@ -57451,18 +57471,18 @@ $LN2@stbi_info: 00073 e8 00 00 00 00 call stbi_info_from_file 00078 89 45 24 mov DWORD PTR result$[rbp], eax -; 7265 : fclose(f); +; 7278 : fclose(f); 0007b 48 8b 4d 08 mov rcx, QWORD PTR f$[rbp] 0007f ff 15 00 00 00 00 call QWORD PTR __imp_fclose -; 7266 : return result; +; 7279 : return result; 00085 8b 45 24 mov eax, DWORD PTR result$[rbp] $LN1@stbi_info: -; 7267 : } +; 7280 : } 00088 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] @@ -57481,7 +57501,7 @@ c$ = 480 user$ = 488 stbi_is_16_bit_from_callbacks PROC ; COMDAT -; 7324 : { +; 7337 : { $LN3: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx @@ -57506,8 +57526,8 @@ $LN3: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00049 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 7325 : stbi__context s; -; 7326 : stbi__start_callbacks(&s, (stbi_io_callbacks*)c, user); +; 7338 : stbi__context s; +; 7339 : stbi__start_callbacks(&s, (stbi_io_callbacks*)c, user); 0004e 4c 8b 85 e8 01 00 00 mov r8, QWORD PTR user$[rbp] @@ -57516,12 +57536,12 @@ $LN3: 0005c 48 8d 4d 10 lea rcx, QWORD PTR s$[rbp] 00060 e8 00 00 00 00 call stbi__start_callbacks -; 7327 : return stbi__is_16_main(&s); +; 7340 : return stbi__is_16_main(&s); 00065 48 8d 4d 10 lea rcx, QWORD PTR s$[rbp] 00069 e8 00 00 00 00 call stbi__is_16_main -; 7328 : } +; 7341 : } 0006e 48 8b f8 mov rdi, rax 00071 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] @@ -57550,7 +57570,7 @@ buffer$ = 480 len$ = 488 stbi_is_16_bit_from_memory PROC ; COMDAT -; 7317 : { +; 7330 : { $LN3: 00000 89 54 24 10 mov DWORD PTR [rsp+16], edx @@ -57575,8 +57595,8 @@ $LN3: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00048 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 7318 : stbi__context s; -; 7319 : stbi__start_mem(&s, buffer, len); +; 7331 : stbi__context s; +; 7332 : stbi__start_mem(&s, buffer, len); 0004d 44 8b 85 e8 01 00 00 mov r8d, DWORD PTR len$[rbp] @@ -57585,12 +57605,12 @@ $LN3: 0005b 48 8d 4d 10 lea rcx, QWORD PTR s$[rbp] 0005f e8 00 00 00 00 call stbi__start_mem -; 7320 : return stbi__is_16_main(&s); +; 7333 : return stbi__is_16_main(&s); 00064 48 8d 4d 10 lea rcx, QWORD PTR s$[rbp] 00068 e8 00 00 00 00 call stbi__is_16_main -; 7321 : } +; 7334 : } 0006d 48 8b f8 mov rdi, rax 00070 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] @@ -57622,7 +57642,7 @@ y$ = 504 comp$ = 512 stbi_info_from_callbacks PROC ; COMDAT -; 7310 : { +; 7323 : { $LN3: 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 @@ -57649,8 +57669,8 @@ $LN3: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 7311 : stbi__context s; -; 7312 : stbi__start_callbacks(&s, (stbi_io_callbacks*)c, user); +; 7324 : stbi__context s; +; 7325 : stbi__start_callbacks(&s, (stbi_io_callbacks*)c, user); 00058 4c 8b 85 e8 01 00 00 mov r8, QWORD PTR user$[rbp] @@ -57659,7 +57679,7 @@ $LN3: 00066 48 8d 4d 10 lea rcx, QWORD PTR s$[rbp] 0006a e8 00 00 00 00 call stbi__start_callbacks -; 7313 : return stbi__info_main(&s, x, y, comp); +; 7326 : return stbi__info_main(&s, x, y, comp); 0006f 4c 8b 8d 00 02 00 00 mov r9, QWORD PTR comp$[rbp] @@ -57670,7 +57690,7 @@ $LN3: 00084 48 8d 4d 10 lea rcx, QWORD PTR s$[rbp] 00088 e8 00 00 00 00 call stbi__info_main -; 7314 : } +; 7327 : } 0008d 48 8b f8 mov rdi, rax 00090 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] @@ -57702,7 +57722,7 @@ y$ = 504 comp$ = 512 stbi_info_from_memory PROC ; COMDAT -; 7303 : { +; 7316 : { $LN3: 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 @@ -57729,8 +57749,8 @@ $LN3: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00052 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 7304 : stbi__context s; -; 7305 : stbi__start_mem(&s, buffer, len); +; 7317 : stbi__context s; +; 7318 : stbi__start_mem(&s, buffer, len); 00057 44 8b 85 e8 01 00 00 mov r8d, DWORD PTR len$[rbp] @@ -57739,7 +57759,7 @@ $LN3: 00065 48 8d 4d 10 lea rcx, QWORD PTR s$[rbp] 00069 e8 00 00 00 00 call stbi__start_mem -; 7306 : return stbi__info_main(&s, x, y, comp); +; 7319 : return stbi__info_main(&s, x, y, comp); 0006e 4c 8b 8d 00 02 00 00 mov r9, QWORD PTR comp$[rbp] @@ -57750,7 +57770,7 @@ $LN3: 00083 48 8d 4d 10 lea rcx, QWORD PTR s$[rbp] 00087 e8 00 00 00 00 call stbi__info_main -; 7307 : } +; 7320 : } 0008c 48 8b f8 mov rdi, rax 0008f 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] @@ -57854,7 +57874,7 @@ __$ArrayPad$ = 504 f$ = 544 stbi_is_hdr_from_file PROC ; COMDAT -; 998 : { +; 1011 : { $LN3: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx @@ -57878,8 +57898,8 @@ $LN3: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00044 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 999 : #ifndef STBI_NO_HDR -; 1000 : long pos = ftell(f); +; 1012 : #ifndef STBI_NO_HDR +; 1013 : long pos = ftell(f); 00049 48 8b 8d 20 02 00 00 mov rcx, QWORD PTR f$[rbp] @@ -57887,22 +57907,22 @@ $LN3: 00 call QWORD PTR __imp_ftell 00056 89 45 04 mov DWORD PTR pos$[rbp], eax -; 1001 : int res; -; 1002 : stbi__context s; -; 1003 : stbi__start_file(&s, f); +; 1014 : int res; +; 1015 : stbi__context s; +; 1016 : stbi__start_file(&s, f); 00059 48 8b 95 20 02 00 00 mov rdx, QWORD PTR f$[rbp] 00060 48 8d 4d 50 lea rcx, QWORD PTR s$[rbp] 00064 e8 00 00 00 00 call stbi__start_file -; 1004 : res = stbi__hdr_test(&s); +; 1017 : res = stbi__hdr_test(&s); 00069 48 8d 4d 50 lea rcx, QWORD PTR s$[rbp] 0006d e8 00 00 00 00 call stbi__hdr_test 00072 89 45 24 mov DWORD PTR res$[rbp], eax -; 1005 : fseek(f, pos, SEEK_SET); +; 1018 : fseek(f, pos, SEEK_SET); 00075 45 33 c0 xor r8d, r8d 00078 8b 55 04 mov edx, DWORD PTR pos$[rbp] @@ -57911,15 +57931,15 @@ $LN3: 00082 ff 15 00 00 00 00 call QWORD PTR __imp_fseek -; 1006 : return res; +; 1019 : return res; 00088 8b 45 24 mov eax, DWORD PTR res$[rbp] -; 1007 : #else -; 1008 : STBI_NOTUSED(f); -; 1009 : return 0; -; 1010 : #endif -; 1011 : } +; 1020 : #else +; 1021 : STBI_NOTUSED(f); +; 1022 : return 0; +; 1023 : #endif +; 1024 : } 0008b 8b f8 mov edi, eax 0008d 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] @@ -57947,7 +57967,7 @@ result$ = 36 filename$ = 288 stbi_is_hdr PROC ; COMDAT -; 987 : { +; 1000 : { $LN4: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx @@ -57960,7 +57980,7 @@ $LN4: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 988 : FILE* f = stbi__fopen(filename, "rb"); +; 1001 : FILE* f = stbi__fopen(filename, "rb"); 0001f 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_02JDPG@rb@ @@ -57969,35 +57989,35 @@ $LN4: 0002d e8 00 00 00 00 call stbi__fopen 00032 48 89 45 08 mov QWORD PTR f$[rbp], rax -; 989 : int result = 0; +; 1002 : int result = 0; 00036 c7 45 24 00 00 00 00 mov DWORD PTR result$[rbp], 0 -; 990 : if (f) { +; 1003 : if (f) { 0003d 48 83 7d 08 00 cmp QWORD PTR f$[rbp], 0 00042 74 16 je SHORT $LN2@stbi_is_hd -; 991 : result = stbi_is_hdr_from_file(f); +; 1004 : result = stbi_is_hdr_from_file(f); 00044 48 8b 4d 08 mov rcx, QWORD PTR f$[rbp] 00048 e8 00 00 00 00 call stbi_is_hdr_from_file 0004d 89 45 24 mov DWORD PTR result$[rbp], eax -; 992 : fclose(f); +; 1005 : fclose(f); 00050 48 8b 4d 08 mov rcx, QWORD PTR f$[rbp] 00054 ff 15 00 00 00 00 call QWORD PTR __imp_fclose $LN2@stbi_is_hd: -; 993 : } -; 994 : return result; +; 1006 : } +; 1007 : return result; 0005a 8b 45 24 mov eax, DWORD PTR result$[rbp] -; 995 : } +; 1008 : } 0005d 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] @@ -58016,7 +58036,7 @@ buffer$ = 480 len$ = 488 stbi_is_hdr_from_memory PROC ; COMDAT -; 973 : { +; 986 : { $LN3: 00000 89 54 24 10 mov DWORD PTR [rsp+16], edx @@ -58041,9 +58061,9 @@ $LN3: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00048 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 974 : #ifndef STBI_NO_HDR -; 975 : stbi__context s; -; 976 : stbi__start_mem(&s, buffer, len); +; 987 : #ifndef STBI_NO_HDR +; 988 : stbi__context s; +; 989 : stbi__start_mem(&s, buffer, len); 0004d 44 8b 85 e8 01 00 00 mov r8d, DWORD PTR len$[rbp] @@ -58052,17 +58072,17 @@ $LN3: 0005b 48 8d 4d 10 lea rcx, QWORD PTR s$[rbp] 0005f e8 00 00 00 00 call stbi__start_mem -; 977 : return stbi__hdr_test(&s); +; 990 : return stbi__hdr_test(&s); 00064 48 8d 4d 10 lea rcx, QWORD PTR s$[rbp] 00068 e8 00 00 00 00 call stbi__hdr_test -; 978 : #else -; 979 : STBI_NOTUSED(buffer); -; 980 : STBI_NOTUSED(len); -; 981 : return 0; -; 982 : #endif -; 983 : } +; 991 : #else +; 992 : STBI_NOTUSED(buffer); +; 993 : STBI_NOTUSED(len); +; 994 : return 0; +; 995 : #endif +; 996 : } 0006d 48 8b f8 mov rdi, rax 00070 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] @@ -58091,7 +58111,7 @@ clbk$ = 480 user$ = 488 stbi_is_hdr_from_callbacks PROC ; COMDAT -; 1015 : { +; 1028 : { $LN3: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx @@ -58116,9 +58136,9 @@ $LN3: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00049 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 1016 : #ifndef STBI_NO_HDR -; 1017 : stbi__context s; -; 1018 : stbi__start_callbacks(&s, (stbi_io_callbacks*)clbk, user); +; 1029 : #ifndef STBI_NO_HDR +; 1030 : stbi__context s; +; 1031 : stbi__start_callbacks(&s, (stbi_io_callbacks*)clbk, user); 0004e 4c 8b 85 e8 01 00 00 mov r8, QWORD PTR user$[rbp] @@ -58127,17 +58147,17 @@ $LN3: 0005c 48 8d 4d 10 lea rcx, QWORD PTR s$[rbp] 00060 e8 00 00 00 00 call stbi__start_callbacks -; 1019 : return stbi__hdr_test(&s); +; 1032 : return stbi__hdr_test(&s); 00065 48 8d 4d 10 lea rcx, QWORD PTR s$[rbp] 00069 e8 00 00 00 00 call stbi__hdr_test -; 1020 : #else -; 1021 : STBI_NOTUSED(clbk); -; 1022 : STBI_NOTUSED(user); -; 1023 : return 0; -; 1024 : #endif -; 1025 : } +; 1033 : #else +; 1034 : STBI_NOTUSED(clbk); +; 1035 : STBI_NOTUSED(user); +; 1036 : return 0; +; 1037 : #endif +; 1038 : } 0006e 48 8b f8 mov rdi, rax 00071 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] @@ -58163,7 +58183,7 @@ _TEXT SEGMENT scale$ = 224 stbi_ldr_to_hdr_scale PROC ; COMDAT -; 1031 : STBIDEF void stbi_ldr_to_hdr_scale(float scale) { stbi__l2h_scale = scale; } +; 1044 : STBIDEF void stbi_ldr_to_hdr_scale(float scale) { stbi__l2h_scale = scale; } $LN3: 00000 f3 0f 11 44 24 @@ -58194,7 +58214,7 @@ _TEXT SEGMENT gamma$ = 224 stbi_ldr_to_hdr_gamma PROC ; COMDAT -; 1030 : STBIDEF void stbi_ldr_to_hdr_gamma(float gamma) { stbi__l2h_gamma = gamma; } +; 1043 : STBIDEF void stbi_ldr_to_hdr_gamma(float gamma) { stbi__l2h_gamma = gamma; } $LN3: 00000 f3 0f 11 44 24 @@ -58225,7 +58245,7 @@ _TEXT SEGMENT scale$ = 224 stbi_hdr_to_ldr_scale PROC ; COMDAT -; 1037 : STBIDEF void stbi_hdr_to_ldr_scale(float scale) { stbi__h2l_scale_i = 1 / scale; } +; 1050 : STBIDEF void stbi_hdr_to_ldr_scale(float scale) { stbi__h2l_scale_i = 1 / scale; } $LN3: 00000 f3 0f 11 44 24 @@ -58258,7 +58278,7 @@ _TEXT SEGMENT gamma$ = 224 stbi_hdr_to_ldr_gamma PROC ; COMDAT -; 1036 : STBIDEF void stbi_hdr_to_ldr_gamma(float gamma) { stbi__h2l_gamma_i = 1 / gamma; } +; 1049 : STBIDEF void stbi_hdr_to_ldr_gamma(float gamma) { stbi__h2l_gamma_i = 1 / gamma; } $LN3: 00000 f3 0f 11 44 24 @@ -58297,7 +58317,7 @@ comp$ = 504 req_comp$ = 512 stbi_loadf_from_file PROC ; COMDAT -; 959 : { +; 972 : { $LN3: 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 @@ -58324,15 +58344,15 @@ $LN3: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 960 : stbi__context s; -; 961 : stbi__start_file(&s, f); +; 973 : stbi__context s; +; 974 : stbi__start_file(&s, f); 00058 48 8b 95 e0 01 00 00 mov rdx, QWORD PTR f$[rbp] 0005f 48 8d 4d 10 lea rcx, QWORD PTR s$[rbp] 00063 e8 00 00 00 00 call stbi__start_file -; 962 : return stbi__loadf_main(&s, x, y, comp, req_comp); +; 975 : return stbi__loadf_main(&s, x, y, comp, req_comp); 00068 8b 85 00 02 00 00 mov eax, DWORD PTR req_comp$[rbp] @@ -58346,7 +58366,7 @@ $LN3: 00087 48 8d 4d 10 lea rcx, QWORD PTR s$[rbp] 0008b e8 00 00 00 00 call stbi__loadf_main -; 963 : } +; 976 : } 00090 48 8b f8 mov rdi, rax 00093 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48] @@ -58379,7 +58399,7 @@ comp$ = 312 req_comp$ = 320 stbi_loadf PROC ; COMDAT -; 949 : { +; 962 : { $LN6: 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 @@ -58395,8 +58415,8 @@ $LN6: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 950 : float* result; -; 951 : FILE* f = stbi__fopen(filename, "rb"); +; 963 : float* result; +; 964 : FILE* f = stbi__fopen(filename, "rb"); 0002e 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_02JDPG@rb@ @@ -58405,7 +58425,7 @@ $LN6: 0003c e8 00 00 00 00 call stbi__fopen 00041 48 89 45 28 mov QWORD PTR f$[rbp], rax -; 952 : if (!f) return stbi__errpf("can't fopen", "Unable to open file"); +; 965 : if (!f) return stbi__errpf("can't fopen", "Unable to open file"); 00045 48 83 7d 28 00 cmp QWORD PTR f$[rbp], 0 0004a 75 31 jne SHORT $LN2@stbi_loadf @@ -58428,7 +58448,7 @@ $LN5@stbi_loadf: 0007b eb 3a jmp SHORT $LN1@stbi_loadf $LN2@stbi_loadf: -; 953 : result = stbi_loadf_from_file(f, x, y, comp, req_comp); +; 966 : result = stbi_loadf_from_file(f, x, y, comp, req_comp); 0007d 8b 85 40 01 00 00 mov eax, DWORD PTR req_comp$[rbp] @@ -58443,18 +58463,18 @@ $LN2@stbi_loadf: 000a0 e8 00 00 00 00 call stbi_loadf_from_file 000a5 48 89 45 08 mov QWORD PTR result$[rbp], rax -; 954 : fclose(f); +; 967 : fclose(f); 000a9 48 8b 4d 28 mov rcx, QWORD PTR f$[rbp] 000ad ff 15 00 00 00 00 call QWORD PTR __imp_fclose -; 955 : return result; +; 968 : return result; 000b3 48 8b 45 08 mov rax, QWORD PTR result$[rbp] $LN1@stbi_loadf: -; 956 : } +; 969 : } 000b7 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] @@ -58477,7 +58497,7 @@ comp$ = 512 req_comp$ = 520 stbi_loadf_from_callbacks PROC ; COMDAT -; 941 : { +; 954 : { $LN3: 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 @@ -58504,8 +58524,8 @@ $LN3: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 942 : stbi__context s; -; 943 : stbi__start_callbacks(&s, (stbi_io_callbacks*)clbk, user); +; 955 : stbi__context s; +; 956 : stbi__start_callbacks(&s, (stbi_io_callbacks*)clbk, user); 00058 4c 8b 85 e8 01 00 00 mov r8, QWORD PTR user$[rbp] @@ -58514,7 +58534,7 @@ $LN3: 00066 48 8d 4d 10 lea rcx, QWORD PTR s$[rbp] 0006a e8 00 00 00 00 call stbi__start_callbacks -; 944 : return stbi__loadf_main(&s, x, y, comp, req_comp); +; 957 : return stbi__loadf_main(&s, x, y, comp, req_comp); 0006f 8b 85 08 02 00 00 mov eax, DWORD PTR req_comp$[rbp] @@ -58528,7 +58548,7 @@ $LN3: 0008e 48 8d 4d 10 lea rcx, QWORD PTR s$[rbp] 00092 e8 00 00 00 00 call stbi__loadf_main -; 945 : } +; 958 : } 00097 48 8b f8 mov rdi, rax 0009a 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48] @@ -58561,7 +58581,7 @@ comp$ = 512 req_comp$ = 520 stbi_loadf_from_memory PROC ; COMDAT -; 934 : { +; 947 : { $LN3: 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 @@ -58588,8 +58608,8 @@ $LN3: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00052 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 935 : stbi__context s; -; 936 : stbi__start_mem(&s, buffer, len); +; 948 : stbi__context s; +; 949 : stbi__start_mem(&s, buffer, len); 00057 44 8b 85 e8 01 00 00 mov r8d, DWORD PTR len$[rbp] @@ -58598,7 +58618,7 @@ $LN3: 00065 48 8d 4d 10 lea rcx, QWORD PTR s$[rbp] 00069 e8 00 00 00 00 call stbi__start_mem -; 937 : return stbi__loadf_main(&s, x, y, comp, req_comp); +; 950 : return stbi__loadf_main(&s, x, y, comp, req_comp); 0006e 8b 85 08 02 00 00 mov eax, DWORD PTR req_comp$[rbp] @@ -58612,7 +58632,7 @@ $LN3: 0008d 48 8d 4d 10 lea rcx, QWORD PTR s$[rbp] 00091 e8 00 00 00 00 call stbi__loadf_main -; 938 : } +; 951 : } 00096 48 8b f8 mov rdi, rax 00099 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48] @@ -58645,7 +58665,7 @@ comp$ = 536 req_comp$ = 544 stbi_load_from_file_16 PROC ; COMDAT -; 845 : { +; 858 : { $LN4: 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 @@ -58672,16 +58692,16 @@ $LN4: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 846 : stbi__uint16* result; -; 847 : stbi__context s; -; 848 : stbi__start_file(&s, f); +; 859 : stbi__uint16* result; +; 860 : stbi__context s; +; 861 : stbi__start_file(&s, f); 00058 48 8b 95 00 02 00 00 mov rdx, QWORD PTR f$[rbp] 0005f 48 8d 4d 30 lea rcx, QWORD PTR s$[rbp] 00063 e8 00 00 00 00 call stbi__start_file -; 849 : result = stbi__load_and_postprocess_16bit(&s, x, y, comp, req_comp); +; 862 : result = stbi__load_and_postprocess_16bit(&s, x, y, comp, req_comp); 00068 8b 85 20 02 00 00 mov eax, DWORD PTR req_comp$[rbp] @@ -58696,13 +58716,13 @@ $LN4: 0008b e8 00 00 00 00 call stbi__load_and_postprocess_16bit 00090 48 89 45 08 mov QWORD PTR result$[rbp], rax -; 850 : if (result) { +; 863 : if (result) { 00094 48 83 7d 08 00 cmp QWORD PTR result$[rbp], 0 00099 74 2b je SHORT $LN2@stbi_load_ -; 851 : // need to 'unget' all the characters in the IO buffer -; 852 : fseek(f, -(int)(s.img_buffer_end - s.img_buffer), SEEK_CUR); +; 864 : // need to 'unget' all the characters in the IO buffer +; 865 : fseek(f, -(int)(s.img_buffer_end - s.img_buffer), SEEK_CUR); 0009b 48 8b 85 f0 00 00 00 mov rax, QWORD PTR s$[rbp+192] @@ -58720,12 +58740,12 @@ $LN4: 00 call QWORD PTR __imp_fseek $LN2@stbi_load_: -; 853 : } -; 854 : return result; +; 866 : } +; 867 : return result; 000c6 48 8b 45 08 mov rax, QWORD PTR result$[rbp] -; 855 : } +; 868 : } 000ca 48 8b f8 mov rdi, rax 000cd 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48] @@ -58758,7 +58778,7 @@ comp$ = 312 req_comp$ = 320 stbi_load_16 PROC ; COMDAT -; 858 : { +; 871 : { $LN6: 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 @@ -58774,7 +58794,7 @@ $LN6: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 859 : FILE* f = stbi__fopen(filename, "rb"); +; 872 : FILE* f = stbi__fopen(filename, "rb"); 0002e 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_02JDPG@rb@ @@ -58783,8 +58803,8 @@ $LN6: 0003c e8 00 00 00 00 call stbi__fopen 00041 48 89 45 08 mov QWORD PTR f$[rbp], rax -; 860 : stbi__uint16* result; -; 861 : if (!f) return (stbi_us*)stbi__errpuc("can't fopen", "Unable to open file"); +; 873 : stbi__uint16* result; +; 874 : if (!f) return (stbi_us*)stbi__errpuc("can't fopen", "Unable to open file"); 00045 48 83 7d 08 00 cmp QWORD PTR f$[rbp], 0 0004a 75 31 jne SHORT $LN2@stbi_load_ @@ -58807,7 +58827,7 @@ $LN5@stbi_load_: 0007b eb 3a jmp SHORT $LN1@stbi_load_ $LN2@stbi_load_: -; 862 : result = stbi_load_from_file_16(f, x, y, comp, req_comp); +; 875 : result = stbi_load_from_file_16(f, x, y, comp, req_comp); 0007d 8b 85 40 01 00 00 mov eax, DWORD PTR req_comp$[rbp] @@ -58822,18 +58842,18 @@ $LN2@stbi_load_: 000a0 e8 00 00 00 00 call stbi_load_from_file_16 000a5 48 89 45 28 mov QWORD PTR result$[rbp], rax -; 863 : fclose(f); +; 876 : fclose(f); 000a9 48 8b 4d 08 mov rcx, QWORD PTR f$[rbp] 000ad ff 15 00 00 00 00 call QWORD PTR __imp_fclose -; 864 : return result; +; 877 : return result; 000b3 48 8b 45 28 mov rax, QWORD PTR result$[rbp] $LN1@stbi_load_: -; 865 : } +; 878 : } 000b7 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] @@ -58856,7 +58876,7 @@ channels_in_file$ = 512 desired_channels$ = 520 stbi_load_16_from_callbacks PROC ; COMDAT -; 878 : { +; 891 : { $LN3: 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 @@ -58883,8 +58903,8 @@ $LN3: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 879 : stbi__context s; -; 880 : stbi__start_callbacks(&s, (stbi_io_callbacks*)clbk, user); +; 892 : stbi__context s; +; 893 : stbi__start_callbacks(&s, (stbi_io_callbacks*)clbk, user); 00058 4c 8b 85 e8 01 00 00 mov r8, QWORD PTR user$[rbp] @@ -58893,7 +58913,7 @@ $LN3: 00066 48 8d 4d 10 lea rcx, QWORD PTR s$[rbp] 0006a e8 00 00 00 00 call stbi__start_callbacks -; 881 : return stbi__load_and_postprocess_16bit(&s, x, y, channels_in_file, desired_channels); +; 894 : return stbi__load_and_postprocess_16bit(&s, x, y, channels_in_file, desired_channels); 0006f 8b 85 08 02 00 00 mov eax, DWORD PTR desired_channels$[rbp] @@ -58907,7 +58927,7 @@ $LN3: 0008e 48 8d 4d 10 lea rcx, QWORD PTR s$[rbp] 00092 e8 00 00 00 00 call stbi__load_and_postprocess_16bit -; 882 : } +; 895 : } 00097 48 8b f8 mov rdi, rax 0009a 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48] @@ -58940,7 +58960,7 @@ channels_in_file$ = 512 desired_channels$ = 520 stbi_load_16_from_memory PROC ; COMDAT -; 871 : { +; 884 : { $LN3: 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 @@ -58967,8 +58987,8 @@ $LN3: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00052 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 872 : stbi__context s; -; 873 : stbi__start_mem(&s, buffer, len); +; 885 : stbi__context s; +; 886 : stbi__start_mem(&s, buffer, len); 00057 44 8b 85 e8 01 00 00 mov r8d, DWORD PTR len$[rbp] @@ -58977,7 +58997,7 @@ $LN3: 00065 48 8d 4d 10 lea rcx, QWORD PTR s$[rbp] 00069 e8 00 00 00 00 call stbi__start_mem -; 874 : return stbi__load_and_postprocess_16bit(&s, x, y, channels_in_file, desired_channels); +; 887 : return stbi__load_and_postprocess_16bit(&s, x, y, channels_in_file, desired_channels); 0006e 8b 85 08 02 00 00 mov eax, DWORD PTR desired_channels$[rbp] @@ -58991,7 +59011,7 @@ $LN3: 0008d 48 8d 4d 10 lea rcx, QWORD PTR s$[rbp] 00091 e8 00 00 00 00 call stbi__load_and_postprocess_16bit -; 875 : } +; 888 : } 00096 48 8b f8 mov rdi, rax 00099 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48] @@ -59028,7 +59048,7 @@ comp$ = 560 req_comp$ = 568 stbi_load_gif_from_memory PROC ; COMDAT -; 900 : { +; 913 : { $LN6: 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 @@ -59055,9 +59075,9 @@ $LN6: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00052 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 901 : unsigned char* result; -; 902 : stbi__context s; -; 903 : stbi__start_mem(&s, buffer, len); +; 914 : unsigned char* result; +; 915 : stbi__context s; +; 916 : stbi__start_mem(&s, buffer, len); 00057 44 8b 85 08 02 00 00 mov r8d, DWORD PTR len$[rbp] @@ -59066,8 +59086,8 @@ $LN6: 00065 48 8d 4d 30 lea rcx, QWORD PTR s$[rbp] 00069 e8 00 00 00 00 call stbi__start_mem -; 904 : -; 905 : result = (unsigned char*)stbi__load_gif_main(&s, delays, x, y, z, comp, req_comp); +; 917 : +; 918 : result = (unsigned char*)stbi__load_gif_main(&s, delays, x, y, z, comp, req_comp); 0006e 8b 85 38 02 00 00 mov eax, DWORD PTR req_comp$[rbp] @@ -59088,7 +59108,7 @@ $LN6: 000a9 e8 00 00 00 00 call stbi__load_gif_main 000ae 48 89 45 08 mov QWORD PTR result$[rbp], rax -; 906 : if (stbi__vertically_flip_on_load) { +; 919 : if (stbi__vertically_flip_on_load) { 000b2 b8 00 00 00 00 mov eax, OFFSET FLAT:stbi__vertically_flip_on_load_set 000b7 8b c0 mov eax, eax @@ -59120,7 +59140,7 @@ $LN5@stbi_load_: 00 00 cmp DWORD PTR tv88[rbp], 0 0010a 74 33 je SHORT $LN2@stbi_load_ -; 907 : stbi__vertical_flip_slices(result, *x, *y, *z, *comp); +; 920 : stbi__vertical_flip_slices(result, *x, *y, *z, *comp); 0010c 48 8b 85 30 02 00 00 mov rax, QWORD PTR comp$[rbp] @@ -59139,13 +59159,13 @@ $LN5@stbi_load_: 0013a e8 00 00 00 00 call stbi__vertical_flip_slices $LN2@stbi_load_: -; 908 : } -; 909 : -; 910 : return result; +; 921 : } +; 922 : +; 923 : return result; 0013f 48 8b 45 08 mov rax, QWORD PTR result$[rbp] -; 911 : } +; 924 : } 00143 48 8b f8 mov rdi, rax 00146 48 8d 4d c0 lea rcx, QWORD PTR [rbp-64] @@ -59178,7 +59198,7 @@ comp$ = 536 req_comp$ = 544 stbi_load_from_file PROC ; COMDAT -; 832 : { +; 845 : { $LN4: 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 @@ -59205,16 +59225,16 @@ $LN4: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 833 : unsigned char* result; -; 834 : stbi__context s; -; 835 : stbi__start_file(&s, f); +; 846 : unsigned char* result; +; 847 : stbi__context s; +; 848 : stbi__start_file(&s, f); 00058 48 8b 95 00 02 00 00 mov rdx, QWORD PTR f$[rbp] 0005f 48 8d 4d 30 lea rcx, QWORD PTR s$[rbp] 00063 e8 00 00 00 00 call stbi__start_file -; 836 : result = stbi__load_and_postprocess_8bit(&s, x, y, comp, req_comp); +; 849 : result = stbi__load_and_postprocess_8bit(&s, x, y, comp, req_comp); 00068 8b 85 20 02 00 00 mov eax, DWORD PTR req_comp$[rbp] @@ -59229,13 +59249,13 @@ $LN4: 0008b e8 00 00 00 00 call stbi__load_and_postprocess_8bit 00090 48 89 45 08 mov QWORD PTR result$[rbp], rax -; 837 : if (result) { +; 850 : if (result) { 00094 48 83 7d 08 00 cmp QWORD PTR result$[rbp], 0 00099 74 2b je SHORT $LN2@stbi_load_ -; 838 : // need to 'unget' all the characters in the IO buffer -; 839 : fseek(f, -(int)(s.img_buffer_end - s.img_buffer), SEEK_CUR); +; 851 : // need to 'unget' all the characters in the IO buffer +; 852 : fseek(f, -(int)(s.img_buffer_end - s.img_buffer), SEEK_CUR); 0009b 48 8b 85 f0 00 00 00 mov rax, QWORD PTR s$[rbp+192] @@ -59253,12 +59273,12 @@ $LN4: 00 call QWORD PTR __imp_fseek $LN2@stbi_load_: -; 840 : } -; 841 : return result; +; 853 : } +; 854 : return result; 000c6 48 8b 45 08 mov rax, QWORD PTR result$[rbp] -; 842 : } +; 855 : } 000ca 48 8b f8 mov rdi, rax 000cd 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48] @@ -59279,6 +59299,94 @@ stbi_load_from_file ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File D:\NitloadIndustry\Ñо¿ÏîĿ\1-Flagship\TH2020\ProjectFile\Դ´úÂë\StgSharpC\stb_image.c +; COMDAT stbi_load_to_target +_TEXT SEGMENT +f$ = 8 +result$ = 40 +filename$ = 288 +x$ = 296 +y$ = 304 +target$ = 312 +comp$ = 320 +req_comp$ = 328 +stbi_load_to_target PROC ; COMDAT + +; 832 : { + +$LN4: + 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 + 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 + 0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx + 0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx + 00014 55 push rbp + 00015 57 push rdi + 00016 48 81 ec 38 01 + 00 00 sub rsp, 312 ; 00000138H + 0001d 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48] + 00022 48 8d 0d 00 00 + 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c + 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode + +; 833 : FILE* f = stbi__fopen(filename, "rb"); + + 0002e 48 8d 15 00 00 + 00 00 lea rdx, OFFSET FLAT:??_C@_02JDPG@rb@ + 00035 48 8b 8d 20 01 + 00 00 mov rcx, QWORD PTR filename$[rbp] + 0003c e8 00 00 00 00 call stbi__fopen + 00041 48 89 45 08 mov QWORD PTR f$[rbp], rax + +; 834 : unsigned char* result; +; 835 : if (!f) + + 00045 48 83 7d 08 00 cmp QWORD PTR f$[rbp], 0 + 0004a 75 12 jne SHORT $LN2@stbi_load_ + +; 836 : { +; 837 : *target = "can't fopen, Unable to open file"; return; + + 0004c 48 8b 85 38 01 + 00 00 mov rax, QWORD PTR target$[rbp] + 00053 48 8d 0d 00 00 + 00 00 lea rcx, OFFSET FLAT:??_C@_0CB@DDANHPKI@can?8t?5fopen?0?5Unable?5to?5open?5fil@ + 0005a 88 08 mov BYTE PTR [rax], cl + 0005c eb 36 jmp SHORT $LN1@stbi_load_ +$LN2@stbi_load_: + +; 838 : } +; 839 : result = stbi_load_from_file(f, x, y, comp, req_comp); + + 0005e 8b 85 48 01 00 + 00 mov eax, DWORD PTR req_comp$[rbp] + 00064 89 44 24 20 mov DWORD PTR [rsp+32], eax + 00068 4c 8b 8d 40 01 + 00 00 mov r9, QWORD PTR comp$[rbp] + 0006f 4c 8b 85 30 01 + 00 00 mov r8, QWORD PTR y$[rbp] + 00076 48 8b 95 28 01 + 00 00 mov rdx, QWORD PTR x$[rbp] + 0007d 48 8b 4d 08 mov rcx, QWORD PTR f$[rbp] + 00081 e8 00 00 00 00 call stbi_load_from_file + 00086 48 89 45 28 mov QWORD PTR result$[rbp], rax + +; 840 : fclose(f); + + 0008a 48 8b 4d 08 mov rcx, QWORD PTR f$[rbp] + 0008e ff 15 00 00 00 + 00 call QWORD PTR __imp_fclose +$LN1@stbi_load_: + +; 841 : } + + 00094 48 8d a5 08 01 + 00 00 lea rsp, QWORD PTR [rbp+264] + 0009b 5f pop rdi + 0009c 5d pop rbp + 0009d c3 ret 0 +stbi_load_to_target ENDP +_TEXT ENDS +; Function compile flags: /Odtp /RTCsu /ZI +; File D:\NitloadIndustry\Ñо¿ÏîĿ\1-Flagship\TH2020\ProjectFile\Դ´úÂë\StgSharpC\stb_image.c ; COMDAT stbi_load _TEXT SEGMENT f$ = 8 @@ -59389,7 +59497,7 @@ comp$ = 512 req_comp$ = 520 stbi_load_from_callbacks PROC ; COMDAT -; 892 : { +; 905 : { $LN3: 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 @@ -59416,8 +59524,8 @@ $LN3: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 893 : stbi__context s; -; 894 : stbi__start_callbacks(&s, (stbi_io_callbacks*)clbk, user); +; 906 : stbi__context s; +; 907 : stbi__start_callbacks(&s, (stbi_io_callbacks*)clbk, user); 00058 4c 8b 85 e8 01 00 00 mov r8, QWORD PTR user$[rbp] @@ -59426,7 +59534,7 @@ $LN3: 00066 48 8d 4d 10 lea rcx, QWORD PTR s$[rbp] 0006a e8 00 00 00 00 call stbi__start_callbacks -; 895 : return stbi__load_and_postprocess_8bit(&s, x, y, comp, req_comp); +; 908 : return stbi__load_and_postprocess_8bit(&s, x, y, comp, req_comp); 0006f 8b 85 08 02 00 00 mov eax, DWORD PTR req_comp$[rbp] @@ -59440,7 +59548,7 @@ $LN3: 0008e 48 8d 4d 10 lea rcx, QWORD PTR s$[rbp] 00092 e8 00 00 00 00 call stbi__load_and_postprocess_8bit -; 896 : } +; 909 : } 00097 48 8b f8 mov rdi, rax 0009a 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48] @@ -59473,7 +59581,7 @@ comp$ = 512 req_comp$ = 520 stbi_load_from_memory PROC ; COMDAT -; 885 : { +; 898 : { $LN3: 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 @@ -59500,8 +59608,8 @@ $LN3: 00 00 lea rcx, OFFSET FLAT:__C5A6C9A6_stb_image@c 00052 e8 00 00 00 00 call __CheckForDebuggerJustMyCode -; 886 : stbi__context s; -; 887 : stbi__start_mem(&s, buffer, len); +; 899 : stbi__context s; +; 900 : stbi__start_mem(&s, buffer, len); 00057 44 8b 85 e8 01 00 00 mov r8d, DWORD PTR len$[rbp] @@ -59510,7 +59618,7 @@ $LN3: 00065 48 8d 4d 10 lea rcx, QWORD PTR s$[rbp] 00069 e8 00 00 00 00 call stbi__start_mem -; 888 : return stbi__load_and_postprocess_8bit(&s, x, y, comp, req_comp); +; 901 : return stbi__load_and_postprocess_8bit(&s, x, y, comp, req_comp); 0006e 8b 85 08 02 00 00 mov eax, DWORD PTR req_comp$[rbp] @@ -59524,7 +59632,7 @@ $LN3: 0008d 48 8d 4d 10 lea rcx, QWORD PTR s$[rbp] 00091 e8 00 00 00 00 call stbi__load_and_postprocess_8bit -; 889 : } +; 902 : } 00096 48 8b f8 mov rdi, rax 00099 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48] diff --git a/源代码/StgSharpC/x64/Debug/stb_image.obj b/源代码/StgSharpC/x64/Debug/stb_image.obj index d23c004b..836da3de 100644 Binary files a/源代码/StgSharpC/x64/Debug/stb_image.obj and b/源代码/StgSharpC/x64/Debug/stb_image.obj differ diff --git a/源代码/StgSharpC/x64/Debug/vc143.idb b/源代码/StgSharpC/x64/Debug/vc143.idb index e75cc78a..49204617 100644 Binary files a/源代码/StgSharpC/x64/Debug/vc143.idb and b/源代码/StgSharpC/x64/Debug/vc143.idb differ diff --git a/源代码/StgSharpC/x64/Debug/vc143.pdb b/源代码/StgSharpC/x64/Debug/vc143.pdb index 41da79f8..9c92d697 100644 Binary files a/源代码/StgSharpC/x64/Debug/vc143.pdb and b/源代码/StgSharpC/x64/Debug/vc143.pdb differ diff --git a/源代码/StgSharpC/x64/Debug/wgl.obj b/源代码/StgSharpC/x64/Debug/wgl.obj index e63bd5dc..57fd7f92 100644 Binary files a/源代码/StgSharpC/x64/Debug/wgl.obj and b/源代码/StgSharpC/x64/Debug/wgl.obj differ diff --git a/源代码/StgSharpDebug/Environment/Platform.cs b/源代码/StgSharpDebug/Environment/Platform.cs index 1c7783c2..bc6fa3d4 100644 --- a/源代码/StgSharpDebug/Environment/Platform.cs +++ b/源代码/StgSharpDebug/Environment/Platform.cs @@ -1,13 +1,26 @@ -using StgSharp.Graphics; +using StgSharp.Envitronment; +using StgSharp.Envitronment.Win32; +using StgSharp.Graphics; +using StgSharp.Math; using System; using System.Collections.Generic; +using System.ComponentModel; using System.Linq; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using System.Text; using System.Threading.Tasks; +using Windows.Win32.UI.WindowsAndMessaging; + +#if Windows +using Windows.Win32; +using Windows.Win32.Foundation; +using Windows.Win32.Graphics.OpenGL; +using Windows.Win32.Graphics.Gdi; +using Windows.Win32.UI; +#endif namespace StgSharp { internal enum GraphicAPI : byte @@ -17,10 +30,21 @@ namespace StgSharp VK } - public static class Platform + public static partial class Platform { - internal static GraphicAPI API; + internal static GraphicAPI API = default; + + private static uint markCount = 0; + + public static void Mark(bool needConsole) + { + markCount++; + if (needConsole) + { + Console.WriteLine(markCount); + } + } /// /// Version of current StgSharp platform. @@ -37,6 +61,11 @@ namespace StgSharp [MethodImpl(MethodImplOptions.AggressiveInlining)] public static void InitGL(int majorVersion, int minorVersion) { + if (API != default) + { + return; + } + InternalIO.InternalInitGL(majorVersion, minorVersion); } @@ -86,5 +115,26 @@ namespace StgSharp } } + public static void Track( + object target, + string message, + [CallerFilePath] string filePath = "", + [CallerMemberName] string callerName = "", + [CallerLineNumber] int lineNumber = 0 + ) + { + string log = $"Tracked object: {nameof(target)}\n"; + Type t = target.GetType(); + FieldInfo[] fieldInfo = t.GetFields(BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Instance); + log += "|\tFieldName\t|\tFieldType\t|\tFieldValue\t|\n"; + foreach (FieldInfo field in fieldInfo) + { + log += $"|{field.Name}\t\t|{field.FieldType}\t\t|{field.GetValue(target)}\t\t|\n"; + } + log += $"Tracking at:\n{filePath}\t{callerName}\tline {lineNumber}\n"; + log += $"Additional information:\n{message}\n"; + InternalIO.InternalWriteLog(log, LogType.Info); + } + } } diff --git a/源代码/StgSharpDebug/Environment/Win32.cs b/源代码/StgSharpDebug/Environment/Win32.cs new file mode 100644 index 00000000..62727baf --- /dev/null +++ b/源代码/StgSharpDebug/Environment/Win32.cs @@ -0,0 +1,199 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Runtime.CompilerServices; +using Windows.Win32.Foundation; +using System.Runtime.InteropServices; +using System.Reflection; +using StgSharpDebug.Environment; +using StgSharp.Math; + + + + + + +#if Windows +#pragma warning disable CA1416 // 验证平台兼容性 +using Microsoft.Win32.SafeHandles; +using StgSharp.Envitronment.Win32; +using Windows.Win32; +using Windows.Win32.Graphics.OpenGL; +using Windows.Win32.Graphics.Gdi; +using Windows.Win32.UI.WindowsAndMessaging; + + +namespace StgSharp +{ + public unsafe static partial class Platform + { + + internal static unsafe void CreatDummyContext() + { + string winclass_name = "Dummy_WGL_context"; + WNDCLASSW window_class = new WNDCLASSW() + { + style = WNDCLASS_STYLES.CS_HREDRAW | WNDCLASS_STYLES.CS_VREDRAW | WNDCLASS_STYLES.CS_OWNDC, + lpfnWndProc = PInvoke.DefWindowProc, + hInstance = new HINSTANCE(PInvoke.GetModuleHandle("").DangerousGetHandle()), + lpszClassName = new PCWSTR((char*)Marshal.StringToHGlobalUni(winclass_name)) + }; + + if (PInvoke.RegisterClass(window_class) != 0) + { + throw new Exception("Failed in registing OpenGL window."); + } + + HWND h = PInvoke.CreateWindowEx( + Windows.Win32.UI.WindowsAndMessaging.WINDOW_EX_STYLE.WS_EX_LTRREADING, + winclass_name, + "Dummy OpenGL window", + Windows.Win32.UI.WindowsAndMessaging.WINDOW_STYLE.WS_OVERLAPPED, + 0, + 0, + 0, + 0, + default, + default, + new LibHandle(window_class.hInstance.Value, false), + default + ); + if (h == default) + { + throw new Exception("Failed in registing OpenGL window."); + } + HDC hdc = PInvoke.GetDC(h); + + PIXELFORMATDESCRIPTOR pfd = new PIXELFORMATDESCRIPTOR(); + pfd.nSize = (ushort)Marshal.SizeOf(pfd); + pfd.nVersion = 1; + pfd.dwFlags = PFD_FLAGS.PFD_DRAW_TO_WINDOW | PFD_FLAGS.PFD_SUPPORT_OPENGL + | PFD_FLAGS.PFD_DOUBLEBUFFER; + pfd.iPixelType = PFD_PIXEL_TYPE.PFD_TYPE_RGBA; + pfd.cColorBits = 32; + pfd.cDepthBits = 24; + pfd.cStencilBits = 8; + pfd.iLayerType = PFD_LAYER_TYPE.PFD_MAIN_PLANE; + + int pixelFormat = PInvoke.ChoosePixelFormat(hdc, &pfd); + + if (pixelFormat == 0) + { + throw new Exception("Failed in registing OpenGL window."); + } + if (PInvoke.SetPixelFormat(hdc, pixelFormat, &pfd)) + { + throw new Exception("Failed in registing OpenGL window."); + } + HGLRC hglrc = PInvoke.wglCreateContext(hdc); + + PInvoke.wglMakeCurrent(hdc, hglrc); + + wglEx.LoadWGLex(); + + PInvoke.wglMakeCurrent(hdc, HGLRC.Null); + PInvoke.wglDeleteContext(hglrc); + PInvoke.ReleaseDC(h, hdc); + PInvoke.DestroyWindow(h); + + } + + internal static unsafe HGLRC InitGL(HDC realHDC) + { + CreatDummyContext(); + + int[] pixelFormatAttribute = new int[] { + WGLconst.DRAW_TO_WINDOW_ARB, 1, + WGLconst.SUPPORT_OPENGL_ARB, 1, + WGLconst.DOUBLE_BUFFER_ARB, 1, + WGLconst.ACCELERATION_ARB, WGLconst.FULL_ACCELERATION_ARB, + WGLconst.PIXEL_TYPE_ARB, WGLconst.TYPE_RGBA_ARB, + WGLconst.COLOR_BITS_ARB, 32, + WGLconst.DEPTH_BITS_ARB, 24, + WGLconst.STENCIL_BITS_ARB,8 + }; + + int piFormat; + uint length; + + wglEx.glChoosePixelFormatARB(new DeviceContextHandle(realHDC), pixelFormatAttribute, out piFormat, out length); + if (length == 0) + { + throw new Exception("Failed in creating OpenGL core profile."); + } + PIXELFORMATDESCRIPTOR pfd = default; + PInvoke.DescribePixelFormat(realHDC, piFormat, (uint)Marshal.SizeOf(pfd), &pfd); + if (PInvoke.SetPixelFormat(realHDC, piFormat, in pfd)) + { + throw new Exception("Failed in creating OpenGL core profile."); + } + int[] glVersionAttribute = new int[] { + WGLconst.CONTEXT_MAJOR_VERSION_ARB,4, + WGLconst.CONTEXT_MINOR_VERSION_ARB,6, + WGLconst.CONTEXT_PROFILE_MASK_ARB, WGLconst.CONTEXT_CORE_PROFILE_BIT_ARB + }; + + HGLRC coreGL = new(wglEx.wglCreateContextAttribsARB( + new DeviceContextHandle(realHDC), GlRenderContextHandle.Null, glVersionAttribute).Value); + if (coreGL.Value == IntPtr.Zero) + { + throw new Exception("Failed in creating OpenGL core profile."); + } + + return coreGL; + + } + + internal static unsafe LRESULT window_callback( + HWND window, uint msg, WPARAM wparam, LPARAM lparam) + { + LRESULT ret = new LRESULT(0); + switch (msg) + { + case 0x0010: break; + case 0x0002: + PInvoke.PostQuitMessage(0); + break; + default: + ret = PInvoke.DefWindowProc(window, msg, wparam, lparam); + break; + } + return ret; + } + + internal static unsafe IntPtr CreateForm(HINSTANCE inst) + { + string formName = "Hello Stg#!"; + + WNDCLASSW window_class = new WNDCLASSW() + { + style = WNDCLASS_STYLES.CS_VREDRAW | WNDCLASS_STYLES.CS_HREDRAW | WNDCLASS_STYLES.CS_OWNDC, + lpfnWndProc = window_callback, + hInstance = inst, + hCursor = new HCURSOR(PInvoke.LoadCursor(default, "IDC_ARROW").DangerousGetHandle()), + hbrBackground = HBRUSH.Null, + lpszClassName = new PCWSTR((char*)Marshal.StringToHGlobalUni(formName)) + }; + + if (PInvoke.RegisterClass(in window_class) == 0) + { + throw new Exception("Failed to create window instace."); + } + + RECT rect = default; + rect.right = 1024; + rect.bottom = 576; + + uint window_style = WGLconst.WS_OVERLAPPEDWINDOW; + PInvoke.AdjustWindowRect(ref rect, (WINDOW_STYLE)window_style, false); + + + } + } +} + + +#pragma warning restore CA1416 // 验证平台兼容性 +#endif \ No newline at end of file diff --git a/源代码/StgSharpDebug/Environment/Win32Struct.cs b/源代码/StgSharpDebug/Environment/Win32Struct.cs new file mode 100644 index 00000000..4bfe7f87 --- /dev/null +++ b/源代码/StgSharpDebug/Environment/Win32Struct.cs @@ -0,0 +1,279 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Runtime.InteropServices; + + + +#if Windows +using Microsoft.Win32.SafeHandles; +using Windows.Win32; +using Windows.Win32.Graphics.OpenGL; +using Windows.Win32.Graphics.Gdi; + +namespace StgSharp.Envitronment.Win32 +{ + public readonly partial struct DeviceContextHandle + : IEquatable + { + internal readonly IntPtr Value; + + internal DeviceContextHandle(nint value) => this.Value = value; + + public static explicit operator DeviceContextHandle(IntPtr value) => new DeviceContextHandle(value); + + public static implicit operator IntPtr(DeviceContextHandle value) => value.Value; + public static bool operator !=(DeviceContextHandle left, DeviceContextHandle right) => !(left == right); + + public static bool operator ==(DeviceContextHandle left, DeviceContextHandle right) => left.Value == right.Value; + public bool Equals(DeviceContextHandle other) => this.Value == other.Value; + + public override bool Equals(object obj) => obj is DeviceContextHandle other && this.Equals(other); + + public override int GetHashCode() => this.Value.GetHashCode(); + + public override string ToString() => $"0x{this.Value:x}"; + } + + public readonly partial struct GlRenderContextHandle + : IEquatable + { + internal readonly IntPtr Value; + + internal GlRenderContextHandle(IntPtr value) => this.Value = value; + + internal static GlRenderContextHandle Null => default; + + internal bool IsNull => Value == default; + + public static explicit operator GlRenderContextHandle(IntPtr value) => new GlRenderContextHandle(value); + + public static implicit operator IntPtr(GlRenderContextHandle value) => value.Value; + public static bool operator !=(GlRenderContextHandle left, GlRenderContextHandle right) => !(left == right); + + public static bool operator ==(GlRenderContextHandle left, GlRenderContextHandle right) => left.Value == right.Value; + public bool Equals(GlRenderContextHandle other) => this.Value == other.Value; + + public override bool Equals(object obj) => obj is GlRenderContextHandle other && this.Equals(other); + + public override int GetHashCode() => this.Value.GetHashCode(); + + public override string ToString() => $"0x{this.Value:x}"; + } + + public struct WGLconst + { + #region Attribute + public const int ACCELERATION_ARB = 0x2003; + public const int ACCUM_ALPHA_BITS_ARB = 0x2021; + public const int ACCUM_BITS_ARB = 0x201D; + public const int ACCUM_BLUE_BITS_ARB = 0x2020; + public const int ACCUM_GREEN_BITS_ARB = 0x201F; + public const int ACCUM_RED_BITS_ARB = 0x201E; + public const int ALPHA_BITS_ARB = 0x201B; + public const int ALPHA_SHIFT_ARB = 0x201C; + public const int AUX_BUFFERS_ARB = 0x2024; + public const int BLUE_BITS_ARB = 0x2019; + public const int BLUE_SHIFT_ARB = 0x201A; + public const int COLOR_BITS_ARB = 0x2014; + public const int DEPTH_BITS_ARB = 0x2022; + public const int DOUBLE_BUFFER_ARB = 0x2011; + public const int DRAW_TO_BITMAP_ARB = 0x2002; + public const int DRAW_TO_WINDOW_ARB = 0x2001; + public const int FULL_ACCELERATION_ARB = 0x2027; + public const int GENERIC_ACCELERATION_ARB = 0x2026; + public const int GREEN_BITS_ARB = 0x2017; + public const int GREEN_SHIFT_ARB = 0x2018; + public const int NEED_PALETTE_ARB = 0x2004; + public const int NEED_SYSTEM_PALETTE_ARB = 0x2005; + public const int NO_ACCELERATION_ARB = 0x2025; + public const int NUMBER_OVERLAYS_ARB = 0x2008; + public const int NUMBER_PIXEL_FORMATS_ARB = 0x2000; + public const int NUMBER_UNDERLAYS_ARB = 0x2009; + public const int PIXEL_TYPE_ARB = 0x2013; + public const int RED_BITS_ARB = 0x2015; + public const int RED_SHIFT_ARB = 0x2016; + public const int SHARE_ACCUM_ARB = 0x200E; + public const int SHARE_DEPTH_ARB = 0x200C; + public const int SHARE_STENCIL_ARB = 0x200D; + public const int STENCIL_BITS_ARB = 0x2023; + public const int STEREO_ARB = 0x2012; + public const int SUPPORT_GDI_ARB = 0x200F; + public const int SUPPORT_OPENGL_ARB = 0x2010; + public const int SWAP_COPY_ARB = 0x2029; + public const int SWAP_EXCHANGE_ARB = 0x2028; + public const int SWAP_LAYER_BUFFERS_ARB = 0x2006; + public const int SWAP_METHOD_ARB = 0x2007; + public const int SWAP_UNDEFINED_ARB = 0x202A; + public const int TRANSPARENT_ALPHA_VALUE_ARB = 0x203A; + public const int TRANSPARENT_ARB = 0x200A; + public const int TRANSPARENT_BLUE_VALUE_ARB = 0x2039; + public const int TRANSPARENT_GREEN_VALUE_ARB = 0x2038; + public const int TRANSPARENT_INDEX_VALUE_ARB = 0x203B; + public const int TRANSPARENT_RED_VALUE_ARB = 0x2037; + public const int TYPE_COLORINDEX_ARB = 0x202C; + public const int TYPE_RGBA_ARB = 0x202B; + #endregion + #region context + + public const int CONTEXT_MAJOR_VERSION_ARB = 0x2091; + public const int CONTEXT_MINOR_VERSION_ARB = 0x2092; + public const int CONTEXT_LAYER_PLANE_ARB = 0x2093; + public const int CONTEXT_FLAGS_ARB = 0x2094; + public const int CONTEXT_PROFILE_MASK_ARB = 0x9126; + public const int CONTEXT_DEBUG_BIT_ARB = 0x0001; + public const int CONTEXT_FORWARD_COMPATIBLE_BIT_ARB = 0x0002; + public const int CONTEXT_CORE_PROFILE_BIT_ARB = 0x00000001; + public const int CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB = 0x00000002; + public const int ERROR_INVALID_VERSION_ARB = 0x2095; + public const int ERROR_INVALID_PROFILE_ARB = 0x2096; + + #endregion + #region + + public const uint WS_OVERLAPPED = 0x00000000; + public const uint WS_POPUP = 0x80000000; + public const uint WS_CHILD = 0x40000000; + public const uint WS_MINIMIZE = 0x20000000; + public const uint WS_VISIBLE = 0x10000000; + public const uint WS_DISABLED = 0x08000000; + public const uint WS_CLIPSIBLINGS = 0x04000000; + public const uint WS_CLIPCHILDREN = 0x02000000; + public const uint WS_MAXIMIZE = 0x01000000; + public const uint WS_CAPTION = 0x00C00000; /* WS_BORDER | WS_DLGFRAME */ + public const uint WS_BORDER = 0x00800000; + public const uint WS_DLGFRAME = 0x00400000; + public const uint WS_VSCROLL = 0x00200000; + public const uint WS_HSCROLL = 0x00100000; + public const uint WS_SYSMENU = 0x00080000; + public const uint WS_THICKFRAME = 0x00040000; + public const uint WS_GROUP = 0x00020000; + public const uint WS_TABSTOP = 0x00010000; + public const uint WS_MINIMIZEBOX = 0x00020000; + public const uint WS_MAXIMIZEBOX = 0x00010000; + + public const uint WS_OVERLAPPEDWINDOW = WS_OVERLAPPED | + WS_CAPTION | + WS_SYSMENU | + WS_THICKFRAME | + WS_MINIMIZEBOX | + WS_MAXIMIZEBOX; + + #endregion + } + public readonly partial struct WindowHandle + : IEquatable + { + internal readonly IntPtr Value; + + internal WindowHandle(IntPtr value) => this.Value = value; + + internal static WindowHandle Null => default; + + internal bool IsNull => Value == default; + + public static explicit operator WindowHandle(IntPtr value) => new WindowHandle(value); + + public static implicit operator IntPtr(WindowHandle value) => value.Value; + public static bool operator !=(WindowHandle left, WindowHandle right) => !(left == right); + + public static bool operator ==(WindowHandle left, WindowHandle right) => left.Value == right.Value; + public bool Equals(WindowHandle other) => this.Value == other.Value; + + public override bool Equals(object obj) => obj is WindowHandle other && this.Equals(other); + + public override int GetHashCode() => this.Value.GetHashCode(); + + public override string ToString() => $"0x{this.Value:x}"; + + //public static implicit operator HANDLE(WindowHandle value) => new HANDLE(value.Value); + } + + [StructLayout(LayoutKind.Sequential)] + public class PixelFormatDescriptor + { + // 定义类的成员变量,使用与 C/C++ 中相同的数据类型 + public ushort nSize; + public ushort nVersion; + public uint dwFlags; + [MarshalAs(UnmanagedType.U1)] + public byte iPixelType; + [MarshalAs(UnmanagedType.U1)] + public byte cColorBits; + [MarshalAs(UnmanagedType.U1)] + public byte cRedBits; + [MarshalAs(UnmanagedType.U1)] + public byte cRedShift; + [MarshalAs(UnmanagedType.U1)] + public byte cGreenBits; + [MarshalAs(UnmanagedType.U1)] + public byte cGreenShift; + [MarshalAs(UnmanagedType.U1)] + public byte cBlueBits; + [MarshalAs(UnmanagedType.U1)] + public byte cBlueShift; + [MarshalAs(UnmanagedType.U1)] + public byte cAlphaBits; + [MarshalAs(UnmanagedType.U1)] + public byte cAlphaShift; + [MarshalAs(UnmanagedType.U1)] + public byte cAccumBits; + [MarshalAs(UnmanagedType.U1)] + public byte cAccumRedBits; + [MarshalAs(UnmanagedType.U1)] + public byte cAccumGreenBits; + [MarshalAs(UnmanagedType.U1)] + public byte cAccumBlueBits; + [MarshalAs(UnmanagedType.U1)] + public byte cAccumAlphaBits; + [MarshalAs(UnmanagedType.U1)] + public byte cDepthBits; + [MarshalAs(UnmanagedType.U1)] + public byte cStencilBits; + [MarshalAs(UnmanagedType.U1)] + public byte cAuxBuffers; + [MarshalAs(UnmanagedType.U1)] + public byte iLayerType; + [MarshalAs(UnmanagedType.U1)] + public byte bReserved; + public uint dwLayerMask; + public uint dwVisibleMask; + public uint dwDamageMask; + + // 定义一个构造函数,用于设置类的成员变量的默认值 + public PixelFormatDescriptor() + { + nSize = (ushort)Marshal.SizeOf(this); // 设置 nSize 为类的大小 + nVersion = 1; // 设置 nVersion 为 1 + dwFlags = 0; // 设置 dwFlags 为 0 + iPixelType = 0; // 设置 iPixelType 为 0 + cColorBits = 0; // 设置 cColorBits 为 0 + cRedBits = 0; // 设置 cRedBits 为 0 + cRedShift = 0; // 设置 cRedShift 为 0 + cGreenBits = 0; // 设置 cGreenBits 为 0 + cGreenShift = 0; // 设置 cGreenShift 为 0 + cBlueBits = 0; // 设置 cBlueBits 为 0 + cBlueShift = 0; // 设置 cBlueShift 为 0 + cAlphaBits = 0; // 设置 cAlphaBits 为 0 + cAlphaShift = 0; // 设置 cAlphaShift 为 0 + cAccumBits = 0; // 设置 cAccumBits 为 0 + cAccumRedBits = 0; // 设置 cAccumRedBits 为 0 + cAccumGreenBits = 0; // 设置 cAccumGreenBits 为 0 + cAccumBlueBits = 0; // 设置 cAccumBlueBits 为 0 + cAccumAlphaBits = 0; // 设置 cAccumAlphaBits 为 0 + cDepthBits = 0; // 设置 cDepthBits 为 0 + cStencilBits = 0; // 设置 cStencilBits 为 0 + cAuxBuffers = 0; // 设置 cAuxBuffers 为 0 + iLayerType = 0; // 设置 iLayerType 为 0 + bReserved = 0; // 设置 bReserved 为 0 + dwLayerMask = 0; // 设置 dwLayerMask 为 0 + dwVisibleMask = 0; // 设置 dwVisibleMask 为 0 + dwDamageMask = 0; // 设置 dwDamageMask 为 0 + } + } + +} + +#endif \ No newline at end of file diff --git a/源代码/StgSharpDebug/Environment/Win32wgl.cs b/源代码/StgSharpDebug/Environment/Win32wgl.cs new file mode 100644 index 00000000..fde05cb2 --- /dev/null +++ b/源代码/StgSharpDebug/Environment/Win32wgl.cs @@ -0,0 +1,31 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Runtime.CompilerServices; +using Windows.Win32.Foundation; + + +#if Windows +using Microsoft.Win32.SafeHandles; +using Windows.Win32; +using Windows.Win32.Graphics.OpenGL; +using Windows.Win32.Graphics.Gdi; + +namespace StgSharp.Envitronment.Win32 +{ + public class WGL + { + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public static GlRenderContextHandle CreateContext(DeviceContextHandle param0) + { + return new(PInvoke.wglCreateContext(new HDC(param0.Value)).Value); + } + + + + } +} + +#endif \ No newline at end of file diff --git a/源代码/StgSharpDebug/Environment/win32wglEx.cs b/源代码/StgSharpDebug/Environment/win32wglEx.cs new file mode 100644 index 00000000..1cf06a68 --- /dev/null +++ b/源代码/StgSharpDebug/Environment/win32wglEx.cs @@ -0,0 +1,78 @@ +using StgSharp.Envitronment.Win32; +using StgSharp.Graphics; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Net.Http.Headers; +using System.Runtime.InteropServices; +using System.Text; +using System.Threading.Tasks; + +#if Windows +#pragma warning disable CA1416 + +using Windows.Win32.Graphics.Gdi; +using Windows.Win32.Graphics.OpenGL; + + +namespace StgSharpDebug.Environment +{ + public static unsafe class wglEx + { + + private static delegate* unmanaged[Stdcall] wglChoosePixelFormatARBpointer; + private static delegate* unmanaged[Stdcall] wglCreateContextAttribsARBpointer; + + public static unsafe bool glChoosePixelFormatARB( + DeviceContextHandle hdc, + int[] pixelIntAttributeList, + out int piFormats, + out uint piFormatCount) + { + if ((ulong)wglChoosePixelFormatARBpointer < 10) + { + piFormats = 0; + piFormatCount = 0; + return false; + } + pixelIntAttributeList = pixelIntAttributeList.Concat([0]).ToArray(); + int pf; + uint nf; + fixed (int* pial = pixelIntAttributeList) + { + bool ret = wglChoosePixelFormatARBpointer(new HDC(hdc.Value), pial, (float*)0, 1, &pf, &nf); + piFormats = pf; + piFormatCount = nf; + return ret; + } + } + + public static unsafe GlRenderContextHandle wglCreateContextAttribsARB( + DeviceContextHandle hdc, + GlRenderContextHandle hglrc, + int[] pixelFormat) + { + if ((ulong)wglCreateContextAttribsARBpointer < 10) + { + return default; + } + HGLRC h, h_share = new HGLRC(hglrc.Value); + HDC h_dc = new HDC(hdc.Value); + fixed (int* format = pixelFormat) + { + h = wglCreateContextAttribsARBpointer(h_dc, h_share, format); + return new GlRenderContextHandle(h); + } + } + + internal static void LoadWGLex() + { + wglChoosePixelFormatARBpointer = (delegate* unmanaged[Stdcall])glManager.LoadGLfunc("wglChoosePixelFormatARB"); + wglCreateContextAttribsARBpointer = (delegate* unmanaged[Stdcall])glManager.LoadGLfunc("wglCreateContextAttribsARB"); + } + } + +} + +#pragma warning restore CA1416 // 验证平台兼容性 +#endif diff --git a/源代码/StgSharpDebug/NativeMethods.txt b/源代码/StgSharpDebug/NativeMethods.txt new file mode 100644 index 00000000..0cf7daf6 --- /dev/null +++ b/源代码/StgSharpDebug/NativeMethods.txt @@ -0,0 +1,38 @@ +WNDCLASSA +AdjustWindowRect +ChoosePixelFormat +CreateWindowEx +DefWindowProc +DescribePixelFormat +DestroyWindow +FreeLibrary +GetDC +GetEnhMetaFilePixelFormat +GetModuleHandle +GetPixelFormat +GetProcAddress +LoadCursor +LoadLibrary +PostQuitMessage +RegisterClass +RegisterClassA +ReleaseDC +SetPixelFormat +SwapBuffers +wglGetProcAddress +wglCreateContext +wglCreateLayerContext +wglCopyContext +wglDeleteContext +wglDescribeLayerPlane +wglGetCurrentContext +wglGetCurrentDC +wglGetLayerPaletteEntries +wglGetProcAddress +wglMakeCurrent +wglRealizeLayerPalette +wglSetLayerPaletteEntries +wglShareLists +wglSwapLayerBuffers +wglUseFontBitmaps +wglUseFontOutlines \ No newline at end of file diff --git a/源代码/StgSharpDebug/Program.cs b/源代码/StgSharpDebug/Program.cs index b7ed486c..3fe17b9f 100644 --- a/源代码/StgSharpDebug/Program.cs +++ b/源代码/StgSharpDebug/Program.cs @@ -51,7 +51,6 @@ namespace StgSharp public override void Init(object[] args) { - InternalIO.InternalWriteLog("\n\n\n", "Program start", LogType.Info); Platform.InitGL(4, 6); @@ -64,19 +63,22 @@ namespace StgSharp (IntPtr id, uint width, uint height) => { - GL.Viewport(0, 0, width, height); + gl.Viewport(0, 0, width, height); }; this.LoadGLapi(null); + Console.WriteLine(gl); shader = CreateShaderProgram(); var vertex = CreateShader(ShaderType.Vertex, 1); var fragment = CreateShader(ShaderType.Fragment, 1); - vertex.Compile(ShaderType.Vertex, File.ReadAllText("Shader\\vertex.vert")); + vertex.Compile(File.ReadAllText("Shader\\vertex.vert")); vertex.AttachTo(0, shader); - fragment.Compile(ShaderType.Fragment, File.ReadAllText("Shader\\fragment.frag")); + fragment.Compile(File.ReadAllText("Shader\\fragment.frag")); fragment.AttachTo(0, shader); + Console.WriteLine(vertex); + shader.Link(); Triangle tri = new Triangle( @@ -100,12 +102,12 @@ namespace StgSharp -0.7f, -0.5f, 0.0f ); - vao = CreateVertexArray(1); vbo = CreateVertexBuffer(2); ebo = CreateElementBuffer(1); texture = CreateTexture(2); + Console.WriteLine(texture); float[] texCoord = { 0.0f, 0.0f, @@ -128,9 +130,12 @@ namespace StgSharp vao.BindNull(); /**/ + Console.WriteLine(vao); + texture.Bind2D(0); texture.Set2dWrapProperty(Wrap.Repeat, Wrap.Repeat); texture.Set2dFilterProperty(Filter.Nearest, Filter.Nearest); + Console.WriteLine(texture); texture.LoadTexture(0, "Shader\\Image1.png", null); texture.Bind2D(1); @@ -138,7 +143,6 @@ namespace StgSharp texture.Set2dFilterProperty(Filter.Nearest, Filter.Nearest); texture.LoadTexture(1, "Shader\\awesomeface.png", null); - //color = GetUniform(shader, "color"); shader.Use(); @@ -149,7 +153,7 @@ namespace StgSharp ourTexture2 = shader.GetUniform("ourTexture2"); gl.SetValue(ourTexture2, 1); /**/ - + Console.WriteLine(this); } public override void Main(params object[] args) diff --git a/源代码/StgSharpDebug/StgSharpDebug.csproj b/源代码/StgSharpDebug/StgSharpDebug.csproj index 879f55ec..44f0dd0b 100644 --- a/源代码/StgSharpDebug/StgSharpDebug.csproj +++ b/源代码/StgSharpDebug/StgSharpDebug.csproj @@ -12,53 +12,77 @@ True prompt False - False + True MIT False AnyCPU;x64 $(SolutionDir)Output Always - Debug;Release;RealDebug;Benchmark + Debug;Release;RealDebug;Benchmark;Toollist - False + False - False + False + + + + False - False + False - False + False - False + False + + + + False - False + False - False + False - False + False + + true + true + true + + + + Windows + + + OSX + + + Linux + + - + - + @@ -66,22 +90,28 @@ - - Always - - - Always - - - Always - - - Always - + + all + + + + + + Always + + + Always + + + Always + + + Always + - + diff --git a/源代码/StgSharpDebug/obj/Release/net6.0/StgSharpDebug.AssemblyInfoInputs.cache b/源代码/StgSharpDebug/obj/Release/net6.0/StgSharpDebug.AssemblyInfoInputs.cache index 1399382b..ab8c0ff3 100644 --- a/源代码/StgSharpDebug/obj/Release/net6.0/StgSharpDebug.AssemblyInfoInputs.cache +++ b/源代码/StgSharpDebug/obj/Release/net6.0/StgSharpDebug.AssemblyInfoInputs.cache @@ -1 +1 @@ -c240d4b9dd7134ccd2554a8eb3a5407fd9a8d4f8 +c10be108f46b065c19ec8e7bfe96ea5af08b76ca6ab3228bd84f4f2d953e88a9 diff --git a/源代码/StgSharpDebug/obj/Release/net6.0/StgSharpDebug.GeneratedMSBuildEditorConfig.editorconfig b/源代码/StgSharpDebug/obj/Release/net6.0/StgSharpDebug.GeneratedMSBuildEditorConfig.editorconfig index 6543a41b..006ce8af 100644 --- a/源代码/StgSharpDebug/obj/Release/net6.0/StgSharpDebug.GeneratedMSBuildEditorConfig.editorconfig +++ b/源代码/StgSharpDebug/obj/Release/net6.0/StgSharpDebug.GeneratedMSBuildEditorConfig.editorconfig @@ -9,3 +9,5 @@ build_property.EnforceExtendedAnalyzerRules = build_property._SupportedPlatformList = Linux,macOS,Windows build_property.RootNamespace = StgSharpDebug build_property.ProjectDir = D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\ +build_property.EnableComHosting = +build_property.EnableGeneratedComInterfaceComImportInterop = diff --git a/源代码/StgSharpDebug/obj/Release/net6.0/StgSharpDebug.assets.cache b/源代码/StgSharpDebug/obj/Release/net6.0/StgSharpDebug.assets.cache index d26f3612..0a6f7300 100644 Binary files a/源代码/StgSharpDebug/obj/Release/net6.0/StgSharpDebug.assets.cache and b/源代码/StgSharpDebug/obj/Release/net6.0/StgSharpDebug.assets.cache differ diff --git a/源代码/StgSharpDebug/obj/StgSharpDebug.csproj.nuget.dgspec.json b/源代码/StgSharpDebug/obj/StgSharpDebug.csproj.nuget.dgspec.json index 5a9fcafa..a6e92d6b 100644 --- a/源代码/StgSharpDebug/obj/StgSharpDebug.csproj.nuget.dgspec.json +++ b/源代码/StgSharpDebug/obj/StgSharpDebug.csproj.nuget.dgspec.json @@ -44,6 +44,13 @@ "frameworks": { "net6.0": { "targetAlias": "net6.0", + "dependencies": { + "Microsoft.Windows.CsWin32": { + "suppressParent": "All", + "target": "Package", + "version": "[0.3.49-beta, )" + } + }, "imports": [ "net461", "net462", diff --git a/源代码/StgSharpDebug/obj/StgSharpDebug.csproj.nuget.g.props b/源代码/StgSharpDebug/obj/StgSharpDebug.csproj.nuget.g.props index 0d4f25bf..70135f16 100644 --- a/源代码/StgSharpDebug/obj/StgSharpDebug.csproj.nuget.g.props +++ b/源代码/StgSharpDebug/obj/StgSharpDebug.csproj.nuget.g.props @@ -13,4 +13,13 @@ + + + + + + + + C:\Users\Nitlo\.nuget\packages\microsoft.windows.cswin32\0.3.49-beta + \ No newline at end of file diff --git a/源代码/StgSharpDebug/obj/project.assets.json b/源代码/StgSharpDebug/obj/project.assets.json index b83db265..5d3029ee 100644 --- a/源代码/StgSharpDebug/obj/project.assets.json +++ b/源代码/StgSharpDebug/obj/project.assets.json @@ -1,11 +1,217 @@ { "version": 3, "targets": { - "net6.0": {} + "net6.0": { + "Microsoft.Windows.CsWin32/0.3.49-beta": { + "type": "package", + "dependencies": { + "Microsoft.Windows.SDK.Win32Docs": "0.1.42-alpha", + "Microsoft.Windows.SDK.Win32Metadata": "55.0.45-preview", + "Microsoft.Windows.WDK.Win32Metadata": "0.9.9-experimental", + "System.Memory": "4.5.5", + "System.Runtime.CompilerServices.Unsafe": "6.0.0" + }, + "build": { + "build/netstandard1.0/Microsoft.Windows.CsWin32.props": {} + } + }, + "Microsoft.Windows.SDK.Win32Docs/0.1.42-alpha": { + "type": "package", + "compile": { + "lib/netstandard2.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/_._": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netstandard1.0/Microsoft.Windows.SDK.Win32Docs.props": {} + } + }, + "Microsoft.Windows.SDK.Win32Metadata/55.0.45-preview": { + "type": "package", + "build": { + "buildTransitive/netstandard1.0/Microsoft.Windows.SDK.Win32Metadata.props": {} + } + }, + "Microsoft.Windows.WDK.Win32Metadata/0.9.9-experimental": { + "type": "package", + "dependencies": { + "Microsoft.Windows.SDK.Win32Metadata": "55.0.45-preview" + }, + "build": { + "buildTransitive/netstandard1.0/Microsoft.Windows.WDK.Win32Metadata.props": {} + } + }, + "System.Memory/4.5.5": { + "type": "package", + "compile": { + "ref/netcoreapp2.1/_._": {} + }, + "runtime": { + "lib/netcoreapp2.1/_._": {} + } + }, + "System.Runtime.CompilerServices.Unsafe/6.0.0": { + "type": "package", + "compile": { + "lib/net6.0/System.Runtime.CompilerServices.Unsafe.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Runtime.CompilerServices.Unsafe.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + } + } + }, + "libraries": { + "Microsoft.Windows.CsWin32/0.3.49-beta": { + "sha512": "/iAXplVDKESFyLz/MShuVYVx62YFvFePpq3qrzREl8KScQqG6Z2kV7r9UJTjQS1g+hfy3V+e4m1x9lsu24YNSg==", + "type": "package", + "path": "microsoft.windows.cswin32/0.3.49-beta", + "hasTools": true, + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "NOTICE.txt", + "README.md", + "analyzers/cs/MessagePack.Annotations.dll", + "analyzers/cs/MessagePack.dll", + "analyzers/cs/Microsoft.Bcl.AsyncInterfaces.dll", + "analyzers/cs/Microsoft.Windows.CsWin32.dll", + "analyzers/cs/Microsoft.Windows.SDK.Win32Docs.dll", + "analyzers/cs/System.Text.Encodings.Web.dll", + "analyzers/cs/System.Text.Json.dll", + "build/Microsoft.Windows.CsWin32.props", + "build/net20/Microsoft.Windows.CsWin32.props", + "build/netstandard1.0/Microsoft.Windows.CsWin32.props", + "microsoft.windows.cswin32.0.3.49-beta.nupkg.sha512", + "microsoft.windows.cswin32.nuspec", + "readme.txt", + "tools/install.ps1", + "tools/uninstall.ps1" + ] + }, + "Microsoft.Windows.SDK.Win32Docs/0.1.42-alpha": { + "sha512": "Z/9po23gUA9aoukirh2ItMU2ZS9++Js9Gdds9fu5yuMojDrmArvY2y+tq9985tR3cxFxpZO1O35Wjfo0khj5HA==", + "type": "package", + "path": "microsoft.windows.sdk.win32docs/0.1.42-alpha", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "apidocs.msgpack", + "buildTransitive/Microsoft.Windows.SDK.Win32Docs.props", + "buildTransitive/net20/Microsoft.Windows.SDK.Win32Docs.props", + "buildTransitive/netstandard1.0/Microsoft.Windows.SDK.Win32Docs.props", + "images/windows.png", + "lib/netstandard2.0/Microsoft.Windows.SDK.Win32Docs.dll", + "lib/netstandard2.0/Microsoft.Windows.SDK.Win32Docs.xml", + "microsoft.windows.sdk.win32docs.0.1.42-alpha.nupkg.sha512", + "microsoft.windows.sdk.win32docs.nuspec" + ] + }, + "Microsoft.Windows.SDK.Win32Metadata/55.0.45-preview": { + "sha512": "2i1kVIk8rMuMCYtoeYeWbmCRLqNgb63Berac3Gv+J/pjp0oucopasKgLQNslryhsgBl4xex9ENhJX2MXEW5vdA==", + "type": "package", + "path": "microsoft.windows.sdk.win32metadata/55.0.45-preview", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Windows.Win32.winmd", + "build/Microsoft.Windows.SDK.Win32Metadata.props", + "build/net20/Microsoft.Windows.SDK.Win32Metadata.props", + "build/netstandard1.0/Microsoft.Windows.SDK.Win32Metadata.props", + "buildTransitive/Microsoft.Windows.SDK.Win32Metadata.props", + "buildTransitive/net20/Microsoft.Windows.SDK.Win32Metadata.props", + "buildTransitive/netstandard1.0/Microsoft.Windows.SDK.Win32Metadata.props", + "images/windows.png", + "microsoft.windows.sdk.win32metadata.55.0.45-preview.nupkg.sha512", + "microsoft.windows.sdk.win32metadata.nuspec", + "sdk_license.txt" + ] + }, + "Microsoft.Windows.WDK.Win32Metadata/0.9.9-experimental": { + "sha512": "cncPlxLqR25mFOuvpxZPgXgJqRmXyV5eTULj/9w8AQvO/c1xJDEapohRsWkYaia7hCR/EwEzBHr7RU9u93T03w==", + "type": "package", + "path": "microsoft.windows.wdk.win32metadata/0.9.9-experimental", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Windows.Wdk.winmd", + "build/Microsoft.Windows.WDK.Win32Metadata.props", + "build/net20/Microsoft.Windows.WDK.Win32Metadata.props", + "build/netstandard1.0/Microsoft.Windows.WDK.Win32Metadata.props", + "buildTransitive/Microsoft.Windows.WDK.Win32Metadata.props", + "buildTransitive/net20/Microsoft.Windows.WDK.Win32Metadata.props", + "buildTransitive/netstandard1.0/Microsoft.Windows.WDK.Win32Metadata.props", + "images/windows.png", + "microsoft.windows.wdk.win32metadata.0.9.9-experimental.nupkg.sha512", + "microsoft.windows.wdk.win32metadata.nuspec", + "sdk_license.txt" + ] + }, + "System.Memory/4.5.5": { + "sha512": "XIWiDvKPXaTveaB7HVganDlOCRoj03l+jrwNvcge/t8vhGYKvqV+dMv6G4SAX2NoNmN0wZfVPTAlFwZcZvVOUw==", + "type": "package", + "path": "system.memory/4.5.5", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/net461/System.Memory.dll", + "lib/net461/System.Memory.xml", + "lib/netcoreapp2.1/_._", + "lib/netstandard1.1/System.Memory.dll", + "lib/netstandard1.1/System.Memory.xml", + "lib/netstandard2.0/System.Memory.dll", + "lib/netstandard2.0/System.Memory.xml", + "ref/netcoreapp2.1/_._", + "system.memory.4.5.5.nupkg.sha512", + "system.memory.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Runtime.CompilerServices.Unsafe/6.0.0": { + "sha512": "/iUeP3tq1S0XdNNoMz5C9twLSrM/TH+qElHkXWaPvuNOt+99G75NrV0OS2EqHx5wMN7popYjpc8oTjC1y16DLg==", + "type": "package", + "path": "system.runtime.compilerservices.unsafe/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.Runtime.CompilerServices.Unsafe.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/net461/System.Runtime.CompilerServices.Unsafe.dll", + "lib/net461/System.Runtime.CompilerServices.Unsafe.xml", + "lib/net6.0/System.Runtime.CompilerServices.Unsafe.dll", + "lib/net6.0/System.Runtime.CompilerServices.Unsafe.xml", + "lib/netcoreapp3.1/System.Runtime.CompilerServices.Unsafe.dll", + "lib/netcoreapp3.1/System.Runtime.CompilerServices.Unsafe.xml", + "lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.dll", + "lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.xml", + "system.runtime.compilerservices.unsafe.6.0.0.nupkg.sha512", + "system.runtime.compilerservices.unsafe.nuspec", + "useSharedDesignerContext.txt" + ] + } }, - "libraries": {}, "projectFileDependencyGroups": { - "net6.0": [] + "net6.0": [ + "Microsoft.Windows.CsWin32 >= 0.3.49-beta" + ] }, "packageFolders": { "C:\\Users\\Nitlo\\.nuget\\packages\\": {}, @@ -51,6 +257,13 @@ "frameworks": { "net6.0": { "targetAlias": "net6.0", + "dependencies": { + "Microsoft.Windows.CsWin32": { + "suppressParent": "All", + "target": "Package", + "version": "[0.3.49-beta, )" + } + }, "imports": [ "net461", "net462", diff --git a/源代码/StgSharpDebug/obj/project.nuget.cache b/源代码/StgSharpDebug/obj/project.nuget.cache index 591d064e..69c5aa02 100644 --- a/源代码/StgSharpDebug/obj/project.nuget.cache +++ b/源代码/StgSharpDebug/obj/project.nuget.cache @@ -1,8 +1,15 @@ { "version": 2, - "dgSpecHash": "1nqa9hyE9X+jqyZlRuQCjBTL8MKTTgUfYf2sfonyHllnRQAA71O6a8K8DrjOqAQvuEaLDdfS/m1mxyfRDQg0zg==", + "dgSpecHash": "84WrCu/hdh50wiBeP0zSAmXlJSxVZVcbmMrOYOkm8tQy5/+Tjvf2Dpa+41PoFKcm7+EFWGE+qB480ApAKjKwfg==", "success": true, "projectFilePath": "D:\\NitloadIndustry\\研究项目\\1-Flagship\\TH2020\\ProjectFile\\源代码\\StgSharpDebug\\StgSharpDebug.csproj", - "expectedPackageFiles": [], + "expectedPackageFiles": [ + "C:\\Users\\Nitlo\\.nuget\\packages\\microsoft.windows.cswin32\\0.3.49-beta\\microsoft.windows.cswin32.0.3.49-beta.nupkg.sha512", + "C:\\Users\\Nitlo\\.nuget\\packages\\microsoft.windows.sdk.win32docs\\0.1.42-alpha\\microsoft.windows.sdk.win32docs.0.1.42-alpha.nupkg.sha512", + "C:\\Users\\Nitlo\\.nuget\\packages\\microsoft.windows.sdk.win32metadata\\55.0.45-preview\\microsoft.windows.sdk.win32metadata.55.0.45-preview.nupkg.sha512", + "C:\\Users\\Nitlo\\.nuget\\packages\\microsoft.windows.wdk.win32metadata\\0.9.9-experimental\\microsoft.windows.wdk.win32metadata.0.9.9-experimental.nupkg.sha512", + "C:\\Users\\Nitlo\\.nuget\\packages\\system.memory\\4.5.5\\system.memory.4.5.5.nupkg.sha512", + "C:\\Users\\Nitlo\\.nuget\\packages\\system.runtime.compilerservices.unsafe\\6.0.0\\system.runtime.compilerservices.unsafe.6.0.0.nupkg.sha512" + ], "logs": [] } \ No newline at end of file diff --git a/源代码/StgSharpDebug/obj/x64/Benchmark/net6.0/StgSharpDebug.AssemblyInfo.cs b/源代码/StgSharpDebug/obj/x64/Benchmark/net6.0/StgSharpDebug.AssemblyInfo.cs index 91f1f92b..98e39ef1 100644 --- a/源代码/StgSharpDebug/obj/x64/Benchmark/net6.0/StgSharpDebug.AssemblyInfo.cs +++ b/源代码/StgSharpDebug/obj/x64/Benchmark/net6.0/StgSharpDebug.AssemblyInfo.cs @@ -14,7 +14,7 @@ using System.Reflection; [assembly: System.Reflection.AssemblyCompanyAttribute("StgSharpDebug")] [assembly: System.Reflection.AssemblyConfigurationAttribute("Benchmark")] [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] -[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+6fe6b3b3cf0f9c3e9661a85bbe9b084eae6439cd")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] [assembly: System.Reflection.AssemblyProductAttribute("StgSharpDebug")] [assembly: System.Reflection.AssemblyTitleAttribute("StgSharpDebug")] [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] diff --git a/源代码/StgSharpDebug/obj/x64/Benchmark/net6.0/StgSharpDebug.AssemblyInfoInputs.cache b/源代码/StgSharpDebug/obj/x64/Benchmark/net6.0/StgSharpDebug.AssemblyInfoInputs.cache index db07d74d..eb493cd1 100644 --- a/源代码/StgSharpDebug/obj/x64/Benchmark/net6.0/StgSharpDebug.AssemblyInfoInputs.cache +++ b/源代码/StgSharpDebug/obj/x64/Benchmark/net6.0/StgSharpDebug.AssemblyInfoInputs.cache @@ -1 +1 @@ -48dfbe97284dd3ebda2da46302a4529fe78a17c51349d96e6c0652ee5a8bf5f0 +e340c06b75b4a2ce53efde5f4632c7a375a08a6b1987e3663da0e443a4eb16a3 diff --git a/源代码/StgSharpDebug/obj/x64/Benchmark/net6.0/StgSharpDebug.assets.cache b/源代码/StgSharpDebug/obj/x64/Benchmark/net6.0/StgSharpDebug.assets.cache index 706ab497..5ddc5011 100644 Binary files a/源代码/StgSharpDebug/obj/x64/Benchmark/net6.0/StgSharpDebug.assets.cache and b/源代码/StgSharpDebug/obj/x64/Benchmark/net6.0/StgSharpDebug.assets.cache differ diff --git a/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.GeneratedMSBuildEditorConfig.editorconfig b/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.GeneratedMSBuildEditorConfig.editorconfig index 006ce8af..1e50f4ef 100644 --- a/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.GeneratedMSBuildEditorConfig.editorconfig +++ b/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.GeneratedMSBuildEditorConfig.editorconfig @@ -1,4 +1,6 @@ is_global = true +build_property.CsWin32InputMetadataPaths = C:\Users\Nitlo\.nuget\packages\microsoft.windows.sdk.win32metadata\55.0.45-preview\Windows.Win32.winmd|C:\Users\Nitlo\.nuget\packages\microsoft.windows.wdk.win32metadata\0.9.9-experimental\Windows.Wdk.winmd +build_property.CsWin32InputDocPaths = C:\Users\Nitlo\.nuget\packages\microsoft.windows.sdk.win32docs\0.1.42-alpha\apidocs.msgpack build_property.TargetFramework = net6.0 build_property.TargetPlatformMinVersion = build_property.UsingMicrosoftNETSdkWeb = diff --git a/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.assets.cache b/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.assets.cache index c463aabf..2db38a3c 100644 Binary files a/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.assets.cache and b/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.assets.cache differ diff --git a/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.csproj.CoreCompileInputs.cache b/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.csproj.CoreCompileInputs.cache index f53a4346..5c087af5 100644 --- a/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.csproj.CoreCompileInputs.cache +++ b/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.csproj.CoreCompileInputs.cache @@ -1 +1 @@ -b0555e8bc2f4cecb5b9bba733e29ea69c5f126238a90078e0acf358b82ccc732 +b7447d9f42f748768ec2587b88b8ed4bce54f8745553420be3c862e6a856c127 diff --git a/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.csproj.FileListAbsolute.txt b/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.csproj.FileListAbsolute.txt index e0aea6c1..62315df8 100644 --- a/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.csproj.FileListAbsolute.txt +++ b/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.csproj.FileListAbsolute.txt @@ -7,8 +7,24 @@ D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharp D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\bin\x64\Debug\net6.0\StgSharpDebug.dll D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\bin\x64\Debug\net6.0\StgSharpDebug.pdb D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\bin\x64\Debug\net6.0\StgSharpDebug.xml +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\Output\x64\Debug\net6.0\StgSharpDebug.exe +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\Output\x64\Debug\net6.0\Shader\awesomeface.png +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\Output\x64\Debug\net6.0\Shader\fragment.frag +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\Output\x64\Debug\net6.0\Shader\Image1.png +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\Output\x64\Debug\net6.0\Shader\vertex.vert +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\Output\x64\Debug\net6.0\StgSharpDebug.deps.json +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\Output\x64\Debug\net6.0\StgSharpDebug.runtimeconfig.json +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\Output\x64\Debug\net6.0\StgSharpDebug.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\Output\x64\Debug\net6.0\StgSharpDebug.pdb +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\Output\x64\Debug\net6.0\StgSharpDebug.xml D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\obj\x64\Debug\net6.0\StgSharpDebug.GeneratedMSBuildEditorConfig.editorconfig D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\obj\x64\Debug\net6.0\StgSharpDebug.AssemblyInfoInputs.cache D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\obj\x64\Debug\net6.0\StgSharpDebug.AssemblyInfo.cs D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\obj\x64\Debug\net6.0\StgSharpDebug.csproj.CoreCompileInputs.cache D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\obj\x64\Debug\net6.0\StgSharpDebug.sourcelink.json +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\obj\x64\Debug\net6.0\StgSharpDebug.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\obj\x64\Debug\net6.0\refint\StgSharpDebug.dll +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\obj\x64\Debug\net6.0\StgSharpDebug.xml +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\obj\x64\Debug\net6.0\StgSharpDebug.pdb +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\obj\x64\Debug\net6.0\StgSharpDebug.genruntimeconfig.cache +D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\obj\x64\Debug\net6.0\ref\StgSharpDebug.dll diff --git a/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.dll b/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.dll new file mode 100644 index 00000000..3d12cd20 Binary files /dev/null and b/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.dll differ diff --git a/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.genruntimeconfig.cache b/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.genruntimeconfig.cache new file mode 100644 index 00000000..aeb22e5f --- /dev/null +++ b/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.genruntimeconfig.cache @@ -0,0 +1 @@ +ea0ebfd1cd59c5700d207915aa4401613d3e32652ccbcca32e347ba391485f3e diff --git a/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.pdb b/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.pdb new file mode 100644 index 00000000..8bff6e94 Binary files /dev/null and b/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.pdb differ diff --git a/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.sourcelink.json b/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.sourcelink.json index 0fffb972..88f19103 100644 --- a/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.sourcelink.json +++ b/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.sourcelink.json @@ -1 +1 @@ -{"documents":{"D:\\NitloadIndustry\\研究项目\\1-Flagship\\TH2020\\ProjectFile\\*":"https://raw.githubusercontent.com/Nitload-NSI/CCD_Github/5d778e0f2f6e677453cebc990919697968c771f9/*"}} \ No newline at end of file +{"documents":{"D:\\NitloadIndustry\\研究项目\\1-Flagship\\TH2020\\ProjectFile\\*":"https://raw.githubusercontent.com/Nitload-NSI/CCD_Github/839156948261837c173ee878d930fc868fce223e/*"}} \ No newline at end of file diff --git a/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.xml b/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.xml new file mode 100644 index 00000000..012826b0 --- /dev/null +++ b/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.xml @@ -0,0 +1,1584 @@ + + + + StgSharpDebug + + + + + Get the status of a certain key on the keyboard. + + + + + + + + Function handler to load an opengl function by serching its name. + + the name of the Opengl function + An intptr value representing the pointer to the function + + + + + + + + + OpenGL package used by current form context. + + + + + Height of this form, represent in + + + + + Representing + + + + + Width of this form, represent in + + + + + Width of this form, represent in + + + + + Init an OpenGl context if current form has not been binded to any context. + and set the context binded to current form as current OpenGL context. + + Something goes wrong and + StgSharp fails in creating a new OpenGL context. + + + + Set all necessary metadata to current form instance + + + + + Resize the current form + + New width of the window + New height of the window + + + + Resize the current form + + + A (width,height) representing the new size of current form + + + + + Set the size limit of current form + + Minimum width of current form + Minimum height of current form + Maximum width of curent form + Maximum height of current form + + + + Set the size limit of current form + + + Minimun size of current form. In form of a of (width,height) + + + Maximum size of current form. In form of a of (width,height) + + + + + Necessary operation to init this form. + + + + + + Behaviour of current form when in a render cycle. + When this form + + + + + + Init this form and render it on screen, and respond with operation + + + + + Get OpenGL library of this form's context. + + A package contains all opengl APIs + + + + Define how current form render in one frame. + + + Please define this befor calling any OpenGL api and other graphic methods. + + + + + Create a set of . + + Amount of EBO to be created. + + + + + Create a set of . + + Amount of VAO to be crated. + + + + + Create a sets of + + Amount of textures to be crated. + + + + + Create aset of . + + Amount of Object to be created. + + + + + Create an instance of program + + New instance of instance. + + + + A timer counting frames after its construction. + + + + + Frames after this timer created. + + + + + Convert a into uint value. + this will get total frames since the timer was created. + + to be converted + + + + Interface of all kinds OpenGL buffer onjects + + + + + Get the only handle to one of the Object instance + + + + + + + Bind a buffer instance to OpenGL + + Index of handle of the object in this instance to be bind + + + + + + + A collecion of handle to Element Buffer Object in OpenGL. + Each value indexed from instance of this class this + is the only handle to one Element Buffer Object. + + + + + + + + + + + + Set data to current vertex buffer object + + Type of bufferData + Index to find certain VBO in this instance + Data to write in + How OpenGL use these data, defined by + + + + Set data to current vertex buffer object + + Type of bufferData + Index to find certain VBO in this instance + A array of data to write in + How OpenGL use these data, defined by + + + + + + + + + Load all aupportable OpenGL APIs and bind them to given context. + + The used as current OpenGL context + A delegate that can get o + + + + Get the function pointer of given OpenGL api name + + Name of the OpenGL api + The funtion pointer of the api in form of + + + + Compile the vertex shader to be attached to this shader. + + GLSL code of vertex shader. + + + + + + + + + + + Inti a shader with no program attached. + + + + + Link the shader to current context. + + + + + Get a uniform form current shader, + the value type of the uniform should be provided. + + Name of the Uniform in shader code + + + + + Get a uniform form current shader, + the value type of the uniform should be provided. + + Name of the Uniform in shader code + + + + + Get a uniform form current shader, + the value type of the uniform should be provided. + + Name of the Uniform in shader code + + + + + Let the current context use this shader. + + + + + Same function as OpenGL api glActiveTexture + + type of texture to activate + + + + Operation after alignment by calling . + No calling of this method is acceptable, but it will bring the risk + of that relevant code will not run if it is interrupted by frame overtime. + Please call this method immediately after calling , + too early or sonner may cause . + + The form used as frame update benchmark. + Operation after frame update alignment. + The action binded to a wrong alignment. + + + + Align a sets of code to frame update of a . + Usually, a call of is required. + This method is used as sigle thread method. If more than one + alignment is requested, a will throw. + + The form used as frame update benchmark. + More than one alingment attached to one form timer + + + + Same fucntion as OpenGL api glAttachShader. + Only the first in handle + will be attached to the first in handle. + The rest shader and program will be ignored. + + Shader program to be attachec + A shader part to attach + + + + Bind the indexed buffer object to certain type of buffer + + + + + + + Same function as OpenGL api, glBindTexture. + + Type of texture to bind + Sign of texture + + + + Same function as OpenGL api, glBindVertexArray + + + + + + Clear buffers to preset values + + + + + + Call apiClearColor in OpenGL + specifies the red, green, blue, and alpha values used by apiClear to clear the color buffers. + Values specified by apiClearColor are clamped to the range [0,1] + + Specify the red values used when the color buffers are cleared. + Specify the red values used when the color buffers are cleared. + Specify the red values used when the color buffers are cleared. + Specify the red values used when the color buffers are cleared. + + + + Conpile the provided shader code in string form. + + A string array contains all shaders' code + An enum represent the type of the shader to + conpile, including vertex shader and fragment shader. + An handle of conpiled shader + + + + Same function as OpenGL api, glCreateProgram + + A handle representing a single shader program + + + + Same function as OpenGL api, glCreateProgram. + Used for creating multiple shader program. + + A handle representing all shader programs + + + + Creates a form and its associated + + Required width + Required width + Tittle of the window + + + + + + + Same function as OpenGL api, glDeleteBuffer. This method can delete one buffer in one call + + a handle representing the buffer to be deleted + + + + Same function as OpenGL api, glDeleteBuffer. This method can delete a sets of buffers in one call. + + Array of buffers to be deleted + + + + Same function as OpenGL api, glDeleteVertexArrays + + Handle of vertex objects. + + + + + + + + + + + + + Same fucntion as the OpenGL api glGenBuffers + + + + + + + Same fucnction as OpenGL api glGenTextures. + + amount of textures to generate + + + + Same fucntion as OpenGL api, glGenVertexArray + + Amount of vao to be generated + + + + Same fucntion as OpenGL api, glGetUniformLocation + + Shader program to find the uniform + Name of the uniform + + + + + Make the OpenGL context of a certain as the activated OpenGL context. + + + + + + Set data value to a float , + all types of parameters are float. + + The target + The first value to be set + The second value to be set + The third value to be set + The forth value to be set + + + + Set data value to a float , + all types of parameters are float. + + The target + A packing four parameters of the uniform + + + + Set data value to a float , + all types of parameters are float. + + The target + The first value to be set + The second value to be set + The third value to be set + + + + Set data value to a float , + all types of parameters are float. + + The target + The first value to be set + The second value to be set + + + + Set data value to a float , + all types of parameters are float. + + The target + The value to be set + + + + Set data value to a int , + all types of parameters are int. + + The target + The value to be set + + + + Set data value to a float , + all types of parameters are . + + The target + A value of the uniform + + + + Set how a shader parameter read data from a VBO. + + Serial number of the parameter + Amount of data each elements contains + Type of data read by shader + + Pixels stride of each sets of data + + + + + Same function as OpenGL api glTexImage2d + + texture target to load image in + level of mipmap, 0 if default + OpenGL's internal color channel format + width of image + height of image + color channels of this image + how this image express each pixel + data array of pixels + + + + Same fucntion as OpenGL api glTexParameteri + + texture target to set parameters + name of parameter + value of parameter + + + + Same fucntion as OpenGL api glUseShader. + + Sign of program to be used + + + + Same function as the OpenGL api, glViewPort + + + + + + + + + A sensor used for cheking out if a bullet hit a player or something else + + + + + A 2D vector presenting the position of an enemy entity, position can also be visited by X, Y + + + + + X position of an enenmy entity + + + + + Y position of an enemy entity + + + + + Version of current StgSharp platform. + Main version represent in hundred's digit, + and sub version represent in ten's digit. + + + + + Init an instance of OpenGL program, + This method should be called before other + graphic methods, after LoadGL method. + + + + + Write a log message to log file, and mark the level of this message. + + A string contains information of how current evironment runs. + The severity of current message. + + + + Part of a circle. All points on a arc has the same distance to their center. + + + + + A collection of all point on the same plain and has the same distance to a point + + + + + The origin of this coordinate. + + + + + The horizontial axis of the coordinate. + Point to the right direction. + + + + + The vertical axis of the coordinate. + Point to the top direction. + + + + + 当几何体调用了过多的CalcVec方法时,产生UnusedVertexException异常 + + + + + Caculate the movement of a point. + + The game tick represent time passed by + A 3d vector representing movement + + + + Move begin side of a line. + It is recommended to override this function rather than + loading an with same function. + + Time passed since current line was created. + + + + Move end side of a line. + It is recommended to override this function rather than + loading an with same function. + + Time passed since current line was created. + + + + + Move the third vertix. this is a useless method for Parallelograms. + + Current time tick + + Geometry overdefined + + + + Move the third vertix. This method is useless for Parallelograms. + + Current time tick + + Geometry overdefined + + + + 平面几何体。包含三角形,对称四边形,自由多边形等。最多可由16个点参数定义。 + + + + + Tick time this geometry eas crested + + + + + Get all sides of this . + + A array contains all straight s of current geometry item. + + + + Get a flat cincide with current geometry. + + + + + + Update the coordinate of the point. If this is a moving point, + (Points on sides or surface if other geometry items) + please do not define any motion here, codes will be ignored by program + + Time passes since the program begin, counted by frames + + + + 计算中心点相对于参考原点的位移 + + 当前游戏刻 + + + + + A square + + + + + A linear data structure with dynamic length. + It contains a of , + each is twice longer than the former one. + + + + + + Init a with a certain amount of elements prepared. + + Amount of elements to be prepared. + + + + Create a new instance of , + and fill the begining ones of elemtns as given instance. + + Amount of beginning elements to be filled + + + + + Length of this + + + + + A pair of value + + + + + A value. + The lower byte is , + and higher byte is . + + + + + The first value. + + + + + The second value. + + + + + Whether this linked list has no members or not. + + + + + The first memeber of this linkec list. + Set value to this property will reset the first node. + + + + + The last memeber of this linkec list. + Set value to this property will reset the first node. + + + + + Add an item to the tail of linked list. + + The item ready to add to the list + + + + Remove all members from this list + + + + + Insert a member to current linkedlist, + the new member will be after a certain existed member. + + New member will be inserted after this member + The new member to be inserted + + + + Remove a member from this linkedlist. + + Member to be removed from this list + + + + remove the first member of the list + + + + + remove the last member of the list + + + + + OpenGL numeric type. + An IEEE-754 floating-point value, clamped to the range [0,1]. + + + + + OpenGL numeric type. + An IEEE-754 double precision floating-point value, clamped to the range [0,1]. + + + + + A two dimension vector defined by two elements. + Vec2Ds in StgSharp are defaultly usaed as colum vector. + + + + + Reurns the value of ArcSin(x) + + The sine value of the angle + + + + + + Get the value of E ^ x; + + + + + + + + + + + Returns the value of ln(x). + + + + + calculate the value of x^y + + + + Returns the value of x^y + + + + + + + + + + returns a random float number between 0 and 1. + + + + + + Generates a random seed in int value. + + + + + + A handle to an OpenGL object, + must be indexed from a . + Direct call will cause + + + + + A handle to an OpenGL object. + + + + + temporarily release the handle of GLhandle sets. + Please call method before indexing. + + + + + Realse all resource in this handle. + This will release all resource in this . + This will be not usable. + + + + The COLORREF value is used to specify an RGB color. + + When specifying an explicit [RGB](/windows/desktop/api/Wingdi/nf-wingdi-rgb) color, the **COLORREF** value has the following hexadecimal form: `0x00bbggrr` The low-order byte contains a value for the relative intensity of red; the second byte contains a value for green; and the third byte contains a value for blue. The high-order byte must be zero. The maximum value for a single byte is 0xFF. To create a **COLORREF** color value, use the [RGB](/windows/desktop/api/Wingdi/nf-wingdi-rgb) macro. To extract the individual values for the red, green, and blue components of a color value, use the [**GetRValue**](/windows/desktop/api/Wingdi/nf-wingdi-getrvalue), [GetGValue](/windows/desktop/api/Wingdi/nf-wingdi-getgvalue), and [GetBValue](/windows/desktop/api/Wingdi/nf-wingdi-getbvalue) macros, respectively. + Read more on docs.microsoft.com. + + + + + A pointer to a null-terminated, constant, ANSI character string. + + + + + A pointer to the first character in the string. The content should be considered readonly, as it was typed as constant in the SDK. + + + + + Gets the number of characters up to the first null character (exclusive). + + + + + Returns a with a copy of this character array, decoding as UTF-8. + + A , or if is . + + + + Returns a span of the characters in this string, up to the first null character (exclusive). + + + + + A pointer to a null-terminated, constant character string. + + + + + A pointer to the first character in the string. The content should be considered readonly, as it was typed as constant in the SDK. + + + + + Gets the number of characters up to the first null character (exclusive). + + + + + Returns a with a copy of this character array, up to the first null character (exclusive). + + A , or if is . + + + + Returns a span of the characters in this string, up to the first null character (exclusive). + + + + The GLYPHMETRICSFLOAT structure contains information about the placement and orientation of a glyph in a character cell. + The values of GLYPHMETRICSFLOAT are specified as notional units. + + + Specifies the width of the smallest rectangle (the glyph's black box) that completely encloses the glyph. + + + Specifies the height of the smallest rectangle (the glyph's black box) that completely encloses the glyph. + + + Specifies the x and y coordinates of the upper-left corner of the smallest rectangle that completely encloses the glyph. + + + Specifies the horizontal distance from the origin of the current character cell to the origin of the next character cell. + + + Specifies the vertical distance from the origin of the current character cell to the origin of the next character cell. + + + The LAYERPLANEDESCRIPTOR structure describes the pixel format of a drawing surface. + Please notice, as documented above, that certain layer plane properties are not supported in the current implementation. The implementation is the Microsoft GDI software implementation of OpenGL. Hardware manufacturers that enhance parts of OpenGL may support some layer plane properties not supported by the generic implementation. + + + Specifies the size of this data structure. Set this value to sizeof(LAYERPLANEDESCRIPTOR). + + + Specifies the version of this data structure. Set this value to 1. + + + + A set of bit flags that specify properties of the layer plane. The properties are generally not mutually exclusive; any combination of bit flags can be set, with the exceptions noted. The following bit flag constants are defined. + This doc was truncated. + Read more on docs.microsoft.com. + + + + + Specifies the type of pixel data. The following types are defined. + This doc was truncated. + Read more on docs.microsoft.com. + + + + Specifies the number of color bitplanes in each color buffer. For RGBA pixel types, it is the size of the color buffer, excluding the alpha bitplanes. For color-index pixels, it is the size of the color-index buffer. + + + Specifies the number of red bitplanes in each RGBA color buffer. + + + Specifies the shift count for red bitplanes in each RGBA color buffer. + + + Specifies the number of green bitplanes in each RGBA color buffer. + + + Specifies the shift count for green bitplanes in each RGBA color buffer. + + + Specifies the number of blue bitplanes in each RGBA color buffer. + + + Specifies the shift count for blue bitplanes in each RGBA color buffer. + + + Specifies the number of alpha bitplanes in each RGBA color buffer. Alpha bitplanes are not supported. + + + Specifies the shift count for alpha bitplanes in each RGBA color buffer. Alpha bitplanes are not supported. + + + Specifies the total number of bitplanes in the accumulation buffer. + + + Specifies the number of red bitplanes in the accumulation buffer. + + + Specifies the number of green bitplanes in the accumulation buffer. + + + Specifies the number of blue bitplanes in the accumulation buffer. + + + Specifies the number of alpha bitplanes in the accumulation buffer. + + + Specifies the depth of the depth (z-axis) buffer. + + + Specifies the depth of the stencil buffer. + + + Specifies the number of auxiliary buffers. Auxiliary buffers are not supported. + + + + + + Not used. Must be zero. + + + When the LPD_TRANSPARENT flag is set, specifies the transparent color or index value. Typically the value is zero. + + + The PIXELFORMATDESCRIPTOR structure describes the pixel format of a drawing surface. + Please notice carefully, as documented above, that certain pixel format properties are not supported in the current generic implementation. The generic implementation is the Microsoft GDI software implementation of OpenGL. Hardware manufacturers may enhance parts of OpenGL, and may support some pixel format properties not supported by the generic implementation. + + + Specifies the size of this data structure. This value should be set to sizeof(PIXELFORMATDESCRIPTOR). + + + Specifies the version of this data structure. This value should be set to 1. + + + + A set of bit flags that specify properties of the pixel buffer. The properties are generally not mutually exclusive; you can set any combination of bit flags, with the exceptions noted. The following bit flag constants are defined. + This doc was truncated. + Read more on docs.microsoft.com. + + + + + Specifies the type of pixel data. The following types are defined. + This doc was truncated. + Read more on docs.microsoft.com. + + + + Specifies the number of color bitplanes in each color buffer. For RGBA pixel types, it is the size of the color buffer, excluding the alpha bitplanes. For color-index pixels, it is the size of the color-index buffer. + + + Specifies the number of red bitplanes in each RGBA color buffer. + + + Specifies the shift count for red bitplanes in each RGBA color buffer. + + + Specifies the number of green bitplanes in each RGBA color buffer. + + + Specifies the shift count for green bitplanes in each RGBA color buffer. + + + Specifies the number of blue bitplanes in each RGBA color buffer. + + + Specifies the shift count for blue bitplanes in each RGBA color buffer. + + + Specifies the number of alpha bitplanes in each RGBA color buffer. Alpha bitplanes are not supported. + + + Specifies the shift count for alpha bitplanes in each RGBA color buffer. Alpha bitplanes are not supported. + + + Specifies the total number of bitplanes in the accumulation buffer. + + + Specifies the number of red bitplanes in the accumulation buffer. + + + Specifies the number of green bitplanes in the accumulation buffer. + + + Specifies the number of blue bitplanes in the accumulation buffer. + + + Specifies the number of alpha bitplanes in the accumulation buffer. + + + Specifies the depth of the depth (z-axis) buffer. + + + Specifies the depth of the stencil buffer. + + + Specifies the number of auxiliary buffers. Auxiliary buffers are not supported. + + + Specifies the number of overlay and underlay planes. Bits 0 through 3 specify up to 15 overlay planes and bits 4 through 7 specify up to 15 underlay planes. + + + Ignored. Earlier implementations of OpenGL used this member, but it is no longer used. + + + Specifies the transparent color or index of an underlay plane. When the pixel type is RGBA, dwVisibleMask is a transparent RGB color value. When the pixel type is color index, it is a transparent index value. + + + Ignored. Earlier implementations of OpenGL used this member, but it is no longer used. + + + The POINTFLOAT structure contains the x and y coordinates of a point. + + Learn more about this API from docs.microsoft.com. + + + + Specifies the horizontal (x) coordinate of a point. + + + Specifies the vertical (y) coordinate of a point. + + + + Contains extern methods from "GDI32.dll". + + + Contains extern methods from "KERNEL32.dll". + + + Contains extern methods from "OPENGL32.dll". + + + Contains extern methods from "USER32.dll". + + + + + + + The ChoosePixelFormat function attempts to match an appropriate pixel format supported by a device context to a given pixel format specification. + Specifies the device context that the function examines to determine the best match for the pixel format descriptor pointed to by ppfd. + + Pointer to a PIXELFORMATDESCRIPTOR structure that specifies the requested pixel format. In this context, the members of the PIXELFORMATDESCRIPTOR structure that ppfd points to are used as follows: + This doc was truncated. + Read more on docs.microsoft.com. + + + If the function succeeds, the return value is a pixel format index (one-based) that is the closest match to the given pixel format descriptor. If the function fails, the return value is zero. To get extended error information, call GetLastError. + + You must ensure that the pixel format matched by the ChoosePixelFormat function satisfies your requirements. For example, if you request a pixel format with a 24-bit RGB color buffer but the device context offers only 8-bit RGB color buffers, the function returns a pixel format with an 8-bit RGB color buffer. + + + The DescribePixelFormat function obtains information about the pixel format identified by iPixelFormat of the device associated with hdc. The function sets the members of the PIXELFORMATDESCRIPTOR structure pointed to by ppfd with that pixel format data. + Specifies the device context. + Index that specifies the pixel format. The pixel formats that a device context supports are identified by positive one-based integer indexes. + The size, in bytes, of the structure pointed to by ppfd. The DescribePixelFormat function stores no more than nBytes bytes of data to that structure. Set this value to sizeof(PIXELFORMATDESCRIPTOR). + Pointer to a PIXELFORMATDESCRIPTOR structure whose members the function sets with pixel format data. The function stores the number of bytes copied to the structure in the structure's nSize member. If, upon entry, ppfd is NULL, the function writes no data to the structure. This is useful when you only want to obtain the maximum pixel format index of a device context. + + If the function succeeds, the return value is the maximum pixel format index of the device context. In addition, the function sets the members of the PIXELFORMATDESCRIPTOR structure pointed to by ppfd according to the specified pixel format. If the function fails, the return value is zero. To get extended error information, call GetLastError. + + + Learn more about this API from docs.microsoft.com. + + + + The DeleteEnhMetaFile function deletes an enhanced-format metafile or an enhanced-format metafile handle. + A handle to an enhanced metafile. + + If the function succeeds, the return value is nonzero. If the function fails, the return value is zero. + + If the hemf parameter identifies an enhanced metafile stored in memory, the DeleteEnhMetaFile function deletes the metafile. If hemf identifies a metafile stored on a disk, the function deletes the metafile handle but does not destroy the actual metafile. An application can retrieve the file by calling the GetEnhMetaFile function. + + + + + + The GetEnhMetaFilePixelFormat function retrieves pixel format information for an enhanced metafile. + Identifies the enhanced metafile. + Specifies the size, in bytes, of the buffer into which the pixel format information is copied. + Pointer to a PIXELFORMATDESCRIPTOR structure that contains the logical pixel format specification. The metafile uses this structure to record the logical pixel format specification. + + If the function succeeds and finds a pixel format, the return value is the size of the metafile's pixel format. If no pixel format is present, the return value is zero. If an error occurs and the function fails, the return value is GDI_ERROR. To get extended error information, call GetLastError. + + + When an enhanced metafile specifies a pixel format in its ENHMETAHEADER structure and the pixel format fits in the buffer, the pixel format information is copied into ppfd. When cbBuffer is too small to contain the pixel format of the metafile, the pixel format is not copied to the buffer. In either case, the function returns the size of the metafile's pixel format. For information on metafile recording and other operations, see Enhanced Metafile Operations. + Read more on docs.microsoft.com. + + + + The GetPixelFormat function obtains the index of the currently selected pixel format of the specified device context. + Specifies the device context of the currently selected pixel format index returned by the function. + + If the function succeeds, the return value is the currently selected pixel format index of the specified device context. This is a positive, one-based index value. If the function fails, the return value is zero. To get extended error information, call GetLastError. + + + Learn more about this API from docs.microsoft.com. + + + + + + + The SetPixelFormat function sets the pixel format of the specified device context to the format specified by the iPixelFormat index. + Specifies the device context whose pixel format the function attempts to set. + Index that identifies the pixel format to set. The various pixel formats supported by a device context are identified by one-based indexes. + Pointer to a PIXELFORMATDESCRIPTOR structure that contains the logical pixel format specification. The system's metafile component uses this structure to record the logical pixel format specification. The structure has no other effect upon the behavior of the SetPixelFormat function. + + If the function succeeds, the return value is TRUE. If the function fails, the return value is FALSE. To get extended error information, call GetLastError. + + + If hdc references a window, calling the SetPixelFormat function also changes the pixel format of the window. Setting the pixel format of a window more than once can lead to significant complications for the Window Manager and for multithread applications, so it is not allowed. An application can only set the pixel format of a window one time. Once a window's pixel format is set, it cannot be changed. You should select a pixel format in the device context before calling the wglCreateContext function. The wglCreateContext function creates a rendering context for drawing on the device in the selected pixel format of the device context. An OpenGL window has its own pixel format. Because of this, only device contexts retrieved for the client area of an OpenGL window are allowed to draw into the window. As a result, an OpenGL window should be created with the WS_CLIPCHILDREN and WS_CLIPSIBLINGS styles. Additionally, the window class attribute should not include the CS_PARENTDC style. + Read more on docs.microsoft.com. + + + + The SwapBuffers function exchanges the front and back buffers if the current pixel format for the window referenced by the specified device context includes a back buffer. + + If the function succeeds, the return value is TRUE. If the function fails, the return value is FALSE. To get extended error information, call GetLastError. + + + If the current pixel format for the window referenced by the device context does not include a back buffer, this call has no effect and the content of the back buffer is undefined when the function returns. With multithread applications, flush the drawing commands in any other threads drawing to the same window before calling SwapBuffers. + Read more on docs.microsoft.com. + + + + Closes an open object handle. + A valid handle to an open object. + + If the function succeeds, the return value is nonzero. If the function fails, the return value is zero. To get extended error information, call GetLastError. If the application is running under a debugger, the function will throw an exception if it receives either a handle value that is not valid or a pseudo-handle value. This can happen if you close a handle twice, or if you call CloseHandle on a handle returned by the FindFirstFile function instead of calling the FindClose function. + + + The CloseHandle function closes handles to the following objects: + This doc was truncated. + Read more on docs.microsoft.com. + + + + Frees the loaded dynamic-link library (DLL) module and, if necessary, decrements its reference count. + + A handle to the loaded library module. The LoadLibrary, LoadLibraryEx, GetModuleHandle, or GetModuleHandleEx function returns this handle. + Read more on docs.microsoft.com. + + + If the function succeeds, the return value is nonzero. If the function fails, the return value is zero. To get extended error information, call the GetLastError function. + + + The system maintains a per-process reference count for each loaded module. A module that was loaded at process initialization due to load-time dynamic linking has a reference count of one. The reference count for a module is incremented each time the module is loaded by a call to LoadLibrary. The reference count is also incremented by a call to LoadLibraryEx unless the module is being loaded for the first time and is being loaded as a data or image file. The reference count is decremented each time the FreeLibrary or FreeLibraryAndExitThread function is called for the module. When a module's reference count reaches zero or the process terminates, the system unloads the module from the address space of the process. Before unloading a library module, the system enables the module to detach from the process by calling the module's DllMain function, if it has one, with the DLL_PROCESS_DETACH value. Doing so gives the library module an opportunity to clean up resources allocated on behalf of the current process. After the entry-point function returns, the library module is removed from the address space of the current process. It is not safe to call FreeLibrary from DllMain. For more information, see the Remarks section in DllMain. Calling FreeLibrary does not affect other processes that are using the same module. Use caution when calling FreeLibrary with a handle returned by GetModuleHandle. The GetModuleHandle function does not increment a module's reference count, so passing this handle to FreeLibrary can cause a module to be unloaded prematurely. A thread that must unload the DLL in which it is executing and then terminate itself should call FreeLibraryAndExitThread instead of calling FreeLibrary and ExitThread separately. Otherwise, a race condition can occur. For details, see the Remarks section of FreeLibraryAndExitThread. + Read more on docs.microsoft.com. + + + + The wglDeleteContext function deletes a specified OpenGL rendering context. + + If the function succeeds, the return value is TRUE. If the function fails, the return value is FALSE. To get extended error information, call GetLastError. + + + It is an error to delete an OpenGL rendering context that is the current context of another thread. However, if a rendering context is the calling thread's current context, the wglDeleteContext function changes the rendering context to being not current before deleting it. The wglDeleteContext function does not delete the device context associated with the OpenGL rendering context when you call the wglMakeCurrent function. After calling wglDeleteContext, you must call DeleteDC to delete the associated device context. + Read more on docs.microsoft.com. + + + + + + + The wglCreateContext function creates a new OpenGL rendering context, which is suitable for drawing on the device referenced by hdc. The rendering context has the same pixel format as the device context. + + If the function succeeds, the return value is a valid handle to an OpenGL rendering context. If the function fails, the return value is NULL. To get extended error information, call GetLastError. + + + A rendering context is not the same as a device context. Set the pixel format of the device context before creating a rendering context. For more information on setting the device context's pixel format, see the SetPixelFormat function. To use OpenGL, you create a rendering context, select it as a thread's current rendering context, and then call OpenGL functions. When you are finished with the rendering context, you dispose of it by calling the wglDeleteContext function. The following code example shows wglCreateContext usage. + + This doc was truncated. + Read more on docs.microsoft.com. + + + + + + + The wglCreateLayerContext function creates a new OpenGL rendering context for drawing to a specified layer plane on a device context. + + If the function succeeds, the return value is a handle to an OpenGL rendering context. If the function fails, the return value is NULL. To get extended error information, call GetLastError. + + + A rendering context is a port through which all OpenGL commands pass. Every thread that makes OpenGL calls must have one current, active rendering context. A rendering context is not the same as a device context; a rendering context contains information specific to OpenGL, while a device context contains information specific to GDI. Before you create a rendering context, set the pixel format of the device context with the SetPixelFormat function. You can use a rendering context in a specified layer plane of a window with identical pixel formats only. With OpenGL applications that use multiple threads, you create a rendering context, select it as the current rendering context of a thread, and make OpenGL calls for the specified thread. When you are finished with the rendering context of the thread, call the wglDeleteContext function. + Read more on docs.microsoft.com. + + + + + + + The wglCopyContext function copies selected groups of rendering states from one OpenGL rendering context to another. + If the function succeeds, the return value is TRUE. If the function fails, the return value is FALSE. To get extended error information, call GetLastError. + + Using the wglCopyContext function, you can synchronize the rendering state of two rendering contexts. You can only copy the rendering state between two rendering contexts within the same process. The rendering contexts must be from the same OpenGL implementation. For example, you can always copy a rendering state between two rendering contexts with identical pixel format in the same process. You can copy the same state information available only with the glPushAttrib function. You cannot copy some state information, such as pixel pack/unpack state, render mode state, select state, and feedback state. When you call wglCopyContext, make sure that the destination rendering context, hglrcDst, is not current to any thread. + Read more on docs.microsoft.com. + + + + + + + The wglDescribeLayerPlane function obtains information about the layer planes of a given pixel format. + + If the function succeeds, the return value is TRUE. In addition, the wglDescribeLayerPlane function sets the members of the LAYERPLANEDESCRIPTOR structure pointed to by plpd according to the specified layer plane (iLayerPlane ) of the specified pixel format (iPixelFormat ). If the function fails, the return value is FALSE. + + The numbering of planes (iLayerPlane ) determines their order. Higher-numbered planes overlay lower-numbered planes. + + + + + + The wglGetCurrentContext function obtains a handle to the current OpenGL rendering context of the calling thread. + If the calling thread has a current OpenGL rendering context, wglGetCurrentContext returns a handle to that rendering context. Otherwise, the return value is NULL. + The current OpenGL rendering context of a thread is associated with a device context by means of the wglMakeCurrent function. You can use the wglGetCurrentDC function to obtain a handle to the device context associated with the current OpenGL rendering context. + + + The wglGetCurrentDC function obtains a handle to the device context that is associated with the current OpenGL rendering context of the calling thread. + If the calling thread has a current OpenGL rendering context, the function returns a handle to the device context associated with that rendering context by means of the wglMakeCurrent function. Otherwise, the return value is NULL. + You associate a device context with an OpenGL rendering context when it calls the wglMakeCurrent function. You can use the wglGetCurrentContext function to obtain a handle to the calling thread's current OpenGL rendering context. + + + + + + Retrieves the palette entries from a given color-index layer plane for a specified device context. + + Type: int If the function succeeds, the return value is the number of entries that were set in the palette in the specified layer plane of the window. If the function fails or when no pixel format is selected, the return value is zero. To get extended error information, call GetLastError. + + + Each color-index layer plane in a window has a palette with a size 2^n, where n is the number of bit planes in the layer plane. You cannot modify the transparent index of a palette. Use the wglRealizeLayerPalette function to realize the layer palette. Initially the layer palette contains only entries for white. + Read more on docs.microsoft.com. + + + + + + + The wglGetProcAddress function returns the address of an OpenGL extension function for use with the current OpenGL rendering context. + + When the function succeeds, the return value is the address of the extension function. When no current rendering context exists or the function fails, the return value is NULL. To get extended error information, call GetLastError. + + + The OpenGL library supports multiple implementations of its functions. Extension functions supported in one rendering context are not necessarily available in a separate rendering context. Thus, for a given rendering context in an application, use the function addresses returned by the wglGetProcAddress function only. The spelling and the case of the extension function pointed to by lpszProc must be identical to that of a function supported and implemented by OpenGL. Because extension functions are not exported by OpenGL, you must use wglGetProcAddress to get the addresses of vendor-specific extension functions. The extension function addresses are unique for each pixel format. All rendering contexts of a given pixel format share the same extension function addresses. + Read more on docs.microsoft.com. + + + + + + + The wglMakeCurrent function makes a specified OpenGL rendering context the calling thread's current rendering context. + When the wglMakeCurrent function succeeds, the return value is TRUE; otherwise the return value is FALSE. To get extended error information, call GetLastError. + + The hdc parameter must refer to a drawing surface supported by OpenGL. It need not be the same hdc that was passed to wglCreateContext when hglrc was created, but it must be on the same device and have the same pixel format. GDI transformation and clipping in hdc are not supported by the rendering context. The current rendering context uses the hdc device context until the rendering context is no longer current. Before switching to the new rendering context, OpenGL flushes any previous rendering context that was current to the calling thread. A thread can have one current rendering context. A process can have multiple rendering contexts by means of multithreading. A thread must set a current rendering context before calling any OpenGL functions. Otherwise, all OpenGL calls are ignored. A rendering context can be current to only one thread at a time. You cannot make a rendering context current to multiple threads. An application can perform multithread drawing by making different rendering contexts current to different threads, supplying each thread with its own rendering context and device context. If an error occurs, the wglMakeCurrent function makes the thread's current rendering context not current before returning. + Read more on docs.microsoft.com. + + + + The wglRealizeLayerPalette function maps palette entries from a given color-index layer plane into the physical palette or initializes the palette of an RGBA layer plane. + If the function succeeds, the return value is TRUE, even if bRealize is TRUE and the physical palette is not available. If the function fails or when no pixel format is selected, the return value is FALSE. To get extended error information, call GetLastError. + + The physical palette for a layer plane is a shared resource among windows with layer planes. When more than one window attempts to realize a palette for a given physical layer plane, only one palette at a time is realized. When you call the wglRealizeLayerPalette function, the layer palette of a foreground window is always realized first. When a window's layer palette is realized, its palette entries are always mapped one-to-one into the physical palette. Unlike GDI logical palettes, with wglRealizeLayerPalette there is no mapping of other windows' layer palettes to the current physical palette. Whenever a window becomes the foreground window, call wglRealizeLayerPalette to realize its layer palettes again, even if the pixel type of the layer plane is RGBA. Because wglRealizeLayerPalette doesn't realize the palette of the main plane, use GDI palette functions to realize the main plane palette. + Read more on docs.microsoft.com. + + + + + + + Sets the palette entries in a given color-index layer plane for a specified device context. + + Type: int If the function succeeds, the return value is the number of entries that were set in the palette in the specified layer plane of the window. If the function fails or no pixel format is selected, the return value is zero. To get extended error information, call GetLastError. + + + Each color-index plane in a window has a palette with a size 2^n, where n is the number of bit planes in the layer plane. You cannot modify the transparent index of a palette. Use the wglRealizeLayerPalette function to realize the layer palette. Initially the layer palette contains only entries for white. The wglSetLayerPaletteEntries function doesn't set the palette entries of the main plane palette. To update the main plane palette, use GDI palette functions. + Read more on docs.microsoft.com. + + + + + + + The wglShareLists function enables multiple OpenGL rendering contexts to share a single display-list space. + + When the function succeeds, the return value is TRUE. When the function fails, the return value is FALSE and the display lists are not shared. To get extended error information, call GetLastError. + + + When you create an OpenGL rendering context, it has its own display-list space. The wglShareLists function enables a rendering context to share the display-list space of another rendering context; any number of rendering contexts can share a single display-list space. Once a rendering context shares a display-list space, the rendering context always uses the display-list space until the rendering context is deleted. When the last rendering context of a shared display-list space is deleted, the shared display-list space is deleted. All the indexes and definitions of display lists in a shared display-list space are shared. You can only share display lists with rendering contexts within the same process. However, not all rendering contexts in a process can share display lists. Rendering contexts can share display lists only if they use the same implementation of OpenGL functions. All client rendering contexts of a given pixel format can always share display lists. All rendering contexts of a shared display list must use an identical pixel format. Otherwise the results depend on the implementation of OpenGL used.
Note  The wglShareLists function is only available with OpenGL version 1.01 or later. To determine the version number of the implementation of OpenGL, call glGetString.
 
+ Read more on docs.microsoft.com. +
+
+ + The wglSwapLayerBuffers function swaps the front and back buffers in the overlay, underlay, and main planes of the window referenced by a specified device context. + If the function succeeds, the return value is TRUE. If the function fails, the return value is FALSE. To get extended error information, call GetLastError. + + When a layer plane doesn't include a back buffer, calling the wglSwapLayerBuffers function has no effect on that layer plane. After you call wglSwapLayerBuffers, the state of the back buffer content is given in the corresponding LAYERPLANEDESCRIPTOR structure of the layer plane or in the PIXELFORMATDESCRIPTOR structure of the main plane. The wglSwapLayerBuffers function swaps the front and back buffers in the specified layer planes simultaneously. Some devices don't support swapping layer planes individually; they swap all layer planes as a group. When the PFD_SWAP_LAYER_BUFFERS flag of the PIXELFORMATDESCRIPTOR structure is set, it indicates that a device can swap individual layer planes and that you can call wglSwapLayerBuffers. With applications that use multiple threads, before calling wglSwapLayerBuffers, clear all drawing commands in all threads drawing to the same window. + Read more on docs.microsoft.com. + + + + The wglUseFontBitmaps function creates a set of bitmap display lists for use in the current OpenGL rendering context. (Unicode) + + If the function succeeds, the return value is TRUE. If the function fails, the return value is FALSE. To get extended error information, call GetLastError. + + + The wglUseFontBitmaps function defines count display lists in the current OpenGL rendering context. Each display list has an identifying number, starting at listBase. Each display list consists of a single call to glBitmap. The definition of bitmap listBase + i is taken from the glyph first + i of the font currently selected in the device context specified by hdc. If a glyph is not defined, then the function defines an empty display list for it. The wglUseFontBitmaps function creates bitmap text in the plane of the screen. It enables the labeling of objects in OpenGL. In the current version of Microsoft's implementation of OpenGL, you cannot make GDI calls to a device context that has a double-buffered pixel format. Therefore, you cannot use the GDI fonts and text functions with such device contexts. You can use the wglUseFontBitmaps function to circumvent this limitation and draw text in a double-buffered device context. The function determines the parameters of each call to glBitmap as follows. + This doc was truncated. + Read more on docs.microsoft.com. + + + + + + + The wglUseFontOutlines function creates a set of display lists, one for each glyph of the currently selected outline font of a device context, for use with the current rendering context. (Unicode) + + When the function succeeds, the return value is TRUE. When the function fails, the return value is FALSE and no display lists are generated. To get extended error information, call GetLastError. + + + The wglUseFontOutlines function defines the glyphs of an outline font with display lists in the current rendering context. The wglUseFontOutlines function works with TrueType fonts only; stroke and raster fonts are not supported. Each display list consists of either line segments or polygons, and has a unique identifying number starting with the listBase number. The wglUseFontOutlines function approximates glyph outlines by subdividing the quadratic B-spline curves of the outline into line segments, until the distance between the outline and the interpolated midpoint is within the value specified by deviation. This is the final format used when format is WGL_FONT_LINES. When you specify WGL_FONT_OUTLINES, the display lists created don't contain any normals; thus lighting doesn't work properly. To get the correct lighting of lines use WGL_FONT_POLYGONS and set glPolygonMode( GL_FRONT, GL_LINE ). When you specify format as WGL_FONT_POLYGONS the outlines are further tessellated into separate triangles, triangle fans, triangle strips, or quadrilateral strips to create the surface of each glyph. With WGL_FONT_POLYGONS, the created display lists call glFrontFace( GL_CW ) or glFrontFace( GL_CCW ); thus the current front-face value might be altered. For the best appearance of text with WGL_FONT_POLYGONS, cull the back faces as follows: + + This doc was truncated. + Read more on docs.microsoft.com. + + + + Destroys the specified menu and frees any memory that the menu occupies. + + Type: HMENU A handle to the menu to be destroyed. + Read more on docs.microsoft.com. + + + Type: BOOL If the function succeeds, the return value is nonzero. If the function fails, the return value is zero. To get extended error information, call GetLastError. + + + Before closing, an application must use the DestroyMenu function to destroy a menu not assigned to a window. A menu that is assigned to a window is automatically destroyed when the application closes. DestroyMenu is recursive, that is, it will destroy the menu and all its submenus. + Read more on docs.microsoft.com. + + + + + + + Creates an overlapped, pop-up, or child window with an extended window style; otherwise, this function is identical to the CreateWindow function. (Unicode) + + Type: DWORD The extended window style of the window being created. For a list of possible values, see Extended Window Styles. + Read more on docs.microsoft.com. + + + Type: LPCTSTR A null-terminated string or a class atom created by a previous call to the RegisterClass or RegisterClassEx function. The atom must be in the low-order word of lpClassName; the high-order word must be zero. If lpClassName is a string, it specifies the window class name. The class name can be any name registered with RegisterClass or RegisterClassEx, provided that the module that registers the class is also the module that creates the window. The class name can also be any of the predefined system class names. + Read more on docs.microsoft.com. + + + Type: LPCTSTR The window name. If the window style specifies a title bar, the window title pointed to by lpWindowName is displayed in the title bar. When using CreateWindow to create controls, such as buttons, check boxes, and static controls, use lpWindowName to specify the text of the control. When creating a static control with the SS_ICON style, use lpWindowName to specify the icon name or identifier. To specify an identifier, use the syntax "#num". + Read more on docs.microsoft.com. + + + Type: DWORD The style of the window being created. This parameter can be a combination of the window style values, plus the control styles indicated in the Remarks section. + Read more on docs.microsoft.com. + + + Type: int The initial horizontal position of the window. For an overlapped or pop-up window, the x parameter is the initial x-coordinate of the window's upper-left corner, in screen coordinates. For a child window, x is the x-coordinate of the upper-left corner of the window relative to the upper-left corner of the parent window's client area. If x is set to CW_USEDEFAULT, the system selects the default position for the window's upper-left corner and ignores the y parameter. CW_USEDEFAULT is valid only for overlapped windows; if it is specified for a pop-up or child window, the x and y parameters are set to zero. + Read more on docs.microsoft.com. + + + Type: int The initial vertical position of the window. For an overlapped or pop-up window, the y parameter is the initial y-coordinate of the window's upper-left corner, in screen coordinates. For a child window, y is the initial y-coordinate of the upper-left corner of the child window relative to the upper-left corner of the parent window's client area. For a list box y is the initial y-coordinate of the upper-left corner of the list box's client area relative to the upper-left corner of the parent window's client area. + If an overlapped window is created with the WS_VISIBLE style bit set and the x parameter is set to CW_USEDEFAULT, then the y parameter determines how the window is shown. If the y parameter is CW_USEDEFAULT, then the window manager calls ShowWindow with the SW_SHOW flag after the window has been created. If the y parameter is some other value, then the window manager calls ShowWindow with that value as the nCmdShow parameter. + Read more on docs.microsoft.com. + + + Type: int The width, in device units, of the window. For overlapped windows, nWidth is the window's width, in screen coordinates, or CW_USEDEFAULT. If nWidth is CW_USEDEFAULT, the system selects a default width and height for the window; the default width extends from the initial x-coordinates to the right edge of the screen; the default height extends from the initial y-coordinate to the top of the icon area. CW_USEDEFAULT is valid only for overlapped windows; if CW_USEDEFAULT is specified for a pop-up or child window, the nWidth and nHeight parameter are set to zero. + Read more on docs.microsoft.com. + + + Type: int The height, in device units, of the window. For overlapped windows, nHeight is the window's height, in screen coordinates. If the nWidth parameter is set to CW_USEDEFAULT, the system ignores nHeight. + Read more on docs.microsoft.com. + + + Type: HWND A handle to the parent or owner window of the window being created. To create a child window or an owned window, supply a valid window handle. This parameter is optional for pop-up windows. To create a message-only window, supply HWND_MESSAGE or a handle to an existing message-only window. + Read more on docs.microsoft.com. + + + Type: HMENU A handle to a menu, or specifies a child-window identifier, depending on the window style. For an overlapped or pop-up window, hMenu identifies the menu to be used with the window; it can be NULL if the class menu is to be used. For a child window, hMenu specifies the child-window identifier, an integer value used by a dialog box control to notify its parent about events. The application determines the child-window identifier; it must be unique for all child windows with the same parent window. + Read more on docs.microsoft.com. + + + Type: HINSTANCE A handle to the instance of the module to be associated with the window. + Read more on docs.microsoft.com. + + + Type: LPVOID Pointer to a value to be passed to the window through the CREATESTRUCT structure (lpCreateParams member) pointed to by the lParam param of the WM_CREATE message. This message is sent to the created window by this function before it returns. If an application calls CreateWindow to create a MDI client window, lpParam should point to a CLIENTCREATESTRUCT structure. If an MDI client window calls CreateWindow to create an MDI child window, lpParam should point to a MDICREATESTRUCT structure. lpParam may be NULL if no additional data is needed. + Read more on docs.microsoft.com. + + + Type: HWND If the function succeeds, the return value is a handle to the new window. If the function fails, the return value is NULL. To get extended error information, call GetLastError. This function typically fails for one of the following reasons: + This doc was truncated. + + + The CreateWindowEx function sends WM_NCCREATE, WM_NCCALCSIZE, and WM_CREATE messages to the window being created. If the created window is a child window, its default position is at the bottom of the Z-order. If the created window is a top-level window, its default position is at the top of the Z-order (but beneath all topmost windows unless the created window is itself topmost). For information on controlling whether the Taskbar displays a button for the created window, see Managing Taskbar Buttons. For information on removing a window, see the DestroyWindow function. The following predefined control classes can be specified in the lpClassName parameter. Note the corresponding control styles you can use in the dwStyle parameter. + This doc was truncated. + Read more on docs.microsoft.com. + + + + + Represents a Win32 handle that can be closed with . + + +
+
diff --git a/源代码/StgSharpDebug/obj/x64/Debug/net6.0/apphost.exe b/源代码/StgSharpDebug/obj/x64/Debug/net6.0/apphost.exe index e6f2a319..31a6e81e 100644 Binary files a/源代码/StgSharpDebug/obj/x64/Debug/net6.0/apphost.exe and b/源代码/StgSharpDebug/obj/x64/Debug/net6.0/apphost.exe differ diff --git a/源代码/StgSharpDebug/obj/x64/Debug/net6.0/ref/StgSharpDebug.dll b/源代码/StgSharpDebug/obj/x64/Debug/net6.0/ref/StgSharpDebug.dll new file mode 100644 index 00000000..56e3ca95 Binary files /dev/null and b/源代码/StgSharpDebug/obj/x64/Debug/net6.0/ref/StgSharpDebug.dll differ diff --git a/源代码/StgSharpDebug/obj/x64/Debug/net6.0/refint/StgSharpDebug.dll b/源代码/StgSharpDebug/obj/x64/Debug/net6.0/refint/StgSharpDebug.dll new file mode 100644 index 00000000..56e3ca95 Binary files /dev/null and b/源代码/StgSharpDebug/obj/x64/Debug/net6.0/refint/StgSharpDebug.dll differ diff --git a/源代码/StgSharpDebug/obj/x64/RealDebug/net6.0/StgSharpDebug.assets.cache b/源代码/StgSharpDebug/obj/x64/RealDebug/net6.0/StgSharpDebug.assets.cache index 6eeda91a..e48243a3 100644 Binary files a/源代码/StgSharpDebug/obj/x64/RealDebug/net6.0/StgSharpDebug.assets.cache and b/源代码/StgSharpDebug/obj/x64/RealDebug/net6.0/StgSharpDebug.assets.cache differ diff --git a/源代码/StgSharpDebug/obj/x64/Toollist/net6.0/.NETCoreApp,Version=v6.0.AssemblyAttributes.cs b/源代码/StgSharpDebug/obj/x64/Toollist/net6.0/.NETCoreApp,Version=v6.0.AssemblyAttributes.cs new file mode 100644 index 00000000..ed926950 --- /dev/null +++ b/源代码/StgSharpDebug/obj/x64/Toollist/net6.0/.NETCoreApp,Version=v6.0.AssemblyAttributes.cs @@ -0,0 +1,4 @@ +// +using System; +using System.Reflection; +[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v6.0", FrameworkDisplayName = ".NET 6.0")] diff --git a/源代码/StgSharpDebug/obj/x64/Toollist/net6.0/StgSharpDebug.AssemblyInfo.cs b/源代码/StgSharpDebug/obj/x64/Toollist/net6.0/StgSharpDebug.AssemblyInfo.cs new file mode 100644 index 00000000..378b54cb --- /dev/null +++ b/源代码/StgSharpDebug/obj/x64/Toollist/net6.0/StgSharpDebug.AssemblyInfo.cs @@ -0,0 +1,23 @@ +//------------------------------------------------------------------------------ +// +// 此代码由工具生成。 +// 运行时版本:4.0.30319.42000 +// +// 对此文件的更改可能会导致不正确的行为,并且如果 +// 重新生成代码,这些更改将会丢失。 +// +//------------------------------------------------------------------------------ + +using System; +using System.Reflection; + +[assembly: System.Reflection.AssemblyCompanyAttribute("StgSharpDebug")] +[assembly: System.Reflection.AssemblyConfigurationAttribute("Toollist")] +[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] +[assembly: System.Reflection.AssemblyProductAttribute("StgSharpDebug")] +[assembly: System.Reflection.AssemblyTitleAttribute("StgSharpDebug")] +[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] + +// 由 MSBuild WriteCodeFragment 类生成。 + diff --git a/源代码/StgSharpDebug/obj/x64/Toollist/net6.0/StgSharpDebug.AssemblyInfoInputs.cache b/源代码/StgSharpDebug/obj/x64/Toollist/net6.0/StgSharpDebug.AssemblyInfoInputs.cache new file mode 100644 index 00000000..53915464 --- /dev/null +++ b/源代码/StgSharpDebug/obj/x64/Toollist/net6.0/StgSharpDebug.AssemblyInfoInputs.cache @@ -0,0 +1 @@ +748a1506c2c3b3b7311a192ec610044c32c289a5d7f16314d591589d297d061c diff --git a/源代码/StgSharpDebug/obj/x64/Toollist/net6.0/StgSharpDebug.GeneratedMSBuildEditorConfig.editorconfig b/源代码/StgSharpDebug/obj/x64/Toollist/net6.0/StgSharpDebug.GeneratedMSBuildEditorConfig.editorconfig new file mode 100644 index 00000000..006ce8af --- /dev/null +++ b/源代码/StgSharpDebug/obj/x64/Toollist/net6.0/StgSharpDebug.GeneratedMSBuildEditorConfig.editorconfig @@ -0,0 +1,13 @@ +is_global = true +build_property.TargetFramework = net6.0 +build_property.TargetPlatformMinVersion = +build_property.UsingMicrosoftNETSdkWeb = +build_property.ProjectTypeGuids = +build_property.InvariantGlobalization = +build_property.PlatformNeutralAssembly = +build_property.EnforceExtendedAnalyzerRules = +build_property._SupportedPlatformList = Linux,macOS,Windows +build_property.RootNamespace = StgSharpDebug +build_property.ProjectDir = D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\ +build_property.EnableComHosting = +build_property.EnableGeneratedComInterfaceComImportInterop = diff --git a/源代码/StgSharpDebug/obj/x64/Toollist/net6.0/StgSharpDebug.GlobalUsings.g.cs b/源代码/StgSharpDebug/obj/x64/Toollist/net6.0/StgSharpDebug.GlobalUsings.g.cs new file mode 100644 index 00000000..8578f3d0 --- /dev/null +++ b/源代码/StgSharpDebug/obj/x64/Toollist/net6.0/StgSharpDebug.GlobalUsings.g.cs @@ -0,0 +1,8 @@ +// +global using global::System; +global using global::System.Collections.Generic; +global using global::System.IO; +global using global::System.Linq; +global using global::System.Net.Http; +global using global::System.Threading; +global using global::System.Threading.Tasks; diff --git a/源代码/StgSharpDebug/obj/x64/Toollist/net6.0/StgSharpDebug.assets.cache b/源代码/StgSharpDebug/obj/x64/Toollist/net6.0/StgSharpDebug.assets.cache new file mode 100644 index 00000000..f1d9948b Binary files /dev/null and b/源代码/StgSharpDebug/obj/x64/Toollist/net6.0/StgSharpDebug.assets.cache differ diff --git a/源代码/StgSharpDevelop.sln b/源代码/StgSharpDevelop.sln index d3355c80..3d762194 100644 --- a/源代码/StgSharpDevelop.sln +++ b/源代码/StgSharpDevelop.sln @@ -4,6 +4,9 @@ Microsoft Visual Studio Solution File, Format Version 12.00 VisualStudioVersion = 17.3.32825.248 MinimumVisualStudioVersion = 10.0.40219.1 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "StgSharp", "StgSharp\StgSharp.csproj", "{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}" + ProjectSection(ProjectDependencies) = postProject + {00EF73C2-CC73-4478-884E-08979F4A429A} = {00EF73C2-CC73-4478-884E-08979F4A429A} + EndProjectSection EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "StgSharpDebug", "StgSharpDebug\StgSharpDebug.csproj", "{610B992B-BB34-49C3-9993-676C595FC12E}" ProjectSection(ProjectDependencies) = postProject @@ -23,7 +26,7 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "StgsharpEnvDebug", "Stgshar {00EF73C2-CC73-4478-884E-08979F4A429A} = {00EF73C2-CC73-4478-884E-08979F4A429A} EndProjectSection EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BenchMark", "BenchMark\BenchMark.csproj", "{63382F83-D04E-45B6-BDE6-443273F6D010}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BenchMark", "BenchMark\BenchMark.csproj", "{63382F83-D04E-45B6-BDE6-443273F6D010}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -39,6 +42,9 @@ Global Release|Any CPU = Release|Any CPU Release|x64 = Release|x64 Release|x86 = Release|x86 + Toollist|Any CPU = Toollist|Any CPU + Toollist|x64 = Toollist|x64 + Toollist|x86 = Toollist|x86 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}.Benchmark|Any CPU.ActiveCfg = Benchmark|Any CPU @@ -64,6 +70,10 @@ Global {3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}.Release|x64.Build.0 = Release|x64 {3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}.Release|x86.ActiveCfg = Release|Any CPU {3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}.Release|x86.Build.0 = Release|Any CPU + {3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}.Toollist|Any CPU.ActiveCfg = Toollist|Any CPU + {3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}.Toollist|x64.ActiveCfg = Toollist|x64 + {3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}.Toollist|x86.ActiveCfg = Toollist|Any CPU + {3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}.Toollist|x86.Build.0 = Toollist|Any CPU {610B992B-BB34-49C3-9993-676C595FC12E}.Benchmark|Any CPU.ActiveCfg = Benchmark|Any CPU {610B992B-BB34-49C3-9993-676C595FC12E}.Benchmark|Any CPU.Build.0 = Benchmark|Any CPU {610B992B-BB34-49C3-9993-676C595FC12E}.Benchmark|x64.ActiveCfg = Benchmark|x64 @@ -86,6 +96,10 @@ Global {610B992B-BB34-49C3-9993-676C595FC12E}.Release|x64.Build.0 = Release|Any CPU {610B992B-BB34-49C3-9993-676C595FC12E}.Release|x86.ActiveCfg = Release|Any CPU {610B992B-BB34-49C3-9993-676C595FC12E}.Release|x86.Build.0 = Release|Any CPU + {610B992B-BB34-49C3-9993-676C595FC12E}.Toollist|Any CPU.ActiveCfg = Toollist|Any CPU + {610B992B-BB34-49C3-9993-676C595FC12E}.Toollist|x64.ActiveCfg = Toollist|x64 + {610B992B-BB34-49C3-9993-676C595FC12E}.Toollist|x86.ActiveCfg = Toollist|Any CPU + {610B992B-BB34-49C3-9993-676C595FC12E}.Toollist|x86.Build.0 = Toollist|Any CPU {00EF73C2-CC73-4478-884E-08979F4A429A}.Benchmark|Any CPU.ActiveCfg = Benchmark|x64 {00EF73C2-CC73-4478-884E-08979F4A429A}.Benchmark|Any CPU.Build.0 = Benchmark|x64 {00EF73C2-CC73-4478-884E-08979F4A429A}.Benchmark|x64.ActiveCfg = Benchmark|x64 @@ -109,6 +123,10 @@ Global {00EF73C2-CC73-4478-884E-08979F4A429A}.Release|x64.Build.0 = Release|x64 {00EF73C2-CC73-4478-884E-08979F4A429A}.Release|x86.ActiveCfg = Release|Win32 {00EF73C2-CC73-4478-884E-08979F4A429A}.Release|x86.Build.0 = Release|Win32 + {00EF73C2-CC73-4478-884E-08979F4A429A}.Toollist|Any CPU.ActiveCfg = Toollist|x64 + {00EF73C2-CC73-4478-884E-08979F4A429A}.Toollist|Any CPU.Build.0 = Toollist|x64 + {00EF73C2-CC73-4478-884E-08979F4A429A}.Toollist|x64.ActiveCfg = Toollist|x64 + {00EF73C2-CC73-4478-884E-08979F4A429A}.Toollist|x86.ActiveCfg = Toollist|Win32 {000EFD45-7F4D-47DB-8F3C-CD26612F0EAB}.Benchmark|Any CPU.ActiveCfg = Benchmark|Any CPU {000EFD45-7F4D-47DB-8F3C-CD26612F0EAB}.Benchmark|x64.ActiveCfg = Benchmark|x64 {000EFD45-7F4D-47DB-8F3C-CD26612F0EAB}.Benchmark|x86.ActiveCfg = Benchmark|Any CPU @@ -130,6 +148,10 @@ Global {000EFD45-7F4D-47DB-8F3C-CD26612F0EAB}.Release|x64.Build.0 = Release|Any CPU {000EFD45-7F4D-47DB-8F3C-CD26612F0EAB}.Release|x86.ActiveCfg = Release|Any CPU {000EFD45-7F4D-47DB-8F3C-CD26612F0EAB}.Release|x86.Build.0 = Release|Any CPU + {000EFD45-7F4D-47DB-8F3C-CD26612F0EAB}.Toollist|Any CPU.ActiveCfg = Toollist|Any CPU + {000EFD45-7F4D-47DB-8F3C-CD26612F0EAB}.Toollist|x64.ActiveCfg = Toollist|x64 + {000EFD45-7F4D-47DB-8F3C-CD26612F0EAB}.Toollist|x86.ActiveCfg = Toollist|Any CPU + {000EFD45-7F4D-47DB-8F3C-CD26612F0EAB}.Toollist|x86.Build.0 = Toollist|Any CPU {63382F83-D04E-45B6-BDE6-443273F6D010}.Benchmark|Any CPU.ActiveCfg = Benchmark|Any CPU {63382F83-D04E-45B6-BDE6-443273F6D010}.Benchmark|x64.ActiveCfg = Release|Any CPU {63382F83-D04E-45B6-BDE6-443273F6D010}.Benchmark|x64.Build.0 = Release|Any CPU @@ -148,9 +170,13 @@ Global {63382F83-D04E-45B6-BDE6-443273F6D010}.Release|Any CPU.ActiveCfg = Release|Any CPU {63382F83-D04E-45B6-BDE6-443273F6D010}.Release|Any CPU.Build.0 = Release|Any CPU {63382F83-D04E-45B6-BDE6-443273F6D010}.Release|x64.ActiveCfg = Release|Any CPU - {63382F83-D04E-45B6-BDE6-443273F6D010}.Release|x64.Build.0 = Release|Any CPU {63382F83-D04E-45B6-BDE6-443273F6D010}.Release|x86.ActiveCfg = Release|Any CPU {63382F83-D04E-45B6-BDE6-443273F6D010}.Release|x86.Build.0 = Release|Any CPU + {63382F83-D04E-45B6-BDE6-443273F6D010}.Toollist|Any CPU.ActiveCfg = Toollist|Any CPU + {63382F83-D04E-45B6-BDE6-443273F6D010}.Toollist|Any CPU.Build.0 = Toollist|Any CPU + {63382F83-D04E-45B6-BDE6-443273F6D010}.Toollist|x64.ActiveCfg = Toollist|Any CPU + {63382F83-D04E-45B6-BDE6-443273F6D010}.Toollist|x86.ActiveCfg = Toollist|Any CPU + {63382F83-D04E-45B6-BDE6-443273F6D010}.Toollist|x86.Build.0 = Toollist|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/源代码/StgsharpEnvDebug/StgsharpEnvDebug.csproj b/源代码/StgsharpEnvDebug/StgsharpEnvDebug.csproj index d5eeaebf..6654c812 100644 --- a/源代码/StgsharpEnvDebug/StgsharpEnvDebug.csproj +++ b/源代码/StgsharpEnvDebug/StgsharpEnvDebug.csproj @@ -5,7 +5,7 @@ net6.0 enable enable - Debug;Release;RealDebug;Benchmark + Debug;Release;RealDebug;Benchmark;Toollist AnyCPU;x64 diff --git a/源代码/StgsharpEnvDebug/obj/Debug/net6.0/StgsharpEnvDebug.assets.cache b/源代码/StgsharpEnvDebug/obj/Debug/net6.0/StgsharpEnvDebug.assets.cache index 1c11c3da..ef75fa8c 100644 Binary files a/源代码/StgsharpEnvDebug/obj/Debug/net6.0/StgsharpEnvDebug.assets.cache and b/源代码/StgsharpEnvDebug/obj/Debug/net6.0/StgsharpEnvDebug.assets.cache differ diff --git a/源代码/StgsharpEnvDebug/obj/Debug/net6.0/StgsharpEnvDebug.csproj.AssemblyReference.cache b/源代码/StgsharpEnvDebug/obj/Debug/net6.0/StgsharpEnvDebug.csproj.AssemblyReference.cache index e17df4ca..f5fcedfe 100644 Binary files a/源代码/StgsharpEnvDebug/obj/Debug/net6.0/StgsharpEnvDebug.csproj.AssemblyReference.cache and b/源代码/StgsharpEnvDebug/obj/Debug/net6.0/StgsharpEnvDebug.csproj.AssemblyReference.cache differ diff --git a/源代码/StgsharpEnvDebug/obj/Release/net6.0/.NETCoreApp,Version=v6.0.AssemblyAttributes.cs b/源代码/StgsharpEnvDebug/obj/Release/net6.0/.NETCoreApp,Version=v6.0.AssemblyAttributes.cs new file mode 100644 index 00000000..ed926950 --- /dev/null +++ b/源代码/StgsharpEnvDebug/obj/Release/net6.0/.NETCoreApp,Version=v6.0.AssemblyAttributes.cs @@ -0,0 +1,4 @@ +// +using System; +using System.Reflection; +[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v6.0", FrameworkDisplayName = ".NET 6.0")] diff --git a/源代码/StgsharpEnvDebug/obj/Release/net6.0/StgsharpEnvDebug.AssemblyInfo.cs b/源代码/StgsharpEnvDebug/obj/Release/net6.0/StgsharpEnvDebug.AssemblyInfo.cs new file mode 100644 index 00000000..9a8dcd84 --- /dev/null +++ b/源代码/StgsharpEnvDebug/obj/Release/net6.0/StgsharpEnvDebug.AssemblyInfo.cs @@ -0,0 +1,23 @@ +//------------------------------------------------------------------------------ +// +// 此代码由工具生成。 +// 运行时版本:4.0.30319.42000 +// +// 对此文件的更改可能会导致不正确的行为,并且如果 +// 重新生成代码,这些更改将会丢失。 +// +//------------------------------------------------------------------------------ + +using System; +using System.Reflection; + +[assembly: System.Reflection.AssemblyCompanyAttribute("StgsharpEnvDebug")] +[assembly: System.Reflection.AssemblyConfigurationAttribute("Release")] +[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] +[assembly: System.Reflection.AssemblyProductAttribute("StgsharpEnvDebug")] +[assembly: System.Reflection.AssemblyTitleAttribute("StgsharpEnvDebug")] +[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] + +// 由 MSBuild WriteCodeFragment 类生成。 + diff --git a/源代码/StgsharpEnvDebug/obj/Release/net6.0/StgsharpEnvDebug.AssemblyInfoInputs.cache b/源代码/StgsharpEnvDebug/obj/Release/net6.0/StgsharpEnvDebug.AssemblyInfoInputs.cache new file mode 100644 index 00000000..5c21b0d2 --- /dev/null +++ b/源代码/StgsharpEnvDebug/obj/Release/net6.0/StgsharpEnvDebug.AssemblyInfoInputs.cache @@ -0,0 +1 @@ +9cb43c5bd0f946a114226ad91898526317d4f1d1bc650ae684f2a473f034ce07 diff --git a/源代码/StgsharpEnvDebug/obj/Release/net6.0/StgsharpEnvDebug.GeneratedMSBuildEditorConfig.editorconfig b/源代码/StgsharpEnvDebug/obj/Release/net6.0/StgsharpEnvDebug.GeneratedMSBuildEditorConfig.editorconfig new file mode 100644 index 00000000..95f2a07c --- /dev/null +++ b/源代码/StgsharpEnvDebug/obj/Release/net6.0/StgsharpEnvDebug.GeneratedMSBuildEditorConfig.editorconfig @@ -0,0 +1,13 @@ +is_global = true +build_property.TargetFramework = net6.0 +build_property.TargetPlatformMinVersion = +build_property.UsingMicrosoftNETSdkWeb = +build_property.ProjectTypeGuids = +build_property.InvariantGlobalization = +build_property.PlatformNeutralAssembly = +build_property.EnforceExtendedAnalyzerRules = +build_property._SupportedPlatformList = Linux,macOS,Windows +build_property.RootNamespace = StgsharpEnvDebug +build_property.ProjectDir = D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgsharpEnvDebug\ +build_property.EnableComHosting = +build_property.EnableGeneratedComInterfaceComImportInterop = diff --git a/源代码/StgsharpEnvDebug/obj/Release/net6.0/StgsharpEnvDebug.GlobalUsings.g.cs b/源代码/StgsharpEnvDebug/obj/Release/net6.0/StgsharpEnvDebug.GlobalUsings.g.cs new file mode 100644 index 00000000..8578f3d0 --- /dev/null +++ b/源代码/StgsharpEnvDebug/obj/Release/net6.0/StgsharpEnvDebug.GlobalUsings.g.cs @@ -0,0 +1,8 @@ +// +global using global::System; +global using global::System.Collections.Generic; +global using global::System.IO; +global using global::System.Linq; +global using global::System.Net.Http; +global using global::System.Threading; +global using global::System.Threading.Tasks; diff --git a/源代码/StgsharpEnvDebug/obj/Release/net6.0/StgsharpEnvDebug.assets.cache b/源代码/StgsharpEnvDebug/obj/Release/net6.0/StgsharpEnvDebug.assets.cache new file mode 100644 index 00000000..38266f96 Binary files /dev/null and b/源代码/StgsharpEnvDebug/obj/Release/net6.0/StgsharpEnvDebug.assets.cache differ diff --git a/源代码/StgsharpEnvDebug/obj/Release/net6.0/StgsharpEnvDebug.csproj.AssemblyReference.cache b/源代码/StgsharpEnvDebug/obj/Release/net6.0/StgsharpEnvDebug.csproj.AssemblyReference.cache new file mode 100644 index 00000000..b815f82b Binary files /dev/null and b/源代码/StgsharpEnvDebug/obj/Release/net6.0/StgsharpEnvDebug.csproj.AssemblyReference.cache differ diff --git a/源代码/StgsharpEnvDebug/obj/StgsharpEnvDebug.csproj.nuget.dgspec.json b/源代码/StgsharpEnvDebug/obj/StgsharpEnvDebug.csproj.nuget.dgspec.json index e55bc139..4cece4ae 100644 --- a/源代码/StgsharpEnvDebug/obj/StgsharpEnvDebug.csproj.nuget.dgspec.json +++ b/源代码/StgsharpEnvDebug/obj/StgsharpEnvDebug.csproj.nuget.dgspec.json @@ -109,13 +109,14 @@ "netstandard2.1": { "targetAlias": "netstandard2.1", "dependencies": { - "Microsoft.Bcl.HashCode": { - "target": "Package", - "version": "[1.1.1, )" - }, "Microsoft.CSharp": { "target": "Package", "version": "[4.7.0, )" + }, + "Microsoft.Windows.CsWin32": { + "suppressParent": "All", + "target": "Package", + "version": "[0.3.49-beta, )" } }, "imports": [ diff --git a/源代码/StgsharpEnvDebug/obj/project.assets.json b/源代码/StgsharpEnvDebug/obj/project.assets.json index 3522fb56..ca9f3500 100644 --- a/源代码/StgsharpEnvDebug/obj/project.assets.json +++ b/源代码/StgsharpEnvDebug/obj/project.assets.json @@ -2,17 +2,6 @@ "version": 3, "targets": { "net6.0": { - "Microsoft.Bcl.HashCode/1.1.1": { - "type": "package", - "compile": { - "ref/netcoreapp2.1/Microsoft.Bcl.HashCode.dll": {} - }, - "runtime": { - "lib/netcoreapp2.1/Microsoft.Bcl.HashCode.dll": { - "related": ".xml" - } - } - }, "Microsoft.CSharp/4.7.0": { "type": "package", "compile": { @@ -26,7 +15,6 @@ "type": "project", "framework": ".NETStandard,Version=v2.1", "dependencies": { - "Microsoft.Bcl.HashCode": "1.1.1", "Microsoft.CSharp": "4.7.0" }, "compile": { @@ -39,34 +27,6 @@ } }, "libraries": { - "Microsoft.Bcl.HashCode/1.1.1": { - "sha512": "MalY0Y/uM/LjXtHfX/26l2VtN4LDNZ2OE3aumNOHDLsT4fNYy2hiHXI4CXCqKpNUNm7iJ2brrc4J89UdaL56FA==", - "type": "package", - "path": "microsoft.bcl.hashcode/1.1.1", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "THIRD-PARTY-NOTICES.TXT", - "lib/net461/Microsoft.Bcl.HashCode.dll", - "lib/net461/Microsoft.Bcl.HashCode.xml", - "lib/netcoreapp2.1/Microsoft.Bcl.HashCode.dll", - "lib/netcoreapp2.1/Microsoft.Bcl.HashCode.xml", - "lib/netstandard2.0/Microsoft.Bcl.HashCode.dll", - "lib/netstandard2.0/Microsoft.Bcl.HashCode.xml", - "lib/netstandard2.1/Microsoft.Bcl.HashCode.dll", - "lib/netstandard2.1/Microsoft.Bcl.HashCode.xml", - "microsoft.bcl.hashcode.1.1.1.nupkg.sha512", - "microsoft.bcl.hashcode.nuspec", - "ref/net461/Microsoft.Bcl.HashCode.dll", - "ref/netcoreapp2.1/Microsoft.Bcl.HashCode.dll", - "ref/netstandard2.0/Microsoft.Bcl.HashCode.dll", - "ref/netstandard2.1/Microsoft.Bcl.HashCode.dll", - "useSharedDesignerContext.txt", - "version.txt" - ] - }, "Microsoft.CSharp/4.7.0": { "sha512": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==", "type": "package", diff --git a/源代码/StgsharpEnvDebug/obj/project.nuget.cache b/源代码/StgsharpEnvDebug/obj/project.nuget.cache index 0d3a0189..948bcc0f 100644 --- a/源代码/StgsharpEnvDebug/obj/project.nuget.cache +++ b/源代码/StgsharpEnvDebug/obj/project.nuget.cache @@ -1,10 +1,9 @@ { "version": 2, - "dgSpecHash": "Xl/ZowCGuUR/eWmh6yYhIi/7KX1mXEfMt8b7h+bzgy1hdoIg0RO5xgVS8ie8Ji67D+3/NIvPxLnActsQ1SAL0A==", + "dgSpecHash": "2F+jxpQ3Eoma5Ps5nzeouiXcgGmDaFjEgAL55ol/y7bAlBxUE+l82pMokiMbz1igm+0bxkoobnoSX0k4MaKbdg==", "success": true, "projectFilePath": "D:\\NitloadIndustry\\研究项目\\1-Flagship\\TH2020\\ProjectFile\\源代码\\StgsharpEnvDebug\\StgsharpEnvDebug.csproj", "expectedPackageFiles": [ - "C:\\Users\\Nitlo\\.nuget\\packages\\microsoft.bcl.hashcode\\1.1.1\\microsoft.bcl.hashcode.1.1.1.nupkg.sha512", "C:\\Users\\Nitlo\\.nuget\\packages\\microsoft.csharp\\4.7.0\\microsoft.csharp.4.7.0.nupkg.sha512" ], "logs": [] diff --git a/源代码/StgsharpEnvDebug/obj/x64/Benchmark/net6.0/StgsharpEnvDebug.assets.cache b/源代码/StgsharpEnvDebug/obj/x64/Benchmark/net6.0/StgsharpEnvDebug.assets.cache index ec10d3e4..18ce9ade 100644 Binary files a/源代码/StgsharpEnvDebug/obj/x64/Benchmark/net6.0/StgsharpEnvDebug.assets.cache and b/源代码/StgsharpEnvDebug/obj/x64/Benchmark/net6.0/StgsharpEnvDebug.assets.cache differ diff --git a/源代码/StgsharpEnvDebug/obj/x64/RealDebug/net6.0/StgsharpEnvDebug.AssemblyInfo.cs b/源代码/StgsharpEnvDebug/obj/x64/RealDebug/net6.0/StgsharpEnvDebug.AssemblyInfo.cs index fc53b897..d9769845 100644 --- a/源代码/StgsharpEnvDebug/obj/x64/RealDebug/net6.0/StgsharpEnvDebug.AssemblyInfo.cs +++ b/源代码/StgsharpEnvDebug/obj/x64/RealDebug/net6.0/StgsharpEnvDebug.AssemblyInfo.cs @@ -14,7 +14,7 @@ using System.Reflection; [assembly: System.Reflection.AssemblyCompanyAttribute("StgsharpEnvDebug")] [assembly: System.Reflection.AssemblyConfigurationAttribute("RealDebug")] [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] -[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+8148c10acd65bd764d3e12418a1ebd37938d8501")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] [assembly: System.Reflection.AssemblyProductAttribute("StgsharpEnvDebug")] [assembly: System.Reflection.AssemblyTitleAttribute("StgsharpEnvDebug")] [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] diff --git a/源代码/StgsharpEnvDebug/obj/x64/RealDebug/net6.0/StgsharpEnvDebug.AssemblyInfoInputs.cache b/源代码/StgsharpEnvDebug/obj/x64/RealDebug/net6.0/StgsharpEnvDebug.AssemblyInfoInputs.cache index 91593588..a5de6d06 100644 --- a/源代码/StgsharpEnvDebug/obj/x64/RealDebug/net6.0/StgsharpEnvDebug.AssemblyInfoInputs.cache +++ b/源代码/StgsharpEnvDebug/obj/x64/RealDebug/net6.0/StgsharpEnvDebug.AssemblyInfoInputs.cache @@ -1 +1 @@ -b676de9f904450348d9a1c684ebbd5bb11b6a9673dfd30608096d9d0819269aa +5b48c7e18c37930cc7e201483d7e18cb5afc16d205f92faba367f16ea8d4bcc8 diff --git a/源代码/StgsharpEnvDebug/obj/x64/RealDebug/net6.0/StgsharpEnvDebug.assets.cache b/源代码/StgsharpEnvDebug/obj/x64/RealDebug/net6.0/StgsharpEnvDebug.assets.cache index 6e93aded..a2c8b3ea 100644 Binary files a/源代码/StgsharpEnvDebug/obj/x64/RealDebug/net6.0/StgsharpEnvDebug.assets.cache and b/源代码/StgsharpEnvDebug/obj/x64/RealDebug/net6.0/StgsharpEnvDebug.assets.cache differ diff --git a/源代码/StgsharpEnvDebug/obj/x64/RealDebug/net6.0/StgsharpEnvDebug.csproj.AssemblyReference.cache b/源代码/StgsharpEnvDebug/obj/x64/RealDebug/net6.0/StgsharpEnvDebug.csproj.AssemblyReference.cache index e2f028d5..4a411706 100644 Binary files a/源代码/StgsharpEnvDebug/obj/x64/RealDebug/net6.0/StgsharpEnvDebug.csproj.AssemblyReference.cache and b/源代码/StgsharpEnvDebug/obj/x64/RealDebug/net6.0/StgsharpEnvDebug.csproj.AssemblyReference.cache differ diff --git a/源代码/StgsharpEnvDebug/obj/x64/Toollist/net6.0/.NETCoreApp,Version=v6.0.AssemblyAttributes.cs b/源代码/StgsharpEnvDebug/obj/x64/Toollist/net6.0/.NETCoreApp,Version=v6.0.AssemblyAttributes.cs new file mode 100644 index 00000000..ed926950 --- /dev/null +++ b/源代码/StgsharpEnvDebug/obj/x64/Toollist/net6.0/.NETCoreApp,Version=v6.0.AssemblyAttributes.cs @@ -0,0 +1,4 @@ +// +using System; +using System.Reflection; +[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v6.0", FrameworkDisplayName = ".NET 6.0")] diff --git a/源代码/StgsharpEnvDebug/obj/x64/Toollist/net6.0/StgsharpEnvDebug.AssemblyInfo.cs b/源代码/StgsharpEnvDebug/obj/x64/Toollist/net6.0/StgsharpEnvDebug.AssemblyInfo.cs new file mode 100644 index 00000000..004feb45 --- /dev/null +++ b/源代码/StgsharpEnvDebug/obj/x64/Toollist/net6.0/StgsharpEnvDebug.AssemblyInfo.cs @@ -0,0 +1,23 @@ +//------------------------------------------------------------------------------ +// +// 此代码由工具生成。 +// 运行时版本:4.0.30319.42000 +// +// 对此文件的更改可能会导致不正确的行为,并且如果 +// 重新生成代码,这些更改将会丢失。 +// +//------------------------------------------------------------------------------ + +using System; +using System.Reflection; + +[assembly: System.Reflection.AssemblyCompanyAttribute("StgsharpEnvDebug")] +[assembly: System.Reflection.AssemblyConfigurationAttribute("Toollist")] +[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] +[assembly: System.Reflection.AssemblyProductAttribute("StgsharpEnvDebug")] +[assembly: System.Reflection.AssemblyTitleAttribute("StgsharpEnvDebug")] +[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] + +// 由 MSBuild WriteCodeFragment 类生成。 + diff --git a/源代码/StgsharpEnvDebug/obj/x64/Toollist/net6.0/StgsharpEnvDebug.AssemblyInfoInputs.cache b/源代码/StgsharpEnvDebug/obj/x64/Toollist/net6.0/StgsharpEnvDebug.AssemblyInfoInputs.cache new file mode 100644 index 00000000..6bd7ab32 --- /dev/null +++ b/源代码/StgsharpEnvDebug/obj/x64/Toollist/net6.0/StgsharpEnvDebug.AssemblyInfoInputs.cache @@ -0,0 +1 @@ +3235d78de092b3c14cc284164cb830504fbf4dc4d901d4e72ddab0c5a75f8317 diff --git a/源代码/StgsharpEnvDebug/obj/x64/Toollist/net6.0/StgsharpEnvDebug.GeneratedMSBuildEditorConfig.editorconfig b/源代码/StgsharpEnvDebug/obj/x64/Toollist/net6.0/StgsharpEnvDebug.GeneratedMSBuildEditorConfig.editorconfig new file mode 100644 index 00000000..95f2a07c --- /dev/null +++ b/源代码/StgsharpEnvDebug/obj/x64/Toollist/net6.0/StgsharpEnvDebug.GeneratedMSBuildEditorConfig.editorconfig @@ -0,0 +1,13 @@ +is_global = true +build_property.TargetFramework = net6.0 +build_property.TargetPlatformMinVersion = +build_property.UsingMicrosoftNETSdkWeb = +build_property.ProjectTypeGuids = +build_property.InvariantGlobalization = +build_property.PlatformNeutralAssembly = +build_property.EnforceExtendedAnalyzerRules = +build_property._SupportedPlatformList = Linux,macOS,Windows +build_property.RootNamespace = StgsharpEnvDebug +build_property.ProjectDir = D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgsharpEnvDebug\ +build_property.EnableComHosting = +build_property.EnableGeneratedComInterfaceComImportInterop = diff --git a/源代码/StgsharpEnvDebug/obj/x64/Toollist/net6.0/StgsharpEnvDebug.GlobalUsings.g.cs b/源代码/StgsharpEnvDebug/obj/x64/Toollist/net6.0/StgsharpEnvDebug.GlobalUsings.g.cs new file mode 100644 index 00000000..8578f3d0 --- /dev/null +++ b/源代码/StgsharpEnvDebug/obj/x64/Toollist/net6.0/StgsharpEnvDebug.GlobalUsings.g.cs @@ -0,0 +1,8 @@ +// +global using global::System; +global using global::System.Collections.Generic; +global using global::System.IO; +global using global::System.Linq; +global using global::System.Net.Http; +global using global::System.Threading; +global using global::System.Threading.Tasks; diff --git a/源代码/StgsharpEnvDebug/obj/x64/Toollist/net6.0/StgsharpEnvDebug.assets.cache b/源代码/StgsharpEnvDebug/obj/x64/Toollist/net6.0/StgsharpEnvDebug.assets.cache new file mode 100644 index 00000000..f5184297 Binary files /dev/null and b/源代码/StgsharpEnvDebug/obj/x64/Toollist/net6.0/StgsharpEnvDebug.assets.cache differ