Hi everyone,

I've been walking around in Factors VM for a while and there is a lot
of usages and references to "the retain stack." But I can't for my
life figure out what its purpose is or why anyone ever would want one
when there is a perfectly good data stack already available.

I only found these two posts by Slava Pestov about it:

http://article.gmane.org/gmane.comp.lang.factor.general/1931/match=retain+stack
http://factor-language.blogspot.se/2010/07/overhauling-factors-c-library-interface.html

"In the future, I intend on using GC maps at call sites of Factor
words as well, instead of spilling temporary values to the retain
stack; then I can eliminate the retain stack altogether, freeing up a
register. After this is done the data stack will only be used to pass
parameters between words, and not to store temporaries within a word.
This will allow more values to be unboxed in more situations, and it
will improve accuracy of compiler analyses."

So the retain stack is useless? Freeing up a whole register sounds
like it should be great for performance, at least on 32 bit x86.


-- 
mvh/best regards Björn Lindqvist

------------------------------------------------------------------------------
"Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
Instantly run your Selenium tests across 300+ browser/OS combos.
Get unparalleled scalability from the best Selenium testing platform available
Simple to use. Nothing to install. Get started now for free."
http://p.sf.net/sfu/SauceLabs
_______________________________________________
Factor-talk mailing list
Factor-talk@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/factor-talk

Reply via email to