Decompose OpIsFinite to avoid capability restrictions

OpIsFinite is not available everywhere: decompose isfinite
to !isinf && !isnan.
diff --git a/Test/hlsl.isfinite.frag b/Test/hlsl.isfinite.frag
new file mode 100644
index 0000000..a788bed
--- /dev/null
+++ b/Test/hlsl.isfinite.frag
@@ -0,0 +1,9 @@
+
+uniform float f;
+
+float4 main() : SV_Target0
+{
+    isfinite(f);
+
+    return 0;
+}