PmFrame_s Struct Reference

#include <frame.h>

List of all members.

Public Attributes

PmObjDesc_t od
struct PmFrame_sfo_back
pPmFunc_t fo_func
PmMemSpace_t fo_memspace:8
uint8_t const * fo_ip
pPmBlock_t fo_blockstack
pPmDict_t fo_attrs
pPmDict_t fo_globals
pPmObj_tfo_sp
uint8_t fo_isImport:1
pPmObj_t fo_locals [1]


Detailed Description

Frame

A struct that holds the execution frame of a function, including the stack, local vars and pointer to the code object.

This struct doesn't declare the stack. frame_new() is responsible for allocating the extra memory at the tail of fo_locals[] to hold both the locals and stack.

Definition at line 90 of file frame.h.


Member Data Documentation

Local attributes dict (non-fast locals)

Definition at line 111 of file frame.h.

struct PmFrame_s* PmFrame_s::fo_back [read]

Ptr to previous frame obj

Definition at line 96 of file frame.h.

Linked list of blocks

Definition at line 108 of file frame.h.

Ptr to fxn obj

Definition at line 99 of file frame.h.

Global attributes dict (pts to root frame's globals

Definition at line 114 of file frame.h.

Instrxn ptr (pts into memspace)

Definition at line 105 of file frame.h.

Frame can be an import-frame that handles RETURN differently

Definition at line 120 of file frame.h.

Array of local vars and stack (space appended at alloc)

Definition at line 128 of file frame.h.

Mem space where func's CO comes from

Definition at line 102 of file frame.h.

Points to next empty slot in fo_locals (1 past TOS)

Definition at line 117 of file frame.h.

Obligatory obj descriptor

Definition at line 93 of file frame.h.


The documentation for this struct was generated from the following file:

Generated on Mon Oct 18 07:40:49 2010 for Python-on-a-chip by  doxygen 1.5.9