[macruby-changes] [4545] MacRuby/trunk/vm.cpp
source_changes at macosforge.org
source_changes at macosforge.org
Mon Sep 27 16:05:32 PDT 2010
Revision: 4545
http://trac.macosforge.org/projects/ruby/changeset/4545
Author: lsansonetti at apple.com
Date: 2010-09-27 16:05:30 -0700 (Mon, 27 Sep 2010)
Log Message:
-----------
don't invalidate respond_to and dispatch caches while we are still booting the runtime
Modified Paths:
--------------
MacRuby/trunk/vm.cpp
Modified: MacRuby/trunk/vm.cpp
===================================================================
--- MacRuby/trunk/vm.cpp 2010-09-27 22:55:31 UTC (rev 4544)
+++ MacRuby/trunk/vm.cpp 2010-09-27 23:05:30 UTC (rev 4545)
@@ -1018,15 +1018,15 @@
ruby_imps[ruby_imp] = node;
}
- // Invalidate respond_to cache.
- invalidate_respond_to_cache();
+ if (running) {
+ // Invalidate respond_to cache.
+ invalidate_respond_to_cache();
- // Invalidate dispatch cache.
- invalidate_method_cache(sel);
+ // Invalidate dispatch cache.
+ invalidate_method_cache(sel);
- // Invalidate inline operations.
+ // Invalidate inline operations.
#if !defined(MACRUBY_STATIC)
- if (running) {
GlobalVariable *gvar = redefined_op_gvar(sel, false);
if (gvar != NULL && should_invalidate_inline_op(sel, klass)) {
void *val = ee->getOrEmitGlobalVariable(gvar);
@@ -1038,8 +1038,8 @@
assert(val != NULL);
*(unsigned char *)val = 1;
}
+#endif
}
-#endif
// If alloc is redefined, mark the class as such.
if (sel == selAlloc
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macruby-changes/attachments/20100927/e04fe841/attachment.html>
More information about the macruby-changes
mailing list