summaryrefslogtreecommitdiffstats
path: root/bundles/org.eclipse.swt.tools/JNI Generation/org/eclipse/swt/tools/internal/StatsGenerator.java
diff options
context:
space:
mode:
Diffstat (limited to 'bundles/org.eclipse.swt.tools/JNI Generation/org/eclipse/swt/tools/internal/StatsGenerator.java')
-rw-r--r--bundles/org.eclipse.swt.tools/JNI Generation/org/eclipse/swt/tools/internal/StatsGenerator.java25
1 files changed, 9 insertions, 16 deletions
diff --git a/bundles/org.eclipse.swt.tools/JNI Generation/org/eclipse/swt/tools/internal/StatsGenerator.java b/bundles/org.eclipse.swt.tools/JNI Generation/org/eclipse/swt/tools/internal/StatsGenerator.java
index dd8a6d1ec7..e45b6dc277 100644
--- a/bundles/org.eclipse.swt.tools/JNI Generation/org/eclipse/swt/tools/internal/StatsGenerator.java
+++ b/bundles/org.eclipse.swt.tools/JNI Generation/org/eclipse/swt/tools/internal/StatsGenerator.java
@@ -100,23 +100,7 @@ void generateSourceFile(JNIClass clazz) {
outputln("#ifdef NATIVE_STATS");
outputln();
JNIMethod[] methods = clazz.getDeclaredMethods();
- int methodCount = 0;
- for (int i = 0; i < methods.length; i++) {
- JNIMethod method = methods[i];
- if ((method.getModifiers() & Modifier.NATIVE) == 0) continue;
- methodCount++;
- }
String className = clazz.getSimpleName();
- output("int ");
- output(className);
- output("_nativeFunctionCount = ");
- output(String.valueOf(methodCount));
- outputln(";");
- output("int ");
- output(className);
- output("_nativeFunctionCallCount[");
- output(String.valueOf(methodCount));
- outputln("];");
output("char * ");
output(className);
outputln("_nativeFunctionNames[] = {");
@@ -143,6 +127,15 @@ void generateSourceFile(JNIClass clazz) {
if (progress != null) progress.step();
}
outputln("};");
+ output("#define NATIVE_FUNCTION_COUNT sizeof(");
+ output(className);
+ outputln("_nativeFunctionNames) / sizeof(char*)");
+ output("int ");
+ output(className);
+ outputln("_nativeFunctionCount = NATIVE_FUNCTION_COUNT;");
+ output("int ");
+ output(className);
+ outputln("_nativeFunctionCallCount[NATIVE_FUNCTION_COUNT];");
outputln();
generateStatsNatives(className);
outputln();