[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/dpdxFine/f401a2.wgsl.expected.spvasm b/test/intrinsics/gen/dpdxFine/f401a2.wgsl.expected.spvasm
new file mode 100644
index 0000000..24fd696
--- /dev/null
+++ b/test/intrinsics/gen/dpdxFine/f401a2.wgsl.expected.spvasm
@@ -0,0 +1,31 @@
+; SPIR-V
+; Version: 1.3
+; Generator: Google Tint Compiler; 0
+; Bound: 14
+; Schema: 0
+               OpCapability Shader
+               OpCapability DerivativeControl
+               OpMemoryModel Logical GLSL450
+               OpEntryPoint Fragment %fragment_main "fragment_main"
+               OpExecutionMode %fragment_main OriginUpperLeft
+               OpName %dpdxFine_f401a2 "dpdxFine_f401a2"
+               OpName %res "res"
+               OpName %fragment_main "fragment_main"
+       %void = OpTypeVoid
+          %1 = OpTypeFunction %void
+      %float = OpTypeFloat 32
+    %float_1 = OpConstant %float 1
+%_ptr_Function_float = OpTypePointer Function %float
+         %10 = OpConstantNull %float
+%dpdxFine_f401a2 = OpFunction %void None %1
+          %4 = OpLabel
+        %res = OpVariable %_ptr_Function_float Function %10
+          %5 = OpDPdxFine %float %float_1
+               OpStore %res %5
+               OpReturn
+               OpFunctionEnd
+%fragment_main = OpFunction %void None %1
+         %12 = OpLabel
+         %13 = OpFunctionCall %void %dpdxFine_f401a2
+               OpReturn
+               OpFunctionEnd