[svn:parrot] r38648 - trunk/src/pmc
Infinoid at svn.parrot.org
Infinoid at svn.parrot.org
Sat May 9 15:28:52 UTC 2009
Author: Infinoid
Date: Sat May 9 15:28:52 2009
New Revision: 38648
URL: https://trac.parrot.org/parrot/changeset/38648
Log:
[PMC] According to masak++, r38577 causes a SIGBUS on darwin.
The code in question has two code paths: one optimized path that recycles RetContinuations, and the normal path which doesn't.
The r38577 commit log suggests that the optimized path was enabled in all cases. But in reality, *both* paths were being executed.
This patch disables the non-optimized path. I can't tell you why this fixes it, but apparently it does.
Modified:
trunk/src/pmc/retcontinuation.pmc
Modified: trunk/src/pmc/retcontinuation.pmc
==============================================================================
--- trunk/src/pmc/retcontinuation.pmc Sat May 9 15:28:47 2009 (r38647)
+++ trunk/src/pmc/retcontinuation.pmc Sat May 9 15:28:52 2009 (r38648)
@@ -108,13 +108,6 @@
pool->add_free_object(interp, pool, (PObj *)SELF);
pool->num_free_objects++;
}
- cc->from_ctx = NULL;
-
- /*
- * the to_ctx is marked in Continuation.mark
- * NULLify it or turn off the custom_mark bit
- */
- cc->to_ctx = NULL;
if (INTERP->code != seg)
Parrot_switch_to_cs(INTERP, seg, 1);
More information about the parrot-commits
mailing list