#include "threads/mutex.hpp"
-#include "vm/class.h"
+#include "vm/class.hpp"
#include "vm/global.h"
#include "vm/globals.hpp"
#include "vm/initialize.hpp"
#include "vm/jit/disass.h"
#include "vm/jit/dseg.h"
#include "vm/jit/jit.hpp"
-#include "vm/jit/parse.h"
+#include "vm/jit/parse.hpp"
#include "vm/jit/reg.h"
#include "vm/jit/show.hpp"
#include "vm/jit/stack.h"
#include "vm/jit/stubs.hpp"
+#if defined(ENABLE_JITCACHE)
+# include "vm/jit/jitcache.hpp"
+#endif
+
#if defined(ENABLE_OPAGENT)
#include "vm/jit/oprofile-agent.hpp"
#endif
STATISTICS(count_methods++);
+#if defined (ENABLE_JITCACHE)
+
+ if (jitcache_load (m))
+ {
+ m->mutex->unlock();
+
+ return m->code->entrypoint;
+ }
+
+#endif
+
#if defined(ENABLE_STATISTICS)
/* measure time */
DEBUG_JIT_COMPILEVERBOSE("Running: ");
}
+#if defined (ENABLE_JITCACHE)
+ jitcache_store(m);
+#endif
+
#if defined(ENABLE_STATISTICS)
/* measure time */