Enable CPU execution in sample SL driver
Before this change, the driver reports supporting all operations but
fails to execute any.
Fix: 183005173
Test: DRIVER=neuralnetworks_sample_sl_driver
TEST=NeuralNetworksSupportLibraryTest
mma $TEST $DRIVER && \
adb push {$OUT,}/data/nativetest/$TEST/$TEST && \
adb push {$OUT/system/lib,/data/nativetest/$TEST}/$DRIVER.so && \
adb shell /data/nativetest/$TEST/{$TEST,$DRIVER.so}
Change-Id: I15d3514308543757459e29e8076dd8af5a102fc6
Merged-In: I15d3514308543757459e29e8076dd8af5a102fc6
(cherry picked from commit dc22752961ead2748e9338143f8874fd64ca0446)
diff --git a/common/Android.bp b/common/Android.bp
index fe0de1f..44180e3 100644
--- a/common/Android.bp
+++ b/common/Android.bp
@@ -270,8 +270,8 @@
],
}
-cc_library_static {
- name: "libneuralnetworks_common_cl",
+cc_defaults {
+ name: "libneuralnetworks_common_cl_defaults",
defaults: [
"neuralnetworks_cl_defaults",
"neuralnetworks_defaults",
@@ -324,6 +324,72 @@
],
}
+cc_library_static {
+ name: "libneuralnetworks_common_cl",
+ defaults: ["libneuralnetworks_common_cl_defaults"],
+}
+
+cc_library_static {
+ name: "libneuralnetworks_common_cl_cpu",
+ defaults: ["libneuralnetworks_common_cl_defaults"],
+ sdk_version: "", // Override neuralnetworks_cl_defaults
+ min_sdk_version: "",
+ header_libs: [
+ "gemmlowp_headers",
+ "libeigen",
+ "libruy_headers",
+ "libtextclassifier_hash_headers",
+ "philox_random_headers",
+ "tensorflow_headers",
+ ],
+ whole_static_libs: [
+ "libarect",
+ "libtflite_kernel_utils",
+ "neuralnetworks_types_cl",
+ "philox_random",
+ ],
+ static_libs: [
+ "libcrypto_static",
+ "libtextclassifier_hash_static",
+ ],
+ srcs: [
+ "QuantUtils.cpp",
+ "operations/ArgMinMax.cpp",
+ "operations/BidirectionalSequenceLSTM.cpp",
+ "operations/Cast.cpp",
+ "operations/EmbeddingLookup.cpp",
+ "operations/ExpandDims.cpp",
+ "operations/GroupedConv2D.cpp",
+ "operations/HashtableLookup.cpp",
+ "operations/LSHProjection.cpp",
+ "operations/LSTM.cpp",
+ "operations/MaximumMinimum.cpp",
+ "operations/Multinomial.cpp",
+ "operations/Pow.cpp",
+ "operations/QuantizedLSTM.cpp",
+ "operations/RNN.cpp",
+ "operations/Reshape.cpp",
+ "operations/SVDF.cpp",
+ "operations/SimpleMath.cpp",
+ "operations/Split.cpp",
+ "operations/Tile.cpp",
+ ],
+ cflags: [
+ "-DNAMESPACE_FOR_HASH_FUNCTIONS=farmhash",
+ "-DNN_COMPATIBILITY_LIBRARY_BUILD",
+ "-DNN_INCLUDE_CPU_IMPLEMENTATION",
+ "-DTF_LITE_DISABLE_X86_NEON",
+ "-Wno-array-bounds",
+ "-Wno-extern-c-compat",
+ "-Wno-invalid-partial-specialization",
+ "-Wno-sign-compare",
+ "-Wno-unused-local-typedef",
+ "-Wno-unused-parameter",
+ "-Wno-unused-private-field",
+ "-Wno-unused-variable",
+ ],
+}
+
cc_defaults {
name: "neuralnetworks_utils_defaults",
// b/146324523, NNAPI host build capability