Fix Visual Studio solution build

Re-generated Visual Studio projects using build/cmake.sh. Removed/added
changed SPIRV-Tools projects in solution.

Bug: swiftshader:132
Bug: b/123642959
Change-Id: I2a9d21a0100882d3db8ffd81d90800f464d7419b
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/34508
Tested-by: Nicolas Capens <nicolascapens@google.com>
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
Reviewed-by: Alexis Hétu <sugoi@google.com>
diff --git a/SwiftShader.sln b/SwiftShader.sln
index 6ebefc9..95e3001 100644
--- a/SwiftShader.sln
+++ b/SwiftShader.sln
@@ -83,8 +83,8 @@
 EndProject

 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Vulkan", "src\Vulkan\vulkan.vcxproj", "{E1C34B66-C942-4B9A-B8C3-9A12625650D3}"

 	ProjectSection(ProjectDependencies) = postProject

-		{83D86993-70D0-336A-84F1-8B952B8079DD} = {83D86993-70D0-336A-84F1-8B952B8079DD}

-		{CE414127-5528-30F5-9F5F-5AF9D2B8C04C} = {CE414127-5528-30F5-9F5F-5AF9D2B8C04C}

+		{59349DEB-AC96-335C-ACC6-8A92F774538A} = {59349DEB-AC96-335C-ACC6-8A92F774538A}

+		{EFF5DE98-2741-3BD8-B049-D5647A223B5E} = {EFF5DE98-2741-3BD8-B049-D5647A223B5E}

 	EndProjectSection

 EndProject

 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ReactorUnitTests", "src\Reactor\ReactorUnitTests.vcxproj", "{4EC107AB-89E8-4A0B-8366-B3E81085AE07}"

@@ -96,29 +96,29 @@
 EndProject

 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SPIRV-Tools", "SPIRV-Tools", "{ABF69E39-C15E-4DAC-A27E-3480DE2C0CF0}"

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SPIRV-Tools", "build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\SPIRV-Tools.vcxproj", "{83D86993-70D0-336A-84F1-8B952B8079DD}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SPIRV-Tools", "build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\SPIRV-Tools.vcxproj", "{59349DEB-AC96-335C-ACC6-8A92F774538A}"

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SPIRV-Tools-opt", "build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\opt\SPIRV-Tools-opt.vcxproj", "{CE414127-5528-30F5-9F5F-5AF9D2B8C04C}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SPIRV-Tools-opt", "build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\opt\SPIRV-Tools-opt.vcxproj", "{EFF5DE98-2741-3BD8-B049-D5647A223B5E}"

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_tables", "build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\core_tables.vcxproj", "{D0817E36-BE58-3C95-BF64-748025994A26}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_tables", "build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\core_tables.vcxproj", "{983F7132-9747-3649-BF4B-87E69EE85F3E}"

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "enum_string_mapping", "build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\enum_string_mapping.vcxproj", "{717F5DEC-42F8-378A-90E8-CF6E340D983B}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "enum_string_mapping", "build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\enum_string_mapping.vcxproj", "{80AF261B-6B92-3143-9FCA-9BC59158D733}"

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "extinst_tables", "build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\extinst_tables.vcxproj", "{0B6F6E15-53DE-3B85-812B-825694B176F8}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "extinst_tables", "build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\extinst_tables.vcxproj", "{3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E}"

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-header-DebugInfo", "build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\spirv-tools-header-DebugInfo.vcxproj", "{EA1FDDD6-3BE8-3A92-B7F9-C8E032D7F1A2}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-header-DebugInfo", "build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\spirv-tools-header-DebugInfo.vcxproj", "{39DFA88C-1DC6-3E6F-A71F-7970C1B8E483}"

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-debuginfo", "build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\spirv-tools-debuginfo.vcxproj", "{E86A9777-6C04-38BC-AC03-32F171BA9037}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "llvm", "build\Visual Studio 15 2017 Win64\llvm.vcxproj", "{481093B5-4EF0-391E-82FF-BB73CFCD3D51}"

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-spv-amd-gcn-shader", "build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\spirv-tools-spv-amd-gcn-shader.vcxproj", "{4DE77359-5B7E-3EF3-AB38-9F4FF62D4935}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spv-tools-debuginfo", "build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\spv-tools-debuginfo.vcxproj", "{496AF3EC-139A-3EA0-8898-45C5704A5F38}"

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-spv-amd-shader-ballot", "build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\spirv-tools-spv-amd-shader-ballot.vcxproj", "{25CAC665-41EF-3770-B3AC-1C090D2AC7EA}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spv-tools-spv-amd-gs", "build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\spv-tools-spv-amd-gs.vcxproj", "{E0B79E0B-25BB-355B-9390-E9EC0047C632}"

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-spv-amd-shader-explicit-vertex-parameter", "build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\spirv-tools-spv-amd-shader-explicit-vertex-parameter.vcxproj", "{95DD96F6-D410-3911-B61A-C0AA0D6EBD2C}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spv-tools-spv-amd-sb", "build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\spv-tools-spv-amd-sb.vcxproj", "{1262CB67-3BC7-35D5-9036-3D3B3A9DC3CE}"

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-spv-amd-shader-trinary-minmax", "build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\spirv-tools-spv-amd-shader-trinary-minmax.vcxproj", "{D31F2A2D-3E6E-3541-A885-0D28DBE02FE8}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spv-tools-spv-amd-sevp", "build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\spv-tools-spv-amd-sevp.vcxproj", "{32C0DDEA-EC24-3465-B0F9-9DA187D45ED3}"

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "llvm", "build\Visual Studio 15 2017 Win64\llvm.vcxproj", "{2F30A9CF-6135-3DB8-A898-CC2638959596}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spv-tools-spv-amd-stm", "build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\spv-tools-spv-amd-stm.vcxproj", "{9E8623BF-3469-3104-9674-DED25861C7CF}"

 EndProject

 Global

 	GlobalSection(SolutionConfigurationPlatforms) = preSolution

@@ -398,126 +398,126 @@
 		{16E1EBC1-BB6B-4A82-A1A3-5A69AC8D58FE}.Release|x64.ActiveCfg = Release|x64

 		{16E1EBC1-BB6B-4A82-A1A3-5A69AC8D58FE}.Release|x64.Build.0 = Release|x64

 		{16E1EBC1-BB6B-4A82-A1A3-5A69AC8D58FE}.Release|x86.ActiveCfg = Release|x64

-		{83D86993-70D0-336A-84F1-8B952B8079DD}.Debug|x64.ActiveCfg = Debug|x64

-		{83D86993-70D0-336A-84F1-8B952B8079DD}.Debug|x64.Build.0 = Debug|x64

-		{83D86993-70D0-336A-84F1-8B952B8079DD}.Debug|x86.ActiveCfg = Debug|x64

-		{83D86993-70D0-336A-84F1-8B952B8079DD}.Profile|x64.ActiveCfg = Release|x64

-		{83D86993-70D0-336A-84F1-8B952B8079DD}.Profile|x64.Build.0 = Release|x64

-		{83D86993-70D0-336A-84F1-8B952B8079DD}.Profile|x86.ActiveCfg = Release|x64

-		{83D86993-70D0-336A-84F1-8B952B8079DD}.Profile|x86.Build.0 = Release|x64

-		{83D86993-70D0-336A-84F1-8B952B8079DD}.Release|x64.ActiveCfg = Release|x64

-		{83D86993-70D0-336A-84F1-8B952B8079DD}.Release|x64.Build.0 = Release|x64

-		{83D86993-70D0-336A-84F1-8B952B8079DD}.Release|x86.ActiveCfg = Release|x64

-		{CE414127-5528-30F5-9F5F-5AF9D2B8C04C}.Debug|x64.ActiveCfg = Debug|x64

-		{CE414127-5528-30F5-9F5F-5AF9D2B8C04C}.Debug|x64.Build.0 = Debug|x64

-		{CE414127-5528-30F5-9F5F-5AF9D2B8C04C}.Debug|x86.ActiveCfg = Debug|x64

-		{CE414127-5528-30F5-9F5F-5AF9D2B8C04C}.Profile|x64.ActiveCfg = Release|x64

-		{CE414127-5528-30F5-9F5F-5AF9D2B8C04C}.Profile|x64.Build.0 = Release|x64

-		{CE414127-5528-30F5-9F5F-5AF9D2B8C04C}.Profile|x86.ActiveCfg = Release|x64

-		{CE414127-5528-30F5-9F5F-5AF9D2B8C04C}.Profile|x86.Build.0 = Release|x64

-		{CE414127-5528-30F5-9F5F-5AF9D2B8C04C}.Release|x64.ActiveCfg = Release|x64

-		{CE414127-5528-30F5-9F5F-5AF9D2B8C04C}.Release|x64.Build.0 = Release|x64

-		{CE414127-5528-30F5-9F5F-5AF9D2B8C04C}.Release|x86.ActiveCfg = Release|x64

-		{D0817E36-BE58-3C95-BF64-748025994A26}.Debug|x64.ActiveCfg = Debug|x64

-		{D0817E36-BE58-3C95-BF64-748025994A26}.Debug|x64.Build.0 = Debug|x64

-		{D0817E36-BE58-3C95-BF64-748025994A26}.Debug|x86.ActiveCfg = Debug|x64

-		{D0817E36-BE58-3C95-BF64-748025994A26}.Profile|x64.ActiveCfg = Release|x64

-		{D0817E36-BE58-3C95-BF64-748025994A26}.Profile|x64.Build.0 = Release|x64

-		{D0817E36-BE58-3C95-BF64-748025994A26}.Profile|x86.ActiveCfg = Release|x64

-		{D0817E36-BE58-3C95-BF64-748025994A26}.Profile|x86.Build.0 = Release|x64

-		{D0817E36-BE58-3C95-BF64-748025994A26}.Release|x64.ActiveCfg = Release|x64

-		{D0817E36-BE58-3C95-BF64-748025994A26}.Release|x64.Build.0 = Release|x64

-		{D0817E36-BE58-3C95-BF64-748025994A26}.Release|x86.ActiveCfg = Release|x64

-		{717F5DEC-42F8-378A-90E8-CF6E340D983B}.Debug|x64.ActiveCfg = Debug|x64

-		{717F5DEC-42F8-378A-90E8-CF6E340D983B}.Debug|x64.Build.0 = Debug|x64

-		{717F5DEC-42F8-378A-90E8-CF6E340D983B}.Debug|x86.ActiveCfg = Debug|x64

-		{717F5DEC-42F8-378A-90E8-CF6E340D983B}.Profile|x64.ActiveCfg = Release|x64

-		{717F5DEC-42F8-378A-90E8-CF6E340D983B}.Profile|x64.Build.0 = Release|x64

-		{717F5DEC-42F8-378A-90E8-CF6E340D983B}.Profile|x86.ActiveCfg = Release|x64

-		{717F5DEC-42F8-378A-90E8-CF6E340D983B}.Profile|x86.Build.0 = Release|x64

-		{717F5DEC-42F8-378A-90E8-CF6E340D983B}.Release|x64.ActiveCfg = Release|x64

-		{717F5DEC-42F8-378A-90E8-CF6E340D983B}.Release|x64.Build.0 = Release|x64

-		{717F5DEC-42F8-378A-90E8-CF6E340D983B}.Release|x86.ActiveCfg = Release|x64

-		{0B6F6E15-53DE-3B85-812B-825694B176F8}.Debug|x64.ActiveCfg = Debug|x64

-		{0B6F6E15-53DE-3B85-812B-825694B176F8}.Debug|x64.Build.0 = Debug|x64

-		{0B6F6E15-53DE-3B85-812B-825694B176F8}.Debug|x86.ActiveCfg = Debug|x64

-		{0B6F6E15-53DE-3B85-812B-825694B176F8}.Profile|x64.ActiveCfg = Release|x64

-		{0B6F6E15-53DE-3B85-812B-825694B176F8}.Profile|x64.Build.0 = Release|x64

-		{0B6F6E15-53DE-3B85-812B-825694B176F8}.Profile|x86.ActiveCfg = Release|x64

-		{0B6F6E15-53DE-3B85-812B-825694B176F8}.Profile|x86.Build.0 = Release|x64

-		{0B6F6E15-53DE-3B85-812B-825694B176F8}.Release|x64.ActiveCfg = Release|x64

-		{0B6F6E15-53DE-3B85-812B-825694B176F8}.Release|x64.Build.0 = Release|x64

-		{0B6F6E15-53DE-3B85-812B-825694B176F8}.Release|x86.ActiveCfg = Release|x64

-		{EA1FDDD6-3BE8-3A92-B7F9-C8E032D7F1A2}.Debug|x64.ActiveCfg = Debug|x64

-		{EA1FDDD6-3BE8-3A92-B7F9-C8E032D7F1A2}.Debug|x64.Build.0 = Debug|x64

-		{EA1FDDD6-3BE8-3A92-B7F9-C8E032D7F1A2}.Debug|x86.ActiveCfg = Debug|x64

-		{EA1FDDD6-3BE8-3A92-B7F9-C8E032D7F1A2}.Profile|x64.ActiveCfg = Release|x64

-		{EA1FDDD6-3BE8-3A92-B7F9-C8E032D7F1A2}.Profile|x64.Build.0 = Release|x64

-		{EA1FDDD6-3BE8-3A92-B7F9-C8E032D7F1A2}.Profile|x86.ActiveCfg = Release|x64

-		{EA1FDDD6-3BE8-3A92-B7F9-C8E032D7F1A2}.Profile|x86.Build.0 = Release|x64

-		{EA1FDDD6-3BE8-3A92-B7F9-C8E032D7F1A2}.Release|x64.ActiveCfg = Release|x64

-		{EA1FDDD6-3BE8-3A92-B7F9-C8E032D7F1A2}.Release|x64.Build.0 = Release|x64

-		{EA1FDDD6-3BE8-3A92-B7F9-C8E032D7F1A2}.Release|x86.ActiveCfg = Release|x64

-		{E86A9777-6C04-38BC-AC03-32F171BA9037}.Debug|x64.ActiveCfg = Debug|x64

-		{E86A9777-6C04-38BC-AC03-32F171BA9037}.Debug|x64.Build.0 = Debug|x64

-		{E86A9777-6C04-38BC-AC03-32F171BA9037}.Debug|x86.ActiveCfg = Debug|x64

-		{E86A9777-6C04-38BC-AC03-32F171BA9037}.Profile|x64.ActiveCfg = Release|x64

-		{E86A9777-6C04-38BC-AC03-32F171BA9037}.Profile|x64.Build.0 = Release|x64

-		{E86A9777-6C04-38BC-AC03-32F171BA9037}.Profile|x86.ActiveCfg = Release|x64

-		{E86A9777-6C04-38BC-AC03-32F171BA9037}.Profile|x86.Build.0 = Release|x64

-		{E86A9777-6C04-38BC-AC03-32F171BA9037}.Release|x64.ActiveCfg = Release|x64

-		{E86A9777-6C04-38BC-AC03-32F171BA9037}.Release|x64.Build.0 = Release|x64

-		{E86A9777-6C04-38BC-AC03-32F171BA9037}.Release|x86.ActiveCfg = Release|x64

-		{4DE77359-5B7E-3EF3-AB38-9F4FF62D4935}.Debug|x64.ActiveCfg = Debug|x64

-		{4DE77359-5B7E-3EF3-AB38-9F4FF62D4935}.Debug|x64.Build.0 = Debug|x64

-		{4DE77359-5B7E-3EF3-AB38-9F4FF62D4935}.Debug|x86.ActiveCfg = Debug|x64

-		{4DE77359-5B7E-3EF3-AB38-9F4FF62D4935}.Profile|x64.ActiveCfg = Release|x64

-		{4DE77359-5B7E-3EF3-AB38-9F4FF62D4935}.Profile|x64.Build.0 = Release|x64

-		{4DE77359-5B7E-3EF3-AB38-9F4FF62D4935}.Profile|x86.ActiveCfg = Release|x64

-		{4DE77359-5B7E-3EF3-AB38-9F4FF62D4935}.Profile|x86.Build.0 = Release|x64

-		{4DE77359-5B7E-3EF3-AB38-9F4FF62D4935}.Release|x64.ActiveCfg = Release|x64

-		{4DE77359-5B7E-3EF3-AB38-9F4FF62D4935}.Release|x64.Build.0 = Release|x64

-		{4DE77359-5B7E-3EF3-AB38-9F4FF62D4935}.Release|x86.ActiveCfg = Release|x64

-		{25CAC665-41EF-3770-B3AC-1C090D2AC7EA}.Debug|x64.ActiveCfg = Debug|x64

-		{25CAC665-41EF-3770-B3AC-1C090D2AC7EA}.Debug|x64.Build.0 = Debug|x64

-		{25CAC665-41EF-3770-B3AC-1C090D2AC7EA}.Debug|x86.ActiveCfg = Debug|x64

-		{25CAC665-41EF-3770-B3AC-1C090D2AC7EA}.Profile|x64.ActiveCfg = Release|x64

-		{25CAC665-41EF-3770-B3AC-1C090D2AC7EA}.Profile|x64.Build.0 = Release|x64

-		{25CAC665-41EF-3770-B3AC-1C090D2AC7EA}.Profile|x86.ActiveCfg = Release|x64

-		{25CAC665-41EF-3770-B3AC-1C090D2AC7EA}.Profile|x86.Build.0 = Release|x64

-		{25CAC665-41EF-3770-B3AC-1C090D2AC7EA}.Release|x64.ActiveCfg = Release|x64

-		{25CAC665-41EF-3770-B3AC-1C090D2AC7EA}.Release|x64.Build.0 = Release|x64

-		{25CAC665-41EF-3770-B3AC-1C090D2AC7EA}.Release|x86.ActiveCfg = Release|x64

-		{95DD96F6-D410-3911-B61A-C0AA0D6EBD2C}.Debug|x64.ActiveCfg = Debug|x64

-		{95DD96F6-D410-3911-B61A-C0AA0D6EBD2C}.Debug|x64.Build.0 = Debug|x64

-		{95DD96F6-D410-3911-B61A-C0AA0D6EBD2C}.Debug|x86.ActiveCfg = Debug|x64

-		{95DD96F6-D410-3911-B61A-C0AA0D6EBD2C}.Profile|x64.ActiveCfg = Release|x64

-		{95DD96F6-D410-3911-B61A-C0AA0D6EBD2C}.Profile|x64.Build.0 = Release|x64

-		{95DD96F6-D410-3911-B61A-C0AA0D6EBD2C}.Profile|x86.ActiveCfg = Release|x64

-		{95DD96F6-D410-3911-B61A-C0AA0D6EBD2C}.Profile|x86.Build.0 = Release|x64

-		{95DD96F6-D410-3911-B61A-C0AA0D6EBD2C}.Release|x64.ActiveCfg = Release|x64

-		{95DD96F6-D410-3911-B61A-C0AA0D6EBD2C}.Release|x64.Build.0 = Release|x64

-		{95DD96F6-D410-3911-B61A-C0AA0D6EBD2C}.Release|x86.ActiveCfg = Release|x64

-		{D31F2A2D-3E6E-3541-A885-0D28DBE02FE8}.Debug|x64.ActiveCfg = Debug|x64

-		{D31F2A2D-3E6E-3541-A885-0D28DBE02FE8}.Debug|x64.Build.0 = Debug|x64

-		{D31F2A2D-3E6E-3541-A885-0D28DBE02FE8}.Debug|x86.ActiveCfg = Debug|x64

-		{D31F2A2D-3E6E-3541-A885-0D28DBE02FE8}.Profile|x64.ActiveCfg = Release|x64

-		{D31F2A2D-3E6E-3541-A885-0D28DBE02FE8}.Profile|x64.Build.0 = Release|x64

-		{D31F2A2D-3E6E-3541-A885-0D28DBE02FE8}.Profile|x86.ActiveCfg = Release|x64

-		{D31F2A2D-3E6E-3541-A885-0D28DBE02FE8}.Profile|x86.Build.0 = Release|x64

-		{D31F2A2D-3E6E-3541-A885-0D28DBE02FE8}.Release|x64.ActiveCfg = Release|x64

-		{D31F2A2D-3E6E-3541-A885-0D28DBE02FE8}.Release|x64.Build.0 = Release|x64

-		{D31F2A2D-3E6E-3541-A885-0D28DBE02FE8}.Release|x86.ActiveCfg = Release|x64

-		{2F30A9CF-6135-3DB8-A898-CC2638959596}.Debug|x64.ActiveCfg = Debug|x64

-		{2F30A9CF-6135-3DB8-A898-CC2638959596}.Debug|x64.Build.0 = Debug|x64

-		{2F30A9CF-6135-3DB8-A898-CC2638959596}.Debug|x86.ActiveCfg = Debug|x64

-		{2F30A9CF-6135-3DB8-A898-CC2638959596}.Profile|x64.ActiveCfg = Release|x64

-		{2F30A9CF-6135-3DB8-A898-CC2638959596}.Profile|x64.Build.0 = Release|x64

-		{2F30A9CF-6135-3DB8-A898-CC2638959596}.Profile|x86.ActiveCfg = Release|x64

-		{2F30A9CF-6135-3DB8-A898-CC2638959596}.Profile|x86.Build.0 = Release|x64

-		{2F30A9CF-6135-3DB8-A898-CC2638959596}.Release|x64.ActiveCfg = Release|x64

-		{2F30A9CF-6135-3DB8-A898-CC2638959596}.Release|x64.Build.0 = Release|x64

-		{2F30A9CF-6135-3DB8-A898-CC2638959596}.Release|x86.ActiveCfg = Release|x64

+		{59349DEB-AC96-335C-ACC6-8A92F774538A}.Debug|x64.ActiveCfg = Debug|x64

+		{59349DEB-AC96-335C-ACC6-8A92F774538A}.Debug|x64.Build.0 = Debug|x64

+		{59349DEB-AC96-335C-ACC6-8A92F774538A}.Debug|x86.ActiveCfg = Debug|x64

+		{59349DEB-AC96-335C-ACC6-8A92F774538A}.Profile|x64.ActiveCfg = Release|x64

+		{59349DEB-AC96-335C-ACC6-8A92F774538A}.Profile|x64.Build.0 = Release|x64

+		{59349DEB-AC96-335C-ACC6-8A92F774538A}.Profile|x86.ActiveCfg = Release|x64

+		{59349DEB-AC96-335C-ACC6-8A92F774538A}.Profile|x86.Build.0 = Release|x64

+		{59349DEB-AC96-335C-ACC6-8A92F774538A}.Release|x64.ActiveCfg = Release|x64

+		{59349DEB-AC96-335C-ACC6-8A92F774538A}.Release|x64.Build.0 = Release|x64

+		{59349DEB-AC96-335C-ACC6-8A92F774538A}.Release|x86.ActiveCfg = Release|x64

+		{EFF5DE98-2741-3BD8-B049-D5647A223B5E}.Debug|x64.ActiveCfg = Debug|x64

+		{EFF5DE98-2741-3BD8-B049-D5647A223B5E}.Debug|x64.Build.0 = Debug|x64

+		{EFF5DE98-2741-3BD8-B049-D5647A223B5E}.Debug|x86.ActiveCfg = Debug|x64

+		{EFF5DE98-2741-3BD8-B049-D5647A223B5E}.Profile|x64.ActiveCfg = Release|x64

+		{EFF5DE98-2741-3BD8-B049-D5647A223B5E}.Profile|x64.Build.0 = Release|x64

+		{EFF5DE98-2741-3BD8-B049-D5647A223B5E}.Profile|x86.ActiveCfg = Release|x64

+		{EFF5DE98-2741-3BD8-B049-D5647A223B5E}.Profile|x86.Build.0 = Release|x64

+		{EFF5DE98-2741-3BD8-B049-D5647A223B5E}.Release|x64.ActiveCfg = Release|x64

+		{EFF5DE98-2741-3BD8-B049-D5647A223B5E}.Release|x64.Build.0 = Release|x64

+		{EFF5DE98-2741-3BD8-B049-D5647A223B5E}.Release|x86.ActiveCfg = Release|x64

+		{983F7132-9747-3649-BF4B-87E69EE85F3E}.Debug|x64.ActiveCfg = Debug|x64

+		{983F7132-9747-3649-BF4B-87E69EE85F3E}.Debug|x64.Build.0 = Debug|x64

+		{983F7132-9747-3649-BF4B-87E69EE85F3E}.Debug|x86.ActiveCfg = Debug|x64

+		{983F7132-9747-3649-BF4B-87E69EE85F3E}.Profile|x64.ActiveCfg = Release|x64

+		{983F7132-9747-3649-BF4B-87E69EE85F3E}.Profile|x64.Build.0 = Release|x64

+		{983F7132-9747-3649-BF4B-87E69EE85F3E}.Profile|x86.ActiveCfg = Release|x64

+		{983F7132-9747-3649-BF4B-87E69EE85F3E}.Profile|x86.Build.0 = Release|x64

+		{983F7132-9747-3649-BF4B-87E69EE85F3E}.Release|x64.ActiveCfg = Release|x64

+		{983F7132-9747-3649-BF4B-87E69EE85F3E}.Release|x64.Build.0 = Release|x64

+		{983F7132-9747-3649-BF4B-87E69EE85F3E}.Release|x86.ActiveCfg = Release|x64

+		{80AF261B-6B92-3143-9FCA-9BC59158D733}.Debug|x64.ActiveCfg = Debug|x64

+		{80AF261B-6B92-3143-9FCA-9BC59158D733}.Debug|x64.Build.0 = Debug|x64

+		{80AF261B-6B92-3143-9FCA-9BC59158D733}.Debug|x86.ActiveCfg = Debug|x64

+		{80AF261B-6B92-3143-9FCA-9BC59158D733}.Profile|x64.ActiveCfg = Release|x64

+		{80AF261B-6B92-3143-9FCA-9BC59158D733}.Profile|x64.Build.0 = Release|x64

+		{80AF261B-6B92-3143-9FCA-9BC59158D733}.Profile|x86.ActiveCfg = Release|x64

+		{80AF261B-6B92-3143-9FCA-9BC59158D733}.Profile|x86.Build.0 = Release|x64

+		{80AF261B-6B92-3143-9FCA-9BC59158D733}.Release|x64.ActiveCfg = Release|x64

+		{80AF261B-6B92-3143-9FCA-9BC59158D733}.Release|x64.Build.0 = Release|x64

+		{80AF261B-6B92-3143-9FCA-9BC59158D733}.Release|x86.ActiveCfg = Release|x64

+		{3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E}.Debug|x64.ActiveCfg = Debug|x64

+		{3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E}.Debug|x64.Build.0 = Debug|x64

+		{3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E}.Debug|x86.ActiveCfg = Debug|x64

+		{3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E}.Profile|x64.ActiveCfg = Release|x64

+		{3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E}.Profile|x64.Build.0 = Release|x64

+		{3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E}.Profile|x86.ActiveCfg = Release|x64

+		{3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E}.Profile|x86.Build.0 = Release|x64

+		{3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E}.Release|x64.ActiveCfg = Release|x64

+		{3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E}.Release|x64.Build.0 = Release|x64

+		{3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E}.Release|x86.ActiveCfg = Release|x64

+		{39DFA88C-1DC6-3E6F-A71F-7970C1B8E483}.Debug|x64.ActiveCfg = Debug|x64

+		{39DFA88C-1DC6-3E6F-A71F-7970C1B8E483}.Debug|x64.Build.0 = Debug|x64

+		{39DFA88C-1DC6-3E6F-A71F-7970C1B8E483}.Debug|x86.ActiveCfg = Debug|x64

+		{39DFA88C-1DC6-3E6F-A71F-7970C1B8E483}.Profile|x64.ActiveCfg = Release|x64

+		{39DFA88C-1DC6-3E6F-A71F-7970C1B8E483}.Profile|x64.Build.0 = Release|x64

+		{39DFA88C-1DC6-3E6F-A71F-7970C1B8E483}.Profile|x86.ActiveCfg = Release|x64

+		{39DFA88C-1DC6-3E6F-A71F-7970C1B8E483}.Profile|x86.Build.0 = Release|x64

+		{39DFA88C-1DC6-3E6F-A71F-7970C1B8E483}.Release|x64.ActiveCfg = Release|x64

+		{39DFA88C-1DC6-3E6F-A71F-7970C1B8E483}.Release|x64.Build.0 = Release|x64

+		{39DFA88C-1DC6-3E6F-A71F-7970C1B8E483}.Release|x86.ActiveCfg = Release|x64

+		{481093B5-4EF0-391E-82FF-BB73CFCD3D51}.Debug|x64.ActiveCfg = Debug|x64

+		{481093B5-4EF0-391E-82FF-BB73CFCD3D51}.Debug|x64.Build.0 = Debug|x64

+		{481093B5-4EF0-391E-82FF-BB73CFCD3D51}.Debug|x86.ActiveCfg = Debug|x64

+		{481093B5-4EF0-391E-82FF-BB73CFCD3D51}.Profile|x64.ActiveCfg = Release|x64

+		{481093B5-4EF0-391E-82FF-BB73CFCD3D51}.Profile|x64.Build.0 = Release|x64

+		{481093B5-4EF0-391E-82FF-BB73CFCD3D51}.Profile|x86.ActiveCfg = Release|x64

+		{481093B5-4EF0-391E-82FF-BB73CFCD3D51}.Profile|x86.Build.0 = Release|x64

+		{481093B5-4EF0-391E-82FF-BB73CFCD3D51}.Release|x64.ActiveCfg = Release|x64

+		{481093B5-4EF0-391E-82FF-BB73CFCD3D51}.Release|x64.Build.0 = Release|x64

+		{481093B5-4EF0-391E-82FF-BB73CFCD3D51}.Release|x86.ActiveCfg = Release|x64

+		{496AF3EC-139A-3EA0-8898-45C5704A5F38}.Debug|x64.ActiveCfg = Debug|x64

+		{496AF3EC-139A-3EA0-8898-45C5704A5F38}.Debug|x64.Build.0 = Debug|x64

+		{496AF3EC-139A-3EA0-8898-45C5704A5F38}.Debug|x86.ActiveCfg = Debug|x64

+		{496AF3EC-139A-3EA0-8898-45C5704A5F38}.Profile|x64.ActiveCfg = Release|x64

+		{496AF3EC-139A-3EA0-8898-45C5704A5F38}.Profile|x64.Build.0 = Release|x64

+		{496AF3EC-139A-3EA0-8898-45C5704A5F38}.Profile|x86.ActiveCfg = Release|x64

+		{496AF3EC-139A-3EA0-8898-45C5704A5F38}.Profile|x86.Build.0 = Release|x64

+		{496AF3EC-139A-3EA0-8898-45C5704A5F38}.Release|x64.ActiveCfg = Release|x64

+		{496AF3EC-139A-3EA0-8898-45C5704A5F38}.Release|x64.Build.0 = Release|x64

+		{496AF3EC-139A-3EA0-8898-45C5704A5F38}.Release|x86.ActiveCfg = Release|x64

+		{E0B79E0B-25BB-355B-9390-E9EC0047C632}.Debug|x64.ActiveCfg = Debug|x64

+		{E0B79E0B-25BB-355B-9390-E9EC0047C632}.Debug|x64.Build.0 = Debug|x64

+		{E0B79E0B-25BB-355B-9390-E9EC0047C632}.Debug|x86.ActiveCfg = Debug|x64

+		{E0B79E0B-25BB-355B-9390-E9EC0047C632}.Profile|x64.ActiveCfg = Release|x64

+		{E0B79E0B-25BB-355B-9390-E9EC0047C632}.Profile|x64.Build.0 = Release|x64

+		{E0B79E0B-25BB-355B-9390-E9EC0047C632}.Profile|x86.ActiveCfg = Release|x64

+		{E0B79E0B-25BB-355B-9390-E9EC0047C632}.Profile|x86.Build.0 = Release|x64

+		{E0B79E0B-25BB-355B-9390-E9EC0047C632}.Release|x64.ActiveCfg = Release|x64

+		{E0B79E0B-25BB-355B-9390-E9EC0047C632}.Release|x64.Build.0 = Release|x64

+		{E0B79E0B-25BB-355B-9390-E9EC0047C632}.Release|x86.ActiveCfg = Release|x64

+		{1262CB67-3BC7-35D5-9036-3D3B3A9DC3CE}.Debug|x64.ActiveCfg = Debug|x64

+		{1262CB67-3BC7-35D5-9036-3D3B3A9DC3CE}.Debug|x64.Build.0 = Debug|x64

+		{1262CB67-3BC7-35D5-9036-3D3B3A9DC3CE}.Debug|x86.ActiveCfg = Debug|x64

+		{1262CB67-3BC7-35D5-9036-3D3B3A9DC3CE}.Profile|x64.ActiveCfg = Release|x64

+		{1262CB67-3BC7-35D5-9036-3D3B3A9DC3CE}.Profile|x64.Build.0 = Release|x64

+		{1262CB67-3BC7-35D5-9036-3D3B3A9DC3CE}.Profile|x86.ActiveCfg = Release|x64

+		{1262CB67-3BC7-35D5-9036-3D3B3A9DC3CE}.Profile|x86.Build.0 = Release|x64

+		{1262CB67-3BC7-35D5-9036-3D3B3A9DC3CE}.Release|x64.ActiveCfg = Release|x64

+		{1262CB67-3BC7-35D5-9036-3D3B3A9DC3CE}.Release|x64.Build.0 = Release|x64

+		{1262CB67-3BC7-35D5-9036-3D3B3A9DC3CE}.Release|x86.ActiveCfg = Release|x64

+		{32C0DDEA-EC24-3465-B0F9-9DA187D45ED3}.Debug|x64.ActiveCfg = Debug|x64

+		{32C0DDEA-EC24-3465-B0F9-9DA187D45ED3}.Debug|x64.Build.0 = Debug|x64

+		{32C0DDEA-EC24-3465-B0F9-9DA187D45ED3}.Debug|x86.ActiveCfg = Debug|x64

+		{32C0DDEA-EC24-3465-B0F9-9DA187D45ED3}.Profile|x64.ActiveCfg = Release|x64

+		{32C0DDEA-EC24-3465-B0F9-9DA187D45ED3}.Profile|x64.Build.0 = Release|x64

+		{32C0DDEA-EC24-3465-B0F9-9DA187D45ED3}.Profile|x86.ActiveCfg = Release|x64

+		{32C0DDEA-EC24-3465-B0F9-9DA187D45ED3}.Profile|x86.Build.0 = Release|x64

+		{32C0DDEA-EC24-3465-B0F9-9DA187D45ED3}.Release|x64.ActiveCfg = Release|x64

+		{32C0DDEA-EC24-3465-B0F9-9DA187D45ED3}.Release|x64.Build.0 = Release|x64

+		{32C0DDEA-EC24-3465-B0F9-9DA187D45ED3}.Release|x86.ActiveCfg = Release|x64

+		{9E8623BF-3469-3104-9674-DED25861C7CF}.Debug|x64.ActiveCfg = Debug|x64

+		{9E8623BF-3469-3104-9674-DED25861C7CF}.Debug|x64.Build.0 = Debug|x64

+		{9E8623BF-3469-3104-9674-DED25861C7CF}.Debug|x86.ActiveCfg = Debug|x64

+		{9E8623BF-3469-3104-9674-DED25861C7CF}.Profile|x64.ActiveCfg = Release|x64

+		{9E8623BF-3469-3104-9674-DED25861C7CF}.Profile|x64.Build.0 = Release|x64

+		{9E8623BF-3469-3104-9674-DED25861C7CF}.Profile|x86.ActiveCfg = Release|x64

+		{9E8623BF-3469-3104-9674-DED25861C7CF}.Profile|x86.Build.0 = Release|x64

+		{9E8623BF-3469-3104-9674-DED25861C7CF}.Release|x64.ActiveCfg = Release|x64

+		{9E8623BF-3469-3104-9674-DED25861C7CF}.Release|x64.Build.0 = Release|x64

+		{9E8623BF-3469-3104-9674-DED25861C7CF}.Release|x86.ActiveCfg = Release|x64

 	EndGlobalSection

 	GlobalSection(SolutionProperties) = preSolution

 		HideSolutionNode = FALSE

@@ -540,18 +540,18 @@
 		{FBDCFF88-0CE1-43C3-B694-8F45946FAFE3} = {ED25C308-5BDB-43A7-BED6-C2C059FC2D7D}

 		{4EC107AB-89E8-4A0B-8366-B3E81085AE07} = {ED25C308-5BDB-43A7-BED6-C2C059FC2D7D}

 		{16E1EBC1-BB6B-4A82-A1A3-5A69AC8D58FE} = {ED25C308-5BDB-43A7-BED6-C2C059FC2D7D}

-		{83D86993-70D0-336A-84F1-8B952B8079DD} = {ABF69E39-C15E-4DAC-A27E-3480DE2C0CF0}

-		{CE414127-5528-30F5-9F5F-5AF9D2B8C04C} = {ABF69E39-C15E-4DAC-A27E-3480DE2C0CF0}

-		{D0817E36-BE58-3C95-BF64-748025994A26} = {ABF69E39-C15E-4DAC-A27E-3480DE2C0CF0}

-		{717F5DEC-42F8-378A-90E8-CF6E340D983B} = {ABF69E39-C15E-4DAC-A27E-3480DE2C0CF0}

-		{0B6F6E15-53DE-3B85-812B-825694B176F8} = {ABF69E39-C15E-4DAC-A27E-3480DE2C0CF0}

-		{EA1FDDD6-3BE8-3A92-B7F9-C8E032D7F1A2} = {ABF69E39-C15E-4DAC-A27E-3480DE2C0CF0}

-		{E86A9777-6C04-38BC-AC03-32F171BA9037} = {ABF69E39-C15E-4DAC-A27E-3480DE2C0CF0}

-		{4DE77359-5B7E-3EF3-AB38-9F4FF62D4935} = {ABF69E39-C15E-4DAC-A27E-3480DE2C0CF0}

-		{25CAC665-41EF-3770-B3AC-1C090D2AC7EA} = {ABF69E39-C15E-4DAC-A27E-3480DE2C0CF0}

-		{95DD96F6-D410-3911-B61A-C0AA0D6EBD2C} = {ABF69E39-C15E-4DAC-A27E-3480DE2C0CF0}

-		{D31F2A2D-3E6E-3541-A885-0D28DBE02FE8} = {ABF69E39-C15E-4DAC-A27E-3480DE2C0CF0}

-		{2F30A9CF-6135-3DB8-A898-CC2638959596} = {B408B98A-E888-4ECF-81E0-7A37A6854B17}

+		{59349DEB-AC96-335C-ACC6-8A92F774538A} = {ABF69E39-C15E-4DAC-A27E-3480DE2C0CF0}

+		{EFF5DE98-2741-3BD8-B049-D5647A223B5E} = {ABF69E39-C15E-4DAC-A27E-3480DE2C0CF0}

+		{983F7132-9747-3649-BF4B-87E69EE85F3E} = {ABF69E39-C15E-4DAC-A27E-3480DE2C0CF0}

+		{80AF261B-6B92-3143-9FCA-9BC59158D733} = {ABF69E39-C15E-4DAC-A27E-3480DE2C0CF0}

+		{3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E} = {ABF69E39-C15E-4DAC-A27E-3480DE2C0CF0}

+		{39DFA88C-1DC6-3E6F-A71F-7970C1B8E483} = {ABF69E39-C15E-4DAC-A27E-3480DE2C0CF0}

+		{481093B5-4EF0-391E-82FF-BB73CFCD3D51} = {B408B98A-E888-4ECF-81E0-7A37A6854B17}

+		{496AF3EC-139A-3EA0-8898-45C5704A5F38} = {ABF69E39-C15E-4DAC-A27E-3480DE2C0CF0}

+		{E0B79E0B-25BB-355B-9390-E9EC0047C632} = {ABF69E39-C15E-4DAC-A27E-3480DE2C0CF0}

+		{1262CB67-3BC7-35D5-9036-3D3B3A9DC3CE} = {ABF69E39-C15E-4DAC-A27E-3480DE2C0CF0}

+		{32C0DDEA-EC24-3465-B0F9-9DA187D45ED3} = {ABF69E39-C15E-4DAC-A27E-3480DE2C0CF0}

+		{9E8623BF-3469-3104-9674-DED25861C7CF} = {ABF69E39-C15E-4DAC-A27E-3480DE2C0CF0}

 	EndGlobalSection

 	GlobalSection(ExtensibilityGlobals) = postSolution

 		SolutionGuid = {4DF423D2-8425-48A7-9CEC-835C4C3CA957}

diff --git a/build/Visual Studio 15 2017 Win64/ALL_BUILD.vcxproj b/build/Visual Studio 15 2017 Win64/ALL_BUILD.vcxproj
index 835801b..3fac376 100644
--- a/build/Visual Studio 15 2017 Win64/ALL_BUILD.vcxproj
+++ b/build/Visual Studio 15 2017 Win64/ALL_BUILD.vcxproj
@@ -14,7 +14,7 @@
     </ProjectConfiguration>

   </ItemGroup>

   <PropertyGroup Label="Globals">

-    <ProjectGuid>{7E8CAA89-E15F-3F2B-BC05-B5A90F7E9532}</ProjectGuid>

+    <ProjectGuid>{22133560-41E2-34D0-9A00-A0BD4126F0AD}</ProjectGuid>

     <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>

     <Keyword>Win32Proj</Keyword>

     <Platform>x64</Platform>

@@ -68,115 +68,115 @@
   </ItemGroup>

   <ItemGroup>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\GLCompiler.vcxproj">

-      <Project>{087C5089-C3C6-3073-98B0-E99395FE4D6C}</Project>

+      <Project>{C52D9E3E-BDC2-372A-AE88-2EAC1CC3BD61}</Project>

       <Name>GLCompiler</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\OGLES2HelloAPI.vcxproj">

-      <Project>{1BA09198-7B91-3346-978B-22BF18453C70}</Project>

+      <Project>{88540F77-A8DE-31E2-88CC-467DEDD94554}</Project>

       <Name>OGLES2HelloAPI</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\ReactorLLVM.vcxproj">

-      <Project>{5D8ADDAC-197A-3A88-9FB1-61BB28BB5E65}</Project>

+      <Project>{EB784A1C-8E20-3066-9F9C-E4E88F11E1D4}</Project>

       <Name>ReactorLLVM</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\ReactorUnitTests.vcxproj">

-      <Project>{40879442-D4B0-3CFB-AE99-C21804BB16F8}</Project>

+      <Project>{C6F6B268-6880-33F4-9C28-AA86A54D187C}</Project>

       <Name>ReactorUnitTests</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\SPIRV-Tools.vcxproj">

-      <Project>{83D86993-70D0-336A-84F1-8B952B8079DD}</Project>

+      <Project>{59349DEB-AC96-335C-ACC6-8A92F774538A}</Project>

       <Name>SPIRV-Tools</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\link\SPIRV-Tools-link.vcxproj">

-      <Project>{F71D815F-E43A-34C5-92DE-15BF331D63CF}</Project>

+      <Project>{878BEAEA-CC28-3E97-B0F5-DB93FBC28A23}</Project>

       <Name>SPIRV-Tools-link</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\opt\SPIRV-Tools-opt.vcxproj">

-      <Project>{CE414127-5528-30F5-9F5F-5AF9D2B8C04C}</Project>

+      <Project>{EFF5DE98-2741-3BD8-B049-D5647A223B5E}</Project>

       <Name>SPIRV-Tools-opt</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\reduce\SPIRV-Tools-reduce.vcxproj">

-      <Project>{C5C298F8-C2B9-3D36-B183-02D4620C0C55}</Project>

+      <Project>{D1FC198E-1358-309D-9AD5-C26B47163E33}</Project>

       <Name>SPIRV-Tools-reduce</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\SPIRV-Tools-shared.vcxproj">

-      <Project>{E1A9E405-1306-3924-AE73-FFD7FB095685}</Project>

+      <Project>{CF43CEBC-9B44-3697-8262-5DC3F9AC532A}</Project>

       <Name>SPIRV-Tools-shared</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\SwiftShader.vcxproj">

-      <Project>{F78D4702-44DD-3644-AA44-21FC4646083D}</Project>

+      <Project>{E190CBF2-358E-3C1A-8DF7-19F43DF189C0}</Project>

       <Name>SwiftShader</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\gles-unittests.vcxproj">

-      <Project>{DCFE4B1B-B41D-36C7-B8C5-020A994E19AD}</Project>

+      <Project>{1D3CBAB0-D6DB-3F7A-B1BA-64A3671A5C9D}</Project>

       <Name>gles-unittests</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\libEGL.vcxproj">

-      <Project>{E4456327-6368-3F10-A47F-135E85F957A5}</Project>

+      <Project>{41C068CD-6F81-3756-8AF2-802940422DB5}</Project>

       <Name>libEGL</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\libGLES_CM.vcxproj">

-      <Project>{20E567A4-D618-3C07-9098-10309244270E}</Project>

+      <Project>{C445A398-B6AF-3693-B967-F4C052FCF81A}</Project>

       <Name>libGLES_CM</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\libGLESv2.vcxproj">

-      <Project>{3F8FD665-599B-3564-91A8-C0DAD96366E1}</Project>

+      <Project>{C9485675-5744-3E3A-A7A4-C88A805AFAF6}</Project>

       <Name>libGLESv2</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\libvk_swiftshader.vcxproj">

-      <Project>{DC7C91AF-3ABC-3480-B47B-A0F04B3327D4}</Project>

+      <Project>{C8E5841D-D2BC-3987-B6FB-95A1631B497D}</Project>

       <Name>libvk_swiftshader</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\llvm.vcxproj">

-      <Project>{2F30A9CF-6135-3DB8-A898-CC2638959596}</Project>

+      <Project>{481093B5-4EF0-391E-82FF-BB73CFCD3D51}</Project>

       <Name>llvm</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spirv-tools-pkg-config.vcxproj">

-      <Project>{FF67398E-CAA3-37B5-B167-781D03767AB1}</Project>

+      <Project>{FFE62FBF-2BD2-37B2-8883-5B2BA1894018}</Project>

       <Name>spirv-tools-pkg-config</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spirv-tools-shared-pkg-config.vcxproj">

-      <Project>{B2815DAA-B884-3519-8B30-8249FFED06CD}</Project>

+      <Project>{871BEB73-7406-3F9A-8A89-072702C81C2C}</Project>

       <Name>spirv-tools-shared-pkg-config</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\vk-unittests.vcxproj">

-      <Project>{CE5490D0-17ED-325D-BA5F-C3E88E7FEFD8}</Project>

+      <Project>{3A604DD1-0B96-3AA8-A111-377FD84E89F4}</Project>

       <Name>vk-unittests</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

diff --git a/build/Visual Studio 15 2017 Win64/GLCompiler.vcxproj b/build/Visual Studio 15 2017 Win64/GLCompiler.vcxproj
index 9a7ea12..9d4227a 100644
--- a/build/Visual Studio 15 2017 Win64/GLCompiler.vcxproj
+++ b/build/Visual Studio 15 2017 Win64/GLCompiler.vcxproj
@@ -14,7 +14,7 @@
     </ProjectConfiguration>

   </ItemGroup>

   <PropertyGroup Label="Globals">

-    <ProjectGuid>{087C5089-C3C6-3073-98B0-E99395FE4D6C}</ProjectGuid>

+    <ProjectGuid>{C52D9E3E-BDC2-372A-AE88-2EAC1CC3BD61}</ProjectGuid>

     <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>

     <Keyword>Win32Proj</Keyword>

     <Platform>x64</Platform>

@@ -52,11 +52,12 @@
   </PropertyGroup>

   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">

     <ClCompile>

-      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <AssemblerListingLocation>Debug/</AssemblerListingLocation>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <CompileAs>CompileAsCpp</CompileAs>

       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>

+      <DisableSpecificWarnings>4005;4018;4065;4141;4146;4244;4267;4291;4309;4624;4800;4838;5030;5038</DisableSpecificWarnings>

       <ExceptionHandling>Sync</ExceptionHandling>

       <InlineFunctionExpansion>Disabled</InlineFunctionExpansion>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

@@ -64,17 +65,19 @@
       <PrecompiledHeader>NotUsing</PrecompiledHeader>

       <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>

       <RuntimeTypeInfo>true</RuntimeTypeInfo>

+      <TreatSpecificWarningsAsErrors>4018;4471;4838;5038</TreatSpecificWarningsAsErrors>

+      <TreatWarningAsError>true</TreatWarningAsError>

       <UseFullPaths>false</UseFullPaths>

       <WarningLevel>Level3</WarningLevel>

-      <PreprocessorDefinitions>WIN32;_WINDOWS;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Debug";%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Debug";%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <ObjectFileName>$(IntDir)</ObjectFileName>

     </ClCompile>

     <ResourceCompile>

-      <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Debug\";%(PreprocessorDefinitions)</PreprocessorDefinitions>

-      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Debug\";%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

     </ResourceCompile>

     <Midl>

-      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <OutputDirectory>$(ProjectDir)/$(IntDir)</OutputDirectory>

       <HeaderFileName>%(Filename).h</HeaderFileName>

       <TypeLibraryName>%(Filename).tlb</TypeLibraryName>

@@ -87,9 +90,10 @@
   </ItemDefinitionGroup>

   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">

     <ClCompile>

-      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <AssemblerListingLocation>Release/</AssemblerListingLocation>

       <CompileAs>CompileAsCpp</CompileAs>

+      <DisableSpecificWarnings>4005;4018;4065;4141;4146;4244;4267;4291;4309;4624;4800;4838;5030;5038</DisableSpecificWarnings>

       <ExceptionHandling>Sync</ExceptionHandling>

       <InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

@@ -97,19 +101,21 @@
       <PrecompiledHeader>NotUsing</PrecompiledHeader>

       <RuntimeLibrary>MultiThreaded</RuntimeLibrary>

       <RuntimeTypeInfo>true</RuntimeTypeInfo>

+      <TreatSpecificWarningsAsErrors>4018;4471;4838;5038</TreatSpecificWarningsAsErrors>

+      <TreatWarningAsError>true</TreatWarningAsError>

       <UseFullPaths>false</UseFullPaths>

       <WarningLevel>Level3</WarningLevel>

-      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Release";%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Release";%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <ObjectFileName>$(IntDir)</ObjectFileName>

       <DebugInformationFormat>

       </DebugInformationFormat>

     </ClCompile>

     <ResourceCompile>

-      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Release\";%(PreprocessorDefinitions)</PreprocessorDefinitions>

-      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Release\";%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

     </ResourceCompile>

     <Midl>

-      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <OutputDirectory>$(ProjectDir)/$(IntDir)</OutputDirectory>

       <HeaderFileName>%(Filename).h</HeaderFileName>

       <TypeLibraryName>%(Filename).tlb</TypeLibraryName>

diff --git a/build/Visual Studio 15 2017 Win64/GLCompiler.vcxproj.filters b/build/Visual Studio 15 2017 Win64/GLCompiler.vcxproj.filters
index 0bd77b9..87f9aac 100644
--- a/build/Visual Studio 15 2017 Win64/GLCompiler.vcxproj.filters
+++ b/build/Visual Studio 15 2017 Win64/GLCompiler.vcxproj.filters
@@ -240,16 +240,16 @@
   </ItemGroup>

   <ItemGroup>

     <Filter Include="src">

-      <UniqueIdentifier>{DEA3D2D6-9E81-34FB-B37F-BFD0AF986E84}</UniqueIdentifier>

+      <UniqueIdentifier>{4CBE9297-1779-302D-AF01-5C79A790DED5}</UniqueIdentifier>

     </Filter>

     <Filter Include="src\OpenGL">

-      <UniqueIdentifier>{E5C7B40E-5A13-3879-96D8-1EE4034C9A56}</UniqueIdentifier>

+      <UniqueIdentifier>{F6D84093-2476-35F1-9A60-3807139DF63F}</UniqueIdentifier>

     </Filter>

     <Filter Include="src\OpenGL\compiler">

-      <UniqueIdentifier>{FDF84521-25A4-36D6-8078-AF961E6B1880}</UniqueIdentifier>

+      <UniqueIdentifier>{F3F4FB2E-6305-3A58-943D-721138922B19}</UniqueIdentifier>

     </Filter>

     <Filter Include="src\OpenGL\compiler\preprocessor">

-      <UniqueIdentifier>{059643EA-D15D-3648-A8F0-3EF20EAD0053}</UniqueIdentifier>

+      <UniqueIdentifier>{6D5E69E1-B243-3D9B-BD21-8A529AB2F2E1}</UniqueIdentifier>

     </Filter>

   </ItemGroup>

 </Project>

diff --git a/build/Visual Studio 15 2017 Win64/OGLES2HelloAPI.vcxproj b/build/Visual Studio 15 2017 Win64/OGLES2HelloAPI.vcxproj
index 8180879..c09f092 100644
--- a/build/Visual Studio 15 2017 Win64/OGLES2HelloAPI.vcxproj
+++ b/build/Visual Studio 15 2017 Win64/OGLES2HelloAPI.vcxproj
@@ -14,7 +14,7 @@
     </ProjectConfiguration>

   </ItemGroup>

   <PropertyGroup Label="Globals">

-    <ProjectGuid>{1BA09198-7B91-3346-978B-22BF18453C70}</ProjectGuid>

+    <ProjectGuid>{88540F77-A8DE-31E2-88CC-467DEDD94554}</ProjectGuid>

     <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>

     <Keyword>Win32Proj</Keyword>

     <Platform>x64</Platform>

@@ -61,6 +61,7 @@
       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <CompileAs>CompileAsCpp</CompileAs>

       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>

+      <DisableSpecificWarnings>4005;4018;4065;4141;4146;4244;4267;4291;4309;4624;4800;4838;5030;5038</DisableSpecificWarnings>

       <ExceptionHandling>Sync</ExceptionHandling>

       <InlineFunctionExpansion>Disabled</InlineFunctionExpansion>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

@@ -68,13 +69,15 @@
       <PrecompiledHeader>NotUsing</PrecompiledHeader>

       <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>

       <RuntimeTypeInfo>true</RuntimeTypeInfo>

+      <TreatSpecificWarningsAsErrors>4018;4471;4838;5038</TreatSpecificWarningsAsErrors>

+      <TreatWarningAsError>true</TreatWarningAsError>

       <UseFullPaths>false</UseFullPaths>

       <WarningLevel>Level3</WarningLevel>

-      <PreprocessorDefinitions>WIN32;_WINDOWS;GL_GLEXT_PROTOTYPES;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Debug";%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;GL_GLEXT_PROTOTYPES;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Debug";%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <ObjectFileName>$(IntDir)</ObjectFileName>

     </ClCompile>

     <ResourceCompile>

-      <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;GL_GLEXT_PROTOTYPES;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Debug\";%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;GL_GLEXT_PROTOTYPES;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Debug\";%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <AdditionalIncludeDirectories>$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

     </ResourceCompile>

     <Midl>

@@ -104,6 +107,7 @@
       <AdditionalIncludeDirectories>$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <AssemblerListingLocation>Release/</AssemblerListingLocation>

       <CompileAs>CompileAsCpp</CompileAs>

+      <DisableSpecificWarnings>4005;4018;4065;4141;4146;4244;4267;4291;4309;4624;4800;4838;5030;5038</DisableSpecificWarnings>

       <ExceptionHandling>Sync</ExceptionHandling>

       <InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

@@ -111,15 +115,17 @@
       <PrecompiledHeader>NotUsing</PrecompiledHeader>

       <RuntimeLibrary>MultiThreaded</RuntimeLibrary>

       <RuntimeTypeInfo>true</RuntimeTypeInfo>

+      <TreatSpecificWarningsAsErrors>4018;4471;4838;5038</TreatSpecificWarningsAsErrors>

+      <TreatWarningAsError>true</TreatWarningAsError>

       <UseFullPaths>false</UseFullPaths>

       <WarningLevel>Level3</WarningLevel>

-      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;GL_GLEXT_PROTOTYPES;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Release";%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;GL_GLEXT_PROTOTYPES;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Release";%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <ObjectFileName>$(IntDir)</ObjectFileName>

       <DebugInformationFormat>

       </DebugInformationFormat>

     </ClCompile>

     <ResourceCompile>

-      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;GL_GLEXT_PROTOTYPES;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Release\";%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;GL_GLEXT_PROTOTYPES;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Release\";%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <AdditionalIncludeDirectories>$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

     </ResourceCompile>

     <Midl>

@@ -149,37 +155,37 @@
   </ItemGroup>

   <ItemGroup>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\GLCompiler.vcxproj">

-      <Project>{087C5089-C3C6-3073-98B0-E99395FE4D6C}</Project>

+      <Project>{C52D9E3E-BDC2-372A-AE88-2EAC1CC3BD61}</Project>

       <Name>GLCompiler</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\ReactorLLVM.vcxproj">

-      <Project>{5D8ADDAC-197A-3A88-9FB1-61BB28BB5E65}</Project>

+      <Project>{EB784A1C-8E20-3066-9F9C-E4E88F11E1D4}</Project>

       <Name>ReactorLLVM</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\SwiftShader.vcxproj">

-      <Project>{F78D4702-44DD-3644-AA44-21FC4646083D}</Project>

+      <Project>{E190CBF2-358E-3C1A-8DF7-19F43DF189C0}</Project>

       <Name>SwiftShader</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\libEGL.vcxproj">

-      <Project>{E4456327-6368-3F10-A47F-135E85F957A5}</Project>

+      <Project>{41C068CD-6F81-3756-8AF2-802940422DB5}</Project>

       <Name>libEGL</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\libGLESv2.vcxproj">

-      <Project>{3F8FD665-599B-3564-91A8-C0DAD96366E1}</Project>

+      <Project>{C9485675-5744-3E3A-A7A4-C88A805AFAF6}</Project>

       <Name>libGLESv2</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\llvm.vcxproj">

-      <Project>{2F30A9CF-6135-3DB8-A898-CC2638959596}</Project>

+      <Project>{481093B5-4EF0-391E-82FF-BB73CFCD3D51}</Project>

       <Name>llvm</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

diff --git a/build/Visual Studio 15 2017 Win64/OGLES2HelloAPI.vcxproj.filters b/build/Visual Studio 15 2017 Win64/OGLES2HelloAPI.vcxproj.filters
index f7f4f61..3453804 100644
--- a/build/Visual Studio 15 2017 Win64/OGLES2HelloAPI.vcxproj.filters
+++ b/build/Visual Studio 15 2017 Win64/OGLES2HelloAPI.vcxproj.filters
@@ -7,7 +7,7 @@
   </ItemGroup>

   <ItemGroup>

     <Filter Include="Source Files">

-      <UniqueIdentifier>{31403CE8-892F-3DE6-A3E1-A936F5B54DE7}</UniqueIdentifier>

+      <UniqueIdentifier>{B11E6D1A-DF77-39FB-B209-A851B3357F47}</UniqueIdentifier>

     </Filter>

   </ItemGroup>

 </Project>

diff --git a/build/Visual Studio 15 2017 Win64/ReactorLLVM.vcxproj b/build/Visual Studio 15 2017 Win64/ReactorLLVM.vcxproj
index 458f73c..b2cbe0b 100644
--- a/build/Visual Studio 15 2017 Win64/ReactorLLVM.vcxproj
+++ b/build/Visual Studio 15 2017 Win64/ReactorLLVM.vcxproj
@@ -14,7 +14,7 @@
     </ProjectConfiguration>

   </ItemGroup>

   <PropertyGroup Label="Globals">

-    <ProjectGuid>{5D8ADDAC-197A-3A88-9FB1-61BB28BB5E65}</ProjectGuid>

+    <ProjectGuid>{EB784A1C-8E20-3066-9F9C-E4E88F11E1D4}</ProjectGuid>

     <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>

     <Keyword>Win32Proj</Keyword>

     <Platform>x64</Platform>

@@ -52,11 +52,12 @@
   </PropertyGroup>

   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">

     <ClCompile>

-      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <AssemblerListingLocation>Debug/</AssemblerListingLocation>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <CompileAs>CompileAsCpp</CompileAs>

       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>

+      <DisableSpecificWarnings>4005;4018;4065;4141;4146;4244;4267;4291;4309;4624;4800;4838;5030;5038</DisableSpecificWarnings>

       <ExceptionHandling>Sync</ExceptionHandling>

       <InlineFunctionExpansion>Disabled</InlineFunctionExpansion>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

@@ -64,17 +65,19 @@
       <PrecompiledHeader>NotUsing</PrecompiledHeader>

       <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>

       <RuntimeTypeInfo>true</RuntimeTypeInfo>

+      <TreatSpecificWarningsAsErrors>4018;4471;4838;5038</TreatSpecificWarningsAsErrors>

+      <TreatWarningAsError>true</TreatWarningAsError>

       <UseFullPaths>false</UseFullPaths>

       <WarningLevel>Level3</WarningLevel>

-      <PreprocessorDefinitions>WIN32;_WINDOWS;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Debug";%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Debug";%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <ObjectFileName>$(IntDir)</ObjectFileName>

     </ClCompile>

     <ResourceCompile>

-      <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Debug\";%(PreprocessorDefinitions)</PreprocessorDefinitions>

-      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Debug\";%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

     </ResourceCompile>

     <Midl>

-      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <OutputDirectory>$(ProjectDir)/$(IntDir)</OutputDirectory>

       <HeaderFileName>%(Filename).h</HeaderFileName>

       <TypeLibraryName>%(Filename).tlb</TypeLibraryName>

@@ -87,9 +90,10 @@
   </ItemDefinitionGroup>

   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">

     <ClCompile>

-      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <AssemblerListingLocation>Release/</AssemblerListingLocation>

       <CompileAs>CompileAsCpp</CompileAs>

+      <DisableSpecificWarnings>4005;4018;4065;4141;4146;4244;4267;4291;4309;4624;4800;4838;5030;5038</DisableSpecificWarnings>

       <ExceptionHandling>Sync</ExceptionHandling>

       <InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

@@ -97,19 +101,21 @@
       <PrecompiledHeader>NotUsing</PrecompiledHeader>

       <RuntimeLibrary>MultiThreaded</RuntimeLibrary>

       <RuntimeTypeInfo>true</RuntimeTypeInfo>

+      <TreatSpecificWarningsAsErrors>4018;4471;4838;5038</TreatSpecificWarningsAsErrors>

+      <TreatWarningAsError>true</TreatWarningAsError>

       <UseFullPaths>false</UseFullPaths>

       <WarningLevel>Level3</WarningLevel>

-      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Release";%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Release";%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <ObjectFileName>$(IntDir)</ObjectFileName>

       <DebugInformationFormat>

       </DebugInformationFormat>

     </ClCompile>

     <ResourceCompile>

-      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Release\";%(PreprocessorDefinitions)</PreprocessorDefinitions>

-      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Release\";%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

     </ResourceCompile>

     <Midl>

-      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <OutputDirectory>$(ProjectDir)/$(IntDir)</OutputDirectory>

       <HeaderFileName>%(Filename).h</HeaderFileName>

       <TypeLibraryName>%(Filename).tlb</TypeLibraryName>

@@ -122,6 +128,7 @@
   </ItemDefinitionGroup>

   <ItemGroup>

     <ClCompile Include="$(SolutionDir)src\Reactor\Reactor.cpp" />

+    <ClInclude Include="$(SolutionDir)src\Reactor\Reactor.hpp" />

     <ClCompile Include="$(SolutionDir)src\Reactor\LLVMReactor.cpp" />

     <ClInclude Include="$(SolutionDir)src\Reactor\LLVMReactor.hpp" />

     <ClCompile Include="$(SolutionDir)src\Reactor\LLVMReactorDebugInfo.cpp" />

@@ -137,7 +144,7 @@
   </ItemGroup>

   <ItemGroup>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\llvm.vcxproj">

-      <Project>{2F30A9CF-6135-3DB8-A898-CC2638959596}</Project>

+      <Project>{481093B5-4EF0-391E-82FF-BB73CFCD3D51}</Project>

       <Name>llvm</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

diff --git a/build/Visual Studio 15 2017 Win64/ReactorLLVM.vcxproj.filters b/build/Visual Studio 15 2017 Win64/ReactorLLVM.vcxproj.filters
index e31e252..c5fad1a 100644
--- a/build/Visual Studio 15 2017 Win64/ReactorLLVM.vcxproj.filters
+++ b/build/Visual Studio 15 2017 Win64/ReactorLLVM.vcxproj.filters
@@ -21,6 +21,9 @@
     </ClCompile>

   </ItemGroup>

   <ItemGroup>

+    <ClInclude Include="$(SolutionDir)src\Reactor\Reactor.hpp">

+      <Filter>src\Reactor</Filter>

+    </ClInclude>

     <ClInclude Include="$(SolutionDir)src\Reactor\LLVMReactor.hpp">

       <Filter>src\Reactor</Filter>

     </ClInclude>

@@ -45,10 +48,10 @@
   </ItemGroup>

   <ItemGroup>

     <Filter Include="src">

-      <UniqueIdentifier>{DEA3D2D6-9E81-34FB-B37F-BFD0AF986E84}</UniqueIdentifier>

+      <UniqueIdentifier>{4CBE9297-1779-302D-AF01-5C79A790DED5}</UniqueIdentifier>

     </Filter>

     <Filter Include="src\Reactor">

-      <UniqueIdentifier>{C4284086-7947-37B8-8969-2B6EDD9600E7}</UniqueIdentifier>

+      <UniqueIdentifier>{760E86DE-2EB4-31C6-BCA9-1FFD8B9D25C2}</UniqueIdentifier>

     </Filter>

   </ItemGroup>

 </Project>

diff --git a/build/Visual Studio 15 2017 Win64/ReactorUnitTests.vcxproj b/build/Visual Studio 15 2017 Win64/ReactorUnitTests.vcxproj
index 11fe9d1..bf38694 100644
--- a/build/Visual Studio 15 2017 Win64/ReactorUnitTests.vcxproj
+++ b/build/Visual Studio 15 2017 Win64/ReactorUnitTests.vcxproj
@@ -14,7 +14,7 @@
     </ProjectConfiguration>

   </ItemGroup>

   <PropertyGroup Label="Globals">

-    <ProjectGuid>{40879442-D4B0-3CFB-AE99-C21804BB16F8}</ProjectGuid>

+    <ProjectGuid>{C6F6B268-6880-33F4-9C28-AA86A54D187C}</ProjectGuid>

     <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>

     <Keyword>Win32Proj</Keyword>

     <Platform>x64</Platform>

@@ -61,6 +61,7 @@
       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <CompileAs>CompileAsCpp</CompileAs>

       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>

+      <DisableSpecificWarnings>4005;4018;4065;4141;4146;4244;4267;4291;4309;4624;4800;4838;5030;5038</DisableSpecificWarnings>

       <ExceptionHandling>Sync</ExceptionHandling>

       <InlineFunctionExpansion>Disabled</InlineFunctionExpansion>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

@@ -68,13 +69,15 @@
       <PrecompiledHeader>NotUsing</PrecompiledHeader>

       <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>

       <RuntimeTypeInfo>true</RuntimeTypeInfo>

+      <TreatSpecificWarningsAsErrors>4018;4471;4838;5038</TreatSpecificWarningsAsErrors>

+      <TreatWarningAsError>true</TreatWarningAsError>

       <UseFullPaths>false</UseFullPaths>

       <WarningLevel>Level3</WarningLevel>

-      <PreprocessorDefinitions>WIN32;_WINDOWS;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Debug";%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Debug";%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <ObjectFileName>$(IntDir)</ObjectFileName>

     </ClCompile>

     <ResourceCompile>

-      <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Debug\";%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Debug\";%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <AdditionalIncludeDirectories>$(SolutionDir)third_party\googletest\googletest\include;$(SolutionDir)third_party\googletest\googletest;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

     </ResourceCompile>

     <Midl>

@@ -104,6 +107,7 @@
       <AdditionalIncludeDirectories>$(SolutionDir)third_party\googletest\googletest\include;$(SolutionDir)third_party\googletest\googletest;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <AssemblerListingLocation>Release/</AssemblerListingLocation>

       <CompileAs>CompileAsCpp</CompileAs>

+      <DisableSpecificWarnings>4005;4018;4065;4141;4146;4244;4267;4291;4309;4624;4800;4838;5030;5038</DisableSpecificWarnings>

       <ExceptionHandling>Sync</ExceptionHandling>

       <InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

@@ -111,15 +115,17 @@
       <PrecompiledHeader>NotUsing</PrecompiledHeader>

       <RuntimeLibrary>MultiThreaded</RuntimeLibrary>

       <RuntimeTypeInfo>true</RuntimeTypeInfo>

+      <TreatSpecificWarningsAsErrors>4018;4471;4838;5038</TreatSpecificWarningsAsErrors>

+      <TreatWarningAsError>true</TreatWarningAsError>

       <UseFullPaths>false</UseFullPaths>

       <WarningLevel>Level3</WarningLevel>

-      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Release";%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Release";%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <ObjectFileName>$(IntDir)</ObjectFileName>

       <DebugInformationFormat>

       </DebugInformationFormat>

     </ClCompile>

     <ResourceCompile>

-      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Release\";%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Release\";%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <AdditionalIncludeDirectories>$(SolutionDir)third_party\googletest\googletest\include;$(SolutionDir)third_party\googletest\googletest;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

     </ResourceCompile>

     <Midl>

@@ -150,13 +156,13 @@
   </ItemGroup>

   <ItemGroup>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\ReactorLLVM.vcxproj">

-      <Project>{5D8ADDAC-197A-3A88-9FB1-61BB28BB5E65}</Project>

+      <Project>{EB784A1C-8E20-3066-9F9C-E4E88F11E1D4}</Project>

       <Name>ReactorLLVM</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\llvm.vcxproj">

-      <Project>{2F30A9CF-6135-3DB8-A898-CC2638959596}</Project>

+      <Project>{481093B5-4EF0-391E-82FF-BB73CFCD3D51}</Project>

       <Name>llvm</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

diff --git a/build/Visual Studio 15 2017 Win64/ReactorUnitTests.vcxproj.filters b/build/Visual Studio 15 2017 Win64/ReactorUnitTests.vcxproj.filters
index d885005..73b4b66 100644
--- a/build/Visual Studio 15 2017 Win64/ReactorUnitTests.vcxproj.filters
+++ b/build/Visual Studio 15 2017 Win64/ReactorUnitTests.vcxproj.filters
@@ -10,13 +10,13 @@
   </ItemGroup>

   <ItemGroup>

     <Filter Include="Source Files">

-      <UniqueIdentifier>{31403CE8-892F-3DE6-A3E1-A936F5B54DE7}</UniqueIdentifier>

+      <UniqueIdentifier>{B11E6D1A-DF77-39FB-B209-A851B3357F47}</UniqueIdentifier>

     </Filter>

     <Filter Include="src">

-      <UniqueIdentifier>{DEA3D2D6-9E81-34FB-B37F-BFD0AF986E84}</UniqueIdentifier>

+      <UniqueIdentifier>{4CBE9297-1779-302D-AF01-5C79A790DED5}</UniqueIdentifier>

     </Filter>

     <Filter Include="src\Reactor">

-      <UniqueIdentifier>{C4284086-7947-37B8-8969-2B6EDD9600E7}</UniqueIdentifier>

+      <UniqueIdentifier>{760E86DE-2EB4-31C6-BCA9-1FFD8B9D25C2}</UniqueIdentifier>

     </Filter>

   </ItemGroup>

 </Project>

diff --git a/build/Visual Studio 15 2017 Win64/SwiftShader.sln b/build/Visual Studio 15 2017 Win64/SwiftShader.sln
index 1df6a49..cc3a8c3 100644
--- a/build/Visual Studio 15 2017 Win64/SwiftShader.sln
+++ b/build/Visual Studio 15 2017 Win64/SwiftShader.sln
@@ -1,211 +1,211 @@
 Microsoft Visual Studio Solution File, Format Version 12.00

 # Visual Studio 15

-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "CMakePredefinedTargets", "CMakePredefinedTargets", "{1A596A7D-F115-34CE-A382-5D36B526C11B}"

+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "CMakePredefinedTargets", "CMakePredefinedTargets", "{5A8246FF-BC9A-3160-90F6-4485584AA181}"

 EndProject

-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Core", "Core", "{4C9FA437-B333-35C9-8EC1-464D4AEE5EB6}"

+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Core", "Core", "{5C9FFDD6-4CF8-3C7F-BF37-4BB599A8D6EF}"

 EndProject

-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "LLVM", "LLVM", "{8EE04402-74AA-35AA-B887-6B0696F8A987}"

+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "LLVM", "LLVM", "{0488B5E4-1DBE-38FD-B1F4-DB5705E2CD20}"

 EndProject

-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "OpenGL", "OpenGL", "{352DBDC2-B590-30BE-B680-F862C7590E58}"

+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "OpenGL", "OpenGL", "{116CE3E1-1241-38D2-8990-6798DA98243C}"

 EndProject

-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SPIRV-Tools build", "SPIRV-Tools build", "{C4650FD2-D2C6-3510-BB86-2831A872F9A1}"

+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SPIRV-Tools build", "SPIRV-Tools build", "{57CCB7BC-9D96-3E32-AA6F-3B7521C948E6}"

 EndProject

-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SPIRV-Tools libraries", "SPIRV-Tools libraries", "{CBE301FB-683E-33BB-B711-B08F35EA577D}"

+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SPIRV-Tools libraries", "SPIRV-Tools libraries", "{6E2B3475-2FBD-3637-9C98-FABCA56809D3}"

 EndProject

-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SPIRV-Tools utilities", "SPIRV-Tools utilities", "{96E07332-D34E-39D4-8704-3E7CC51BC5F8}"

+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SPIRV-Tools utilities", "SPIRV-Tools utilities", "{6D3379E6-A4B7-33F9-9DEE-DD4172B47202}"

 EndProject

-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Samples", "Samples", "{5CF9DF11-4E74-3FD4-8399-7D7C6DA23322}"

+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Samples", "Samples", "{229EA78E-E097-3D99-97A2-F7D6E89403F3}"

 EndProject

-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tests", "Tests", "{053A443D-DAE8-32B0-82CE-536552A21668}"

+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tests", "Tests", "{09C52637-9EB5-3A2C-B47E-0575BA706063}"

 EndProject

-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Vulkan", "Vulkan", "{3BFF0FBE-57A3-3F97-9366-E422D37F4618}"

+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Vulkan", "Vulkan", "{42C14F13-F5F1-311B-B800-81DEAB5B1D11}"

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ALL_BUILD", "ALL_BUILD.vcxproj", "{7E8CAA89-E15F-3F2B-BC05-B5A90F7E9532}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ALL_BUILD", "ALL_BUILD.vcxproj", "{22133560-41E2-34D0-9A00-A0BD4126F0AD}"

 	ProjectSection(ProjectDependencies) = postProject

-		{087C5089-C3C6-3073-98B0-E99395FE4D6C} = {087C5089-C3C6-3073-98B0-E99395FE4D6C}

-		{1BA09198-7B91-3346-978B-22BF18453C70} = {1BA09198-7B91-3346-978B-22BF18453C70}

-		{5D8ADDAC-197A-3A88-9FB1-61BB28BB5E65} = {5D8ADDAC-197A-3A88-9FB1-61BB28BB5E65}

-		{40879442-D4B0-3CFB-AE99-C21804BB16F8} = {40879442-D4B0-3CFB-AE99-C21804BB16F8}

-		{83D86993-70D0-336A-84F1-8B952B8079DD} = {83D86993-70D0-336A-84F1-8B952B8079DD}

-		{F71D815F-E43A-34C5-92DE-15BF331D63CF} = {F71D815F-E43A-34C5-92DE-15BF331D63CF}

-		{CE414127-5528-30F5-9F5F-5AF9D2B8C04C} = {CE414127-5528-30F5-9F5F-5AF9D2B8C04C}

-		{C5C298F8-C2B9-3D36-B183-02D4620C0C55} = {C5C298F8-C2B9-3D36-B183-02D4620C0C55}

-		{E1A9E405-1306-3924-AE73-FFD7FB095685} = {E1A9E405-1306-3924-AE73-FFD7FB095685}

-		{F78D4702-44DD-3644-AA44-21FC4646083D} = {F78D4702-44DD-3644-AA44-21FC4646083D}

-		{DCFE4B1B-B41D-36C7-B8C5-020A994E19AD} = {DCFE4B1B-B41D-36C7-B8C5-020A994E19AD}

-		{E4456327-6368-3F10-A47F-135E85F957A5} = {E4456327-6368-3F10-A47F-135E85F957A5}

-		{20E567A4-D618-3C07-9098-10309244270E} = {20E567A4-D618-3C07-9098-10309244270E}

-		{3F8FD665-599B-3564-91A8-C0DAD96366E1} = {3F8FD665-599B-3564-91A8-C0DAD96366E1}

-		{DC7C91AF-3ABC-3480-B47B-A0F04B3327D4} = {DC7C91AF-3ABC-3480-B47B-A0F04B3327D4}

-		{2F30A9CF-6135-3DB8-A898-CC2638959596} = {2F30A9CF-6135-3DB8-A898-CC2638959596}

-		{FF67398E-CAA3-37B5-B167-781D03767AB1} = {FF67398E-CAA3-37B5-B167-781D03767AB1}

-		{B2815DAA-B884-3519-8B30-8249FFED06CD} = {B2815DAA-B884-3519-8B30-8249FFED06CD}

-		{CE5490D0-17ED-325D-BA5F-C3E88E7FEFD8} = {CE5490D0-17ED-325D-BA5F-C3E88E7FEFD8}

+		{C52D9E3E-BDC2-372A-AE88-2EAC1CC3BD61} = {C52D9E3E-BDC2-372A-AE88-2EAC1CC3BD61}

+		{88540F77-A8DE-31E2-88CC-467DEDD94554} = {88540F77-A8DE-31E2-88CC-467DEDD94554}

+		{EB784A1C-8E20-3066-9F9C-E4E88F11E1D4} = {EB784A1C-8E20-3066-9F9C-E4E88F11E1D4}

+		{C6F6B268-6880-33F4-9C28-AA86A54D187C} = {C6F6B268-6880-33F4-9C28-AA86A54D187C}

+		{59349DEB-AC96-335C-ACC6-8A92F774538A} = {59349DEB-AC96-335C-ACC6-8A92F774538A}

+		{878BEAEA-CC28-3E97-B0F5-DB93FBC28A23} = {878BEAEA-CC28-3E97-B0F5-DB93FBC28A23}

+		{EFF5DE98-2741-3BD8-B049-D5647A223B5E} = {EFF5DE98-2741-3BD8-B049-D5647A223B5E}

+		{D1FC198E-1358-309D-9AD5-C26B47163E33} = {D1FC198E-1358-309D-9AD5-C26B47163E33}

+		{CF43CEBC-9B44-3697-8262-5DC3F9AC532A} = {CF43CEBC-9B44-3697-8262-5DC3F9AC532A}

+		{E190CBF2-358E-3C1A-8DF7-19F43DF189C0} = {E190CBF2-358E-3C1A-8DF7-19F43DF189C0}

+		{1D3CBAB0-D6DB-3F7A-B1BA-64A3671A5C9D} = {1D3CBAB0-D6DB-3F7A-B1BA-64A3671A5C9D}

+		{41C068CD-6F81-3756-8AF2-802940422DB5} = {41C068CD-6F81-3756-8AF2-802940422DB5}

+		{C445A398-B6AF-3693-B967-F4C052FCF81A} = {C445A398-B6AF-3693-B967-F4C052FCF81A}

+		{C9485675-5744-3E3A-A7A4-C88A805AFAF6} = {C9485675-5744-3E3A-A7A4-C88A805AFAF6}

+		{C8E5841D-D2BC-3987-B6FB-95A1631B497D} = {C8E5841D-D2BC-3987-B6FB-95A1631B497D}

+		{481093B5-4EF0-391E-82FF-BB73CFCD3D51} = {481093B5-4EF0-391E-82FF-BB73CFCD3D51}

+		{FFE62FBF-2BD2-37B2-8883-5B2BA1894018} = {FFE62FBF-2BD2-37B2-8883-5B2BA1894018}

+		{871BEB73-7406-3F9A-8A89-072702C81C2C} = {871BEB73-7406-3F9A-8A89-072702C81C2C}

+		{3A604DD1-0B96-3AA8-A111-377FD84E89F4} = {3A604DD1-0B96-3AA8-A111-377FD84E89F4}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GLCompiler", "GLCompiler.vcxproj", "{087C5089-C3C6-3073-98B0-E99395FE4D6C}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GLCompiler", "GLCompiler.vcxproj", "{C52D9E3E-BDC2-372A-AE88-2EAC1CC3BD61}"

 	ProjectSection(ProjectDependencies) = postProject

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "OGLES2HelloAPI", "OGLES2HelloAPI.vcxproj", "{1BA09198-7B91-3346-978B-22BF18453C70}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "OGLES2HelloAPI", "OGLES2HelloAPI.vcxproj", "{88540F77-A8DE-31E2-88CC-467DEDD94554}"

 	ProjectSection(ProjectDependencies) = postProject

-		{087C5089-C3C6-3073-98B0-E99395FE4D6C} = {087C5089-C3C6-3073-98B0-E99395FE4D6C}

-		{5D8ADDAC-197A-3A88-9FB1-61BB28BB5E65} = {5D8ADDAC-197A-3A88-9FB1-61BB28BB5E65}

-		{F78D4702-44DD-3644-AA44-21FC4646083D} = {F78D4702-44DD-3644-AA44-21FC4646083D}

-		{E4456327-6368-3F10-A47F-135E85F957A5} = {E4456327-6368-3F10-A47F-135E85F957A5}

-		{3F8FD665-599B-3564-91A8-C0DAD96366E1} = {3F8FD665-599B-3564-91A8-C0DAD96366E1}

-		{2F30A9CF-6135-3DB8-A898-CC2638959596} = {2F30A9CF-6135-3DB8-A898-CC2638959596}

+		{C52D9E3E-BDC2-372A-AE88-2EAC1CC3BD61} = {C52D9E3E-BDC2-372A-AE88-2EAC1CC3BD61}

+		{EB784A1C-8E20-3066-9F9C-E4E88F11E1D4} = {EB784A1C-8E20-3066-9F9C-E4E88F11E1D4}

+		{E190CBF2-358E-3C1A-8DF7-19F43DF189C0} = {E190CBF2-358E-3C1A-8DF7-19F43DF189C0}

+		{41C068CD-6F81-3756-8AF2-802940422DB5} = {41C068CD-6F81-3756-8AF2-802940422DB5}

+		{C9485675-5744-3E3A-A7A4-C88A805AFAF6} = {C9485675-5744-3E3A-A7A4-C88A805AFAF6}

+		{481093B5-4EF0-391E-82FF-BB73CFCD3D51} = {481093B5-4EF0-391E-82FF-BB73CFCD3D51}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ReactorLLVM", "ReactorLLVM.vcxproj", "{5D8ADDAC-197A-3A88-9FB1-61BB28BB5E65}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ReactorLLVM", "ReactorLLVM.vcxproj", "{EB784A1C-8E20-3066-9F9C-E4E88F11E1D4}"

 	ProjectSection(ProjectDependencies) = postProject

-		{2F30A9CF-6135-3DB8-A898-CC2638959596} = {2F30A9CF-6135-3DB8-A898-CC2638959596}

+		{481093B5-4EF0-391E-82FF-BB73CFCD3D51} = {481093B5-4EF0-391E-82FF-BB73CFCD3D51}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ReactorUnitTests", "ReactorUnitTests.vcxproj", "{40879442-D4B0-3CFB-AE99-C21804BB16F8}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ReactorUnitTests", "ReactorUnitTests.vcxproj", "{C6F6B268-6880-33F4-9C28-AA86A54D187C}"

 	ProjectSection(ProjectDependencies) = postProject

-		{5D8ADDAC-197A-3A88-9FB1-61BB28BB5E65} = {5D8ADDAC-197A-3A88-9FB1-61BB28BB5E65}

-		{2F30A9CF-6135-3DB8-A898-CC2638959596} = {2F30A9CF-6135-3DB8-A898-CC2638959596}

+		{EB784A1C-8E20-3066-9F9C-E4E88F11E1D4} = {EB784A1C-8E20-3066-9F9C-E4E88F11E1D4}

+		{481093B5-4EF0-391E-82FF-BB73CFCD3D51} = {481093B5-4EF0-391E-82FF-BB73CFCD3D51}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SPIRV-Tools", "third_party\SPIRV-Tools\source\SPIRV-Tools.vcxproj", "{83D86993-70D0-336A-84F1-8B952B8079DD}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SPIRV-Tools", "third_party\SPIRV-Tools\source\SPIRV-Tools.vcxproj", "{59349DEB-AC96-335C-ACC6-8A92F774538A}"

 	ProjectSection(ProjectDependencies) = postProject

-		{D0817E36-BE58-3C95-BF64-748025994A26} = {D0817E36-BE58-3C95-BF64-748025994A26}

-		{717F5DEC-42F8-378A-90E8-CF6E340D983B} = {717F5DEC-42F8-378A-90E8-CF6E340D983B}

-		{0B6F6E15-53DE-3B85-812B-825694B176F8} = {0B6F6E15-53DE-3B85-812B-825694B176F8}

+		{983F7132-9747-3649-BF4B-87E69EE85F3E} = {983F7132-9747-3649-BF4B-87E69EE85F3E}

+		{80AF261B-6B92-3143-9FCA-9BC59158D733} = {80AF261B-6B92-3143-9FCA-9BC59158D733}

+		{3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E} = {3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SPIRV-Tools-link", "third_party\SPIRV-Tools\source\link\SPIRV-Tools-link.vcxproj", "{F71D815F-E43A-34C5-92DE-15BF331D63CF}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SPIRV-Tools-link", "third_party\SPIRV-Tools\source\link\SPIRV-Tools-link.vcxproj", "{878BEAEA-CC28-3E97-B0F5-DB93FBC28A23}"

 	ProjectSection(ProjectDependencies) = postProject

-		{83D86993-70D0-336A-84F1-8B952B8079DD} = {83D86993-70D0-336A-84F1-8B952B8079DD}

-		{CE414127-5528-30F5-9F5F-5AF9D2B8C04C} = {CE414127-5528-30F5-9F5F-5AF9D2B8C04C}

+		{59349DEB-AC96-335C-ACC6-8A92F774538A} = {59349DEB-AC96-335C-ACC6-8A92F774538A}

+		{EFF5DE98-2741-3BD8-B049-D5647A223B5E} = {EFF5DE98-2741-3BD8-B049-D5647A223B5E}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SPIRV-Tools-opt", "third_party\SPIRV-Tools\source\opt\SPIRV-Tools-opt.vcxproj", "{CE414127-5528-30F5-9F5F-5AF9D2B8C04C}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SPIRV-Tools-opt", "third_party\SPIRV-Tools\source\opt\SPIRV-Tools-opt.vcxproj", "{EFF5DE98-2741-3BD8-B049-D5647A223B5E}"

 	ProjectSection(ProjectDependencies) = postProject

-		{83D86993-70D0-336A-84F1-8B952B8079DD} = {83D86993-70D0-336A-84F1-8B952B8079DD}

+		{59349DEB-AC96-335C-ACC6-8A92F774538A} = {59349DEB-AC96-335C-ACC6-8A92F774538A}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SPIRV-Tools-reduce", "third_party\SPIRV-Tools\source\reduce\SPIRV-Tools-reduce.vcxproj", "{C5C298F8-C2B9-3D36-B183-02D4620C0C55}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SPIRV-Tools-reduce", "third_party\SPIRV-Tools\source\reduce\SPIRV-Tools-reduce.vcxproj", "{D1FC198E-1358-309D-9AD5-C26B47163E33}"

 	ProjectSection(ProjectDependencies) = postProject

-		{83D86993-70D0-336A-84F1-8B952B8079DD} = {83D86993-70D0-336A-84F1-8B952B8079DD}

-		{CE414127-5528-30F5-9F5F-5AF9D2B8C04C} = {CE414127-5528-30F5-9F5F-5AF9D2B8C04C}

+		{59349DEB-AC96-335C-ACC6-8A92F774538A} = {59349DEB-AC96-335C-ACC6-8A92F774538A}

+		{EFF5DE98-2741-3BD8-B049-D5647A223B5E} = {EFF5DE98-2741-3BD8-B049-D5647A223B5E}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SPIRV-Tools-shared", "third_party\SPIRV-Tools\source\SPIRV-Tools-shared.vcxproj", "{E1A9E405-1306-3924-AE73-FFD7FB095685}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SPIRV-Tools-shared", "third_party\SPIRV-Tools\source\SPIRV-Tools-shared.vcxproj", "{CF43CEBC-9B44-3697-8262-5DC3F9AC532A}"

 	ProjectSection(ProjectDependencies) = postProject

-		{D0817E36-BE58-3C95-BF64-748025994A26} = {D0817E36-BE58-3C95-BF64-748025994A26}

-		{717F5DEC-42F8-378A-90E8-CF6E340D983B} = {717F5DEC-42F8-378A-90E8-CF6E340D983B}

-		{0B6F6E15-53DE-3B85-812B-825694B176F8} = {0B6F6E15-53DE-3B85-812B-825694B176F8}

+		{983F7132-9747-3649-BF4B-87E69EE85F3E} = {983F7132-9747-3649-BF4B-87E69EE85F3E}

+		{80AF261B-6B92-3143-9FCA-9BC59158D733} = {80AF261B-6B92-3143-9FCA-9BC59158D733}

+		{3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E} = {3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SwiftShader", "SwiftShader.vcxproj", "{F78D4702-44DD-3644-AA44-21FC4646083D}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SwiftShader", "SwiftShader.vcxproj", "{E190CBF2-358E-3C1A-8DF7-19F43DF189C0}"

 	ProjectSection(ProjectDependencies) = postProject

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_tables", "third_party\SPIRV-Tools\source\core_tables.vcxproj", "{D0817E36-BE58-3C95-BF64-748025994A26}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_tables", "third_party\SPIRV-Tools\source\core_tables.vcxproj", "{983F7132-9747-3649-BF4B-87E69EE85F3E}"

 	ProjectSection(ProjectDependencies) = postProject

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "enum_string_mapping", "third_party\SPIRV-Tools\source\enum_string_mapping.vcxproj", "{717F5DEC-42F8-378A-90E8-CF6E340D983B}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "enum_string_mapping", "third_party\SPIRV-Tools\source\enum_string_mapping.vcxproj", "{80AF261B-6B92-3143-9FCA-9BC59158D733}"

 	ProjectSection(ProjectDependencies) = postProject

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "extinst_tables", "third_party\SPIRV-Tools\source\extinst_tables.vcxproj", "{0B6F6E15-53DE-3B85-812B-825694B176F8}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "extinst_tables", "third_party\SPIRV-Tools\source\extinst_tables.vcxproj", "{3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E}"

 	ProjectSection(ProjectDependencies) = postProject

-		{E86A9777-6C04-38BC-AC03-32F171BA9037} = {E86A9777-6C04-38BC-AC03-32F171BA9037}

-		{EA1FDDD6-3BE8-3A92-B7F9-C8E032D7F1A2} = {EA1FDDD6-3BE8-3A92-B7F9-C8E032D7F1A2}

-		{4DE77359-5B7E-3EF3-AB38-9F4FF62D4935} = {4DE77359-5B7E-3EF3-AB38-9F4FF62D4935}

-		{25CAC665-41EF-3770-B3AC-1C090D2AC7EA} = {25CAC665-41EF-3770-B3AC-1C090D2AC7EA}

-		{95DD96F6-D410-3911-B61A-C0AA0D6EBD2C} = {95DD96F6-D410-3911-B61A-C0AA0D6EBD2C}

-		{D31F2A2D-3E6E-3541-A885-0D28DBE02FE8} = {D31F2A2D-3E6E-3541-A885-0D28DBE02FE8}

+		{39DFA88C-1DC6-3E6F-A71F-7970C1B8E483} = {39DFA88C-1DC6-3E6F-A71F-7970C1B8E483}

+		{496AF3EC-139A-3EA0-8898-45C5704A5F38} = {496AF3EC-139A-3EA0-8898-45C5704A5F38}

+		{E0B79E0B-25BB-355B-9390-E9EC0047C632} = {E0B79E0B-25BB-355B-9390-E9EC0047C632}

+		{1262CB67-3BC7-35D5-9036-3D3B3A9DC3CE} = {1262CB67-3BC7-35D5-9036-3D3B3A9DC3CE}

+		{32C0DDEA-EC24-3465-B0F9-9DA187D45ED3} = {32C0DDEA-EC24-3465-B0F9-9DA187D45ED3}

+		{9E8623BF-3469-3104-9674-DED25861C7CF} = {9E8623BF-3469-3104-9674-DED25861C7CF}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gles-unittests", "gles-unittests.vcxproj", "{DCFE4B1B-B41D-36C7-B8C5-020A994E19AD}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gles-unittests", "gles-unittests.vcxproj", "{1D3CBAB0-D6DB-3F7A-B1BA-64A3671A5C9D}"

 	ProjectSection(ProjectDependencies) = postProject

-		{087C5089-C3C6-3073-98B0-E99395FE4D6C} = {087C5089-C3C6-3073-98B0-E99395FE4D6C}

-		{5D8ADDAC-197A-3A88-9FB1-61BB28BB5E65} = {5D8ADDAC-197A-3A88-9FB1-61BB28BB5E65}

-		{F78D4702-44DD-3644-AA44-21FC4646083D} = {F78D4702-44DD-3644-AA44-21FC4646083D}

-		{E4456327-6368-3F10-A47F-135E85F957A5} = {E4456327-6368-3F10-A47F-135E85F957A5}

-		{3F8FD665-599B-3564-91A8-C0DAD96366E1} = {3F8FD665-599B-3564-91A8-C0DAD96366E1}

-		{2F30A9CF-6135-3DB8-A898-CC2638959596} = {2F30A9CF-6135-3DB8-A898-CC2638959596}

+		{C52D9E3E-BDC2-372A-AE88-2EAC1CC3BD61} = {C52D9E3E-BDC2-372A-AE88-2EAC1CC3BD61}

+		{EB784A1C-8E20-3066-9F9C-E4E88F11E1D4} = {EB784A1C-8E20-3066-9F9C-E4E88F11E1D4}

+		{E190CBF2-358E-3C1A-8DF7-19F43DF189C0} = {E190CBF2-358E-3C1A-8DF7-19F43DF189C0}

+		{41C068CD-6F81-3756-8AF2-802940422DB5} = {41C068CD-6F81-3756-8AF2-802940422DB5}

+		{C9485675-5744-3E3A-A7A4-C88A805AFAF6} = {C9485675-5744-3E3A-A7A4-C88A805AFAF6}

+		{481093B5-4EF0-391E-82FF-BB73CFCD3D51} = {481093B5-4EF0-391E-82FF-BB73CFCD3D51}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libEGL", "libEGL.vcxproj", "{E4456327-6368-3F10-A47F-135E85F957A5}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libEGL", "libEGL.vcxproj", "{41C068CD-6F81-3756-8AF2-802940422DB5}"

 	ProjectSection(ProjectDependencies) = postProject

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libGLES_CM", "libGLES_CM.vcxproj", "{20E567A4-D618-3C07-9098-10309244270E}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libGLES_CM", "libGLES_CM.vcxproj", "{C445A398-B6AF-3693-B967-F4C052FCF81A}"

 	ProjectSection(ProjectDependencies) = postProject

-		{087C5089-C3C6-3073-98B0-E99395FE4D6C} = {087C5089-C3C6-3073-98B0-E99395FE4D6C}

-		{5D8ADDAC-197A-3A88-9FB1-61BB28BB5E65} = {5D8ADDAC-197A-3A88-9FB1-61BB28BB5E65}

-		{F78D4702-44DD-3644-AA44-21FC4646083D} = {F78D4702-44DD-3644-AA44-21FC4646083D}

-		{2F30A9CF-6135-3DB8-A898-CC2638959596} = {2F30A9CF-6135-3DB8-A898-CC2638959596}

+		{C52D9E3E-BDC2-372A-AE88-2EAC1CC3BD61} = {C52D9E3E-BDC2-372A-AE88-2EAC1CC3BD61}

+		{EB784A1C-8E20-3066-9F9C-E4E88F11E1D4} = {EB784A1C-8E20-3066-9F9C-E4E88F11E1D4}

+		{E190CBF2-358E-3C1A-8DF7-19F43DF189C0} = {E190CBF2-358E-3C1A-8DF7-19F43DF189C0}

+		{481093B5-4EF0-391E-82FF-BB73CFCD3D51} = {481093B5-4EF0-391E-82FF-BB73CFCD3D51}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libGLESv2", "libGLESv2.vcxproj", "{3F8FD665-599B-3564-91A8-C0DAD96366E1}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libGLESv2", "libGLESv2.vcxproj", "{C9485675-5744-3E3A-A7A4-C88A805AFAF6}"

 	ProjectSection(ProjectDependencies) = postProject

-		{087C5089-C3C6-3073-98B0-E99395FE4D6C} = {087C5089-C3C6-3073-98B0-E99395FE4D6C}

-		{5D8ADDAC-197A-3A88-9FB1-61BB28BB5E65} = {5D8ADDAC-197A-3A88-9FB1-61BB28BB5E65}

-		{F78D4702-44DD-3644-AA44-21FC4646083D} = {F78D4702-44DD-3644-AA44-21FC4646083D}

-		{2F30A9CF-6135-3DB8-A898-CC2638959596} = {2F30A9CF-6135-3DB8-A898-CC2638959596}

+		{C52D9E3E-BDC2-372A-AE88-2EAC1CC3BD61} = {C52D9E3E-BDC2-372A-AE88-2EAC1CC3BD61}

+		{EB784A1C-8E20-3066-9F9C-E4E88F11E1D4} = {EB784A1C-8E20-3066-9F9C-E4E88F11E1D4}

+		{E190CBF2-358E-3C1A-8DF7-19F43DF189C0} = {E190CBF2-358E-3C1A-8DF7-19F43DF189C0}

+		{481093B5-4EF0-391E-82FF-BB73CFCD3D51} = {481093B5-4EF0-391E-82FF-BB73CFCD3D51}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libvk_swiftshader", "libvk_swiftshader.vcxproj", "{DC7C91AF-3ABC-3480-B47B-A0F04B3327D4}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libvk_swiftshader", "libvk_swiftshader.vcxproj", "{C8E5841D-D2BC-3987-B6FB-95A1631B497D}"

 	ProjectSection(ProjectDependencies) = postProject

-		{5D8ADDAC-197A-3A88-9FB1-61BB28BB5E65} = {5D8ADDAC-197A-3A88-9FB1-61BB28BB5E65}

-		{83D86993-70D0-336A-84F1-8B952B8079DD} = {83D86993-70D0-336A-84F1-8B952B8079DD}

-		{CE414127-5528-30F5-9F5F-5AF9D2B8C04C} = {CE414127-5528-30F5-9F5F-5AF9D2B8C04C}

-		{2F30A9CF-6135-3DB8-A898-CC2638959596} = {2F30A9CF-6135-3DB8-A898-CC2638959596}

+		{EB784A1C-8E20-3066-9F9C-E4E88F11E1D4} = {EB784A1C-8E20-3066-9F9C-E4E88F11E1D4}

+		{59349DEB-AC96-335C-ACC6-8A92F774538A} = {59349DEB-AC96-335C-ACC6-8A92F774538A}

+		{EFF5DE98-2741-3BD8-B049-D5647A223B5E} = {EFF5DE98-2741-3BD8-B049-D5647A223B5E}

+		{481093B5-4EF0-391E-82FF-BB73CFCD3D51} = {481093B5-4EF0-391E-82FF-BB73CFCD3D51}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "llvm", "llvm.vcxproj", "{2F30A9CF-6135-3DB8-A898-CC2638959596}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "llvm", "llvm.vcxproj", "{481093B5-4EF0-391E-82FF-BB73CFCD3D51}"

 	ProjectSection(ProjectDependencies) = postProject

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-build-version", "third_party\SPIRV-Tools\source\spirv-tools-build-version.vcxproj", "{02ED56AE-98AF-3FAB-BA26-B310F23DBCC7}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-build-version", "third_party\SPIRV-Tools\source\spirv-tools-build-version.vcxproj", "{E6C11FBC-3EC2-3A61-B2F4-EC03BE2CDC63}"

 	ProjectSection(ProjectDependencies) = postProject

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-debuginfo", "third_party\SPIRV-Tools\source\spirv-tools-debuginfo.vcxproj", "{E86A9777-6C04-38BC-AC03-32F171BA9037}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-header-DebugInfo", "third_party\SPIRV-Tools\source\spirv-tools-header-DebugInfo.vcxproj", "{39DFA88C-1DC6-3E6F-A71F-7970C1B8E483}"

 	ProjectSection(ProjectDependencies) = postProject

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-header-DebugInfo", "third_party\SPIRV-Tools\source\spirv-tools-header-DebugInfo.vcxproj", "{EA1FDDD6-3BE8-3A92-B7F9-C8E032D7F1A2}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-pkg-config", "third_party\SPIRV-Tools\spirv-tools-pkg-config.vcxproj", "{FFE62FBF-2BD2-37B2-8883-5B2BA1894018}"

 	ProjectSection(ProjectDependencies) = postProject

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-pkg-config", "third_party\SPIRV-Tools\spirv-tools-pkg-config.vcxproj", "{FF67398E-CAA3-37B5-B167-781D03767AB1}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-shared-pkg-config", "third_party\SPIRV-Tools\spirv-tools-shared-pkg-config.vcxproj", "{871BEB73-7406-3F9A-8A89-072702C81C2C}"

 	ProjectSection(ProjectDependencies) = postProject

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-shared-pkg-config", "third_party\SPIRV-Tools\spirv-tools-shared-pkg-config.vcxproj", "{B2815DAA-B884-3519-8B30-8249FFED06CD}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-vimsyntax", "third_party\SPIRV-Tools\source\spirv-tools-vimsyntax.vcxproj", "{AFB877FF-C23C-3ABD-A0C5-0F235F517330}"

 	ProjectSection(ProjectDependencies) = postProject

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-spv-amd-gcn-shader", "third_party\SPIRV-Tools\source\spirv-tools-spv-amd-gcn-shader.vcxproj", "{4DE77359-5B7E-3EF3-AB38-9F4FF62D4935}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spv-tools-debuginfo", "third_party\SPIRV-Tools\source\spv-tools-debuginfo.vcxproj", "{496AF3EC-139A-3EA0-8898-45C5704A5F38}"

 	ProjectSection(ProjectDependencies) = postProject

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-spv-amd-shader-ballot", "third_party\SPIRV-Tools\source\spirv-tools-spv-amd-shader-ballot.vcxproj", "{25CAC665-41EF-3770-B3AC-1C090D2AC7EA}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spv-tools-spv-amd-gs", "third_party\SPIRV-Tools\source\spv-tools-spv-amd-gs.vcxproj", "{E0B79E0B-25BB-355B-9390-E9EC0047C632}"

 	ProjectSection(ProjectDependencies) = postProject

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-spv-amd-shader-explicit-vertex-parameter", "third_party\SPIRV-Tools\source\spirv-tools-spv-amd-shader-explicit-vertex-parameter.vcxproj", "{95DD96F6-D410-3911-B61A-C0AA0D6EBD2C}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spv-tools-spv-amd-sb", "third_party\SPIRV-Tools\source\spv-tools-spv-amd-sb.vcxproj", "{1262CB67-3BC7-35D5-9036-3D3B3A9DC3CE}"

 	ProjectSection(ProjectDependencies) = postProject

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-spv-amd-shader-trinary-minmax", "third_party\SPIRV-Tools\source\spirv-tools-spv-amd-shader-trinary-minmax.vcxproj", "{D31F2A2D-3E6E-3541-A885-0D28DBE02FE8}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spv-tools-spv-amd-sevp", "third_party\SPIRV-Tools\source\spv-tools-spv-amd-sevp.vcxproj", "{32C0DDEA-EC24-3465-B0F9-9DA187D45ED3}"

 	ProjectSection(ProjectDependencies) = postProject

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-vimsyntax", "third_party\SPIRV-Tools\source\spirv-tools-vimsyntax.vcxproj", "{14222EB4-6C33-3982-8112-F31E05D6508B}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spv-tools-spv-amd-stm", "third_party\SPIRV-Tools\source\spv-tools-spv-amd-stm.vcxproj", "{9E8623BF-3469-3104-9674-DED25861C7CF}"

 	ProjectSection(ProjectDependencies) = postProject

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "vk-unittests", "vk-unittests.vcxproj", "{CE5490D0-17ED-325D-BA5F-C3E88E7FEFD8}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "vk-unittests", "vk-unittests.vcxproj", "{3A604DD1-0B96-3AA8-A111-377FD84E89F4}"

 	ProjectSection(ProjectDependencies) = postProject

-		{83D86993-70D0-336A-84F1-8B952B8079DD} = {83D86993-70D0-336A-84F1-8B952B8079DD}

+		{59349DEB-AC96-335C-ACC6-8A92F774538A} = {59349DEB-AC96-335C-ACC6-8A92F774538A}

 	EndProjectSection

 EndProject

 Global

@@ -214,155 +214,155 @@
 		Release|x64 = Release|x64

 	EndGlobalSection

 	GlobalSection(ProjectConfigurationPlatforms) = postSolution

-		{7E8CAA89-E15F-3F2B-BC05-B5A90F7E9532}.Debug|x64.ActiveCfg = Debug|x64

-		{7E8CAA89-E15F-3F2B-BC05-B5A90F7E9532}.Release|x64.ActiveCfg = Release|x64

-		{087C5089-C3C6-3073-98B0-E99395FE4D6C}.Debug|x64.ActiveCfg = Debug|x64

-		{087C5089-C3C6-3073-98B0-E99395FE4D6C}.Debug|x64.Build.0 = Debug|x64

-		{087C5089-C3C6-3073-98B0-E99395FE4D6C}.Release|x64.ActiveCfg = Release|x64

-		{087C5089-C3C6-3073-98B0-E99395FE4D6C}.Release|x64.Build.0 = Release|x64

-		{1BA09198-7B91-3346-978B-22BF18453C70}.Debug|x64.ActiveCfg = Debug|x64

-		{1BA09198-7B91-3346-978B-22BF18453C70}.Debug|x64.Build.0 = Debug|x64

-		{1BA09198-7B91-3346-978B-22BF18453C70}.Release|x64.ActiveCfg = Release|x64

-		{1BA09198-7B91-3346-978B-22BF18453C70}.Release|x64.Build.0 = Release|x64

-		{5D8ADDAC-197A-3A88-9FB1-61BB28BB5E65}.Debug|x64.ActiveCfg = Debug|x64

-		{5D8ADDAC-197A-3A88-9FB1-61BB28BB5E65}.Debug|x64.Build.0 = Debug|x64

-		{5D8ADDAC-197A-3A88-9FB1-61BB28BB5E65}.Release|x64.ActiveCfg = Release|x64

-		{5D8ADDAC-197A-3A88-9FB1-61BB28BB5E65}.Release|x64.Build.0 = Release|x64

-		{40879442-D4B0-3CFB-AE99-C21804BB16F8}.Debug|x64.ActiveCfg = Debug|x64

-		{40879442-D4B0-3CFB-AE99-C21804BB16F8}.Debug|x64.Build.0 = Debug|x64

-		{40879442-D4B0-3CFB-AE99-C21804BB16F8}.Release|x64.ActiveCfg = Release|x64

-		{40879442-D4B0-3CFB-AE99-C21804BB16F8}.Release|x64.Build.0 = Release|x64

-		{83D86993-70D0-336A-84F1-8B952B8079DD}.Debug|x64.ActiveCfg = Debug|x64

-		{83D86993-70D0-336A-84F1-8B952B8079DD}.Debug|x64.Build.0 = Debug|x64

-		{83D86993-70D0-336A-84F1-8B952B8079DD}.Release|x64.ActiveCfg = Release|x64

-		{83D86993-70D0-336A-84F1-8B952B8079DD}.Release|x64.Build.0 = Release|x64

-		{F71D815F-E43A-34C5-92DE-15BF331D63CF}.Debug|x64.ActiveCfg = Debug|x64

-		{F71D815F-E43A-34C5-92DE-15BF331D63CF}.Debug|x64.Build.0 = Debug|x64

-		{F71D815F-E43A-34C5-92DE-15BF331D63CF}.Release|x64.ActiveCfg = Release|x64

-		{F71D815F-E43A-34C5-92DE-15BF331D63CF}.Release|x64.Build.0 = Release|x64

-		{CE414127-5528-30F5-9F5F-5AF9D2B8C04C}.Debug|x64.ActiveCfg = Debug|x64

-		{CE414127-5528-30F5-9F5F-5AF9D2B8C04C}.Debug|x64.Build.0 = Debug|x64

-		{CE414127-5528-30F5-9F5F-5AF9D2B8C04C}.Release|x64.ActiveCfg = Release|x64

-		{CE414127-5528-30F5-9F5F-5AF9D2B8C04C}.Release|x64.Build.0 = Release|x64

-		{C5C298F8-C2B9-3D36-B183-02D4620C0C55}.Debug|x64.ActiveCfg = Debug|x64

-		{C5C298F8-C2B9-3D36-B183-02D4620C0C55}.Debug|x64.Build.0 = Debug|x64

-		{C5C298F8-C2B9-3D36-B183-02D4620C0C55}.Release|x64.ActiveCfg = Release|x64

-		{C5C298F8-C2B9-3D36-B183-02D4620C0C55}.Release|x64.Build.0 = Release|x64

-		{E1A9E405-1306-3924-AE73-FFD7FB095685}.Debug|x64.ActiveCfg = Debug|x64

-		{E1A9E405-1306-3924-AE73-FFD7FB095685}.Debug|x64.Build.0 = Debug|x64

-		{E1A9E405-1306-3924-AE73-FFD7FB095685}.Release|x64.ActiveCfg = Release|x64

-		{E1A9E405-1306-3924-AE73-FFD7FB095685}.Release|x64.Build.0 = Release|x64

-		{F78D4702-44DD-3644-AA44-21FC4646083D}.Debug|x64.ActiveCfg = Debug|x64

-		{F78D4702-44DD-3644-AA44-21FC4646083D}.Debug|x64.Build.0 = Debug|x64

-		{F78D4702-44DD-3644-AA44-21FC4646083D}.Release|x64.ActiveCfg = Release|x64

-		{F78D4702-44DD-3644-AA44-21FC4646083D}.Release|x64.Build.0 = Release|x64

-		{D0817E36-BE58-3C95-BF64-748025994A26}.Debug|x64.ActiveCfg = Debug|x64

-		{D0817E36-BE58-3C95-BF64-748025994A26}.Debug|x64.Build.0 = Debug|x64

-		{D0817E36-BE58-3C95-BF64-748025994A26}.Release|x64.ActiveCfg = Release|x64

-		{D0817E36-BE58-3C95-BF64-748025994A26}.Release|x64.Build.0 = Release|x64

-		{717F5DEC-42F8-378A-90E8-CF6E340D983B}.Debug|x64.ActiveCfg = Debug|x64

-		{717F5DEC-42F8-378A-90E8-CF6E340D983B}.Debug|x64.Build.0 = Debug|x64

-		{717F5DEC-42F8-378A-90E8-CF6E340D983B}.Release|x64.ActiveCfg = Release|x64

-		{717F5DEC-42F8-378A-90E8-CF6E340D983B}.Release|x64.Build.0 = Release|x64

-		{0B6F6E15-53DE-3B85-812B-825694B176F8}.Debug|x64.ActiveCfg = Debug|x64

-		{0B6F6E15-53DE-3B85-812B-825694B176F8}.Debug|x64.Build.0 = Debug|x64

-		{0B6F6E15-53DE-3B85-812B-825694B176F8}.Release|x64.ActiveCfg = Release|x64

-		{0B6F6E15-53DE-3B85-812B-825694B176F8}.Release|x64.Build.0 = Release|x64

-		{DCFE4B1B-B41D-36C7-B8C5-020A994E19AD}.Debug|x64.ActiveCfg = Debug|x64

-		{DCFE4B1B-B41D-36C7-B8C5-020A994E19AD}.Debug|x64.Build.0 = Debug|x64

-		{DCFE4B1B-B41D-36C7-B8C5-020A994E19AD}.Release|x64.ActiveCfg = Release|x64

-		{DCFE4B1B-B41D-36C7-B8C5-020A994E19AD}.Release|x64.Build.0 = Release|x64

-		{E4456327-6368-3F10-A47F-135E85F957A5}.Debug|x64.ActiveCfg = Debug|x64

-		{E4456327-6368-3F10-A47F-135E85F957A5}.Debug|x64.Build.0 = Debug|x64

-		{E4456327-6368-3F10-A47F-135E85F957A5}.Release|x64.ActiveCfg = Release|x64

-		{E4456327-6368-3F10-A47F-135E85F957A5}.Release|x64.Build.0 = Release|x64

-		{20E567A4-D618-3C07-9098-10309244270E}.Debug|x64.ActiveCfg = Debug|x64

-		{20E567A4-D618-3C07-9098-10309244270E}.Debug|x64.Build.0 = Debug|x64

-		{20E567A4-D618-3C07-9098-10309244270E}.Release|x64.ActiveCfg = Release|x64

-		{20E567A4-D618-3C07-9098-10309244270E}.Release|x64.Build.0 = Release|x64

-		{3F8FD665-599B-3564-91A8-C0DAD96366E1}.Debug|x64.ActiveCfg = Debug|x64

-		{3F8FD665-599B-3564-91A8-C0DAD96366E1}.Debug|x64.Build.0 = Debug|x64

-		{3F8FD665-599B-3564-91A8-C0DAD96366E1}.Release|x64.ActiveCfg = Release|x64

-		{3F8FD665-599B-3564-91A8-C0DAD96366E1}.Release|x64.Build.0 = Release|x64

-		{DC7C91AF-3ABC-3480-B47B-A0F04B3327D4}.Debug|x64.ActiveCfg = Debug|x64

-		{DC7C91AF-3ABC-3480-B47B-A0F04B3327D4}.Debug|x64.Build.0 = Debug|x64

-		{DC7C91AF-3ABC-3480-B47B-A0F04B3327D4}.Release|x64.ActiveCfg = Release|x64

-		{DC7C91AF-3ABC-3480-B47B-A0F04B3327D4}.Release|x64.Build.0 = Release|x64

-		{2F30A9CF-6135-3DB8-A898-CC2638959596}.Debug|x64.ActiveCfg = Debug|x64

-		{2F30A9CF-6135-3DB8-A898-CC2638959596}.Debug|x64.Build.0 = Debug|x64

-		{2F30A9CF-6135-3DB8-A898-CC2638959596}.Release|x64.ActiveCfg = Release|x64

-		{2F30A9CF-6135-3DB8-A898-CC2638959596}.Release|x64.Build.0 = Release|x64

-		{02ED56AE-98AF-3FAB-BA26-B310F23DBCC7}.Debug|x64.ActiveCfg = Debug|x64

-		{02ED56AE-98AF-3FAB-BA26-B310F23DBCC7}.Release|x64.ActiveCfg = Release|x64

-		{E86A9777-6C04-38BC-AC03-32F171BA9037}.Debug|x64.ActiveCfg = Debug|x64

-		{E86A9777-6C04-38BC-AC03-32F171BA9037}.Debug|x64.Build.0 = Debug|x64

-		{E86A9777-6C04-38BC-AC03-32F171BA9037}.Release|x64.ActiveCfg = Release|x64

-		{E86A9777-6C04-38BC-AC03-32F171BA9037}.Release|x64.Build.0 = Release|x64

-		{EA1FDDD6-3BE8-3A92-B7F9-C8E032D7F1A2}.Debug|x64.ActiveCfg = Debug|x64

-		{EA1FDDD6-3BE8-3A92-B7F9-C8E032D7F1A2}.Debug|x64.Build.0 = Debug|x64

-		{EA1FDDD6-3BE8-3A92-B7F9-C8E032D7F1A2}.Release|x64.ActiveCfg = Release|x64

-		{EA1FDDD6-3BE8-3A92-B7F9-C8E032D7F1A2}.Release|x64.Build.0 = Release|x64

-		{FF67398E-CAA3-37B5-B167-781D03767AB1}.Debug|x64.ActiveCfg = Debug|x64

-		{FF67398E-CAA3-37B5-B167-781D03767AB1}.Debug|x64.Build.0 = Debug|x64

-		{FF67398E-CAA3-37B5-B167-781D03767AB1}.Release|x64.ActiveCfg = Release|x64

-		{FF67398E-CAA3-37B5-B167-781D03767AB1}.Release|x64.Build.0 = Release|x64

-		{B2815DAA-B884-3519-8B30-8249FFED06CD}.Debug|x64.ActiveCfg = Debug|x64

-		{B2815DAA-B884-3519-8B30-8249FFED06CD}.Debug|x64.Build.0 = Debug|x64

-		{B2815DAA-B884-3519-8B30-8249FFED06CD}.Release|x64.ActiveCfg = Release|x64

-		{B2815DAA-B884-3519-8B30-8249FFED06CD}.Release|x64.Build.0 = Release|x64

-		{4DE77359-5B7E-3EF3-AB38-9F4FF62D4935}.Debug|x64.ActiveCfg = Debug|x64

-		{4DE77359-5B7E-3EF3-AB38-9F4FF62D4935}.Debug|x64.Build.0 = Debug|x64

-		{4DE77359-5B7E-3EF3-AB38-9F4FF62D4935}.Release|x64.ActiveCfg = Release|x64

-		{4DE77359-5B7E-3EF3-AB38-9F4FF62D4935}.Release|x64.Build.0 = Release|x64

-		{25CAC665-41EF-3770-B3AC-1C090D2AC7EA}.Debug|x64.ActiveCfg = Debug|x64

-		{25CAC665-41EF-3770-B3AC-1C090D2AC7EA}.Debug|x64.Build.0 = Debug|x64

-		{25CAC665-41EF-3770-B3AC-1C090D2AC7EA}.Release|x64.ActiveCfg = Release|x64

-		{25CAC665-41EF-3770-B3AC-1C090D2AC7EA}.Release|x64.Build.0 = Release|x64

-		{95DD96F6-D410-3911-B61A-C0AA0D6EBD2C}.Debug|x64.ActiveCfg = Debug|x64

-		{95DD96F6-D410-3911-B61A-C0AA0D6EBD2C}.Debug|x64.Build.0 = Debug|x64

-		{95DD96F6-D410-3911-B61A-C0AA0D6EBD2C}.Release|x64.ActiveCfg = Release|x64

-		{95DD96F6-D410-3911-B61A-C0AA0D6EBD2C}.Release|x64.Build.0 = Release|x64

-		{D31F2A2D-3E6E-3541-A885-0D28DBE02FE8}.Debug|x64.ActiveCfg = Debug|x64

-		{D31F2A2D-3E6E-3541-A885-0D28DBE02FE8}.Debug|x64.Build.0 = Debug|x64

-		{D31F2A2D-3E6E-3541-A885-0D28DBE02FE8}.Release|x64.ActiveCfg = Release|x64

-		{D31F2A2D-3E6E-3541-A885-0D28DBE02FE8}.Release|x64.Build.0 = Release|x64

-		{14222EB4-6C33-3982-8112-F31E05D6508B}.Debug|x64.ActiveCfg = Debug|x64

-		{14222EB4-6C33-3982-8112-F31E05D6508B}.Release|x64.ActiveCfg = Release|x64

-		{CE5490D0-17ED-325D-BA5F-C3E88E7FEFD8}.Debug|x64.ActiveCfg = Debug|x64

-		{CE5490D0-17ED-325D-BA5F-C3E88E7FEFD8}.Debug|x64.Build.0 = Debug|x64

-		{CE5490D0-17ED-325D-BA5F-C3E88E7FEFD8}.Release|x64.ActiveCfg = Release|x64

-		{CE5490D0-17ED-325D-BA5F-C3E88E7FEFD8}.Release|x64.Build.0 = Release|x64

+		{22133560-41E2-34D0-9A00-A0BD4126F0AD}.Debug|x64.ActiveCfg = Debug|x64

+		{22133560-41E2-34D0-9A00-A0BD4126F0AD}.Release|x64.ActiveCfg = Release|x64

+		{C52D9E3E-BDC2-372A-AE88-2EAC1CC3BD61}.Debug|x64.ActiveCfg = Debug|x64

+		{C52D9E3E-BDC2-372A-AE88-2EAC1CC3BD61}.Debug|x64.Build.0 = Debug|x64

+		{C52D9E3E-BDC2-372A-AE88-2EAC1CC3BD61}.Release|x64.ActiveCfg = Release|x64

+		{C52D9E3E-BDC2-372A-AE88-2EAC1CC3BD61}.Release|x64.Build.0 = Release|x64

+		{88540F77-A8DE-31E2-88CC-467DEDD94554}.Debug|x64.ActiveCfg = Debug|x64

+		{88540F77-A8DE-31E2-88CC-467DEDD94554}.Debug|x64.Build.0 = Debug|x64

+		{88540F77-A8DE-31E2-88CC-467DEDD94554}.Release|x64.ActiveCfg = Release|x64

+		{88540F77-A8DE-31E2-88CC-467DEDD94554}.Release|x64.Build.0 = Release|x64

+		{EB784A1C-8E20-3066-9F9C-E4E88F11E1D4}.Debug|x64.ActiveCfg = Debug|x64

+		{EB784A1C-8E20-3066-9F9C-E4E88F11E1D4}.Debug|x64.Build.0 = Debug|x64

+		{EB784A1C-8E20-3066-9F9C-E4E88F11E1D4}.Release|x64.ActiveCfg = Release|x64

+		{EB784A1C-8E20-3066-9F9C-E4E88F11E1D4}.Release|x64.Build.0 = Release|x64

+		{C6F6B268-6880-33F4-9C28-AA86A54D187C}.Debug|x64.ActiveCfg = Debug|x64

+		{C6F6B268-6880-33F4-9C28-AA86A54D187C}.Debug|x64.Build.0 = Debug|x64

+		{C6F6B268-6880-33F4-9C28-AA86A54D187C}.Release|x64.ActiveCfg = Release|x64

+		{C6F6B268-6880-33F4-9C28-AA86A54D187C}.Release|x64.Build.0 = Release|x64

+		{59349DEB-AC96-335C-ACC6-8A92F774538A}.Debug|x64.ActiveCfg = Debug|x64

+		{59349DEB-AC96-335C-ACC6-8A92F774538A}.Debug|x64.Build.0 = Debug|x64

+		{59349DEB-AC96-335C-ACC6-8A92F774538A}.Release|x64.ActiveCfg = Release|x64

+		{59349DEB-AC96-335C-ACC6-8A92F774538A}.Release|x64.Build.0 = Release|x64

+		{878BEAEA-CC28-3E97-B0F5-DB93FBC28A23}.Debug|x64.ActiveCfg = Debug|x64

+		{878BEAEA-CC28-3E97-B0F5-DB93FBC28A23}.Debug|x64.Build.0 = Debug|x64

+		{878BEAEA-CC28-3E97-B0F5-DB93FBC28A23}.Release|x64.ActiveCfg = Release|x64

+		{878BEAEA-CC28-3E97-B0F5-DB93FBC28A23}.Release|x64.Build.0 = Release|x64

+		{EFF5DE98-2741-3BD8-B049-D5647A223B5E}.Debug|x64.ActiveCfg = Debug|x64

+		{EFF5DE98-2741-3BD8-B049-D5647A223B5E}.Debug|x64.Build.0 = Debug|x64

+		{EFF5DE98-2741-3BD8-B049-D5647A223B5E}.Release|x64.ActiveCfg = Release|x64

+		{EFF5DE98-2741-3BD8-B049-D5647A223B5E}.Release|x64.Build.0 = Release|x64

+		{D1FC198E-1358-309D-9AD5-C26B47163E33}.Debug|x64.ActiveCfg = Debug|x64

+		{D1FC198E-1358-309D-9AD5-C26B47163E33}.Debug|x64.Build.0 = Debug|x64

+		{D1FC198E-1358-309D-9AD5-C26B47163E33}.Release|x64.ActiveCfg = Release|x64

+		{D1FC198E-1358-309D-9AD5-C26B47163E33}.Release|x64.Build.0 = Release|x64

+		{CF43CEBC-9B44-3697-8262-5DC3F9AC532A}.Debug|x64.ActiveCfg = Debug|x64

+		{CF43CEBC-9B44-3697-8262-5DC3F9AC532A}.Debug|x64.Build.0 = Debug|x64

+		{CF43CEBC-9B44-3697-8262-5DC3F9AC532A}.Release|x64.ActiveCfg = Release|x64

+		{CF43CEBC-9B44-3697-8262-5DC3F9AC532A}.Release|x64.Build.0 = Release|x64

+		{E190CBF2-358E-3C1A-8DF7-19F43DF189C0}.Debug|x64.ActiveCfg = Debug|x64

+		{E190CBF2-358E-3C1A-8DF7-19F43DF189C0}.Debug|x64.Build.0 = Debug|x64

+		{E190CBF2-358E-3C1A-8DF7-19F43DF189C0}.Release|x64.ActiveCfg = Release|x64

+		{E190CBF2-358E-3C1A-8DF7-19F43DF189C0}.Release|x64.Build.0 = Release|x64

+		{983F7132-9747-3649-BF4B-87E69EE85F3E}.Debug|x64.ActiveCfg = Debug|x64

+		{983F7132-9747-3649-BF4B-87E69EE85F3E}.Debug|x64.Build.0 = Debug|x64

+		{983F7132-9747-3649-BF4B-87E69EE85F3E}.Release|x64.ActiveCfg = Release|x64

+		{983F7132-9747-3649-BF4B-87E69EE85F3E}.Release|x64.Build.0 = Release|x64

+		{80AF261B-6B92-3143-9FCA-9BC59158D733}.Debug|x64.ActiveCfg = Debug|x64

+		{80AF261B-6B92-3143-9FCA-9BC59158D733}.Debug|x64.Build.0 = Debug|x64

+		{80AF261B-6B92-3143-9FCA-9BC59158D733}.Release|x64.ActiveCfg = Release|x64

+		{80AF261B-6B92-3143-9FCA-9BC59158D733}.Release|x64.Build.0 = Release|x64

+		{3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E}.Debug|x64.ActiveCfg = Debug|x64

+		{3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E}.Debug|x64.Build.0 = Debug|x64

+		{3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E}.Release|x64.ActiveCfg = Release|x64

+		{3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E}.Release|x64.Build.0 = Release|x64

+		{1D3CBAB0-D6DB-3F7A-B1BA-64A3671A5C9D}.Debug|x64.ActiveCfg = Debug|x64

+		{1D3CBAB0-D6DB-3F7A-B1BA-64A3671A5C9D}.Debug|x64.Build.0 = Debug|x64

+		{1D3CBAB0-D6DB-3F7A-B1BA-64A3671A5C9D}.Release|x64.ActiveCfg = Release|x64

+		{1D3CBAB0-D6DB-3F7A-B1BA-64A3671A5C9D}.Release|x64.Build.0 = Release|x64

+		{41C068CD-6F81-3756-8AF2-802940422DB5}.Debug|x64.ActiveCfg = Debug|x64

+		{41C068CD-6F81-3756-8AF2-802940422DB5}.Debug|x64.Build.0 = Debug|x64

+		{41C068CD-6F81-3756-8AF2-802940422DB5}.Release|x64.ActiveCfg = Release|x64

+		{41C068CD-6F81-3756-8AF2-802940422DB5}.Release|x64.Build.0 = Release|x64

+		{C445A398-B6AF-3693-B967-F4C052FCF81A}.Debug|x64.ActiveCfg = Debug|x64

+		{C445A398-B6AF-3693-B967-F4C052FCF81A}.Debug|x64.Build.0 = Debug|x64

+		{C445A398-B6AF-3693-B967-F4C052FCF81A}.Release|x64.ActiveCfg = Release|x64

+		{C445A398-B6AF-3693-B967-F4C052FCF81A}.Release|x64.Build.0 = Release|x64

+		{C9485675-5744-3E3A-A7A4-C88A805AFAF6}.Debug|x64.ActiveCfg = Debug|x64

+		{C9485675-5744-3E3A-A7A4-C88A805AFAF6}.Debug|x64.Build.0 = Debug|x64

+		{C9485675-5744-3E3A-A7A4-C88A805AFAF6}.Release|x64.ActiveCfg = Release|x64

+		{C9485675-5744-3E3A-A7A4-C88A805AFAF6}.Release|x64.Build.0 = Release|x64

+		{C8E5841D-D2BC-3987-B6FB-95A1631B497D}.Debug|x64.ActiveCfg = Debug|x64

+		{C8E5841D-D2BC-3987-B6FB-95A1631B497D}.Debug|x64.Build.0 = Debug|x64

+		{C8E5841D-D2BC-3987-B6FB-95A1631B497D}.Release|x64.ActiveCfg = Release|x64

+		{C8E5841D-D2BC-3987-B6FB-95A1631B497D}.Release|x64.Build.0 = Release|x64

+		{481093B5-4EF0-391E-82FF-BB73CFCD3D51}.Debug|x64.ActiveCfg = Debug|x64

+		{481093B5-4EF0-391E-82FF-BB73CFCD3D51}.Debug|x64.Build.0 = Debug|x64

+		{481093B5-4EF0-391E-82FF-BB73CFCD3D51}.Release|x64.ActiveCfg = Release|x64

+		{481093B5-4EF0-391E-82FF-BB73CFCD3D51}.Release|x64.Build.0 = Release|x64

+		{E6C11FBC-3EC2-3A61-B2F4-EC03BE2CDC63}.Debug|x64.ActiveCfg = Debug|x64

+		{E6C11FBC-3EC2-3A61-B2F4-EC03BE2CDC63}.Release|x64.ActiveCfg = Release|x64

+		{39DFA88C-1DC6-3E6F-A71F-7970C1B8E483}.Debug|x64.ActiveCfg = Debug|x64

+		{39DFA88C-1DC6-3E6F-A71F-7970C1B8E483}.Debug|x64.Build.0 = Debug|x64

+		{39DFA88C-1DC6-3E6F-A71F-7970C1B8E483}.Release|x64.ActiveCfg = Release|x64

+		{39DFA88C-1DC6-3E6F-A71F-7970C1B8E483}.Release|x64.Build.0 = Release|x64

+		{FFE62FBF-2BD2-37B2-8883-5B2BA1894018}.Debug|x64.ActiveCfg = Debug|x64

+		{FFE62FBF-2BD2-37B2-8883-5B2BA1894018}.Debug|x64.Build.0 = Debug|x64

+		{FFE62FBF-2BD2-37B2-8883-5B2BA1894018}.Release|x64.ActiveCfg = Release|x64

+		{FFE62FBF-2BD2-37B2-8883-5B2BA1894018}.Release|x64.Build.0 = Release|x64

+		{871BEB73-7406-3F9A-8A89-072702C81C2C}.Debug|x64.ActiveCfg = Debug|x64

+		{871BEB73-7406-3F9A-8A89-072702C81C2C}.Debug|x64.Build.0 = Debug|x64

+		{871BEB73-7406-3F9A-8A89-072702C81C2C}.Release|x64.ActiveCfg = Release|x64

+		{871BEB73-7406-3F9A-8A89-072702C81C2C}.Release|x64.Build.0 = Release|x64

+		{AFB877FF-C23C-3ABD-A0C5-0F235F517330}.Debug|x64.ActiveCfg = Debug|x64

+		{AFB877FF-C23C-3ABD-A0C5-0F235F517330}.Release|x64.ActiveCfg = Release|x64

+		{496AF3EC-139A-3EA0-8898-45C5704A5F38}.Debug|x64.ActiveCfg = Debug|x64

+		{496AF3EC-139A-3EA0-8898-45C5704A5F38}.Debug|x64.Build.0 = Debug|x64

+		{496AF3EC-139A-3EA0-8898-45C5704A5F38}.Release|x64.ActiveCfg = Release|x64

+		{496AF3EC-139A-3EA0-8898-45C5704A5F38}.Release|x64.Build.0 = Release|x64

+		{E0B79E0B-25BB-355B-9390-E9EC0047C632}.Debug|x64.ActiveCfg = Debug|x64

+		{E0B79E0B-25BB-355B-9390-E9EC0047C632}.Debug|x64.Build.0 = Debug|x64

+		{E0B79E0B-25BB-355B-9390-E9EC0047C632}.Release|x64.ActiveCfg = Release|x64

+		{E0B79E0B-25BB-355B-9390-E9EC0047C632}.Release|x64.Build.0 = Release|x64

+		{1262CB67-3BC7-35D5-9036-3D3B3A9DC3CE}.Debug|x64.ActiveCfg = Debug|x64

+		{1262CB67-3BC7-35D5-9036-3D3B3A9DC3CE}.Debug|x64.Build.0 = Debug|x64

+		{1262CB67-3BC7-35D5-9036-3D3B3A9DC3CE}.Release|x64.ActiveCfg = Release|x64

+		{1262CB67-3BC7-35D5-9036-3D3B3A9DC3CE}.Release|x64.Build.0 = Release|x64

+		{32C0DDEA-EC24-3465-B0F9-9DA187D45ED3}.Debug|x64.ActiveCfg = Debug|x64

+		{32C0DDEA-EC24-3465-B0F9-9DA187D45ED3}.Debug|x64.Build.0 = Debug|x64

+		{32C0DDEA-EC24-3465-B0F9-9DA187D45ED3}.Release|x64.ActiveCfg = Release|x64

+		{32C0DDEA-EC24-3465-B0F9-9DA187D45ED3}.Release|x64.Build.0 = Release|x64

+		{9E8623BF-3469-3104-9674-DED25861C7CF}.Debug|x64.ActiveCfg = Debug|x64

+		{9E8623BF-3469-3104-9674-DED25861C7CF}.Debug|x64.Build.0 = Debug|x64

+		{9E8623BF-3469-3104-9674-DED25861C7CF}.Release|x64.ActiveCfg = Release|x64

+		{9E8623BF-3469-3104-9674-DED25861C7CF}.Release|x64.Build.0 = Release|x64

+		{3A604DD1-0B96-3AA8-A111-377FD84E89F4}.Debug|x64.ActiveCfg = Debug|x64

+		{3A604DD1-0B96-3AA8-A111-377FD84E89F4}.Debug|x64.Build.0 = Debug|x64

+		{3A604DD1-0B96-3AA8-A111-377FD84E89F4}.Release|x64.ActiveCfg = Release|x64

+		{3A604DD1-0B96-3AA8-A111-377FD84E89F4}.Release|x64.Build.0 = Release|x64

 	EndGlobalSection

 	GlobalSection(NestedProjects) = preSolution

-		{7E8CAA89-E15F-3F2B-BC05-B5A90F7E9532} = {1A596A7D-F115-34CE-A382-5D36B526C11B}

-		{5D8ADDAC-197A-3A88-9FB1-61BB28BB5E65} = {4C9FA437-B333-35C9-8EC1-464D4AEE5EB6}

-		{F78D4702-44DD-3644-AA44-21FC4646083D} = {4C9FA437-B333-35C9-8EC1-464D4AEE5EB6}

-		{2F30A9CF-6135-3DB8-A898-CC2638959596} = {8EE04402-74AA-35AA-B887-6B0696F8A987}

-		{087C5089-C3C6-3073-98B0-E99395FE4D6C} = {352DBDC2-B590-30BE-B680-F862C7590E58}

-		{E4456327-6368-3F10-A47F-135E85F957A5} = {352DBDC2-B590-30BE-B680-F862C7590E58}

-		{20E567A4-D618-3C07-9098-10309244270E} = {352DBDC2-B590-30BE-B680-F862C7590E58}

-		{3F8FD665-599B-3564-91A8-C0DAD96366E1} = {352DBDC2-B590-30BE-B680-F862C7590E58}

-		{02ED56AE-98AF-3FAB-BA26-B310F23DBCC7} = {C4650FD2-D2C6-3510-BB86-2831A872F9A1}

-		{E86A9777-6C04-38BC-AC03-32F171BA9037} = {C4650FD2-D2C6-3510-BB86-2831A872F9A1}

-		{EA1FDDD6-3BE8-3A92-B7F9-C8E032D7F1A2} = {C4650FD2-D2C6-3510-BB86-2831A872F9A1}

-		{4DE77359-5B7E-3EF3-AB38-9F4FF62D4935} = {C4650FD2-D2C6-3510-BB86-2831A872F9A1}

-		{25CAC665-41EF-3770-B3AC-1C090D2AC7EA} = {C4650FD2-D2C6-3510-BB86-2831A872F9A1}

-		{95DD96F6-D410-3911-B61A-C0AA0D6EBD2C} = {C4650FD2-D2C6-3510-BB86-2831A872F9A1}

-		{D31F2A2D-3E6E-3541-A885-0D28DBE02FE8} = {C4650FD2-D2C6-3510-BB86-2831A872F9A1}

-		{83D86993-70D0-336A-84F1-8B952B8079DD} = {CBE301FB-683E-33BB-B711-B08F35EA577D}

-		{F71D815F-E43A-34C5-92DE-15BF331D63CF} = {CBE301FB-683E-33BB-B711-B08F35EA577D}

-		{CE414127-5528-30F5-9F5F-5AF9D2B8C04C} = {CBE301FB-683E-33BB-B711-B08F35EA577D}

-		{C5C298F8-C2B9-3D36-B183-02D4620C0C55} = {CBE301FB-683E-33BB-B711-B08F35EA577D}

-		{E1A9E405-1306-3924-AE73-FFD7FB095685} = {CBE301FB-683E-33BB-B711-B08F35EA577D}

-		{14222EB4-6C33-3982-8112-F31E05D6508B} = {96E07332-D34E-39D4-8704-3E7CC51BC5F8}

-		{1BA09198-7B91-3346-978B-22BF18453C70} = {5CF9DF11-4E74-3FD4-8399-7D7C6DA23322}

-		{40879442-D4B0-3CFB-AE99-C21804BB16F8} = {053A443D-DAE8-32B0-82CE-536552A21668}

-		{DCFE4B1B-B41D-36C7-B8C5-020A994E19AD} = {053A443D-DAE8-32B0-82CE-536552A21668}

-		{CE5490D0-17ED-325D-BA5F-C3E88E7FEFD8} = {053A443D-DAE8-32B0-82CE-536552A21668}

-		{DC7C91AF-3ABC-3480-B47B-A0F04B3327D4} = {3BFF0FBE-57A3-3F97-9366-E422D37F4618}

+		{22133560-41E2-34D0-9A00-A0BD4126F0AD} = {5A8246FF-BC9A-3160-90F6-4485584AA181}

+		{EB784A1C-8E20-3066-9F9C-E4E88F11E1D4} = {5C9FFDD6-4CF8-3C7F-BF37-4BB599A8D6EF}

+		{E190CBF2-358E-3C1A-8DF7-19F43DF189C0} = {5C9FFDD6-4CF8-3C7F-BF37-4BB599A8D6EF}

+		{481093B5-4EF0-391E-82FF-BB73CFCD3D51} = {0488B5E4-1DBE-38FD-B1F4-DB5705E2CD20}

+		{C52D9E3E-BDC2-372A-AE88-2EAC1CC3BD61} = {116CE3E1-1241-38D2-8990-6798DA98243C}

+		{41C068CD-6F81-3756-8AF2-802940422DB5} = {116CE3E1-1241-38D2-8990-6798DA98243C}

+		{C445A398-B6AF-3693-B967-F4C052FCF81A} = {116CE3E1-1241-38D2-8990-6798DA98243C}

+		{C9485675-5744-3E3A-A7A4-C88A805AFAF6} = {116CE3E1-1241-38D2-8990-6798DA98243C}

+		{E6C11FBC-3EC2-3A61-B2F4-EC03BE2CDC63} = {57CCB7BC-9D96-3E32-AA6F-3B7521C948E6}

+		{39DFA88C-1DC6-3E6F-A71F-7970C1B8E483} = {57CCB7BC-9D96-3E32-AA6F-3B7521C948E6}

+		{496AF3EC-139A-3EA0-8898-45C5704A5F38} = {57CCB7BC-9D96-3E32-AA6F-3B7521C948E6}

+		{E0B79E0B-25BB-355B-9390-E9EC0047C632} = {57CCB7BC-9D96-3E32-AA6F-3B7521C948E6}

+		{1262CB67-3BC7-35D5-9036-3D3B3A9DC3CE} = {57CCB7BC-9D96-3E32-AA6F-3B7521C948E6}

+		{32C0DDEA-EC24-3465-B0F9-9DA187D45ED3} = {57CCB7BC-9D96-3E32-AA6F-3B7521C948E6}

+		{9E8623BF-3469-3104-9674-DED25861C7CF} = {57CCB7BC-9D96-3E32-AA6F-3B7521C948E6}

+		{59349DEB-AC96-335C-ACC6-8A92F774538A} = {6E2B3475-2FBD-3637-9C98-FABCA56809D3}

+		{878BEAEA-CC28-3E97-B0F5-DB93FBC28A23} = {6E2B3475-2FBD-3637-9C98-FABCA56809D3}

+		{EFF5DE98-2741-3BD8-B049-D5647A223B5E} = {6E2B3475-2FBD-3637-9C98-FABCA56809D3}

+		{D1FC198E-1358-309D-9AD5-C26B47163E33} = {6E2B3475-2FBD-3637-9C98-FABCA56809D3}

+		{CF43CEBC-9B44-3697-8262-5DC3F9AC532A} = {6E2B3475-2FBD-3637-9C98-FABCA56809D3}

+		{AFB877FF-C23C-3ABD-A0C5-0F235F517330} = {6D3379E6-A4B7-33F9-9DEE-DD4172B47202}

+		{88540F77-A8DE-31E2-88CC-467DEDD94554} = {229EA78E-E097-3D99-97A2-F7D6E89403F3}

+		{C6F6B268-6880-33F4-9C28-AA86A54D187C} = {09C52637-9EB5-3A2C-B47E-0575BA706063}

+		{1D3CBAB0-D6DB-3F7A-B1BA-64A3671A5C9D} = {09C52637-9EB5-3A2C-B47E-0575BA706063}

+		{3A604DD1-0B96-3AA8-A111-377FD84E89F4} = {09C52637-9EB5-3A2C-B47E-0575BA706063}

+		{C8E5841D-D2BC-3987-B6FB-95A1631B497D} = {42C14F13-F5F1-311B-B800-81DEAB5B1D11}

 	EndGlobalSection

 	GlobalSection(ExtensibilityGlobals) = postSolution

-		SolutionGuid = {0C6990AD-9691-3BAE-90E0-7EB312E3D81B}

+		SolutionGuid = {71ECE391-8BC9-3E86-AB78-BB6A00B0FEAB}

 	EndGlobalSection

 	GlobalSection(ExtensibilityAddIns) = postSolution

 	EndGlobalSection

diff --git a/build/Visual Studio 15 2017 Win64/SwiftShader.vcxproj b/build/Visual Studio 15 2017 Win64/SwiftShader.vcxproj
index fa1cd97..34cf13d 100644
--- a/build/Visual Studio 15 2017 Win64/SwiftShader.vcxproj
+++ b/build/Visual Studio 15 2017 Win64/SwiftShader.vcxproj
@@ -14,7 +14,7 @@
     </ProjectConfiguration>

   </ItemGroup>

   <PropertyGroup Label="Globals">

-    <ProjectGuid>{F78D4702-44DD-3644-AA44-21FC4646083D}</ProjectGuid>

+    <ProjectGuid>{E190CBF2-358E-3C1A-8DF7-19F43DF189C0}</ProjectGuid>

     <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>

     <Keyword>Win32Proj</Keyword>

     <Platform>x64</Platform>

@@ -52,11 +52,12 @@
   </PropertyGroup>

   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">

     <ClCompile>

-      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <AssemblerListingLocation>Debug/</AssemblerListingLocation>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <CompileAs>CompileAsCpp</CompileAs>

       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>

+      <DisableSpecificWarnings>4005;4018;4065;4141;4146;4244;4267;4291;4309;4624;4800;4838;5030;5038</DisableSpecificWarnings>

       <ExceptionHandling>Sync</ExceptionHandling>

       <InlineFunctionExpansion>Disabled</InlineFunctionExpansion>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

@@ -64,17 +65,19 @@
       <PrecompiledHeader>NotUsing</PrecompiledHeader>

       <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>

       <RuntimeTypeInfo>true</RuntimeTypeInfo>

+      <TreatSpecificWarningsAsErrors>4018;4471;4838;5038</TreatSpecificWarningsAsErrors>

+      <TreatWarningAsError>true</TreatWarningAsError>

       <UseFullPaths>false</UseFullPaths>

       <WarningLevel>Level3</WarningLevel>

-      <PreprocessorDefinitions>WIN32;_WINDOWS;NO_SANITIZE_FUNCTION=;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Debug";%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;NO_SANITIZE_FUNCTION=;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Debug";%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <ObjectFileName>$(IntDir)</ObjectFileName>

     </ClCompile>

     <ResourceCompile>

-      <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;NO_SANITIZE_FUNCTION=;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Debug\";%(PreprocessorDefinitions)</PreprocessorDefinitions>

-      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;NO_SANITIZE_FUNCTION=;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Debug\";%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

     </ResourceCompile>

     <Midl>

-      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <OutputDirectory>$(ProjectDir)/$(IntDir)</OutputDirectory>

       <HeaderFileName>%(Filename).h</HeaderFileName>

       <TypeLibraryName>%(Filename).tlb</TypeLibraryName>

@@ -87,9 +90,10 @@
   </ItemDefinitionGroup>

   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">

     <ClCompile>

-      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <AssemblerListingLocation>Release/</AssemblerListingLocation>

       <CompileAs>CompileAsCpp</CompileAs>

+      <DisableSpecificWarnings>4005;4018;4065;4141;4146;4244;4267;4291;4309;4624;4800;4838;5030;5038</DisableSpecificWarnings>

       <ExceptionHandling>Sync</ExceptionHandling>

       <InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

@@ -97,19 +101,21 @@
       <PrecompiledHeader>NotUsing</PrecompiledHeader>

       <RuntimeLibrary>MultiThreaded</RuntimeLibrary>

       <RuntimeTypeInfo>true</RuntimeTypeInfo>

+      <TreatSpecificWarningsAsErrors>4018;4471;4838;5038</TreatSpecificWarningsAsErrors>

+      <TreatWarningAsError>true</TreatWarningAsError>

       <UseFullPaths>false</UseFullPaths>

       <WarningLevel>Level3</WarningLevel>

-      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;NO_SANITIZE_FUNCTION=;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Release";%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;NO_SANITIZE_FUNCTION=;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Release";%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <ObjectFileName>$(IntDir)</ObjectFileName>

       <DebugInformationFormat>

       </DebugInformationFormat>

     </ClCompile>

     <ResourceCompile>

-      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;NO_SANITIZE_FUNCTION=;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Release\";%(PreprocessorDefinitions)</PreprocessorDefinitions>

-      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;NO_SANITIZE_FUNCTION=;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Release\";%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

     </ResourceCompile>

     <Midl>

-      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <OutputDirectory>$(ProjectDir)/$(IntDir)</OutputDirectory>

       <HeaderFileName>%(Filename).h</HeaderFileName>

       <TypeLibraryName>%(Filename).tlb</TypeLibraryName>

diff --git a/build/Visual Studio 15 2017 Win64/SwiftShader.vcxproj.filters b/build/Visual Studio 15 2017 Win64/SwiftShader.vcxproj.filters
index 26c3577..0f59948 100644
--- a/build/Visual Studio 15 2017 Win64/SwiftShader.vcxproj.filters
+++ b/build/Visual Studio 15 2017 Win64/SwiftShader.vcxproj.filters
@@ -324,19 +324,19 @@
   </ItemGroup>

   <ItemGroup>

     <Filter Include="src">

-      <UniqueIdentifier>{DEA3D2D6-9E81-34FB-B37F-BFD0AF986E84}</UniqueIdentifier>

+      <UniqueIdentifier>{4CBE9297-1779-302D-AF01-5C79A790DED5}</UniqueIdentifier>

     </Filter>

     <Filter Include="src\Common">

-      <UniqueIdentifier>{FAA9C190-0FDA-392B-AF51-6AEAE07F8689}</UniqueIdentifier>

+      <UniqueIdentifier>{B0058071-2A97-3E9E-A00E-6FDE51114CE4}</UniqueIdentifier>

     </Filter>

     <Filter Include="src\Main">

-      <UniqueIdentifier>{7C2F423D-E0EE-30D3-A41D-69134C1279F5}</UniqueIdentifier>

+      <UniqueIdentifier>{46D02282-8ABB-32F5-8522-04CF7C13CE38}</UniqueIdentifier>

     </Filter>

     <Filter Include="src\Renderer">

-      <UniqueIdentifier>{878C3CD8-D100-3C7B-A7E8-6F03D0A37DA6}</UniqueIdentifier>

+      <UniqueIdentifier>{B15F1FA3-503E-37F7-A584-C589FC3DACFA}</UniqueIdentifier>

     </Filter>

     <Filter Include="src\Shader">

-      <UniqueIdentifier>{00302DB4-ECF6-3E33-B1FE-ABB5233346C0}</UniqueIdentifier>

+      <UniqueIdentifier>{B47A3AEA-B1E3-38BC-8D24-842B83F0DCFF}</UniqueIdentifier>

     </Filter>

   </ItemGroup>

 </Project>

diff --git a/build/Visual Studio 15 2017 Win64/gles-unittests.vcxproj b/build/Visual Studio 15 2017 Win64/gles-unittests.vcxproj
index 032e22a..363744d 100644
--- a/build/Visual Studio 15 2017 Win64/gles-unittests.vcxproj
+++ b/build/Visual Studio 15 2017 Win64/gles-unittests.vcxproj
@@ -14,7 +14,7 @@
     </ProjectConfiguration>

   </ItemGroup>

   <PropertyGroup Label="Globals">

-    <ProjectGuid>{DCFE4B1B-B41D-36C7-B8C5-020A994E19AD}</ProjectGuid>

+    <ProjectGuid>{1D3CBAB0-D6DB-3F7A-B1BA-64A3671A5C9D}</ProjectGuid>

     <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>

     <Keyword>Win32Proj</Keyword>

     <Platform>x64</Platform>

@@ -61,6 +61,7 @@
       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <CompileAs>CompileAsCpp</CompileAs>

       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>

+      <DisableSpecificWarnings>4005;4018;4065;4141;4146;4244;4267;4291;4309;4624;4800;4838;5030;5038</DisableSpecificWarnings>

       <ExceptionHandling>Sync</ExceptionHandling>

       <InlineFunctionExpansion>Disabled</InlineFunctionExpansion>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

@@ -68,13 +69,15 @@
       <PrecompiledHeader>NotUsing</PrecompiledHeader>

       <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>

       <RuntimeTypeInfo>true</RuntimeTypeInfo>

+      <TreatSpecificWarningsAsErrors>4018;4471;4838;5038</TreatSpecificWarningsAsErrors>

+      <TreatWarningAsError>true</TreatWarningAsError>

       <UseFullPaths>false</UseFullPaths>

       <WarningLevel>Level3</WarningLevel>

-      <PreprocessorDefinitions>WIN32;_WINDOWS;STANDALONE;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Debug";%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;STANDALONE;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Debug";%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <ObjectFileName>$(IntDir)</ObjectFileName>

     </ClCompile>

     <ResourceCompile>

-      <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;STANDALONE;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Debug\";%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;STANDALONE;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Debug\";%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <AdditionalIncludeDirectories>$(SolutionDir)third_party\googletest\googletest\include;$(SolutionDir)third_party\googletest\googlemock\include;$(SolutionDir)third_party\googletest\googletest;$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

     </ResourceCompile>

     <Midl>

@@ -104,6 +107,7 @@
       <AdditionalIncludeDirectories>$(SolutionDir)third_party\googletest\googletest\include;$(SolutionDir)third_party\googletest\googlemock\include;$(SolutionDir)third_party\googletest\googletest;$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <AssemblerListingLocation>Release/</AssemblerListingLocation>

       <CompileAs>CompileAsCpp</CompileAs>

+      <DisableSpecificWarnings>4005;4018;4065;4141;4146;4244;4267;4291;4309;4624;4800;4838;5030;5038</DisableSpecificWarnings>

       <ExceptionHandling>Sync</ExceptionHandling>

       <InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

@@ -111,15 +115,17 @@
       <PrecompiledHeader>NotUsing</PrecompiledHeader>

       <RuntimeLibrary>MultiThreaded</RuntimeLibrary>

       <RuntimeTypeInfo>true</RuntimeTypeInfo>

+      <TreatSpecificWarningsAsErrors>4018;4471;4838;5038</TreatSpecificWarningsAsErrors>

+      <TreatWarningAsError>true</TreatWarningAsError>

       <UseFullPaths>false</UseFullPaths>

       <WarningLevel>Level3</WarningLevel>

-      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;STANDALONE;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Release";%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;STANDALONE;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Release";%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <ObjectFileName>$(IntDir)</ObjectFileName>

       <DebugInformationFormat>

       </DebugInformationFormat>

     </ClCompile>

     <ResourceCompile>

-      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;STANDALONE;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Release\";%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;STANDALONE;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Release\";%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <AdditionalIncludeDirectories>$(SolutionDir)third_party\googletest\googletest\include;$(SolutionDir)third_party\googletest\googlemock\include;$(SolutionDir)third_party\googletest\googletest;$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

     </ResourceCompile>

     <Midl>

@@ -151,37 +157,37 @@
   </ItemGroup>

   <ItemGroup>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\GLCompiler.vcxproj">

-      <Project>{087C5089-C3C6-3073-98B0-E99395FE4D6C}</Project>

+      <Project>{C52D9E3E-BDC2-372A-AE88-2EAC1CC3BD61}</Project>

       <Name>GLCompiler</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\ReactorLLVM.vcxproj">

-      <Project>{5D8ADDAC-197A-3A88-9FB1-61BB28BB5E65}</Project>

+      <Project>{EB784A1C-8E20-3066-9F9C-E4E88F11E1D4}</Project>

       <Name>ReactorLLVM</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\SwiftShader.vcxproj">

-      <Project>{F78D4702-44DD-3644-AA44-21FC4646083D}</Project>

+      <Project>{E190CBF2-358E-3C1A-8DF7-19F43DF189C0}</Project>

       <Name>SwiftShader</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\libEGL.vcxproj">

-      <Project>{E4456327-6368-3F10-A47F-135E85F957A5}</Project>

+      <Project>{41C068CD-6F81-3756-8AF2-802940422DB5}</Project>

       <Name>libEGL</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\libGLESv2.vcxproj">

-      <Project>{3F8FD665-599B-3564-91A8-C0DAD96366E1}</Project>

+      <Project>{C9485675-5744-3E3A-A7A4-C88A805AFAF6}</Project>

       <Name>libGLESv2</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\llvm.vcxproj">

-      <Project>{2F30A9CF-6135-3DB8-A898-CC2638959596}</Project>

+      <Project>{481093B5-4EF0-391E-82FF-BB73CFCD3D51}</Project>

       <Name>llvm</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

diff --git a/build/Visual Studio 15 2017 Win64/gles-unittests.vcxproj.filters b/build/Visual Studio 15 2017 Win64/gles-unittests.vcxproj.filters
index e38b2c6..8439e9b 100644
--- a/build/Visual Studio 15 2017 Win64/gles-unittests.vcxproj.filters
+++ b/build/Visual Studio 15 2017 Win64/gles-unittests.vcxproj.filters
@@ -13,7 +13,7 @@
   </ItemGroup>

   <ItemGroup>

     <Filter Include="Source Files">

-      <UniqueIdentifier>{31403CE8-892F-3DE6-A3E1-A936F5B54DE7}</UniqueIdentifier>

+      <UniqueIdentifier>{B11E6D1A-DF77-39FB-B209-A851B3357F47}</UniqueIdentifier>

     </Filter>

   </ItemGroup>

 </Project>

diff --git a/build/Visual Studio 15 2017 Win64/libEGL.vcxproj b/build/Visual Studio 15 2017 Win64/libEGL.vcxproj
index c93cd2f..5fb1023 100644
--- a/build/Visual Studio 15 2017 Win64/libEGL.vcxproj
+++ b/build/Visual Studio 15 2017 Win64/libEGL.vcxproj
@@ -14,7 +14,7 @@
     </ProjectConfiguration>

   </ItemGroup>

   <PropertyGroup Label="Globals">

-    <ProjectGuid>{E4456327-6368-3F10-A47F-135E85F957A5}</ProjectGuid>

+    <ProjectGuid>{41C068CD-6F81-3756-8AF2-802940422DB5}</ProjectGuid>

     <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>

     <Keyword>Win32Proj</Keyword>

     <Platform>x64</Platform>

@@ -56,11 +56,12 @@
   </PropertyGroup>

   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">

     <ClCompile>

-      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <AssemblerListingLocation>Debug/</AssemblerListingLocation>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <CompileAs>CompileAsCpp</CompileAs>

       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>

+      <DisableSpecificWarnings>4005;4018;4065;4141;4146;4244;4267;4291;4309;4624;4800;4838;5030;5038</DisableSpecificWarnings>

       <ExceptionHandling>Sync</ExceptionHandling>

       <InlineFunctionExpansion>Disabled</InlineFunctionExpansion>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

@@ -68,17 +69,19 @@
       <PrecompiledHeader>NotUsing</PrecompiledHeader>

       <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>

       <RuntimeTypeInfo>true</RuntimeTypeInfo>

+      <TreatSpecificWarningsAsErrors>4018;4471;4838;5038</TreatSpecificWarningsAsErrors>

+      <TreatWarningAsError>true</TreatWarningAsError>

       <UseFullPaths>false</UseFullPaths>

       <WarningLevel>Level3</WarningLevel>

-      <PreprocessorDefinitions>WIN32;_WINDOWS;EGL_EGLEXT_PROTOTYPES; EGLAPI=; NO_SANITIZE_FUNCTION=;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Debug";libEGL_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;EGL_EGLEXT_PROTOTYPES; EGLAPI=; NO_SANITIZE_FUNCTION=;DEBUGGER_WAIT_DIALOG;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Debug";libEGL_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <ObjectFileName>$(IntDir)</ObjectFileName>

     </ClCompile>

     <ResourceCompile>

-      <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;EGL_EGLEXT_PROTOTYPES; EGLAPI=; NO_SANITIZE_FUNCTION=;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Debug\";libEGL_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

-      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;EGL_EGLEXT_PROTOTYPES; EGLAPI=; NO_SANITIZE_FUNCTION=;DEBUGGER_WAIT_DIALOG;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Debug\";libEGL_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

     </ResourceCompile>

     <Midl>

-      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <OutputDirectory>$(ProjectDir)/$(IntDir)</OutputDirectory>

       <HeaderFileName>%(Filename).h</HeaderFileName>

       <TypeLibraryName>%(Filename).tlb</TypeLibraryName>

@@ -120,9 +123,10 @@
   </ItemDefinitionGroup>

   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">

     <ClCompile>

-      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <AssemblerListingLocation>Release/</AssemblerListingLocation>

       <CompileAs>CompileAsCpp</CompileAs>

+      <DisableSpecificWarnings>4005;4018;4065;4141;4146;4244;4267;4291;4309;4624;4800;4838;5030;5038</DisableSpecificWarnings>

       <ExceptionHandling>Sync</ExceptionHandling>

       <InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

@@ -130,19 +134,21 @@
       <PrecompiledHeader>NotUsing</PrecompiledHeader>

       <RuntimeLibrary>MultiThreaded</RuntimeLibrary>

       <RuntimeTypeInfo>true</RuntimeTypeInfo>

+      <TreatSpecificWarningsAsErrors>4018;4471;4838;5038</TreatSpecificWarningsAsErrors>

+      <TreatWarningAsError>true</TreatWarningAsError>

       <UseFullPaths>false</UseFullPaths>

       <WarningLevel>Level3</WarningLevel>

-      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;EGL_EGLEXT_PROTOTYPES; EGLAPI=; NO_SANITIZE_FUNCTION=;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Release";libEGL_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;EGL_EGLEXT_PROTOTYPES; EGLAPI=; NO_SANITIZE_FUNCTION=;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Release";libEGL_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <ObjectFileName>$(IntDir)</ObjectFileName>

       <DebugInformationFormat>

       </DebugInformationFormat>

     </ClCompile>

     <ResourceCompile>

-      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;EGL_EGLEXT_PROTOTYPES; EGLAPI=; NO_SANITIZE_FUNCTION=;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Release\";libEGL_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

-      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;EGL_EGLEXT_PROTOTYPES; EGLAPI=; NO_SANITIZE_FUNCTION=;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Release\";libEGL_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

     </ResourceCompile>

     <Midl>

-      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <OutputDirectory>$(ProjectDir)/$(IntDir)</OutputDirectory>

       <HeaderFileName>%(Filename).h</HeaderFileName>

       <TypeLibraryName>%(Filename).tlb</TypeLibraryName>

diff --git a/build/Visual Studio 15 2017 Win64/libEGL.vcxproj.filters b/build/Visual Studio 15 2017 Win64/libEGL.vcxproj.filters
index 02c8239..0e17285 100644
--- a/build/Visual Studio 15 2017 Win64/libEGL.vcxproj.filters
+++ b/build/Visual Studio 15 2017 Win64/libEGL.vcxproj.filters
@@ -212,22 +212,22 @@
   </ItemGroup>

   <ItemGroup>

     <Filter Include="Header Files">

-      <UniqueIdentifier>{281137F3-F765-344F-81A1-5EAF572A72BC}</UniqueIdentifier>

+      <UniqueIdentifier>{BC358C2F-D735-3D9B-A16C-3BC6057ABC2B}</UniqueIdentifier>

     </Filter>

     <Filter Include="src">

-      <UniqueIdentifier>{DEA3D2D6-9E81-34FB-B37F-BFD0AF986E84}</UniqueIdentifier>

+      <UniqueIdentifier>{4CBE9297-1779-302D-AF01-5C79A790DED5}</UniqueIdentifier>

     </Filter>

     <Filter Include="src\Common">

-      <UniqueIdentifier>{FAA9C190-0FDA-392B-AF51-6AEAE07F8689}</UniqueIdentifier>

+      <UniqueIdentifier>{B0058071-2A97-3E9E-A00E-6FDE51114CE4}</UniqueIdentifier>

     </Filter>

     <Filter Include="src\OpenGL">

-      <UniqueIdentifier>{E5C7B40E-5A13-3879-96D8-1EE4034C9A56}</UniqueIdentifier>

+      <UniqueIdentifier>{F6D84093-2476-35F1-9A60-3807139DF63F}</UniqueIdentifier>

     </Filter>

     <Filter Include="src\OpenGL\common">

-      <UniqueIdentifier>{3ECA53F9-EAEB-3EFF-9CEA-43BDE5879E0F}</UniqueIdentifier>

+      <UniqueIdentifier>{218245B0-A71C-364A-B78F-B32FC161285B}</UniqueIdentifier>

     </Filter>

     <Filter Include="src\OpenGL\libEGL">

-      <UniqueIdentifier>{5A84514E-D613-36F4-B379-9C89C67E86EF}</UniqueIdentifier>

+      <UniqueIdentifier>{C72C08A6-12E1-3F20-A8FD-16F9E24659B8}</UniqueIdentifier>

     </Filter>

   </ItemGroup>

 </Project>

diff --git a/build/Visual Studio 15 2017 Win64/libGLES_CM.vcxproj b/build/Visual Studio 15 2017 Win64/libGLES_CM.vcxproj
index ab000f4..cbb1925 100644
--- a/build/Visual Studio 15 2017 Win64/libGLES_CM.vcxproj
+++ b/build/Visual Studio 15 2017 Win64/libGLES_CM.vcxproj
@@ -14,7 +14,7 @@
     </ProjectConfiguration>

   </ItemGroup>

   <PropertyGroup Label="Globals">

-    <ProjectGuid>{20E567A4-D618-3C07-9098-10309244270E}</ProjectGuid>

+    <ProjectGuid>{C445A398-B6AF-3693-B967-F4C052FCF81A}</ProjectGuid>

     <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>

     <Keyword>Win32Proj</Keyword>

     <Platform>x64</Platform>

@@ -56,11 +56,12 @@
   </PropertyGroup>

   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">

     <ClCompile>

-      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <AssemblerListingLocation>Debug/</AssemblerListingLocation>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <CompileAs>CompileAsCpp</CompileAs>

       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>

+      <DisableSpecificWarnings>4005;4018;4065;4141;4146;4244;4267;4291;4309;4624;4800;4838;5030;5038</DisableSpecificWarnings>

       <ExceptionHandling>Sync</ExceptionHandling>

       <InlineFunctionExpansion>Disabled</InlineFunctionExpansion>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

@@ -68,17 +69,19 @@
       <PrecompiledHeader>NotUsing</PrecompiledHeader>

       <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>

       <RuntimeTypeInfo>true</RuntimeTypeInfo>

+      <TreatSpecificWarningsAsErrors>4018;4471;4838;5038</TreatSpecificWarningsAsErrors>

+      <TreatWarningAsError>true</TreatWarningAsError>

       <UseFullPaths>false</UseFullPaths>

       <WarningLevel>Level3</WarningLevel>

-      <PreprocessorDefinitions>WIN32;_WINDOWS;GL_GLEXT_PROTOTYPES; EGLAPI=; GL_API=; GL_APICALL=; GLAPI=;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Debug";libGLES_CM_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;GL_GLEXT_PROTOTYPES; EGLAPI=; GL_API=; GL_APICALL=; GLAPI=;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Debug";libGLES_CM_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <ObjectFileName>$(IntDir)</ObjectFileName>

     </ClCompile>

     <ResourceCompile>

-      <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;GL_GLEXT_PROTOTYPES; EGLAPI=; GL_API=; GL_APICALL=; GLAPI=;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Debug\";libGLES_CM_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

-      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;GL_GLEXT_PROTOTYPES; EGLAPI=; GL_API=; GL_APICALL=; GLAPI=;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Debug\";libGLES_CM_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

     </ResourceCompile>

     <Midl>

-      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <OutputDirectory>$(ProjectDir)/$(IntDir)</OutputDirectory>

       <HeaderFileName>%(Filename).h</HeaderFileName>

       <TypeLibraryName>%(Filename).tlb</TypeLibraryName>

@@ -116,9 +119,10 @@
   </ItemDefinitionGroup>

   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">

     <ClCompile>

-      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <AssemblerListingLocation>Release/</AssemblerListingLocation>

       <CompileAs>CompileAsCpp</CompileAs>

+      <DisableSpecificWarnings>4005;4018;4065;4141;4146;4244;4267;4291;4309;4624;4800;4838;5030;5038</DisableSpecificWarnings>

       <ExceptionHandling>Sync</ExceptionHandling>

       <InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

@@ -126,19 +130,21 @@
       <PrecompiledHeader>NotUsing</PrecompiledHeader>

       <RuntimeLibrary>MultiThreaded</RuntimeLibrary>

       <RuntimeTypeInfo>true</RuntimeTypeInfo>

+      <TreatSpecificWarningsAsErrors>4018;4471;4838;5038</TreatSpecificWarningsAsErrors>

+      <TreatWarningAsError>true</TreatWarningAsError>

       <UseFullPaths>false</UseFullPaths>

       <WarningLevel>Level3</WarningLevel>

-      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;GL_GLEXT_PROTOTYPES; EGLAPI=; GL_API=; GL_APICALL=; GLAPI=;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Release";libGLES_CM_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;GL_GLEXT_PROTOTYPES; EGLAPI=; GL_API=; GL_APICALL=; GLAPI=;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Release";libGLES_CM_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <ObjectFileName>$(IntDir)</ObjectFileName>

       <DebugInformationFormat>

       </DebugInformationFormat>

     </ClCompile>

     <ResourceCompile>

-      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;GL_GLEXT_PROTOTYPES; EGLAPI=; GL_API=; GL_APICALL=; GLAPI=;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Release\";libGLES_CM_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

-      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;GL_GLEXT_PROTOTYPES; EGLAPI=; GL_API=; GL_APICALL=; GLAPI=;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Release\";libGLES_CM_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

     </ResourceCompile>

     <Midl>

-      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <OutputDirectory>$(ProjectDir)/$(IntDir)</OutputDirectory>

       <HeaderFileName>%(Filename).h</HeaderFileName>

       <TypeLibraryName>%(Filename).tlb</TypeLibraryName>

@@ -221,25 +227,25 @@
   </ItemGroup>

   <ItemGroup>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\GLCompiler.vcxproj">

-      <Project>{087C5089-C3C6-3073-98B0-E99395FE4D6C}</Project>

+      <Project>{C52D9E3E-BDC2-372A-AE88-2EAC1CC3BD61}</Project>

       <Name>GLCompiler</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\ReactorLLVM.vcxproj">

-      <Project>{5D8ADDAC-197A-3A88-9FB1-61BB28BB5E65}</Project>

+      <Project>{EB784A1C-8E20-3066-9F9C-E4E88F11E1D4}</Project>

       <Name>ReactorLLVM</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\SwiftShader.vcxproj">

-      <Project>{F78D4702-44DD-3644-AA44-21FC4646083D}</Project>

+      <Project>{E190CBF2-358E-3C1A-8DF7-19F43DF189C0}</Project>

       <Name>SwiftShader</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\llvm.vcxproj">

-      <Project>{2F30A9CF-6135-3DB8-A898-CC2638959596}</Project>

+      <Project>{481093B5-4EF0-391E-82FF-BB73CFCD3D51}</Project>

       <Name>llvm</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

diff --git a/build/Visual Studio 15 2017 Win64/libGLES_CM.vcxproj.filters b/build/Visual Studio 15 2017 Win64/libGLES_CM.vcxproj.filters
index df131fc..008ded8 100644
--- a/build/Visual Studio 15 2017 Win64/libGLES_CM.vcxproj.filters
+++ b/build/Visual Studio 15 2017 Win64/libGLES_CM.vcxproj.filters
@@ -137,22 +137,22 @@
   </ItemGroup>

   <ItemGroup>

     <Filter Include="Header Files">

-      <UniqueIdentifier>{281137F3-F765-344F-81A1-5EAF572A72BC}</UniqueIdentifier>

+      <UniqueIdentifier>{BC358C2F-D735-3D9B-A16C-3BC6057ABC2B}</UniqueIdentifier>

     </Filter>

     <Filter Include="src">

-      <UniqueIdentifier>{DEA3D2D6-9E81-34FB-B37F-BFD0AF986E84}</UniqueIdentifier>

+      <UniqueIdentifier>{4CBE9297-1779-302D-AF01-5C79A790DED5}</UniqueIdentifier>

     </Filter>

     <Filter Include="src\Common">

-      <UniqueIdentifier>{FAA9C190-0FDA-392B-AF51-6AEAE07F8689}</UniqueIdentifier>

+      <UniqueIdentifier>{B0058071-2A97-3E9E-A00E-6FDE51114CE4}</UniqueIdentifier>

     </Filter>

     <Filter Include="src\OpenGL">

-      <UniqueIdentifier>{E5C7B40E-5A13-3879-96D8-1EE4034C9A56}</UniqueIdentifier>

+      <UniqueIdentifier>{F6D84093-2476-35F1-9A60-3807139DF63F}</UniqueIdentifier>

     </Filter>

     <Filter Include="src\OpenGL\common">

-      <UniqueIdentifier>{3ECA53F9-EAEB-3EFF-9CEA-43BDE5879E0F}</UniqueIdentifier>

+      <UniqueIdentifier>{218245B0-A71C-364A-B78F-B32FC161285B}</UniqueIdentifier>

     </Filter>

     <Filter Include="src\OpenGL\libGLES_CM">

-      <UniqueIdentifier>{CE323C6F-53E8-3A35-9320-41CE8B702FEB}</UniqueIdentifier>

+      <UniqueIdentifier>{0576F6E7-652C-3C71-9A51-75A3615F5418}</UniqueIdentifier>

     </Filter>

   </ItemGroup>

 </Project>

diff --git a/build/Visual Studio 15 2017 Win64/libGLESv2.vcxproj b/build/Visual Studio 15 2017 Win64/libGLESv2.vcxproj
index 1ec9d0c..c7e84e7 100644
--- a/build/Visual Studio 15 2017 Win64/libGLESv2.vcxproj
+++ b/build/Visual Studio 15 2017 Win64/libGLESv2.vcxproj
@@ -14,7 +14,7 @@
     </ProjectConfiguration>

   </ItemGroup>

   <PropertyGroup Label="Globals">

-    <ProjectGuid>{3F8FD665-599B-3564-91A8-C0DAD96366E1}</ProjectGuid>

+    <ProjectGuid>{C9485675-5744-3E3A-A7A4-C88A805AFAF6}</ProjectGuid>

     <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>

     <Keyword>Win32Proj</Keyword>

     <Platform>x64</Platform>

@@ -56,11 +56,12 @@
   </PropertyGroup>

   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">

     <ClCompile>

-      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <AssemblerListingLocation>Debug/</AssemblerListingLocation>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <CompileAs>CompileAsCpp</CompileAs>

       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>

+      <DisableSpecificWarnings>4005;4018;4065;4141;4146;4244;4267;4291;4309;4624;4800;4838;5030;5038</DisableSpecificWarnings>

       <ExceptionHandling>Sync</ExceptionHandling>

       <InlineFunctionExpansion>Disabled</InlineFunctionExpansion>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

@@ -68,17 +69,19 @@
       <PrecompiledHeader>NotUsing</PrecompiledHeader>

       <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>

       <RuntimeTypeInfo>true</RuntimeTypeInfo>

+      <TreatSpecificWarningsAsErrors>4018;4471;4838;5038</TreatSpecificWarningsAsErrors>

+      <TreatWarningAsError>true</TreatWarningAsError>

       <UseFullPaths>false</UseFullPaths>

       <WarningLevel>Level3</WarningLevel>

-      <PreprocessorDefinitions>WIN32;_WINDOWS;GL_GLEXT_PROTOTYPES; GL_API=; GL_APICALL=; GLAPI=; NO_SANITIZE_FUNCTION=;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Debug";libGLESv2_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;GL_GLEXT_PROTOTYPES; GL_API=; GL_APICALL=; GLAPI=; NO_SANITIZE_FUNCTION=;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Debug";libGLESv2_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <ObjectFileName>$(IntDir)</ObjectFileName>

     </ClCompile>

     <ResourceCompile>

-      <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;GL_GLEXT_PROTOTYPES; GL_API=; GL_APICALL=; GLAPI=; NO_SANITIZE_FUNCTION=;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Debug\";libGLESv2_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

-      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;GL_GLEXT_PROTOTYPES; GL_API=; GL_APICALL=; GLAPI=; NO_SANITIZE_FUNCTION=;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Debug\";libGLESv2_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

     </ResourceCompile>

     <Midl>

-      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <OutputDirectory>$(ProjectDir)/$(IntDir)</OutputDirectory>

       <HeaderFileName>%(Filename).h</HeaderFileName>

       <TypeLibraryName>%(Filename).tlb</TypeLibraryName>

@@ -120,9 +123,10 @@
   </ItemDefinitionGroup>

   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">

     <ClCompile>

-      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <AssemblerListingLocation>Release/</AssemblerListingLocation>

       <CompileAs>CompileAsCpp</CompileAs>

+      <DisableSpecificWarnings>4005;4018;4065;4141;4146;4244;4267;4291;4309;4624;4800;4838;5030;5038</DisableSpecificWarnings>

       <ExceptionHandling>Sync</ExceptionHandling>

       <InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

@@ -130,19 +134,21 @@
       <PrecompiledHeader>NotUsing</PrecompiledHeader>

       <RuntimeLibrary>MultiThreaded</RuntimeLibrary>

       <RuntimeTypeInfo>true</RuntimeTypeInfo>

+      <TreatSpecificWarningsAsErrors>4018;4471;4838;5038</TreatSpecificWarningsAsErrors>

+      <TreatWarningAsError>true</TreatWarningAsError>

       <UseFullPaths>false</UseFullPaths>

       <WarningLevel>Level3</WarningLevel>

-      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;GL_GLEXT_PROTOTYPES; GL_API=; GL_APICALL=; GLAPI=; NO_SANITIZE_FUNCTION=;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Release";libGLESv2_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;GL_GLEXT_PROTOTYPES; GL_API=; GL_APICALL=; GLAPI=; NO_SANITIZE_FUNCTION=;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Release";libGLESv2_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <ObjectFileName>$(IntDir)</ObjectFileName>

       <DebugInformationFormat>

       </DebugInformationFormat>

     </ClCompile>

     <ResourceCompile>

-      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;GL_GLEXT_PROTOTYPES; GL_API=; GL_APICALL=; GLAPI=; NO_SANITIZE_FUNCTION=;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Release\";libGLESv2_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

-      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;GL_GLEXT_PROTOTYPES; GL_API=; GL_APICALL=; GLAPI=; NO_SANITIZE_FUNCTION=;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Release\";libGLESv2_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

     </ResourceCompile>

     <Midl>

-      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)src\OpenGL;$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <OutputDirectory>$(ProjectDir)/$(IntDir)</OutputDirectory>

       <HeaderFileName>%(Filename).h</HeaderFileName>

       <TypeLibraryName>%(Filename).tlb</TypeLibraryName>

@@ -247,25 +253,25 @@
   </ItemGroup>

   <ItemGroup>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\GLCompiler.vcxproj">

-      <Project>{087C5089-C3C6-3073-98B0-E99395FE4D6C}</Project>

+      <Project>{C52D9E3E-BDC2-372A-AE88-2EAC1CC3BD61}</Project>

       <Name>GLCompiler</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\ReactorLLVM.vcxproj">

-      <Project>{5D8ADDAC-197A-3A88-9FB1-61BB28BB5E65}</Project>

+      <Project>{EB784A1C-8E20-3066-9F9C-E4E88F11E1D4}</Project>

       <Name>ReactorLLVM</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\SwiftShader.vcxproj">

-      <Project>{F78D4702-44DD-3644-AA44-21FC4646083D}</Project>

+      <Project>{E190CBF2-358E-3C1A-8DF7-19F43DF189C0}</Project>

       <Name>SwiftShader</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\llvm.vcxproj">

-      <Project>{2F30A9CF-6135-3DB8-A898-CC2638959596}</Project>

+      <Project>{481093B5-4EF0-391E-82FF-BB73CFCD3D51}</Project>

       <Name>llvm</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

diff --git a/build/Visual Studio 15 2017 Win64/libGLESv2.vcxproj.filters b/build/Visual Studio 15 2017 Win64/libGLESv2.vcxproj.filters
index 48c7043..7c0dd21 100644
--- a/build/Visual Studio 15 2017 Win64/libGLESv2.vcxproj.filters
+++ b/build/Visual Studio 15 2017 Win64/libGLESv2.vcxproj.filters
@@ -191,22 +191,22 @@
   </ItemGroup>

   <ItemGroup>

     <Filter Include="Header Files">

-      <UniqueIdentifier>{281137F3-F765-344F-81A1-5EAF572A72BC}</UniqueIdentifier>

+      <UniqueIdentifier>{BC358C2F-D735-3D9B-A16C-3BC6057ABC2B}</UniqueIdentifier>

     </Filter>

     <Filter Include="src">

-      <UniqueIdentifier>{DEA3D2D6-9E81-34FB-B37F-BFD0AF986E84}</UniqueIdentifier>

+      <UniqueIdentifier>{4CBE9297-1779-302D-AF01-5C79A790DED5}</UniqueIdentifier>

     </Filter>

     <Filter Include="src\Common">

-      <UniqueIdentifier>{FAA9C190-0FDA-392B-AF51-6AEAE07F8689}</UniqueIdentifier>

+      <UniqueIdentifier>{B0058071-2A97-3E9E-A00E-6FDE51114CE4}</UniqueIdentifier>

     </Filter>

     <Filter Include="src\OpenGL">

-      <UniqueIdentifier>{E5C7B40E-5A13-3879-96D8-1EE4034C9A56}</UniqueIdentifier>

+      <UniqueIdentifier>{F6D84093-2476-35F1-9A60-3807139DF63F}</UniqueIdentifier>

     </Filter>

     <Filter Include="src\OpenGL\common">

-      <UniqueIdentifier>{3ECA53F9-EAEB-3EFF-9CEA-43BDE5879E0F}</UniqueIdentifier>

+      <UniqueIdentifier>{218245B0-A71C-364A-B78F-B32FC161285B}</UniqueIdentifier>

     </Filter>

     <Filter Include="src\OpenGL\libGLESv2">

-      <UniqueIdentifier>{5F55544D-7A02-3DCE-AC94-A0CE71F23508}</UniqueIdentifier>

+      <UniqueIdentifier>{EA613789-9669-3346-9D90-D819F007D2BD}</UniqueIdentifier>

     </Filter>

   </ItemGroup>

 </Project>

diff --git a/build/Visual Studio 15 2017 Win64/libvk_swiftshader.vcxproj b/build/Visual Studio 15 2017 Win64/libvk_swiftshader.vcxproj
index 78c03e3..fd05c89 100644
--- a/build/Visual Studio 15 2017 Win64/libvk_swiftshader.vcxproj
+++ b/build/Visual Studio 15 2017 Win64/libvk_swiftshader.vcxproj
@@ -14,7 +14,7 @@
     </ProjectConfiguration>

   </ItemGroup>

   <PropertyGroup Label="Globals">

-    <ProjectGuid>{DC7C91AF-3ABC-3480-B47B-A0F04B3327D4}</ProjectGuid>

+    <ProjectGuid>{C8E5841D-D2BC-3987-B6FB-95A1631B497D}</ProjectGuid>

     <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>

     <Keyword>Win32Proj</Keyword>

     <Platform>x64</Platform>

@@ -56,11 +56,12 @@
   </PropertyGroup>

   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">

     <ClCompile>

-      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;$(SolutionDir)third_party\SPIRV-Headers\include;$(SolutionDir)third_party\SPIRV-Tools\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\SPIRV-Headers\include;$(SolutionDir)third_party\SPIRV-Tools\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <AssemblerListingLocation>Debug/</AssemblerListingLocation>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <CompileAs>CompileAsCpp</CompileAs>

       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>

+      <DisableSpecificWarnings>4005;4018;4065;4141;4146;4244;4267;4291;4309;4624;4800;4838;5030;5038</DisableSpecificWarnings>

       <ExceptionHandling>Sync</ExceptionHandling>

       <InlineFunctionExpansion>Disabled</InlineFunctionExpansion>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

@@ -68,17 +69,19 @@
       <PrecompiledHeader>NotUsing</PrecompiledHeader>

       <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>

       <RuntimeTypeInfo>true</RuntimeTypeInfo>

+      <TreatSpecificWarningsAsErrors>4018;4471;4838;5038</TreatSpecificWarningsAsErrors>

+      <TreatWarningAsError>true</TreatWarningAsError>

       <UseFullPaths>false</UseFullPaths>

       <WarningLevel>Level3</WarningLevel>

-      <PreprocessorDefinitions>VK_EXPORT=;WIN32;_WINDOWS;NO_SANITIZE_FUNCTION=;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Debug";libvk_swiftshader_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;VK_EXPORT=;NO_SANITIZE_FUNCTION=;DEBUGGER_WAIT_DIALOG;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Debug";libvk_swiftshader_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <ObjectFileName>$(IntDir)</ObjectFileName>

     </ClCompile>

     <ResourceCompile>

-      <PreprocessorDefinitions>VK_EXPORT=;WIN32;_DEBUG;_WINDOWS;NO_SANITIZE_FUNCTION=;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Debug\";libvk_swiftshader_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

-      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;$(SolutionDir)third_party\SPIRV-Headers\include;$(SolutionDir)third_party\SPIRV-Tools\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;VK_EXPORT=;NO_SANITIZE_FUNCTION=;DEBUGGER_WAIT_DIALOG;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Debug\";libvk_swiftshader_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\SPIRV-Headers\include;$(SolutionDir)third_party\SPIRV-Tools\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

     </ResourceCompile>

     <Midl>

-      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;$(SolutionDir)third_party\SPIRV-Headers\include;$(SolutionDir)third_party\SPIRV-Tools\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\SPIRV-Headers\include;$(SolutionDir)third_party\SPIRV-Tools\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <OutputDirectory>$(ProjectDir)/$(IntDir)</OutputDirectory>

       <HeaderFileName>%(Filename).h</HeaderFileName>

       <TypeLibraryName>%(Filename).tlb</TypeLibraryName>

@@ -120,9 +123,10 @@
   </ItemDefinitionGroup>

   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">

     <ClCompile>

-      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;$(SolutionDir)third_party\SPIRV-Headers\include;$(SolutionDir)third_party\SPIRV-Tools\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\SPIRV-Headers\include;$(SolutionDir)third_party\SPIRV-Tools\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <AssemblerListingLocation>Release/</AssemblerListingLocation>

       <CompileAs>CompileAsCpp</CompileAs>

+      <DisableSpecificWarnings>4005;4018;4065;4141;4146;4244;4267;4291;4309;4624;4800;4838;5030;5038</DisableSpecificWarnings>

       <ExceptionHandling>Sync</ExceptionHandling>

       <InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

@@ -130,19 +134,21 @@
       <PrecompiledHeader>NotUsing</PrecompiledHeader>

       <RuntimeLibrary>MultiThreaded</RuntimeLibrary>

       <RuntimeTypeInfo>true</RuntimeTypeInfo>

+      <TreatSpecificWarningsAsErrors>4018;4471;4838;5038</TreatSpecificWarningsAsErrors>

+      <TreatWarningAsError>true</TreatWarningAsError>

       <UseFullPaths>false</UseFullPaths>

       <WarningLevel>Level3</WarningLevel>

-      <PreprocessorDefinitions>VK_EXPORT=WIN32;_WINDOWS;NDEBUG;NO_SANITIZE_FUNCTION=;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Release";libvk_swiftshader_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;VK_EXPORT=;NO_SANITIZE_FUNCTION=;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Release";libvk_swiftshader_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <ObjectFileName>$(IntDir)</ObjectFileName>

       <DebugInformationFormat>

       </DebugInformationFormat>

     </ClCompile>

     <ResourceCompile>

-      <PreprocessorDefinitions>VK_EXPORT=;WIN32;_WINDOWS;NDEBUG;NO_SANITIZE_FUNCTION=;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Release\";libvk_swiftshader_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

-      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;$(SolutionDir)third_party\SPIRV-Headers\include;$(SolutionDir)third_party\SPIRV-Tools\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;VK_EXPORT=;NO_SANITIZE_FUNCTION=;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Release\";libvk_swiftshader_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\SPIRV-Headers\include;$(SolutionDir)third_party\SPIRV-Tools\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

     </ResourceCompile>

     <Midl>

-      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\libbacktrace\config\windows\include;$(SolutionDir)third_party\SPIRV-Headers\include;$(SolutionDir)third_party\SPIRV-Tools\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)src;$(SolutionDir)include;$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;$(SolutionDir)third_party\libbacktrace\src;$(SolutionDir)third_party\SPIRV-Headers\include;$(SolutionDir)third_party\SPIRV-Tools\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <OutputDirectory>$(ProjectDir)/$(IntDir)</OutputDirectory>

       <HeaderFileName>%(Filename).h</HeaderFileName>

       <TypeLibraryName>%(Filename).tlb</TypeLibraryName>

@@ -216,8 +222,6 @@
     <ClCompile Include="$(SolutionDir)src\Device\SetupProcessor.cpp" />

     <ClInclude Include="$(SolutionDir)src\Device\SetupProcessor.hpp" />

     <ClInclude Include="$(SolutionDir)src\Device\Stream.hpp" />

-    <ClCompile Include="$(SolutionDir)src\Device\SwiftConfig.cpp" />

-    <ClInclude Include="$(SolutionDir)src\Device\SwiftConfig.hpp" />

     <ClInclude Include="$(SolutionDir)src\Device\Triangle.hpp" />

     <ClCompile Include="$(SolutionDir)src\Device\Vector.cpp" />

     <ClInclude Include="$(SolutionDir)src\Device\Vector.hpp" />

@@ -259,12 +263,9 @@
     <ClInclude Include="$(SolutionDir)src\System\Math.hpp" />

     <ClCompile Include="$(SolutionDir)src\System\Memory.cpp" />

     <ClInclude Include="$(SolutionDir)src\System\Memory.hpp" />

-    <ClCompile Include="$(SolutionDir)src\System\Resource.cpp" />

-    <ClInclude Include="$(SolutionDir)src\System\Resource.hpp" />

     <ClCompile Include="$(SolutionDir)src\System\Socket.cpp" />

     <ClInclude Include="$(SolutionDir)src\System\Socket.hpp" />

     <ClInclude Include="$(SolutionDir)src\System\Synchronization.hpp" />

-    <ClInclude Include="$(SolutionDir)src\System\Thread.hpp" />

     <ClCompile Include="$(SolutionDir)src\System\Timer.cpp" />

     <ClInclude Include="$(SolutionDir)src\System\Timer.hpp" />

     <ClInclude Include="$(SolutionDir)src\Vulkan\Version.h" />

@@ -328,6 +329,7 @@
     <ClInclude Include="$(SolutionDir)src\Vulkan\VkSemaphore.hpp" />

     <ClCompile Include="$(SolutionDir)src\Vulkan\VkShaderModule.cpp" />

     <ClInclude Include="$(SolutionDir)src\Vulkan\VkShaderModule.hpp" />

+    <ClInclude Include="$(SolutionDir)src\Vulkan\VulkanPlatform.h" />

     <ClCompile Include="$(SolutionDir)src\Vulkan\libVulkan.cpp" />

     <ClCompile Include="$(SolutionDir)src\Vulkan\main.cpp" />

     <ClInclude Include="$(SolutionDir)src\Vulkan\resource.h" />

@@ -338,25 +340,25 @@
   </ItemGroup>

   <ItemGroup>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\ReactorLLVM.vcxproj">

-      <Project>{5D8ADDAC-197A-3A88-9FB1-61BB28BB5E65}</Project>

+      <Project>{EB784A1C-8E20-3066-9F9C-E4E88F11E1D4}</Project>

       <Name>ReactorLLVM</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\SPIRV-Tools.vcxproj">

-      <Project>{83D86993-70D0-336A-84F1-8B952B8079DD}</Project>

+      <Project>{59349DEB-AC96-335C-ACC6-8A92F774538A}</Project>

       <Name>SPIRV-Tools</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\opt\SPIRV-Tools-opt.vcxproj">

-      <Project>{CE414127-5528-30F5-9F5F-5AF9D2B8C04C}</Project>

+      <Project>{EFF5DE98-2741-3BD8-B049-D5647A223B5E}</Project>

       <Name>SPIRV-Tools-opt</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\llvm.vcxproj">

-      <Project>{2F30A9CF-6135-3DB8-A898-CC2638959596}</Project>

+      <Project>{481093B5-4EF0-391E-82FF-BB73CFCD3D51}</Project>

       <Name>llvm</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

@@ -365,4 +367,4 @@
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />

   <ImportGroup Label="ExtensionTargets">

   </ImportGroup>

-</Project>

+</Project>
\ No newline at end of file
diff --git a/build/Visual Studio 15 2017 Win64/libvk_swiftshader.vcxproj.filters b/build/Visual Studio 15 2017 Win64/libvk_swiftshader.vcxproj.filters
index 64fbb92..c09db0c 100644
--- a/build/Visual Studio 15 2017 Win64/libvk_swiftshader.vcxproj.filters
+++ b/build/Visual Studio 15 2017 Win64/libvk_swiftshader.vcxproj.filters
@@ -40,9 +40,6 @@
     <ClCompile Include="$(SolutionDir)src\Device\SetupProcessor.cpp">

       <Filter>src\Device</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)src\Device\SwiftConfig.cpp">

-      <Filter>src\Device</Filter>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)src\Device\Vector.cpp">

       <Filter>src\Device</Filter>

     </ClCompile>

@@ -103,9 +100,6 @@
     <ClCompile Include="$(SolutionDir)src\System\Memory.cpp">

       <Filter>src\System</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)src\System\Resource.cpp">

-      <Filter>src\System</Filter>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)src\System\Socket.cpp">

       <Filter>src\System</Filter>

     </ClCompile>

@@ -267,9 +261,6 @@
     <ClInclude Include="$(SolutionDir)src\Device\Stream.hpp">

       <Filter>src\Device</Filter>

     </ClInclude>

-    <ClInclude Include="$(SolutionDir)src\Device\SwiftConfig.hpp">

-      <Filter>src\Device</Filter>

-    </ClInclude>

     <ClInclude Include="$(SolutionDir)src\Device\Triangle.hpp">

       <Filter>src\Device</Filter>

     </ClInclude>

@@ -333,18 +324,12 @@
     <ClInclude Include="$(SolutionDir)src\System\Memory.hpp">

       <Filter>src\System</Filter>

     </ClInclude>

-    <ClInclude Include="$(SolutionDir)src\System\Resource.hpp">

-      <Filter>src\System</Filter>

-    </ClInclude>

     <ClInclude Include="$(SolutionDir)src\System\Socket.hpp">

       <Filter>src\System</Filter>

     </ClInclude>

     <ClInclude Include="$(SolutionDir)src\System\Synchronization.hpp">

       <Filter>src\System</Filter>

     </ClInclude>

-    <ClInclude Include="$(SolutionDir)src\System\Thread.hpp">

-      <Filter>src\System</Filter>

-    </ClInclude>

     <ClInclude Include="$(SolutionDir)src\System\Timer.hpp">

       <Filter>src\System</Filter>

     </ClInclude>

@@ -450,6 +435,9 @@
     <ClInclude Include="$(SolutionDir)src\Vulkan\VkShaderModule.hpp">

       <Filter>src\Vulkan</Filter>

     </ClInclude>

+    <ClInclude Include="$(SolutionDir)src\Vulkan\VulkanPlatform.h">

+      <Filter>src\Vulkan</Filter>

+    </ClInclude>

     <ClInclude Include="$(SolutionDir)src\Vulkan\resource.h">

       <Filter>src\Vulkan</Filter>

     </ClInclude>

@@ -462,22 +450,22 @@
   </ItemGroup>

   <ItemGroup>

     <Filter Include="src">

-      <UniqueIdentifier>{DEA3D2D6-9E81-34FB-B37F-BFD0AF986E84}</UniqueIdentifier>

+      <UniqueIdentifier>{4CBE9297-1779-302D-AF01-5C79A790DED5}</UniqueIdentifier>

     </Filter>

     <Filter Include="src\Device">

-      <UniqueIdentifier>{14BC453F-FC97-3B73-BAAC-9617C0262299}</UniqueIdentifier>

+      <UniqueIdentifier>{F0DF3B38-45A9-3C83-B799-8B6EEF044DB4}</UniqueIdentifier>

     </Filter>

     <Filter Include="src\Pipeline">

-      <UniqueIdentifier>{1902A7BC-34C4-3881-A0EF-6D6B70C0F6E9}</UniqueIdentifier>

+      <UniqueIdentifier>{6F3CF85A-88BA-3D30-B355-FB1C6C74DE8B}</UniqueIdentifier>

     </Filter>

     <Filter Include="src\System">

-      <UniqueIdentifier>{78961295-BF27-3F30-9489-2B94D8E55999}</UniqueIdentifier>

+      <UniqueIdentifier>{60F4182B-4D0A-3200-8F91-ADD524B1D04F}</UniqueIdentifier>

     </Filter>

     <Filter Include="src\Vulkan">

-      <UniqueIdentifier>{96F7476B-506B-3E99-8756-D84EF9946B56}</UniqueIdentifier>

+      <UniqueIdentifier>{33F32F8E-7DE7-3ADB-AC85-96E48C81EC0F}</UniqueIdentifier>

     </Filter>

     <Filter Include="src\WSI">

-      <UniqueIdentifier>{AEFC2729-E50F-387D-A1EE-F61A80E4424D}</UniqueIdentifier>

+      <UniqueIdentifier>{555179D0-49AD-32E8-91BA-FAF1E5D5113C}</UniqueIdentifier>

     </Filter>

   </ItemGroup>

 </Project>

diff --git a/build/Visual Studio 15 2017 Win64/llvm.vcxproj b/build/Visual Studio 15 2017 Win64/llvm.vcxproj
index 435a62b..7dc2698 100644
--- a/build/Visual Studio 15 2017 Win64/llvm.vcxproj
+++ b/build/Visual Studio 15 2017 Win64/llvm.vcxproj
@@ -14,7 +14,7 @@
     </ProjectConfiguration>

   </ItemGroup>

   <PropertyGroup Label="Globals">

-    <ProjectGuid>{2F30A9CF-6135-3DB8-A898-CC2638959596}</ProjectGuid>

+    <ProjectGuid>{481093B5-4EF0-391E-82FF-BB73CFCD3D51}</ProjectGuid>

     <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>

     <Keyword>Win32Proj</Keyword>

     <Platform>x64</Platform>

@@ -52,7 +52,7 @@
   </PropertyGroup>

   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">

     <ClCompile>

-      <AdditionalIncludeDirectories>$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <AssemblerListingLocation>Debug/</AssemblerListingLocation>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

       <CompileAs>CompileAsCpp</CompileAs>

@@ -65,17 +65,18 @@
       <PrecompiledHeader>NotUsing</PrecompiledHeader>

       <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>

       <RuntimeTypeInfo>true</RuntimeTypeInfo>

+      <TreatWarningAsError>true</TreatWarningAsError>

       <UseFullPaths>false</UseFullPaths>

       <WarningLevel>Level3</WarningLevel>

-      <PreprocessorDefinitions>WIN32;_WINDOWS; "_SCL_SECURE_NO_WARNINGS" /wd4141;__STDC_CONSTANT_MACROS; __STDC_LIMIT_MACROS;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Debug";%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;__STDC_CONSTANT_MACROS; __STDC_LIMIT_MACROS;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Debug";%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <ObjectFileName>$(IntDir)</ObjectFileName>

     </ClCompile>

     <ResourceCompile>

-      <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS; \"_SCL_SECURE_NO_WARNINGS\" /wd4141;__STDC_CONSTANT_MACROS; __STDC_LIMIT_MACROS;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Debug\";%(PreprocessorDefinitions)</PreprocessorDefinitions>

-      <AdditionalIncludeDirectories>$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;__STDC_CONSTANT_MACROS; __STDC_LIMIT_MACROS;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Debug\";%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <AdditionalIncludeDirectories>$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

     </ResourceCompile>

     <Midl>

-      <AdditionalIncludeDirectories>$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <OutputDirectory>$(ProjectDir)/$(IntDir)</OutputDirectory>

       <HeaderFileName>%(Filename).h</HeaderFileName>

       <TypeLibraryName>%(Filename).tlb</TypeLibraryName>

@@ -88,7 +89,7 @@
   </ItemDefinitionGroup>

   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">

     <ClCompile>

-      <AdditionalIncludeDirectories>$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <AssemblerListingLocation>Release/</AssemblerListingLocation>

       <CompileAs>CompileAsCpp</CompileAs>

       <DisableSpecificWarnings>4141;4146;4244;4267;4291;4319;4624;4805;4996</DisableSpecificWarnings>

@@ -99,19 +100,20 @@
       <PrecompiledHeader>NotUsing</PrecompiledHeader>

       <RuntimeLibrary>MultiThreaded</RuntimeLibrary>

       <RuntimeTypeInfo>true</RuntimeTypeInfo>

+      <TreatWarningAsError>true</TreatWarningAsError>

       <UseFullPaths>false</UseFullPaths>

       <WarningLevel>Level3</WarningLevel>

-      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG; "_SCL_SECURE_NO_WARNINGS" /wd4141;__STDC_CONSTANT_MACROS; __STDC_LIMIT_MACROS;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Release";%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;__STDC_CONSTANT_MACROS; __STDC_LIMIT_MACROS;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR="Release";%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <ObjectFileName>$(IntDir)</ObjectFileName>

       <DebugInformationFormat>

       </DebugInformationFormat>

     </ClCompile>

     <ResourceCompile>

-      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG; \"_SCL_SECURE_NO_WARNINGS\" /wd4141;__STDC_CONSTANT_MACROS; __STDC_LIMIT_MACROS;_CRT_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Release\";%(PreprocessorDefinitions)</PreprocessorDefinitions>

-      <AdditionalIncludeDirectories>$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;__STDC_CONSTANT_MACROS; __STDC_LIMIT_MACROS;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;_SBCS;WINVER=0x501;NOMINMAX;STRICT;CMAKE_INTDIR=\"Release\";%(PreprocessorDefinitions)</PreprocessorDefinitions>

+      <AdditionalIncludeDirectories>$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

     </ResourceCompile>

     <Midl>

-      <AdditionalIncludeDirectories>$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>$(SolutionDir)third_party\llvm-7.0\configs\windows\include;$(SolutionDir)third_party\llvm-7.0\llvm\include;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\include;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\IR;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\AArch64;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\ARM;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\Mips;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\PowerPC;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Target\X86;$(SolutionDir)third_party\llvm-7.0\configs\common\lib\Transforms\InstCombine;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <OutputDirectory>$(ProjectDir)/$(IntDir)</OutputDirectory>

       <HeaderFileName>%(Filename).h</HeaderFileName>

       <TypeLibraryName>%(Filename).tlb</TypeLibraryName>

@@ -131,12 +133,12 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\BlockFrequencyInfo.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\BlockFrequencyInfoImpl.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\BranchProbabilityInfo.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\CFG.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\CFLAndersAliasAnalysis.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\CFLSteensAliasAnalysis.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\CallGraph.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\CallGraphSCCPass.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\CaptureTracking.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\CFG.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\CFLAndersAliasAnalysis.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\CFLSteensAliasAnalysis.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\CmpInstAnalysis.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\CodeMetrics.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\ConstantFolding.cpp" />

@@ -146,10 +148,10 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\DominanceFrontier.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\EHPersonalities.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\GlobalsModRef.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\IVUsers.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\InlineCost.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\InstructionSimplify.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\IteratedDominanceFrontier.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\IVUsers.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\LazyBlockFrequencyInfo.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\LazyBranchProbabilityInfo.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\LazyValueInfo.cpp" />

@@ -198,18 +200,18 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AggressiveAntiDepBreaker.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AllocationOrder.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\Analysis.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AsmPrinter\ARMException.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AsmPrinter\AccelTable.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AsmPrinter\AddressPool.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AsmPrinter\ARMException.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AsmPrinter\AsmPrinter.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AsmPrinter\AsmPrinterDwarf.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AsmPrinter\AsmPrinterInlineAsm.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AsmPrinter\CodeViewDebug.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AsmPrinter\DIE.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AsmPrinter\DIEHash.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AsmPrinter\DbgValueHistoryCalculator.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AsmPrinter\DebugHandlerBase.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AsmPrinter\DebugLocStream.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AsmPrinter\DIE.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AsmPrinter\DIEHash.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AsmPrinter\DwarfCFIException.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AsmPrinter\DwarfCompileUnit.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AsmPrinter\DwarfDebug.cpp" />

@@ -225,15 +227,15 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\BranchFolding.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\BranchRelaxation.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\BreakFalseDeps.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\CFIInstrInserter.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\CalcSpillWeights.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\CallingConvLower.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\CFIInstrInserter.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\CodeGen.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\CodeGenPrepare.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\CriticalAntiDepBreaker.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\DFAPacketizer.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\DeadMachineInstructionElim.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\DetectDeadLanes.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\DFAPacketizer.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\DwarfEHPrepare.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\EarlyIfConversion.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\EdgeBundles.cpp" />

@@ -242,8 +244,8 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\ExpandMemCmp.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\ExpandPostRAPseudos.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\ExpandReductions.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\FEntryInserter.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\FaultMaps.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\FEntryInserter.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\FuncletLayout.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\GCMetadata.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\GCMetadataPrinter.cpp" />

@@ -251,9 +253,9 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\GCStrategy.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\GlobalISel\CallLowering.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\GlobalISel\GlobalISel.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\GlobalISel\IRTranslator.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\GlobalISel\InstructionSelect.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\GlobalISel\InstructionSelector.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\GlobalISel\IRTranslator.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\GlobalISel\LegalityPredicates.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\GlobalISel\LegalizeMutations.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\GlobalISel\Legalizer.cpp" />

@@ -272,15 +274,14 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\InterferenceCache.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\InterleavedAccessPass.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\IntrinsicLowering.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LLVMTargetMachine.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LatencyPriorityQueue.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LazyMachineBlockFrequencyInfo.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LexicalScopes.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LiveDebugValues.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LiveDebugVariables.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LiveInterval.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LiveIntervalUnion.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LiveIntervals.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LiveIntervalUnion.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LivePhysRegs.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LiveRangeCalc.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LiveRangeEdit.cpp" />

@@ -289,22 +290,20 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LiveRegUnits.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LiveStacks.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LiveVariables.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LLVMTargetMachine.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LocalStackSlotAllocation.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LoopTraversal.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LowerEmuTLS.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LowLevelType.cpp">

       <ObjectFileName>$(IntDir)/third_party/llvm-7.0/llvm/lib/CodeGen/LowLevelType.cpp.obj</ObjectFileName>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LowerEmuTLS.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MIRCanonicalizerPass.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MIRPrinter.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MIRPrintingPass.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineBasicBlock.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineBlockFrequencyInfo.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineBlockPlacement.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineBranchProbabilityInfo.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineCSE.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineCombiner.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineCopyPropagation.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineCSE.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineDominanceFrontier.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineDominators.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineFrameInfo.cpp" />

@@ -325,17 +324,20 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachinePostDominators.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineRegionInfo.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineRegisterInfo.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineSSAUpdater.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineScheduler.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineSink.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineSSAUpdater.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineTraceMetrics.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineVerifier.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MacroFusion.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MIRCanonicalizerPass.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MIRPrinter.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MIRPrintingPass.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\OptimizePHIs.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\PHIElimination.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\PHIEliminationUtils.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\PatchableFunction.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\PeepholeOptimizer.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\PHIElimination.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\PHIEliminationUtils.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\PostRAHazardRecognizer.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\PostRASchedulerList.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\PreISelIntrinsicLowering.cpp" />

@@ -347,13 +349,13 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\RegAllocBasic.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\RegAllocFast.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\RegAllocGreedy.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\RegUsageInfoCollector.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\RegUsageInfoPropagate.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\RegisterClassInfo.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\RegisterCoalescer.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\RegisterPressure.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\RegisterScavenging.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\RegisterUsageInfo.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\RegUsageInfoCollector.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\RegUsageInfoPropagate.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\RenameIndependentSubregs.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\ResetMachineFunctionPass.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\SafeStack.cpp" />

@@ -417,10 +419,10 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\WasmEHPrepare.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\WinEHPrepare.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\XRayInstrumentation.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\DebugInfo\CodeView\CVTypeVisitor.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\DebugInfo\CodeView\CodeViewError.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\DebugInfo\CodeView\CodeViewRecordIO.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\DebugInfo\CodeView\ContinuationRecordBuilder.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\DebugInfo\CodeView\CVTypeVisitor.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\DebugInfo\CodeView\Formatters.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\DebugInfo\CodeView\GlobalTypeTableBuilder.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\DebugInfo\CodeView\Line.cpp" />

@@ -442,8 +444,8 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\ExecutionEngine\RuntimeDyld\JITSymbol.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\ExecutionEngine\RuntimeDyld\RTDyldMemoryManager.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\ExecutionEngine\RuntimeDyld\RuntimeDyld.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\ExecutionEngine\RuntimeDyld\RuntimeDyldCOFF.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\ExecutionEngine\RuntimeDyld\RuntimeDyldChecker.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\ExecutionEngine\RuntimeDyld\RuntimeDyldCOFF.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\ExecutionEngine\RuntimeDyld\RuntimeDyldELF.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\ExecutionEngine\RuntimeDyld\RuntimeDyldMachO.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\ExecutionEngine\RuntimeDyld\Targets\RuntimeDyldELFMips.cpp" />

@@ -457,7 +459,6 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\ConstantFold.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\ConstantRange.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\Constants.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\DIBuilder.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\DataLayout.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\DebugInfo.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\DebugInfoMetadata.cpp" />

@@ -465,21 +466,22 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\DiagnosticHandler.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\DiagnosticInfo.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\DiagnosticPrinter.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\DIBuilder.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\Dominators.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\Function.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\GVMaterializer.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\Globals.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\IRBuilder.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\IRPrintingPasses.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\GVMaterializer.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\InlineAsm.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\Instruction.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\Instructions.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\IntrinsicInst.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\IRBuilder.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\IRPrintingPasses.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\LegacyPassManager.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\LLVMContext.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\LLVMContextImpl.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\LegacyPassManager.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\MDBuilder.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\Mangler.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\MDBuilder.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\Metadata.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\Module.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\Operator.cpp" />

@@ -497,6 +499,7 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\ValueSymbolTable.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\Verifier.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\ELFObjectWriter.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\MachObjectWriter.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\MCAsmBackend.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\MCAsmInfo.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\MCAsmInfoCOFF.cpp" />

@@ -520,8 +523,8 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\MCInstrAnalysis.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\MCInstrDesc.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\MCLinkerOptimizationHint.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\MCMachOStreamer.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\MCMachObjectTargetWriter.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\MCMachOStreamer.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\MCNullStreamer.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\MCObjectFileInfo.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\MCObjectStreamer.cpp" />

@@ -552,7 +555,6 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\MCWin64EH.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\MCWinCOFFStreamer.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\MCWinEH.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\MachObjectWriter.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\StringTableBuilder.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\SubtargetFeature.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\WasmObjectWriter.cpp" />

@@ -581,6 +583,7 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\APSInt.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\ARMAttributeParser.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\ARMBuildAttrs.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\Atomic.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\BinaryStreamError.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\BinaryStreamReader.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\BinaryStreamRef.cpp" />

@@ -588,15 +591,16 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\BlockFrequency.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\BranchProbability.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\Chrono.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\circular_raw_ostream.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\CodeGenCoverage.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\CommandLine.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\Compression.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\ConvertUTF.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\ConvertUTFWrapper.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\DJB.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\DataExtractor.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\Debug.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\DebugCounter.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\DJB.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\DynamicLibrary.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\Errno.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\Error.cpp">

@@ -604,8 +608,8 @@
     </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\ErrorHandling.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\FoldingSet.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\FormatVariadic.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\FormattedStream.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\FormatVariadic.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\GraphWriter.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\Hashing.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\Host.cpp" />

@@ -619,9 +623,9 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\LowLevelType.cpp">

       <ObjectFileName>$(IntDir)/third_party/llvm-7.0/llvm/lib/Support/LowLevelType.cpp.obj</ObjectFileName>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\MD5.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\ManagedStatic.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\MathExtras.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\MD5.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\Memory.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\MemoryBuffer.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\Mutex.cpp" />

@@ -630,12 +634,33 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\PrettyStackTrace.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\Process.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\Program.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\RWMutex.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\RandomNumberGenerator.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\raw_ostream.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\regcomp.c">

+      <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsC</CompileAs>

+      <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsC</CompileAs>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\regerror.c">

+      <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsC</CompileAs>

+      <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsC</CompileAs>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\Regex.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\SHA1.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\regexec.c">

+      <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsC</CompileAs>

+      <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsC</CompileAs>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\regfree.c">

+      <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsC</CompileAs>

+      <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsC</CompileAs>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\regstrlcpy.c">

+      <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsC</CompileAs>

+      <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsC</CompileAs>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\RWMutex.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\ScaledNumber.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\ScopedPrinter.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\SHA1.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\Signals.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\SmallPtrSet.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\SmallVector.cpp" />

@@ -657,28 +682,6 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\Valgrind.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\YAMLParser.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\YAMLTraits.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\circular_raw_ostream.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\raw_ostream.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\regcomp.c">

-      <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsC</CompileAs>

-      <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsC</CompileAs>

-    </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\regerror.c">

-      <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsC</CompileAs>

-      <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsC</CompileAs>

-    </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\regexec.c">

-      <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsC</CompileAs>

-      <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsC</CompileAs>

-    </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\regfree.c">

-      <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsC</CompileAs>

-      <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsC</CompileAs>

-    </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\regstrlcpy.c">

-      <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsC</CompileAs>

-      <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsC</CompileAs>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\TargetLoweringObjectFile.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\TargetMachine.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Coroutines\CoroCleanup.cpp" />

@@ -707,13 +710,15 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Scalar\EarlyCSE.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Scalar\GVN.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Scalar\LICM.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Scalar\LoopDataPrefetch.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Scalar\LoopStrengthReduce.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Scalar\MergeICmps.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Scalar\PartiallyInlineLibCalls.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Scalar\Reassociate.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Scalar\SCCP.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Scalar\SROA.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Scalar\SeparateConstOffsetFromGEP.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Scalar\SimplifyCFGPass.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Scalar\SROA.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Utils\BasicBlockUtils.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Utils\BreakCriticalEdges.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Utils\BuildLibCalls.cpp" />

@@ -730,12 +735,12 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Utils\LowerInvoke.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Utils\OrderedInstructions.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Utils\PromoteMemoryToRegister.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Utils\SSAUpdater.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Utils\SimplifyCFG.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Utils\SimplifyLibCalls.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Utils\SSAUpdater.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Utils\SymbolRewriter.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Utils\VNCoercion.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Utils\ValueMapper.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Utils\VNCoercion.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\stubs\Stubs.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\AsmParser\X86AsmInstrumentation.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\AsmParser\X86AsmParser.cpp" />

@@ -745,10 +750,10 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\InstPrinter\X86IntelInstPrinter.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\MCTargetDesc\X86AsmBackend.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\MCTargetDesc\X86ELFObjectWriter.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\MCTargetDesc\X86MachObjectWriter.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\MCTargetDesc\X86MCAsmInfo.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\MCTargetDesc\X86MCCodeEmitter.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\MCTargetDesc\X86MCTargetDesc.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\MCTargetDesc\X86MachObjectWriter.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\MCTargetDesc\X86WinCOFFObjectWriter.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\MCTargetDesc\X86WinCOFFStreamer.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\MCTargetDesc\X86WinCOFFTargetStreamer.cpp" />

@@ -758,8 +763,8 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86AsmPrinter.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86AvoidStoreForwardingBlocks.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86CallFrameOptimization.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86CallLowering.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86CallingConv.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86CallLowering.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86CmovConversion.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86DomainReassignment.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86EvexToVex.cpp" />

@@ -771,18 +776,18 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86FlagsCopyLowering.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86FloatingPoint.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86FrameLowering.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86ISelDAGToDAG.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86ISelLowering.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86IndirectBranchTracking.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86InstrFMA3Info.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86InstrFoldTables.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86InstrInfo.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86InstructionSelector.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86InterleavedAccess.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86ISelDAGToDAG.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86ISelLowering.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86LegalizerInfo.cpp" />

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86MCInstLower.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86MachineFunctionInfo.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86MacroFusion.cpp" />

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86MCInstLower.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86OptimizeLEAs.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86PadShortFunction.cpp" />

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86RegisterBankInfo.cpp" />

diff --git a/build/Visual Studio 15 2017 Win64/llvm.vcxproj.filters b/build/Visual Studio 15 2017 Win64/llvm.vcxproj.filters
index c9913c7..994b1f6 100644
--- a/build/Visual Studio 15 2017 Win64/llvm.vcxproj.filters
+++ b/build/Visual Studio 15 2017 Win64/llvm.vcxproj.filters
@@ -25,15 +25,6 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\BranchProbabilityInfo.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\CFG.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\CFLAndersAliasAnalysis.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\CFLSteensAliasAnalysis.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\CallGraph.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -43,6 +34,15 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\CaptureTracking.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\CFG.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\CFLAndersAliasAnalysis.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\CFLSteensAliasAnalysis.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\CmpInstAnalysis.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -70,9 +70,6 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\GlobalsModRef.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\IVUsers.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\InlineCost.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -82,6 +79,9 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\IteratedDominanceFrontier.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\IVUsers.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Analysis\LazyBlockFrequencyInfo.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -226,15 +226,15 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\Analysis.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AsmPrinter\ARMException.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AsmPrinter\AccelTable.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AsmPrinter\AddressPool.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AsmPrinter\ARMException.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AsmPrinter\AsmPrinter.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -247,12 +247,6 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AsmPrinter\CodeViewDebug.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AsmPrinter\DIE.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AsmPrinter\DIEHash.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AsmPrinter\DbgValueHistoryCalculator.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -262,6 +256,12 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AsmPrinter\DebugLocStream.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AsmPrinter\DIE.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AsmPrinter\DIEHash.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\AsmPrinter\DwarfCFIException.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -307,15 +307,15 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\BreakFalseDeps.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\CFIInstrInserter.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\CalcSpillWeights.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\CallingConvLower.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\CFIInstrInserter.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\CodeGen.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -325,15 +325,15 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\CriticalAntiDepBreaker.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\DFAPacketizer.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\DeadMachineInstructionElim.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\DetectDeadLanes.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\DFAPacketizer.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\DwarfEHPrepare.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -358,10 +358,10 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\ExpandReductions.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\FEntryInserter.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\FaultMaps.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\FaultMaps.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\FEntryInserter.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\FuncletLayout.cpp">

@@ -385,15 +385,15 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\GlobalISel\GlobalISel.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\GlobalISel\IRTranslator.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\GlobalISel\InstructionSelect.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\GlobalISel\InstructionSelector.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\GlobalISel\IRTranslator.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\GlobalISel\LegalityPredicates.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -448,9 +448,6 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\IntrinsicLowering.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LLVMTargetMachine.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LatencyPriorityQueue.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -469,10 +466,10 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LiveInterval.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LiveIntervalUnion.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LiveIntervals.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LiveIntervals.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LiveIntervalUnion.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LivePhysRegs.cpp">

@@ -499,25 +496,19 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LiveVariables.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LLVMTargetMachine.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LocalStackSlotAllocation.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LoopTraversal.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LowLevelType.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LowerEmuTLS.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MIRCanonicalizerPass.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MIRPrinter.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MIRPrintingPass.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\LowLevelType.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineBasicBlock.cpp">

@@ -532,15 +523,15 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineBranchProbabilityInfo.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineCSE.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineCombiner.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineCopyPropagation.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineCSE.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineDominanceFrontier.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -601,15 +592,15 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineRegisterInfo.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineSSAUpdater.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineScheduler.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineSink.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineSSAUpdater.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MachineTraceMetrics.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -619,21 +610,30 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MacroFusion.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MIRCanonicalizerPass.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MIRPrinter.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\MIRPrintingPass.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\OptimizePHIs.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\PHIElimination.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\PHIEliminationUtils.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\PatchableFunction.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\PeepholeOptimizer.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\PHIElimination.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\PHIEliminationUtils.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\PostRAHazardRecognizer.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -667,12 +667,6 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\RegAllocGreedy.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\RegUsageInfoCollector.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\RegUsageInfoPropagate.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\RegisterClassInfo.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -688,6 +682,12 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\RegisterUsageInfo.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\RegUsageInfoCollector.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\RegUsageInfoPropagate.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\RenameIndependentSubregs.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -877,9 +877,6 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\CodeGen\XRayInstrumentation.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\DebugInfo\CodeView\CVTypeVisitor.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\DebugInfo\CodeView\CodeViewError.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -889,6 +886,9 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\DebugInfo\CodeView\ContinuationRecordBuilder.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\DebugInfo\CodeView\CVTypeVisitor.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\DebugInfo\CodeView\Formatters.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -952,10 +952,10 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\ExecutionEngine\RuntimeDyld\RuntimeDyld.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\ExecutionEngine\RuntimeDyld\RuntimeDyldCOFF.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\ExecutionEngine\RuntimeDyld\RuntimeDyldChecker.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\ExecutionEngine\RuntimeDyld\RuntimeDyldChecker.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\ExecutionEngine\RuntimeDyld\RuntimeDyldCOFF.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\ExecutionEngine\RuntimeDyld\RuntimeDyldELF.cpp">

@@ -997,9 +997,6 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\Constants.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\DIBuilder.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\DataLayout.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -1021,22 +1018,19 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\DiagnosticPrinter.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\DIBuilder.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\Dominators.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\Function.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\GVMaterializer.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\Globals.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\IRBuilder.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\IRPrintingPasses.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\GVMaterializer.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\InlineAsm.cpp">

@@ -1051,21 +1045,27 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\IntrinsicInst.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\IRBuilder.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\IRPrintingPasses.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\LegacyPassManager.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\LLVMContext.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\LLVMContextImpl.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\LegacyPassManager.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\Mangler.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\MDBuilder.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\Mangler.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\IR\Metadata.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -1117,6 +1117,9 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\ELFObjectWriter.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\MachObjectWriter.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\MCAsmBackend.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -1186,10 +1189,10 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\MCLinkerOptimizationHint.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\MCMachOStreamer.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\MCMachObjectTargetWriter.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\MCMachObjectTargetWriter.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\MCMachOStreamer.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\MCNullStreamer.cpp">

@@ -1282,9 +1285,6 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\MCWinEH.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\MachObjectWriter.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\MC\StringTableBuilder.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -1363,6 +1363,9 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\ARMBuildAttrs.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\Atomic.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\BinaryStreamError.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -1384,6 +1387,9 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\Chrono.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\circular_raw_ostream.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\CodeGenCoverage.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -1399,9 +1405,6 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\ConvertUTFWrapper.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\DJB.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\DataExtractor.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -1411,6 +1414,9 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\DebugCounter.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\DJB.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\DynamicLibrary.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -1426,10 +1432,10 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\FoldingSet.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\FormatVariadic.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\FormattedStream.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\FormattedStream.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\FormatVariadic.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\GraphWriter.cpp">

@@ -1465,15 +1471,15 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\LowLevelType.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\MD5.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\ManagedStatic.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\MathExtras.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\MD5.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\Memory.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -1498,16 +1504,31 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\Program.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\RWMutex.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\RandomNumberGenerator.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\RandomNumberGenerator.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\raw_ostream.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\regcomp.c">

+      <Filter>Source Files</Filter>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\regerror.c">

       <Filter>Source Files</Filter>

     </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\Regex.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\SHA1.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\regexec.c">

+      <Filter>Source Files</Filter>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\regfree.c">

+      <Filter>Source Files</Filter>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\regstrlcpy.c">

+      <Filter>Source Files</Filter>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\RWMutex.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\ScaledNumber.cpp">

@@ -1516,6 +1537,9 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\ScopedPrinter.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\SHA1.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\Signals.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -1579,27 +1603,6 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\YAMLTraits.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\circular_raw_ostream.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\raw_ostream.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\regcomp.c">

-      <Filter>Source Files</Filter>

-    </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\regerror.c">

-      <Filter>Source Files</Filter>

-    </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\regexec.c">

-      <Filter>Source Files</Filter>

-    </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\regfree.c">

-      <Filter>Source Files</Filter>

-    </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Support\regstrlcpy.c">

-      <Filter>Source Files</Filter>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\TargetLoweringObjectFile.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -1684,6 +1687,9 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Scalar\LICM.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Scalar\LoopDataPrefetch.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Scalar\LoopStrengthReduce.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -1699,12 +1705,15 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Scalar\SCCP.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Scalar\SROA.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Scalar\SeparateConstOffsetFromGEP.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Scalar\SimplifyCFGPass.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Scalar\SROA.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Utils\BasicBlockUtils.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -1753,22 +1762,22 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Utils\PromoteMemoryToRegister.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Utils\SSAUpdater.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Utils\SimplifyCFG.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Utils\SimplifyLibCalls.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Utils\SSAUpdater.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Utils\SymbolRewriter.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Utils\VNCoercion.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Utils\ValueMapper.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Utils\ValueMapper.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Transforms\Utils\VNCoercion.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\stubs\Stubs.cpp">

@@ -1798,6 +1807,9 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\MCTargetDesc\X86ELFObjectWriter.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\MCTargetDesc\X86MachObjectWriter.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\MCTargetDesc\X86MCAsmInfo.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -1807,9 +1819,6 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\MCTargetDesc\X86MCTargetDesc.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\MCTargetDesc\X86MachObjectWriter.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\MCTargetDesc\X86WinCOFFObjectWriter.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -1837,10 +1846,10 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86CallFrameOptimization.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86CallLowering.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86CallingConv.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86CallingConv.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86CallLowering.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86CmovConversion.cpp">

@@ -1876,12 +1885,6 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86FrameLowering.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86ISelDAGToDAG.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86ISelLowering.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86IndirectBranchTracking.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -1900,10 +1903,13 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86InterleavedAccess.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86LegalizerInfo.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86ISelDAGToDAG.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86MCInstLower.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86ISelLowering.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86LegalizerInfo.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86MachineFunctionInfo.cpp">

@@ -1912,6 +1918,9 @@
     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86MacroFusion.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86MCInstLower.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\llvm-7.0\llvm\lib\Target\X86\X86OptimizeLEAs.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -1960,7 +1969,7 @@
   </ItemGroup>

   <ItemGroup>

     <Filter Include="Source Files">

-      <UniqueIdentifier>{31403CE8-892F-3DE6-A3E1-A936F5B54DE7}</UniqueIdentifier>

+      <UniqueIdentifier>{B11E6D1A-DF77-39FB-B209-A851B3357F47}</UniqueIdentifier>

     </Filter>

   </ItemGroup>

 </Project>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/ALL_BUILD.vcxproj b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/ALL_BUILD.vcxproj
index 40ce386..7096b46 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/ALL_BUILD.vcxproj
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/ALL_BUILD.vcxproj
@@ -14,7 +14,7 @@
     </ProjectConfiguration>

   </ItemGroup>

   <PropertyGroup Label="Globals">

-    <ProjectGuid>{7E8CAA89-E15F-3F2B-BC05-B5A90F7E9532}</ProjectGuid>

+    <ProjectGuid>{22133560-41E2-34D0-9A00-A0BD4126F0AD}</ProjectGuid>

     <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>

     <Keyword>Win32Proj</Keyword>

     <Platform>x64</Platform>

@@ -68,43 +68,43 @@
   </ItemGroup>

   <ItemGroup>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\SPIRV-Tools.vcxproj">

-      <Project>{83D86993-70D0-336A-84F1-8B952B8079DD}</Project>

+      <Project>{59349DEB-AC96-335C-ACC6-8A92F774538A}</Project>

       <Name>SPIRV-Tools</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\link\SPIRV-Tools-link.vcxproj">

-      <Project>{F71D815F-E43A-34C5-92DE-15BF331D63CF}</Project>

+      <Project>{878BEAEA-CC28-3E97-B0F5-DB93FBC28A23}</Project>

       <Name>SPIRV-Tools-link</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\opt\SPIRV-Tools-opt.vcxproj">

-      <Project>{CE414127-5528-30F5-9F5F-5AF9D2B8C04C}</Project>

+      <Project>{EFF5DE98-2741-3BD8-B049-D5647A223B5E}</Project>

       <Name>SPIRV-Tools-opt</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\reduce\SPIRV-Tools-reduce.vcxproj">

-      <Project>{C5C298F8-C2B9-3D36-B183-02D4620C0C55}</Project>

+      <Project>{D1FC198E-1358-309D-9AD5-C26B47163E33}</Project>

       <Name>SPIRV-Tools-reduce</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\SPIRV-Tools-shared.vcxproj">

-      <Project>{E1A9E405-1306-3924-AE73-FFD7FB095685}</Project>

+      <Project>{CF43CEBC-9B44-3697-8262-5DC3F9AC532A}</Project>

       <Name>SPIRV-Tools-shared</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spirv-tools-pkg-config.vcxproj">

-      <Project>{FF67398E-CAA3-37B5-B167-781D03767AB1}</Project>

+      <Project>{FFE62FBF-2BD2-37B2-8883-5B2BA1894018}</Project>

       <Name>spirv-tools-pkg-config</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spirv-tools-shared-pkg-config.vcxproj">

-      <Project>{B2815DAA-B884-3519-8B30-8249FFED06CD}</Project>

+      <Project>{871BEB73-7406-3F9A-8A89-072702C81C2C}</Project>

       <Name>spirv-tools-shared-pkg-config</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/SPIRV-Tools-shared.vcxproj b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/SPIRV-Tools-shared.vcxproj
index 79575db..053c0b0 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/SPIRV-Tools-shared.vcxproj
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/SPIRV-Tools-shared.vcxproj
@@ -14,7 +14,7 @@
     </ProjectConfiguration>

   </ItemGroup>

   <PropertyGroup Label="Globals">

-    <ProjectGuid>{E1A9E405-1306-3924-AE73-FFD7FB095685}</ProjectGuid>

+    <ProjectGuid>{CF43CEBC-9B44-3697-8262-5DC3F9AC532A}</ProjectGuid>

     <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>

     <Keyword>Win32Proj</Keyword>

     <Platform>x64</Platform>

@@ -151,7 +151,7 @@
     </ProjectReference>

   </ItemDefinitionGroup>

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\ce2e413e4d25429b19113f798796d86d\build-version.inc.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\91e8d4b9222111077126a1169fd3e172\build-version.inc.rule">

       <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Update build-version.inc in the SPIRV-Tools build directory (if necessary).</Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">setlocal

 python $(SolutionDir)third_party/SPIRV-Tools/utils/update_build_version.py $(SolutionDir)third_party/SPIRV-Tools "$(SolutionDir)build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/build-version.inc"

@@ -162,7 +162,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/ce2e413e4d25429b19113f798796d86d/build-version.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\update_build_version.py;$(SolutionDir)third_party\SPIRV-Tools\CHANGES;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/91e8d4b9222111077126a1169fd3e172/build-version.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\update_build_version.py;$(SolutionDir)third_party\SPIRV-Tools\CHANGES;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\build-version.inc</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkObjects>

       <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Update build-version.inc in the SPIRV-Tools build directory (if necessary).</Message>

@@ -175,7 +175,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/ce2e413e4d25429b19113f798796d86d/build-version.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\update_build_version.py;$(SolutionDir)third_party\SPIRV-Tools\CHANGES;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/91e8d4b9222111077126a1169fd3e172/build-version.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\update_build_version.py;$(SolutionDir)third_party\SPIRV-Tools\CHANGES;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\build-version.inc</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkObjects>

     </CustomBuild>

@@ -199,7 +199,6 @@
     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\enum_string_mapping.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\ext_inst.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\extensions.h" />

-    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\id_descriptor.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\instruction.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\latest_version_glsl_std_450_header.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\latest_version_opencl_std_header.h" />

@@ -213,6 +212,7 @@
     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\spirv_constant.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\spirv_definition.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\spirv_endian.h" />

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\spirv_fuzzer_options.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\spirv_optimizer_options.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\spirv_reducer_options.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\spirv_target_env.h" />

@@ -341,18 +341,6 @@
       <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source.h</PrecompiledHeaderFile>

       <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source.pch</PrecompiledHeaderOutputFile>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\id_descriptor.cpp">

-      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

-      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source.h</ForcedIncludeFiles>

-      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

-      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source.h</PrecompiledHeaderFile>

-      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)\pch_source.pch</PrecompiledHeaderOutputFile>

-      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

-      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source.h</ForcedIncludeFiles>

-      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Use</PrecompiledHeader>

-      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source.h</PrecompiledHeaderFile>

-      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source.pch</PrecompiledHeaderOutputFile>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\libspirv.cpp">

       <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

       <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source.h</ForcedIncludeFiles>

@@ -449,6 +437,18 @@
       <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source.h</PrecompiledHeaderFile>

       <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source.pch</PrecompiledHeaderOutputFile>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\spirv_fuzzer_options.cpp">

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)\pch_source.pch</PrecompiledHeaderOutputFile>

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source.pch</PrecompiledHeaderOutputFile>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\spirv_optimizer_options.cpp">

       <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

       <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source.h</ForcedIncludeFiles>

@@ -881,6 +881,18 @@
       <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source.h</PrecompiledHeaderFile>

       <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source.pch</PrecompiledHeaderOutputFile>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\val\validate_misc.cpp">

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)\pch_source.pch</PrecompiledHeaderOutputFile>

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source.pch</PrecompiledHeaderOutputFile>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\val\validate_mode_setting.cpp">

       <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

       <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source.h</ForcedIncludeFiles>

@@ -929,6 +941,18 @@
       <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source.h</PrecompiledHeaderFile>

       <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source.pch</PrecompiledHeaderOutputFile>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\val\validate_small_type_uses.cpp">

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)\pch_source.pch</PrecompiledHeaderOutputFile>

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source.pch</PrecompiledHeaderOutputFile>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\val\validate_type.cpp">

       <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

       <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source.h</ForcedIncludeFiles>

@@ -1015,19 +1039,19 @@
   </ItemGroup>

   <ItemGroup>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\core_tables.vcxproj">

-      <Project>{D0817E36-BE58-3C95-BF64-748025994A26}</Project>

+      <Project>{983F7132-9747-3649-BF4B-87E69EE85F3E}</Project>

       <Name>core_tables</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\enum_string_mapping.vcxproj">

-      <Project>{717F5DEC-42F8-378A-90E8-CF6E340D983B}</Project>

+      <Project>{80AF261B-6B92-3143-9FCA-9BC59158D733}</Project>

       <Name>enum_string_mapping</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\extinst_tables.vcxproj">

-      <Project>{0B6F6E15-53DE-3B85-812B-825694B176F8}</Project>

+      <Project>{3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E}</Project>

       <Name>extinst_tables</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/SPIRV-Tools-shared.vcxproj.filters b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/SPIRV-Tools-shared.vcxproj.filters
index ed5bbc1..b5cfc33 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/SPIRV-Tools-shared.vcxproj.filters
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/SPIRV-Tools-shared.vcxproj.filters
@@ -31,9 +31,6 @@
     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\extensions.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\id_descriptor.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\libspirv.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -58,6 +55,9 @@
     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\spirv_endian.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\spirv_fuzzer_options.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\spirv_optimizer_options.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -166,6 +166,9 @@
     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\val\validate_memory_semantics.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\val\validate_misc.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\val\validate_mode_setting.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -178,6 +181,9 @@
     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\val\validate_scopes.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\val\validate_small_type_uses.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\val\validate_type.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -255,9 +261,6 @@
     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\extensions.h">

       <Filter>Header Files</Filter>

     </ClInclude>

-    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\id_descriptor.h">

-      <Filter>Header Files</Filter>

-    </ClInclude>

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\instruction.h">

       <Filter>Header Files</Filter>

     </ClInclude>

@@ -297,6 +300,9 @@
     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\spirv_endian.h">

       <Filter>Header Files</Filter>

     </ClInclude>

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\spirv_fuzzer_options.h">

+      <Filter>Header Files</Filter>

+    </ClInclude>

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\spirv_optimizer_options.h">

       <Filter>Header Files</Filter>

     </ClInclude>

@@ -326,19 +332,19 @@
     </ClInclude>

   </ItemGroup>

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\ce2e413e4d25429b19113f798796d86d\build-version.inc.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\91e8d4b9222111077126a1169fd3e172\build-version.inc.rule">

       <Filter>CMake Rules</Filter>

     </CustomBuild>

   </ItemGroup>

   <ItemGroup>

     <Filter Include="CMake Rules">

-      <UniqueIdentifier>{403A9AA3-1D72-38DC-A6AB-1BFDA2377A05}</UniqueIdentifier>

+      <UniqueIdentifier>{93F83FFB-0A66-3FBE-A52D-9C65B5A808F7}</UniqueIdentifier>

     </Filter>

     <Filter Include="Header Files">

-      <UniqueIdentifier>{281137F3-F765-344F-81A1-5EAF572A72BC}</UniqueIdentifier>

+      <UniqueIdentifier>{BC358C2F-D735-3D9B-A16C-3BC6057ABC2B}</UniqueIdentifier>

     </Filter>

     <Filter Include="Source Files">

-      <UniqueIdentifier>{31403CE8-892F-3DE6-A3E1-A936F5B54DE7}</UniqueIdentifier>

+      <UniqueIdentifier>{B11E6D1A-DF77-39FB-B209-A851B3357F47}</UniqueIdentifier>

     </Filter>

   </ItemGroup>

 </Project>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/SPIRV-Tools.vcxproj b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/SPIRV-Tools.vcxproj
index 8f60f79..63213c7 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/SPIRV-Tools.vcxproj
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/SPIRV-Tools.vcxproj
@@ -14,7 +14,7 @@
     </ProjectConfiguration>

   </ItemGroup>

   <PropertyGroup Label="Globals">

-    <ProjectGuid>{83D86993-70D0-336A-84F1-8B952B8079DD}</ProjectGuid>

+    <ProjectGuid>{59349DEB-AC96-335C-ACC6-8A92F774538A}</ProjectGuid>

     <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>

     <Keyword>Win32Proj</Keyword>

     <Platform>x64</Platform>

@@ -127,7 +127,7 @@
     </Lib>

   </ItemDefinitionGroup>

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\ce2e413e4d25429b19113f798796d86d\build-version.inc.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\91e8d4b9222111077126a1169fd3e172\build-version.inc.rule">

       <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Update build-version.inc in the SPIRV-Tools build directory (if necessary).</Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">setlocal

 python $(SolutionDir)third_party/SPIRV-Tools/utils/update_build_version.py $(SolutionDir)third_party/SPIRV-Tools "$(SolutionDir)build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/build-version.inc"

@@ -138,7 +138,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/ce2e413e4d25429b19113f798796d86d/build-version.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\update_build_version.py;$(SolutionDir)third_party\SPIRV-Tools\CHANGES;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/91e8d4b9222111077126a1169fd3e172/build-version.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\update_build_version.py;$(SolutionDir)third_party\SPIRV-Tools\CHANGES;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\build-version.inc</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkObjects>

       <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Update build-version.inc in the SPIRV-Tools build directory (if necessary).</Message>

@@ -151,7 +151,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/ce2e413e4d25429b19113f798796d86d/build-version.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\update_build_version.py;$(SolutionDir)third_party\SPIRV-Tools\CHANGES;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/91e8d4b9222111077126a1169fd3e172/build-version.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\update_build_version.py;$(SolutionDir)third_party\SPIRV-Tools\CHANGES;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\build-version.inc</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkObjects>

     </CustomBuild>

@@ -175,7 +175,6 @@
     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\enum_string_mapping.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\ext_inst.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\extensions.h" />

-    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\id_descriptor.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\instruction.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\latest_version_glsl_std_450_header.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\latest_version_opencl_std_header.h" />

@@ -189,6 +188,7 @@
     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\spirv_constant.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\spirv_definition.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\spirv_endian.h" />

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\spirv_fuzzer_options.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\spirv_optimizer_options.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\spirv_reducer_options.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\spirv_target_env.h" />

@@ -317,18 +317,6 @@
       <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source.h</PrecompiledHeaderFile>

       <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source.pch</PrecompiledHeaderOutputFile>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\id_descriptor.cpp">

-      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

-      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source.h</ForcedIncludeFiles>

-      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

-      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source.h</PrecompiledHeaderFile>

-      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)\pch_source.pch</PrecompiledHeaderOutputFile>

-      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

-      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source.h</ForcedIncludeFiles>

-      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Use</PrecompiledHeader>

-      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source.h</PrecompiledHeaderFile>

-      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source.pch</PrecompiledHeaderOutputFile>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\libspirv.cpp">

       <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

       <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source.h</ForcedIncludeFiles>

@@ -425,6 +413,18 @@
       <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source.h</PrecompiledHeaderFile>

       <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source.pch</PrecompiledHeaderOutputFile>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\spirv_fuzzer_options.cpp">

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)\pch_source.pch</PrecompiledHeaderOutputFile>

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source.pch</PrecompiledHeaderOutputFile>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\spirv_optimizer_options.cpp">

       <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

       <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source.h</ForcedIncludeFiles>

@@ -857,6 +857,18 @@
       <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source.h</PrecompiledHeaderFile>

       <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source.pch</PrecompiledHeaderOutputFile>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\val\validate_misc.cpp">

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)\pch_source.pch</PrecompiledHeaderOutputFile>

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source.pch</PrecompiledHeaderOutputFile>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\val\validate_mode_setting.cpp">

       <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

       <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source.h</ForcedIncludeFiles>

@@ -905,6 +917,18 @@
       <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source.h</PrecompiledHeaderFile>

       <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source.pch</PrecompiledHeaderOutputFile>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\val\validate_small_type_uses.cpp">

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)\pch_source.pch</PrecompiledHeaderOutputFile>

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source.pch</PrecompiledHeaderOutputFile>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\val\validate_type.cpp">

       <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

       <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source.h</ForcedIncludeFiles>

@@ -991,19 +1015,19 @@
   </ItemGroup>

   <ItemGroup>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\core_tables.vcxproj">

-      <Project>{D0817E36-BE58-3C95-BF64-748025994A26}</Project>

+      <Project>{983F7132-9747-3649-BF4B-87E69EE85F3E}</Project>

       <Name>core_tables</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\enum_string_mapping.vcxproj">

-      <Project>{717F5DEC-42F8-378A-90E8-CF6E340D983B}</Project>

+      <Project>{80AF261B-6B92-3143-9FCA-9BC59158D733}</Project>

       <Name>enum_string_mapping</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\extinst_tables.vcxproj">

-      <Project>{0B6F6E15-53DE-3B85-812B-825694B176F8}</Project>

+      <Project>{3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E}</Project>

       <Name>extinst_tables</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/SPIRV-Tools.vcxproj.filters b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/SPIRV-Tools.vcxproj.filters
index ed5bbc1..b5cfc33 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/SPIRV-Tools.vcxproj.filters
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/SPIRV-Tools.vcxproj.filters
@@ -31,9 +31,6 @@
     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\extensions.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\id_descriptor.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\libspirv.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -58,6 +55,9 @@
     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\spirv_endian.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\spirv_fuzzer_options.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\spirv_optimizer_options.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -166,6 +166,9 @@
     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\val\validate_memory_semantics.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\val\validate_misc.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\val\validate_mode_setting.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -178,6 +181,9 @@
     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\val\validate_scopes.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\val\validate_small_type_uses.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\val\validate_type.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -255,9 +261,6 @@
     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\extensions.h">

       <Filter>Header Files</Filter>

     </ClInclude>

-    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\id_descriptor.h">

-      <Filter>Header Files</Filter>

-    </ClInclude>

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\instruction.h">

       <Filter>Header Files</Filter>

     </ClInclude>

@@ -297,6 +300,9 @@
     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\spirv_endian.h">

       <Filter>Header Files</Filter>

     </ClInclude>

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\spirv_fuzzer_options.h">

+      <Filter>Header Files</Filter>

+    </ClInclude>

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\spirv_optimizer_options.h">

       <Filter>Header Files</Filter>

     </ClInclude>

@@ -326,19 +332,19 @@
     </ClInclude>

   </ItemGroup>

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\ce2e413e4d25429b19113f798796d86d\build-version.inc.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\91e8d4b9222111077126a1169fd3e172\build-version.inc.rule">

       <Filter>CMake Rules</Filter>

     </CustomBuild>

   </ItemGroup>

   <ItemGroup>

     <Filter Include="CMake Rules">

-      <UniqueIdentifier>{403A9AA3-1D72-38DC-A6AB-1BFDA2377A05}</UniqueIdentifier>

+      <UniqueIdentifier>{93F83FFB-0A66-3FBE-A52D-9C65B5A808F7}</UniqueIdentifier>

     </Filter>

     <Filter Include="Header Files">

-      <UniqueIdentifier>{281137F3-F765-344F-81A1-5EAF572A72BC}</UniqueIdentifier>

+      <UniqueIdentifier>{BC358C2F-D735-3D9B-A16C-3BC6057ABC2B}</UniqueIdentifier>

     </Filter>

     <Filter Include="Source Files">

-      <UniqueIdentifier>{31403CE8-892F-3DE6-A3E1-A936F5B54DE7}</UniqueIdentifier>

+      <UniqueIdentifier>{B11E6D1A-DF77-39FB-B209-A851B3357F47}</UniqueIdentifier>

     </Filter>

   </ItemGroup>

 </Project>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/core_tables.vcxproj b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/core_tables.vcxproj
index c866418..8d9d2ea 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/core_tables.vcxproj
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/core_tables.vcxproj
@@ -14,7 +14,7 @@
     </ProjectConfiguration>

   </ItemGroup>

   <PropertyGroup Label="Globals">

-    <ProjectGuid>{D0817E36-BE58-3C95-BF64-748025994A26}</ProjectGuid>

+    <ProjectGuid>{983F7132-9747-3649-BF4B-87E69EE85F3E}</ProjectGuid>

     <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>

     <Keyword>Win32Proj</Keyword>

     <Platform>x64</Platform>

@@ -65,7 +65,7 @@
     </Midl>

   </ItemDefinitionGroup>

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\ce2e413e4d25429b19113f798796d86d\core.insts-unified1.inc.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\91e8d4b9222111077126a1169fd3e172\core.insts-unified1.inc.rule">

       <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Generate info tables for SPIR-V vunified1 core instructions and operands.</Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">setlocal

 python $(SolutionDir)third_party/SPIRV-Tools/utils/generate_grammar_tables.py --spirv-core-grammar=$(SolutionDir)third_party/SPIRV-Headers/include/spirv/unified1/spirv.core.grammar.json --extinst-debuginfo-grammar=$(SolutionDir)third_party/SPIRV-Tools/source/extinst.debuginfo.grammar.json "--core-insts-output=$(SolutionDir)build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/core.insts-unified1.inc" "--operand-kinds-output=$(SolutionDir)build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/operand.kinds-unified1.inc"

@@ -76,7 +76,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/ce2e413e4d25429b19113f798796d86d/core.insts-unified1.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\spirv.core.grammar.json;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.debuginfo.grammar.json;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/91e8d4b9222111077126a1169fd3e172/core.insts-unified1.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\spirv.core.grammar.json;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.debuginfo.grammar.json;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\core.insts-unified1.inc;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\operand.kinds-unified1.inc</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkObjects>

       <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Generate info tables for SPIR-V vunified1 core instructions and operands.</Message>

@@ -89,13 +89,13 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/ce2e413e4d25429b19113f798796d86d/core.insts-unified1.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\spirv.core.grammar.json;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.debuginfo.grammar.json;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/91e8d4b9222111077126a1169fd3e172/core.insts-unified1.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\spirv.core.grammar.json;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.debuginfo.grammar.json;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\core.insts-unified1.inc;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\operand.kinds-unified1.inc</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkObjects>

     </CustomBuild>

   </ItemGroup>

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\ce2e413e4d25429b19113f798796d86d\generators.inc.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\91e8d4b9222111077126a1169fd3e172\generators.inc.rule">

       <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Generate tables based on the SPIR-V XML registry.</Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">setlocal

 python $(SolutionDir)third_party/SPIRV-Tools/utils/generate_registry_tables.py --xml=$(SolutionDir)third_party/SPIRV-Headers/include/spirv/spir-v.xml "--generator-output=$(SolutionDir)build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/generators.inc"

@@ -106,7 +106,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/ce2e413e4d25429b19113f798796d86d/generators.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_registry_tables.py;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\spir-v.xml;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/91e8d4b9222111077126a1169fd3e172/generators.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_registry_tables.py;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\spir-v.xml;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\generators.inc</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkObjects>

       <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Generate tables based on the SPIR-V XML registry.</Message>

@@ -119,13 +119,13 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/ce2e413e4d25429b19113f798796d86d/generators.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_registry_tables.py;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\spir-v.xml;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/91e8d4b9222111077126a1169fd3e172/generators.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_registry_tables.py;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\spir-v.xml;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\generators.inc</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkObjects>

     </CustomBuild>

   </ItemGroup>

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\b1ac8d369ecc9a1a4407ddbaa3d5a88a\core_tables.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\298c9f9d2535f81bde02602c22b93442\core_tables.rule">

       <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"></Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">setlocal

 :cmEnd

@@ -134,7 +134,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/b1ac8d369ecc9a1a4407ddbaa3d5a88a/core_tables.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\core.insts-unified1.inc;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\generators.inc;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\operand.kinds-unified1.inc;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/298c9f9d2535f81bde02602c22b93442/core_tables.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\core.insts-unified1.inc;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\generators.inc;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\operand.kinds-unified1.inc;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\core_tables</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkObjects>

       <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'"></Message>

@@ -145,7 +145,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/b1ac8d369ecc9a1a4407ddbaa3d5a88a/core_tables.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\core.insts-unified1.inc;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\generators.inc;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\operand.kinds-unified1.inc;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/298c9f9d2535f81bde02602c22b93442/core_tables.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\core.insts-unified1.inc;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\generators.inc;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\operand.kinds-unified1.inc;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\core_tables</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkObjects>

     </CustomBuild>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/core_tables.vcxproj.filters b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/core_tables.vcxproj.filters
index 7a94089..2b0f818 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/core_tables.vcxproj.filters
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/core_tables.vcxproj.filters
@@ -1,13 +1,13 @@
 <?xml version="1.0" encoding="utf-8"?>

 <Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\ce2e413e4d25429b19113f798796d86d\core.insts-unified1.inc.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\91e8d4b9222111077126a1169fd3e172\core.insts-unified1.inc.rule">

       <Filter>CMake Rules</Filter>

     </CustomBuild>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\ce2e413e4d25429b19113f798796d86d\generators.inc.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\91e8d4b9222111077126a1169fd3e172\generators.inc.rule">

       <Filter>CMake Rules</Filter>

     </CustomBuild>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\b1ac8d369ecc9a1a4407ddbaa3d5a88a\core_tables.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\298c9f9d2535f81bde02602c22b93442\core_tables.rule">

       <Filter>CMake Rules</Filter>

     </CustomBuild>

   </ItemGroup>

@@ -16,7 +16,7 @@
   </ItemGroup>

   <ItemGroup>

     <Filter Include="CMake Rules">

-      <UniqueIdentifier>{403A9AA3-1D72-38DC-A6AB-1BFDA2377A05}</UniqueIdentifier>

+      <UniqueIdentifier>{93F83FFB-0A66-3FBE-A52D-9C65B5A808F7}</UniqueIdentifier>

     </Filter>

   </ItemGroup>

 </Project>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/enum_string_mapping.vcxproj b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/enum_string_mapping.vcxproj
index a4d81ae..78cf20f 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/enum_string_mapping.vcxproj
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/enum_string_mapping.vcxproj
@@ -14,7 +14,7 @@
     </ProjectConfiguration>

   </ItemGroup>

   <PropertyGroup Label="Globals">

-    <ProjectGuid>{717F5DEC-42F8-378A-90E8-CF6E340D983B}</ProjectGuid>

+    <ProjectGuid>{80AF261B-6B92-3143-9FCA-9BC59158D733}</ProjectGuid>

     <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>

     <Keyword>Win32Proj</Keyword>

     <Platform>x64</Platform>

@@ -65,7 +65,7 @@
     </Midl>

   </ItemDefinitionGroup>

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\ce2e413e4d25429b19113f798796d86d\extension_enum.inc.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\91e8d4b9222111077126a1169fd3e172\extension_enum.inc.rule">

       <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Generate enum-string mapping for SPIR-V vunified1.</Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">setlocal

 python $(SolutionDir)third_party/SPIRV-Tools/utils/generate_grammar_tables.py --spirv-core-grammar=$(SolutionDir)third_party/SPIRV-Headers/include/spirv/unified1/spirv.core.grammar.json --extinst-debuginfo-grammar=$(SolutionDir)third_party/SPIRV-Tools/source/extinst.debuginfo.grammar.json "--extension-enum-output=$(SolutionDir)build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/extension_enum.inc" "--enum-string-mapping-output=$(SolutionDir)build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/enum_string_mapping.inc"

@@ -76,7 +76,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/ce2e413e4d25429b19113f798796d86d/extension_enum.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\spirv.core.grammar.json;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.debuginfo.grammar.json;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/91e8d4b9222111077126a1169fd3e172/extension_enum.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\spirv.core.grammar.json;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.debuginfo.grammar.json;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\extension_enum.inc;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\enum_string_mapping.inc</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkObjects>

       <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Generate enum-string mapping for SPIR-V vunified1.</Message>

@@ -89,13 +89,13 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/ce2e413e4d25429b19113f798796d86d/extension_enum.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\spirv.core.grammar.json;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.debuginfo.grammar.json;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/91e8d4b9222111077126a1169fd3e172/extension_enum.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\spirv.core.grammar.json;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.debuginfo.grammar.json;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\extension_enum.inc;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\enum_string_mapping.inc</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkObjects>

     </CustomBuild>

   </ItemGroup>

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\b1ac8d369ecc9a1a4407ddbaa3d5a88a\enum_string_mapping.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\298c9f9d2535f81bde02602c22b93442\enum_string_mapping.rule">

       <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"></Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">setlocal

 :cmEnd

@@ -104,7 +104,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/b1ac8d369ecc9a1a4407ddbaa3d5a88a/enum_string_mapping.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\extension_enum.inc;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\enum_string_mapping.inc;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/298c9f9d2535f81bde02602c22b93442/enum_string_mapping.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\extension_enum.inc;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\enum_string_mapping.inc;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\enum_string_mapping</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkObjects>

       <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'"></Message>

@@ -115,7 +115,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/b1ac8d369ecc9a1a4407ddbaa3d5a88a/enum_string_mapping.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\extension_enum.inc;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\enum_string_mapping.inc;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/298c9f9d2535f81bde02602c22b93442/enum_string_mapping.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\extension_enum.inc;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\enum_string_mapping.inc;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\enum_string_mapping</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkObjects>

     </CustomBuild>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/enum_string_mapping.vcxproj.filters b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/enum_string_mapping.vcxproj.filters
index b49f6cc..832c488 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/enum_string_mapping.vcxproj.filters
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/enum_string_mapping.vcxproj.filters
@@ -1,10 +1,10 @@
 <?xml version="1.0" encoding="utf-8"?>

 <Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\ce2e413e4d25429b19113f798796d86d\extension_enum.inc.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\91e8d4b9222111077126a1169fd3e172\extension_enum.inc.rule">

       <Filter>CMake Rules</Filter>

     </CustomBuild>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\b1ac8d369ecc9a1a4407ddbaa3d5a88a\enum_string_mapping.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\298c9f9d2535f81bde02602c22b93442\enum_string_mapping.rule">

       <Filter>CMake Rules</Filter>

     </CustomBuild>

   </ItemGroup>

@@ -13,7 +13,7 @@
   </ItemGroup>

   <ItemGroup>

     <Filter Include="CMake Rules">

-      <UniqueIdentifier>{403A9AA3-1D72-38DC-A6AB-1BFDA2377A05}</UniqueIdentifier>

+      <UniqueIdentifier>{93F83FFB-0A66-3FBE-A52D-9C65B5A808F7}</UniqueIdentifier>

     </Filter>

   </ItemGroup>

 </Project>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/extinst_tables.vcxproj b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/extinst_tables.vcxproj
index 9a0d9ec..0582b5a 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/extinst_tables.vcxproj
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/extinst_tables.vcxproj
@@ -14,7 +14,7 @@
     </ProjectConfiguration>

   </ItemGroup>

   <PropertyGroup Label="Globals">

-    <ProjectGuid>{0B6F6E15-53DE-3B85-812B-825694B176F8}</ProjectGuid>

+    <ProjectGuid>{3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E}</ProjectGuid>

     <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>

     <Keyword>Win32Proj</Keyword>

     <Platform>x64</Platform>

@@ -65,7 +65,7 @@
     </Midl>

   </ItemDefinitionGroup>

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\ce2e413e4d25429b19113f798796d86d\opencl.std.insts.inc.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\91e8d4b9222111077126a1169fd3e172\opencl.std.insts.inc.rule">

       <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Generate info tables for OpenCL extended instructions and operands vunified1.</Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">setlocal

 python $(SolutionDir)third_party/SPIRV-Tools/utils/generate_grammar_tables.py --extinst-opencl-grammar=$(SolutionDir)third_party/SPIRV-Headers/include/spirv/unified1/extinst.opencl.std.100.grammar.json "--opencl-insts-output=$(SolutionDir)build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/opencl.std.insts.inc"

@@ -76,7 +76,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/ce2e413e4d25429b19113f798796d86d/opencl.std.insts.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\spirv.core.grammar.json;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\extinst.opencl.std.100.grammar.json;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/91e8d4b9222111077126a1169fd3e172/opencl.std.insts.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\spirv.core.grammar.json;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\extinst.opencl.std.100.grammar.json;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\opencl.std.insts.inc</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkObjects>

       <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Generate info tables for OpenCL extended instructions and operands vunified1.</Message>

@@ -89,13 +89,13 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/ce2e413e4d25429b19113f798796d86d/opencl.std.insts.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\spirv.core.grammar.json;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\extinst.opencl.std.100.grammar.json;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/91e8d4b9222111077126a1169fd3e172/opencl.std.insts.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\spirv.core.grammar.json;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\extinst.opencl.std.100.grammar.json;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\opencl.std.insts.inc</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkObjects>

     </CustomBuild>

   </ItemGroup>

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\ce2e413e4d25429b19113f798796d86d\glsl.std.450.insts.inc.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\91e8d4b9222111077126a1169fd3e172\glsl.std.450.insts.inc.rule">

       <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Generate info tables for GLSL extended instructions and operands vunified1.</Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">setlocal

 python $(SolutionDir)third_party/SPIRV-Tools/utils/generate_grammar_tables.py --extinst-glsl-grammar=$(SolutionDir)third_party/SPIRV-Headers/include/spirv/unified1/extinst.glsl.std.450.grammar.json "--glsl-insts-output=$(SolutionDir)build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/glsl.std.450.insts.inc"

@@ -106,7 +106,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/ce2e413e4d25429b19113f798796d86d/glsl.std.450.insts.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\spirv.core.grammar.json;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\extinst.glsl.std.450.grammar.json;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/91e8d4b9222111077126a1169fd3e172/glsl.std.450.insts.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\spirv.core.grammar.json;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\extinst.glsl.std.450.grammar.json;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\glsl.std.450.insts.inc</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkObjects>

       <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Generate info tables for GLSL extended instructions and operands vunified1.</Message>

@@ -119,13 +119,13 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/ce2e413e4d25429b19113f798796d86d/glsl.std.450.insts.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\spirv.core.grammar.json;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\extinst.glsl.std.450.grammar.json;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/91e8d4b9222111077126a1169fd3e172/glsl.std.450.insts.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\spirv.core.grammar.json;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\extinst.glsl.std.450.grammar.json;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\glsl.std.450.insts.inc</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkObjects>

     </CustomBuild>

   </ItemGroup>

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\b1ac8d369ecc9a1a4407ddbaa3d5a88a\extinst_tables.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\298c9f9d2535f81bde02602c22b93442\extinst_tables.rule">

       <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"></Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">setlocal

 :cmEnd

@@ -134,7 +134,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/b1ac8d369ecc9a1a4407ddbaa3d5a88a/extinst_tables.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\opencl.std.insts.inc;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\glsl.std.450.insts.inc;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/298c9f9d2535f81bde02602c22b93442/extinst_tables.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\opencl.std.insts.inc;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\glsl.std.450.insts.inc;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\extinst_tables</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkObjects>

       <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'"></Message>

@@ -145,7 +145,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/b1ac8d369ecc9a1a4407ddbaa3d5a88a/extinst_tables.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\opencl.std.insts.inc;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\glsl.std.450.insts.inc;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/298c9f9d2535f81bde02602c22b93442/extinst_tables.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\opencl.std.insts.inc;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\glsl.std.450.insts.inc;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\extinst_tables</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkObjects>

     </CustomBuild>

@@ -154,39 +154,39 @@
     <None Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\extinst_tables" />

   </ItemGroup>

   <ItemGroup>

-    <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\spirv-tools-debuginfo.vcxproj">

-      <Project>{E86A9777-6C04-38BC-AC03-32F171BA9037}</Project>

-      <Name>spirv-tools-debuginfo</Name>

-      <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

-      <CopyToOutputDirectory>Never</CopyToOutputDirectory>

-    </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\spirv-tools-header-DebugInfo.vcxproj">

-      <Project>{EA1FDDD6-3BE8-3A92-B7F9-C8E032D7F1A2}</Project>

+      <Project>{39DFA88C-1DC6-3E6F-A71F-7970C1B8E483}</Project>

       <Name>spirv-tools-header-DebugInfo</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

-    <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\spirv-tools-spv-amd-gcn-shader.vcxproj">

-      <Project>{4DE77359-5B7E-3EF3-AB38-9F4FF62D4935}</Project>

-      <Name>spirv-tools-spv-amd-gcn-shader</Name>

+    <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\spv-tools-debuginfo.vcxproj">

+      <Project>{496AF3EC-139A-3EA0-8898-45C5704A5F38}</Project>

+      <Name>spv-tools-debuginfo</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

-    <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\spirv-tools-spv-amd-shader-ballot.vcxproj">

-      <Project>{25CAC665-41EF-3770-B3AC-1C090D2AC7EA}</Project>

-      <Name>spirv-tools-spv-amd-shader-ballot</Name>

+    <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\spv-tools-spv-amd-gs.vcxproj">

+      <Project>{E0B79E0B-25BB-355B-9390-E9EC0047C632}</Project>

+      <Name>spv-tools-spv-amd-gs</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

-    <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\spirv-tools-spv-amd-shader-explicit-vertex-parameter.vcxproj">

-      <Project>{95DD96F6-D410-3911-B61A-C0AA0D6EBD2C}</Project>

-      <Name>spirv-tools-spv-amd-shader-explicit-vertex-parameter</Name>

+    <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\spv-tools-spv-amd-sb.vcxproj">

+      <Project>{1262CB67-3BC7-35D5-9036-3D3B3A9DC3CE}</Project>

+      <Name>spv-tools-spv-amd-sb</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

-    <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\spirv-tools-spv-amd-shader-trinary-minmax.vcxproj">

-      <Project>{D31F2A2D-3E6E-3541-A885-0D28DBE02FE8}</Project>

-      <Name>spirv-tools-spv-amd-shader-trinary-minmax</Name>

+    <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\spv-tools-spv-amd-sevp.vcxproj">

+      <Project>{32C0DDEA-EC24-3465-B0F9-9DA187D45ED3}</Project>

+      <Name>spv-tools-spv-amd-sevp</Name>

+      <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

+      <CopyToOutputDirectory>Never</CopyToOutputDirectory>

+    </ProjectReference>

+    <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\spv-tools-spv-amd-stm.vcxproj">

+      <Project>{9E8623BF-3469-3104-9674-DED25861C7CF}</Project>

+      <Name>spv-tools-spv-amd-stm</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/extinst_tables.vcxproj.filters b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/extinst_tables.vcxproj.filters
index 4bd95a9..6c705c3 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/extinst_tables.vcxproj.filters
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/extinst_tables.vcxproj.filters
@@ -1,13 +1,13 @@
 <?xml version="1.0" encoding="utf-8"?>

 <Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\ce2e413e4d25429b19113f798796d86d\opencl.std.insts.inc.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\91e8d4b9222111077126a1169fd3e172\opencl.std.insts.inc.rule">

       <Filter>CMake Rules</Filter>

     </CustomBuild>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\ce2e413e4d25429b19113f798796d86d\glsl.std.450.insts.inc.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\91e8d4b9222111077126a1169fd3e172\glsl.std.450.insts.inc.rule">

       <Filter>CMake Rules</Filter>

     </CustomBuild>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\b1ac8d369ecc9a1a4407ddbaa3d5a88a\extinst_tables.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\298c9f9d2535f81bde02602c22b93442\extinst_tables.rule">

       <Filter>CMake Rules</Filter>

     </CustomBuild>

   </ItemGroup>

@@ -16,7 +16,7 @@
   </ItemGroup>

   <ItemGroup>

     <Filter Include="CMake Rules">

-      <UniqueIdentifier>{403A9AA3-1D72-38DC-A6AB-1BFDA2377A05}</UniqueIdentifier>

+      <UniqueIdentifier>{93F83FFB-0A66-3FBE-A52D-9C65B5A808F7}</UniqueIdentifier>

     </Filter>

   </ItemGroup>

 </Project>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/link/SPIRV-Tools-link.vcxproj b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/link/SPIRV-Tools-link.vcxproj
index 938f4da..f39cd7b 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/link/SPIRV-Tools-link.vcxproj
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/link/SPIRV-Tools-link.vcxproj
@@ -14,7 +14,7 @@
     </ProjectConfiguration>

   </ItemGroup>

   <PropertyGroup Label="Globals">

-    <ProjectGuid>{F71D815F-E43A-34C5-92DE-15BF331D63CF}</ProjectGuid>

+    <ProjectGuid>{878BEAEA-CC28-3E97-B0F5-DB93FBC28A23}</ProjectGuid>

     <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>

     <Keyword>Win32Proj</Keyword>

     <Platform>x64</Platform>

@@ -129,13 +129,13 @@
   </ItemGroup>

   <ItemGroup>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\SPIRV-Tools.vcxproj">

-      <Project>{83D86993-70D0-336A-84F1-8B952B8079DD}</Project>

+      <Project>{59349DEB-AC96-335C-ACC6-8A92F774538A}</Project>

       <Name>SPIRV-Tools</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\opt\SPIRV-Tools-opt.vcxproj">

-      <Project>{CE414127-5528-30F5-9F5F-5AF9D2B8C04C}</Project>

+      <Project>{EFF5DE98-2741-3BD8-B049-D5647A223B5E}</Project>

       <Name>SPIRV-Tools-opt</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/link/SPIRV-Tools-link.vcxproj.filters b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/link/SPIRV-Tools-link.vcxproj.filters
index 504f3a1..f382880 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/link/SPIRV-Tools-link.vcxproj.filters
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/link/SPIRV-Tools-link.vcxproj.filters
@@ -7,7 +7,7 @@
   </ItemGroup>

   <ItemGroup>

     <Filter Include="Source Files">

-      <UniqueIdentifier>{31403CE8-892F-3DE6-A3E1-A936F5B54DE7}</UniqueIdentifier>

+      <UniqueIdentifier>{B11E6D1A-DF77-39FB-B209-A851B3357F47}</UniqueIdentifier>

     </Filter>

   </ItemGroup>

 </Project>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/opt/SPIRV-Tools-opt.vcxproj b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/opt/SPIRV-Tools-opt.vcxproj
index 2bc739b..79be5b0 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/opt/SPIRV-Tools-opt.vcxproj
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/opt/SPIRV-Tools-opt.vcxproj
@@ -14,7 +14,7 @@
     </ProjectConfiguration>

   </ItemGroup>

   <PropertyGroup Label="Globals">

-    <ProjectGuid>{CE414127-5528-30F5-9F5F-5AF9D2B8C04C}</ProjectGuid>

+    <ProjectGuid>{EFF5DE98-2741-3BD8-B049-D5647A223B5E}</ProjectGuid>

     <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>

     <Keyword>Win32Proj</Keyword>

     <Platform>x64</Platform>

@@ -130,13 +130,13 @@
     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\aggressive_dead_code_elim_pass.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\basic_block.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\block_merge_pass.h" />

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\block_merge_util.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\build_module.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\ccp_pass.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\cfg_cleanup_pass.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\cfg.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\code_sink.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\combine_access_chains.h" />

-    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\common_uniform_elim_pass.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\compact_ids_pass.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\composite.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\const_folding_rules.h" />

@@ -145,19 +145,24 @@
     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\dead_branch_elim_pass.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\dead_insert_elim_pass.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\dead_variable_elimination.h" />

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\decompose_initialized_variables_pass.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\decoration_manager.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\def_use_manager.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\dominator_analysis.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\dominator_tree.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\eliminate_dead_constant_pass.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\eliminate_dead_functions_pass.h" />

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\eliminate_dead_functions_util.h" />

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\eliminate_dead_members_pass.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\feature_manager.h" />

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\fix_storage_class.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\flatten_decoration_pass.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\fold.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\folding_rules.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\fold_spec_constant_op_and_composite_pass.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\freeze_spec_constant_value_pass.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\function.h" />

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\generate_webgpu_initializers_pass.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\if_conversion.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\inline_exhaustive_pass.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\inline_opaque_pass.h" />

@@ -206,8 +211,10 @@
     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\scalar_replacement_pass.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\set_spec_constant_default_value_pass.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\simplification_pass.h" />

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\split_invalid_unreachable_pass.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\ssa_rewrite_pass.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\strength_reduction_pass.h" />

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\strip_atomic_counter_memory_pass.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\strip_debug_info_pass.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\strip_reflect_info_pass.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\struct_cfg_analysis.h" />

@@ -255,6 +262,18 @@
       <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_opt.h</PrecompiledHeaderFile>

       <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_opt.pch</PrecompiledHeaderOutputFile>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\block_merge_util.cpp">

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_opt.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_opt.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)\pch_source_opt.pch</PrecompiledHeaderOutputFile>

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_opt.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_opt.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_opt.pch</PrecompiledHeaderOutputFile>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\build_module.cpp">

       <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

       <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_opt.h</ForcedIncludeFiles>

@@ -327,18 +346,6 @@
       <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_opt.h</PrecompiledHeaderFile>

       <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_opt.pch</PrecompiledHeaderOutputFile>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\common_uniform_elim_pass.cpp">

-      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

-      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_opt.h</ForcedIncludeFiles>

-      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

-      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_opt.h</PrecompiledHeaderFile>

-      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)\pch_source_opt.pch</PrecompiledHeaderOutputFile>

-      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

-      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_opt.h</ForcedIncludeFiles>

-      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Use</PrecompiledHeader>

-      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_opt.h</PrecompiledHeaderFile>

-      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_opt.pch</PrecompiledHeaderOutputFile>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\compact_ids_pass.cpp">

       <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

       <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_opt.h</ForcedIncludeFiles>

@@ -435,6 +442,18 @@
       <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_opt.h</PrecompiledHeaderFile>

       <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_opt.pch</PrecompiledHeaderOutputFile>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\decompose_initialized_variables_pass.cpp">

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_opt.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_opt.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)\pch_source_opt.pch</PrecompiledHeaderOutputFile>

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_opt.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_opt.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_opt.pch</PrecompiledHeaderOutputFile>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\decoration_manager.cpp">

       <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

       <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_opt.h</ForcedIncludeFiles>

@@ -507,6 +526,30 @@
       <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_opt.h</PrecompiledHeaderFile>

       <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_opt.pch</PrecompiledHeaderOutputFile>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\eliminate_dead_functions_util.cpp">

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_opt.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_opt.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)\pch_source_opt.pch</PrecompiledHeaderOutputFile>

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_opt.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_opt.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_opt.pch</PrecompiledHeaderOutputFile>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\eliminate_dead_members_pass.cpp">

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_opt.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_opt.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)\pch_source_opt.pch</PrecompiledHeaderOutputFile>

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_opt.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_opt.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_opt.pch</PrecompiledHeaderOutputFile>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\feature_manager.cpp">

       <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

       <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_opt.h</ForcedIncludeFiles>

@@ -519,6 +562,18 @@
       <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_opt.h</PrecompiledHeaderFile>

       <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_opt.pch</PrecompiledHeaderOutputFile>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\fix_storage_class.cpp">

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_opt.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_opt.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)\pch_source_opt.pch</PrecompiledHeaderOutputFile>

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_opt.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_opt.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_opt.pch</PrecompiledHeaderOutputFile>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\flatten_decoration_pass.cpp">

       <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

       <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_opt.h</ForcedIncludeFiles>

@@ -591,6 +646,18 @@
       <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_opt.h</PrecompiledHeaderFile>

       <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_opt.pch</PrecompiledHeaderOutputFile>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\generate_webgpu_initializers_pass.cpp">

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_opt.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_opt.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)\pch_source_opt.pch</PrecompiledHeaderOutputFile>

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_opt.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_opt.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_opt.pch</PrecompiledHeaderOutputFile>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\if_conversion.cpp">

       <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

       <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_opt.h</ForcedIncludeFiles>

@@ -711,6 +778,18 @@
       <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_opt.h</PrecompiledHeaderFile>

       <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_opt.pch</PrecompiledHeaderOutputFile>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\legalize_vector_shuffle_pass.cpp">

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_opt.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_opt.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)\pch_source_opt.pch</PrecompiledHeaderOutputFile>

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_opt.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_opt.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_opt.pch</PrecompiledHeaderOutputFile>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\licm_pass.cpp">

       <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

       <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_opt.h</ForcedIncludeFiles>

@@ -1131,6 +1210,18 @@
       <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_opt.h</PrecompiledHeaderFile>

       <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_opt.pch</PrecompiledHeaderOutputFile>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\split_invalid_unreachable_pass.cpp">

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_opt.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_opt.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)\pch_source_opt.pch</PrecompiledHeaderOutputFile>

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_opt.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_opt.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_opt.pch</PrecompiledHeaderOutputFile>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\ssa_rewrite_pass.cpp">

       <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

       <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_opt.h</ForcedIncludeFiles>

@@ -1155,6 +1246,18 @@
       <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_opt.h</PrecompiledHeaderFile>

       <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_opt.pch</PrecompiledHeaderOutputFile>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\strip_atomic_counter_memory_pass.cpp">

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_opt.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_opt.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)\pch_source_opt.pch</PrecompiledHeaderOutputFile>

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_opt.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_opt.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_opt.pch</PrecompiledHeaderOutputFile>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\strip_debug_info_pass.cpp">

       <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

       <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_opt.h</ForcedIncludeFiles>

@@ -1288,7 +1391,7 @@
   </ItemGroup>

   <ItemGroup>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\SPIRV-Tools.vcxproj">

-      <Project>{83D86993-70D0-336A-84F1-8B952B8079DD}</Project>

+      <Project>{59349DEB-AC96-335C-ACC6-8A92F774538A}</Project>

       <Name>SPIRV-Tools</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/opt/SPIRV-Tools-opt.vcxproj.filters b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/opt/SPIRV-Tools-opt.vcxproj.filters
index 04b473d..0159b3d 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/opt/SPIRV-Tools-opt.vcxproj.filters
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/opt/SPIRV-Tools-opt.vcxproj.filters
@@ -10,6 +10,9 @@
     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\block_merge_pass.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\block_merge_util.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\build_module.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -28,9 +31,6 @@
     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\combine_access_chains.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\common_uniform_elim_pass.cpp">

-      <Filter>Source Files</Filter>

-    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\compact_ids_pass.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -55,6 +55,9 @@
     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\dead_variable_elimination.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\decompose_initialized_variables_pass.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\decoration_manager.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -73,9 +76,18 @@
     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\eliminate_dead_functions_pass.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\eliminate_dead_functions_util.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\eliminate_dead_members_pass.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\feature_manager.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\fix_storage_class.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\flatten_decoration_pass.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -94,6 +106,9 @@
     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\function.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\generate_webgpu_initializers_pass.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\if_conversion.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -124,6 +139,9 @@
     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\ir_loader.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\legalize_vector_shuffle_pass.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\licm_pass.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -229,12 +247,18 @@
     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\simplification_pass.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\split_invalid_unreachable_pass.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\ssa_rewrite_pass.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\strength_reduction_pass.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\strip_atomic_counter_memory_pass.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\strip_debug_info_pass.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

@@ -279,6 +303,9 @@
     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\block_merge_pass.h">

       <Filter>Header Files</Filter>

     </ClInclude>

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\block_merge_util.h">

+      <Filter>Header Files</Filter>

+    </ClInclude>

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\build_module.h">

       <Filter>Header Files</Filter>

     </ClInclude>

@@ -297,9 +324,6 @@
     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\combine_access_chains.h">

       <Filter>Header Files</Filter>

     </ClInclude>

-    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\common_uniform_elim_pass.h">

-      <Filter>Header Files</Filter>

-    </ClInclude>

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\compact_ids_pass.h">

       <Filter>Header Files</Filter>

     </ClInclude>

@@ -324,6 +348,9 @@
     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\dead_variable_elimination.h">

       <Filter>Header Files</Filter>

     </ClInclude>

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\decompose_initialized_variables_pass.h">

+      <Filter>Header Files</Filter>

+    </ClInclude>

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\decoration_manager.h">

       <Filter>Header Files</Filter>

     </ClInclude>

@@ -342,9 +369,18 @@
     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\eliminate_dead_functions_pass.h">

       <Filter>Header Files</Filter>

     </ClInclude>

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\eliminate_dead_functions_util.h">

+      <Filter>Header Files</Filter>

+    </ClInclude>

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\eliminate_dead_members_pass.h">

+      <Filter>Header Files</Filter>

+    </ClInclude>

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\feature_manager.h">

       <Filter>Header Files</Filter>

     </ClInclude>

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\fix_storage_class.h">

+      <Filter>Header Files</Filter>

+    </ClInclude>

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\flatten_decoration_pass.h">

       <Filter>Header Files</Filter>

     </ClInclude>

@@ -363,6 +399,9 @@
     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\function.h">

       <Filter>Header Files</Filter>

     </ClInclude>

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\generate_webgpu_initializers_pass.h">

+      <Filter>Header Files</Filter>

+    </ClInclude>

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\if_conversion.h">

       <Filter>Header Files</Filter>

     </ClInclude>

@@ -507,12 +546,18 @@
     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\simplification_pass.h">

       <Filter>Header Files</Filter>

     </ClInclude>

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\split_invalid_unreachable_pass.h">

+      <Filter>Header Files</Filter>

+    </ClInclude>

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\ssa_rewrite_pass.h">

       <Filter>Header Files</Filter>

     </ClInclude>

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\strength_reduction_pass.h">

       <Filter>Header Files</Filter>

     </ClInclude>

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\strip_atomic_counter_memory_pass.h">

+      <Filter>Header Files</Filter>

+    </ClInclude>

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\opt\strip_debug_info_pass.h">

       <Filter>Header Files</Filter>

     </ClInclude>

@@ -549,10 +594,10 @@
   </ItemGroup>

   <ItemGroup>

     <Filter Include="Header Files">

-      <UniqueIdentifier>{281137F3-F765-344F-81A1-5EAF572A72BC}</UniqueIdentifier>

+      <UniqueIdentifier>{BC358C2F-D735-3D9B-A16C-3BC6057ABC2B}</UniqueIdentifier>

     </Filter>

     <Filter Include="Source Files">

-      <UniqueIdentifier>{31403CE8-892F-3DE6-A3E1-A936F5B54DE7}</UniqueIdentifier>

+      <UniqueIdentifier>{B11E6D1A-DF77-39FB-B209-A851B3357F47}</UniqueIdentifier>

     </Filter>

   </ItemGroup>

 </Project>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/reduce/SPIRV-Tools-reduce.vcxproj b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/reduce/SPIRV-Tools-reduce.vcxproj
index 8f047da..85ac6fa 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/reduce/SPIRV-Tools-reduce.vcxproj
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/reduce/SPIRV-Tools-reduce.vcxproj
@@ -14,7 +14,7 @@
     </ProjectConfiguration>

   </ItemGroup>

   <PropertyGroup Label="Globals">

-    <ProjectGuid>{C5C298F8-C2B9-3D36-B183-02D4620C0C55}</ProjectGuid>

+    <ProjectGuid>{D1FC198E-1358-309D-9AD5-C26B47163E33}</ProjectGuid>

     <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>

     <Keyword>Win32Proj</Keyword>

     <Platform>x64</Platform>

@@ -129,18 +129,31 @@
   <ItemGroup>

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\change_operand_reduction_opportunity.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\change_operand_to_undef_reduction_opportunity.h" />

-    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\operand_to_const_reduction_pass.h" />

-    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\operand_to_undef_reduction_pass.h" />

-    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\operand_to_dominating_id_reduction_pass.h" />

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\merge_blocks_reduction_opportunity.h" />

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\merge_blocks_reduction_opportunity_finder.h" />

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\operand_to_const_reduction_opportunity_finder.h" />

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\operand_to_undef_reduction_opportunity_finder.h" />

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\operand_to_dominating_id_reduction_opportunity_finder.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\reducer.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\reduction_opportunity.h" />

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\reduction_opportunity_finder.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\reduction_pass.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\reduction_util.h" />

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_block_reduction_opportunity.h" />

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_block_reduction_opportunity_finder.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_instruction_reduction_opportunity.h" />

-    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_opname_instruction_reduction_pass.h" />

-    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_unreferenced_instruction_reduction_pass.h" />

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_function_reduction_opportunity.h" />

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_function_reduction_opportunity_finder.h" />

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_opname_instruction_reduction_opportunity_finder.h" />

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_selection_reduction_opportunity.h" />

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_selection_reduction_opportunity_finder.h" />

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_unreferenced_instruction_reduction_opportunity_finder.h" />

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\structured_loop_to_selection_reduction_opportunity.h" />

-    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\structured_loop_to_selection_reduction_pass.h" />

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\structured_loop_to_selection_reduction_opportunity_finder.h" />

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\conditional_branch_to_simple_conditional_branch_opportunity_finder.h" />

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\conditional_branch_to_simple_conditional_branch_reduction_opportunity.h" />

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\simple_conditional_branch_to_branch_opportunity_finder.h" />

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\simple_conditional_branch_to_branch_reduction_opportunity.h" />

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\change_operand_reduction_opportunity.cpp">

       <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

       <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</ForcedIncludeFiles>

@@ -165,7 +178,7 @@
       <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_reduce.h</PrecompiledHeaderFile>

       <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_reduce.pch</PrecompiledHeaderOutputFile>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\operand_to_const_reduction_pass.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\merge_blocks_reduction_opportunity.cpp">

       <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

       <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</ForcedIncludeFiles>

       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

@@ -177,7 +190,7 @@
       <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_reduce.h</PrecompiledHeaderFile>

       <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_reduce.pch</PrecompiledHeaderOutputFile>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\operand_to_undef_reduction_pass.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\merge_blocks_reduction_opportunity_finder.cpp">

       <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

       <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</ForcedIncludeFiles>

       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

@@ -189,7 +202,31 @@
       <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_reduce.h</PrecompiledHeaderFile>

       <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_reduce.pch</PrecompiledHeaderOutputFile>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\operand_to_dominating_id_reduction_pass.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\operand_to_const_reduction_opportunity_finder.cpp">

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)\pch_source_reduce.pch</PrecompiledHeaderOutputFile>

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_reduce.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_reduce.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_reduce.pch</PrecompiledHeaderOutputFile>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\operand_to_undef_reduction_opportunity_finder.cpp">

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)\pch_source_reduce.pch</PrecompiledHeaderOutputFile>

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_reduce.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_reduce.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_reduce.pch</PrecompiledHeaderOutputFile>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\operand_to_dominating_id_reduction_opportunity_finder.cpp">

       <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

       <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</ForcedIncludeFiles>

       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

@@ -249,6 +286,54 @@
       <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_reduce.h</PrecompiledHeaderFile>

       <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_reduce.pch</PrecompiledHeaderOutputFile>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_block_reduction_opportunity.cpp">

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)\pch_source_reduce.pch</PrecompiledHeaderOutputFile>

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_reduce.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_reduce.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_reduce.pch</PrecompiledHeaderOutputFile>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_block_reduction_opportunity_finder.cpp">

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)\pch_source_reduce.pch</PrecompiledHeaderOutputFile>

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_reduce.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_reduce.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_reduce.pch</PrecompiledHeaderOutputFile>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_function_reduction_opportunity.cpp">

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)\pch_source_reduce.pch</PrecompiledHeaderOutputFile>

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_reduce.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_reduce.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_reduce.pch</PrecompiledHeaderOutputFile>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_function_reduction_opportunity_finder.cpp">

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)\pch_source_reduce.pch</PrecompiledHeaderOutputFile>

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_reduce.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_reduce.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_reduce.pch</PrecompiledHeaderOutputFile>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_instruction_reduction_opportunity.cpp">

       <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

       <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</ForcedIncludeFiles>

@@ -261,7 +346,7 @@
       <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_reduce.h</PrecompiledHeaderFile>

       <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_reduce.pch</PrecompiledHeaderOutputFile>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_unreferenced_instruction_reduction_pass.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_selection_reduction_opportunity.cpp">

       <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

       <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</ForcedIncludeFiles>

       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

@@ -273,7 +358,31 @@
       <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_reduce.h</PrecompiledHeaderFile>

       <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_reduce.pch</PrecompiledHeaderOutputFile>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_opname_instruction_reduction_pass.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_selection_reduction_opportunity_finder.cpp">

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)\pch_source_reduce.pch</PrecompiledHeaderOutputFile>

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_reduce.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_reduce.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_reduce.pch</PrecompiledHeaderOutputFile>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_unreferenced_instruction_reduction_opportunity_finder.cpp">

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)\pch_source_reduce.pch</PrecompiledHeaderOutputFile>

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_reduce.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_reduce.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_reduce.pch</PrecompiledHeaderOutputFile>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_opname_instruction_reduction_opportunity_finder.cpp">

       <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

       <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</ForcedIncludeFiles>

       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

@@ -297,7 +406,55 @@
       <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_reduce.h</PrecompiledHeaderFile>

       <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_reduce.pch</PrecompiledHeaderOutputFile>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\structured_loop_to_selection_reduction_pass.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\structured_loop_to_selection_reduction_opportunity_finder.cpp">

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)\pch_source_reduce.pch</PrecompiledHeaderOutputFile>

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_reduce.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_reduce.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_reduce.pch</PrecompiledHeaderOutputFile>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\conditional_branch_to_simple_conditional_branch_opportunity_finder.cpp">

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)\pch_source_reduce.pch</PrecompiledHeaderOutputFile>

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_reduce.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_reduce.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_reduce.pch</PrecompiledHeaderOutputFile>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\conditional_branch_to_simple_conditional_branch_reduction_opportunity.cpp">

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)\pch_source_reduce.pch</PrecompiledHeaderOutputFile>

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_reduce.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_reduce.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_reduce.pch</PrecompiledHeaderOutputFile>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\simple_conditional_branch_to_branch_opportunity_finder.cpp">

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)\pch_source_reduce.pch</PrecompiledHeaderOutputFile>

+      <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

+      <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_reduce.h</ForcedIncludeFiles>

+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Use</PrecompiledHeader>

+      <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch_source_reduce.h</PrecompiledHeaderFile>

+      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\pch_source_reduce.pch</PrecompiledHeaderOutputFile>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\simple_conditional_branch_to_branch_reduction_opportunity.cpp">

       <AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalOptions) /Zm300</AdditionalOptions>

       <ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch_source_reduce.h</ForcedIncludeFiles>

       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>

@@ -322,13 +479,13 @@
   </ItemGroup>

   <ItemGroup>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\SPIRV-Tools.vcxproj">

-      <Project>{83D86993-70D0-336A-84F1-8B952B8079DD}</Project>

+      <Project>{59349DEB-AC96-335C-ACC6-8A92F774538A}</Project>

       <Name>SPIRV-Tools</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

     </ProjectReference>

     <ProjectReference Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\opt\SPIRV-Tools-opt.vcxproj">

-      <Project>{CE414127-5528-30F5-9F5F-5AF9D2B8C04C}</Project>

+      <Project>{EFF5DE98-2741-3BD8-B049-D5647A223B5E}</Project>

       <Name>SPIRV-Tools-opt</Name>

       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>

       <CopyToOutputDirectory>Never</CopyToOutputDirectory>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/reduce/SPIRV-Tools-reduce.vcxproj.filters b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/reduce/SPIRV-Tools-reduce.vcxproj.filters
index 9dc3d1a..41fa2c0 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/reduce/SPIRV-Tools-reduce.vcxproj.filters
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/reduce/SPIRV-Tools-reduce.vcxproj.filters
@@ -7,13 +7,19 @@
     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\change_operand_to_undef_reduction_opportunity.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\operand_to_const_reduction_pass.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\merge_blocks_reduction_opportunity.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\operand_to_undef_reduction_pass.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\merge_blocks_reduction_opportunity_finder.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\operand_to_dominating_id_reduction_pass.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\operand_to_const_reduction_opportunity_finder.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\operand_to_undef_reduction_opportunity_finder.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\operand_to_dominating_id_reduction_opportunity_finder.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\reducer.cpp">

@@ -28,19 +34,49 @@
     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\reduction_util.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_block_reduction_opportunity.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_block_reduction_opportunity_finder.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_function_reduction_opportunity.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_function_reduction_opportunity_finder.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_instruction_reduction_opportunity.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_unreferenced_instruction_reduction_pass.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_selection_reduction_opportunity.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_opname_instruction_reduction_pass.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_selection_reduction_opportunity_finder.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_unreferenced_instruction_reduction_opportunity_finder.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_opname_instruction_reduction_opportunity_finder.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\structured_loop_to_selection_reduction_opportunity.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

-    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\structured_loop_to_selection_reduction_pass.cpp">

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\structured_loop_to_selection_reduction_opportunity_finder.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\conditional_branch_to_simple_conditional_branch_opportunity_finder.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\conditional_branch_to_simple_conditional_branch_reduction_opportunity.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\simple_conditional_branch_to_branch_opportunity_finder.cpp">

+      <Filter>Source Files</Filter>

+    </ClCompile>

+    <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\simple_conditional_branch_to_branch_reduction_opportunity.cpp">

       <Filter>Source Files</Filter>

     </ClCompile>

     <ClCompile Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\pch_source_reduce.cpp">

@@ -54,13 +90,19 @@
     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\change_operand_to_undef_reduction_opportunity.h">

       <Filter>Header Files</Filter>

     </ClInclude>

-    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\operand_to_const_reduction_pass.h">

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\merge_blocks_reduction_opportunity.h">

       <Filter>Header Files</Filter>

     </ClInclude>

-    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\operand_to_undef_reduction_pass.h">

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\merge_blocks_reduction_opportunity_finder.h">

       <Filter>Header Files</Filter>

     </ClInclude>

-    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\operand_to_dominating_id_reduction_pass.h">

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\operand_to_const_reduction_opportunity_finder.h">

+      <Filter>Header Files</Filter>

+    </ClInclude>

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\operand_to_undef_reduction_opportunity_finder.h">

+      <Filter>Header Files</Filter>

+    </ClInclude>

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\operand_to_dominating_id_reduction_opportunity_finder.h">

       <Filter>Header Files</Filter>

     </ClInclude>

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\reducer.h">

@@ -69,34 +111,67 @@
     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\reduction_opportunity.h">

       <Filter>Header Files</Filter>

     </ClInclude>

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\reduction_opportunity_finder.h">

+      <Filter>Header Files</Filter>

+    </ClInclude>

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\reduction_pass.h">

       <Filter>Header Files</Filter>

     </ClInclude>

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\reduction_util.h">

       <Filter>Header Files</Filter>

     </ClInclude>

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_block_reduction_opportunity.h">

+      <Filter>Header Files</Filter>

+    </ClInclude>

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_block_reduction_opportunity_finder.h">

+      <Filter>Header Files</Filter>

+    </ClInclude>

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_instruction_reduction_opportunity.h">

       <Filter>Header Files</Filter>

     </ClInclude>

-    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_opname_instruction_reduction_pass.h">

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_function_reduction_opportunity.h">

       <Filter>Header Files</Filter>

     </ClInclude>

-    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_unreferenced_instruction_reduction_pass.h">

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_function_reduction_opportunity_finder.h">

+      <Filter>Header Files</Filter>

+    </ClInclude>

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_opname_instruction_reduction_opportunity_finder.h">

+      <Filter>Header Files</Filter>

+    </ClInclude>

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_selection_reduction_opportunity.h">

+      <Filter>Header Files</Filter>

+    </ClInclude>

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_selection_reduction_opportunity_finder.h">

+      <Filter>Header Files</Filter>

+    </ClInclude>

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\remove_unreferenced_instruction_reduction_opportunity_finder.h">

       <Filter>Header Files</Filter>

     </ClInclude>

     <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\structured_loop_to_selection_reduction_opportunity.h">

       <Filter>Header Files</Filter>

     </ClInclude>

-    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\structured_loop_to_selection_reduction_pass.h">

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\structured_loop_to_selection_reduction_opportunity_finder.h">

+      <Filter>Header Files</Filter>

+    </ClInclude>

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\conditional_branch_to_simple_conditional_branch_opportunity_finder.h">

+      <Filter>Header Files</Filter>

+    </ClInclude>

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\conditional_branch_to_simple_conditional_branch_reduction_opportunity.h">

+      <Filter>Header Files</Filter>

+    </ClInclude>

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\simple_conditional_branch_to_branch_opportunity_finder.h">

+      <Filter>Header Files</Filter>

+    </ClInclude>

+    <ClInclude Include="$(SolutionDir)third_party\SPIRV-Tools\source\reduce\simple_conditional_branch_to_branch_reduction_opportunity.h">

       <Filter>Header Files</Filter>

     </ClInclude>

   </ItemGroup>

   <ItemGroup>

     <Filter Include="Header Files">

-      <UniqueIdentifier>{281137F3-F765-344F-81A1-5EAF572A72BC}</UniqueIdentifier>

+      <UniqueIdentifier>{BC358C2F-D735-3D9B-A16C-3BC6057ABC2B}</UniqueIdentifier>

     </Filter>

     <Filter Include="Source Files">

-      <UniqueIdentifier>{31403CE8-892F-3DE6-A3E1-A936F5B54DE7}</UniqueIdentifier>

+      <UniqueIdentifier>{B11E6D1A-DF77-39FB-B209-A851B3357F47}</UniqueIdentifier>

     </Filter>

   </ItemGroup>

 </Project>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-build-version.vcxproj b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-build-version.vcxproj
index eebdc90..037cdf6 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-build-version.vcxproj
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-build-version.vcxproj
@@ -14,7 +14,7 @@
     </ProjectConfiguration>

   </ItemGroup>

   <PropertyGroup Label="Globals">

-    <ProjectGuid>{02ED56AE-98AF-3FAB-BA26-B310F23DBCC7}</ProjectGuid>

+    <ProjectGuid>{E6C11FBC-3EC2-3A61-B2F4-EC03BE2CDC63}</ProjectGuid>

     <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>

     <Keyword>Win32Proj</Keyword>

     <Platform>x64</Platform>

@@ -65,7 +65,7 @@
     </Midl>

   </ItemDefinitionGroup>

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\ce2e413e4d25429b19113f798796d86d\build-version.inc.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\91e8d4b9222111077126a1169fd3e172\build-version.inc.rule">

       <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Update build-version.inc in the SPIRV-Tools build directory (if necessary).</Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">setlocal

 python $(SolutionDir)third_party/SPIRV-Tools/utils/update_build_version.py $(SolutionDir)third_party/SPIRV-Tools "$(SolutionDir)build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/build-version.inc"

@@ -76,7 +76,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/ce2e413e4d25429b19113f798796d86d/build-version.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\update_build_version.py;$(SolutionDir)third_party\SPIRV-Tools\CHANGES;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/91e8d4b9222111077126a1169fd3e172/build-version.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\update_build_version.py;$(SolutionDir)third_party\SPIRV-Tools\CHANGES;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\build-version.inc</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkObjects>

       <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Update build-version.inc in the SPIRV-Tools build directory (if necessary).</Message>

@@ -89,13 +89,13 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/ce2e413e4d25429b19113f798796d86d/build-version.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\update_build_version.py;$(SolutionDir)third_party\SPIRV-Tools\CHANGES;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/91e8d4b9222111077126a1169fd3e172/build-version.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\update_build_version.py;$(SolutionDir)third_party\SPIRV-Tools\CHANGES;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\build-version.inc</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkObjects>

     </CustomBuild>

   </ItemGroup>

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\b1ac8d369ecc9a1a4407ddbaa3d5a88a\spirv-tools-build-version.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\298c9f9d2535f81bde02602c22b93442\spirv-tools-build-version.rule">

       <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"></Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">setlocal

 :cmEnd

@@ -104,7 +104,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/b1ac8d369ecc9a1a4407ddbaa3d5a88a/spirv-tools-build-version.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\build-version.inc;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/298c9f9d2535f81bde02602c22b93442/spirv-tools-build-version.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\build-version.inc;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spirv-tools-build-version</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkObjects>

       <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'"></Message>

@@ -115,7 +115,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/b1ac8d369ecc9a1a4407ddbaa3d5a88a/spirv-tools-build-version.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\build-version.inc;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/298c9f9d2535f81bde02602c22b93442/spirv-tools-build-version.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\build-version.inc;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spirv-tools-build-version</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkObjects>

     </CustomBuild>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-build-version.vcxproj.filters b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-build-version.vcxproj.filters
index 00ddca1..e046043 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-build-version.vcxproj.filters
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-build-version.vcxproj.filters
@@ -1,10 +1,10 @@
 <?xml version="1.0" encoding="utf-8"?>

 <Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\ce2e413e4d25429b19113f798796d86d\build-version.inc.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\91e8d4b9222111077126a1169fd3e172\build-version.inc.rule">

       <Filter>CMake Rules</Filter>

     </CustomBuild>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\b1ac8d369ecc9a1a4407ddbaa3d5a88a\spirv-tools-build-version.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\298c9f9d2535f81bde02602c22b93442\spirv-tools-build-version.rule">

       <Filter>CMake Rules</Filter>

     </CustomBuild>

   </ItemGroup>

@@ -13,7 +13,7 @@
   </ItemGroup>

   <ItemGroup>

     <Filter Include="CMake Rules">

-      <UniqueIdentifier>{403A9AA3-1D72-38DC-A6AB-1BFDA2377A05}</UniqueIdentifier>

+      <UniqueIdentifier>{93F83FFB-0A66-3FBE-A52D-9C65B5A808F7}</UniqueIdentifier>

     </Filter>

   </ItemGroup>

 </Project>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-header-DebugInfo.vcxproj b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-header-DebugInfo.vcxproj
index 3e87687..ecd3b05 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-header-DebugInfo.vcxproj
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-header-DebugInfo.vcxproj
@@ -14,7 +14,7 @@
     </ProjectConfiguration>

   </ItemGroup>

   <PropertyGroup Label="Globals">

-    <ProjectGuid>{EA1FDDD6-3BE8-3A92-B7F9-C8E032D7F1A2}</ProjectGuid>

+    <ProjectGuid>{39DFA88C-1DC6-3E6F-A71F-7970C1B8E483}</ProjectGuid>

     <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>

     <Keyword>Win32Proj</Keyword>

     <Platform>x64</Platform>

@@ -65,7 +65,7 @@
     </Midl>

   </ItemDefinitionGroup>

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\ce2e413e4d25429b19113f798796d86d\DebugInfo.h.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\91e8d4b9222111077126a1169fd3e172\DebugInfo.h.rule">

       <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Generate language specific header for DebugInfo.</Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">setlocal

 python $(SolutionDir)third_party/SPIRV-Tools/utils/generate_language_headers.py --extinst-name=DebugInfo --extinst-grammar=$(SolutionDir)third_party/SPIRV-Tools/source/extinst.debuginfo.grammar.json "--extinst-output-base=$(SolutionDir)build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/DebugInfo"

@@ -76,7 +76,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/ce2e413e4d25429b19113f798796d86d/DebugInfo.h.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_language_headers.py;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.debuginfo.grammar.json;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/91e8d4b9222111077126a1169fd3e172/DebugInfo.h.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_language_headers.py;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.debuginfo.grammar.json;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\DebugInfo.h</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkObjects>

       <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Generate language specific header for DebugInfo.</Message>

@@ -89,13 +89,13 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/ce2e413e4d25429b19113f798796d86d/DebugInfo.h.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_language_headers.py;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.debuginfo.grammar.json;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/91e8d4b9222111077126a1169fd3e172/DebugInfo.h.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_language_headers.py;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.debuginfo.grammar.json;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\DebugInfo.h</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkObjects>

     </CustomBuild>

   </ItemGroup>

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\b1ac8d369ecc9a1a4407ddbaa3d5a88a\spirv-tools-header-DebugInfo.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\298c9f9d2535f81bde02602c22b93442\spirv-tools-header-DebugInfo.rule">

       <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"></Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">setlocal

 :cmEnd

@@ -104,7 +104,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/b1ac8d369ecc9a1a4407ddbaa3d5a88a/spirv-tools-header-DebugInfo.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\DebugInfo.h;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/298c9f9d2535f81bde02602c22b93442/spirv-tools-header-DebugInfo.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\DebugInfo.h;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spirv-tools-header-DebugInfo</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkObjects>

       <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'"></Message>

@@ -115,7 +115,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/b1ac8d369ecc9a1a4407ddbaa3d5a88a/spirv-tools-header-DebugInfo.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\DebugInfo.h;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/298c9f9d2535f81bde02602c22b93442/spirv-tools-header-DebugInfo.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\DebugInfo.h;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spirv-tools-header-DebugInfo</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkObjects>

     </CustomBuild>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-header-DebugInfo.vcxproj.filters b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-header-DebugInfo.vcxproj.filters
index 3d7d146..da7437d 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-header-DebugInfo.vcxproj.filters
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-header-DebugInfo.vcxproj.filters
@@ -1,10 +1,10 @@
 <?xml version="1.0" encoding="utf-8"?>

 <Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\ce2e413e4d25429b19113f798796d86d\DebugInfo.h.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\91e8d4b9222111077126a1169fd3e172\DebugInfo.h.rule">

       <Filter>CMake Rules</Filter>

     </CustomBuild>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\b1ac8d369ecc9a1a4407ddbaa3d5a88a\spirv-tools-header-DebugInfo.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\298c9f9d2535f81bde02602c22b93442\spirv-tools-header-DebugInfo.rule">

       <Filter>CMake Rules</Filter>

     </CustomBuild>

   </ItemGroup>

@@ -13,7 +13,7 @@
   </ItemGroup>

   <ItemGroup>

     <Filter Include="CMake Rules">

-      <UniqueIdentifier>{403A9AA3-1D72-38DC-A6AB-1BFDA2377A05}</UniqueIdentifier>

+      <UniqueIdentifier>{93F83FFB-0A66-3FBE-A52D-9C65B5A808F7}</UniqueIdentifier>

     </Filter>

   </ItemGroup>

 </Project>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-vimsyntax.vcxproj b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-vimsyntax.vcxproj
index 38daab6..16fb6ba 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-vimsyntax.vcxproj
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-vimsyntax.vcxproj
@@ -14,7 +14,7 @@
     </ProjectConfiguration>

   </ItemGroup>

   <PropertyGroup Label="Globals">

-    <ProjectGuid>{14222EB4-6C33-3982-8112-F31E05D6508B}</ProjectGuid>

+    <ProjectGuid>{AFB877FF-C23C-3ABD-A0C5-0F235F517330}</ProjectGuid>

     <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>

     <Keyword>Win32Proj</Keyword>

     <Platform>x64</Platform>

@@ -65,7 +65,7 @@
     </Midl>

   </ItemDefinitionGroup>

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\ce2e413e4d25429b19113f798796d86d\spvasm.vim.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\91e8d4b9222111077126a1169fd3e172\spvasm.vim.rule">

       <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Generate spvasm.vim: Vim syntax file for SPIR-V assembly.</Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">setlocal

 python $(SolutionDir)third_party/SPIRV-Tools/utils/generate_vim_syntax.py --spirv-core-grammar=$(SolutionDir)third_party/SPIRV-Headers/include/spirv/unified1/spirv.core.grammar.json --extinst-debuginfo-grammar=$(SolutionDir)third_party/SPIRV-Tools/source/extinst.debuginfo.grammar.json --extinst-glsl-grammar=$(SolutionDir)third_party/SPIRV-Headers/include/spirv/unified1/extinst.glsl.std.450.grammar.json --extinst-opencl-grammar=$(SolutionDir)third_party/SPIRV-Headers/include/spirv/unified1/extinst.opencl.std.100.grammar.json "&gt;$(SolutionDir)build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/spvasm.vim"

@@ -76,7 +76,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/ce2e413e4d25429b19113f798796d86d/spvasm.vim.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_vim_syntax.py;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\spirv.core.grammar.json;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\extinst.glsl.std.450.grammar.json;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\extinst.opencl.std.100.grammar.json;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.debuginfo.grammar.json;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/91e8d4b9222111077126a1169fd3e172/spvasm.vim.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_vim_syntax.py;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\spirv.core.grammar.json;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\extinst.glsl.std.450.grammar.json;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\extinst.opencl.std.100.grammar.json;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.debuginfo.grammar.json;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spvasm.vim</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkObjects>

       <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Generate spvasm.vim: Vim syntax file for SPIR-V assembly.</Message>

@@ -89,13 +89,13 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/ce2e413e4d25429b19113f798796d86d/spvasm.vim.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_vim_syntax.py;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\spirv.core.grammar.json;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\extinst.glsl.std.450.grammar.json;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\extinst.opencl.std.100.grammar.json;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.debuginfo.grammar.json;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/91e8d4b9222111077126a1169fd3e172/spvasm.vim.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_vim_syntax.py;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\spirv.core.grammar.json;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\extinst.glsl.std.450.grammar.json;$(SolutionDir)third_party\SPIRV-Headers\include\spirv\unified1\extinst.opencl.std.100.grammar.json;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.debuginfo.grammar.json;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spvasm.vim</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkObjects>

     </CustomBuild>

   </ItemGroup>

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\b1ac8d369ecc9a1a4407ddbaa3d5a88a\spirv-tools-vimsyntax.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\298c9f9d2535f81bde02602c22b93442\spirv-tools-vimsyntax.rule">

       <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"></Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">setlocal

 :cmEnd

@@ -104,7 +104,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/b1ac8d369ecc9a1a4407ddbaa3d5a88a/spirv-tools-vimsyntax.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spvasm.vim;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/298c9f9d2535f81bde02602c22b93442/spirv-tools-vimsyntax.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spvasm.vim;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spirv-tools-vimsyntax</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkObjects>

       <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'"></Message>

@@ -115,7 +115,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/b1ac8d369ecc9a1a4407ddbaa3d5a88a/spirv-tools-vimsyntax.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spvasm.vim;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/298c9f9d2535f81bde02602c22b93442/spirv-tools-vimsyntax.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spvasm.vim;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spirv-tools-vimsyntax</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkObjects>

     </CustomBuild>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-vimsyntax.vcxproj.filters b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-vimsyntax.vcxproj.filters
index f641706..2581c86 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-vimsyntax.vcxproj.filters
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-vimsyntax.vcxproj.filters
@@ -1,10 +1,10 @@
 <?xml version="1.0" encoding="utf-8"?>

 <Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\ce2e413e4d25429b19113f798796d86d\spvasm.vim.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\91e8d4b9222111077126a1169fd3e172\spvasm.vim.rule">

       <Filter>CMake Rules</Filter>

     </CustomBuild>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\b1ac8d369ecc9a1a4407ddbaa3d5a88a\spirv-tools-vimsyntax.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\298c9f9d2535f81bde02602c22b93442\spirv-tools-vimsyntax.rule">

       <Filter>CMake Rules</Filter>

     </CustomBuild>

   </ItemGroup>

@@ -13,7 +13,7 @@
   </ItemGroup>

   <ItemGroup>

     <Filter Include="CMake Rules">

-      <UniqueIdentifier>{403A9AA3-1D72-38DC-A6AB-1BFDA2377A05}</UniqueIdentifier>

+      <UniqueIdentifier>{93F83FFB-0A66-3FBE-A52D-9C65B5A808F7}</UniqueIdentifier>

     </Filter>

   </ItemGroup>

 </Project>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-debuginfo.vcxproj b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spv-tools-debuginfo.vcxproj
similarity index 90%
rename from build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-debuginfo.vcxproj
rename to build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spv-tools-debuginfo.vcxproj
index 1395f6c..d31bb0b 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-debuginfo.vcxproj
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spv-tools-debuginfo.vcxproj
@@ -14,11 +14,11 @@
     </ProjectConfiguration>

   </ItemGroup>

   <PropertyGroup Label="Globals">

-    <ProjectGuid>{E86A9777-6C04-38BC-AC03-32F171BA9037}</ProjectGuid>

+    <ProjectGuid>{496AF3EC-139A-3EA0-8898-45C5704A5F38}</ProjectGuid>

     <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>

     <Keyword>Win32Proj</Keyword>

     <Platform>x64</Platform>

-    <ProjectName>spirv-tools-debuginfo</ProjectName>

+    <ProjectName>spv-tools-debuginfo</ProjectName>

     <VCProjectUpgraderObjectName>NoUpgrade</VCProjectUpgraderObjectName>

   </PropertyGroup>

   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />

@@ -65,7 +65,7 @@
     </Midl>

   </ItemDefinitionGroup>

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\ce2e413e4d25429b19113f798796d86d\debuginfo.insts.inc.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\91e8d4b9222111077126a1169fd3e172\debuginfo.insts.inc.rule">

       <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Generate extended instruction tables for debuginfo.</Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">setlocal

 python $(SolutionDir)third_party/SPIRV-Tools/utils/generate_grammar_tables.py --extinst-vendor-grammar=$(SolutionDir)third_party/SPIRV-Tools/source/extinst.debuginfo.grammar.json "--vendor-insts-output=$(SolutionDir)build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/debuginfo.insts.inc"

@@ -76,7 +76,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/ce2e413e4d25429b19113f798796d86d/debuginfo.insts.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.debuginfo.grammar.json;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/91e8d4b9222111077126a1169fd3e172/debuginfo.insts.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.debuginfo.grammar.json;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\debuginfo.insts.inc</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkObjects>

       <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Generate extended instruction tables for debuginfo.</Message>

@@ -89,13 +89,13 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/ce2e413e4d25429b19113f798796d86d/debuginfo.insts.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.debuginfo.grammar.json;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/91e8d4b9222111077126a1169fd3e172/debuginfo.insts.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.debuginfo.grammar.json;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\debuginfo.insts.inc</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkObjects>

     </CustomBuild>

   </ItemGroup>

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\b1ac8d369ecc9a1a4407ddbaa3d5a88a\spirv-tools-debuginfo.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\298c9f9d2535f81bde02602c22b93442\spv-tools-debuginfo.rule">

       <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"></Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">setlocal

 :cmEnd

@@ -104,8 +104,8 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/b1ac8d369ecc9a1a4407ddbaa3d5a88a/spirv-tools-debuginfo.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\debuginfo.insts.inc;%(AdditionalInputs)</AdditionalInputs>

-      <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spirv-tools-debuginfo</Outputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/298c9f9d2535f81bde02602c22b93442/spv-tools-debuginfo.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\debuginfo.insts.inc;%(AdditionalInputs)</AdditionalInputs>

+      <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spv-tools-debuginfo</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkObjects>

       <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'"></Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">setlocal

@@ -115,13 +115,13 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/b1ac8d369ecc9a1a4407ddbaa3d5a88a/spirv-tools-debuginfo.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\debuginfo.insts.inc;%(AdditionalInputs)</AdditionalInputs>

-      <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spirv-tools-debuginfo</Outputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/298c9f9d2535f81bde02602c22b93442/spv-tools-debuginfo.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\debuginfo.insts.inc;%(AdditionalInputs)</AdditionalInputs>

+      <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spv-tools-debuginfo</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkObjects>

     </CustomBuild>

   </ItemGroup>

   <ItemGroup>

-    <None Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spirv-tools-debuginfo" />

+    <None Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spv-tools-debuginfo" />

   </ItemGroup>

   <ItemGroup>

   </ItemGroup>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-debuginfo.vcxproj.filters b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spv-tools-debuginfo.vcxproj.filters
similarity index 68%
rename from build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-debuginfo.vcxproj.filters
rename to build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spv-tools-debuginfo.vcxproj.filters
index 3a46e5e..b78ba45 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-debuginfo.vcxproj.filters
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spv-tools-debuginfo.vcxproj.filters
@@ -1,19 +1,19 @@
 <?xml version="1.0" encoding="utf-8"?>

 <Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\ce2e413e4d25429b19113f798796d86d\debuginfo.insts.inc.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\91e8d4b9222111077126a1169fd3e172\debuginfo.insts.inc.rule">

       <Filter>CMake Rules</Filter>

     </CustomBuild>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\b1ac8d369ecc9a1a4407ddbaa3d5a88a\spirv-tools-debuginfo.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\298c9f9d2535f81bde02602c22b93442\spv-tools-debuginfo.rule">

       <Filter>CMake Rules</Filter>

     </CustomBuild>

   </ItemGroup>

   <ItemGroup>

-    <None Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spirv-tools-debuginfo" />

+    <None Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spv-tools-debuginfo" />

   </ItemGroup>

   <ItemGroup>

     <Filter Include="CMake Rules">

-      <UniqueIdentifier>{403A9AA3-1D72-38DC-A6AB-1BFDA2377A05}</UniqueIdentifier>

+      <UniqueIdentifier>{93F83FFB-0A66-3FBE-A52D-9C65B5A808F7}</UniqueIdentifier>

     </Filter>

   </ItemGroup>

 </Project>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-spv-amd-gcn-shader.vcxproj b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spv-tools-spv-amd-gs.vcxproj
similarity index 87%
rename from build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-spv-amd-gcn-shader.vcxproj
rename to build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spv-tools-spv-amd-gs.vcxproj
index ba3c660..9dca390 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-spv-amd-gcn-shader.vcxproj
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spv-tools-spv-amd-gs.vcxproj
@@ -14,11 +14,11 @@
     </ProjectConfiguration>

   </ItemGroup>

   <PropertyGroup Label="Globals">

-    <ProjectGuid>{4DE77359-5B7E-3EF3-AB38-9F4FF62D4935}</ProjectGuid>

+    <ProjectGuid>{E0B79E0B-25BB-355B-9390-E9EC0047C632}</ProjectGuid>

     <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>

     <Keyword>Win32Proj</Keyword>

     <Platform>x64</Platform>

-    <ProjectName>spirv-tools-spv-amd-gcn-shader</ProjectName>

+    <ProjectName>spv-tools-spv-amd-gs</ProjectName>

     <VCProjectUpgraderObjectName>NoUpgrade</VCProjectUpgraderObjectName>

   </PropertyGroup>

   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />

@@ -65,7 +65,7 @@
     </Midl>

   </ItemDefinitionGroup>

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\ce2e413e4d25429b19113f798796d86d\spv-amd-gcn-shader.insts.inc.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\91e8d4b9222111077126a1169fd3e172\spv-amd-gcn-shader.insts.inc.rule">

       <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Generate extended instruction tables for spv-amd-gcn-shader.</Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">setlocal

 python $(SolutionDir)third_party/SPIRV-Tools/utils/generate_grammar_tables.py --extinst-vendor-grammar=$(SolutionDir)third_party/SPIRV-Tools/source/extinst.spv-amd-gcn-shader.grammar.json "--vendor-insts-output=$(SolutionDir)build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/spv-amd-gcn-shader.insts.inc"

@@ -76,7 +76,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/ce2e413e4d25429b19113f798796d86d/spv-amd-gcn-shader.insts.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.spv-amd-gcn-shader.grammar.json;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/91e8d4b9222111077126a1169fd3e172/spv-amd-gcn-shader.insts.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.spv-amd-gcn-shader.grammar.json;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spv-amd-gcn-shader.insts.inc</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkObjects>

       <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Generate extended instruction tables for spv-amd-gcn-shader.</Message>

@@ -89,13 +89,13 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/ce2e413e4d25429b19113f798796d86d/spv-amd-gcn-shader.insts.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.spv-amd-gcn-shader.grammar.json;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/91e8d4b9222111077126a1169fd3e172/spv-amd-gcn-shader.insts.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.spv-amd-gcn-shader.grammar.json;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spv-amd-gcn-shader.insts.inc</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkObjects>

     </CustomBuild>

   </ItemGroup>

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\b1ac8d369ecc9a1a4407ddbaa3d5a88a\spirv-tools-spv-amd-gcn-shader.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\298c9f9d2535f81bde02602c22b93442\spv-tools-spv-amd-gs.rule">

       <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"></Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">setlocal

 :cmEnd

@@ -104,8 +104,8 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/b1ac8d369ecc9a1a4407ddbaa3d5a88a/spirv-tools-spv-amd-gcn-shader.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spv-amd-gcn-shader.insts.inc;%(AdditionalInputs)</AdditionalInputs>

-      <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spirv-tools-spv-amd-gcn-shader</Outputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/298c9f9d2535f81bde02602c22b93442/spv-tools-spv-amd-gs.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spv-amd-gcn-shader.insts.inc;%(AdditionalInputs)</AdditionalInputs>

+      <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spv-tools-spv-amd-gs</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkObjects>

       <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'"></Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">setlocal

@@ -115,13 +115,13 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/b1ac8d369ecc9a1a4407ddbaa3d5a88a/spirv-tools-spv-amd-gcn-shader.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spv-amd-gcn-shader.insts.inc;%(AdditionalInputs)</AdditionalInputs>

-      <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spirv-tools-spv-amd-gcn-shader</Outputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/298c9f9d2535f81bde02602c22b93442/spv-tools-spv-amd-gs.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spv-amd-gcn-shader.insts.inc;%(AdditionalInputs)</AdditionalInputs>

+      <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spv-tools-spv-amd-gs</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkObjects>

     </CustomBuild>

   </ItemGroup>

   <ItemGroup>

-    <None Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spirv-tools-spv-amd-gcn-shader" />

+    <None Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spv-tools-spv-amd-gs" />

   </ItemGroup>

   <ItemGroup>

   </ItemGroup>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-spv-amd-gcn-shader.vcxproj.filters b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spv-tools-spv-amd-gs.vcxproj.filters
similarity index 67%
rename from build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-spv-amd-gcn-shader.vcxproj.filters
rename to build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spv-tools-spv-amd-gs.vcxproj.filters
index f11029d..691a873 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-spv-amd-gcn-shader.vcxproj.filters
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spv-tools-spv-amd-gs.vcxproj.filters
@@ -1,19 +1,19 @@
 <?xml version="1.0" encoding="utf-8"?>

 <Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\ce2e413e4d25429b19113f798796d86d\spv-amd-gcn-shader.insts.inc.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\91e8d4b9222111077126a1169fd3e172\spv-amd-gcn-shader.insts.inc.rule">

       <Filter>CMake Rules</Filter>

     </CustomBuild>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\b1ac8d369ecc9a1a4407ddbaa3d5a88a\spirv-tools-spv-amd-gcn-shader.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\298c9f9d2535f81bde02602c22b93442\spv-tools-spv-amd-gs.rule">

       <Filter>CMake Rules</Filter>

     </CustomBuild>

   </ItemGroup>

   <ItemGroup>

-    <None Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spirv-tools-spv-amd-gcn-shader" />

+    <None Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spv-tools-spv-amd-gs" />

   </ItemGroup>

   <ItemGroup>

     <Filter Include="CMake Rules">

-      <UniqueIdentifier>{403A9AA3-1D72-38DC-A6AB-1BFDA2377A05}</UniqueIdentifier>

+      <UniqueIdentifier>{93F83FFB-0A66-3FBE-A52D-9C65B5A808F7}</UniqueIdentifier>

     </Filter>

   </ItemGroup>

 </Project>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-spv-amd-shader-ballot.vcxproj b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spv-tools-spv-amd-sb.vcxproj
similarity index 87%
rename from build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-spv-amd-shader-ballot.vcxproj
rename to build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spv-tools-spv-amd-sb.vcxproj
index f8eda36..2eb784c 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-spv-amd-shader-ballot.vcxproj
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spv-tools-spv-amd-sb.vcxproj
@@ -14,11 +14,11 @@
     </ProjectConfiguration>

   </ItemGroup>

   <PropertyGroup Label="Globals">

-    <ProjectGuid>{25CAC665-41EF-3770-B3AC-1C090D2AC7EA}</ProjectGuid>

+    <ProjectGuid>{1262CB67-3BC7-35D5-9036-3D3B3A9DC3CE}</ProjectGuid>

     <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>

     <Keyword>Win32Proj</Keyword>

     <Platform>x64</Platform>

-    <ProjectName>spirv-tools-spv-amd-shader-ballot</ProjectName>

+    <ProjectName>spv-tools-spv-amd-sb</ProjectName>

     <VCProjectUpgraderObjectName>NoUpgrade</VCProjectUpgraderObjectName>

   </PropertyGroup>

   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />

@@ -65,7 +65,7 @@
     </Midl>

   </ItemDefinitionGroup>

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\ce2e413e4d25429b19113f798796d86d\spv-amd-shader-ballot.insts.inc.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\91e8d4b9222111077126a1169fd3e172\spv-amd-shader-ballot.insts.inc.rule">

       <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Generate extended instruction tables for spv-amd-shader-ballot.</Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">setlocal

 python $(SolutionDir)third_party/SPIRV-Tools/utils/generate_grammar_tables.py --extinst-vendor-grammar=$(SolutionDir)third_party/SPIRV-Tools/source/extinst.spv-amd-shader-ballot.grammar.json "--vendor-insts-output=$(SolutionDir)build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/spv-amd-shader-ballot.insts.inc"

@@ -76,7 +76,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/ce2e413e4d25429b19113f798796d86d/spv-amd-shader-ballot.insts.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.spv-amd-shader-ballot.grammar.json;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/91e8d4b9222111077126a1169fd3e172/spv-amd-shader-ballot.insts.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.spv-amd-shader-ballot.grammar.json;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spv-amd-shader-ballot.insts.inc</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkObjects>

       <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Generate extended instruction tables for spv-amd-shader-ballot.</Message>

@@ -89,13 +89,13 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/ce2e413e4d25429b19113f798796d86d/spv-amd-shader-ballot.insts.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.spv-amd-shader-ballot.grammar.json;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/91e8d4b9222111077126a1169fd3e172/spv-amd-shader-ballot.insts.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.spv-amd-shader-ballot.grammar.json;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spv-amd-shader-ballot.insts.inc</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkObjects>

     </CustomBuild>

   </ItemGroup>

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\b1ac8d369ecc9a1a4407ddbaa3d5a88a\spirv-tools-spv-amd-shader-ballot.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\298c9f9d2535f81bde02602c22b93442\spv-tools-spv-amd-sb.rule">

       <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"></Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">setlocal

 :cmEnd

@@ -104,8 +104,8 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/b1ac8d369ecc9a1a4407ddbaa3d5a88a/spirv-tools-spv-amd-shader-ballot.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spv-amd-shader-ballot.insts.inc;%(AdditionalInputs)</AdditionalInputs>

-      <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spirv-tools-spv-amd-shader-ballot</Outputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/298c9f9d2535f81bde02602c22b93442/spv-tools-spv-amd-sb.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spv-amd-shader-ballot.insts.inc;%(AdditionalInputs)</AdditionalInputs>

+      <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spv-tools-spv-amd-sb</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkObjects>

       <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'"></Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">setlocal

@@ -115,13 +115,13 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/b1ac8d369ecc9a1a4407ddbaa3d5a88a/spirv-tools-spv-amd-shader-ballot.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spv-amd-shader-ballot.insts.inc;%(AdditionalInputs)</AdditionalInputs>

-      <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spirv-tools-spv-amd-shader-ballot</Outputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/298c9f9d2535f81bde02602c22b93442/spv-tools-spv-amd-sb.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spv-amd-shader-ballot.insts.inc;%(AdditionalInputs)</AdditionalInputs>

+      <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spv-tools-spv-amd-sb</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkObjects>

     </CustomBuild>

   </ItemGroup>

   <ItemGroup>

-    <None Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spirv-tools-spv-amd-shader-ballot" />

+    <None Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spv-tools-spv-amd-sb" />

   </ItemGroup>

   <ItemGroup>

   </ItemGroup>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-spv-amd-shader-ballot.vcxproj.filters b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spv-tools-spv-amd-sb.vcxproj.filters
similarity index 67%
rename from build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-spv-amd-shader-ballot.vcxproj.filters
rename to build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spv-tools-spv-amd-sb.vcxproj.filters
index ae8f010..48222a4 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-spv-amd-shader-ballot.vcxproj.filters
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spv-tools-spv-amd-sb.vcxproj.filters
@@ -1,19 +1,19 @@
 <?xml version="1.0" encoding="utf-8"?>

 <Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\ce2e413e4d25429b19113f798796d86d\spv-amd-shader-ballot.insts.inc.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\91e8d4b9222111077126a1169fd3e172\spv-amd-shader-ballot.insts.inc.rule">

       <Filter>CMake Rules</Filter>

     </CustomBuild>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\b1ac8d369ecc9a1a4407ddbaa3d5a88a\spirv-tools-spv-amd-shader-ballot.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\298c9f9d2535f81bde02602c22b93442\spv-tools-spv-amd-sb.rule">

       <Filter>CMake Rules</Filter>

     </CustomBuild>

   </ItemGroup>

   <ItemGroup>

-    <None Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spirv-tools-spv-amd-shader-ballot" />

+    <None Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spv-tools-spv-amd-sb" />

   </ItemGroup>

   <ItemGroup>

     <Filter Include="CMake Rules">

-      <UniqueIdentifier>{403A9AA3-1D72-38DC-A6AB-1BFDA2377A05}</UniqueIdentifier>

+      <UniqueIdentifier>{93F83FFB-0A66-3FBE-A52D-9C65B5A808F7}</UniqueIdentifier>

     </Filter>

   </ItemGroup>

 </Project>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-spv-amd-shader-explicit-vertex-parameter.vcxproj b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spv-tools-spv-amd-sevp.vcxproj
similarity index 86%
rename from build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-spv-amd-shader-explicit-vertex-parameter.vcxproj
rename to build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spv-tools-spv-amd-sevp.vcxproj
index 4200f0a..4e1330f 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-spv-amd-shader-explicit-vertex-parameter.vcxproj
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spv-tools-spv-amd-sevp.vcxproj
@@ -14,11 +14,11 @@
     </ProjectConfiguration>

   </ItemGroup>

   <PropertyGroup Label="Globals">

-    <ProjectGuid>{95DD96F6-D410-3911-B61A-C0AA0D6EBD2C}</ProjectGuid>

+    <ProjectGuid>{32C0DDEA-EC24-3465-B0F9-9DA187D45ED3}</ProjectGuid>

     <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>

     <Keyword>Win32Proj</Keyword>

     <Platform>x64</Platform>

-    <ProjectName>spirv-tools-spv-amd-shader-explicit-vertex-parameter</ProjectName>

+    <ProjectName>spv-tools-spv-amd-sevp</ProjectName>

     <VCProjectUpgraderObjectName>NoUpgrade</VCProjectUpgraderObjectName>

   </PropertyGroup>

   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />

@@ -65,7 +65,7 @@
     </Midl>

   </ItemDefinitionGroup>

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\ce2e413e4d25429b19113f798796d86d\spv-amd-shader-explicit-vertex-parameter.insts.inc.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\91e8d4b9222111077126a1169fd3e172\spv-amd-shader-explicit-vertex-parameter.insts.inc.rule">

       <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Generate extended instruction tables for spv-amd-shader-explicit-vertex-parameter.</Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">setlocal

 python $(SolutionDir)third_party/SPIRV-Tools/utils/generate_grammar_tables.py --extinst-vendor-grammar=$(SolutionDir)third_party/SPIRV-Tools/source/extinst.spv-amd-shader-explicit-vertex-parameter.grammar.json "--vendor-insts-output=$(SolutionDir)build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/spv-amd-shader-explicit-vertex-parameter.insts.inc"

@@ -76,7 +76,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/ce2e413e4d25429b19113f798796d86d/spv-amd-shader-explicit-vertex-parameter.insts.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.spv-amd-shader-explicit-vertex-parameter.grammar.json;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/91e8d4b9222111077126a1169fd3e172/spv-amd-shader-explicit-vertex-parameter.insts.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.spv-amd-shader-explicit-vertex-parameter.grammar.json;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spv-amd-shader-explicit-vertex-parameter.insts.inc</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkObjects>

       <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Generate extended instruction tables for spv-amd-shader-explicit-vertex-parameter.</Message>

@@ -89,13 +89,13 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/ce2e413e4d25429b19113f798796d86d/spv-amd-shader-explicit-vertex-parameter.insts.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.spv-amd-shader-explicit-vertex-parameter.grammar.json;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/91e8d4b9222111077126a1169fd3e172/spv-amd-shader-explicit-vertex-parameter.insts.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.spv-amd-shader-explicit-vertex-parameter.grammar.json;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spv-amd-shader-explicit-vertex-parameter.insts.inc</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkObjects>

     </CustomBuild>

   </ItemGroup>

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\b1ac8d369ecc9a1a4407ddbaa3d5a88a\spirv-tools-spv-amd-shader-explicit-vertex-parameter.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\298c9f9d2535f81bde02602c22b93442\spv-tools-spv-amd-sevp.rule">

       <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"></Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">setlocal

 :cmEnd

@@ -104,8 +104,8 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/b1ac8d369ecc9a1a4407ddbaa3d5a88a/spirv-tools-spv-amd-shader-explicit-vertex-parameter.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spv-amd-shader-explicit-vertex-parameter.insts.inc;%(AdditionalInputs)</AdditionalInputs>

-      <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spirv-tools-spv-amd-shader-explicit-vertex-parameter</Outputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/298c9f9d2535f81bde02602c22b93442/spv-tools-spv-amd-sevp.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spv-amd-shader-explicit-vertex-parameter.insts.inc;%(AdditionalInputs)</AdditionalInputs>

+      <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spv-tools-spv-amd-sevp</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkObjects>

       <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'"></Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">setlocal

@@ -115,13 +115,13 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/b1ac8d369ecc9a1a4407ddbaa3d5a88a/spirv-tools-spv-amd-shader-explicit-vertex-parameter.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spv-amd-shader-explicit-vertex-parameter.insts.inc;%(AdditionalInputs)</AdditionalInputs>

-      <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spirv-tools-spv-amd-shader-explicit-vertex-parameter</Outputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/298c9f9d2535f81bde02602c22b93442/spv-tools-spv-amd-sevp.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spv-amd-shader-explicit-vertex-parameter.insts.inc;%(AdditionalInputs)</AdditionalInputs>

+      <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spv-tools-spv-amd-sevp</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkObjects>

     </CustomBuild>

   </ItemGroup>

   <ItemGroup>

-    <None Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spirv-tools-spv-amd-shader-explicit-vertex-parameter" />

+    <None Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spv-tools-spv-amd-sevp" />

   </ItemGroup>

   <ItemGroup>

   </ItemGroup>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-spv-amd-shader-explicit-vertex-parameter.vcxproj.filters b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spv-tools-spv-amd-sevp.vcxproj.filters
similarity index 65%
rename from build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-spv-amd-shader-explicit-vertex-parameter.vcxproj.filters
rename to build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spv-tools-spv-amd-sevp.vcxproj.filters
index fb0dd8b..0c5c7fb 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-spv-amd-shader-explicit-vertex-parameter.vcxproj.filters
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spv-tools-spv-amd-sevp.vcxproj.filters
@@ -1,19 +1,19 @@
 <?xml version="1.0" encoding="utf-8"?>

 <Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\ce2e413e4d25429b19113f798796d86d\spv-amd-shader-explicit-vertex-parameter.insts.inc.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\91e8d4b9222111077126a1169fd3e172\spv-amd-shader-explicit-vertex-parameter.insts.inc.rule">

       <Filter>CMake Rules</Filter>

     </CustomBuild>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\b1ac8d369ecc9a1a4407ddbaa3d5a88a\spirv-tools-spv-amd-shader-explicit-vertex-parameter.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\298c9f9d2535f81bde02602c22b93442\spv-tools-spv-amd-sevp.rule">

       <Filter>CMake Rules</Filter>

     </CustomBuild>

   </ItemGroup>

   <ItemGroup>

-    <None Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spirv-tools-spv-amd-shader-explicit-vertex-parameter" />

+    <None Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spv-tools-spv-amd-sevp" />

   </ItemGroup>

   <ItemGroup>

     <Filter Include="CMake Rules">

-      <UniqueIdentifier>{403A9AA3-1D72-38DC-A6AB-1BFDA2377A05}</UniqueIdentifier>

+      <UniqueIdentifier>{93F83FFB-0A66-3FBE-A52D-9C65B5A808F7}</UniqueIdentifier>

     </Filter>

   </ItemGroup>

 </Project>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-spv-amd-shader-trinary-minmax.vcxproj b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spv-tools-spv-amd-stm.vcxproj
similarity index 86%
rename from build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-spv-amd-shader-trinary-minmax.vcxproj
rename to build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spv-tools-spv-amd-stm.vcxproj
index 51ec894..826bd5b 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-spv-amd-shader-trinary-minmax.vcxproj
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spv-tools-spv-amd-stm.vcxproj
@@ -14,11 +14,11 @@
     </ProjectConfiguration>

   </ItemGroup>

   <PropertyGroup Label="Globals">

-    <ProjectGuid>{D31F2A2D-3E6E-3541-A885-0D28DBE02FE8}</ProjectGuid>

+    <ProjectGuid>{9E8623BF-3469-3104-9674-DED25861C7CF}</ProjectGuid>

     <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>

     <Keyword>Win32Proj</Keyword>

     <Platform>x64</Platform>

-    <ProjectName>spirv-tools-spv-amd-shader-trinary-minmax</ProjectName>

+    <ProjectName>spv-tools-spv-amd-stm</ProjectName>

     <VCProjectUpgraderObjectName>NoUpgrade</VCProjectUpgraderObjectName>

   </PropertyGroup>

   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />

@@ -65,7 +65,7 @@
     </Midl>

   </ItemDefinitionGroup>

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\ce2e413e4d25429b19113f798796d86d\spv-amd-shader-trinary-minmax.insts.inc.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\91e8d4b9222111077126a1169fd3e172\spv-amd-shader-trinary-minmax.insts.inc.rule">

       <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Generate extended instruction tables for spv-amd-shader-trinary-minmax.</Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">setlocal

 python $(SolutionDir)third_party/SPIRV-Tools/utils/generate_grammar_tables.py --extinst-vendor-grammar=$(SolutionDir)third_party/SPIRV-Tools/source/extinst.spv-amd-shader-trinary-minmax.grammar.json "--vendor-insts-output=$(SolutionDir)build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/spv-amd-shader-trinary-minmax.insts.inc"

@@ -76,7 +76,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/ce2e413e4d25429b19113f798796d86d/spv-amd-shader-trinary-minmax.insts.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.spv-amd-shader-trinary-minmax.grammar.json;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/91e8d4b9222111077126a1169fd3e172/spv-amd-shader-trinary-minmax.insts.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.spv-amd-shader-trinary-minmax.grammar.json;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spv-amd-shader-trinary-minmax.insts.inc</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkObjects>

       <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Generate extended instruction tables for spv-amd-shader-trinary-minmax.</Message>

@@ -89,13 +89,13 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/ce2e413e4d25429b19113f798796d86d/spv-amd-shader-trinary-minmax.insts.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.spv-amd-shader-trinary-minmax.grammar.json;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/91e8d4b9222111077126a1169fd3e172/spv-amd-shader-trinary-minmax.insts.inc.rule;$(SolutionDir)third_party\SPIRV-Tools\utils\generate_grammar_tables.py;$(SolutionDir)third_party\SPIRV-Tools\source\extinst.spv-amd-shader-trinary-minmax.grammar.json;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spv-amd-shader-trinary-minmax.insts.inc</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkObjects>

     </CustomBuild>

   </ItemGroup>

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\b1ac8d369ecc9a1a4407ddbaa3d5a88a\spirv-tools-spv-amd-shader-trinary-minmax.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\298c9f9d2535f81bde02602c22b93442\spv-tools-spv-amd-stm.rule">

       <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"></Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">setlocal

 :cmEnd

@@ -104,8 +104,8 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/b1ac8d369ecc9a1a4407ddbaa3d5a88a/spirv-tools-spv-amd-shader-trinary-minmax.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spv-amd-shader-trinary-minmax.insts.inc;%(AdditionalInputs)</AdditionalInputs>

-      <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spirv-tools-spv-amd-shader-trinary-minmax</Outputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/298c9f9d2535f81bde02602c22b93442/spv-tools-spv-amd-stm.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spv-amd-shader-trinary-minmax.insts.inc;%(AdditionalInputs)</AdditionalInputs>

+      <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spv-tools-spv-amd-stm</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkObjects>

       <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'"></Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">setlocal

@@ -115,13 +115,13 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/b1ac8d369ecc9a1a4407ddbaa3d5a88a/spirv-tools-spv-amd-shader-trinary-minmax.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spv-amd-shader-trinary-minmax.insts.inc;%(AdditionalInputs)</AdditionalInputs>

-      <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spirv-tools-spv-amd-shader-trinary-minmax</Outputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/298c9f9d2535f81bde02602c22b93442/spv-tools-spv-amd-stm.rule;$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\spv-amd-shader-trinary-minmax.insts.inc;%(AdditionalInputs)</AdditionalInputs>

+      <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spv-tools-spv-amd-stm</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkObjects>

     </CustomBuild>

   </ItemGroup>

   <ItemGroup>

-    <None Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spirv-tools-spv-amd-shader-trinary-minmax" />

+    <None Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spv-tools-spv-amd-stm" />

   </ItemGroup>

   <ItemGroup>

   </ItemGroup>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-spv-amd-shader-trinary-minmax.vcxproj.filters b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spv-tools-spv-amd-stm.vcxproj.filters
similarity index 66%
rename from build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-spv-amd-shader-trinary-minmax.vcxproj.filters
rename to build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spv-tools-spv-amd-stm.vcxproj.filters
index 5ae84b4..0c7a1ca 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spirv-tools-spv-amd-shader-trinary-minmax.vcxproj.filters
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/source/spv-tools-spv-amd-stm.vcxproj.filters
@@ -1,19 +1,19 @@
 <?xml version="1.0" encoding="utf-8"?>

 <Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\ce2e413e4d25429b19113f798796d86d\spv-amd-shader-trinary-minmax.insts.inc.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\91e8d4b9222111077126a1169fd3e172\spv-amd-shader-trinary-minmax.insts.inc.rule">

       <Filter>CMake Rules</Filter>

     </CustomBuild>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\b1ac8d369ecc9a1a4407ddbaa3d5a88a\spirv-tools-spv-amd-shader-trinary-minmax.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\298c9f9d2535f81bde02602c22b93442\spv-tools-spv-amd-stm.rule">

       <Filter>CMake Rules</Filter>

     </CustomBuild>

   </ItemGroup>

   <ItemGroup>

-    <None Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spirv-tools-spv-amd-shader-trinary-minmax" />

+    <None Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\CMakeFiles\spv-tools-spv-amd-stm" />

   </ItemGroup>

   <ItemGroup>

     <Filter Include="CMake Rules">

-      <UniqueIdentifier>{403A9AA3-1D72-38DC-A6AB-1BFDA2377A05}</UniqueIdentifier>

+      <UniqueIdentifier>{93F83FFB-0A66-3FBE-A52D-9C65B5A808F7}</UniqueIdentifier>

     </Filter>

   </ItemGroup>

 </Project>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/spirv-tools-pkg-config.vcxproj b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/spirv-tools-pkg-config.vcxproj
index 1fae2fd..69042ec 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/spirv-tools-pkg-config.vcxproj
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/spirv-tools-pkg-config.vcxproj
@@ -14,7 +14,7 @@
     </ProjectConfiguration>

   </ItemGroup>

   <PropertyGroup Label="Globals">

-    <ProjectGuid>{FF67398E-CAA3-37B5-B167-781D03767AB1}</ProjectGuid>

+    <ProjectGuid>{FFE62FBF-2BD2-37B2-8883-5B2BA1894018}</ProjectGuid>

     <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>

     <Keyword>Win32Proj</Keyword>

     <Platform>x64</Platform>

@@ -65,7 +65,7 @@
     </Midl>

   </ItemDefinitionGroup>

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\bd99ee5ebe6b18f04cf380fcd08b4788\spirv-tools-pkg-config.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\811e4230f6622211b599c860e325bc08\spirv-tools-pkg-config.rule">

       <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"></Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">setlocal

 "cmake" -DCHANGES_FILE=$(SolutionDir)third_party/SPIRV-Tools/CHANGES -DTEMPLATE_FILE=$(SolutionDir)third_party/SPIRV-Tools/cmake/SPIRV-Tools.pc.in "-DOUT_FILE=$(SolutionDir)build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/SPIRV-Tools.pc" "-DCMAKE_INSTALL_PREFIX=C:/Program Files/SwiftShader" -DCMAKE_INSTALL_LIBDIR=lib -DCMAKE_INSTALL_INCLUDEDIR=include "-DSPIRV_LIBRARIES=-lSPIRV-Tools -lSPIRV-Tools-link -lSPIRV-Tools-opt" -P $(SolutionDir)third_party/SPIRV-Tools/cmake/write_pkg_config.cmake

@@ -76,7 +76,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/bd99ee5ebe6b18f04cf380fcd08b4788/spirv-tools-pkg-config.rule;$(SolutionDir)third_party\SPIRV-Tools\CHANGES;$(SolutionDir)third_party\SPIRV-Tools\cmake\SPIRV-Tools.pc.in;$(SolutionDir)third_party\SPIRV-Tools\cmake\write_pkg_config.cmake;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/811e4230f6622211b599c860e325bc08/spirv-tools-pkg-config.rule;$(SolutionDir)third_party\SPIRV-Tools\CHANGES;$(SolutionDir)third_party\SPIRV-Tools\cmake\SPIRV-Tools.pc.in;$(SolutionDir)third_party\SPIRV-Tools\cmake\write_pkg_config.cmake;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\CMakeFiles\spirv-tools-pkg-config</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkObjects>

       <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'"></Message>

@@ -89,7 +89,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/bd99ee5ebe6b18f04cf380fcd08b4788/spirv-tools-pkg-config.rule;$(SolutionDir)third_party\SPIRV-Tools\CHANGES;$(SolutionDir)third_party\SPIRV-Tools\cmake\SPIRV-Tools.pc.in;$(SolutionDir)third_party\SPIRV-Tools\cmake\write_pkg_config.cmake;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/811e4230f6622211b599c860e325bc08/spirv-tools-pkg-config.rule;$(SolutionDir)third_party\SPIRV-Tools\CHANGES;$(SolutionDir)third_party\SPIRV-Tools\cmake\SPIRV-Tools.pc.in;$(SolutionDir)third_party\SPIRV-Tools\cmake\write_pkg_config.cmake;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\CMakeFiles\spirv-tools-pkg-config</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkObjects>

     </CustomBuild>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/spirv-tools-pkg-config.vcxproj.filters b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/spirv-tools-pkg-config.vcxproj.filters
index 23a600f..3d5d79b 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/spirv-tools-pkg-config.vcxproj.filters
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/spirv-tools-pkg-config.vcxproj.filters
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>

 <Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\bd99ee5ebe6b18f04cf380fcd08b4788\spirv-tools-pkg-config.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\811e4230f6622211b599c860e325bc08\spirv-tools-pkg-config.rule">

       <Filter>CMake Rules</Filter>

     </CustomBuild>

   </ItemGroup>

@@ -10,7 +10,7 @@
   </ItemGroup>

   <ItemGroup>

     <Filter Include="CMake Rules">

-      <UniqueIdentifier>{403A9AA3-1D72-38DC-A6AB-1BFDA2377A05}</UniqueIdentifier>

+      <UniqueIdentifier>{93F83FFB-0A66-3FBE-A52D-9C65B5A808F7}</UniqueIdentifier>

     </Filter>

   </ItemGroup>

 </Project>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/spirv-tools-shared-pkg-config.vcxproj b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/spirv-tools-shared-pkg-config.vcxproj
index cb97fd9..c52723b 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/spirv-tools-shared-pkg-config.vcxproj
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/spirv-tools-shared-pkg-config.vcxproj
@@ -14,7 +14,7 @@
     </ProjectConfiguration>

   </ItemGroup>

   <PropertyGroup Label="Globals">

-    <ProjectGuid>{B2815DAA-B884-3519-8B30-8249FFED06CD}</ProjectGuid>

+    <ProjectGuid>{871BEB73-7406-3F9A-8A89-072702C81C2C}</ProjectGuid>

     <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>

     <Keyword>Win32Proj</Keyword>

     <Platform>x64</Platform>

@@ -65,7 +65,7 @@
     </Midl>

   </ItemDefinitionGroup>

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\bd99ee5ebe6b18f04cf380fcd08b4788\spirv-tools-shared-pkg-config.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\811e4230f6622211b599c860e325bc08\spirv-tools-shared-pkg-config.rule">

       <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"></Message>

       <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">setlocal

 "cmake" -DCHANGES_FILE=$(SolutionDir)third_party/SPIRV-Tools/CHANGES -DTEMPLATE_FILE=$(SolutionDir)third_party/SPIRV-Tools/cmake/SPIRV-Tools-shared.pc.in "-DOUT_FILE=$(SolutionDir)build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/SPIRV-Tools-shared.pc" "-DCMAKE_INSTALL_PREFIX=C:/Program Files/SwiftShader" -DCMAKE_INSTALL_LIBDIR=lib -DCMAKE_INSTALL_INCLUDEDIR=include -DSPIRV_SHARED_LIBRARIES=-lSPIRV-Tools-shared -P $(SolutionDir)third_party/SPIRV-Tools/cmake/write_pkg_config.cmake

@@ -76,7 +76,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/bd99ee5ebe6b18f04cf380fcd08b4788/spirv-tools-shared-pkg-config.rule;$(SolutionDir)third_party\SPIRV-Tools\CHANGES;$(SolutionDir)third_party\SPIRV-Tools\cmake\SPIRV-Tools-shared.pc.in;$(SolutionDir)third_party\SPIRV-Tools\cmake\write_pkg_config.cmake;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/811e4230f6622211b599c860e325bc08/spirv-tools-shared-pkg-config.rule;$(SolutionDir)third_party\SPIRV-Tools\CHANGES;$(SolutionDir)third_party\SPIRV-Tools\cmake\SPIRV-Tools-shared.pc.in;$(SolutionDir)third_party\SPIRV-Tools\cmake\write_pkg_config.cmake;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\CMakeFiles\spirv-tools-shared-pkg-config</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkObjects>

       <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'"></Message>

@@ -89,7 +89,7 @@
 exit /b %1

 :cmDone

 if %errorlevel% neq 0 goto :VCEnd</Command>

-      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/bd99ee5ebe6b18f04cf380fcd08b4788/spirv-tools-shared-pkg-config.rule;$(SolutionDir)third_party\SPIRV-Tools\CHANGES;$(SolutionDir)third_party\SPIRV-Tools\cmake\SPIRV-Tools-shared.pc.in;$(SolutionDir)third_party\SPIRV-Tools\cmake\write_pkg_config.cmake;%(AdditionalInputs)</AdditionalInputs>

+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build/Visual Studio 15 2017 Win64/CMakeFiles/811e4230f6622211b599c860e325bc08/spirv-tools-shared-pkg-config.rule;$(SolutionDir)third_party\SPIRV-Tools\CHANGES;$(SolutionDir)third_party\SPIRV-Tools\cmake\SPIRV-Tools-shared.pc.in;$(SolutionDir)third_party\SPIRV-Tools\cmake\write_pkg_config.cmake;%(AdditionalInputs)</AdditionalInputs>

       <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\CMakeFiles\spirv-tools-shared-pkg-config</Outputs>

       <LinkObjects Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkObjects>

     </CustomBuild>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/spirv-tools-shared-pkg-config.vcxproj.filters b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/spirv-tools-shared-pkg-config.vcxproj.filters
index 9f05275..7b7de45 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/spirv-tools-shared-pkg-config.vcxproj.filters
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/spirv-tools-shared-pkg-config.vcxproj.filters
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>

 <Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

   <ItemGroup>

-    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\bd99ee5ebe6b18f04cf380fcd08b4788\spirv-tools-shared-pkg-config.rule">

+    <CustomBuild Include="$(SolutionDir)build\Visual Studio 15 2017 Win64\CMakeFiles\811e4230f6622211b599c860e325bc08\spirv-tools-shared-pkg-config.rule">

       <Filter>CMake Rules</Filter>

     </CustomBuild>

   </ItemGroup>

@@ -10,7 +10,7 @@
   </ItemGroup>

   <ItemGroup>

     <Filter Include="CMake Rules">

-      <UniqueIdentifier>{403A9AA3-1D72-38DC-A6AB-1BFDA2377A05}</UniqueIdentifier>

+      <UniqueIdentifier>{93F83FFB-0A66-3FBE-A52D-9C65B5A808F7}</UniqueIdentifier>

     </Filter>

   </ItemGroup>

 </Project>

diff --git a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/spirv-tools.sln b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/spirv-tools.sln
index 6101ca6..ba502e9 100644
--- a/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/spirv-tools.sln
+++ b/build/Visual Studio 15 2017 Win64/third_party/SPIRV-Tools/spirv-tools.sln
@@ -1,110 +1,110 @@
 Microsoft Visual Studio Solution File, Format Version 12.00

 # Visual Studio 15

-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "CMakePredefinedTargets", "CMakePredefinedTargets", "{1A596A7D-F115-34CE-A382-5D36B526C11B}"

+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "CMakePredefinedTargets", "CMakePredefinedTargets", "{5A8246FF-BC9A-3160-90F6-4485584AA181}"

 EndProject

-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SPIRV-Tools build", "SPIRV-Tools build", "{C4650FD2-D2C6-3510-BB86-2831A872F9A1}"

+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SPIRV-Tools build", "SPIRV-Tools build", "{57CCB7BC-9D96-3E32-AA6F-3B7521C948E6}"

 EndProject

-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SPIRV-Tools libraries", "SPIRV-Tools libraries", "{CBE301FB-683E-33BB-B711-B08F35EA577D}"

+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SPIRV-Tools libraries", "SPIRV-Tools libraries", "{6E2B3475-2FBD-3637-9C98-FABCA56809D3}"

 EndProject

-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SPIRV-Tools utilities", "SPIRV-Tools utilities", "{96E07332-D34E-39D4-8704-3E7CC51BC5F8}"

+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SPIRV-Tools utilities", "SPIRV-Tools utilities", "{6D3379E6-A4B7-33F9-9DEE-DD4172B47202}"

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ALL_BUILD", "ALL_BUILD.vcxproj", "{7E8CAA89-E15F-3F2B-BC05-B5A90F7E9532}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ALL_BUILD", "ALL_BUILD.vcxproj", "{22133560-41E2-34D0-9A00-A0BD4126F0AD}"

 	ProjectSection(ProjectDependencies) = postProject

-		{83D86993-70D0-336A-84F1-8B952B8079DD} = {83D86993-70D0-336A-84F1-8B952B8079DD}

-		{F71D815F-E43A-34C5-92DE-15BF331D63CF} = {F71D815F-E43A-34C5-92DE-15BF331D63CF}

-		{CE414127-5528-30F5-9F5F-5AF9D2B8C04C} = {CE414127-5528-30F5-9F5F-5AF9D2B8C04C}

-		{C5C298F8-C2B9-3D36-B183-02D4620C0C55} = {C5C298F8-C2B9-3D36-B183-02D4620C0C55}

-		{E1A9E405-1306-3924-AE73-FFD7FB095685} = {E1A9E405-1306-3924-AE73-FFD7FB095685}

-		{FF67398E-CAA3-37B5-B167-781D03767AB1} = {FF67398E-CAA3-37B5-B167-781D03767AB1}

-		{B2815DAA-B884-3519-8B30-8249FFED06CD} = {B2815DAA-B884-3519-8B30-8249FFED06CD}

+		{59349DEB-AC96-335C-ACC6-8A92F774538A} = {59349DEB-AC96-335C-ACC6-8A92F774538A}

+		{878BEAEA-CC28-3E97-B0F5-DB93FBC28A23} = {878BEAEA-CC28-3E97-B0F5-DB93FBC28A23}

+		{EFF5DE98-2741-3BD8-B049-D5647A223B5E} = {EFF5DE98-2741-3BD8-B049-D5647A223B5E}

+		{D1FC198E-1358-309D-9AD5-C26B47163E33} = {D1FC198E-1358-309D-9AD5-C26B47163E33}

+		{CF43CEBC-9B44-3697-8262-5DC3F9AC532A} = {CF43CEBC-9B44-3697-8262-5DC3F9AC532A}

+		{FFE62FBF-2BD2-37B2-8883-5B2BA1894018} = {FFE62FBF-2BD2-37B2-8883-5B2BA1894018}

+		{871BEB73-7406-3F9A-8A89-072702C81C2C} = {871BEB73-7406-3F9A-8A89-072702C81C2C}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SPIRV-Tools", "source\SPIRV-Tools.vcxproj", "{83D86993-70D0-336A-84F1-8B952B8079DD}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SPIRV-Tools", "source\SPIRV-Tools.vcxproj", "{59349DEB-AC96-335C-ACC6-8A92F774538A}"

 	ProjectSection(ProjectDependencies) = postProject

-		{D0817E36-BE58-3C95-BF64-748025994A26} = {D0817E36-BE58-3C95-BF64-748025994A26}

-		{717F5DEC-42F8-378A-90E8-CF6E340D983B} = {717F5DEC-42F8-378A-90E8-CF6E340D983B}

-		{0B6F6E15-53DE-3B85-812B-825694B176F8} = {0B6F6E15-53DE-3B85-812B-825694B176F8}

+		{983F7132-9747-3649-BF4B-87E69EE85F3E} = {983F7132-9747-3649-BF4B-87E69EE85F3E}

+		{80AF261B-6B92-3143-9FCA-9BC59158D733} = {80AF261B-6B92-3143-9FCA-9BC59158D733}

+		{3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E} = {3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SPIRV-Tools-link", "source\link\SPIRV-Tools-link.vcxproj", "{F71D815F-E43A-34C5-92DE-15BF331D63CF}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SPIRV-Tools-link", "source\link\SPIRV-Tools-link.vcxproj", "{878BEAEA-CC28-3E97-B0F5-DB93FBC28A23}"

 	ProjectSection(ProjectDependencies) = postProject

-		{83D86993-70D0-336A-84F1-8B952B8079DD} = {83D86993-70D0-336A-84F1-8B952B8079DD}

-		{CE414127-5528-30F5-9F5F-5AF9D2B8C04C} = {CE414127-5528-30F5-9F5F-5AF9D2B8C04C}

+		{59349DEB-AC96-335C-ACC6-8A92F774538A} = {59349DEB-AC96-335C-ACC6-8A92F774538A}

+		{EFF5DE98-2741-3BD8-B049-D5647A223B5E} = {EFF5DE98-2741-3BD8-B049-D5647A223B5E}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SPIRV-Tools-opt", "source\opt\SPIRV-Tools-opt.vcxproj", "{CE414127-5528-30F5-9F5F-5AF9D2B8C04C}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SPIRV-Tools-opt", "source\opt\SPIRV-Tools-opt.vcxproj", "{EFF5DE98-2741-3BD8-B049-D5647A223B5E}"

 	ProjectSection(ProjectDependencies) = postProject

-		{83D86993-70D0-336A-84F1-8B952B8079DD} = {83D86993-70D0-336A-84F1-8B952B8079DD}

+		{59349DEB-AC96-335C-ACC6-8A92F774538A} = {59349DEB-AC96-335C-ACC6-8A92F774538A}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SPIRV-Tools-reduce", "source\reduce\SPIRV-Tools-reduce.vcxproj", "{C5C298F8-C2B9-3D36-B183-02D4620C0C55}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SPIRV-Tools-reduce", "source\reduce\SPIRV-Tools-reduce.vcxproj", "{D1FC198E-1358-309D-9AD5-C26B47163E33}"

 	ProjectSection(ProjectDependencies) = postProject

-		{83D86993-70D0-336A-84F1-8B952B8079DD} = {83D86993-70D0-336A-84F1-8B952B8079DD}

-		{CE414127-5528-30F5-9F5F-5AF9D2B8C04C} = {CE414127-5528-30F5-9F5F-5AF9D2B8C04C}

+		{59349DEB-AC96-335C-ACC6-8A92F774538A} = {59349DEB-AC96-335C-ACC6-8A92F774538A}

+		{EFF5DE98-2741-3BD8-B049-D5647A223B5E} = {EFF5DE98-2741-3BD8-B049-D5647A223B5E}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SPIRV-Tools-shared", "source\SPIRV-Tools-shared.vcxproj", "{E1A9E405-1306-3924-AE73-FFD7FB095685}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SPIRV-Tools-shared", "source\SPIRV-Tools-shared.vcxproj", "{CF43CEBC-9B44-3697-8262-5DC3F9AC532A}"

 	ProjectSection(ProjectDependencies) = postProject

-		{D0817E36-BE58-3C95-BF64-748025994A26} = {D0817E36-BE58-3C95-BF64-748025994A26}

-		{717F5DEC-42F8-378A-90E8-CF6E340D983B} = {717F5DEC-42F8-378A-90E8-CF6E340D983B}

-		{0B6F6E15-53DE-3B85-812B-825694B176F8} = {0B6F6E15-53DE-3B85-812B-825694B176F8}

+		{983F7132-9747-3649-BF4B-87E69EE85F3E} = {983F7132-9747-3649-BF4B-87E69EE85F3E}

+		{80AF261B-6B92-3143-9FCA-9BC59158D733} = {80AF261B-6B92-3143-9FCA-9BC59158D733}

+		{3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E} = {3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_tables", "source\core_tables.vcxproj", "{D0817E36-BE58-3C95-BF64-748025994A26}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_tables", "source\core_tables.vcxproj", "{983F7132-9747-3649-BF4B-87E69EE85F3E}"

 	ProjectSection(ProjectDependencies) = postProject

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "enum_string_mapping", "source\enum_string_mapping.vcxproj", "{717F5DEC-42F8-378A-90E8-CF6E340D983B}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "enum_string_mapping", "source\enum_string_mapping.vcxproj", "{80AF261B-6B92-3143-9FCA-9BC59158D733}"

 	ProjectSection(ProjectDependencies) = postProject

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "extinst_tables", "source\extinst_tables.vcxproj", "{0B6F6E15-53DE-3B85-812B-825694B176F8}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "extinst_tables", "source\extinst_tables.vcxproj", "{3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E}"

 	ProjectSection(ProjectDependencies) = postProject

-		{E86A9777-6C04-38BC-AC03-32F171BA9037} = {E86A9777-6C04-38BC-AC03-32F171BA9037}

-		{EA1FDDD6-3BE8-3A92-B7F9-C8E032D7F1A2} = {EA1FDDD6-3BE8-3A92-B7F9-C8E032D7F1A2}

-		{4DE77359-5B7E-3EF3-AB38-9F4FF62D4935} = {4DE77359-5B7E-3EF3-AB38-9F4FF62D4935}

-		{25CAC665-41EF-3770-B3AC-1C090D2AC7EA} = {25CAC665-41EF-3770-B3AC-1C090D2AC7EA}

-		{95DD96F6-D410-3911-B61A-C0AA0D6EBD2C} = {95DD96F6-D410-3911-B61A-C0AA0D6EBD2C}

-		{D31F2A2D-3E6E-3541-A885-0D28DBE02FE8} = {D31F2A2D-3E6E-3541-A885-0D28DBE02FE8}

+		{39DFA88C-1DC6-3E6F-A71F-7970C1B8E483} = {39DFA88C-1DC6-3E6F-A71F-7970C1B8E483}

+		{496AF3EC-139A-3EA0-8898-45C5704A5F38} = {496AF3EC-139A-3EA0-8898-45C5704A5F38}

+		{E0B79E0B-25BB-355B-9390-E9EC0047C632} = {E0B79E0B-25BB-355B-9390-E9EC0047C632}

+		{1262CB67-3BC7-35D5-9036-3D3B3A9DC3CE} = {1262CB67-3BC7-35D5-9036-3D3B3A9DC3CE}

+		{32C0DDEA-EC24-3465-B0F9-9DA187D45ED3} = {32C0DDEA-EC24-3465-B0F9-9DA187D45ED3}

+		{9E8623BF-3469-3104-9674-DED25861C7CF} = {9E8623BF-3469-3104-9674-DED25861C7CF}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-build-version", "source\spirv-tools-build-version.vcxproj", "{02ED56AE-98AF-3FAB-BA26-B310F23DBCC7}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-build-version", "source\spirv-tools-build-version.vcxproj", "{E6C11FBC-3EC2-3A61-B2F4-EC03BE2CDC63}"

 	ProjectSection(ProjectDependencies) = postProject

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-debuginfo", "source\spirv-tools-debuginfo.vcxproj", "{E86A9777-6C04-38BC-AC03-32F171BA9037}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-header-DebugInfo", "source\spirv-tools-header-DebugInfo.vcxproj", "{39DFA88C-1DC6-3E6F-A71F-7970C1B8E483}"

 	ProjectSection(ProjectDependencies) = postProject

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-header-DebugInfo", "source\spirv-tools-header-DebugInfo.vcxproj", "{EA1FDDD6-3BE8-3A92-B7F9-C8E032D7F1A2}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-pkg-config", "spirv-tools-pkg-config.vcxproj", "{FFE62FBF-2BD2-37B2-8883-5B2BA1894018}"

 	ProjectSection(ProjectDependencies) = postProject

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-pkg-config", "spirv-tools-pkg-config.vcxproj", "{FF67398E-CAA3-37B5-B167-781D03767AB1}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-shared-pkg-config", "spirv-tools-shared-pkg-config.vcxproj", "{871BEB73-7406-3F9A-8A89-072702C81C2C}"

 	ProjectSection(ProjectDependencies) = postProject

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-shared-pkg-config", "spirv-tools-shared-pkg-config.vcxproj", "{B2815DAA-B884-3519-8B30-8249FFED06CD}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-vimsyntax", "source\spirv-tools-vimsyntax.vcxproj", "{AFB877FF-C23C-3ABD-A0C5-0F235F517330}"

 	ProjectSection(ProjectDependencies) = postProject

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-spv-amd-gcn-shader", "source\spirv-tools-spv-amd-gcn-shader.vcxproj", "{4DE77359-5B7E-3EF3-AB38-9F4FF62D4935}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spv-tools-debuginfo", "source\spv-tools-debuginfo.vcxproj", "{496AF3EC-139A-3EA0-8898-45C5704A5F38}"

 	ProjectSection(ProjectDependencies) = postProject

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-spv-amd-shader-ballot", "source\spirv-tools-spv-amd-shader-ballot.vcxproj", "{25CAC665-41EF-3770-B3AC-1C090D2AC7EA}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spv-tools-spv-amd-gs", "source\spv-tools-spv-amd-gs.vcxproj", "{E0B79E0B-25BB-355B-9390-E9EC0047C632}"

 	ProjectSection(ProjectDependencies) = postProject

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-spv-amd-shader-explicit-vertex-parameter", "source\spirv-tools-spv-amd-shader-explicit-vertex-parameter.vcxproj", "{95DD96F6-D410-3911-B61A-C0AA0D6EBD2C}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spv-tools-spv-amd-sb", "source\spv-tools-spv-amd-sb.vcxproj", "{1262CB67-3BC7-35D5-9036-3D3B3A9DC3CE}"

 	ProjectSection(ProjectDependencies) = postProject

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-spv-amd-shader-trinary-minmax", "source\spirv-tools-spv-amd-shader-trinary-minmax.vcxproj", "{D31F2A2D-3E6E-3541-A885-0D28DBE02FE8}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spv-tools-spv-amd-sevp", "source\spv-tools-spv-amd-sevp.vcxproj", "{32C0DDEA-EC24-3465-B0F9-9DA187D45ED3}"

 	ProjectSection(ProjectDependencies) = postProject

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv-tools-vimsyntax", "source\spirv-tools-vimsyntax.vcxproj", "{14222EB4-6C33-3982-8112-F31E05D6508B}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spv-tools-spv-amd-stm", "source\spv-tools-spv-amd-stm.vcxproj", "{9E8623BF-3469-3104-9674-DED25861C7CF}"

 	ProjectSection(ProjectDependencies) = postProject

 	EndProjectSection

 EndProject

@@ -114,95 +114,95 @@
 		Release|x64 = Release|x64

 	EndGlobalSection

 	GlobalSection(ProjectConfigurationPlatforms) = postSolution

-		{7E8CAA89-E15F-3F2B-BC05-B5A90F7E9532}.Debug|x64.ActiveCfg = Debug|x64

-		{7E8CAA89-E15F-3F2B-BC05-B5A90F7E9532}.Release|x64.ActiveCfg = Release|x64

-		{83D86993-70D0-336A-84F1-8B952B8079DD}.Debug|x64.ActiveCfg = Debug|x64

-		{83D86993-70D0-336A-84F1-8B952B8079DD}.Debug|x64.Build.0 = Debug|x64

-		{83D86993-70D0-336A-84F1-8B952B8079DD}.Release|x64.ActiveCfg = Release|x64

-		{83D86993-70D0-336A-84F1-8B952B8079DD}.Release|x64.Build.0 = Release|x64

-		{F71D815F-E43A-34C5-92DE-15BF331D63CF}.Debug|x64.ActiveCfg = Debug|x64

-		{F71D815F-E43A-34C5-92DE-15BF331D63CF}.Debug|x64.Build.0 = Debug|x64

-		{F71D815F-E43A-34C5-92DE-15BF331D63CF}.Release|x64.ActiveCfg = Release|x64

-		{F71D815F-E43A-34C5-92DE-15BF331D63CF}.Release|x64.Build.0 = Release|x64

-		{CE414127-5528-30F5-9F5F-5AF9D2B8C04C}.Debug|x64.ActiveCfg = Debug|x64

-		{CE414127-5528-30F5-9F5F-5AF9D2B8C04C}.Debug|x64.Build.0 = Debug|x64

-		{CE414127-5528-30F5-9F5F-5AF9D2B8C04C}.Release|x64.ActiveCfg = Release|x64

-		{CE414127-5528-30F5-9F5F-5AF9D2B8C04C}.Release|x64.Build.0 = Release|x64

-		{C5C298F8-C2B9-3D36-B183-02D4620C0C55}.Debug|x64.ActiveCfg = Debug|x64

-		{C5C298F8-C2B9-3D36-B183-02D4620C0C55}.Debug|x64.Build.0 = Debug|x64

-		{C5C298F8-C2B9-3D36-B183-02D4620C0C55}.Release|x64.ActiveCfg = Release|x64

-		{C5C298F8-C2B9-3D36-B183-02D4620C0C55}.Release|x64.Build.0 = Release|x64

-		{E1A9E405-1306-3924-AE73-FFD7FB095685}.Debug|x64.ActiveCfg = Debug|x64

-		{E1A9E405-1306-3924-AE73-FFD7FB095685}.Debug|x64.Build.0 = Debug|x64

-		{E1A9E405-1306-3924-AE73-FFD7FB095685}.Release|x64.ActiveCfg = Release|x64

-		{E1A9E405-1306-3924-AE73-FFD7FB095685}.Release|x64.Build.0 = Release|x64

-		{D0817E36-BE58-3C95-BF64-748025994A26}.Debug|x64.ActiveCfg = Debug|x64

-		{D0817E36-BE58-3C95-BF64-748025994A26}.Debug|x64.Build.0 = Debug|x64

-		{D0817E36-BE58-3C95-BF64-748025994A26}.Release|x64.ActiveCfg = Release|x64

-		{D0817E36-BE58-3C95-BF64-748025994A26}.Release|x64.Build.0 = Release|x64

-		{717F5DEC-42F8-378A-90E8-CF6E340D983B}.Debug|x64.ActiveCfg = Debug|x64

-		{717F5DEC-42F8-378A-90E8-CF6E340D983B}.Debug|x64.Build.0 = Debug|x64

-		{717F5DEC-42F8-378A-90E8-CF6E340D983B}.Release|x64.ActiveCfg = Release|x64

-		{717F5DEC-42F8-378A-90E8-CF6E340D983B}.Release|x64.Build.0 = Release|x64

-		{0B6F6E15-53DE-3B85-812B-825694B176F8}.Debug|x64.ActiveCfg = Debug|x64

-		{0B6F6E15-53DE-3B85-812B-825694B176F8}.Debug|x64.Build.0 = Debug|x64

-		{0B6F6E15-53DE-3B85-812B-825694B176F8}.Release|x64.ActiveCfg = Release|x64

-		{0B6F6E15-53DE-3B85-812B-825694B176F8}.Release|x64.Build.0 = Release|x64

-		{02ED56AE-98AF-3FAB-BA26-B310F23DBCC7}.Debug|x64.ActiveCfg = Debug|x64

-		{02ED56AE-98AF-3FAB-BA26-B310F23DBCC7}.Release|x64.ActiveCfg = Release|x64

-		{E86A9777-6C04-38BC-AC03-32F171BA9037}.Debug|x64.ActiveCfg = Debug|x64

-		{E86A9777-6C04-38BC-AC03-32F171BA9037}.Debug|x64.Build.0 = Debug|x64

-		{E86A9777-6C04-38BC-AC03-32F171BA9037}.Release|x64.ActiveCfg = Release|x64

-		{E86A9777-6C04-38BC-AC03-32F171BA9037}.Release|x64.Build.0 = Release|x64

-		{EA1FDDD6-3BE8-3A92-B7F9-C8E032D7F1A2}.Debug|x64.ActiveCfg = Debug|x64

-		{EA1FDDD6-3BE8-3A92-B7F9-C8E032D7F1A2}.Debug|x64.Build.0 = Debug|x64

-		{EA1FDDD6-3BE8-3A92-B7F9-C8E032D7F1A2}.Release|x64.ActiveCfg = Release|x64

-		{EA1FDDD6-3BE8-3A92-B7F9-C8E032D7F1A2}.Release|x64.Build.0 = Release|x64

-		{FF67398E-CAA3-37B5-B167-781D03767AB1}.Debug|x64.ActiveCfg = Debug|x64

-		{FF67398E-CAA3-37B5-B167-781D03767AB1}.Debug|x64.Build.0 = Debug|x64

-		{FF67398E-CAA3-37B5-B167-781D03767AB1}.Release|x64.ActiveCfg = Release|x64

-		{FF67398E-CAA3-37B5-B167-781D03767AB1}.Release|x64.Build.0 = Release|x64

-		{B2815DAA-B884-3519-8B30-8249FFED06CD}.Debug|x64.ActiveCfg = Debug|x64

-		{B2815DAA-B884-3519-8B30-8249FFED06CD}.Debug|x64.Build.0 = Debug|x64

-		{B2815DAA-B884-3519-8B30-8249FFED06CD}.Release|x64.ActiveCfg = Release|x64

-		{B2815DAA-B884-3519-8B30-8249FFED06CD}.Release|x64.Build.0 = Release|x64

-		{4DE77359-5B7E-3EF3-AB38-9F4FF62D4935}.Debug|x64.ActiveCfg = Debug|x64

-		{4DE77359-5B7E-3EF3-AB38-9F4FF62D4935}.Debug|x64.Build.0 = Debug|x64

-		{4DE77359-5B7E-3EF3-AB38-9F4FF62D4935}.Release|x64.ActiveCfg = Release|x64

-		{4DE77359-5B7E-3EF3-AB38-9F4FF62D4935}.Release|x64.Build.0 = Release|x64

-		{25CAC665-41EF-3770-B3AC-1C090D2AC7EA}.Debug|x64.ActiveCfg = Debug|x64

-		{25CAC665-41EF-3770-B3AC-1C090D2AC7EA}.Debug|x64.Build.0 = Debug|x64

-		{25CAC665-41EF-3770-B3AC-1C090D2AC7EA}.Release|x64.ActiveCfg = Release|x64

-		{25CAC665-41EF-3770-B3AC-1C090D2AC7EA}.Release|x64.Build.0 = Release|x64

-		{95DD96F6-D410-3911-B61A-C0AA0D6EBD2C}.Debug|x64.ActiveCfg = Debug|x64

-		{95DD96F6-D410-3911-B61A-C0AA0D6EBD2C}.Debug|x64.Build.0 = Debug|x64

-		{95DD96F6-D410-3911-B61A-C0AA0D6EBD2C}.Release|x64.ActiveCfg = Release|x64

-		{95DD96F6-D410-3911-B61A-C0AA0D6EBD2C}.Release|x64.Build.0 = Release|x64

-		{D31F2A2D-3E6E-3541-A885-0D28DBE02FE8}.Debug|x64.ActiveCfg = Debug|x64

-		{D31F2A2D-3E6E-3541-A885-0D28DBE02FE8}.Debug|x64.Build.0 = Debug|x64

-		{D31F2A2D-3E6E-3541-A885-0D28DBE02FE8}.Release|x64.ActiveCfg = Release|x64

-		{D31F2A2D-3E6E-3541-A885-0D28DBE02FE8}.Release|x64.Build.0 = Release|x64

-		{14222EB4-6C33-3982-8112-F31E05D6508B}.Debug|x64.ActiveCfg = Debug|x64

-		{14222EB4-6C33-3982-8112-F31E05D6508B}.Release|x64.ActiveCfg = Release|x64

+		{22133560-41E2-34D0-9A00-A0BD4126F0AD}.Debug|x64.ActiveCfg = Debug|x64

+		{22133560-41E2-34D0-9A00-A0BD4126F0AD}.Release|x64.ActiveCfg = Release|x64

+		{59349DEB-AC96-335C-ACC6-8A92F774538A}.Debug|x64.ActiveCfg = Debug|x64

+		{59349DEB-AC96-335C-ACC6-8A92F774538A}.Debug|x64.Build.0 = Debug|x64

+		{59349DEB-AC96-335C-ACC6-8A92F774538A}.Release|x64.ActiveCfg = Release|x64

+		{59349DEB-AC96-335C-ACC6-8A92F774538A}.Release|x64.Build.0 = Release|x64

+		{878BEAEA-CC28-3E97-B0F5-DB93FBC28A23}.Debug|x64.ActiveCfg = Debug|x64

+		{878BEAEA-CC28-3E97-B0F5-DB93FBC28A23}.Debug|x64.Build.0 = Debug|x64

+		{878BEAEA-CC28-3E97-B0F5-DB93FBC28A23}.Release|x64.ActiveCfg = Release|x64

+		{878BEAEA-CC28-3E97-B0F5-DB93FBC28A23}.Release|x64.Build.0 = Release|x64

+		{EFF5DE98-2741-3BD8-B049-D5647A223B5E}.Debug|x64.ActiveCfg = Debug|x64

+		{EFF5DE98-2741-3BD8-B049-D5647A223B5E}.Debug|x64.Build.0 = Debug|x64

+		{EFF5DE98-2741-3BD8-B049-D5647A223B5E}.Release|x64.ActiveCfg = Release|x64

+		{EFF5DE98-2741-3BD8-B049-D5647A223B5E}.Release|x64.Build.0 = Release|x64

+		{D1FC198E-1358-309D-9AD5-C26B47163E33}.Debug|x64.ActiveCfg = Debug|x64

+		{D1FC198E-1358-309D-9AD5-C26B47163E33}.Debug|x64.Build.0 = Debug|x64

+		{D1FC198E-1358-309D-9AD5-C26B47163E33}.Release|x64.ActiveCfg = Release|x64

+		{D1FC198E-1358-309D-9AD5-C26B47163E33}.Release|x64.Build.0 = Release|x64

+		{CF43CEBC-9B44-3697-8262-5DC3F9AC532A}.Debug|x64.ActiveCfg = Debug|x64

+		{CF43CEBC-9B44-3697-8262-5DC3F9AC532A}.Debug|x64.Build.0 = Debug|x64

+		{CF43CEBC-9B44-3697-8262-5DC3F9AC532A}.Release|x64.ActiveCfg = Release|x64

+		{CF43CEBC-9B44-3697-8262-5DC3F9AC532A}.Release|x64.Build.0 = Release|x64

+		{983F7132-9747-3649-BF4B-87E69EE85F3E}.Debug|x64.ActiveCfg = Debug|x64

+		{983F7132-9747-3649-BF4B-87E69EE85F3E}.Debug|x64.Build.0 = Debug|x64

+		{983F7132-9747-3649-BF4B-87E69EE85F3E}.Release|x64.ActiveCfg = Release|x64

+		{983F7132-9747-3649-BF4B-87E69EE85F3E}.Release|x64.Build.0 = Release|x64

+		{80AF261B-6B92-3143-9FCA-9BC59158D733}.Debug|x64.ActiveCfg = Debug|x64

+		{80AF261B-6B92-3143-9FCA-9BC59158D733}.Debug|x64.Build.0 = Debug|x64

+		{80AF261B-6B92-3143-9FCA-9BC59158D733}.Release|x64.ActiveCfg = Release|x64

+		{80AF261B-6B92-3143-9FCA-9BC59158D733}.Release|x64.Build.0 = Release|x64

+		{3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E}.Debug|x64.ActiveCfg = Debug|x64

+		{3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E}.Debug|x64.Build.0 = Debug|x64

+		{3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E}.Release|x64.ActiveCfg = Release|x64

+		{3F5B4AC4-64E2-3B84-BEE0-405F7EFD435E}.Release|x64.Build.0 = Release|x64

+		{E6C11FBC-3EC2-3A61-B2F4-EC03BE2CDC63}.Debug|x64.ActiveCfg = Debug|x64

+		{E6C11FBC-3EC2-3A61-B2F4-EC03BE2CDC63}.Release|x64.ActiveCfg = Release|x64

+		{39DFA88C-1DC6-3E6F-A71F-7970C1B8E483}.Debug|x64.ActiveCfg = Debug|x64

+		{39DFA88C-1DC6-3E6F-A71F-7970C1B8E483}.Debug|x64.Build.0 = Debug|x64

+		{39DFA88C-1DC6-3E6F-A71F-7970C1B8E483}.Release|x64.ActiveCfg = Release|x64

+		{39DFA88C-1DC6-3E6F-A71F-7970C1B8E483}.Release|x64.Build.0 = Release|x64

+		{FFE62FBF-2BD2-37B2-8883-5B2BA1894018}.Debug|x64.ActiveCfg = Debug|x64

+		{FFE62FBF-2BD2-37B2-8883-5B2BA1894018}.Debug|x64.Build.0 = Debug|x64

+		{FFE62FBF-2BD2-37B2-8883-5B2BA1894018}.Release|x64.ActiveCfg = Release|x64

+		{FFE62FBF-2BD2-37B2-8883-5B2BA1894018}.Release|x64.Build.0 = Release|x64

+		{871BEB73-7406-3F9A-8A89-072702C81C2C}.Debug|x64.ActiveCfg = Debug|x64

+		{871BEB73-7406-3F9A-8A89-072702C81C2C}.Debug|x64.Build.0 = Debug|x64

+		{871BEB73-7406-3F9A-8A89-072702C81C2C}.Release|x64.ActiveCfg = Release|x64

+		{871BEB73-7406-3F9A-8A89-072702C81C2C}.Release|x64.Build.0 = Release|x64

+		{AFB877FF-C23C-3ABD-A0C5-0F235F517330}.Debug|x64.ActiveCfg = Debug|x64

+		{AFB877FF-C23C-3ABD-A0C5-0F235F517330}.Release|x64.ActiveCfg = Release|x64

+		{496AF3EC-139A-3EA0-8898-45C5704A5F38}.Debug|x64.ActiveCfg = Debug|x64

+		{496AF3EC-139A-3EA0-8898-45C5704A5F38}.Debug|x64.Build.0 = Debug|x64

+		{496AF3EC-139A-3EA0-8898-45C5704A5F38}.Release|x64.ActiveCfg = Release|x64

+		{496AF3EC-139A-3EA0-8898-45C5704A5F38}.Release|x64.Build.0 = Release|x64

+		{E0B79E0B-25BB-355B-9390-E9EC0047C632}.Debug|x64.ActiveCfg = Debug|x64

+		{E0B79E0B-25BB-355B-9390-E9EC0047C632}.Debug|x64.Build.0 = Debug|x64

+		{E0B79E0B-25BB-355B-9390-E9EC0047C632}.Release|x64.ActiveCfg = Release|x64

+		{E0B79E0B-25BB-355B-9390-E9EC0047C632}.Release|x64.Build.0 = Release|x64

+		{1262CB67-3BC7-35D5-9036-3D3B3A9DC3CE}.Debug|x64.ActiveCfg = Debug|x64

+		{1262CB67-3BC7-35D5-9036-3D3B3A9DC3CE}.Debug|x64.Build.0 = Debug|x64

+		{1262CB67-3BC7-35D5-9036-3D3B3A9DC3CE}.Release|x64.ActiveCfg = Release|x64

+		{1262CB67-3BC7-35D5-9036-3D3B3A9DC3CE}.Release|x64.Build.0 = Release|x64

+		{32C0DDEA-EC24-3465-B0F9-9DA187D45ED3}.Debug|x64.ActiveCfg = Debug|x64

+		{32C0DDEA-EC24-3465-B0F9-9DA187D45ED3}.Debug|x64.Build.0 = Debug|x64

+		{32C0DDEA-EC24-3465-B0F9-9DA187D45ED3}.Release|x64.ActiveCfg = Release|x64

+		{32C0DDEA-EC24-3465-B0F9-9DA187D45ED3}.Release|x64.Build.0 = Release|x64

+		{9E8623BF-3469-3104-9674-DED25861C7CF}.Debug|x64.ActiveCfg = Debug|x64

+		{9E8623BF-3469-3104-9674-DED25861C7CF}.Debug|x64.Build.0 = Debug|x64

+		{9E8623BF-3469-3104-9674-DED25861C7CF}.Release|x64.ActiveCfg = Release|x64

+		{9E8623BF-3469-3104-9674-DED25861C7CF}.Release|x64.Build.0 = Release|x64

 	EndGlobalSection

 	GlobalSection(NestedProjects) = preSolution

-		{7E8CAA89-E15F-3F2B-BC05-B5A90F7E9532} = {1A596A7D-F115-34CE-A382-5D36B526C11B}

-		{02ED56AE-98AF-3FAB-BA26-B310F23DBCC7} = {C4650FD2-D2C6-3510-BB86-2831A872F9A1}

-		{E86A9777-6C04-38BC-AC03-32F171BA9037} = {C4650FD2-D2C6-3510-BB86-2831A872F9A1}

-		{EA1FDDD6-3BE8-3A92-B7F9-C8E032D7F1A2} = {C4650FD2-D2C6-3510-BB86-2831A872F9A1}

-		{4DE77359-5B7E-3EF3-AB38-9F4FF62D4935} = {C4650FD2-D2C6-3510-BB86-2831A872F9A1}

-		{25CAC665-41EF-3770-B3AC-1C090D2AC7EA} = {C4650FD2-D2C6-3510-BB86-2831A872F9A1}

-		{95DD96F6-D410-3911-B61A-C0AA0D6EBD2C} = {C4650FD2-D2C6-3510-BB86-2831A872F9A1}

-		{D31F2A2D-3E6E-3541-A885-0D28DBE02FE8} = {C4650FD2-D2C6-3510-BB86-2831A872F9A1}

-		{83D86993-70D0-336A-84F1-8B952B8079DD} = {CBE301FB-683E-33BB-B711-B08F35EA577D}

-		{F71D815F-E43A-34C5-92DE-15BF331D63CF} = {CBE301FB-683E-33BB-B711-B08F35EA577D}

-		{CE414127-5528-30F5-9F5F-5AF9D2B8C04C} = {CBE301FB-683E-33BB-B711-B08F35EA577D}

-		{C5C298F8-C2B9-3D36-B183-02D4620C0C55} = {CBE301FB-683E-33BB-B711-B08F35EA577D}

-		{E1A9E405-1306-3924-AE73-FFD7FB095685} = {CBE301FB-683E-33BB-B711-B08F35EA577D}

-		{14222EB4-6C33-3982-8112-F31E05D6508B} = {96E07332-D34E-39D4-8704-3E7CC51BC5F8}

+		{22133560-41E2-34D0-9A00-A0BD4126F0AD} = {5A8246FF-BC9A-3160-90F6-4485584AA181}

+		{E6C11FBC-3EC2-3A61-B2F4-EC03BE2CDC63} = {57CCB7BC-9D96-3E32-AA6F-3B7521C948E6}

+		{39DFA88C-1DC6-3E6F-A71F-7970C1B8E483} = {57CCB7BC-9D96-3E32-AA6F-3B7521C948E6}

+		{496AF3EC-139A-3EA0-8898-45C5704A5F38} = {57CCB7BC-9D96-3E32-AA6F-3B7521C948E6}

+		{E0B79E0B-25BB-355B-9390-E9EC0047C632} = {57CCB7BC-9D96-3E32-AA6F-3B7521C948E6}

+		{1262CB67-3BC7-35D5-9036-3D3B3A9DC3CE} = {57CCB7BC-9D96-3E32-AA6F-3B7521C948E6}

+		{32C0DDEA-EC24-3465-B0F9-9DA187D45ED3} = {57CCB7BC-9D96-3E32-AA6F-3B7521C948E6}

+		{9E8623BF-3469-3104-9674-DED25861C7CF} = {57CCB7BC-9D96-3E32-AA6F-3B7521C948E6}

+		{59349DEB-AC96-335C-ACC6-8A92F774538A} = {6E2B3475-2FBD-3637-9C98-FABCA56809D3}

+		{878BEAEA-CC28-3E97-B0F5-DB93FBC28A23} = {6E2B3475-2FBD-3637-9C98-FABCA56809D3}

+		{EFF5DE98-2741-3BD8-B049-D5647A223B5E} = {6E2B3475-2FBD-3637-9C98-FABCA56809D3}

+		{D1FC198E-1358-309D-9AD5-C26B47163E33} = {6E2B3475-2FBD-3637-9C98-FABCA56809D3}

+		{CF43CEBC-9B44-3697-8262-5DC3F9AC532A} = {6E2B3475-2FBD-3637-9C98-FABCA56809D3}

+		{AFB877FF-C23C-3ABD-A0C5-0F235F517330} = {6D3379E6-A4B7-33F9-9DEE-DD4172B47202}

 	EndGlobalSection

 	GlobalSection(ExtensibilityGlobals) = postSolution

-		SolutionGuid = {4F073CF1-99FD-3CF0-87A8-0D236EAF1BDA}

+		SolutionGuid = {B1E14E01-C852-3EF6-A7DE-256C9DFE48B2}

 	EndGlobalSection

 	GlobalSection(ExtensibilityAddIns) = postSolution

 	EndGlobalSection

diff --git a/src/Reactor/Reactor.vcxproj b/src/Reactor/Reactor.vcxproj
index a885861..2b96c28 100644
--- a/src/Reactor/Reactor.vcxproj
+++ b/src/Reactor/Reactor.vcxproj
@@ -308,7 +308,7 @@
   </ItemGroup>

   <ItemGroup>

     <ProjectReference Include="..\..\build\Visual Studio 15 2017 Win64\llvm.vcxproj">

-      <Project>{2f30a9cf-6135-3db8-a898-cc2638959596}</Project>

+      <Project>{481093b5-4ef0-391e-82ff-bb73cfcd3d51}</Project>

     </ProjectReference>

   </ItemGroup>

   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />

diff --git a/src/Vulkan/vulkan.vcxproj b/src/Vulkan/vulkan.vcxproj
index e6c5020..162f3f2 100644
--- a/src/Vulkan/vulkan.vcxproj
+++ b/src/Vulkan/vulkan.vcxproj
@@ -293,10 +293,10 @@
   </ItemGroup>

   <ItemGroup>

     <ProjectReference Include="..\..\build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\opt\SPIRV-Tools-opt.vcxproj">

-      <Project>{ce414127-5528-30f5-9f5f-5af9d2b8c04c}</Project>

+      <Project>{eff5de98-2741-3bd8-b049-d5647a223b5e}</Project>

     </ProjectReference>

     <ProjectReference Include="..\..\build\Visual Studio 15 2017 Win64\third_party\SPIRV-Tools\source\SPIRV-Tools.vcxproj">

-      <Project>{83d86993-70d0-336a-84f1-8b952b8079dd}</Project>

+      <Project>{59349deb-ac96-335c-acc6-8a92f774538a}</Project>

     </ProjectReference>

     <ProjectReference Include="..\Reactor\Reactor.vcxproj">

       <Project>{28fd076d-10b5-4bd8-a4cf-f44c7002a803}</Project>