[ir] Move spirv binding remapper into the raise method.
Move the call to the binding remapper out of the writer and into the
Raise method for SPIR-V.
Bug: tint:1718
Change-Id: Ibe0ee6a3b3b016fd4e1f8d1003ac337c4e44199d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/152666
Reviewed-by: James Price <jrprice@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: dan sinclair <dsinclair@chromium.org>
diff --git a/src/tint/lang/spirv/writer/BUILD.bazel b/src/tint/lang/spirv/writer/BUILD.bazel
index 6c14c69..f8d6a11 100644
--- a/src/tint/lang/spirv/writer/BUILD.bazel
+++ b/src/tint/lang/spirv/writer/BUILD.bazel
@@ -39,7 +39,6 @@
"//src/tint/lang/core/constant",
"//src/tint/lang/core/intrinsic",
"//src/tint/lang/core/ir",
- "//src/tint/lang/core/ir/transform",
"//src/tint/lang/core/type",
"//src/tint/lang/spirv",
"//src/tint/lang/spirv/intrinsic",
diff --git a/src/tint/lang/spirv/writer/BUILD.cmake b/src/tint/lang/spirv/writer/BUILD.cmake
index c0d3ce0..0910cfb 100644
--- a/src/tint/lang/spirv/writer/BUILD.cmake
+++ b/src/tint/lang/spirv/writer/BUILD.cmake
@@ -46,7 +46,6 @@
tint_lang_core_constant
tint_lang_core_intrinsic
tint_lang_core_ir
- tint_lang_core_ir_transform
tint_lang_core_type
tint_lang_spirv
tint_lang_spirv_intrinsic
diff --git a/src/tint/lang/spirv/writer/BUILD.gn b/src/tint/lang/spirv/writer/BUILD.gn
index 9284214..38d4260 100644
--- a/src/tint/lang/spirv/writer/BUILD.gn
+++ b/src/tint/lang/spirv/writer/BUILD.gn
@@ -42,7 +42,6 @@
"${tint_src_dir}/lang/core/constant",
"${tint_src_dir}/lang/core/intrinsic",
"${tint_src_dir}/lang/core/ir",
- "${tint_src_dir}/lang/core/ir/transform",
"${tint_src_dir}/lang/core/type",
"${tint_src_dir}/lang/spirv",
"${tint_src_dir}/lang/spirv/intrinsic",
diff --git a/src/tint/lang/spirv/writer/raise/raise.cc b/src/tint/lang/spirv/writer/raise/raise.cc
index 3144607..6045987 100644
--- a/src/tint/lang/spirv/writer/raise/raise.cc
+++ b/src/tint/lang/spirv/writer/raise/raise.cc
@@ -19,6 +19,7 @@
#include "src/tint/lang/core/ir/transform/add_empty_entry_point.h"
#include "src/tint/lang/core/ir/transform/bgra8unorm_polyfill.h"
#include "src/tint/lang/core/ir/transform/binary_polyfill.h"
+#include "src/tint/lang/core/ir/transform/binding_remapper.h"
#include "src/tint/lang/core/ir/transform/block_decorated_structs.h"
#include "src/tint/lang/core/ir/transform/builtin_polyfill.h"
#include "src/tint/lang/core/ir/transform/demote_to_helper.h"
@@ -44,6 +45,8 @@
} \
} while (false)
+ RUN_TRANSFORM(core::ir::transform::BindingRemapper, module, options.binding_remapper_options);
+
core::ir::transform::BinaryPolyfillConfig binary_polyfills;
binary_polyfills.bitshift_modulo = true;
binary_polyfills.int_div_mod = true;
diff --git a/src/tint/lang/spirv/writer/writer.cc b/src/tint/lang/spirv/writer/writer.cc
index 5f96226..1a47183 100644
--- a/src/tint/lang/spirv/writer/writer.cc
+++ b/src/tint/lang/spirv/writer/writer.cc
@@ -17,7 +17,6 @@
#include <memory>
#include <utility>
-#include "src/tint/lang/core/ir/transform/binding_remapper.h"
#include "src/tint/lang/spirv/writer/ast_printer/ast_printer.h"
#include "src/tint/lang/spirv/writer/printer/printer.h"
#include "src/tint/lang/spirv/writer/raise/raise.h"
@@ -57,12 +56,6 @@
return res.Failure();
}
- // Apply transforms as required by writer options.
- auto remapper = core::ir::transform::BindingRemapper(ir, options.binding_remapper_options);
- if (!remapper) {
- return remapper.Failure();
- }
-
// Raise from core-dialect to SPIR-V-dialect.
if (auto res = raise::Raise(ir, options); !res) {
return std::move(res.Failure());