Remove DSLFP support.

Ganesh did not adopt DSL FPs, and Graphite is moving to a module-based
solution instead (where we precompile and rehydrate everything once at
startup).

Change-Id: Ie659535739b2d47de654625f65994912c61b0466
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/540301
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
diff --git a/gm/BUILD.bazel b/gm/BUILD.bazel
index bf68583..0af4c35 100644
--- a/gm/BUILD.bazel
+++ b/gm/BUILD.bazel
@@ -192,7 +192,6 @@
         "dropshadowimagefilter.cpp",
         "drrect.cpp",
         "drrect_small_inner.cpp",
-        "dsl_processor_test.cpp",
         "dstreadshuffle.cpp",
         "ducky_yuv_blend.cpp",
         "emboss.cpp",
@@ -3835,23 +3834,6 @@
 )
 
 generated_cc_atom(
-    name = "dsl_processor_test_src",
-    srcs = ["dsl_processor_test.cpp"],
-    visibility = ["//:__subpackages__"],
-    deps = [
-        ":gm_hdr",
-        "//include/effects:SkRuntimeEffect_hdr",
-        "//include/sksl:DSL_hdr",
-        "//src/core:SkCanvasPriv_hdr",
-        "//src/gpu/ganesh:SurfaceFillContext_hdr",
-        "//src/gpu/ganesh/glsl:GrGLSLFragmentShaderBuilder_hdr",
-        "//src/sksl/dsl/priv:DSLFPs_hdr",
-        "//src/sksl/dsl/priv:DSLWriter_hdr",
-        "//src/sksl/ir:SkSLVariable_hdr",
-    ],
-)
-
-generated_cc_atom(
     name = "dstreadshuffle_src",
     srcs = ["dstreadshuffle.cpp"],
     visibility = ["//:__subpackages__"],
diff --git a/gm/dsl_processor_test.cpp b/gm/dsl_processor_test.cpp
deleted file mode 100644
index be26f68..0000000
--- a/gm/dsl_processor_test.cpp
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * Copyright 2021 Google LLC.
- *
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "gm/gm.h"
-#include "include/effects/SkRuntimeEffect.h"
-#include "include/sksl/DSL.h"
-#include "src/core/SkCanvasPriv.h"
-#include "src/gpu/ganesh/SurfaceFillContext.h"
-#include "src/gpu/ganesh/glsl/GrGLSLFragmentShaderBuilder.h"
-#include "src/sksl/dsl/priv/DSLFPs.h"
-#include "src/sksl/dsl/priv/DSLWriter.h"
-#include "src/sksl/ir/SkSLVariable.h"
-
-class SimpleDSLEffect : public GrFragmentProcessor {
-public:
-    static constexpr GrProcessor::ClassID CLASS_ID = (GrProcessor::ClassID) 100;
-
-    SimpleDSLEffect() : GrFragmentProcessor(CLASS_ID, kNone_OptimizationFlags) {
-    }
-
-    const char* name() const override { return "DSLEffect"; }
-    void onAddToKey(const GrShaderCaps&, skgpu::KeyBuilder*) const override {}
-    bool onIsEqual(const GrFragmentProcessor& that) const override { return this == &that; }
-    std::unique_ptr<GrFragmentProcessor> clone() const override { return nullptr; }
-
-    std::unique_ptr<ProgramImpl> onMakeProgramImpl() const override {
-        class Impl : public ProgramImpl {
-        public:
-            void emitCode(EmitArgs& args) override {
-                using namespace SkSL::dsl;
-                StartFragmentProcessor(this, &args);
-
-                // Test for skbug.com/11384
-                Var x(kInt_Type, 1);
-                Declare(x);
-                SkASSERT(DSLWriter::Var(x)->initialValue()->description() == "1");
-
-                GlobalVar blueAlpha(kUniform_Modifier, kHalf2_Type, "blueAlpha");
-                Declare(blueAlpha);
-                fBlueAlphaUniform = VarUniformHandle(blueAlpha);
-                Var coords(kFloat4_Type, sk_FragCoord());
-                Declare(coords);
-                Return(Half4(Swizzle(coords, X, Y) / 100, blueAlpha));
-                EndFragmentProcessor();
-            }
-
-        private:
-            void onSetData(const GrGLSLProgramDataManager& pdman,
-                           const GrFragmentProcessor& effect) override {
-                pdman.set2f(fBlueAlphaUniform, 0.0, 1.0);
-            }
-
-            GrGLSLProgramDataManager::UniformHandle fBlueAlphaUniform;
-        };
-        return std::make_unique<Impl>();
-    }
-};
-
-DEF_SIMPLE_GPU_GM(simple_dsl_test, rContext, canvas, 100, 100) {
-    auto sfc = SkCanvasPriv::TopDeviceSurfaceFillContext(canvas);
-    if (!sfc) {
-        return;
-    }
-
-    sfc->fillWithFP(std::make_unique<SimpleDSLEffect>());
-}
diff --git a/gn/gm.gni b/gn/gm.gni
index b11af2f..3eb3d80 100644
--- a/gn/gm.gni
+++ b/gn/gm.gni
@@ -164,7 +164,6 @@
   "$_gm/dropshadowimagefilter.cpp",
   "$_gm/drrect.cpp",
   "$_gm/drrect_small_inner.cpp",
-  "$_gm/dsl_processor_test.cpp",
   "$_gm/dstreadshuffle.cpp",
   "$_gm/ducky_yuv_blend.cpp",
   "$_gm/emboss.cpp",
diff --git a/gn/sksl.gni b/gn/sksl.gni
index 54106a0..73466b0 100644
--- a/gn/sksl.gni
+++ b/gn/sksl.gni
@@ -108,7 +108,6 @@
   "$_src/sksl/dsl/DSLSymbols.cpp",
   "$_src/sksl/dsl/DSLType.cpp",
   "$_src/sksl/dsl/DSLVar.cpp",
-  "$_src/sksl/dsl/priv/DSLFPs.cpp",
   "$_src/sksl/dsl/priv/DSLWriter.cpp",
   "$_src/sksl/dsl/priv/DSLWriter.h",
   "$_src/sksl/ir/SkSLBinaryExpression.cpp",
diff --git a/src/gpu/ganesh/glsl/BUILD.bazel b/src/gpu/ganesh/glsl/BUILD.bazel
index 9aec36a..01b50b0 100644
--- a/src/gpu/ganesh/glsl/BUILD.bazel
+++ b/src/gpu/ganesh/glsl/BUILD.bazel
@@ -101,7 +101,6 @@
         "//src/gpu/ganesh:GrXferProcessor_hdr",
         "//src/gpu/ganesh/effects:GrTextureEffect_hdr",
         "//src/sksl:SkSLCompiler_hdr",
-        "//src/sksl/dsl/priv:DSLFPs_hdr",
     ],
 )
 
