intrinsics: Add new struct form of modf(), frexp()

Implement these for all the writers.
SPIR-V reader not implemented (the old overloads weren't implemented either).

Deprecate the old overloads.

Fixed: tint:54
Change-Id: If66d26dbac3389ff604734f31b426abe47868b91
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/59302
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: James Price <jrprice@google.com>
diff --git a/test/intrinsics/gen/modf/546e09.wgsl.expected.wgsl b/test/intrinsics/gen/modf/546e09.wgsl.expected.wgsl
index 331c087..ab9908d 100644
--- a/test/intrinsics/gen/modf/546e09.wgsl.expected.wgsl
+++ b/test/intrinsics/gen/modf/546e09.wgsl.expected.wgsl
@@ -1,3 +1,7 @@
+intrinsics/gen/modf/546e09.wgsl:29:18 warning: use of deprecated intrinsic
+  var res: f32 = modf(1.0, &arg_1);
+                 ^^^^
+
 fn modf_546e09() {
   var arg_1 : f32;
   var res : f32 = modf(1.0, &(arg_1));