-/******************** Funktion: builtin_new **********************************
+/******************** Function: builtin_new **********************************
Creates a new instance of class c on the heap.
Return value: pointer to the object or NULL if no memory is
}
-/******************** Funktion: builtin_newarray_int ***********************
+/******************** Function: builtin_newarray_int ***********************
Creates an array of 32 bit Integers on the heap.
}
-/******************** Funktion: builtin_newarray_long ***********************
+/******************** Function: builtin_newarray_long ***********************
Creates an array of 64 bit Integers on the heap.
}
+#ifdef TRACE_ARGS_NUM
void builtin_trace_args(long a0, long a1, long a2, long a3, long a4, long a5,
+#if TRACE_ARGS_NUM > 6
+ long a6, long a7,
+#endif
methodinfo *method)
{
sprintf (logtext, " ");
utf_sprint (logtext+strlen(logtext), method->descriptor);
sprintf (logtext+strlen(logtext), "(");
switch (method->paramcount) {
+#if TRACE_ARGS_NUM > 6
+ case 8:
+ sprintf(logtext+strlen(logtext), "%lx, %lx, %lx, %lx, %lx, %lx, %lx, %lx",
+ a0, a1, a2, a3, a4, a5, a6, a7);
+ break;
+ case 7:
+ sprintf(logtext+strlen(logtext), "%lx, %lx, %lx, %lx, %lx, %lx, %lx",
+ a0, a1, a2, a3, a4, a5, a6);
+ break;
+#endif
case 6:
sprintf(logtext+strlen(logtext), "%lx, %lx, %lx, %lx, %lx, %lx",
a0, a1, a2, a3, a4, a5);
dolog ();
methodindent++;
}
+#endif
void builtin_displaymethodstart(methodinfo *method)
{
methodindent++;
}
-void builtin_displaymethodstop(methodinfo *method, long l, double d)
+void builtin_displaymethodstop(methodinfo *method, long l, double d, float f)
{
methodindent--;
sprintf (logtext, " ");
sprintf (logtext+strlen(logtext), "->%ld", l);
break;
case TYPE_FLOAT:
+ sprintf (logtext+strlen(logtext), "->%g", f);
+ break;
case TYPE_DOUBLE:
sprintf (logtext+strlen(logtext), "->%g", d);
break;