lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]

Hi all,

I've asked this question before, but it was embedded in a bunch of others.

Is there a quick, super efficient method of determining whether a virtual machine stack register contains a local variable or an intermediate?

My current (slow) approach involves walking the call info stack.

An idea I had was to hold a stack info stack. Each position in this stack refers to a proper stack register, indicating it's locality. This information is updated when the VM calls a function, or returns from one.

Unfortunately, it seems to get out of sync, but I'm not sure why. Are there any other VM operations that would effect the locality of stack members?