diff --git a/src/Pipeline/SpirvShader.hpp b/src/Pipeline/SpirvShader.hpp
index 072b036..6043714 100644
--- a/src/Pipeline/SpirvShader.hpp
+++ b/src/Pipeline/SpirvShader.hpp
@@ -866,9 +866,6 @@
 	// Creates an Object for the instruction's result in 'defs'.
 	void DefineResult(const InsnIterator &insn);
 
-	// Output storage buffers and images should not be affected by helper invocations
-	static bool StoresInHelperInvocation(spv::StorageClass storageClass);
-
 	using InterfaceVisitor = std::function<void(Decorations const, AttribType)>;
 
 	void VisitInterface(Object::ID id, const InterfaceVisitor &v) const;
@@ -977,6 +974,7 @@
 	// Returns 0 when invalid.
 	static VkShaderStageFlagBits executionModelToStage(spv::ExecutionModel model);
 
+	static bool StoresInHelperInvocationsHaveNoEffect(spv::StorageClass storageClass);
 	static bool IsExplicitLayout(spv::StorageClass storageClass);
 	static bool IsTerminator(spv::Op opcode);
 };
diff --git a/src/Pipeline/SpirvShaderMemory.cpp b/src/Pipeline/SpirvShaderMemory.cpp
index b2c45c0..bcbff15 100644
--- a/src/Pipeline/SpirvShaderMemory.cpp
+++ b/src/Pipeline/SpirvShaderMemory.cpp
@@ -108,7 +108,7 @@
 	auto robustness = shader.getOutOfBoundsBehavior(pointerId, routine->pipelineLayout);
 
 	SIMD::Int mask = activeLaneMask();
-	if(!shader.StoresInHelperInvocation(pointerTy.storageClass))
+	if(shader.StoresInHelperInvocationsHaveNoEffect(pointerTy.storageClass))
 	{
 		mask = mask & storesAndAtomicsMask();
 	}
@@ -527,17 +527,18 @@
 	}
 }
 
-bool SpirvShader::StoresInHelperInvocation(spv::StorageClass storageClass)
+bool SpirvShader::StoresInHelperInvocationsHaveNoEffect(spv::StorageClass storageClass)
 {
 	switch(storageClass)
 	{
-	case spv::StorageClassUniform:
-	case spv::StorageClassStorageBuffer:
-	case spv::StorageClassPhysicalStorageBuffer:
-	case spv::StorageClassImage:
-		return false;
+	// "Stores and atomics performed by helper invocations must not have any effect on memory..."
 	default:
 		return true;
+	// "...except for the Function and Private storage classes".
+	case spv::StorageClassFunction:
+	case spv::StorageClassPrivate:
+	case spv::StorageClassOutput:  // TODO(b/253701784): We assume Output should be treated as Private.
+		return false;
 	}
 }
 
