Rewrite NaN checks in terms of SkScalarIsNaN()

We are trying to replace Skia's NaN checker with our own in Mozilla,
so it would be nice to have to patch a single place by making sure
these NaN checks used SkScalarIsNaN().

BUG=skia:

Review URL: https://codereview.chromium.org/809443002
diff --git a/include/core/SkPoint.h b/include/core/SkPoint.h
index 323c824..4a97391 100644
--- a/include/core/SkPoint.h
+++ b/include/core/SkPoint.h
@@ -357,11 +357,11 @@
         accum *= fY;
 
         // accum is either NaN or it is finite (zero).
-        SkASSERT(0 == accum || !(accum == accum));
+        SkASSERT(0 == accum || SkScalarIsNaN(accum));
 
         // value==value will be true iff value is not NaN
         // TODO: is it faster to say !accum or accum==accum?
-        return accum == accum;
+        return !SkScalarIsNaN(accum);
     }
 
     /**
diff --git a/include/core/SkRect.h b/include/core/SkRect.h
index 394e45d..0038c7c 100644
--- a/include/core/SkRect.h
+++ b/include/core/SkRect.h
@@ -455,11 +455,11 @@
         accum *= fBottom;
 
         // accum is either NaN or it is finite (zero).
-        SkASSERT(0 == accum || !(accum == accum));
+        SkASSERT(0 == accum || SkScalarIsNaN(accum));
 
         // value==value will be true iff value is not NaN
         // TODO: is it faster to say !accum or accum==accum?
-        return accum == accum;
+        return !SkScalarIsNaN(accum);
     }
 
     SkScalar    x() const { return fLeft; }
diff --git a/include/core/SkScalar.h b/include/core/SkScalar.h
index e0490e2..94c3ce1 100644
--- a/include/core/SkScalar.h
+++ b/include/core/SkScalar.h
@@ -127,7 +127,7 @@
     SkScalar prod = x * 0;
     // At this point, prod will either be NaN or 0
     // Therefore we can return (prod == prod) or (0 == prod).
-    return prod == prod;
+    return !SkScalarIsNaN(prod);
 }
 
 /**