Support for general reduction kernels.

Requires coordinated change in frameworks/base.

Requires coordinated change in frameworks/compile/libbcc in order
for RsTest to run.

At present, general reduction kernels are run single-threaded.

Also: Remove dead struct field MTLaunchStructForEach::sig.

Bug: 23535724
Change-Id: Ice17ccf20a902f8a106eaa62ec071d46e3c0ad8c
diff --git a/driver/rsdBcc.cpp b/driver/rsdBcc.cpp
index 25659d8..af8d6ad 100644
--- a/driver/rsdBcc.cpp
+++ b/driver/rsdBcc.cpp
@@ -133,6 +133,15 @@
     cs->invokeReduce(slot, ain, aout, sc);
 }
 
+void rsdScriptInvokeReduceNew(const Context *dc, Script *s,
+                              uint32_t slot,
+                              const Allocation ** ains, size_t inLen,
+                              Allocation *aout,
+                              const RsScriptCall *sc) {
+    RsdCpuReference::CpuScript *cs = (RsdCpuReference::CpuScript *)s->mHal.drv;
+    cs->invokeReduceNew(slot, ains, inLen, aout, sc);
+}
+
 void rsdScriptSetGlobalVar(const Context *dc, const Script *s,
                            uint32_t slot, void *data, size_t dataLength) {
     RsdCpuReference::CpuScript *cs = (RsdCpuReference::CpuScript *)s->mHal.drv;