diff --git a/src/dawn/common/WGSLFeatureMapping.h b/src/dawn/common/WGSLFeatureMapping.h
index 55ffa0e..a6b0639 100644
--- a/src/dawn/common/WGSLFeatureMapping.h
+++ b/src/dawn/common/WGSLFeatureMapping.h
@@ -36,7 +36,6 @@
     X(kUnrestrictedPointerParameters, UnrestrictedPointerParameters)               \
     X(kSizedBindingArray, SizedBindingArray)                                       \
     X(kTexelBuffers, TexelBuffers)                                                 \
-    X(kTextureSampleLevel1D, TextureSampleLevel1d)                                 \
     /* ----------------- entries below are only for testing  ------------------ */ \
     X(kChromiumTestingUnimplemented, ChromiumTestingUnimplemented)                 \
     X(kChromiumTestingUnsafeExperimental, ChromiumTestingUnsafeExperimental)       \
diff --git a/src/dawn/dawn.json b/src/dawn/dawn.json
index 0ecd471..13d9d1d 100644
--- a/src/dawn/dawn.json
+++ b/src/dawn/dawn.json
@@ -4252,7 +4252,6 @@
             {"value": 4, "name": "pointer composite access", "jsrepr": "'pointer_composite_access'"},
             {"value": 5, "name": "sized binding array", "jsrepr": "'sized_binding_array'"},
             {"value": 6, "name": "texel buffers", "jsrepr": "'texel_buffers'"},
-            {"value": 7, "name": "texture sample level 1d",  "jsrepr": "'texture_sample_level_1d'", "tags": ["dawn"]},
 
             {"value": 0, "name": "chromium testing unimplemented", "jsrepr": "'chromium_testing_unimplemented'", "tags": ["dawn"]},
             {"value": 1, "name": "chromium testing unsafe experimental", "jsrepr": "'chromium_testing_unsafe_experimental'", "tags": ["dawn"]},
diff --git a/src/dawn/node/binding/Converter.cpp b/src/dawn/node/binding/Converter.cpp
index f42c95e..eb76bec 100644
--- a/src/dawn/node/binding/Converter.cpp
+++ b/src/dawn/node/binding/Converter.cpp
@@ -1670,9 +1670,6 @@
         case interop::WGSLLanguageFeatureName::kTexelBuffers:
             out = wgpu::WGSLLanguageFeatureName::TexelBuffers;
             return true;
-        case interop::WGSLLanguageFeatureName::kTextureSampleLevel1D:
-            out = wgpu::WGSLLanguageFeatureName::TextureSampleLevel1d;
-            return true;
     }
     return false;
 }
@@ -1697,9 +1694,6 @@
         case wgpu::WGSLLanguageFeatureName::TexelBuffers:
             out = interop::WGSLLanguageFeatureName::kTexelBuffers;
             return true;
-        case wgpu::WGSLLanguageFeatureName::TextureSampleLevel1d:
-            out = interop::WGSLLanguageFeatureName::kTextureSampleLevel1D;
-            return true;
 
         case wgpu::WGSLLanguageFeatureName::ChromiumTestingUnimplemented:
         case wgpu::WGSLLanguageFeatureName::ChromiumTestingUnsafeExperimental:
diff --git a/src/dawn/node/interop/DawnExtensions.idl b/src/dawn/node/interop/DawnExtensions.idl
index 3219de2..d6e4f9b 100644
--- a/src/dawn/node/interop/DawnExtensions.idl
+++ b/src/dawn/node/interop/DawnExtensions.idl
@@ -78,7 +78,6 @@
     "pointer_composite_access",
     "sized_binding_array",
     "texel_buffers",
-    "texture_sample_level_1d",
 };
 
 dictionary GPUBindGroupLayoutEntry {
diff --git a/src/tint/cmd/fuzz/wgsl/dictionary.txt b/src/tint/cmd/fuzz/wgsl/dictionary.txt
index 3930037..d2680eb 100644
--- a/src/tint/cmd/fuzz/wgsl/dictionary.txt
+++ b/src/tint/cmd/fuzz/wgsl/dictionary.txt
@@ -460,7 +460,6 @@
 "texture_depth_multisampled_2d"
 "texture_external"
 "texture_multisampled_2d"
-"texture_sample_level_1d"
 "texture_storage_1d"
 "texture_storage_2d"
 "texture_storage_2d_array"
diff --git a/src/tint/lang/wgsl/feature_status.cc b/src/tint/lang/wgsl/feature_status.cc
index 34aa57a..888ddd9 100644
--- a/src/tint/lang/wgsl/feature_status.cc
+++ b/src/tint/lang/wgsl/feature_status.cc
@@ -38,7 +38,6 @@
             ///////////////////////////////////////////////////////////////////
         case LanguageFeature::kSizedBindingArray:
         case LanguageFeature::kTexelBuffers:
-        case LanguageFeature::kTextureSampleLevel1D:
             return FeatureStatus::kUnsafeExperimental;
 
             ////////////////////////////////////////////////////////////////////
diff --git a/src/tint/lang/wgsl/language_feature.cc b/src/tint/lang/wgsl/language_feature.cc
index ce96e39..5c3fb12 100644
--- a/src/tint/lang/wgsl/language_feature.cc
+++ b/src/tint/lang/wgsl/language_feature.cc
@@ -72,9 +72,6 @@
     if (str == "texel_buffers") {
         return LanguageFeature::kTexelBuffers;
     }
-    if (str == "texture_sample_level_1d") {
-        return LanguageFeature::kTextureSampleLevel1D;
-    }
     if (str == "unrestricted_pointer_parameters") {
         return LanguageFeature::kUnrestrictedPointerParameters;
     }
@@ -105,8 +102,6 @@
             return "sized_binding_array";
         case LanguageFeature::kTexelBuffers:
             return "texel_buffers";
-        case LanguageFeature::kTextureSampleLevel1D:
-            return "texture_sample_level_1d";
         case LanguageFeature::kUnrestrictedPointerParameters:
             return "unrestricted_pointer_parameters";
     }
