Howdy.

I'm attempting to port the SmallEiffel Eiffel compiler to the PalmOS
platform.  Most everything is going well, but the Garbage Collector
needs a bit of help--I have to write a routine which will look at the
application stack and processor registers to see if any pointers to
GC'able objects are located therein.

For other architectures, this procedure consists of:

1) Push the registers onto the stack
2) Start at the top or bottom of the stack with a pointer to a pointer
3) Increment (or decrement) the pointer-to-pointer, and send the
dereferenced contents to a marking function
4) Marking function determines if the dereferenced pointer points to a
GC-able object and marks it if that's the case.

How do I do this in the PalmOS platform?  I tried getting the stack
parameters with SysGetStackInfo, but I'm not sure how to check the
registers... and since pointers are 32-bit, is stepping through the
stack with a "pointer to a pointer" really a good idea?  Are stack
pushes aligned to 16 or 32 bits?

Any help would be, well... helpful.  It's just not right without the
garbage collector.

-->VPutz

-- 
For information on using the Palm Developer Forums, or to unsubscribe, please see 
http://www.palmos.com/dev/tech/support/forums/

Reply via email to