@@ -151,7 +150,6 @@
         ":GrGLSLColorSpaceXformHelper_hdr",
         ":GrGLSLProgramBuilder_hdr",
         ":GrGLSLShaderBuilder_hdr",
-        "//include/sksl:DSL_hdr",
         "//src/gpu:Blend_hdr",
         "//src/gpu:Swizzle_hdr",
         "//src/gpu/ganesh:GrShaderCaps_hdr",
diff --git a/src/gpu/ganesh/glsl/GrGLSLProgramBuilder.cpp b/src/gpu/ganesh/glsl/GrGLSLProgramBuilder.cpp
index ee5e829..d9c2b4f 100644
--- a/src/gpu/ganesh/glsl/GrGLSLProgramBuilder.cpp
+++ b/src/gpu/ganesh/glsl/GrGLSLProgramBuilder.cpp
@@ -21,7 +21,6 @@
 #include "src/gpu/ganesh/effects/GrTextureEffect.h"
 #include "src/gpu/ganesh/glsl/GrGLSLVarying.h"
 #include "src/sksl/SkSLCompiler.h"
-#include "src/sksl/dsl/priv/DSLFPs.h"
 
 const int GrGLSLProgramBuilder::kVarsPerBlock = 8;
 
diff --git a/src/gpu/ganesh/glsl/GrGLSLShaderBuilder.cpp b/src/gpu/ganesh/glsl/GrGLSLShaderBuilder.cpp
index 48a4ee7..58c88b9 100644
--- a/src/gpu/ganesh/glsl/GrGLSLShaderBuilder.cpp
+++ b/src/gpu/ganesh/glsl/GrGLSLShaderBuilder.cpp
@@ -7,7 +7,6 @@
 
 #include "src/gpu/ganesh/glsl/GrGLSLShaderBuilder.h"
 
-#include "include/sksl/DSL.h"
 #include "src/gpu/Blend.h"
 #include "src/gpu/Swizzle.h"
 #include "src/gpu/ganesh/GrShaderCaps.h"
