summaryrefslogtreecommitdiff
path: root/graphics/java/android/renderscript/ScriptC.java
diff options
context:
space:
mode:
authorJason Sams <rjsams@android.com>2010-05-11 14:03:58 -0700
committerJason Sams <rjsams@android.com>2010-05-11 14:03:58 -0700
commit4d3399337d18ef04116bc8a2e5799274655d0c30 (patch)
treea264ecb82632516adb510a2ca49d3cac750d54d0 /graphics/java/android/renderscript/ScriptC.java
parent810f5ccb99a8a05a6d1617b19a4efb2399450318 (diff)
Convert renderscript from using ACC to LLVM for its compiler.
This will also require application to be updated to support the new compiler and data passing models. Change-Id: If078e3a5148af395ba1b936169a407d8c3ad727f
Diffstat (limited to 'graphics/java/android/renderscript/ScriptC.java')
-rw-r--r--graphics/java/android/renderscript/ScriptC.java60
1 files changed, 6 insertions, 54 deletions
diff --git a/graphics/java/android/renderscript/ScriptC.java b/graphics/java/android/renderscript/ScriptC.java
index f5d5b2fa5370..c1ba000f1516 100644
--- a/graphics/java/android/renderscript/ScriptC.java
+++ b/graphics/java/android/renderscript/ScriptC.java
@@ -81,8 +81,6 @@ public class ScriptC extends Script {
public static class Builder extends Script.Builder {
byte[] mProgram;
int mProgramLength;
- HashMap<String,Integer> mIntDefines = new HashMap();
- HashMap<String,Float> mFloatDefines = new HashMap();
public Builder(RenderScript rs) {
super(rs);
@@ -133,66 +131,20 @@ public class ScriptC extends Script {
static synchronized ScriptC internalCreate(Builder b) {
b.mRS.nScriptCBegin();
- b.transferCreate();
-
- for (Entry<String,Integer> e: b.mIntDefines.entrySet()) {
- b.mRS.nScriptCAddDefineI32(e.getKey(), e.getValue().intValue());
- }
- for (Entry<String,Float> e: b.mFloatDefines.entrySet()) {
- b.mRS.nScriptCAddDefineF(e.getKey(), e.getValue().floatValue());
- }
+ android.util.Log.e("rs", "len = " + b.mProgramLength);
b.mRS.nScriptCSetScript(b.mProgram, 0, b.mProgramLength);
int id = b.mRS.nScriptCCreate();
ScriptC obj = new ScriptC(id, b.mRS);
- b.transferObject(obj);
-
return obj;
}
- public void addDefine(String name, int value) {
- mIntDefines.put(name, value);
- }
-
- public void addDefine(String name, float value) {
- mFloatDefines.put(name, value);
- }
-
- /**
- * Takes the all public static final fields for a class, and adds defines
- * for them, using the name of the field as the name of the define.
- */
- public void addDefines(Class cl) {
- addDefines(cl.getFields(), (Modifier.STATIC | Modifier.FINAL | Modifier.PUBLIC), null);
- }
-
- /**
- * Takes the all public fields for an object, and adds defines
- * for them, using the name of the field as the name of the define.
- */
- public void addDefines(Object o) {
- addDefines(o.getClass().getFields(), Modifier.PUBLIC, o);
- }
-
- void addDefines(Field[] fields, int mask, Object o) {
- for (Field f: fields) {
- try {
- if ((f.getModifiers() & mask) == mask) {
- Class t = f.getType();
- if (t == int.class) {
- mIntDefines.put(f.getName(), f.getInt(o));
- }
- else if (t == float.class) {
- mFloatDefines.put(f.getName(), f.getFloat(o));
- }
- }
- } catch (IllegalAccessException ex) {
- // TODO: Do we want this log?
- Log.d(TAG, "addDefines skipping field " + f.getName());
- }
- }
- }
+ public void addDefine(String name, int value) {}
+ public void addDefine(String name, float value) {}
+ public void addDefines(Class cl) {}
+ public void addDefines(Object o) {}
+ void addDefines(Field[] fields, int mask, Object o) {}
public ScriptC create() {
return internalCreate(this);