From af9d6479e541bd163e2189fabbcde78613c7a751 Mon Sep 17 00:00:00 2001 From: Pritesh Nandgaonkar Date: Thu, 1 Mar 2018 04:00:28 -0800 Subject: [PATCH] Make two separate yoga targets for QE Reviewed By: emilsjolander Differential Revision: D7059278 fbshipit-source-id: dd11b018edc8ea930d5eba09c6c01e349bb8b63c --- .../src/main/java/com/facebook/yoga/YogaConfig.java | 6 +++++- .../src/main/java/com/facebook/yoga/YogaConstants.java | 2 ++ ReactAndroid/src/main/java/com/facebook/yoga/YogaNode.java | 6 +++++- 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfig.java b/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfig.java index 3741583b9..e68c51214 100644 --- a/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfig.java +++ b/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfig.java @@ -16,7 +16,11 @@ public class YogaConfig { public static int SPACING_TYPE = 1; static { - SoLoader.loadLibrary("yoga"); + if (YogaConstants.shouldUseFastMath) { + SoLoader.loadLibrary("yogafastmath"); + } else { + SoLoader.loadLibrary("yoga"); + } } long mNativePointer; diff --git a/ReactAndroid/src/main/java/com/facebook/yoga/YogaConstants.java b/ReactAndroid/src/main/java/com/facebook/yoga/YogaConstants.java index e11c1044d..cb9bc8ca5 100644 --- a/ReactAndroid/src/main/java/com/facebook/yoga/YogaConstants.java +++ b/ReactAndroid/src/main/java/com/facebook/yoga/YogaConstants.java @@ -11,6 +11,8 @@ public class YogaConstants { public static final float UNDEFINED = Float.NaN; + public static boolean shouldUseFastMath = false; + public static boolean isUndefined(float value) { return Float.compare(value, UNDEFINED) == 0; } diff --git a/ReactAndroid/src/main/java/com/facebook/yoga/YogaNode.java b/ReactAndroid/src/main/java/com/facebook/yoga/YogaNode.java index 1ba81249c..c1c659335 100644 --- a/ReactAndroid/src/main/java/com/facebook/yoga/YogaNode.java +++ b/ReactAndroid/src/main/java/com/facebook/yoga/YogaNode.java @@ -17,7 +17,11 @@ import javax.annotation.Nullable; public class YogaNode implements Cloneable { static { - SoLoader.loadLibrary("yoga"); + if (YogaConstants.shouldUseFastMath) { + SoLoader.loadLibrary("yogafastmath"); + } else { + SoLoader.loadLibrary("yoga"); + } } /**