@@ -89,15 +88,6 @@
     this->functions().appendf("%s;\n", declaration);
 }
 
-void GrGLSLShaderBuilder::codeAppend(std::unique_ptr<SkSL::Statement> stmt) {
-    SkASSERT(SkSL::ThreadContext::CurrentProcessor());
-    SkASSERT(stmt);
-    this->codeAppend(stmt->description().c_str());
-    if (stmt->is<SkSL::VarDeclaration>()) {
-        fDeclarations.push_back(std::move(stmt));
-    }
-}
-
 static inline void append_texture_swizzle(SkString* out, skgpu::Swizzle swizzle) {
     if (swizzle != skgpu::Swizzle::RGBA()) {
         out->appendf(".%s", swizzle.asString().c_str());
diff --git a/src/gpu/ganesh/glsl/GrGLSLShaderBuilder.h b/src/gpu/ganesh/glsl/GrGLSLShaderBuilder.h
index 4a43791..756fbb4 100644
--- a/src/gpu/ganesh/glsl/GrGLSLShaderBuilder.h
+++ b/src/gpu/ganesh/glsl/GrGLSLShaderBuilder.h
@@ -117,8 +117,6 @@
 
     void codeAppend(const char* str, size_t length) { this->code().append(str, length); }
 
-    void codeAppend(std::unique_ptr<SkSL::Statement> stmt);
-
     void codePrependf(const char format[], ...) SK_PRINTF_LIKE(2, 3) {
        va_list args;
        va_start(args, format);
diff --git a/src/sksl/BUILD.bazel b/src/sksl/BUILD.bazel
index ba3908f..0b19236 100644
--- a/src/sksl/BUILD.bazel
+++ b/src/sksl/BUILD.bazel
@@ -71,7 +71,6 @@
         "//src/sksl/dsl:DSLSymbols_src",
         "//src/sksl/dsl:DSLType_src",
         "//src/sksl/dsl:DSLVar_src",
-        "//src/sksl/dsl/priv:DSLFPs_src",
         "//src/sksl/dsl/priv:DSLWriter_src",
         "//src/sksl/ir:SkSLBinaryExpression_src",
         "//src/sksl/ir:SkSLBlock_src",
@@ -860,9 +859,7 @@
         ":SkSLThreadContext_hdr",
         ":SkSLUtil_hdr",
         "//include/private:SkSLProgramElement_hdr",
-        "//include/sksl:DSLSymbols_hdr",
         "//include/sksl:SkSLPosition_hdr",
-        "//src/gpu/ganesh/glsl:GrGLSLFragmentShaderBuilder_hdr",
         "//src/sksl/ir:SkSLExternalFunction_hdr",
         "//src/sksl/ir:SkSLSymbolTable_hdr",
     ],
diff --git a/src/sksl/SkSLThreadContext.cpp b/src/sksl/SkSLThreadContext.cpp
index e6e2464..9303a26 100644
--- a/src/sksl/SkSLThreadContext.cpp
+++ b/src/sksl/SkSLThreadContext.cpp
@@ -8,7 +8,6 @@
 #include "src/sksl/SkSLThreadContext.h"
 
 #include "include/private/SkSLProgramElement.h"
-#include "include/sksl/DSLSymbols.h"
 #include "include/sksl/SkSLPosition.h"
 #include "src/sksl/SkSLBuiltinMap.h"
 #include "src/sksl/SkSLCompiler.h"
@@ -21,10 +20,6 @@
 
 #include <type_traits>
 
-#if !defined(SKSL_STANDALONE) && SK_SUPPORT_GPU
-#include "src/gpu/ganesh/glsl/GrGLSLFragmentShaderBuilder.h"
-#endif // !defined(SKSL_STANDALONE) && SK_SUPPORT_GPU
-
 namespace SkSL {
 
 ThreadContext::ThreadContext(SkSL::Compiler* compiler, SkSL::ProgramKind kind,
@@ -109,24 +104,6 @@
     return Instance().fRTAdjust;
 }
 
-#if !defined(SKSL_STANDALONE) && SK_SUPPORT_GPU
-void ThreadContext::StartFragmentProcessor(GrFragmentProcessor::ProgramImpl* processor,
-        GrFragmentProcessor::ProgramImpl::EmitArgs* emitArgs) {
-    ThreadContext& instance = ThreadContext::Instance();
-    instance.fStack.push({processor, emitArgs, StatementArray{}});
-    CurrentEmitArgs()->fFragBuilder->fDeclarations.swap(instance.fStack.top().fSavedDeclarations);
-    dsl::PushSymbolTable();
-}
-
-void ThreadContext::EndFragmentProcessor() {
-    ThreadContext& instance = Instance();
-    SkASSERT(!instance.fStack.empty());
-    CurrentEmitArgs()->fFragBuilder->fDeclarations.swap(instance.fStack.top().fSavedDeclarations);
-    instance.fStack.pop();
-    dsl::PopSymbolTable();
-}
-#endif // !defined(SKSL_STANDALONE) && SK_SUPPORT_GPU
-
 void ThreadContext::SetErrorReporter(ErrorReporter* errorReporter) {
     SkASSERT(errorReporter);
     Context().fErrors = errorReporter;
diff --git a/src/sksl/SkSLThreadContext.h b/src/sksl/SkSLThreadContext.h
index b737600..9afa007 100644
--- a/src/sksl/SkSLThreadContext.h
+++ b/src/sksl/SkSLThreadContext.h
@@ -134,44 +134,6 @@
      */
     static RTAdjustData& RTAdjustState();
 
-#if !defined(SKSL_STANDALONE) && SK_SUPPORT_GPU
-    /**
-     * Returns the fragment processor for which DSL output is being generated for the current
-     * thread.
-     */
-    static GrFragmentProcessor::ProgramImpl* CurrentProcessor() {
-        SkASSERTF(!Instance().fStack.empty(), "This feature requires a FragmentProcessor");
-        return Instance().fStack.top().fProcessor;
-    }
-
-    /**
-     * Returns the EmitArgs for fragment processor output in the current thread.
-     */
-    static GrFragmentProcessor::ProgramImpl::EmitArgs* CurrentEmitArgs() {
-        SkASSERTF(!Instance().fStack.empty(), "This feature requires a FragmentProcessor");
-        return Instance().fStack.top().fEmitArgs;
-    }
-
-    static bool InFragmentProcessor() {
-        return !Instance().fStack.empty();
-    }
-
-    /**
-     * Pushes a new processor / emitArgs pair for the current thread.
-     */
-    static void StartFragmentProcessor(GrFragmentProcessor::ProgramImpl* processor,
-                                       GrFragmentProcessor::ProgramImpl::EmitArgs* emitArgs);
-
-    /**
-     * Pops the processor / emitArgs pair associated with the current thread.
-     */
-    static void EndFragmentProcessor();
-#else
-    static bool InFragmentProcessor() {
-        return false;
-    }
-#endif // !defined(SKSL_STANDALONE) && SK_SUPPORT_GPU
-
     static const char* Filename() {
         return Instance().fFilename;
     }
diff --git a/src/sksl/dsl/BUILD.bazel b/src/sksl/dsl/BUILD.bazel
index 9b10186..1d183b5 100644
--- a/src/sksl/dsl/BUILD.bazel
+++ b/src/sksl/dsl/BUILD.bazel
@@ -85,13 +85,10 @@
         "//include/private:SkSLDefines_hdr",
         "//include/sksl:DSLCore_hdr",
         "//include/sksl:DSLExpression_hdr",
-        "//include/sksl:DSLStatement_hdr",
         "//include/sksl:DSLType_hdr",
         "//include/sksl:DSLVar_hdr",
         "//include/sksl:DSLWrapper_hdr",
         "//include/sksl:SkSLOperator_hdr",
-        "//src/gpu/ganesh:GrFragmentProcessor_hdr",
-        "//src/gpu/ganesh/glsl:GrGLSLFragmentShaderBuilder_hdr",
         "//src/sksl:SkSLThreadContext_hdr",
         "//src/sksl/dsl/priv:DSLWriter_hdr",
         "//src/sksl/ir:SkSLBinaryExpression_hdr",
@@ -171,8 +168,6 @@
         "//include/sksl:DSLExpression_hdr",
         "//include/sksl:DSLStatement_hdr",
         "//include/sksl:SkSLPosition_hdr",
-        "//src/gpu/ganesh:GrFragmentProcessor_hdr",
-        "//src/gpu/ganesh/glsl:GrGLSLFragmentShaderBuilder_hdr",
         "//src/sksl:SkSLThreadContext_hdr",
         "//src/sksl/ir:SkSLBlock_hdr",
         "//src/sksl/ir:SkSLExpressionStatement_hdr",
@@ -231,25 +226,14 @@
     deps = [
         "//include/core:SkTypes_hdr",
         "//include/private:SkSLDefines_hdr",
-        "//include/private:SkSLLayout_hdr",
-        "//include/private:SkSLModifiers_hdr",
         "//include/private:SkSLStatement_hdr",
         "//include/private:SkSLString_hdr",
         "//include/private:SkSLSymbol_hdr",
-        "//include/private/gpu/ganesh:GrTypesPriv_hdr",
         "//include/sksl:DSLModifiers_hdr",
         "//include/sksl:DSLType_hdr",
         "//include/sksl:DSLVar_hdr",
         "//include/sksl:SkSLOperator_hdr",
-        "//src/core:SkSLTypeShared_hdr",
-        "//src/gpu/ganesh:GrFragmentProcessor_hdr",
-        "//src/gpu/ganesh/glsl:GrGLSLUniformHandler_hdr",
-        "//src/sksl:SkSLBuiltinTypes_hdr",
-        "//src/sksl:SkSLCompiler_hdr",
-        "//src/sksl:SkSLContext_hdr",
-        "//src/sksl:SkSLModifiersPool_hdr",
         "//src/sksl:SkSLThreadContext_hdr",
-        "//src/sksl:SkSLUtil_hdr",
         "//src/sksl/dsl/priv:DSLWriter_hdr",
         "//src/sksl/ir:SkSLBinaryExpression_hdr",
         "//src/sksl/ir:SkSLExpression_hdr",
diff --git a/src/sksl/dsl/DSLCore.cpp b/src/sksl/dsl/DSLCore.cpp
index e9a6746..aed575a 100644
--- a/src/sksl/dsl/DSLCore.cpp
+++ b/src/sksl/dsl/DSLCore.cpp
@@ -73,8 +73,6 @@
 }
 
 void End() {
-    SkASSERTF(!ThreadContext::InFragmentProcessor(),
-              "more calls to StartFragmentProcessor than to EndFragmentProcessor");
     ThreadContext::SetInstance(nullptr);
 }
 
diff --git a/src/sksl/dsl/DSLExpression.cpp b/src/sksl/dsl/DSLExpression.cpp
index 42a5a4f..fffcddb 100644
--- a/src/sksl/dsl/DSLExpression.cpp
+++ b/src/sksl/dsl/DSLExpression.cpp
@@ -10,7 +10,6 @@
 #include "include/core/SkTypes.h"
 #include "include/private/SkSLDefines.h"
 #include "include/sksl/DSLCore.h"
-#include "include/sksl/DSLStatement.h"
 #include "include/sksl/DSLType.h"
 #include "include/sksl/DSLVar.h"
 #include "include/sksl/DSLWrapper.h"
@@ -31,11 +30,6 @@
 #include <math.h>
 #include <utility>
 
-#if !defined(SKSL_STANDALONE) && SK_SUPPORT_GPU
-#include "src/gpu/ganesh/GrFragmentProcessor.h"
-#include "src/gpu/ganesh/glsl/GrGLSLFragmentShaderBuilder.h"
-#endif
-
 namespace SkSL {
 
 namespace dsl {
@@ -117,13 +111,6 @@
 }
 
 DSLExpression::~DSLExpression() {
-#if !defined(SKSL_STANDALONE) && SK_SUPPORT_GPU
-    if (fExpression && ThreadContext::InFragmentProcessor()) {
-        ThreadContext::CurrentEmitArgs()->fFragBuilder->codeAppend(
-                DSLStatement(this->release()).release());
-        return;
-    }
-#endif
     SkASSERTF(!fExpression || !ThreadContext::Settings().fAssertDSLObjectsReleased,
               "Expression destroyed without being incorporated into program (see "
               "ProgramSettings::fAssertDSLObjectsReleased)");
diff --git a/src/sksl/dsl/DSLStatement.cpp b/src/sksl/dsl/DSLStatement.cpp
index b4a13bf..e0455a0 100644
--- a/src/sksl/dsl/DSLStatement.cpp
+++ b/src/sksl/dsl/DSLStatement.cpp
@@ -17,11 +17,6 @@
 #include "src/sksl/ir/SkSLExpressionStatement.h"
 #include "src/sksl/ir/SkSLNop.h"
 
-#if !defined(SKSL_STANDALONE) && SK_SUPPORT_GPU
-#include "src/gpu/ganesh/GrFragmentProcessor.h"
-#include "src/gpu/ganesh/glsl/GrGLSLFragmentShaderBuilder.h"
-#endif
-
 namespace SkSL {
 
 namespace dsl {
@@ -65,12 +60,6 @@
 }
 
 DSLStatement::~DSLStatement() {
-#if !defined(SKSL_STANDALONE) && SK_SUPPORT_GPU
-    if (fStatement && ThreadContext::InFragmentProcessor()) {
-        ThreadContext::CurrentEmitArgs()->fFragBuilder->codeAppend(this->release());
-        return;
-    }
-#endif
     SkASSERTF(!fStatement || !ThreadContext::Settings().fAssertDSLObjectsReleased,
               "Statement destroyed without being incorporated into program (see "
               "ProgramSettings::fAssertDSLObjectsReleased)");
diff --git a/src/sksl/dsl/DSLVar.cpp b/src/sksl/dsl/DSLVar.cpp
index 53d3463..0e3e4b8 100644
--- a/src/sksl/dsl/DSLVar.cpp
+++ b/src/sksl/dsl/DSLVar.cpp
@@ -9,22 +9,13 @@
 
 #include "include/core/SkTypes.h"
 #include "include/private/SkSLDefines.h"
-#include "include/private/SkSLLayout.h"
-#include "include/private/SkSLModifiers.h"
 #include "include/private/SkSLStatement.h"
 #include "include/private/SkSLString.h"
 #include "include/private/SkSLSymbol.h"
-#include "include/private/gpu/ganesh/GrTypesPriv.h"
 #include "include/sksl/DSLModifiers.h"
 #include "include/sksl/DSLType.h"
 #include "include/sksl/SkSLOperator.h"
-#include "src/core/SkSLTypeShared.h"
-#include "src/sksl/SkSLBuiltinTypes.h"
-#include "src/sksl/SkSLCompiler.h"
-#include "src/sksl/SkSLContext.h"
-#include "src/sksl/SkSLModifiersPool.h"
 #include "src/sksl/SkSLThreadContext.h"
-#include "src/sksl/SkSLUtil.h"
 #include "src/sksl/dsl/priv/DSLWriter.h"
 #include "src/sksl/ir/SkSLBinaryExpression.h"
 #include "src/sksl/ir/SkSLExpression.h"
@@ -35,12 +26,6 @@
 #include "src/sksl/ir/SkSLVariable.h"
 
 #include <string>
-#include <type_traits>
-
-#if !defined(SKSL_STANDALONE) && SK_SUPPORT_GPU
-#include "src/gpu/ganesh/GrFragmentProcessor.h"
-#include "src/gpu/ganesh/glsl/GrGLSLUniformHandler.h"
-#endif
 
 namespace SkSL {
 
@@ -66,33 +51,7 @@
     , fName(fType.skslType().isOpaque() ? name : DSLWriter::Name(name))
     , fInitialValue(std::move(initialValue))
     , fDeclared(DSLWriter::MarkVarsDeclared())
-    , fPosition(pos) {
-    if (fModifiers.fModifiers.fFlags & Modifiers::kUniform_Flag) {
-#if SK_SUPPORT_GPU && !defined(SKSL_STANDALONE)
-        if (ThreadContext::InFragmentProcessor()) {
-            const SkSL::Type& skslType = fType.skslType();
-            SkSLType gpuType;
-            int count;
-            if (skslType.isArray()) {
-                SkAssertResult(SkSL::type_to_sksltype(ThreadContext::Context(),
-                                                      skslType.componentType(), &gpuType));
-                count = skslType.columns();
-                SkASSERT(count > 0);
-            } else {
-                SkAssertResult(SkSL::type_to_sksltype(ThreadContext::Context(), skslType,
-                                                      &gpuType));
-                count = 0;
-            }
-            const char* uniformName;
-            SkASSERT(ThreadContext::CurrentEmitArgs());
-            fUniformHandle = ThreadContext::CurrentEmitArgs()->fUniformHandler->addUniformArray(
-                    &ThreadContext::CurrentEmitArgs()->fFp, kFragment_GrShaderFlag, gpuType,
-                    std::string(this->name()).c_str(), count, &uniformName).toIndex();
-            fName = uniformName;
-        }
-#endif // SK_SUPPORT_GPU && !defined(SKSL_STANDALONE)
-    }
-}
+    , fPosition(pos) {}
 
 DSLVarBase::~DSLVarBase() {
     if (fDeclaration && !fDeclared) {
@@ -131,32 +90,6 @@
     : INHERITED(kVoid_Type, name, DSLExpression(), Position(), Position()) {
     fName = name;
     DSLWriter::MarkDeclared(*this);
-#if SK_SUPPORT_GPU && !defined(SKSL_STANDALONE)
-    if (!strcmp(name, "sk_SampleCoord")) {
-        fName = ThreadContext::CurrentEmitArgs()->fSampleCoord;
-        // The actual sk_SampleCoord variable hasn't been created by GrGLSLFPFragmentBuilder yet, so
-        // if we attempt to look it up in the symbol table we'll get null. As we are currently
-        // converting all DSL code into strings rather than nodes, all we really need is a
-        // correctly-named variable with the right type, so we just create a placeholder for it.
-        // TODO(skia/11330): we'll need to fix this when switching over to nodes.
-        const SkSL::Modifiers* modifiers = ThreadContext::Context().fModifiersPool->add(
-                SkSL::Modifiers(SkSL::Layout(/*flags=*/0, /*location=*/-1, /*offset=*/-1,
-                                             /*binding=*/-1, /*index=*/-1, /*set=*/-1,
-                                             SK_MAIN_COORDS_BUILTIN, /*inputAttachmentIndex=*/-1),
-                                SkSL::Modifiers::kNo_Flag));
-
-        fVar = ThreadContext::SymbolTable()->takeOwnershipOfIRNode(std::make_unique<SkSL::Variable>(
-                /*pos=*/Position(),
-                /*modifiersPosition=*/Position(),
-                modifiers,
-                fName,
-                ThreadContext::Context().fTypes.fFloat2.get(),
-                /*builtin=*/true,
-                SkSL::VariableStorage::kGlobal));
-        fInitialized = true;
-        return;
-    }
-#endif
     const SkSL::Symbol* result = (*ThreadContext::SymbolTable())[fName];
     SkASSERTF(result, "could not find '%.*s' in symbol table", (int)fName.length(), fName.data());
     fVar = &result->as<SkSL::Variable>();
diff --git a/src/sksl/dsl/priv/BUILD.bazel b/src/sksl/dsl/priv/BUILD.bazel
index ec0beed..481a0a4 100644
--- a/src/sksl/dsl/priv/BUILD.bazel
+++ b/src/sksl/dsl/priv/BUILD.bazel
@@ -7,37 +7,6 @@
 enforce_iwyu_on_package()
 
 generated_cc_atom(
-    name = "DSLFPs_hdr",
-    hdrs = ["DSLFPs.h"],
-    visibility = ["//:__subpackages__"],
-    deps = [
-        "//include/core:SkTypes_hdr",
-        "//include/sksl:DSLExpression_hdr",
-        "//include/sksl:DSLVar_hdr",
-        "//src/gpu/ganesh:GrFragmentProcessor_hdr",
-        "//src/gpu/ganesh/glsl:GrGLSLUniformHandler_hdr",
-    ],
-)
-
-generated_cc_atom(
-    name = "DSLFPs_src",
-    srcs = ["DSLFPs.cpp"],
-    visibility = ["//:__subpackages__"],
-    deps = [
-        ":DSLFPs_hdr",
-        ":DSLWriter_hdr",
-        "//include/core:SkString_hdr",
-        "//include/core:SkTypes_hdr",
-        "//src/sksl:SkSLBuiltinTypes_hdr",
-        "//src/sksl:SkSLContext_hdr",
-        "//src/sksl:SkSLThreadContext_hdr",
-        "//src/sksl/ir:SkSLCodeStringExpression_hdr",
-        "//src/sksl/ir:SkSLExpression_hdr",
-        "//src/sksl/ir:SkSLType_hdr",
-    ],
-)
-
-generated_cc_atom(
     name = "DSLWriter_hdr",
     hdrs = ["DSLWriter.h"],
     visibility = ["//:__subpackages__"],
diff --git a/src/sksl/dsl/priv/DSLFPs.cpp b/src/sksl/dsl/priv/DSLFPs.cpp
deleted file mode 100644
index 2fba5e6..0000000
--- a/src/sksl/dsl/priv/DSLFPs.cpp
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * Copyright 2021 Google LLC.
- *
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "src/sksl/dsl/priv/DSLFPs.h"
-
-#if !defined(SKSL_STANDALONE) && SK_SUPPORT_GPU
-
-#include "include/core/SkString.h"
-#include "include/core/SkTypes.h"
-#include "src/sksl/SkSLBuiltinTypes.h"
-#include "src/sksl/SkSLContext.h"
-#include "src/sksl/SkSLThreadContext.h"
-#include "src/sksl/dsl/priv/DSLWriter.h"
-#include "src/sksl/ir/SkSLCodeStringExpression.h"
-#include "src/sksl/ir/SkSLExpression.h"
-#include "src/sksl/ir/SkSLType.h"
-
-#include <memory>
-#include <string>
-
-namespace SkSL {
-
-namespace dsl {
-
-void StartFragmentProcessor(GrFragmentProcessor::ProgramImpl* processor,
-                            GrFragmentProcessor::ProgramImpl::EmitArgs* emitArgs) {
-    ThreadContext::StartFragmentProcessor(processor, emitArgs);
-}
-
-void EndFragmentProcessor() {
-    ThreadContext::EndFragmentProcessor();
-}
-
-DSLGlobalVar sk_SampleCoord() {
-    return DSLGlobalVar("sk_SampleCoord");
-}
-
-DSLExpression SampleChild(int index, DSLExpression sampleExpr) {
-    std::unique_ptr<SkSL::Expression> expr = sampleExpr.releaseIfPossible();
-    if (expr) {
-        SkASSERT(expr->type().isVector());
-        SkASSERT(expr->type().componentType().isFloat());
-    }
-
-    GrFragmentProcessor::ProgramImpl* proc = ThreadContext::CurrentProcessor();
-    GrFragmentProcessor::ProgramImpl::EmitArgs& emitArgs = *ThreadContext::CurrentEmitArgs();
-    SkString code;
-    switch (expr ? expr->type().columns() : 0) {
-        default:
-            SkASSERTF(0, "unsupported SampleChild type: %s", expr->type().description().c_str());
-            [[fallthrough]];
-        case 0:
-            code = proc->invokeChild(index, emitArgs);
-            break;
-        case 2:
-            code = proc->invokeChild(index, emitArgs, /*skslCoords=*/expr->description());
-            break;
-        case 4:
-            code = proc->invokeChild(index, /*inputColor=*/expr->description().c_str(), emitArgs);
-            break;
-    }
-
-    return DSLExpression(std::make_unique<SkSL::CodeStringExpression>(
-            code.c_str(), ThreadContext::Context().fTypes.fHalf4.get()));
-}
-
-GrGLSLUniformHandler::UniformHandle VarUniformHandle(const DSLGlobalVar& var) {
-    return DSLWriter::VarUniformHandle(var);
-}
-
-} // namespace dsl
-
-} // namespace SkSL
-
-#endif // !defined(SKSL_STANDALONE) && SK_SUPPORT_GPU
diff --git a/src/sksl/dsl/priv/DSLFPs.h b/src/sksl/dsl/priv/DSLFPs.h
deleted file mode 100644
index 23a6116..0000000
--- a/src/sksl/dsl/priv/DSLFPs.h
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * Copyright 2021 Google LLC.
- *
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#ifndef SKSL_DSL_FPS
-#define SKSL_DSL_FPS
-
-#include "include/core/SkTypes.h"
-
-#if !defined(SKSL_STANDALONE) && SK_SUPPORT_GPU
-
-#include "include/sksl/DSLExpression.h"
-#include "include/sksl/DSLVar.h"
-#include "src/gpu/ganesh/GrFragmentProcessor.h"
-#include "src/gpu/ganesh/glsl/GrGLSLUniformHandler.h"
-
-namespace SkSL {
-
-namespace dsl {
-
-void StartFragmentProcessor(GrFragmentProcessor::ProgramImpl* processor,
-                            GrFragmentProcessor::ProgramImpl::EmitArgs* emitArgs);
-
-void EndFragmentProcessor();
-
-DSLGlobalVar sk_SampleCoord();
-
-DSLExpression SampleChild(int index, DSLExpression coords = DSLExpression());
-
-GrGLSLUniformHandler::UniformHandle VarUniformHandle(const DSLGlobalVar& var);
-
-} // namespace dsl
-
-} // namespace SkSL
-
-#endif // !defined(SKSL_STANDALONE) && SK_SUPPORT_GPU
-
-#endif