diff --git a/src/tint/lang/wgsl/language_feature.h b/src/tint/lang/wgsl/language_feature.h
index 6815c14..e5020a6 100644
--- a/src/tint/lang/wgsl/language_feature.h
+++ b/src/tint/lang/wgsl/language_feature.h
@@ -56,7 +56,6 @@
     kReadonlyAndReadwriteStorageTextures,
     kSizedBindingArray,
     kTexelBuffers,
-    kTextureSampleLevel1D,
     kUnrestrictedPointerParameters,
 };
 
@@ -80,7 +79,6 @@
     "readonly_and_readwrite_storage_textures",
     "sized_binding_array",
     "texel_buffers",
-    "texture_sample_level_1d",
     "unrestricted_pointer_parameters",
 };
 
@@ -96,7 +94,6 @@
     LanguageFeature::kReadonlyAndReadwriteStorageTextures,
     LanguageFeature::kSizedBindingArray,
     LanguageFeature::kTexelBuffers,
-    LanguageFeature::kTextureSampleLevel1D,
     LanguageFeature::kUnrestrictedPointerParameters,
 };
 
diff --git a/src/tint/lang/wgsl/language_feature_test.cc b/src/tint/lang/wgsl/language_feature_test.cc
index 27754d7..3e684b1 100644
--- a/src/tint/lang/wgsl/language_feature_test.cc
+++ b/src/tint/lang/wgsl/language_feature_test.cc
@@ -69,7 +69,6 @@
      LanguageFeature::kReadonlyAndReadwriteStorageTextures},
     {"sized_binding_array", LanguageFeature::kSizedBindingArray},
     {"texel_buffers", LanguageFeature::kTexelBuffers},
-    {"texture_sample_level_1d", LanguageFeature::kTextureSampleLevel1D},
     {"unrestricted_pointer_parameters", LanguageFeature::kUnrestrictedPointerParameters},
 };
 
@@ -104,12 +103,9 @@
     {"teool_bffer", LanguageFeature::kUndefined},
     {"exezz_uffers", LanguageFeature::kUndefined},
     {"texel_bii11eps", LanguageFeature::kUndefined},
-    {"textXXre_sample_level_1d", LanguageFeature::kUndefined},
-    {"texnnure99samIIle_level_155", LanguageFeature::kUndefined},
-    {"texaSSurre_sample_lHHvel_Yd", LanguageFeature::kUndefined},
-    {"unkkestrictd_poiter_parameter", LanguageFeature::kUndefined},
-    {"jnrestricted_pRinter_paramtgrs", LanguageFeature::kUndefined},
-    {"unrestrbted_ponter_parameters", LanguageFeature::kUndefined},
+    {"unrestricted_pointer_parametXXrs", LanguageFeature::kUndefined},
+    {"unrestri55tIId_pointer_paramnnt99rs", LanguageFeature::kUndefined},
+    {"unraastrSScted_pointerHHrparameteYs", LanguageFeature::kUndefined},
 };
 
 using LanguageFeatureParseTest = testing::TestWithParam<Case>;
diff --git a/src/tint/lang/wgsl/resolver/validator.cc b/src/tint/lang/wgsl/resolver/validator.cc
index a9d80c1..390b4ee 100644
--- a/src/tint/lang/wgsl/resolver/validator.cc
+++ b/src/tint/lang/wgsl/resolver/validator.cc
@@ -2064,22 +2064,6 @@
         }
     }
 
-    if (builtin->Fn() == wgsl::BuiltinFn::kTextureSampleLevel) {
-        auto* tex = call->Arguments()[0];
-        auto* tex_type = tex->Type()->As<core::type::Texture>();
-
-        const auto feature = wgsl::LanguageFeature::kTextureSampleLevel1D;
-        if (tex_type->Dim() == core::type::TextureDimension::k1d &&
-            !allowed_features_.features.count(feature)) {
-            AddError(call->Declaration()->source)
-                << "built-in function " << style::Function(builtin->Fn()) << " requires the "
-                << style::Code(wgsl::ToString(feature))
-                << " language feature for 1d textures, which is not allowed in the current "
-                   "environment";
-            return false;
-        }
-    }
-
     const auto feature = builtin->RequiredLanguageFeature();
     if (feature != wgsl::LanguageFeature::kUndefined) {
         if (!allowed_features_.features.count(feature)) {
diff --git a/src/tint/lang/wgsl/wgsl.def b/src/tint/lang/wgsl/wgsl.def
index 7d12514..f71d123 100644
--- a/src/tint/lang/wgsl/wgsl.def
+++ b/src/tint/lang/wgsl/wgsl.def
@@ -107,7 +107,6 @@
   unrestricted_pointer_parameters
   sized_binding_array
   texel_buffers
-  texture_sample_level_1d
 
   // Language features used only for testing whose status will never change.
   chromium_testing_unimplemented
