summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjsmall-nvidia <jsmall@nvidia.com>2021-10-26 21:42:11 -0400
committerGitHub <noreply@github.com>2021-10-26 18:42:11 -0700
commit62b1e58a72773fad43e555d7de1bfeaa3f5c6762 (patch)
tree89968e563e5f2f38377461c4fa3a3b72469b146a
parentdcc2b854a64b3e4e890215ff21cf4b219724f524 (diff)
Runs all gfx unit tests through a 'test proxy' (#1981)
* #include an absolute path didn't work - because paths were taken to always be relative. * Support for test proxy. * Turn on testing using proxy. * Don't pass sink into check of downstream compiler. * Small change to kick off build. * Remove register specification on transcendental. * Increase poll timeout. Small improvements to proxy. * Disable gfx unit tests. * Put test runner in shared library mode by default. * Change comment. Kick off another CI test. * Small edit to kick off builds. * Run unit tests on proxy. * Turn on using proxy for now. * Enable swift shader. * Fix typo. Add exception support. * Make the default spwan type SharedLibrary Use isolation for gfx unit tests. * Update slang-binaries. * Fix typo. * Report unit test output information.
-rw-r--r--premake5.lua7
-rw-r--r--slang.sln915
-rw-r--r--source/core/unix/slang-unix-process-util.cpp4
-rw-r--r--source/slang/slang-check.cpp8
-rw-r--r--tests/compute/transcendental-double.slang2
-rw-r--r--tests/compute/transcendental.slang2
-rw-r--r--tools/slang-test/options.cpp4
-rw-r--r--tools/slang-test/options.h17
-rw-r--r--tools/slang-test/slang-test-main.cpp123
-rw-r--r--tools/test-proxy/test-proxy-main.cpp247
10 files changed, 852 insertions, 477 deletions
diff --git a/premake5.lua b/premake5.lua
index f83499ce2..c8c02ff09 100644
--- a/premake5.lua
+++ b/premake5.lua
@@ -756,6 +756,13 @@ end
links { "compiler-core", "core" }
+
+ tool "test-proxy"
+ uuid "BE412850-4BB9-429A-877C-BFBC4B34186C"
+ includedirs { "." }
+
+ links { "compiler-core", "core", "slang" }
+
--
-- `slang-generate` is a tool we use for source code generation on
-- the compiler. It depends on the `core` library, so we need to
diff --git a/slang.sln b/slang.sln
index 75eff53aa..08f03ae19 100644
--- a/slang.sln
+++ b/slang.sln
@@ -1,450 +1,465 @@
-
-Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio Version 16
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tools", "tools", "{FD47AE19-69FD-260F-F2F1-20E65EA61D13}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "slang-test", "build\visual-studio\slang-test\slang-test.vcxproj", "{0C768A18-1D25-4000-9F37-DA5FE99E3B64}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gfx", "build\visual-studio\gfx\gfx.vcxproj", "{222F7498-B40C-4F3F-A704-DDEB91A4484A}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gfx-util", "build\visual-studio\gfx-util\gfx-util.vcxproj", "{F5ADB74E-02A7-44FB-AA3B-FC02F8AC7A4B}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "platform", "build\visual-studio\platform\platform.vcxproj", "{3565FE5E-4FA3-11EB-AE93-0242AC130002}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "slang-cpp-extractor", "build\visual-studio\slang-cpp-extractor\slang-cpp-extractor.vcxproj", "{CA8A30D1-8FA9-4330-B7F7-84709246D8DC}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "slang-embed", "build\visual-studio\slang-embed\slang-embed.vcxproj", "{7F773DD9-EB8F-2403-B43C-B49C2014B99C}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "slang-generate", "build\visual-studio\slang-generate\slang-generate.vcxproj", "{66174227-8541-41FC-A6DF-4764FC66F78E}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "compiler-core", "build\visual-studio\compiler-core\compiler-core.vcxproj", "{12C1E89D-F5D0-41D3-8E8D-FB3F358F8126}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core", "build\visual-studio\core\core.vcxproj", "{F9BE7957-8399-899E-0C49-E714FDDD4B65}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "examples", "examples", "{EB5FC2C6-D72D-B6CC-C0C1-26F3AC2E9231}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cpu-hello-world", "build\visual-studio\cpu-hello-world\cpu-hello-world.vcxproj", "{4B47A364-37C4-96A7-6041-97BB4C1D333B}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "example-base", "build\visual-studio\example-base\example-base.vcxproj", "{37BED5B5-23FA-D81F-8C0C-F1167867813A}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gpu-printing", "build\visual-studio\gpu-printing\gpu-printing.vcxproj", "{57C81DD3-4304-213D-AC16-39349871C957}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "hello-world", "build\visual-studio\hello-world\hello-world.vcxproj", "{010BE414-ED5B-CF56-16C0-BD18027062C0}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "model-viewer", "build\visual-studio\model-viewer\model-viewer.vcxproj", "{2F8724C6-1BC3-2730-84D5-3F277030D04A}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ray-tracing", "build\visual-studio\ray-tracing\ray-tracing.vcxproj", "{71AC0F50-5DFD-FA91-8661-E95372118EFB}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ray-tracing-pipeline", "build\visual-studio\ray-tracing-pipeline\ray-tracing-pipeline.vcxproj", "{17BA8E32-034E-84DA-6C12-DE8E58C5BECC}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shader-object", "build\visual-studio\shader-object\shader-object.vcxproj", "{25512BFB-1138-EDF2-BA88-5310A64E6659}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shader-toy", "build\visual-studio\shader-toy\shader-toy.vcxproj", "{0FC5DE93-FBEA-A8FA-E430-2EC6D0F5CDC6}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "triangle", "build\visual-studio\triangle\triangle.vcxproj", "{3BB99068-27C9-3C39-9082-A1577CB12BD2}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "generator", "generator", "{F3AB4ED5-5F37-BC99-6848-3F8ED452189A}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "run-generators", "build\visual-studio\run-generators\run-generators.vcxproj", "{E145B2B8-CD13-A6BE-B6A7-16E5A2148223}"
- ProjectSection(ProjectDependencies) = postProject
- {CA8A30D1-8FA9-4330-B7F7-84709246D8DC} = {CA8A30D1-8FA9-4330-B7F7-84709246D8DC}
- {66174227-8541-41FC-A6DF-4764FC66F78E} = {66174227-8541-41FC-A6DF-4764FC66F78E}
- {7F773DD9-EB8F-2403-B43C-B49C2014B99C} = {7F773DD9-EB8F-2403-B43C-B49C2014B99C}
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lz4", "build\visual-studio\lz4\lz4.vcxproj", "{E1EC8075-823E-46E5-BC38-C124CCCDF878}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "miniz", "build\visual-studio\miniz\miniz.vcxproj", "{E76ACB11-4A12-4F0A-BE1E-CE0B8836EB7F}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "slang", "build\visual-studio\slang\slang.vcxproj", "{DB00DA62-0533-4AFD-B59F-A67D5B3A0808}"
- ProjectSection(ProjectDependencies) = postProject
- {E145B2B8-CD13-A6BE-B6A7-16E5A2148223} = {E145B2B8-CD13-A6BE-B6A7-16E5A2148223}
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "slangc", "build\visual-studio\slangc\slangc.vcxproj", "{D56CBCEB-1EB5-4CA8-AEC4-48EA35ED61C7}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test-tool", "test-tool", "{57B5AA5E-C340-1823-CC51-9B17385C7423}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gfx-unit-test-tool", "build\visual-studio\gfx-unit-test-tool\gfx-unit-test-tool.vcxproj", "{092DAB9F-1DA5-4538-ADD7-1A8D1DBFD519}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "render-test-tool", "build\visual-studio\render-test-tool\render-test-tool.vcxproj", "{61F7EB00-7281-4BF3-9470-7C2EA92620C3}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "slang-reflection-test-tool", "build\visual-studio\slang-reflection-test-tool\slang-reflection-test-tool.vcxproj", "{C5ACCA6E-C04D-4B36-8516-3752B3C13C2F}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "slang-unit-test-tool", "build\visual-studio\slang-unit-test-tool\slang-unit-test-tool.vcxproj", "{0162864E-7651-4B5E-9105-C571105276EA}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|aarch64 = Debug|aarch64
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|aarch64 = Release|aarch64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {0C768A18-1D25-4000-9F37-DA5FE99E3B64}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
- {0C768A18-1D25-4000-9F37-DA5FE99E3B64}.Debug|aarch64.Build.0 = Debug aarch64|ARM
- {0C768A18-1D25-4000-9F37-DA5FE99E3B64}.Debug|Win32.ActiveCfg = Debug|Win32
- {0C768A18-1D25-4000-9F37-DA5FE99E3B64}.Debug|Win32.Build.0 = Debug|Win32
- {0C768A18-1D25-4000-9F37-DA5FE99E3B64}.Debug|x64.ActiveCfg = Debug|x64
- {0C768A18-1D25-4000-9F37-DA5FE99E3B64}.Debug|x64.Build.0 = Debug|x64
- {0C768A18-1D25-4000-9F37-DA5FE99E3B64}.Release|aarch64.ActiveCfg = Release aarch64|ARM
- {0C768A18-1D25-4000-9F37-DA5FE99E3B64}.Release|aarch64.Build.0 = Release aarch64|ARM
- {0C768A18-1D25-4000-9F37-DA5FE99E3B64}.Release|Win32.ActiveCfg = Release|Win32
- {0C768A18-1D25-4000-9F37-DA5FE99E3B64}.Release|Win32.Build.0 = Release|Win32
- {0C768A18-1D25-4000-9F37-DA5FE99E3B64}.Release|x64.ActiveCfg = Release|x64
- {0C768A18-1D25-4000-9F37-DA5FE99E3B64}.Release|x64.Build.0 = Release|x64
- {222F7498-B40C-4F3F-A704-DDEB91A4484A}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
- {222F7498-B40C-4F3F-A704-DDEB91A4484A}.Debug|aarch64.Build.0 = Debug aarch64|ARM
- {222F7498-B40C-4F3F-A704-DDEB91A4484A}.Debug|Win32.ActiveCfg = Debug|Win32
- {222F7498-B40C-4F3F-A704-DDEB91A4484A}.Debug|Win32.Build.0 = Debug|Win32
- {222F7498-B40C-4F3F-A704-DDEB91A4484A}.Debug|x64.ActiveCfg = Debug|x64
- {222F7498-B40C-4F3F-A704-DDEB91A4484A}.Debug|x64.Build.0 = Debug|x64
- {222F7498-B40C-4F3F-A704-DDEB91A4484A}.Release|aarch64.ActiveCfg = Release aarch64|ARM
- {222F7498-B40C-4F3F-A704-DDEB91A4484A}.Release|aarch64.Build.0 = Release aarch64|ARM
- {222F7498-B40C-4F3F-A704-DDEB91A4484A}.Release|Win32.ActiveCfg = Release|Win32
- {222F7498-B40C-4F3F-A704-DDEB91A4484A}.Release|Win32.Build.0 = Release|Win32
- {222F7498-B40C-4F3F-A704-DDEB91A4484A}.Release|x64.ActiveCfg = Release|x64
- {222F7498-B40C-4F3F-A704-DDEB91A4484A}.Release|x64.Build.0 = Release|x64
- {F5ADB74E-02A7-44FB-AA3B-FC02F8AC7A4B}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
- {F5ADB74E-02A7-44FB-AA3B-FC02F8AC7A4B}.Debug|aarch64.Build.0 = Debug aarch64|ARM
- {F5ADB74E-02A7-44FB-AA3B-FC02F8AC7A4B}.Debug|Win32.ActiveCfg = Debug|Win32
- {F5ADB74E-02A7-44FB-AA3B-FC02F8AC7A4B}.Debug|Win32.Build.0 = Debug|Win32
- {F5ADB74E-02A7-44FB-AA3B-FC02F8AC7A4B}.Debug|x64.ActiveCfg = Debug|x64
- {F5ADB74E-02A7-44FB-AA3B-FC02F8AC7A4B}.Debug|x64.Build.0 = Debug|x64
- {F5ADB74E-02A7-44FB-AA3B-FC02F8AC7A4B}.Release|aarch64.ActiveCfg = Release aarch64|ARM
- {F5ADB74E-02A7-44FB-AA3B-FC02F8AC7A4B}.Release|aarch64.Build.0 = Release aarch64|ARM
- {F5ADB74E-02A7-44FB-AA3B-FC02F8AC7A4B}.Release|Win32.ActiveCfg = Release|Win32
- {F5ADB74E-02A7-44FB-AA3B-FC02F8AC7A4B}.Release|Win32.Build.0 = Release|Win32
- {F5ADB74E-02A7-44FB-AA3B-FC02F8AC7A4B}.Release|x64.ActiveCfg = Release|x64
- {F5ADB74E-02A7-44FB-AA3B-FC02F8AC7A4B}.Release|x64.Build.0 = Release|x64
- {3565FE5E-4FA3-11EB-AE93-0242AC130002}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
- {3565FE5E-4FA3-11EB-AE93-0242AC130002}.Debug|aarch64.Build.0 = Debug aarch64|ARM
- {3565FE5E-4FA3-11EB-AE93-0242AC130002}.Debug|Win32.ActiveCfg = Debug|Win32
- {3565FE5E-4FA3-11EB-AE93-0242AC130002}.Debug|Win32.Build.0 = Debug|Win32
- {3565FE5E-4FA3-11EB-AE93-0242AC130002}.Debug|x64.ActiveCfg = Debug|x64
- {3565FE5E-4FA3-11EB-AE93-0242AC130002}.Debug|x64.Build.0 = Debug|x64
- {3565FE5E-4FA3-11EB-AE93-0242AC130002}.Release|aarch64.ActiveCfg = Release aarch64|ARM
- {3565FE5E-4FA3-11EB-AE93-0242AC130002}.Release|aarch64.Build.0 = Release aarch64|ARM
- {3565FE5E-4FA3-11EB-AE93-0242AC130002}.Release|Win32.ActiveCfg = Release|Win32
- {3565FE5E-4FA3-11EB-AE93-0242AC130002}.Release|Win32.Build.0 = Release|Win32
- {3565FE5E-4FA3-11EB-AE93-0242AC130002}.Release|x64.ActiveCfg = Release|x64
- {3565FE5E-4FA3-11EB-AE93-0242AC130002}.Release|x64.Build.0 = Release|x64
- {CA8A30D1-8FA9-4330-B7F7-84709246D8DC}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
- {CA8A30D1-8FA9-4330-B7F7-84709246D8DC}.Debug|aarch64.Build.0 = Debug aarch64|ARM
- {CA8A30D1-8FA9-4330-B7F7-84709246D8DC}.Debug|Win32.ActiveCfg = Debug|Win32
- {CA8A30D1-8FA9-4330-B7F7-84709246D8DC}.Debug|Win32.Build.0 = Debug|Win32
- {CA8A30D1-8FA9-4330-B7F7-84709246D8DC}.Debug|x64.ActiveCfg = Debug|x64
- {CA8A30D1-8FA9-4330-B7F7-84709246D8DC}.Debug|x64.Build.0 = Debug|x64
- {CA8A30D1-8FA9-4330-B7F7-84709246D8DC}.Release|aarch64.ActiveCfg = Release aarch64|ARM
- {CA8A30D1-8FA9-4330-B7F7-84709246D8DC}.Release|aarch64.Build.0 = Release aarch64|ARM
- {CA8A30D1-8FA9-4330-B7F7-84709246D8DC}.Release|Win32.ActiveCfg = Release|Win32
- {CA8A30D1-8FA9-4330-B7F7-84709246D8DC}.Release|Win32.Build.0 = Release|Win32
- {CA8A30D1-8FA9-4330-B7F7-84709246D8DC}.Release|x64.ActiveCfg = Release|x64
- {CA8A30D1-8FA9-4330-B7F7-84709246D8DC}.Release|x64.Build.0 = Release|x64
- {7F773DD9-EB8F-2403-B43C-B49C2014B99C}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
- {7F773DD9-EB8F-2403-B43C-B49C2014B99C}.Debug|aarch64.Build.0 = Debug aarch64|ARM
- {7F773DD9-EB8F-2403-B43C-B49C2014B99C}.Debug|Win32.ActiveCfg = Debug|Win32
- {7F773DD9-EB8F-2403-B43C-B49C2014B99C}.Debug|Win32.Build.0 = Debug|Win32
- {7F773DD9-EB8F-2403-B43C-B49C2014B99C}.Debug|x64.ActiveCfg = Debug|x64
- {7F773DD9-EB8F-2403-B43C-B49C2014B99C}.Debug|x64.Build.0 = Debug|x64
- {7F773DD9-EB8F-2403-B43C-B49C2014B99C}.Release|aarch64.ActiveCfg = Release aarch64|ARM
- {7F773DD9-EB8F-2403-B43C-B49C2014B99C}.Release|aarch64.Build.0 = Release aarch64|ARM
- {7F773DD9-EB8F-2403-B43C-B49C2014B99C}.Release|Win32.ActiveCfg = Release|Win32
- {7F773DD9-EB8F-2403-B43C-B49C2014B99C}.Release|Win32.Build.0 = Release|Win32
- {7F773DD9-EB8F-2403-B43C-B49C2014B99C}.Release|x64.ActiveCfg = Release|x64
- {7F773DD9-EB8F-2403-B43C-B49C2014B99C}.Release|x64.Build.0 = Release|x64
- {66174227-8541-41FC-A6DF-4764FC66F78E}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
- {66174227-8541-41FC-A6DF-4764FC66F78E}.Debug|aarch64.Build.0 = Debug aarch64|ARM
- {66174227-8541-41FC-A6DF-4764FC66F78E}.Debug|Win32.ActiveCfg = Debug|Win32
- {66174227-8541-41FC-A6DF-4764FC66F78E}.Debug|Win32.Build.0 = Debug|Win32
- {66174227-8541-41FC-A6DF-4764FC66F78E}.Debug|x64.ActiveCfg = Debug|x64
- {66174227-8541-41FC-A6DF-4764FC66F78E}.Debug|x64.Build.0 = Debug|x64
- {66174227-8541-41FC-A6DF-4764FC66F78E}.Release|aarch64.ActiveCfg = Release aarch64|ARM
- {66174227-8541-41FC-A6DF-4764FC66F78E}.Release|aarch64.Build.0 = Release aarch64|ARM
- {66174227-8541-41FC-A6DF-4764FC66F78E}.Release|Win32.ActiveCfg = Release|Win32
- {66174227-8541-41FC-A6DF-4764FC66F78E}.Release|Win32.Build.0 = Release|Win32
- {66174227-8541-41FC-A6DF-4764FC66F78E}.Release|x64.ActiveCfg = Release|x64
- {66174227-8541-41FC-A6DF-4764FC66F78E}.Release|x64.Build.0 = Release|x64
- {12C1E89D-F5D0-41D3-8E8D-FB3F358F8126}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
- {12C1E89D-F5D0-41D3-8E8D-FB3F358F8126}.Debug|aarch64.Build.0 = Debug aarch64|ARM
- {12C1E89D-F5D0-41D3-8E8D-FB3F358F8126}.Debug|Win32.ActiveCfg = Debug|Win32
- {12C1E89D-F5D0-41D3-8E8D-FB3F358F8126}.Debug|Win32.Build.0 = Debug|Win32
- {12C1E89D-F5D0-41D3-8E8D-FB3F358F8126}.Debug|x64.ActiveCfg = Debug|x64
- {12C1E89D-F5D0-41D3-8E8D-FB3F358F8126}.Debug|x64.Build.0 = Debug|x64
- {12C1E89D-F5D0-41D3-8E8D-FB3F358F8126}.Release|aarch64.ActiveCfg = Release aarch64|ARM
- {12C1E89D-F5D0-41D3-8E8D-FB3F358F8126}.Release|aarch64.Build.0 = Release aarch64|ARM
- {12C1E89D-F5D0-41D3-8E8D-FB3F358F8126}.Release|Win32.ActiveCfg = Release|Win32
- {12C1E89D-F5D0-41D3-8E8D-FB3F358F8126}.Release|Win32.Build.0 = Release|Win32
- {12C1E89D-F5D0-41D3-8E8D-FB3F358F8126}.Release|x64.ActiveCfg = Release|x64
- {12C1E89D-F5D0-41D3-8E8D-FB3F358F8126}.Release|x64.Build.0 = Release|x64
- {F9BE7957-8399-899E-0C49-E714FDDD4B65}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
- {F9BE7957-8399-899E-0C49-E714FDDD4B65}.Debug|aarch64.Build.0 = Debug aarch64|ARM
- {F9BE7957-8399-899E-0C49-E714FDDD4B65}.Debug|Win32.ActiveCfg = Debug|Win32
- {F9BE7957-8399-899E-0C49-E714FDDD4B65}.Debug|Win32.Build.0 = Debug|Win32
- {F9BE7957-8399-899E-0C49-E714FDDD4B65}.Debug|x64.ActiveCfg = Debug|x64
- {F9BE7957-8399-899E-0C49-E714FDDD4B65}.Debug|x64.Build.0 = Debug|x64
- {F9BE7957-8399-899E-0C49-E714FDDD4B65}.Release|aarch64.ActiveCfg = Release aarch64|ARM
- {F9BE7957-8399-899E-0C49-E714FDDD4B65}.Release|aarch64.Build.0 = Release aarch64|ARM
- {F9BE7957-8399-899E-0C49-E714FDDD4B65}.Release|Win32.ActiveCfg = Release|Win32
- {F9BE7957-8399-899E-0C49-E714FDDD4B65}.Release|Win32.Build.0 = Release|Win32
- {F9BE7957-8399-899E-0C49-E714FDDD4B65}.Release|x64.ActiveCfg = Release|x64
- {F9BE7957-8399-899E-0C49-E714FDDD4B65}.Release|x64.Build.0 = Release|x64
- {4B47A364-37C4-96A7-6041-97BB4C1D333B}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
- {4B47A364-37C4-96A7-6041-97BB4C1D333B}.Debug|aarch64.Build.0 = Debug aarch64|ARM
- {4B47A364-37C4-96A7-6041-97BB4C1D333B}.Debug|Win32.ActiveCfg = Debug|Win32
- {4B47A364-37C4-96A7-6041-97BB4C1D333B}.Debug|Win32.Build.0 = Debug|Win32
- {4B47A364-37C4-96A7-6041-97BB4C1D333B}.Debug|x64.ActiveCfg = Debug|x64
- {4B47A364-37C4-96A7-6041-97BB4C1D333B}.Debug|x64.Build.0 = Debug|x64
- {4B47A364-37C4-96A7-6041-97BB4C1D333B}.Release|aarch64.ActiveCfg = Release aarch64|ARM
- {4B47A364-37C4-96A7-6041-97BB4C1D333B}.Release|aarch64.Build.0 = Release aarch64|ARM
- {4B47A364-37C4-96A7-6041-97BB4C1D333B}.Release|Win32.ActiveCfg = Release|Win32
- {4B47A364-37C4-96A7-6041-97BB4C1D333B}.Release|Win32.Build.0 = Release|Win32
- {4B47A364-37C4-96A7-6041-97BB4C1D333B}.Release|x64.ActiveCfg = Release|x64
- {4B47A364-37C4-96A7-6041-97BB4C1D333B}.Release|x64.Build.0 = Release|x64
- {37BED5B5-23FA-D81F-8C0C-F1167867813A}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
- {37BED5B5-23FA-D81F-8C0C-F1167867813A}.Debug|aarch64.Build.0 = Debug aarch64|ARM
- {37BED5B5-23FA-D81F-8C0C-F1167867813A}.Debug|Win32.ActiveCfg = Debug|Win32
- {37BED5B5-23FA-D81F-8C0C-F1167867813A}.Debug|Win32.Build.0 = Debug|Win32
- {37BED5B5-23FA-D81F-8C0C-F1167867813A}.Debug|x64.ActiveCfg = Debug|x64
- {37BED5B5-23FA-D81F-8C0C-F1167867813A}.Debug|x64.Build.0 = Debug|x64
- {37BED5B5-23FA-D81F-8C0C-F1167867813A}.Release|aarch64.ActiveCfg = Release aarch64|ARM
- {37BED5B5-23FA-D81F-8C0C-F1167867813A}.Release|aarch64.Build.0 = Release aarch64|ARM
- {37BED5B5-23FA-D81F-8C0C-F1167867813A}.Release|Win32.ActiveCfg = Release|Win32
- {37BED5B5-23FA-D81F-8C0C-F1167867813A}.Release|Win32.Build.0 = Release|Win32
- {37BED5B5-23FA-D81F-8C0C-F1167867813A}.Release|x64.ActiveCfg = Release|x64
- {37BED5B5-23FA-D81F-8C0C-F1167867813A}.Release|x64.Build.0 = Release|x64
- {57C81DD3-4304-213D-AC16-39349871C957}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
- {57C81DD3-4304-213D-AC16-39349871C957}.Debug|aarch64.Build.0 = Debug aarch64|ARM
- {57C81DD3-4304-213D-AC16-39349871C957}.Debug|Win32.ActiveCfg = Debug|Win32
- {57C81DD3-4304-213D-AC16-39349871C957}.Debug|Win32.Build.0 = Debug|Win32
- {57C81DD3-4304-213D-AC16-39349871C957}.Debug|x64.ActiveCfg = Debug|x64
- {57C81DD3-4304-213D-AC16-39349871C957}.Debug|x64.Build.0 = Debug|x64
- {57C81DD3-4304-213D-AC16-39349871C957}.Release|aarch64.ActiveCfg = Release aarch64|ARM
- {57C81DD3-4304-213D-AC16-39349871C957}.Release|aarch64.Build.0 = Release aarch64|ARM
- {57C81DD3-4304-213D-AC16-39349871C957}.Release|Win32.ActiveCfg = Release|Win32
- {57C81DD3-4304-213D-AC16-39349871C957}.Release|Win32.Build.0 = Release|Win32
- {57C81DD3-4304-213D-AC16-39349871C957}.Release|x64.ActiveCfg = Release|x64
- {57C81DD3-4304-213D-AC16-39349871C957}.Release|x64.Build.0 = Release|x64
- {010BE414-ED5B-CF56-16C0-BD18027062C0}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
- {010BE414-ED5B-CF56-16C0-BD18027062C0}.Debug|aarch64.Build.0 = Debug aarch64|ARM
- {010BE414-ED5B-CF56-16C0-BD18027062C0}.Debug|Win32.ActiveCfg = Debug|Win32
- {010BE414-ED5B-CF56-16C0-BD18027062C0}.Debug|Win32.Build.0 = Debug|Win32
- {010BE414-ED5B-CF56-16C0-BD18027062C0}.Debug|x64.ActiveCfg = Debug|x64
- {010BE414-ED5B-CF56-16C0-BD18027062C0}.Debug|x64.Build.0 = Debug|x64
- {010BE414-ED5B-CF56-16C0-BD18027062C0}.Release|aarch64.ActiveCfg = Release aarch64|ARM
- {010BE414-ED5B-CF56-16C0-BD18027062C0}.Release|aarch64.Build.0 = Release aarch64|ARM
- {010BE414-ED5B-CF56-16C0-BD18027062C0}.Release|Win32.ActiveCfg = Release|Win32
- {010BE414-ED5B-CF56-16C0-BD18027062C0}.Release|Win32.Build.0 = Release|Win32
- {010BE414-ED5B-CF56-16C0-BD18027062C0}.Release|x64.ActiveCfg = Release|x64
- {010BE414-ED5B-CF56-16C0-BD18027062C0}.Release|x64.Build.0 = Release|x64
- {2F8724C6-1BC3-2730-84D5-3F277030D04A}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
- {2F8724C6-1BC3-2730-84D5-3F277030D04A}.Debug|aarch64.Build.0 = Debug aarch64|ARM
- {2F8724C6-1BC3-2730-84D5-3F277030D04A}.Debug|Win32.ActiveCfg = Debug|Win32
- {2F8724C6-1BC3-2730-84D5-3F277030D04A}.Debug|Win32.Build.0 = Debug|Win32
- {2F8724C6-1BC3-2730-84D5-3F277030D04A}.Debug|x64.ActiveCfg = Debug|x64
- {2F8724C6-1BC3-2730-84D5-3F277030D04A}.Debug|x64.Build.0 = Debug|x64
- {2F8724C6-1BC3-2730-84D5-3F277030D04A}.Release|aarch64.ActiveCfg = Release aarch64|ARM
- {2F8724C6-1BC3-2730-84D5-3F277030D04A}.Release|aarch64.Build.0 = Release aarch64|ARM
- {2F8724C6-1BC3-2730-84D5-3F277030D04A}.Release|Win32.ActiveCfg = Release|Win32
- {2F8724C6-1BC3-2730-84D5-3F277030D04A}.Release|Win32.Build.0 = Release|Win32
- {2F8724C6-1BC3-2730-84D5-3F277030D04A}.Release|x64.ActiveCfg = Release|x64
- {2F8724C6-1BC3-2730-84D5-3F277030D04A}.Release|x64.Build.0 = Release|x64
- {71AC0F50-5DFD-FA91-8661-E95372118EFB}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
- {71AC0F50-5DFD-FA91-8661-E95372118EFB}.Debug|aarch64.Build.0 = Debug aarch64|ARM
- {71AC0F50-5DFD-FA91-8661-E95372118EFB}.Debug|Win32.ActiveCfg = Debug|Win32
- {71AC0F50-5DFD-FA91-8661-E95372118EFB}.Debug|Win32.Build.0 = Debug|Win32
- {71AC0F50-5DFD-FA91-8661-E95372118EFB}.Debug|x64.ActiveCfg = Debug|x64
- {71AC0F50-5DFD-FA91-8661-E95372118EFB}.Debug|x64.Build.0 = Debug|x64
- {71AC0F50-5DFD-FA91-8661-E95372118EFB}.Release|aarch64.ActiveCfg = Release aarch64|ARM
- {71AC0F50-5DFD-FA91-8661-E95372118EFB}.Release|aarch64.Build.0 = Release aarch64|ARM
- {71AC0F50-5DFD-FA91-8661-E95372118EFB}.Release|Win32.ActiveCfg = Release|Win32
- {71AC0F50-5DFD-FA91-8661-E95372118EFB}.Release|Win32.Build.0 = Release|Win32
- {71AC0F50-5DFD-FA91-8661-E95372118EFB}.Release|x64.ActiveCfg = Release|x64
- {71AC0F50-5DFD-FA91-8661-E95372118EFB}.Release|x64.Build.0 = Release|x64
- {17BA8E32-034E-84DA-6C12-DE8E58C5BECC}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
- {17BA8E32-034E-84DA-6C12-DE8E58C5BECC}.Debug|aarch64.Build.0 = Debug aarch64|ARM
- {17BA8E32-034E-84DA-6C12-DE8E58C5BECC}.Debug|Win32.ActiveCfg = Debug|Win32
- {17BA8E32-034E-84DA-6C12-DE8E58C5BECC}.Debug|Win32.Build.0 = Debug|Win32
- {17BA8E32-034E-84DA-6C12-DE8E58C5BECC}.Debug|x64.ActiveCfg = Debug|x64
- {17BA8E32-034E-84DA-6C12-DE8E58C5BECC}.Debug|x64.Build.0 = Debug|x64
- {17BA8E32-034E-84DA-6C12-DE8E58C5BECC}.Release|aarch64.ActiveCfg = Release aarch64|ARM
- {17BA8E32-034E-84DA-6C12-DE8E58C5BECC}.Release|aarch64.Build.0 = Release aarch64|ARM
- {17BA8E32-034E-84DA-6C12-DE8E58C5BECC}.Release|Win32.ActiveCfg = Release|Win32
- {17BA8E32-034E-84DA-6C12-DE8E58C5BECC}.Release|Win32.Build.0 = Release|Win32
- {17BA8E32-034E-84DA-6C12-DE8E58C5BECC}.Release|x64.ActiveCfg = Release|x64
- {17BA8E32-034E-84DA-6C12-DE8E58C5BECC}.Release|x64.Build.0 = Release|x64
- {25512BFB-1138-EDF2-BA88-5310A64E6659}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
- {25512BFB-1138-EDF2-BA88-5310A64E6659}.Debug|aarch64.Build.0 = Debug aarch64|ARM
- {25512BFB-1138-EDF2-BA88-5310A64E6659}.Debug|Win32.ActiveCfg = Debug|Win32
- {25512BFB-1138-EDF2-BA88-5310A64E6659}.Debug|Win32.Build.0 = Debug|Win32
- {25512BFB-1138-EDF2-BA88-5310A64E6659}.Debug|x64.ActiveCfg = Debug|x64
- {25512BFB-1138-EDF2-BA88-5310A64E6659}.Debug|x64.Build.0 = Debug|x64
- {25512BFB-1138-EDF2-BA88-5310A64E6659}.Release|aarch64.ActiveCfg = Release aarch64|ARM
- {25512BFB-1138-EDF2-BA88-5310A64E6659}.Release|aarch64.Build.0 = Release aarch64|ARM
- {25512BFB-1138-EDF2-BA88-5310A64E6659}.Release|Win32.ActiveCfg = Release|Win32
- {25512BFB-1138-EDF2-BA88-5310A64E6659}.Release|Win32.Build.0 = Release|Win32
- {25512BFB-1138-EDF2-BA88-5310A64E6659}.Release|x64.ActiveCfg = Release|x64
- {25512BFB-1138-EDF2-BA88-5310A64E6659}.Release|x64.Build.0 = Release|x64
- {0FC5DE93-FBEA-A8FA-E430-2EC6D0F5CDC6}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
- {0FC5DE93-FBEA-A8FA-E430-2EC6D0F5CDC6}.Debug|aarch64.Build.0 = Debug aarch64|ARM
- {0FC5DE93-FBEA-A8FA-E430-2EC6D0F5CDC6}.Debug|Win32.ActiveCfg = Debug|Win32
- {0FC5DE93-FBEA-A8FA-E430-2EC6D0F5CDC6}.Debug|Win32.Build.0 = Debug|Win32
- {0FC5DE93-FBEA-A8FA-E430-2EC6D0F5CDC6}.Debug|x64.ActiveCfg = Debug|x64
- {0FC5DE93-FBEA-A8FA-E430-2EC6D0F5CDC6}.Debug|x64.Build.0 = Debug|x64
- {0FC5DE93-FBEA-A8FA-E430-2EC6D0F5CDC6}.Release|aarch64.ActiveCfg = Release aarch64|ARM
- {0FC5DE93-FBEA-A8FA-E430-2EC6D0F5CDC6}.Release|aarch64.Build.0 = Release aarch64|ARM
- {0FC5DE93-FBEA-A8FA-E430-2EC6D0F5CDC6}.Release|Win32.ActiveCfg = Release|Win32
- {0FC5DE93-FBEA-A8FA-E430-2EC6D0F5CDC6}.Release|Win32.Build.0 = Release|Win32
- {0FC5DE93-FBEA-A8FA-E430-2EC6D0F5CDC6}.Release|x64.ActiveCfg = Release|x64
- {0FC5DE93-FBEA-A8FA-E430-2EC6D0F5CDC6}.Release|x64.Build.0 = Release|x64
- {3BB99068-27C9-3C39-9082-A1577CB12BD2}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
- {3BB99068-27C9-3C39-9082-A1577CB12BD2}.Debug|aarch64.Build.0 = Debug aarch64|ARM
- {3BB99068-27C9-3C39-9082-A1577CB12BD2}.Debug|Win32.ActiveCfg = Debug|Win32
- {3BB99068-27C9-3C39-9082-A1577CB12BD2}.Debug|Win32.Build.0 = Debug|Win32
- {3BB99068-27C9-3C39-9082-A1577CB12BD2}.Debug|x64.ActiveCfg = Debug|x64
- {3BB99068-27C9-3C39-9082-A1577CB12BD2}.Debug|x64.Build.0 = Debug|x64
- {3BB99068-27C9-3C39-9082-A1577CB12BD2}.Release|aarch64.ActiveCfg = Release aarch64|ARM
- {3BB99068-27C9-3C39-9082-A1577CB12BD2}.Release|aarch64.Build.0 = Release aarch64|ARM
- {3BB99068-27C9-3C39-9082-A1577CB12BD2}.Release|Win32.ActiveCfg = Release|Win32
- {3BB99068-27C9-3C39-9082-A1577CB12BD2}.Release|Win32.Build.0 = Release|Win32
- {3BB99068-27C9-3C39-9082-A1577CB12BD2}.Release|x64.ActiveCfg = Release|x64
- {3BB99068-27C9-3C39-9082-A1577CB12BD2}.Release|x64.Build.0 = Release|x64
- {E145B2B8-CD13-A6BE-B6A7-16E5A2148223}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
- {E145B2B8-CD13-A6BE-B6A7-16E5A2148223}.Debug|aarch64.Build.0 = Debug aarch64|ARM
- {E145B2B8-CD13-A6BE-B6A7-16E5A2148223}.Debug|Win32.ActiveCfg = Debug|Win32
- {E145B2B8-CD13-A6BE-B6A7-16E5A2148223}.Debug|Win32.Build.0 = Debug|Win32
- {E145B2B8-CD13-A6BE-B6A7-16E5A2148223}.Debug|x64.ActiveCfg = Debug|x64
- {E145B2B8-CD13-A6BE-B6A7-16E5A2148223}.Debug|x64.Build.0 = Debug|x64
- {E145B2B8-CD13-A6BE-B6A7-16E5A2148223}.Release|aarch64.ActiveCfg = Release aarch64|ARM
- {E145B2B8-CD13-A6BE-B6A7-16E5A2148223}.Release|aarch64.Build.0 = Release aarch64|ARM
- {E145B2B8-CD13-A6BE-B6A7-16E5A2148223}.Release|Win32.ActiveCfg = Release|Win32
- {E145B2B8-CD13-A6BE-B6A7-16E5A2148223}.Release|Win32.Build.0 = Release|Win32
- {E145B2B8-CD13-A6BE-B6A7-16E5A2148223}.Release|x64.ActiveCfg = Release|x64
- {E145B2B8-CD13-A6BE-B6A7-16E5A2148223}.Release|x64.Build.0 = Release|x64
- {E1EC8075-823E-46E5-BC38-C124CCCDF878}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
- {E1EC8075-823E-46E5-BC38-C124CCCDF878}.Debug|aarch64.Build.0 = Debug aarch64|ARM
- {E1EC8075-823E-46E5-BC38-C124CCCDF878}.Debug|Win32.ActiveCfg = Debug|Win32
- {E1EC8075-823E-46E5-BC38-C124CCCDF878}.Debug|Win32.Build.0 = Debug|Win32
- {E1EC8075-823E-46E5-BC38-C124CCCDF878}.Debug|x64.ActiveCfg = Debug|x64
- {E1EC8075-823E-46E5-BC38-C124CCCDF878}.Debug|x64.Build.0 = Debug|x64
- {E1EC8075-823E-46E5-BC38-C124CCCDF878}.Release|aarch64.ActiveCfg = Release aarch64|ARM
- {E1EC8075-823E-46E5-BC38-C124CCCDF878}.Release|aarch64.Build.0 = Release aarch64|ARM
- {E1EC8075-823E-46E5-BC38-C124CCCDF878}.Release|Win32.ActiveCfg = Release|Win32
- {E1EC8075-823E-46E5-BC38-C124CCCDF878}.Release|Win32.Build.0 = Release|Win32
- {E1EC8075-823E-46E5-BC38-C124CCCDF878}.Release|x64.ActiveCfg = Release|x64
- {E1EC8075-823E-46E5-BC38-C124CCCDF878}.Release|x64.Build.0 = Release|x64
- {E76ACB11-4A12-4F0A-BE1E-CE0B8836EB7F}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
- {E76ACB11-4A12-4F0A-BE1E-CE0B8836EB7F}.Debug|aarch64.Build.0 = Debug aarch64|ARM
- {E76ACB11-4A12-4F0A-BE1E-CE0B8836EB7F}.Debug|Win32.ActiveCfg = Debug|Win32
- {E76ACB11-4A12-4F0A-BE1E-CE0B8836EB7F}.Debug|Win32.Build.0 = Debug|Win32
- {E76ACB11-4A12-4F0A-BE1E-CE0B8836EB7F}.Debug|x64.ActiveCfg = Debug|x64
- {E76ACB11-4A12-4F0A-BE1E-CE0B8836EB7F}.Debug|x64.Build.0 = Debug|x64
- {E76ACB11-4A12-4F0A-BE1E-CE0B8836EB7F}.Release|aarch64.ActiveCfg = Release aarch64|ARM
- {E76ACB11-4A12-4F0A-BE1E-CE0B8836EB7F}.Release|aarch64.Build.0 = Release aarch64|ARM
- {E76ACB11-4A12-4F0A-BE1E-CE0B8836EB7F}.Release|Win32.ActiveCfg = Release|Win32
- {E76ACB11-4A12-4F0A-BE1E-CE0B8836EB7F}.Release|Win32.Build.0 = Release|Win32
- {E76ACB11-4A12-4F0A-BE1E-CE0B8836EB7F}.Release|x64.ActiveCfg = Release|x64
- {E76ACB11-4A12-4F0A-BE1E-CE0B8836EB7F}.Release|x64.Build.0 = Release|x64
- {DB00DA62-0533-4AFD-B59F-A67D5B3A0808}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
- {DB00DA62-0533-4AFD-B59F-A67D5B3A0808}.Debug|aarch64.Build.0 = Debug aarch64|ARM
- {DB00DA62-0533-4AFD-B59F-A67D5B3A0808}.Debug|Win32.ActiveCfg = Debug|Win32
- {DB00DA62-0533-4AFD-B59F-A67D5B3A0808}.Debug|Win32.Build.0 = Debug|Win32
- {DB00DA62-0533-4AFD-B59F-A67D5B3A0808}.Debug|x64.ActiveCfg = Debug|x64
- {DB00DA62-0533-4AFD-B59F-A67D5B3A0808}.Debug|x64.Build.0 = Debug|x64
- {DB00DA62-0533-4AFD-B59F-A67D5B3A0808}.Release|aarch64.ActiveCfg = Release aarch64|ARM
- {DB00DA62-0533-4AFD-B59F-A67D5B3A0808}.Release|aarch64.Build.0 = Release aarch64|ARM
- {DB00DA62-0533-4AFD-B59F-A67D5B3A0808}.Release|Win32.ActiveCfg = Release|Win32
- {DB00DA62-0533-4AFD-B59F-A67D5B3A0808}.Release|Win32.Build.0 = Release|Win32
- {DB00DA62-0533-4AFD-B59F-A67D5B3A0808}.Release|x64.ActiveCfg = Release|x64
- {DB00DA62-0533-4AFD-B59F-A67D5B3A0808}.Release|x64.Build.0 = Release|x64
- {D56CBCEB-1EB5-4CA8-AEC4-48EA35ED61C7}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
- {D56CBCEB-1EB5-4CA8-AEC4-48EA35ED61C7}.Debug|aarch64.Build.0 = Debug aarch64|ARM
- {D56CBCEB-1EB5-4CA8-AEC4-48EA35ED61C7}.Debug|Win32.ActiveCfg = Debug|Win32
- {D56CBCEB-1EB5-4CA8-AEC4-48EA35ED61C7}.Debug|Win32.Build.0 = Debug|Win32
- {D56CBCEB-1EB5-4CA8-AEC4-48EA35ED61C7}.Debug|x64.ActiveCfg = Debug|x64
- {D56CBCEB-1EB5-4CA8-AEC4-48EA35ED61C7}.Debug|x64.Build.0 = Debug|x64
- {D56CBCEB-1EB5-4CA8-AEC4-48EA35ED61C7}.Release|aarch64.ActiveCfg = Release aarch64|ARM
- {D56CBCEB-1EB5-4CA8-AEC4-48EA35ED61C7}.Release|aarch64.Build.0 = Release aarch64|ARM
- {D56CBCEB-1EB5-4CA8-AEC4-48EA35ED61C7}.Release|Win32.ActiveCfg = Release|Win32
- {D56CBCEB-1EB5-4CA8-AEC4-48EA35ED61C7}.Release|Win32.Build.0 = Release|Win32
- {D56CBCEB-1EB5-4CA8-AEC4-48EA35ED61C7}.Release|x64.ActiveCfg = Release|x64
- {D56CBCEB-1EB5-4CA8-AEC4-48EA35ED61C7}.Release|x64.Build.0 = Release|x64
- {092DAB9F-1DA5-4538-ADD7-1A8D1DBFD519}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
- {092DAB9F-1DA5-4538-ADD7-1A8D1DBFD519}.Debug|aarch64.Build.0 = Debug aarch64|ARM
- {092DAB9F-1DA5-4538-ADD7-1A8D1DBFD519}.Debug|Win32.ActiveCfg = Debug|Win32
- {092DAB9F-1DA5-4538-ADD7-1A8D1DBFD519}.Debug|Win32.Build.0 = Debug|Win32
- {092DAB9F-1DA5-4538-ADD7-1A8D1DBFD519}.Debug|x64.ActiveCfg = Debug|x64
- {092DAB9F-1DA5-4538-ADD7-1A8D1DBFD519}.Debug|x64.Build.0 = Debug|x64
- {092DAB9F-1DA5-4538-ADD7-1A8D1DBFD519}.Release|aarch64.ActiveCfg = Release aarch64|ARM
- {092DAB9F-1DA5-4538-ADD7-1A8D1DBFD519}.Release|aarch64.Build.0 = Release aarch64|ARM
- {092DAB9F-1DA5-4538-ADD7-1A8D1DBFD519}.Release|Win32.ActiveCfg = Release|Win32
- {092DAB9F-1DA5-4538-ADD7-1A8D1DBFD519}.Release|Win32.Build.0 = Release|Win32
- {092DAB9F-1DA5-4538-ADD7-1A8D1DBFD519}.Release|x64.ActiveCfg = Release|x64
- {092DAB9F-1DA5-4538-ADD7-1A8D1DBFD519}.Release|x64.Build.0 = Release|x64
- {61F7EB00-7281-4BF3-9470-7C2EA92620C3}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
- {61F7EB00-7281-4BF3-9470-7C2EA92620C3}.Debug|aarch64.Build.0 = Debug aarch64|ARM
- {61F7EB00-7281-4BF3-9470-7C2EA92620C3}.Debug|Win32.ActiveCfg = Debug|Win32
- {61F7EB00-7281-4BF3-9470-7C2EA92620C3}.Debug|Win32.Build.0 = Debug|Win32
- {61F7EB00-7281-4BF3-9470-7C2EA92620C3}.Debug|x64.ActiveCfg = Debug|x64
- {61F7EB00-7281-4BF3-9470-7C2EA92620C3}.Debug|x64.Build.0 = Debug|x64
- {61F7EB00-7281-4BF3-9470-7C2EA92620C3}.Release|aarch64.ActiveCfg = Release aarch64|ARM
- {61F7EB00-7281-4BF3-9470-7C2EA92620C3}.Release|aarch64.Build.0 = Release aarch64|ARM
- {61F7EB00-7281-4BF3-9470-7C2EA92620C3}.Release|Win32.ActiveCfg = Release|Win32
- {61F7EB00-7281-4BF3-9470-7C2EA92620C3}.Release|Win32.Build.0 = Release|Win32
- {61F7EB00-7281-4BF3-9470-7C2EA92620C3}.Release|x64.ActiveCfg = Release|x64
- {61F7EB00-7281-4BF3-9470-7C2EA92620C3}.Release|x64.Build.0 = Release|x64
- {C5ACCA6E-C04D-4B36-8516-3752B3C13C2F}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
- {C5ACCA6E-C04D-4B36-8516-3752B3C13C2F}.Debug|aarch64.Build.0 = Debug aarch64|ARM
- {C5ACCA6E-C04D-4B36-8516-3752B3C13C2F}.Debug|Win32.ActiveCfg = Debug|Win32
- {C5ACCA6E-C04D-4B36-8516-3752B3C13C2F}.Debug|Win32.Build.0 = Debug|Win32
- {C5ACCA6E-C04D-4B36-8516-3752B3C13C2F}.Debug|x64.ActiveCfg = Debug|x64
- {C5ACCA6E-C04D-4B36-8516-3752B3C13C2F}.Debug|x64.Build.0 = Debug|x64
- {C5ACCA6E-C04D-4B36-8516-3752B3C13C2F}.Release|aarch64.ActiveCfg = Release aarch64|ARM
- {C5ACCA6E-C04D-4B36-8516-3752B3C13C2F}.Release|aarch64.Build.0 = Release aarch64|ARM
- {C5ACCA6E-C04D-4B36-8516-3752B3C13C2F}.Release|Win32.ActiveCfg = Release|Win32
- {C5ACCA6E-C04D-4B36-8516-3752B3C13C2F}.Release|Win32.Build.0 = Release|Win32
- {C5ACCA6E-C04D-4B36-8516-3752B3C13C2F}.Release|x64.ActiveCfg = Release|x64
- {C5ACCA6E-C04D-4B36-8516-3752B3C13C2F}.Release|x64.Build.0 = Release|x64
- {0162864E-7651-4B5E-9105-C571105276EA}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
- {0162864E-7651-4B5E-9105-C571105276EA}.Debug|aarch64.Build.0 = Debug aarch64|ARM
- {0162864E-7651-4B5E-9105-C571105276EA}.Debug|Win32.ActiveCfg = Debug|Win32
- {0162864E-7651-4B5E-9105-C571105276EA}.Debug|Win32.Build.0 = Debug|Win32
- {0162864E-7651-4B5E-9105-C571105276EA}.Debug|x64.ActiveCfg = Debug|x64
- {0162864E-7651-4B5E-9105-C571105276EA}.Debug|x64.Build.0 = Debug|x64
- {0162864E-7651-4B5E-9105-C571105276EA}.Release|aarch64.ActiveCfg = Release aarch64|ARM
- {0162864E-7651-4B5E-9105-C571105276EA}.Release|aarch64.Build.0 = Release aarch64|ARM
- {0162864E-7651-4B5E-9105-C571105276EA}.Release|Win32.ActiveCfg = Release|Win32
- {0162864E-7651-4B5E-9105-C571105276EA}.Release|Win32.Build.0 = Release|Win32
- {0162864E-7651-4B5E-9105-C571105276EA}.Release|x64.ActiveCfg = Release|x64
- {0162864E-7651-4B5E-9105-C571105276EA}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
- GlobalSection(NestedProjects) = preSolution
- {0C768A18-1D25-4000-9F37-DA5FE99E3B64} = {FD47AE19-69FD-260F-F2F1-20E65EA61D13}
- {222F7498-B40C-4F3F-A704-DDEB91A4484A} = {FD47AE19-69FD-260F-F2F1-20E65EA61D13}
- {F5ADB74E-02A7-44FB-AA3B-FC02F8AC7A4B} = {FD47AE19-69FD-260F-F2F1-20E65EA61D13}
- {3565FE5E-4FA3-11EB-AE93-0242AC130002} = {FD47AE19-69FD-260F-F2F1-20E65EA61D13}
- {CA8A30D1-8FA9-4330-B7F7-84709246D8DC} = {FD47AE19-69FD-260F-F2F1-20E65EA61D13}
- {7F773DD9-EB8F-2403-B43C-B49C2014B99C} = {FD47AE19-69FD-260F-F2F1-20E65EA61D13}
- {66174227-8541-41FC-A6DF-4764FC66F78E} = {FD47AE19-69FD-260F-F2F1-20E65EA61D13}
- {4B47A364-37C4-96A7-6041-97BB4C1D333B} = {EB5FC2C6-D72D-B6CC-C0C1-26F3AC2E9231}
- {37BED5B5-23FA-D81F-8C0C-F1167867813A} = {EB5FC2C6-D72D-B6CC-C0C1-26F3AC2E9231}
- {57C81DD3-4304-213D-AC16-39349871C957} = {EB5FC2C6-D72D-B6CC-C0C1-26F3AC2E9231}
- {010BE414-ED5B-CF56-16C0-BD18027062C0} = {EB5FC2C6-D72D-B6CC-C0C1-26F3AC2E9231}
- {2F8724C6-1BC3-2730-84D5-3F277030D04A} = {EB5FC2C6-D72D-B6CC-C0C1-26F3AC2E9231}
- {71AC0F50-5DFD-FA91-8661-E95372118EFB} = {EB5FC2C6-D72D-B6CC-C0C1-26F3AC2E9231}
- {17BA8E32-034E-84DA-6C12-DE8E58C5BECC} = {EB5FC2C6-D72D-B6CC-C0C1-26F3AC2E9231}
- {25512BFB-1138-EDF2-BA88-5310A64E6659} = {EB5FC2C6-D72D-B6CC-C0C1-26F3AC2E9231}
- {0FC5DE93-FBEA-A8FA-E430-2EC6D0F5CDC6} = {EB5FC2C6-D72D-B6CC-C0C1-26F3AC2E9231}
- {3BB99068-27C9-3C39-9082-A1577CB12BD2} = {EB5FC2C6-D72D-B6CC-C0C1-26F3AC2E9231}
- {E145B2B8-CD13-A6BE-B6A7-16E5A2148223} = {F3AB4ED5-5F37-BC99-6848-3F8ED452189A}
- {092DAB9F-1DA5-4538-ADD7-1A8D1DBFD519} = {57B5AA5E-C340-1823-CC51-9B17385C7423}
- {61F7EB00-7281-4BF3-9470-7C2EA92620C3} = {57B5AA5E-C340-1823-CC51-9B17385C7423}
- {C5ACCA6E-C04D-4B36-8516-3752B3C13C2F} = {57B5AA5E-C340-1823-CC51-9B17385C7423}
- {0162864E-7651-4B5E-9105-C571105276EA} = {57B5AA5E-C340-1823-CC51-9B17385C7423}
- EndGlobalSection
-EndGlobal
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 16
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tools", "tools", "{FD47AE19-69FD-260F-F2F1-20E65EA61D13}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "slang-test", "build\visual-studio\slang-test\slang-test.vcxproj", "{0C768A18-1D25-4000-9F37-DA5FE99E3B64}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gfx", "build\visual-studio\gfx\gfx.vcxproj", "{222F7498-B40C-4F3F-A704-DDEB91A4484A}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gfx-util", "build\visual-studio\gfx-util\gfx-util.vcxproj", "{F5ADB74E-02A7-44FB-AA3B-FC02F8AC7A4B}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "platform", "build\visual-studio\platform\platform.vcxproj", "{3565FE5E-4FA3-11EB-AE93-0242AC130002}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "slang-cpp-extractor", "build\visual-studio\slang-cpp-extractor\slang-cpp-extractor.vcxproj", "{CA8A30D1-8FA9-4330-B7F7-84709246D8DC}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "slang-embed", "build\visual-studio\slang-embed\slang-embed.vcxproj", "{7F773DD9-EB8F-2403-B43C-B49C2014B99C}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "slang-generate", "build\visual-studio\slang-generate\slang-generate.vcxproj", "{66174227-8541-41FC-A6DF-4764FC66F78E}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "test-proxy", "build\visual-studio\test-proxy\test-proxy.vcxproj", "{BE412850-4BB9-429A-877C-BFBC4B34186C}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "compiler-core", "build\visual-studio\compiler-core\compiler-core.vcxproj", "{12C1E89D-F5D0-41D3-8E8D-FB3F358F8126}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core", "build\visual-studio\core\core.vcxproj", "{F9BE7957-8399-899E-0C49-E714FDDD4B65}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "examples", "examples", "{EB5FC2C6-D72D-B6CC-C0C1-26F3AC2E9231}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cpu-hello-world", "build\visual-studio\cpu-hello-world\cpu-hello-world.vcxproj", "{4B47A364-37C4-96A7-6041-97BB4C1D333B}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "example-base", "build\visual-studio\example-base\example-base.vcxproj", "{37BED5B5-23FA-D81F-8C0C-F1167867813A}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gpu-printing", "build\visual-studio\gpu-printing\gpu-printing.vcxproj", "{57C81DD3-4304-213D-AC16-39349871C957}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "hello-world", "build\visual-studio\hello-world\hello-world.vcxproj", "{010BE414-ED5B-CF56-16C0-BD18027062C0}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "model-viewer", "build\visual-studio\model-viewer\model-viewer.vcxproj", "{2F8724C6-1BC3-2730-84D5-3F277030D04A}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ray-tracing", "build\visual-studio\ray-tracing\ray-tracing.vcxproj", "{71AC0F50-5DFD-FA91-8661-E95372118EFB}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ray-tracing-pipeline", "build\visual-studio\ray-tracing-pipeline\ray-tracing-pipeline.vcxproj", "{17BA8E32-034E-84DA-6C12-DE8E58C5BECC}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shader-object", "build\visual-studio\shader-object\shader-object.vcxproj", "{25512BFB-1138-EDF2-BA88-5310A64E6659}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shader-toy", "build\visual-studio\shader-toy\shader-toy.vcxproj", "{0FC5DE93-FBEA-A8FA-E430-2EC6D0F5CDC6}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "triangle", "build\visual-studio\triangle\triangle.vcxproj", "{3BB99068-27C9-3C39-9082-A1577CB12BD2}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "generator", "generator", "{F3AB4ED5-5F37-BC99-6848-3F8ED452189A}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "run-generators", "build\visual-studio\run-generators\run-generators.vcxproj", "{E145B2B8-CD13-A6BE-B6A7-16E5A2148223}"
+ ProjectSection(ProjectDependencies) = postProject
+ {CA8A30D1-8FA9-4330-B7F7-84709246D8DC} = {CA8A30D1-8FA9-4330-B7F7-84709246D8DC}
+ {66174227-8541-41FC-A6DF-4764FC66F78E} = {66174227-8541-41FC-A6DF-4764FC66F78E}
+ {7F773DD9-EB8F-2403-B43C-B49C2014B99C} = {7F773DD9-EB8F-2403-B43C-B49C2014B99C}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lz4", "build\visual-studio\lz4\lz4.vcxproj", "{E1EC8075-823E-46E5-BC38-C124CCCDF878}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "miniz", "build\visual-studio\miniz\miniz.vcxproj", "{E76ACB11-4A12-4F0A-BE1E-CE0B8836EB7F}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "slang", "build\visual-studio\slang\slang.vcxproj", "{DB00DA62-0533-4AFD-B59F-A67D5B3A0808}"
+ ProjectSection(ProjectDependencies) = postProject
+ {E145B2B8-CD13-A6BE-B6A7-16E5A2148223} = {E145B2B8-CD13-A6BE-B6A7-16E5A2148223}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "slangc", "build\visual-studio\slangc\slangc.vcxproj", "{D56CBCEB-1EB5-4CA8-AEC4-48EA35ED61C7}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test-tool", "test-tool", "{57B5AA5E-C340-1823-CC51-9B17385C7423}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gfx-unit-test-tool", "build\visual-studio\gfx-unit-test-tool\gfx-unit-test-tool.vcxproj", "{092DAB9F-1DA5-4538-ADD7-1A8D1DBFD519}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "render-test-tool", "build\visual-studio\render-test-tool\render-test-tool.vcxproj", "{61F7EB00-7281-4BF3-9470-7C2EA92620C3}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "slang-reflection-test-tool", "build\visual-studio\slang-reflection-test-tool\slang-reflection-test-tool.vcxproj", "{C5ACCA6E-C04D-4B36-8516-3752B3C13C2F}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "slang-unit-test-tool", "build\visual-studio\slang-unit-test-tool\slang-unit-test-tool.vcxproj", "{0162864E-7651-4B5E-9105-C571105276EA}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|aarch64 = Debug|aarch64
+ Debug|Win32 = Debug|Win32
+ Debug|x64 = Debug|x64
+ Release|aarch64 = Release|aarch64
+ Release|Win32 = Release|Win32
+ Release|x64 = Release|x64
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {0C768A18-1D25-4000-9F37-DA5FE99E3B64}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
+ {0C768A18-1D25-4000-9F37-DA5FE99E3B64}.Debug|aarch64.Build.0 = Debug aarch64|ARM
+ {0C768A18-1D25-4000-9F37-DA5FE99E3B64}.Debug|Win32.ActiveCfg = Debug|Win32
+ {0C768A18-1D25-4000-9F37-DA5FE99E3B64}.Debug|Win32.Build.0 = Debug|Win32
+ {0C768A18-1D25-4000-9F37-DA5FE99E3B64}.Debug|x64.ActiveCfg = Debug|x64
+ {0C768A18-1D25-4000-9F37-DA5FE99E3B64}.Debug|x64.Build.0 = Debug|x64
+ {0C768A18-1D25-4000-9F37-DA5FE99E3B64}.Release|aarch64.ActiveCfg = Release aarch64|ARM
+ {0C768A18-1D25-4000-9F37-DA5FE99E3B64}.Release|aarch64.Build.0 = Release aarch64|ARM
+ {0C768A18-1D25-4000-9F37-DA5FE99E3B64}.Release|Win32.ActiveCfg = Release|Win32
+ {0C768A18-1D25-4000-9F37-DA5FE99E3B64}.Release|Win32.Build.0 = Release|Win32
+ {0C768A18-1D25-4000-9F37-DA5FE99E3B64}.Release|x64.ActiveCfg = Release|x64
+ {0C768A18-1D25-4000-9F37-DA5FE99E3B64}.Release|x64.Build.0 = Release|x64
+ {222F7498-B40C-4F3F-A704-DDEB91A4484A}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
+ {222F7498-B40C-4F3F-A704-DDEB91A4484A}.Debug|aarch64.Build.0 = Debug aarch64|ARM
+ {222F7498-B40C-4F3F-A704-DDEB91A4484A}.Debug|Win32.ActiveCfg = Debug|Win32
+ {222F7498-B40C-4F3F-A704-DDEB91A4484A}.Debug|Win32.Build.0 = Debug|Win32
+ {222F7498-B40C-4F3F-A704-DDEB91A4484A}.Debug|x64.ActiveCfg = Debug|x64
+ {222F7498-B40C-4F3F-A704-DDEB91A4484A}.Debug|x64.Build.0 = Debug|x64
+ {222F7498-B40C-4F3F-A704-DDEB91A4484A}.Release|aarch64.ActiveCfg = Release aarch64|ARM
+ {222F7498-B40C-4F3F-A704-DDEB91A4484A}.Release|aarch64.Build.0 = Release aarch64|ARM
+ {222F7498-B40C-4F3F-A704-DDEB91A4484A}.Release|Win32.ActiveCfg = Release|Win32
+ {222F7498-B40C-4F3F-A704-DDEB91A4484A}.Release|Win32.Build.0 = Release|Win32
+ {222F7498-B40C-4F3F-A704-DDEB91A4484A}.Release|x64.ActiveCfg = Release|x64
+ {222F7498-B40C-4F3F-A704-DDEB91A4484A}.Release|x64.Build.0 = Release|x64
+ {F5ADB74E-02A7-44FB-AA3B-FC02F8AC7A4B}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
+ {F5ADB74E-02A7-44FB-AA3B-FC02F8AC7A4B}.Debug|aarch64.Build.0 = Debug aarch64|ARM
+ {F5ADB74E-02A7-44FB-AA3B-FC02F8AC7A4B}.Debug|Win32.ActiveCfg = Debug|Win32
+ {F5ADB74E-02A7-44FB-AA3B-FC02F8AC7A4B}.Debug|Win32.Build.0 = Debug|Win32
+ {F5ADB74E-02A7-44FB-AA3B-FC02F8AC7A4B}.Debug|x64.ActiveCfg = Debug|x64
+ {F5ADB74E-02A7-44FB-AA3B-FC02F8AC7A4B}.Debug|x64.Build.0 = Debug|x64
+ {F5ADB74E-02A7-44FB-AA3B-FC02F8AC7A4B}.Release|aarch64.ActiveCfg = Release aarch64|ARM
+ {F5ADB74E-02A7-44FB-AA3B-FC02F8AC7A4B}.Release|aarch64.Build.0 = Release aarch64|ARM
+ {F5ADB74E-02A7-44FB-AA3B-FC02F8AC7A4B}.Release|Win32.ActiveCfg = Release|Win32
+ {F5ADB74E-02A7-44FB-AA3B-FC02F8AC7A4B}.Release|Win32.Build.0 = Release|Win32
+ {F5ADB74E-02A7-44FB-AA3B-FC02F8AC7A4B}.Release|x64.ActiveCfg = Release|x64
+ {F5ADB74E-02A7-44FB-AA3B-FC02F8AC7A4B}.Release|x64.Build.0 = Release|x64
+ {3565FE5E-4FA3-11EB-AE93-0242AC130002}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
+ {3565FE5E-4FA3-11EB-AE93-0242AC130002}.Debug|aarch64.Build.0 = Debug aarch64|ARM
+ {3565FE5E-4FA3-11EB-AE93-0242AC130002}.Debug|Win32.ActiveCfg = Debug|Win32
+ {3565FE5E-4FA3-11EB-AE93-0242AC130002}.Debug|Win32.Build.0 = Debug|Win32
+ {3565FE5E-4FA3-11EB-AE93-0242AC130002}.Debug|x64.ActiveCfg = Debug|x64
+ {3565FE5E-4FA3-11EB-AE93-0242AC130002}.Debug|x64.Build.0 = Debug|x64
+ {3565FE5E-4FA3-11EB-AE93-0242AC130002}.Release|aarch64.ActiveCfg = Release aarch64|ARM
+ {3565FE5E-4FA3-11EB-AE93-0242AC130002}.Release|aarch64.Build.0 = Release aarch64|ARM
+ {3565FE5E-4FA3-11EB-AE93-0242AC130002}.Release|Win32.ActiveCfg = Release|Win32
+ {3565FE5E-4FA3-11EB-AE93-0242AC130002}.Release|Win32.Build.0 = Release|Win32
+ {3565FE5E-4FA3-11EB-AE93-0242AC130002}.Release|x64.ActiveCfg = Release|x64
+ {3565FE5E-4FA3-11EB-AE93-0242AC130002}.Release|x64.Build.0 = Release|x64
+ {CA8A30D1-8FA9-4330-B7F7-84709246D8DC}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
+ {CA8A30D1-8FA9-4330-B7F7-84709246D8DC}.Debug|aarch64.Build.0 = Debug aarch64|ARM
+ {CA8A30D1-8FA9-4330-B7F7-84709246D8DC}.Debug|Win32.ActiveCfg = Debug|Win32
+ {CA8A30D1-8FA9-4330-B7F7-84709246D8DC}.Debug|Win32.Build.0 = Debug|Win32
+ {CA8A30D1-8FA9-4330-B7F7-84709246D8DC}.Debug|x64.ActiveCfg = Debug|x64
+ {CA8A30D1-8FA9-4330-B7F7-84709246D8DC}.Debug|x64.Build.0 = Debug|x64
+ {CA8A30D1-8FA9-4330-B7F7-84709246D8DC}.Release|aarch64.ActiveCfg = Release aarch64|ARM
+ {CA8A30D1-8FA9-4330-B7F7-84709246D8DC}.Release|aarch64.Build.0 = Release aarch64|ARM
+ {CA8A30D1-8FA9-4330-B7F7-84709246D8DC}.Release|Win32.ActiveCfg = Release|Win32
+ {CA8A30D1-8FA9-4330-B7F7-84709246D8DC}.Release|Win32.Build.0 = Release|Win32
+ {CA8A30D1-8FA9-4330-B7F7-84709246D8DC}.Release|x64.ActiveCfg = Release|x64
+ {CA8A30D1-8FA9-4330-B7F7-84709246D8DC}.Release|x64.Build.0 = Release|x64
+ {7F773DD9-EB8F-2403-B43C-B49C2014B99C}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
+ {7F773DD9-EB8F-2403-B43C-B49C2014B99C}.Debug|aarch64.Build.0 = Debug aarch64|ARM
+ {7F773DD9-EB8F-2403-B43C-B49C2014B99C}.Debug|Win32.ActiveCfg = Debug|Win32
+ {7F773DD9-EB8F-2403-B43C-B49C2014B99C}.Debug|Win32.Build.0 = Debug|Win32
+ {7F773DD9-EB8F-2403-B43C-B49C2014B99C}.Debug|x64.ActiveCfg = Debug|x64
+ {7F773DD9-EB8F-2403-B43C-B49C2014B99C}.Debug|x64.Build.0 = Debug|x64
+ {7F773DD9-EB8F-2403-B43C-B49C2014B99C}.Release|aarch64.ActiveCfg = Release aarch64|ARM
+ {7F773DD9-EB8F-2403-B43C-B49C2014B99C}.Release|aarch64.Build.0 = Release aarch64|ARM
+ {7F773DD9-EB8F-2403-B43C-B49C2014B99C}.Release|Win32.ActiveCfg = Release|Win32
+ {7F773DD9-EB8F-2403-B43C-B49C2014B99C}.Release|Win32.Build.0 = Release|Win32
+ {7F773DD9-EB8F-2403-B43C-B49C2014B99C}.Release|x64.ActiveCfg = Release|x64
+ {7F773DD9-EB8F-2403-B43C-B49C2014B99C}.Release|x64.Build.0 = Release|x64
+ {66174227-8541-41FC-A6DF-4764FC66F78E}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
+ {66174227-8541-41FC-A6DF-4764FC66F78E}.Debug|aarch64.Build.0 = Debug aarch64|ARM
+ {66174227-8541-41FC-A6DF-4764FC66F78E}.Debug|Win32.ActiveCfg = Debug|Win32
+ {66174227-8541-41FC-A6DF-4764FC66F78E}.Debug|Win32.Build.0 = Debug|Win32
+ {66174227-8541-41FC-A6DF-4764FC66F78E}.Debug|x64.ActiveCfg = Debug|x64
+ {66174227-8541-41FC-A6DF-4764FC66F78E}.Debug|x64.Build.0 = Debug|x64
+ {66174227-8541-41FC-A6DF-4764FC66F78E}.Release|aarch64.ActiveCfg = Release aarch64|ARM
+ {66174227-8541-41FC-A6DF-4764FC66F78E}.Release|aarch64.Build.0 = Release aarch64|ARM
+ {66174227-8541-41FC-A6DF-4764FC66F78E}.Release|Win32.ActiveCfg = Release|Win32
+ {66174227-8541-41FC-A6DF-4764FC66F78E}.Release|Win32.Build.0 = Release|Win32
+ {66174227-8541-41FC-A6DF-4764FC66F78E}.Release|x64.ActiveCfg = Release|x64
+ {66174227-8541-41FC-A6DF-4764FC66F78E}.Release|x64.Build.0 = Release|x64
+ {BE412850-4BB9-429A-877C-BFBC4B34186C}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
+ {BE412850-4BB9-429A-877C-BFBC4B34186C}.Debug|aarch64.Build.0 = Debug aarch64|ARM
+ {BE412850-4BB9-429A-877C-BFBC4B34186C}.Debug|Win32.ActiveCfg = Debug|Win32
+ {BE412850-4BB9-429A-877C-BFBC4B34186C}.Debug|Win32.Build.0 = Debug|Win32
+ {BE412850-4BB9-429A-877C-BFBC4B34186C}.Debug|x64.ActiveCfg = Debug|x64
+ {BE412850-4BB9-429A-877C-BFBC4B34186C}.Debug|x64.Build.0 = Debug|x64
+ {BE412850-4BB9-429A-877C-BFBC4B34186C}.Release|aarch64.ActiveCfg = Release aarch64|ARM
+ {BE412850-4BB9-429A-877C-BFBC4B34186C}.Release|aarch64.Build.0 = Release aarch64|ARM
+ {BE412850-4BB9-429A-877C-BFBC4B34186C}.Release|Win32.ActiveCfg = Release|Win32
+ {BE412850-4BB9-429A-877C-BFBC4B34186C}.Release|Win32.Build.0 = Release|Win32
+ {BE412850-4BB9-429A-877C-BFBC4B34186C}.Release|x64.ActiveCfg = Release|x64
+ {BE412850-4BB9-429A-877C-BFBC4B34186C}.Release|x64.Build.0 = Release|x64
+ {12C1E89D-F5D0-41D3-8E8D-FB3F358F8126}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
+ {12C1E89D-F5D0-41D3-8E8D-FB3F358F8126}.Debug|aarch64.Build.0 = Debug aarch64|ARM
+ {12C1E89D-F5D0-41D3-8E8D-FB3F358F8126}.Debug|Win32.ActiveCfg = Debug|Win32
+ {12C1E89D-F5D0-41D3-8E8D-FB3F358F8126}.Debug|Win32.Build.0 = Debug|Win32
+ {12C1E89D-F5D0-41D3-8E8D-FB3F358F8126}.Debug|x64.ActiveCfg = Debug|x64
+ {12C1E89D-F5D0-41D3-8E8D-FB3F358F8126}.Debug|x64.Build.0 = Debug|x64
+ {12C1E89D-F5D0-41D3-8E8D-FB3F358F8126}.Release|aarch64.ActiveCfg = Release aarch64|ARM
+ {12C1E89D-F5D0-41D3-8E8D-FB3F358F8126}.Release|aarch64.Build.0 = Release aarch64|ARM
+ {12C1E89D-F5D0-41D3-8E8D-FB3F358F8126}.Release|Win32.ActiveCfg = Release|Win32
+ {12C1E89D-F5D0-41D3-8E8D-FB3F358F8126}.Release|Win32.Build.0 = Release|Win32
+ {12C1E89D-F5D0-41D3-8E8D-FB3F358F8126}.Release|x64.ActiveCfg = Release|x64
+ {12C1E89D-F5D0-41D3-8E8D-FB3F358F8126}.Release|x64.Build.0 = Release|x64
+ {F9BE7957-8399-899E-0C49-E714FDDD4B65}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
+ {F9BE7957-8399-899E-0C49-E714FDDD4B65}.Debug|aarch64.Build.0 = Debug aarch64|ARM
+ {F9BE7957-8399-899E-0C49-E714FDDD4B65}.Debug|Win32.ActiveCfg = Debug|Win32
+ {F9BE7957-8399-899E-0C49-E714FDDD4B65}.Debug|Win32.Build.0 = Debug|Win32
+ {F9BE7957-8399-899E-0C49-E714FDDD4B65}.Debug|x64.ActiveCfg = Debug|x64
+ {F9BE7957-8399-899E-0C49-E714FDDD4B65}.Debug|x64.Build.0 = Debug|x64
+ {F9BE7957-8399-899E-0C49-E714FDDD4B65}.Release|aarch64.ActiveCfg = Release aarch64|ARM
+ {F9BE7957-8399-899E-0C49-E714FDDD4B65}.Release|aarch64.Build.0 = Release aarch64|ARM
+ {F9BE7957-8399-899E-0C49-E714FDDD4B65}.Release|Win32.ActiveCfg = Release|Win32
+ {F9BE7957-8399-899E-0C49-E714FDDD4B65}.Release|Win32.Build.0 = Release|Win32
+ {F9BE7957-8399-899E-0C49-E714FDDD4B65}.Release|x64.ActiveCfg = Release|x64
+ {F9BE7957-8399-899E-0C49-E714FDDD4B65}.Release|x64.Build.0 = Release|x64
+ {4B47A364-37C4-96A7-6041-97BB4C1D333B}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
+ {4B47A364-37C4-96A7-6041-97BB4C1D333B}.Debug|aarch64.Build.0 = Debug aarch64|ARM
+ {4B47A364-37C4-96A7-6041-97BB4C1D333B}.Debug|Win32.ActiveCfg = Debug|Win32
+ {4B47A364-37C4-96A7-6041-97BB4C1D333B}.Debug|Win32.Build.0 = Debug|Win32
+ {4B47A364-37C4-96A7-6041-97BB4C1D333B}.Debug|x64.ActiveCfg = Debug|x64
+ {4B47A364-37C4-96A7-6041-97BB4C1D333B}.Debug|x64.Build.0 = Debug|x64
+ {4B47A364-37C4-96A7-6041-97BB4C1D333B}.Release|aarch64.ActiveCfg = Release aarch64|ARM
+ {4B47A364-37C4-96A7-6041-97BB4C1D333B}.Release|aarch64.Build.0 = Release aarch64|ARM
+ {4B47A364-37C4-96A7-6041-97BB4C1D333B}.Release|Win32.ActiveCfg = Release|Win32
+ {4B47A364-37C4-96A7-6041-97BB4C1D333B}.Release|Win32.Build.0 = Release|Win32
+ {4B47A364-37C4-96A7-6041-97BB4C1D333B}.Release|x64.ActiveCfg = Release|x64
+ {4B47A364-37C4-96A7-6041-97BB4C1D333B}.Release|x64.Build.0 = Release|x64
+ {37BED5B5-23FA-D81F-8C0C-F1167867813A}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
+ {37BED5B5-23FA-D81F-8C0C-F1167867813A}.Debug|aarch64.Build.0 = Debug aarch64|ARM
+ {37BED5B5-23FA-D81F-8C0C-F1167867813A}.Debug|Win32.ActiveCfg = Debug|Win32
+ {37BED5B5-23FA-D81F-8C0C-F1167867813A}.Debug|Win32.Build.0 = Debug|Win32
+ {37BED5B5-23FA-D81F-8C0C-F1167867813A}.Debug|x64.ActiveCfg = Debug|x64
+ {37BED5B5-23FA-D81F-8C0C-F1167867813A}.Debug|x64.Build.0 = Debug|x64
+ {37BED5B5-23FA-D81F-8C0C-F1167867813A}.Release|aarch64.ActiveCfg = Release aarch64|ARM
+ {37BED5B5-23FA-D81F-8C0C-F1167867813A}.Release|aarch64.Build.0 = Release aarch64|ARM
+ {37BED5B5-23FA-D81F-8C0C-F1167867813A}.Release|Win32.ActiveCfg = Release|Win32
+ {37BED5B5-23FA-D81F-8C0C-F1167867813A}.Release|Win32.Build.0 = Release|Win32
+ {37BED5B5-23FA-D81F-8C0C-F1167867813A}.Release|x64.ActiveCfg = Release|x64
+ {37BED5B5-23FA-D81F-8C0C-F1167867813A}.Release|x64.Build.0 = Release|x64
+ {57C81DD3-4304-213D-AC16-39349871C957}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
+ {57C81DD3-4304-213D-AC16-39349871C957}.Debug|aarch64.Build.0 = Debug aarch64|ARM
+ {57C81DD3-4304-213D-AC16-39349871C957}.Debug|Win32.ActiveCfg = Debug|Win32
+ {57C81DD3-4304-213D-AC16-39349871C957}.Debug|Win32.Build.0 = Debug|Win32
+ {57C81DD3-4304-213D-AC16-39349871C957}.Debug|x64.ActiveCfg = Debug|x64
+ {57C81DD3-4304-213D-AC16-39349871C957}.Debug|x64.Build.0 = Debug|x64
+ {57C81DD3-4304-213D-AC16-39349871C957}.Release|aarch64.ActiveCfg = Release aarch64|ARM
+ {57C81DD3-4304-213D-AC16-39349871C957}.Release|aarch64.Build.0 = Release aarch64|ARM
+ {57C81DD3-4304-213D-AC16-39349871C957}.Release|Win32.ActiveCfg = Release|Win32
+ {57C81DD3-4304-213D-AC16-39349871C957}.Release|Win32.Build.0 = Release|Win32
+ {57C81DD3-4304-213D-AC16-39349871C957}.Release|x64.ActiveCfg = Release|x64
+ {57C81DD3-4304-213D-AC16-39349871C957}.Release|x64.Build.0 = Release|x64
+ {010BE414-ED5B-CF56-16C0-BD18027062C0}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
+ {010BE414-ED5B-CF56-16C0-BD18027062C0}.Debug|aarch64.Build.0 = Debug aarch64|ARM
+ {010BE414-ED5B-CF56-16C0-BD18027062C0}.Debug|Win32.ActiveCfg = Debug|Win32
+ {010BE414-ED5B-CF56-16C0-BD18027062C0}.Debug|Win32.Build.0 = Debug|Win32
+ {010BE414-ED5B-CF56-16C0-BD18027062C0}.Debug|x64.ActiveCfg = Debug|x64
+ {010BE414-ED5B-CF56-16C0-BD18027062C0}.Debug|x64.Build.0 = Debug|x64
+ {010BE414-ED5B-CF56-16C0-BD18027062C0}.Release|aarch64.ActiveCfg = Release aarch64|ARM
+ {010BE414-ED5B-CF56-16C0-BD18027062C0}.Release|aarch64.Build.0 = Release aarch64|ARM
+ {010BE414-ED5B-CF56-16C0-BD18027062C0}.Release|Win32.ActiveCfg = Release|Win32
+ {010BE414-ED5B-CF56-16C0-BD18027062C0}.Release|Win32.Build.0 = Release|Win32
+ {010BE414-ED5B-CF56-16C0-BD18027062C0}.Release|x64.ActiveCfg = Release|x64
+ {010BE414-ED5B-CF56-16C0-BD18027062C0}.Release|x64.Build.0 = Release|x64
+ {2F8724C6-1BC3-2730-84D5-3F277030D04A}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
+ {2F8724C6-1BC3-2730-84D5-3F277030D04A}.Debug|aarch64.Build.0 = Debug aarch64|ARM
+ {2F8724C6-1BC3-2730-84D5-3F277030D04A}.Debug|Win32.ActiveCfg = Debug|Win32
+ {2F8724C6-1BC3-2730-84D5-3F277030D04A}.Debug|Win32.Build.0 = Debug|Win32
+ {2F8724C6-1BC3-2730-84D5-3F277030D04A}.Debug|x64.ActiveCfg = Debug|x64
+ {2F8724C6-1BC3-2730-84D5-3F277030D04A}.Debug|x64.Build.0 = Debug|x64
+ {2F8724C6-1BC3-2730-84D5-3F277030D04A}.Release|aarch64.ActiveCfg = Release aarch64|ARM
+ {2F8724C6-1BC3-2730-84D5-3F277030D04A}.Release|aarch64.Build.0 = Release aarch64|ARM
+ {2F8724C6-1BC3-2730-84D5-3F277030D04A}.Release|Win32.ActiveCfg = Release|Win32
+ {2F8724C6-1BC3-2730-84D5-3F277030D04A}.Release|Win32.Build.0 = Release|Win32
+ {2F8724C6-1BC3-2730-84D5-3F277030D04A}.Release|x64.ActiveCfg = Release|x64
+ {2F8724C6-1BC3-2730-84D5-3F277030D04A}.Release|x64.Build.0 = Release|x64
+ {71AC0F50-5DFD-FA91-8661-E95372118EFB}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
+ {71AC0F50-5DFD-FA91-8661-E95372118EFB}.Debug|aarch64.Build.0 = Debug aarch64|ARM
+ {71AC0F50-5DFD-FA91-8661-E95372118EFB}.Debug|Win32.ActiveCfg = Debug|Win32
+ {71AC0F50-5DFD-FA91-8661-E95372118EFB}.Debug|Win32.Build.0 = Debug|Win32
+ {71AC0F50-5DFD-FA91-8661-E95372118EFB}.Debug|x64.ActiveCfg = Debug|x64
+ {71AC0F50-5DFD-FA91-8661-E95372118EFB}.Debug|x64.Build.0 = Debug|x64
+ {71AC0F50-5DFD-FA91-8661-E95372118EFB}.Release|aarch64.ActiveCfg = Release aarch64|ARM
+ {71AC0F50-5DFD-FA91-8661-E95372118EFB}.Release|aarch64.Build.0 = Release aarch64|ARM
+ {71AC0F50-5DFD-FA91-8661-E95372118EFB}.Release|Win32.ActiveCfg = Release|Win32
+ {71AC0F50-5DFD-FA91-8661-E95372118EFB}.Release|Win32.Build.0 = Release|Win32
+ {71AC0F50-5DFD-FA91-8661-E95372118EFB}.Release|x64.ActiveCfg = Release|x64
+ {71AC0F50-5DFD-FA91-8661-E95372118EFB}.Release|x64.Build.0 = Release|x64
+ {17BA8E32-034E-84DA-6C12-DE8E58C5BECC}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
+ {17BA8E32-034E-84DA-6C12-DE8E58C5BECC}.Debug|aarch64.Build.0 = Debug aarch64|ARM
+ {17BA8E32-034E-84DA-6C12-DE8E58C5BECC}.Debug|Win32.ActiveCfg = Debug|Win32
+ {17BA8E32-034E-84DA-6C12-DE8E58C5BECC}.Debug|Win32.Build.0 = Debug|Win32
+ {17BA8E32-034E-84DA-6C12-DE8E58C5BECC}.Debug|x64.ActiveCfg = Debug|x64
+ {17BA8E32-034E-84DA-6C12-DE8E58C5BECC}.Debug|x64.Build.0 = Debug|x64
+ {17BA8E32-034E-84DA-6C12-DE8E58C5BECC}.Release|aarch64.ActiveCfg = Release aarch64|ARM
+ {17BA8E32-034E-84DA-6C12-DE8E58C5BECC}.Release|aarch64.Build.0 = Release aarch64|ARM
+ {17BA8E32-034E-84DA-6C12-DE8E58C5BECC}.Release|Win32.ActiveCfg = Release|Win32
+ {17BA8E32-034E-84DA-6C12-DE8E58C5BECC}.Release|Win32.Build.0 = Release|Win32
+ {17BA8E32-034E-84DA-6C12-DE8E58C5BECC}.Release|x64.ActiveCfg = Release|x64
+ {17BA8E32-034E-84DA-6C12-DE8E58C5BECC}.Release|x64.Build.0 = Release|x64
+ {25512BFB-1138-EDF2-BA88-5310A64E6659}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
+ {25512BFB-1138-EDF2-BA88-5310A64E6659}.Debug|aarch64.Build.0 = Debug aarch64|ARM
+ {25512BFB-1138-EDF2-BA88-5310A64E6659}.Debug|Win32.ActiveCfg = Debug|Win32
+ {25512BFB-1138-EDF2-BA88-5310A64E6659}.Debug|Win32.Build.0 = Debug|Win32
+ {25512BFB-1138-EDF2-BA88-5310A64E6659}.Debug|x64.ActiveCfg = Debug|x64
+ {25512BFB-1138-EDF2-BA88-5310A64E6659}.Debug|x64.Build.0 = Debug|x64
+ {25512BFB-1138-EDF2-BA88-5310A64E6659}.Release|aarch64.ActiveCfg = Release aarch64|ARM
+ {25512BFB-1138-EDF2-BA88-5310A64E6659}.Release|aarch64.Build.0 = Release aarch64|ARM
+ {25512BFB-1138-EDF2-BA88-5310A64E6659}.Release|Win32.ActiveCfg = Release|Win32
+ {25512BFB-1138-EDF2-BA88-5310A64E6659}.Release|Win32.Build.0 = Release|Win32
+ {25512BFB-1138-EDF2-BA88-5310A64E6659}.Release|x64.ActiveCfg = Release|x64
+ {25512BFB-1138-EDF2-BA88-5310A64E6659}.Release|x64.Build.0 = Release|x64
+ {0FC5DE93-FBEA-A8FA-E430-2EC6D0F5CDC6}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
+ {0FC5DE93-FBEA-A8FA-E430-2EC6D0F5CDC6}.Debug|aarch64.Build.0 = Debug aarch64|ARM
+ {0FC5DE93-FBEA-A8FA-E430-2EC6D0F5CDC6}.Debug|Win32.ActiveCfg = Debug|Win32
+ {0FC5DE93-FBEA-A8FA-E430-2EC6D0F5CDC6}.Debug|Win32.Build.0 = Debug|Win32
+ {0FC5DE93-FBEA-A8FA-E430-2EC6D0F5CDC6}.Debug|x64.ActiveCfg = Debug|x64
+ {0FC5DE93-FBEA-A8FA-E430-2EC6D0F5CDC6}.Debug|x64.Build.0 = Debug|x64
+ {0FC5DE93-FBEA-A8FA-E430-2EC6D0F5CDC6}.Release|aarch64.ActiveCfg = Release aarch64|ARM
+ {0FC5DE93-FBEA-A8FA-E430-2EC6D0F5CDC6}.Release|aarch64.Build.0 = Release aarch64|ARM
+ {0FC5DE93-FBEA-A8FA-E430-2EC6D0F5CDC6}.Release|Win32.ActiveCfg = Release|Win32
+ {0FC5DE93-FBEA-A8FA-E430-2EC6D0F5CDC6}.Release|Win32.Build.0 = Release|Win32
+ {0FC5DE93-FBEA-A8FA-E430-2EC6D0F5CDC6}.Release|x64.ActiveCfg = Release|x64
+ {0FC5DE93-FBEA-A8FA-E430-2EC6D0F5CDC6}.Release|x64.Build.0 = Release|x64
+ {3BB99068-27C9-3C39-9082-A1577CB12BD2}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
+ {3BB99068-27C9-3C39-9082-A1577CB12BD2}.Debug|aarch64.Build.0 = Debug aarch64|ARM
+ {3BB99068-27C9-3C39-9082-A1577CB12BD2}.Debug|Win32.ActiveCfg = Debug|Win32
+ {3BB99068-27C9-3C39-9082-A1577CB12BD2}.Debug|Win32.Build.0 = Debug|Win32
+ {3BB99068-27C9-3C39-9082-A1577CB12BD2}.Debug|x64.ActiveCfg = Debug|x64
+ {3BB99068-27C9-3C39-9082-A1577CB12BD2}.Debug|x64.Build.0 = Debug|x64
+ {3BB99068-27C9-3C39-9082-A1577CB12BD2}.Release|aarch64.ActiveCfg = Release aarch64|ARM
+ {3BB99068-27C9-3C39-9082-A1577CB12BD2}.Release|aarch64.Build.0 = Release aarch64|ARM
+ {3BB99068-27C9-3C39-9082-A1577CB12BD2}.Release|Win32.ActiveCfg = Release|Win32
+ {3BB99068-27C9-3C39-9082-A1577CB12BD2}.Release|Win32.Build.0 = Release|Win32
+ {3BB99068-27C9-3C39-9082-A1577CB12BD2}.Release|x64.ActiveCfg = Release|x64
+ {3BB99068-27C9-3C39-9082-A1577CB12BD2}.Release|x64.Build.0 = Release|x64
+ {E145B2B8-CD13-A6BE-B6A7-16E5A2148223}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
+ {E145B2B8-CD13-A6BE-B6A7-16E5A2148223}.Debug|aarch64.Build.0 = Debug aarch64|ARM
+ {E145B2B8-CD13-A6BE-B6A7-16E5A2148223}.Debug|Win32.ActiveCfg = Debug|Win32
+ {E145B2B8-CD13-A6BE-B6A7-16E5A2148223}.Debug|Win32.Build.0 = Debug|Win32
+ {E145B2B8-CD13-A6BE-B6A7-16E5A2148223}.Debug|x64.ActiveCfg = Debug|x64
+ {E145B2B8-CD13-A6BE-B6A7-16E5A2148223}.Debug|x64.Build.0 = Debug|x64
+ {E145B2B8-CD13-A6BE-B6A7-16E5A2148223}.Release|aarch64.ActiveCfg = Release aarch64|ARM
+ {E145B2B8-CD13-A6BE-B6A7-16E5A2148223}.Release|aarch64.Build.0 = Release aarch64|ARM
+ {E145B2B8-CD13-A6BE-B6A7-16E5A2148223}.Release|Win32.ActiveCfg = Release|Win32
+ {E145B2B8-CD13-A6BE-B6A7-16E5A2148223}.Release|Win32.Build.0 = Release|Win32
+ {E145B2B8-CD13-A6BE-B6A7-16E5A2148223}.Release|x64.ActiveCfg = Release|x64
+ {E145B2B8-CD13-A6BE-B6A7-16E5A2148223}.Release|x64.Build.0 = Release|x64
+ {E1EC8075-823E-46E5-BC38-C124CCCDF878}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
+ {E1EC8075-823E-46E5-BC38-C124CCCDF878}.Debug|aarch64.Build.0 = Debug aarch64|ARM
+ {E1EC8075-823E-46E5-BC38-C124CCCDF878}.Debug|Win32.ActiveCfg = Debug|Win32
+ {E1EC8075-823E-46E5-BC38-C124CCCDF878}.Debug|Win32.Build.0 = Debug|Win32
+ {E1EC8075-823E-46E5-BC38-C124CCCDF878}.Debug|x64.ActiveCfg = Debug|x64
+ {E1EC8075-823E-46E5-BC38-C124CCCDF878}.Debug|x64.Build.0 = Debug|x64
+ {E1EC8075-823E-46E5-BC38-C124CCCDF878}.Release|aarch64.ActiveCfg = Release aarch64|ARM
+ {E1EC8075-823E-46E5-BC38-C124CCCDF878}.Release|aarch64.Build.0 = Release aarch64|ARM
+ {E1EC8075-823E-46E5-BC38-C124CCCDF878}.Release|Win32.ActiveCfg = Release|Win32
+ {E1EC8075-823E-46E5-BC38-C124CCCDF878}.Release|Win32.Build.0 = Release|Win32
+ {E1EC8075-823E-46E5-BC38-C124CCCDF878}.Release|x64.ActiveCfg = Release|x64
+ {E1EC8075-823E-46E5-BC38-C124CCCDF878}.Release|x64.Build.0 = Release|x64
+ {E76ACB11-4A12-4F0A-BE1E-CE0B8836EB7F}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
+ {E76ACB11-4A12-4F0A-BE1E-CE0B8836EB7F}.Debug|aarch64.Build.0 = Debug aarch64|ARM
+ {E76ACB11-4A12-4F0A-BE1E-CE0B8836EB7F}.Debug|Win32.ActiveCfg = Debug|Win32
+ {E76ACB11-4A12-4F0A-BE1E-CE0B8836EB7F}.Debug|Win32.Build.0 = Debug|Win32
+ {E76ACB11-4A12-4F0A-BE1E-CE0B8836EB7F}.Debug|x64.ActiveCfg = Debug|x64
+ {E76ACB11-4A12-4F0A-BE1E-CE0B8836EB7F}.Debug|x64.Build.0 = Debug|x64
+ {E76ACB11-4A12-4F0A-BE1E-CE0B8836EB7F}.Release|aarch64.ActiveCfg = Release aarch64|ARM
+ {E76ACB11-4A12-4F0A-BE1E-CE0B8836EB7F}.Release|aarch64.Build.0 = Release aarch64|ARM
+ {E76ACB11-4A12-4F0A-BE1E-CE0B8836EB7F}.Release|Win32.ActiveCfg = Release|Win32
+ {E76ACB11-4A12-4F0A-BE1E-CE0B8836EB7F}.Release|Win32.Build.0 = Release|Win32
+ {E76ACB11-4A12-4F0A-BE1E-CE0B8836EB7F}.Release|x64.ActiveCfg = Release|x64
+ {E76ACB11-4A12-4F0A-BE1E-CE0B8836EB7F}.Release|x64.Build.0 = Release|x64
+ {DB00DA62-0533-4AFD-B59F-A67D5B3A0808}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
+ {DB00DA62-0533-4AFD-B59F-A67D5B3A0808}.Debug|aarch64.Build.0 = Debug aarch64|ARM
+ {DB00DA62-0533-4AFD-B59F-A67D5B3A0808}.Debug|Win32.ActiveCfg = Debug|Win32
+ {DB00DA62-0533-4AFD-B59F-A67D5B3A0808}.Debug|Win32.Build.0 = Debug|Win32
+ {DB00DA62-0533-4AFD-B59F-A67D5B3A0808}.Debug|x64.ActiveCfg = Debug|x64
+ {DB00DA62-0533-4AFD-B59F-A67D5B3A0808}.Debug|x64.Build.0 = Debug|x64
+ {DB00DA62-0533-4AFD-B59F-A67D5B3A0808}.Release|aarch64.ActiveCfg = Release aarch64|ARM
+ {DB00DA62-0533-4AFD-B59F-A67D5B3A0808}.Release|aarch64.Build.0 = Release aarch64|ARM
+ {DB00DA62-0533-4AFD-B59F-A67D5B3A0808}.Release|Win32.ActiveCfg = Release|Win32
+ {DB00DA62-0533-4AFD-B59F-A67D5B3A0808}.Release|Win32.Build.0 = Release|Win32
+ {DB00DA62-0533-4AFD-B59F-A67D5B3A0808}.Release|x64.ActiveCfg = Release|x64
+ {DB00DA62-0533-4AFD-B59F-A67D5B3A0808}.Release|x64.Build.0 = Release|x64
+ {D56CBCEB-1EB5-4CA8-AEC4-48EA35ED61C7}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
+ {D56CBCEB-1EB5-4CA8-AEC4-48EA35ED61C7}.Debug|aarch64.Build.0 = Debug aarch64|ARM
+ {D56CBCEB-1EB5-4CA8-AEC4-48EA35ED61C7}.Debug|Win32.ActiveCfg = Debug|Win32
+ {D56CBCEB-1EB5-4CA8-AEC4-48EA35ED61C7}.Debug|Win32.Build.0 = Debug|Win32
+ {D56CBCEB-1EB5-4CA8-AEC4-48EA35ED61C7}.Debug|x64.ActiveCfg = Debug|x64
+ {D56CBCEB-1EB5-4CA8-AEC4-48EA35ED61C7}.Debug|x64.Build.0 = Debug|x64
+ {D56CBCEB-1EB5-4CA8-AEC4-48EA35ED61C7}.Release|aarch64.ActiveCfg = Release aarch64|ARM
+ {D56CBCEB-1EB5-4CA8-AEC4-48EA35ED61C7}.Release|aarch64.Build.0 = Release aarch64|ARM
+ {D56CBCEB-1EB5-4CA8-AEC4-48EA35ED61C7}.Release|Win32.ActiveCfg = Release|Win32
+ {D56CBCEB-1EB5-4CA8-AEC4-48EA35ED61C7}.Release|Win32.Build.0 = Release|Win32
+ {D56CBCEB-1EB5-4CA8-AEC4-48EA35ED61C7}.Release|x64.ActiveCfg = Release|x64
+ {D56CBCEB-1EB5-4CA8-AEC4-48EA35ED61C7}.Release|x64.Build.0 = Release|x64
+ {092DAB9F-1DA5-4538-ADD7-1A8D1DBFD519}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
+ {092DAB9F-1DA5-4538-ADD7-1A8D1DBFD519}.Debug|aarch64.Build.0 = Debug aarch64|ARM
+ {092DAB9F-1DA5-4538-ADD7-1A8D1DBFD519}.Debug|Win32.ActiveCfg = Debug|Win32
+ {092DAB9F-1DA5-4538-ADD7-1A8D1DBFD519}.Debug|Win32.Build.0 = Debug|Win32
+ {092DAB9F-1DA5-4538-ADD7-1A8D1DBFD519}.Debug|x64.ActiveCfg = Debug|x64
+ {092DAB9F-1DA5-4538-ADD7-1A8D1DBFD519}.Debug|x64.Build.0 = Debug|x64
+ {092DAB9F-1DA5-4538-ADD7-1A8D1DBFD519}.Release|aarch64.ActiveCfg = Release aarch64|ARM
+ {092DAB9F-1DA5-4538-ADD7-1A8D1DBFD519}.Release|aarch64.Build.0 = Release aarch64|ARM
+ {092DAB9F-1DA5-4538-ADD7-1A8D1DBFD519}.Release|Win32.ActiveCfg = Release|Win32
+ {092DAB9F-1DA5-4538-ADD7-1A8D1DBFD519}.Release|Win32.Build.0 = Release|Win32
+ {092DAB9F-1DA5-4538-ADD7-1A8D1DBFD519}.Release|x64.ActiveCfg = Release|x64
+ {092DAB9F-1DA5-4538-ADD7-1A8D1DBFD519}.Release|x64.Build.0 = Release|x64
+ {61F7EB00-7281-4BF3-9470-7C2EA92620C3}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
+ {61F7EB00-7281-4BF3-9470-7C2EA92620C3}.Debug|aarch64.Build.0 = Debug aarch64|ARM
+ {61F7EB00-7281-4BF3-9470-7C2EA92620C3}.Debug|Win32.ActiveCfg = Debug|Win32
+ {61F7EB00-7281-4BF3-9470-7C2EA92620C3}.Debug|Win32.Build.0 = Debug|Win32
+ {61F7EB00-7281-4BF3-9470-7C2EA92620C3}.Debug|x64.ActiveCfg = Debug|x64
+ {61F7EB00-7281-4BF3-9470-7C2EA92620C3}.Debug|x64.Build.0 = Debug|x64
+ {61F7EB00-7281-4BF3-9470-7C2EA92620C3}.Release|aarch64.ActiveCfg = Release aarch64|ARM
+ {61F7EB00-7281-4BF3-9470-7C2EA92620C3}.Release|aarch64.Build.0 = Release aarch64|ARM
+ {61F7EB00-7281-4BF3-9470-7C2EA92620C3}.Release|Win32.ActiveCfg = Release|Win32
+ {61F7EB00-7281-4BF3-9470-7C2EA92620C3}.Release|Win32.Build.0 = Release|Win32
+ {61F7EB00-7281-4BF3-9470-7C2EA92620C3}.Release|x64.ActiveCfg = Release|x64
+ {61F7EB00-7281-4BF3-9470-7C2EA92620C3}.Release|x64.Build.0 = Release|x64
+ {C5ACCA6E-C04D-4B36-8516-3752B3C13C2F}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
+ {C5ACCA6E-C04D-4B36-8516-3752B3C13C2F}.Debug|aarch64.Build.0 = Debug aarch64|ARM
+ {C5ACCA6E-C04D-4B36-8516-3752B3C13C2F}.Debug|Win32.ActiveCfg = Debug|Win32
+ {C5ACCA6E-C04D-4B36-8516-3752B3C13C2F}.Debug|Win32.Build.0 = Debug|Win32
+ {C5ACCA6E-C04D-4B36-8516-3752B3C13C2F}.Debug|x64.ActiveCfg = Debug|x64
+ {C5ACCA6E-C04D-4B36-8516-3752B3C13C2F}.Debug|x64.Build.0 = Debug|x64
+ {C5ACCA6E-C04D-4B36-8516-3752B3C13C2F}.Release|aarch64.ActiveCfg = Release aarch64|ARM
+ {C5ACCA6E-C04D-4B36-8516-3752B3C13C2F}.Release|aarch64.Build.0 = Release aarch64|ARM
+ {C5ACCA6E-C04D-4B36-8516-3752B3C13C2F}.Release|Win32.ActiveCfg = Release|Win32
+ {C5ACCA6E-C04D-4B36-8516-3752B3C13C2F}.Release|Win32.Build.0 = Release|Win32
+ {C5ACCA6E-C04D-4B36-8516-3752B3C13C2F}.Release|x64.ActiveCfg = Release|x64
+ {C5ACCA6E-C04D-4B36-8516-3752B3C13C2F}.Release|x64.Build.0 = Release|x64
+ {0162864E-7651-4B5E-9105-C571105276EA}.Debug|aarch64.ActiveCfg = Debug aarch64|ARM
+ {0162864E-7651-4B5E-9105-C571105276EA}.Debug|aarch64.Build.0 = Debug aarch64|ARM
+ {0162864E-7651-4B5E-9105-C571105276EA}.Debug|Win32.ActiveCfg = Debug|Win32
+ {0162864E-7651-4B5E-9105-C571105276EA}.Debug|Win32.Build.0 = Debug|Win32
+ {0162864E-7651-4B5E-9105-C571105276EA}.Debug|x64.ActiveCfg = Debug|x64
+ {0162864E-7651-4B5E-9105-C571105276EA}.Debug|x64.Build.0 = Debug|x64
+ {0162864E-7651-4B5E-9105-C571105276EA}.Release|aarch64.ActiveCfg = Release aarch64|ARM
+ {0162864E-7651-4B5E-9105-C571105276EA}.Release|aarch64.Build.0 = Release aarch64|ARM
+ {0162864E-7651-4B5E-9105-C571105276EA}.Release|Win32.ActiveCfg = Release|Win32
+ {0162864E-7651-4B5E-9105-C571105276EA}.Release|Win32.Build.0 = Release|Win32
+ {0162864E-7651-4B5E-9105-C571105276EA}.Release|x64.ActiveCfg = Release|x64
+ {0162864E-7651-4B5E-9105-C571105276EA}.Release|x64.Build.0 = Release|x64
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(NestedProjects) = preSolution
+ {0C768A18-1D25-4000-9F37-DA5FE99E3B64} = {FD47AE19-69FD-260F-F2F1-20E65EA61D13}
+ {222F7498-B40C-4F3F-A704-DDEB91A4484A} = {FD47AE19-69FD-260F-F2F1-20E65EA61D13}
+ {F5ADB74E-02A7-44FB-AA3B-FC02F8AC7A4B} = {FD47AE19-69FD-260F-F2F1-20E65EA61D13}
+ {3565FE5E-4FA3-11EB-AE93-0242AC130002} = {FD47AE19-69FD-260F-F2F1-20E65EA61D13}
+ {CA8A30D1-8FA9-4330-B7F7-84709246D8DC} = {FD47AE19-69FD-260F-F2F1-20E65EA61D13}
+ {7F773DD9-EB8F-2403-B43C-B49C2014B99C} = {FD47AE19-69FD-260F-F2F1-20E65EA61D13}
+ {66174227-8541-41FC-A6DF-4764FC66F78E} = {FD47AE19-69FD-260F-F2F1-20E65EA61D13}
+ {BE412850-4BB9-429A-877C-BFBC4B34186C} = {FD47AE19-69FD-260F-F2F1-20E65EA61D13}
+ {4B47A364-37C4-96A7-6041-97BB4C1D333B} = {EB5FC2C6-D72D-B6CC-C0C1-26F3AC2E9231}
+ {37BED5B5-23FA-D81F-8C0C-F1167867813A} = {EB5FC2C6-D72D-B6CC-C0C1-26F3AC2E9231}
+ {57C81DD3-4304-213D-AC16-39349871C957} = {EB5FC2C6-D72D-B6CC-C0C1-26F3AC2E9231}
+ {010BE414-ED5B-CF56-16C0-BD18027062C0} = {EB5FC2C6-D72D-B6CC-C0C1-26F3AC2E9231}
+ {2F8724C6-1BC3-2730-84D5-3F277030D04A} = {EB5FC2C6-D72D-B6CC-C0C1-26F3AC2E9231}
+ {71AC0F50-5DFD-FA91-8661-E95372118EFB} = {EB5FC2C6-D72D-B6CC-C0C1-26F3AC2E9231}
+ {17BA8E32-034E-84DA-6C12-DE8E58C5BECC} = {EB5FC2C6-D72D-B6CC-C0C1-26F3AC2E9231}
+ {25512BFB-1138-EDF2-BA88-5310A64E6659} = {EB5FC2C6-D72D-B6CC-C0C1-26F3AC2E9231}
+ {0FC5DE93-FBEA-A8FA-E430-2EC6D0F5CDC6} = {EB5FC2C6-D72D-B6CC-C0C1-26F3AC2E9231}
+ {3BB99068-27C9-3C39-9082-A1577CB12BD2} = {EB5FC2C6-D72D-B6CC-C0C1-26F3AC2E9231}
+ {E145B2B8-CD13-A6BE-B6A7-16E5A2148223} = {F3AB4ED5-5F37-BC99-6848-3F8ED452189A}
+ {092DAB9F-1DA5-4538-ADD7-1A8D1DBFD519} = {57B5AA5E-C340-1823-CC51-9B17385C7423}
+ {61F7EB00-7281-4BF3-9470-7C2EA92620C3} = {57B5AA5E-C340-1823-CC51-9B17385C7423}
+ {C5ACCA6E-C04D-4B36-8516-3752B3C13C2F} = {57B5AA5E-C340-1823-CC51-9B17385C7423}
+ {0162864E-7651-4B5E-9105-C571105276EA} = {57B5AA5E-C340-1823-CC51-9B17385C7423}
+ EndGlobalSection
+EndGlobal
diff --git a/source/core/unix/slang-unix-process-util.cpp b/source/core/unix/slang-unix-process-util.cpp
index 24107fab3..af49eec37 100644
--- a/source/core/unix/slang-unix-process-util.cpp
+++ b/source/core/unix/slang-unix-process-util.cpp
@@ -146,9 +146,9 @@ namespace Slang {
return SLANG_FAIL;
}
- // Set a timeout of twenty seconds;
+ // Set a timeout of 100 seconds;
// we really shouldn't wait too long...
- int pollTimeout = 20000;
+ int pollTimeout = 100000;
int pollResult = poll(pollInfos, pollInfoCount, pollTimeout);
if (pollResult <= 0)
{
diff --git a/source/slang/slang-check.cpp b/source/slang/slang-check.cpp
index 74e30cf8d..e52baaa84 100644
--- a/source/slang/slang-check.cpp
+++ b/source/slang/slang-check.cpp
@@ -93,10 +93,10 @@ namespace Slang
if (type == PassThroughMode::GenericCCpp)
{
// try testing for availability on all C/C++ compilers
- getOrLoadDownstreamCompiler(PassThroughMode::Clang, sink);
- getOrLoadDownstreamCompiler(PassThroughMode::Gcc, sink);
- getOrLoadDownstreamCompiler(PassThroughMode::VisualStudio, sink);
- getOrLoadDownstreamCompiler(PassThroughMode::LLVM, sink);
+ getOrLoadDownstreamCompiler(PassThroughMode::Clang, nullptr);
+ getOrLoadDownstreamCompiler(PassThroughMode::Gcc, nullptr);
+ getOrLoadDownstreamCompiler(PassThroughMode::VisualStudio, nullptr);
+ getOrLoadDownstreamCompiler(PassThroughMode::LLVM, nullptr);
}
// Mark that we have tried to load it
diff --git a/tests/compute/transcendental-double.slang b/tests/compute/transcendental-double.slang
index 19ea417d8..4e84ea4ef 100644
--- a/tests/compute/transcendental-double.slang
+++ b/tests/compute/transcendental-double.slang
@@ -8,7 +8,7 @@
//DISABLE_TEST(compute,vulkan):COMPARE_COMPUTE:-vk -output-using-type -shaderobj
//TEST_INPUT:ubuffer(data=[0 0 0 0 0 0 0 0], stride=4):out,name=outputBuffer
-RWStructuredBuffer<float> outputBuffer : register(u0);
+RWStructuredBuffer<float> outputBuffer;
float quantize(double value)
{
diff --git a/tests/compute/transcendental.slang b/tests/compute/transcendental.slang
index cf8548939..9281435d3 100644
--- a/tests/compute/transcendental.slang
+++ b/tests/compute/transcendental.slang
@@ -4,7 +4,7 @@
//TEST(compute,vulkan):COMPARE_COMPUTE:-vk -output-using-type -shaderobj
//TEST_INPUT:ubuffer(data=[0 0 0 0 0 0 0 0], stride=4):out,name=outputBuffer
-RWStructuredBuffer<float> outputBuffer : register(u0);
+RWStructuredBuffer<float> outputBuffer;
float quantize(float value)
{
diff --git a/tools/slang-test/options.cpp b/tools/slang-test/options.cpp
index fa7f332b0..d24ea83e2 100644
--- a/tools/slang-test/options.cpp
+++ b/tools/slang-test/options.cpp
@@ -125,9 +125,9 @@ static bool _isSubCommand(const char* arg)
}
optionsOut->binDir = *argCursor++;
}
- else if (strcmp(arg, "-useexes") == 0)
+ else if (strcmp(arg, "-use-test-proxy") == 0)
{
- optionsOut->useExes = true;
+ optionsOut->defaultSpawnType = SpawnType::UseProxy;
}
else if (strcmp(arg, "-v") == 0)
{
diff --git a/tools/slang-test/options.h b/tools/slang-test/options.h
index eacbc7acb..4a40cba9a 100644
--- a/tools/slang-test/options.h
+++ b/tools/slang-test/options.h
@@ -36,6 +36,13 @@ protected:
Slang::Dictionary<Slang::String, Slang::RefPtr<TestCategory> > m_categoryMap;
};
+enum class SpawnType
+{
+ UseExe,
+ UseSharedLibrary,
+ UseProxy,
+};
+
struct Options
{
char const* appName = "slang-test";
@@ -69,9 +76,13 @@ struct Options
// integration builds.
bool dumpOutputOnFailure = false;
- // If set, will force using of executables (not shared library) for tests
- bool useExes = false;
-
+ // Set the default spawn type to use
+ // Set to SpawnType::UseProxy, if isolation of test execution is desired.
+ // Having tests isolated, slows down testing considerably, so using UseSharedLibrary is the most
+ // desirable default usually.
+ SpawnType defaultSpawnType = SpawnType::UseSharedLibrary;
+ //SpawnType defaultSpawnType = SpawnType::UseProxy;
+
// kind of output to generate
TestOutputMode outputMode = TestOutputMode::Default;
diff --git a/tools/slang-test/slang-test-main.cpp b/tools/slang-test/slang-test-main.cpp
index 8f7c7e35b..49ee7d688 100644
--- a/tools/slang-test/slang-test-main.cpp
+++ b/tools/slang-test/slang-test-main.cpp
@@ -97,11 +97,6 @@ struct FileTestList
List<TestDetails> tests;
};
-enum class SpawnType
-{
- UseExe,
- UseSharedLibrary,
-};
struct TestInput
{
@@ -531,6 +526,8 @@ static SlangResult _gatherTestsForFile(
return SLANG_OK;
}
+
+
Result spawnAndWaitExe(TestContext* context, const String& testPath, const CommandLine& cmdLine, ExecuteResult& outRes)
{
const auto& options = context->options;
@@ -550,6 +547,7 @@ Result spawnAndWaitExe(TestContext* context, const String& testPath, const Comma
return res;
}
+
Result spawnAndWaitSharedLibrary(TestContext* context, const String& testPath, const CommandLine& cmdLine, ExecuteResult& outRes)
{
const auto& options = context->options;
@@ -620,6 +618,44 @@ Result spawnAndWaitSharedLibrary(TestContext* context, const String& testPath, c
}
+Result spawnAndWaitProxy(TestContext* context, const String& testPath, const CommandLine& inCmdLine, ExecuteResult& outRes)
+{
+ // Get the name of the thing to execute
+ String exeName = Path::getFileNameWithoutExt(inCmdLine.m_executable);
+
+ if (exeName == "slangc")
+ {
+ // If the test is slangc there is a command line version we can just directly use
+ //return spawnAndWaitExe(context, testPath, inCmdLine, outRes);
+ return spawnAndWaitSharedLibrary(context, testPath, inCmdLine, outRes);
+ }
+
+ CommandLine cmdLine(inCmdLine);
+
+ // Make the first arg the name of the tool to invoke
+ cmdLine.m_args.insert(0, exeName);
+
+ auto exePath = Path::combine(Path::getParentDirectory(inCmdLine.m_executable), String("test-proxy") + ProcessUtil::getExecutableSuffix());
+ cmdLine.setExecutablePath(exePath);
+
+ const auto& options = context->options;
+ if (options.shouldBeVerbose)
+ {
+ String commandLine = ProcessUtil::getCommandLineString(cmdLine);
+ context->reporter->messageFormat(TestMessageType::Info, "%s\n", commandLine.begin());
+ }
+
+ // Execute
+ Result res = ProcessUtil::execute(cmdLine, outRes);
+ if (SLANG_FAILED(res))
+ {
+ // fprintf(stderr, "failed to run test '%S'\n", testPath.ToWString());
+ context->reporter->messageFormat(TestMessageType::RunError, "failed to run test '%S'", testPath.toWString().begin());
+ }
+
+ return res;
+}
+
static SlangResult _extractArg(const CommandLine& cmdLine, const String& argName, String& outValue)
{
SLANG_ASSERT(argName.getLength() > 0 && argName[0] == '-');
@@ -972,6 +1008,11 @@ ToolReturnCode spawnAndWait(TestContext* context, const String& testPath, SpawnT
spawnResult = spawnAndWaitSharedLibrary(context, testPath, cmdLine, outExeRes);
break;
}
+ case SpawnType::UseProxy:
+ {
+ spawnResult = spawnAndWaitProxy(context, testPath, cmdLine, outExeRes);
+ break;
+ }
default: break;
}
@@ -2880,8 +2921,6 @@ TestResult runTest(
return TestResult::Pass;
}
- const SpawnType defaultSpawnType = context->options.useExes ? SpawnType::UseExe : SpawnType::UseSharedLibrary;
-
auto testInfo = _findTestCommandInfoByCommand(testOptions.command.getUnownedSlice());
if (testInfo)
@@ -2890,7 +2929,7 @@ TestResult runTest(
testInput.filePath = filePath;
testInput.outputStem = outputStem;
testInput.testOptions = &testOptions;
- testInput.spawnType = defaultSpawnType;
+ testInput.spawnType = context->options.defaultSpawnType;
return testInfo->callback(context, testInput);
}
@@ -3346,8 +3385,18 @@ static void _disableCPPBackends(TestContext* context)
}
}
+static TestResult _asTestResult(ToolReturnCode retCode)
+{
+ switch (retCode)
+ {
+ default: return TestResult::Fail;
+ case ToolReturnCode::Success: return TestResult::Pass;
+ case ToolReturnCode::Ignored: return TestResult::Ignored;
+ }
+}
+
/// Loads a DLL containing unit test functions and run them one by one.
-static SlangResult runUnitTestModule(TestContext* context, TestOptions& testOptions, const char* moduleName)
+static SlangResult runUnitTestModule(TestContext* context, TestOptions& testOptions, SpawnType spawnType, const char* moduleName)
{
SharedLibrary::Handle moduleHandle;
SLANG_RETURN_ON_FAIL(SharedLibrary::load(
@@ -3368,6 +3417,9 @@ static SlangResult runUnitTestModule(TestContext* context, TestOptions& testOpti
unitTestContext.workDirectory = "";
unitTestContext.enabledApis = context->options.enabledApis;
auto testCount = testModule->getTestCount();
+
+ TestReporter* reporter = TestReporter::get();
+
for (SlangInt i = 0; i < testCount; i++)
{
auto testFunc = testModule->getTestFunc(i);
@@ -3382,9 +3434,50 @@ static SlangResult runUnitTestModule(TestContext* context, TestOptions& testOpti
{
if (testPassesCategoryMask(context, testOptions))
{
- TestReporter::get()->startTest(testOptions.command.getBuffer());
- testFunc(&unitTestContext);
- TestReporter::get()->endTest();
+ if (spawnType == SpawnType::UseProxy)
+ {
+ CommandLine cmdLine;
+
+ // The 'command' is the module
+ cmdLine.setExecutablePath(Path::combine(context->exeDirectoryPath, moduleName));
+
+ // Pass the test name / index
+ cmdLine.addArg(testName);
+
+ {
+ StringBuilder buf;
+ buf << i;
+ cmdLine.addArg(buf.ProduceString());
+ }
+
+ // Pass the enabled apis
+ {
+ StringBuilder buf;
+ buf << context->options.enabledApis;
+ cmdLine.addArg(buf.ProduceString());
+ }
+
+ {
+ TestReporter::TestScope scopeTest(reporter, testOptions.command);
+ ExecuteResult exeRes;
+
+ const auto testResult = _asTestResult(spawnAndWait(context, filePath, spawnType, cmdLine, exeRes));
+
+ // If the test fails, output any output - which might give information about individual tests that have failed.
+ if (testResult == TestResult::Fail)
+ {
+ String output = getOutput(exeRes);
+ reporter->message(TestMessageType::TestFailure, output.getBuffer());
+ }
+
+ reporter->addResult(testResult);
+ }
+ }
+ else
+ {
+ TestReporter::TestScope scopeTest(reporter, testOptions.command);
+ testFunc(&unitTestContext);
+ }
}
}
}
@@ -3570,13 +3663,15 @@ SlangResult innerMain(int argc, char** argv)
TestOptions testOptions;
testOptions.categories.add(unitTestCategory);
testOptions.categories.add(smokeTestCategory);
- runUnitTestModule(&context, testOptions, "slang-unit-test-tool");
+ runUnitTestModule(&context, testOptions, context.options.defaultSpawnType, "slang-unit-test-tool");
}
+
{
TestOptions testOptions;
testOptions.categories.add(unitTestCategory);
- runUnitTestModule(&context, testOptions, "gfx-unit-test-tool");
+ runUnitTestModule(&context, testOptions, SpawnType::UseProxy, "gfx-unit-test-tool");
}
+
TestReporter::set(nullptr);
}
diff --git a/tools/test-proxy/test-proxy-main.cpp b/tools/test-proxy/test-proxy-main.cpp
new file mode 100644
index 000000000..2b6c59047
--- /dev/null
+++ b/tools/test-proxy/test-proxy-main.cpp
@@ -0,0 +1,247 @@
+// main.cpp
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include "../../source/core/slang-secure-crt.h"
+
+#include "../../slang-com-helper.h"
+
+#include "../../source/core/slang-string.h"
+#include "../../source/core/slang-io.h"
+#include "../../source/core/slang-writer.h"
+#include "../../source/core/slang-string-util.h"
+
+#include "../../source/core/slang-shared-library.h"
+
+#include "../../source/core/slang-test-tool-util.h"
+
+#include "tools/unit-test/slang-unit-test.h"
+
+namespace TestProxy
+{
+using namespace Slang;
+
+class TestReporter : public ITestReporter
+{
+public:
+ // ITestReporter
+ virtual SLANG_NO_THROW void SLANG_MCALL startTest(const char* testName) SLANG_OVERRIDE { }
+ virtual SLANG_NO_THROW void SLANG_MCALL addResult(TestResult result)SLANG_OVERRIDE;
+ virtual SLANG_NO_THROW void SLANG_MCALL addResultWithLocation(TestResult result, const char* testText, const char* file, int line) SLANG_OVERRIDE;
+ virtual SLANG_NO_THROW void SLANG_MCALL addResultWithLocation(bool testSucceeded, const char* testText, const char* file, int line) SLANG_OVERRIDE;
+ virtual SLANG_NO_THROW void SLANG_MCALL addExecutionTime(double time) SLANG_OVERRIDE { }
+ virtual SLANG_NO_THROW void SLANG_MCALL message(TestMessageType type, const char* message) SLANG_OVERRIDE;
+ virtual SLANG_NO_THROW void SLANG_MCALL endTest() SLANG_OVERRIDE { }
+
+ StringBuilder m_buf;
+ Index m_failCount = 0;
+ Index m_testCount = 0;
+};
+
+
+void TestReporter::message(TestMessageType type, const char* message)
+{
+ if (type == TestMessageType::RunError ||
+ type == TestMessageType::TestFailure)
+ {
+ m_failCount++;
+ }
+
+ m_buf << message << "\n";
+}
+
+void TestReporter::addResultWithLocation(TestResult result, const char* testText, const char* file, int line)
+{
+ if (result == TestResult::Fail)
+ {
+ addResultWithLocation(false, testText, file, line);
+ }
+ else
+ {
+ m_testCount++;
+ }
+}
+
+void TestReporter::addResultWithLocation(bool testSucceeded, const char* testText, const char* file, int line)
+{
+ m_testCount++;
+
+ if (testSucceeded)
+ {
+ return;
+ }
+
+ m_buf << "[Failed]: " << testText << "\n";
+ m_buf << file << ":" << line << "\n";
+
+ m_failCount++;
+}
+
+void TestReporter::addResult(TestResult result)
+{
+ if (result == TestResult::Fail)
+ {
+ m_failCount++;
+ }
+}
+
+static SlangResult _createSlangSession(const char* exePath, int argc, const char* const* argv, ComPtr<slang::IGlobalSession>& outSession)
+{
+
+ ComPtr<slang::IGlobalSession> session;
+
+ // The sharedSession always has a pre-loaded stdlib, is sharedSession is not nullptr.
+ // This differed test checks if the command line has an option to setup the stdlib.
+ // If so we *don't* use the sharedSession, and create a new stdlib-less session just for this compilation.
+ if (TestToolUtil::hasDeferredStdLib(argc, argv))
+ {
+ SLANG_RETURN_ON_FAIL(slang_createGlobalSessionWithoutStdLib(SLANG_API_VERSION, session.writeRef()));
+ TestToolUtil::setSessionDefaultPreludeFromExePath(exePath, session);
+ }
+ else
+ {
+ // Just create the global session in the regular way if there isn't one set
+ SLANG_RETURN_ON_FAIL(slang_createGlobalSession(SLANG_API_VERSION, session.writeRef()));
+ TestToolUtil::setSessionDefaultPreludeFromExePath(exePath, session);
+ }
+
+ outSession.swap(session);
+ return SLANG_OK;
+}
+
+static SlangResult execute(int argc, const char* const* argv)
+{
+ typedef Slang::TestToolUtil::InnerMainFunc InnerMainFunc;
+
+ if (argc < 2)
+ {
+ return SLANG_FAIL;
+ }
+
+ String exePath = Path::getParentDirectory(argv[0]);
+
+ // The 'exeName' of the tool.
+ const String toolName = argv[1];
+
+ {
+ StringBuilder sharedLibToolBuilder;
+ sharedLibToolBuilder.append(toolName);
+ sharedLibToolBuilder.append("-tool");
+
+ auto toolPath = Path::combine(exePath, sharedLibToolBuilder);
+
+ ComPtr<ISlangSharedLibrary> sharedLibrary;
+ if (SLANG_SUCCEEDED(DefaultSharedLibraryLoader::getSingleton()->loadSharedLibrary(toolPath.getBuffer(), sharedLibrary.writeRef())))
+ {
+ // Assume we will used the shared session
+ ComPtr<slang::IGlobalSession> session;
+ SLANG_RETURN_ON_FAIL(_createSlangSession(argv[0], argc - 2, argv + 2, session));
+
+ auto func = (InnerMainFunc)sharedLibrary->findFuncByName("innerMain");
+ if (!func)
+ {
+ return SLANG_FAIL;
+ }
+
+ // Work out the args sent to the shared library
+ List<const char*> args;
+ args.add(argv[0]);
+ args.addRange(argv + 2, Index(argc - 2));
+
+ RefPtr<StdWriters> stdWriters = StdWriters::createDefault();
+
+ const SlangResult res = func(stdWriters, session, int(args.getCount()), args.begin());
+ return res;
+ }
+ }
+
+ // Okay lets assume it's a unit test
+ {
+ auto toolPath = Path::combine(exePath, toolName);
+
+ ComPtr<ISlangSharedLibrary> sharedLibrary;
+ SLANG_RETURN_ON_FAIL(SLANG_SUCCEEDED(DefaultSharedLibraryLoader::getSingleton()->loadSharedLibrary(toolPath.getBuffer(), sharedLibrary.writeRef())));
+
+ // get the unit test export name
+
+ UnitTestGetModuleFunc getModuleFunc = (UnitTestGetModuleFunc)sharedLibrary->findFuncByName("slangUnitTestGetModule");
+ if (!getModuleFunc)
+ return SLANG_FAIL;
+
+ IUnitTestModule* testModule = getModuleFunc();
+ if (!testModule)
+ return SLANG_FAIL;
+
+ // argv[0] exe,
+ // argv[1] tool
+ // argv[2] test name
+ // argv[3] test index
+ // argv[4] the enabled apis
+
+ if (argc < 5)
+ {
+ return SLANG_FAIL;
+ }
+
+ TestReporter testReporter;
+
+ testModule->setTestReporter(&testReporter);
+
+ Int enabledApis;
+ SLANG_RETURN_ON_FAIL(StringUtil::parseInt(UnownedStringSlice(argv[4]), enabledApis));
+
+ Int testIndex;
+ SLANG_RETURN_ON_FAIL(StringUtil::parseInt(UnownedStringSlice(argv[3]), testIndex));
+
+ // Assume we will used the shared session
+ ComPtr<slang::IGlobalSession> session;
+ SLANG_RETURN_ON_FAIL(_createSlangSession(argv[0], argc - 5, argv + 5, session));
+
+ UnitTestContext unitTestContext;
+ unitTestContext.slangGlobalSession = session;
+ unitTestContext.workDirectory = "";
+ unitTestContext.enabledApis = RenderApiFlags(enabledApis);
+
+ auto testCount = testModule->getTestCount();
+ SLANG_ASSERT(testIndex >= 0 && testIndex < testCount);
+
+ UnitTestFunc testFunc = testModule->getTestFunc(testIndex);
+
+ try
+ {
+ testFunc(&unitTestContext);
+ }
+ catch (...)
+ {
+ testReporter.m_failCount++;
+ }
+
+ if (testReporter.m_failCount > 0)
+ {
+ // Write out to stderr...
+ auto writers = StdWriters::createDefault();
+ writers->getError().put(testReporter.m_buf.getUnownedSlice());
+ return SLANG_FAIL;
+ }
+
+ if (testReporter.m_testCount == 0)
+ {
+ return SLANG_E_NOT_AVAILABLE;
+ }
+
+ return SLANG_OK;
+ }
+
+ return SLANG_E_NOT_AVAILABLE;
+}
+
+} // namespace TestProxy
+
+int main(int argc, const char* const* argv)
+{
+ using namespace TestProxy;
+ SlangResult res = execute(argc, argv);
+ return (int)TestToolUtil::getReturnCode(res);
+}