[VM] CompiledMethod header format?
Matthew S. Davis
mdavis at cse.psu.edu
Sat Dec 30 14:51:36 UTC 2000
Hi Bob (and everyone else who responded - thanks!),
Boy I feel stupid. The mask that I "saw" in the bitAnd: message
sent in Interpreter>>bytecodeActivateNewMethod was 16r7F. It's clearly
16r3F which is 6 bits.
Thanks for the help!
On Fri, 29 Dec 2000, Bob Arning wrote:
> On Fri, 29 Dec 2000 20:22:48 -0500 (EST) "Matthew S. Davis" <mdavis at cse.psu.edu> wrote:
> > I've determined the following header format from the Interpreter
> >bit 0 : constant 1 to indicate SmallInteger
> >bits 1-9 : primitive index
> >bits 10-17 : literal count
> >bit 18 : not used?
> >bits 19-25 : temporary count
> >bits 25-28 : argument count
> >bits 29-31 : primitive index
> > Could someone please explain why bit 25 is shared between two
> >fields? I'm not clear why this is the case. Should the temporary count
> >really be in bit positions 18-24? If so, it does not look like they are.
> Temporary count is definitely 6 bits in the header. Where did you see an indication that it was 7?
> And the bit you have marked as unused is the Large/Small context flag.
More information about the Squeak-dev