[tools]: Generate intrinisic test cases

Add test/intrinsics/intrinsics.wgsl.tmpl that generates a vast set of intrinsic overload permutations into test/intrinsics/gen/...

Add expected output for all of these, including 'SKIP' headers for those that currently fail.

Fixed: tint:832
Change-Id: Id6888df52c07f35e7a55199f2ad4d842c6e2595c
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/53051
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: David Neto <dneto@google.com>
diff --git a/test/intrinsics/gen/textureSample/ea7030.wgsl.expected.spvasm b/test/intrinsics/gen/textureSample/ea7030.wgsl.expected.spvasm
new file mode 100644
index 0000000..6109222
--- /dev/null
+++ b/test/intrinsics/gen/textureSample/ea7030.wgsl.expected.spvasm
@@ -0,0 +1,49 @@
+; SPIR-V
+; Version: 1.3
+; Generator: Google Tint Compiler; 0
+; Bound: 27
+; Schema: 0
+               OpCapability Shader
+               OpMemoryModel Logical GLSL450
+               OpEntryPoint Fragment %fragment_main "fragment_main"
+               OpExecutionMode %fragment_main OriginUpperLeft
+               OpName %arg_0 "arg_0"
+               OpName %arg_1 "arg_1"
+               OpName %textureSample_ea7030 "textureSample_ea7030"
+               OpName %res "res"
+               OpName %fragment_main "fragment_main"
+               OpDecorate %arg_0 DescriptorSet 1
+               OpDecorate %arg_0 Binding 0
+               OpDecorate %arg_1 DescriptorSet 1
+               OpDecorate %arg_1 Binding 1
+      %float = OpTypeFloat 32
+          %3 = OpTypeImage %float Cube 1 0 0 1 Unknown
+%_ptr_UniformConstant_3 = OpTypePointer UniformConstant %3
+      %arg_0 = OpVariable %_ptr_UniformConstant_3 UniformConstant
+          %7 = OpTypeSampler
+%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
+      %arg_1 = OpVariable %_ptr_UniformConstant_7 UniformConstant
+       %void = OpTypeVoid
+          %8 = OpTypeFunction %void
+    %v4float = OpTypeVector %float 4
+         %17 = OpTypeSampledImage %3
+    %v3float = OpTypeVector %float 3
+         %20 = OpConstantNull %v3float
+%_ptr_Function_float = OpTypePointer Function %float
+         %23 = OpConstantNull %float
+%textureSample_ea7030 = OpFunction %void None %8
+         %11 = OpLabel
+        %res = OpVariable %_ptr_Function_float Function %23
+         %15 = OpLoad %7 %arg_1
+         %16 = OpLoad %3 %arg_0
+         %18 = OpSampledImage %17 %16 %15
+         %13 = OpImageSampleImplicitLod %v4float %18 %20
+         %12 = OpCompositeExtract %float %13 0
+               OpStore %res %12
+               OpReturn
+               OpFunctionEnd
+%fragment_main = OpFunction %void None %8
+         %25 = OpLabel
+         %26 = OpFunctionCall %void %textureSample_ea7030
+               OpReturn
+               OpFunctionEnd