pr.mcode = 0;
pr.done = false;
+#if defined(ENABLE_JITCACHE)
+ pr.attached_ref = NULL;
+#endif
+
// Store patcher in the list (NOTE: structure is copied).
code->patchers->push_back(pr);
}
#endif
+#if defined(ENABLE_JITCACHE)
+ /* Put cached reference into the code and remove it from the patcher */
+ if (pr->attached_ref)
+ {
+ jitcache_handle_cached_ref(pr->attached_ref, code);
+ pr->attached_ref = NULL;
+ }
+#endif
+
/* check for return value and exit accordingly */
if (result == false) {
return true;
}
+/** Placeholder functions to calm down linker */
+#if defined(__I386__)
+bool patcher_resolve_classref_to_classinfo(patchref_t *pr)
+{
+ return true;
+}
+
+bool patcher_resolve_classref_to_vftbl(patchref_t *pr)
+{
+ return true;
+}
+
+bool patcher_resolve_classref_to_index(patchref_t *pr)
+{
+ return true;
+}
+
+bool patcher_resolve_classref_to_flags(patchref_t *pr)
+{
+ return true;
+}
+#endif
/*
* These are local overrides for various environment variables in Emacs.