Mostly I'm lazy. I also thought that someone more involved in the GC-code should do that.
That might be possible. It's not the actual allocation that is most expensive, though, it's the initialization of the frames. Also, the accesses of prog, storage and similar members through pike_frame instead of a local variable generated extra memory operations, gcc did not really optimize that code all that well.
/ Per Hedbor ()
Previous text:
2002-12-17 22:33: Subject: pike_frames vs. clone_object/destruct. (7.5)
What kept you from doing them in the gc functions?
I wonder if one can be a little naughty and allocate the pike_frames on the stack in those functions. One thing I don't understand though is why most functions carefully avoids having the extra ref during most of the frame's lifetime.
/ Martin Stjernholm, Roxen IS