+
+ int s_name;
+ int s_file; // source file defined in
+
+ int numparms;
+ unsigned char parm_size[MAX_PARMS];
+}
+dfunction_t;
+
+typedef struct mfunction_s
+{
+ int first_statement; // negative numbers are builtins
+ int parm_start;
+ int locals; // total ints of parms + locals
+
+ // these are doubles so that they can count up to 54bits or so rather than 32bit
+ double tprofile; // realtime in this function
+ double tbprofile; // realtime in builtins called by this function (NOTE: builtins also have a tprofile!)
+ double profile; // runtime
+ double builtinsprofile; // cost of builtin functions called by this function
+ double callcount; // times the functions has been called since the last profile call
+ double totaltime; // total execution time of this function DIRECTLY FROM THE ENGINE
+ double tprofile_total; // runtime (NOTE: tbprofile_total makes no real sense, so not accumulating that)
+ double profile_total; // runtime
+ double builtinsprofile_total; // cost of builtin functions called by this function
+ int recursion;
+