#include "vm/jit/replace.h"
-/* A `codeinfo` represents a particular realization of a method in */
-/* machine code. */
+/* codeinfo *******************************************************************
+
+ A codeinfo represents a particular realization of a method in
+ machine code.
+
+*******************************************************************************/
struct codeinfo {
methodinfo *m; /* method this is a realization of */
codeinfo *prev; /* previous codeinfo of this method */
u1 optlevel; /* optimization level of this code */
+ s4 basicblockcount; /* number of basic blocks */
/* machine code */
u1 *mcode; /* pointer to machine code */
u1 *entrypoint; /* machine code entry point */
s4 mcodelength; /* length of generated machine code */
- bool isleafmethod; /* does method call subroutines */
/* replacement */
rplpoint *rplpoints; /* replacement points */
s8 cycles; /* number of cpu cycles */
};
+
+/* function prototypes ********************************************************/
+
codeinfo *code_codeinfo_new(methodinfo *m);
void code_codeinfo_free(codeinfo *code);
#endif /* _CODE_H */
+
/*
* These are local overrides for various environment variables in Emacs.
* Please do not remove this and leave it at the end of the file, where