[tint][lang] Standardise lower / raise namespaces

These were inconsistent between languages. This CL applies the following rules:

* Lower transforms are declared in the tint::<lang>::reader::lower namespace.
* Raise transforms are declared in the tint::<lang>::writer::raise namespace.

To avoid pointless repetition:
* The main Lower() function is declared in the tint::<lang>::reader namespace.
* The main Raise() function is declared in the tint::<lang>::writer namespace.

Change-Id: I6931e50c9868219950af63c54a248a79f6b9c0dc
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/168227
Reviewed-by: dan sinclair <dsinclair@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
diff --git a/src/tint/lang/glsl/writer/printer/helper_test.h b/src/tint/lang/glsl/writer/printer/helper_test.h
index f6b31dd..a720241 100644
--- a/src/tint/lang/glsl/writer/printer/helper_test.h
+++ b/src/tint/lang/glsl/writer/printer/helper_test.h
@@ -62,7 +62,7 @@
     /// Run the writer on the IR module and validate the result.
     /// @returns true if generation and validation succeeded
     bool Generate() {
-        if (auto raised = raise::Raise(mod); raised != Success) {
+        if (auto raised = Raise(mod); raised != Success) {
             err_ = raised.Failure().reason.str();
             return false;
         }
diff --git a/src/tint/lang/glsl/writer/raise/raise.cc b/src/tint/lang/glsl/writer/raise/raise.cc
index 33c17e9..1985ec7 100644
--- a/src/tint/lang/glsl/writer/raise/raise.cc
+++ b/src/tint/lang/glsl/writer/raise/raise.cc
@@ -27,7 +27,7 @@
 
 #include "src/tint/lang/glsl/writer/raise/raise.h"
 
-namespace tint::glsl::raise {
+namespace tint::glsl::writer {
 
 Result<SuccessType> Raise(core::ir::Module&) {
     // #define RUN_TRANSFORM(name)
@@ -41,4 +41,4 @@
     return Success;
 }
 
-}  // namespace tint::glsl::raise
+}  // namespace tint::glsl::writer
diff --git a/src/tint/lang/glsl/writer/raise/raise.h b/src/tint/lang/glsl/writer/raise/raise.h
index 2ff1489..846790d 100644
--- a/src/tint/lang/glsl/writer/raise/raise.h
+++ b/src/tint/lang/glsl/writer/raise/raise.h
@@ -35,13 +35,13 @@
 class Module;
 }  // namespace tint::core::ir
 
-namespace tint::glsl::raise {
+namespace tint::glsl::writer {
 
 /// Raise a core IR module to the MSL dialect of the IR.
 /// @param mod the core IR module to raise to MSL dialect
 /// @returns success or failure
 Result<SuccessType> Raise(core::ir::Module& mod);
 
-}  // namespace tint::glsl::raise
+}  // namespace tint::glsl::writer
 
 #endif  // SRC_TINT_LANG_GLSL_WRITER_RAISE_RAISE_H_
diff --git a/src/tint/lang/glsl/writer/writer.cc b/src/tint/lang/glsl/writer/writer.cc
index 1402afe..3f8437d 100644
--- a/src/tint/lang/glsl/writer/writer.cc
+++ b/src/tint/lang/glsl/writer/writer.cc
@@ -40,7 +40,7 @@
     Output output;
 
     // Raise from core-dialect to GLSL-dialect.
-    if (auto res = raise::Raise(ir); res != Success) {
+    if (auto res = Raise(ir); res != Success) {
         return res.Failure();
     }
 
diff --git a/src/tint/lang/msl/writer/printer/helper_test.h b/src/tint/lang/msl/writer/printer/helper_test.h
index b52e60d..410153b 100644
--- a/src/tint/lang/msl/writer/printer/helper_test.h
+++ b/src/tint/lang/msl/writer/printer/helper_test.h
@@ -80,7 +80,7 @@
     /// Run the writer on the IR module and validate the result.
     /// @returns true if generation and validation succeeded
     bool Generate() {
-        if (auto raised = raise::Raise(mod, {}); raised != Success) {
+        if (auto raised = Raise(mod, {}); raised != Success) {
             err_ = raised.Failure().reason.str();
             return false;
         }
diff --git a/src/tint/lang/msl/writer/raise/raise.cc b/src/tint/lang/msl/writer/raise/raise.cc
index 7bbe7c1..63591e7 100644
--- a/src/tint/lang/msl/writer/raise/raise.cc
+++ b/src/tint/lang/msl/writer/raise/raise.cc
@@ -43,7 +43,7 @@
 #include "src/tint/lang/msl/writer/common/option_helpers.h"
 #include "src/tint/lang/msl/writer/raise/builtin_polyfill.h"
 
-namespace tint::msl::writer::raise {
+namespace tint::msl::writer {
 
 Result<SuccessType> Raise(core::ir::Module& module, const Options& options) {
 #define RUN_TRANSFORM(name, ...)                   \
@@ -103,9 +103,9 @@
     RUN_TRANSFORM(core::ir::transform::DemoteToHelper);
 
     RUN_TRANSFORM(core::ir::transform::ValueToLet);
-    RUN_TRANSFORM(BuiltinPolyfill);
+    RUN_TRANSFORM(raise::BuiltinPolyfill);
 
     return Success;
 }
 
-}  // namespace tint::msl::writer::raise
+}  // namespace tint::msl::writer
diff --git a/src/tint/lang/msl/writer/raise/raise.h b/src/tint/lang/msl/writer/raise/raise.h
index 256925d..a4d5895 100644
--- a/src/tint/lang/msl/writer/raise/raise.h
+++ b/src/tint/lang/msl/writer/raise/raise.h
@@ -39,7 +39,7 @@
 class Module;
 }  // namespace tint::core::ir
 
-namespace tint::msl::writer::raise {
+namespace tint::msl::writer {
 
 /// Raise a core IR module to the MSL dialect of the IR.
 /// @param module the core IR module to raise to MSL dialect
@@ -47,6 +47,6 @@
 /// @returns success or failure
 Result<SuccessType> Raise(core::ir::Module& module, const Options& options);
 
-}  // namespace tint::msl::writer::raise
+}  // namespace tint::msl::writer
 
 #endif  // SRC_TINT_LANG_MSL_WRITER_RAISE_RAISE_H_
diff --git a/src/tint/lang/msl/writer/writer.cc b/src/tint/lang/msl/writer/writer.cc
index e997959..c0f9d41 100644
--- a/src/tint/lang/msl/writer/writer.cc
+++ b/src/tint/lang/msl/writer/writer.cc
@@ -53,7 +53,7 @@
     Output output;
 
     // Raise from core-dialect to MSL-dialect.
-    if (auto res = raise::Raise(ir, options); res != Success) {
+    if (auto res = Raise(ir, options); res != Success) {
         return res.Failure();
     }
 
diff --git a/src/tint/lang/spirv/writer/common/helper_test.h b/src/tint/lang/spirv/writer/common/helper_test.h
index df4936e..1c08ab9 100644
--- a/src/tint/lang/spirv/writer/common/helper_test.h
+++ b/src/tint/lang/spirv/writer/common/helper_test.h
@@ -115,7 +115,7 @@
     /// storage class with OpConstantNull
     /// @returns true if generation and validation succeeded
     bool Generate(Options options = {}, bool zero_init_workgroup_memory = false) {
-        auto raised = raise::Raise(mod, options);
+        auto raised = Raise(mod, options);
         if (raised != Success) {
             err_ = raised.Failure().reason.str();
             return false;
diff --git a/src/tint/lang/spirv/writer/raise/raise.cc b/src/tint/lang/spirv/writer/raise/raise.cc
index bfa4285..6372390 100644
--- a/src/tint/lang/spirv/writer/raise/raise.cc
+++ b/src/tint/lang/spirv/writer/raise/raise.cc
@@ -54,7 +54,7 @@
 #include "src/tint/lang/spirv/writer/raise/shader_io.h"
 #include "src/tint/lang/spirv/writer/raise/var_for_dynamic_index.h"
 
-namespace tint::spirv::writer::raise {
+namespace tint::spirv::writer {
 
 Result<SuccessType> Raise(core::ir::Module& module, const Options& options) {
 #define RUN_TRANSFORM(name, ...)         \
@@ -122,7 +122,7 @@
 
     if (options.pass_matrix_by_pointer) {
         // PassMatrixByPointer must come after PreservePadding+DirectVariableAccess.
-        RUN_TRANSFORM(PassMatrixByPointer, module);
+        RUN_TRANSFORM(raise::PassMatrixByPointer, module);
     }
 
     RUN_TRANSFORM(core::ir::transform::AddEmptyEntryPoint, module);
@@ -138,16 +138,16 @@
     // DemoteToHelper must come before any transform that introduces non-core instructions.
     RUN_TRANSFORM(core::ir::transform::DemoteToHelper, module);
 
-    RUN_TRANSFORM(BuiltinPolyfill, module);
-    RUN_TRANSFORM(ExpandImplicitSplats, module);
-    RUN_TRANSFORM(HandleMatrixArithmetic, module);
-    RUN_TRANSFORM(MergeReturn, module);
-    RUN_TRANSFORM(ShaderIO, module,
-                  ShaderIOConfig{options.clamp_frag_depth, options.emit_vertex_point_size});
+    RUN_TRANSFORM(raise::BuiltinPolyfill, module);
+    RUN_TRANSFORM(raise::ExpandImplicitSplats, module);
+    RUN_TRANSFORM(raise::HandleMatrixArithmetic, module);
+    RUN_TRANSFORM(raise::MergeReturn, module);
+    RUN_TRANSFORM(raise::ShaderIO, module,
+                  raise::ShaderIOConfig{options.clamp_frag_depth, options.emit_vertex_point_size});
     RUN_TRANSFORM(core::ir::transform::Std140, module);
-    RUN_TRANSFORM(VarForDynamicIndex, module);
+    RUN_TRANSFORM(raise::VarForDynamicIndex, module);
 
     return Success;
 }
 
-}  // namespace tint::spirv::writer::raise
+}  // namespace tint::spirv::writer
diff --git a/src/tint/lang/spirv/writer/raise/raise.h b/src/tint/lang/spirv/writer/raise/raise.h
index ba6270d..64854f3 100644
--- a/src/tint/lang/spirv/writer/raise/raise.h
+++ b/src/tint/lang/spirv/writer/raise/raise.h
@@ -39,7 +39,7 @@
 class Module;
 }
 
-namespace tint::spirv::writer::raise {
+namespace tint::spirv::writer {
 
 /// Raise a core IR module to the SPIR-V dialect of the IR.
 /// @param module the core IR module to raise to SPIR-V dialect
@@ -47,6 +47,6 @@
 /// @returns success or failure
 Result<SuccessType> Raise(core::ir::Module& module, const Options& options);
 
-}  // namespace tint::spirv::writer::raise
+}  // namespace tint::spirv::writer
 
 #endif  // SRC_TINT_LANG_SPIRV_WRITER_RAISE_RAISE_H_
diff --git a/src/tint/lang/spirv/writer/writer.cc b/src/tint/lang/spirv/writer/writer.cc
index a605c36..88f8233 100644
--- a/src/tint/lang/spirv/writer/writer.cc
+++ b/src/tint/lang/spirv/writer/writer.cc
@@ -54,7 +54,7 @@
     Output output;
 
     // Raise from core-dialect to SPIR-V-dialect.
-    if (auto res = raise::Raise(ir, options); res != Success) {
+    if (auto res = Raise(ir, options); res != Success) {
         return std::move(res.Failure());
     }
 
diff --git a/src/tint/lang/wgsl/reader/lower/lower_test.cc b/src/tint/lang/wgsl/reader/lower/lower_test.cc
index dd05a5d..d8ec462 100644
--- a/src/tint/lang/wgsl/reader/lower/lower_test.cc
+++ b/src/tint/lang/wgsl/reader/lower/lower_test.cc
@@ -33,7 +33,7 @@
 #include "src/tint/lang/wgsl/ir/builtin_call.h"
 #include "src/tint/lang/wgsl/reader/lower/lower.h"
 
-namespace tint::wgsl::reader::lower {
+namespace tint::wgsl::reader {
 namespace {
 
 using namespace tint::core::fluent_types;     // NOLINT
@@ -124,4 +124,4 @@
 }
 
 }  // namespace
-}  // namespace tint::wgsl::reader::lower
+}  // namespace tint::wgsl::reader
diff --git a/src/tint/lang/wgsl/writer/raise/raise.cc b/src/tint/lang/wgsl/writer/raise/raise.cc
index 9d69c41..9a64c26 100644
--- a/src/tint/lang/wgsl/writer/raise/raise.cc
+++ b/src/tint/lang/wgsl/writer/raise/raise.cc
@@ -229,7 +229,8 @@
             }
         }
     }
-    if (auto result = RenameConflicts(&mod); result != Success) {
+
+    if (auto result = raise::RenameConflicts(mod); result != Success) {
         return result.Failure();
     }
 
diff --git a/src/tint/lang/wgsl/writer/raise/rename_conflicts.cc b/src/tint/lang/wgsl/writer/raise/rename_conflicts.cc
index 8ab6b7e..f54efd1 100644
--- a/src/tint/lang/wgsl/writer/raise/rename_conflicts.cc
+++ b/src/tint/lang/wgsl/writer/raise/rename_conflicts.cc
@@ -50,7 +50,7 @@
 #include "src/tint/utils/rtti/switch.h"
 #include "src/tint/utils/text/string.h"
 
-namespace tint::wgsl::writer {
+namespace tint::wgsl::writer::raise {
 
 namespace {
 
@@ -58,7 +58,7 @@
 struct State {
     /// Constructor
     /// @param i the IR module
-    explicit State(core::ir::Module* i) : ir(i) {}
+    explicit State(core::ir::Module& i) : ir(i) {}
 
     /// Processes the module, renaming all declarations that would prevent an identifier resolving
     /// to the correct declaration.
@@ -69,17 +69,17 @@
         RegisterModuleScopeDecls();
 
         // Process the module-scope variable declarations
-        for (auto* inst : *ir->root_block) {
+        for (auto* inst : *ir.root_block) {
             Process(inst);
         }
 
         // Process the functions
-        for (core::ir::Function* fn : ir->functions) {
+        for (core::ir::Function* fn : ir.functions) {
             scopes.Push(Scope{});
             TINT_DEFER(scopes.Pop());
             for (auto* param : fn->Params()) {
                 EnsureResolvable(param->Type());
-                if (auto symbol = ir->NameOf(param); symbol.IsValid()) {
+                if (auto symbol = ir.NameOf(param); symbol.IsValid()) {
                     Declare(scopes.Back(), param, symbol.NameView());
                 }
             }
@@ -93,7 +93,7 @@
     using Scope = Hashmap<std::string_view, CastableBase*, 8>;
 
     /// The IR module.
-    core::ir::Module* ir = nullptr;
+    core::ir::Module& ir;
 
     /// Stack of scopes
     Vector<Scope, 8> scopes{};
@@ -102,7 +102,7 @@
     /// Duplicate declarations with the same name will renamed.
     void RegisterModuleScopeDecls() {
         // Declare all the user types
-        for (auto* ty : ir->Types()) {
+        for (auto* ty : ir.Types()) {
             if (auto* str = ty->As<core::type::Struct>()) {
                 auto name = str->Name().NameView();
                 if (!IsBuiltinStruct(str)) {
@@ -112,17 +112,17 @@
         }
 
         // Declare all the module-scope vars
-        for (auto* inst : *ir->root_block) {
+        for (auto* inst : *ir.root_block) {
             for (auto* result : inst->Results()) {
-                if (auto symbol = ir->NameOf(result)) {
+                if (auto symbol = ir.NameOf(result)) {
                     Declare(scopes.Front(), result, symbol.NameView());
                 }
             }
         }
 
         // Declare all the functions
-        for (core::ir::Function* fn : ir->functions) {
-            if (auto symbol = ir->NameOf(fn); symbol.IsValid()) {
+        for (core::ir::Function* fn : ir.functions) {
+            if (auto symbol = ir.NameOf(fn); symbol.IsValid()) {
                 Declare(scopes.Back(), fn, symbol.NameView());
             }
         }
@@ -142,7 +142,7 @@
         for (auto* operand : inst->Operands()) {
             if (operand) {
                 // Ensure that named operands can be resolved.
-                if (auto symbol = ir->NameOf(operand)) {
+                if (auto symbol = ir.NameOf(operand)) {
                     EnsureResolvesTo(symbol.NameView(), operand);
                 }
                 // If the operand is a constant, then ensure that type name can be resolved.
@@ -195,7 +195,7 @@
 
         // Register new operands and check their types can resolve
         for (auto* result : inst->Results()) {
-            if (auto symbol = ir->NameOf(result); symbol.IsValid()) {
+            if (auto symbol = ir.NameOf(result); symbol.IsValid()) {
                 Declare(scopes.Back(), result, symbol.NameView());
             }
         }
@@ -266,10 +266,10 @@
 
     /// Rename changes the name of @p thing with the old name of @p old_name
     void Rename(CastableBase* thing, std::string_view old_name) {
-        Symbol new_name = ir->symbols.New(old_name);
+        Symbol new_name = ir.symbols.New(old_name);
         Switch(
             thing,  //
-            [&](core::ir::Value* value) { ir->SetName(value, new_name); },
+            [&](core::ir::Value* value) { ir.SetName(value, new_name); },
             [&](core::type::Struct* str) { str->SetName(new_name); },  //
             TINT_ICE_ON_NO_MATCH);
     }
@@ -283,8 +283,8 @@
 
 }  // namespace
 
-Result<SuccessType> RenameConflicts(core::ir::Module* ir) {
-    auto result = ValidateAndDumpIfNeeded(*ir, "RenameConflicts transform");
+Result<SuccessType> RenameConflicts(core::ir::Module& ir) {
+    auto result = ValidateAndDumpIfNeeded(ir, "RenameConflicts transform");
     if (result != Success) {
         return result;
     }
@@ -294,4 +294,4 @@
     return Success;
 }
 
-}  // namespace tint::wgsl::writer
+}  // namespace tint::wgsl::writer::raise
diff --git a/src/tint/lang/wgsl/writer/raise/rename_conflicts.h b/src/tint/lang/wgsl/writer/raise/rename_conflicts.h
index 9f5d989..e9c6816 100644
--- a/src/tint/lang/wgsl/writer/raise/rename_conflicts.h
+++ b/src/tint/lang/wgsl/writer/raise/rename_conflicts.h
@@ -38,15 +38,15 @@
 class Module;
 }
 
-namespace tint::wgsl::writer {
+namespace tint::wgsl::writer::raise {
 
 /// RenameConflicts is a transform that renames declarations which prevent identifiers from
 /// resolving to the correct declaration, and those with identical identifiers declared in the same
 /// scope.
 /// @param module the module to transform
 /// @returns success or failure
-Result<SuccessType> RenameConflicts(core::ir::Module* module);
+Result<SuccessType> RenameConflicts(core::ir::Module& module);
 
-}  // namespace tint::wgsl::writer
+}  // namespace tint::wgsl::writer::raise
 
 #endif  // SRC_TINT_LANG_WGSL_WRITER_RAISE_RENAME_CONFLICTS_H_
diff --git a/src/tint/lang/wgsl/writer/raise/rename_conflicts_test.cc b/src/tint/lang/wgsl/writer/raise/rename_conflicts_test.cc
index 6facee7..8b28870 100644
--- a/src/tint/lang/wgsl/writer/raise/rename_conflicts_test.cc
+++ b/src/tint/lang/wgsl/writer/raise/rename_conflicts_test.cc
@@ -36,7 +36,7 @@
 #include "src/tint/lang/core/ir/validator.h"
 #include "src/tint/lang/core/type/matrix.h"
 
-namespace tint::wgsl::writer {
+namespace tint::wgsl::writer::raise {
 namespace {
 
 using namespace tint::core::fluent_types;     // NOLINT
@@ -56,7 +56,7 @@
         }
 
         // Run the transforms.
-        auto result = RenameConflicts(&mod);
+        auto result = RenameConflicts(mod);
         EXPECT_EQ(result, Success);
 
         // Validate the output IR.
@@ -1102,4 +1102,4 @@
 }
 
 }  // namespace
-}  // namespace tint::wgsl::writer
+}  // namespace tint::wgsl::writer::raise