diff --git a/Makefile.am b/Makefile.am
index 66a93ab4f9d5178fb78e85b5420852d011020109..1340be10d31cf4ebe1dbe4006ccac926aa3f205c 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -146,6 +146,7 @@ vkd3d_shader_tests = \
 	tests/texture-load-typed.shader_test \
 	tests/trigonometry.shader_test \
 	tests/uav.shader_test \
+	tests/uav-load.shader_test \
 	tests/writemask-assignop-0.shader_test \
 	tests/writemask-assignop-1.shader_test \
 	tests/writemask-assignop-2.shader_test \
diff --git a/tests/uav-load.shader_test b/tests/uav-load.shader_test
new file mode 100644
index 0000000000000000000000000000000000000000..88adb6d57f97aeea2d0c443967e19332b4e0b0ce
--- /dev/null
+++ b/tests/uav-load.shader_test
@@ -0,0 +1,30 @@
+[require]
+shader model >= 5.0
+
+[uav 0]
+format r32 float
+size (3, 1)
+
+0.1 0.2 0.3
+
+[uav 1]
+format r32 float
+size (1, 1)
+
+0.5
+
+[compute shader]
+RWTexture2D<float> u, v;
+    [numthreads(1, 1, 1)]
+void main()
+{
+    u[uint2(1, 0)] = (u[uint2(0, 0)] += v[uint2(0, 0)]);
+    u[uint2(2, 0)] = u[uint2(0, 0)];
+}
+
+[test]
+todo dispatch 1 1 1
+probe uav 0 (0, 0) r (0.6)
+probe uav 0 (1, 0) r (0.6)
+probe uav 0 (2, 0) r (0.6)
+probe uav 1 (0, 0) r (0.5)