From 662f43fff6721c6cd013a8f1b2639c2e29fe6be3 Mon Sep 17 00:00:00 2001 From: Tim Foley Date: Sat, 3 Feb 2018 07:30:54 -0800 Subject: Remove non-IR codegen paths (#398) The basic change is simple: remove support for all code generation paths other than the IR. There is a lot of vestigial code left, but the main logic in `ast-legalize.*` is gone. Doing this breaks a *lot* of tests, for various reasons: - We can no longer guarantee exactly matching DXBC or SPIR-V output after things pass through out IR - Many builtins don't have matching versions defined for GLSL output via IR (even when they had versions defined via the earlier approach that worked with the AST) - A lot of code creates intermediate values of opaque types in the IR, which turn into opaque-type temporaries that aren't allowed (this breaks many GLSL tests, but also some HLSL) I implemented some small fixes for issues that I could get working in the time I had, but most of the above are larger than made sense to fix in this commit. For now I'm disabling the tests that cause problems, but we will need to make a concerted effort to get things working on this new substrate if we are going to make good on our goals. --- slang.h | 10 ---------- 1 file changed, 10 deletions(-) (limited to 'slang.h') diff --git a/slang.h b/slang.h index 6923ea3ee..0cabc4873 100644 --- a/slang.h +++ b/slang.h @@ -122,15 +122,6 @@ extern "C" typedef unsigned int SlangCompileFlags; enum { - /** Disable semantic checking as much as possible. */ -// SLANG_COMPILE_FLAG_NO_CHECKING = 1 << 0, - - /* Split apart types that contain a mix of resource and non-resource data */ - SLANG_COMPILE_FLAG_SPLIT_MIXED_TYPES = 1 << 1, - - /* Use new IR-based code generation path (unstable pre-release feature)*/ - SLANG_COMPILE_FLAG_USE_IR = 1 << 2, - /* Do as little mangling of names as possible, to try to preserve original names */ SLANG_COMPILE_FLAG_NO_MANGLING = 1 << 3, @@ -1235,7 +1226,6 @@ namespace slang #include "source/core/slang-string.cpp" #include "source/core/stream.cpp" #include "source/core/text-io.cpp" -#include "source/slang/ast-legalize.cpp" #include "source/slang/bytecode.cpp" #include "source/slang/diagnostics.cpp" #include "source/slang/dxc-support.cpp" -- cgit v1.2.3