Add const-eval for `atan`.

This CL adds const-eval for the `atan` operator.

Bug: tint:1581
Change-Id: I3d9b417e86af010dc2f18c4e0424ddf971d55984
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/106844
Reviewed-by: Antonio Maiorano <amaiorano@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
diff --git a/test/tint/builtins/gen/var/atan/d17fb2.wgsl.expected.msl b/test/tint/builtins/gen/var/atan/d17fb2.wgsl.expected.msl
new file mode 100644
index 0000000..d74bfda
--- /dev/null
+++ b/test/tint/builtins/gen/var/atan/d17fb2.wgsl.expected.msl
@@ -0,0 +1,33 @@
+#include <metal_stdlib>
+
+using namespace metal;
+void atan_d17fb2() {
+  float4 res = float4(0.785398185f);
+}
+
+struct tint_symbol {
+  float4 value [[position]];
+};
+
+float4 vertex_main_inner() {
+  atan_d17fb2();
+  return float4(0.0f);
+}
+
+vertex tint_symbol vertex_main() {
+  float4 const inner_result = vertex_main_inner();
+  tint_symbol wrapper_result = {};
+  wrapper_result.value = inner_result;
+  return wrapper_result;
+}
+
+fragment void fragment_main() {
+  atan_d17fb2();
+  return;
+}
+
+kernel void compute_main() {
+  atan_d17fb2();
+  return;
+}
+