SF patch # 580411, move frame macros from frameobject.h into ceval.c
remove unused macros use co alias instead of f->f_code in macros
This commit is contained in:
parent
b6d29b7856
commit
a81d220625
|
@ -54,26 +54,6 @@ DL_IMPORT(PyFrameObject *) PyFrame_New(PyThreadState *, PyCodeObject *,
|
|||
|
||||
/* The rest of the interface is specific for frame objects */
|
||||
|
||||
/* Tuple access macros */
|
||||
|
||||
#ifndef Py_DEBUG
|
||||
#define GETITEM(v, i) PyTuple_GET_ITEM((PyTupleObject *)(v), (i))
|
||||
#define GETITEMNAME(v, i) \
|
||||
PyString_AS_STRING((PyStringObject *)GETITEM((v), (i)))
|
||||
#else
|
||||
#define GETITEM(v, i) PyTuple_GetItem((v), (i))
|
||||
#define GETITEMNAME(v, i) PyString_AsString(GETITEM(v, i))
|
||||
#endif
|
||||
|
||||
#define GETUSTRINGVALUE(s) ((unsigned char *)PyString_AS_STRING(s))
|
||||
|
||||
/* Code access macros */
|
||||
|
||||
#define Getconst(f, i) (GETITEM((f)->f_code->co_consts, (i)))
|
||||
#define Getname(f, i) (GETITEMNAME((f)->f_code->co_names, (i)))
|
||||
#define Getnamev(f, i) (GETITEM((f)->f_code->co_names, (i)))
|
||||
|
||||
|
||||
/* Block management functions */
|
||||
|
||||
DL_IMPORT(void) PyFrame_BlockSetup(PyFrameObject *, int, int, int);
|
||||
|
|
|
@ -521,11 +521,18 @@ eval_frame(PyFrameObject *f)
|
|||
char *filename;
|
||||
#endif
|
||||
|
||||
/* Tuple access macros */
|
||||
|
||||
#ifndef Py_DEBUG
|
||||
#define GETITEM(v, i) PyTuple_GET_ITEM((PyTupleObject *)(v), (i))
|
||||
#else
|
||||
#define GETITEM(v, i) PyTuple_GetItem((v), (i))
|
||||
#endif
|
||||
|
||||
/* Code access macros */
|
||||
|
||||
#define GETCONST(i) Getconst(f, i)
|
||||
#define GETNAME(i) Getname(f, i)
|
||||
#define GETNAMEV(i) Getnamev(f, i)
|
||||
#define GETCONST(i) (GETITEM(co->co_consts, (i)))
|
||||
#define GETNAMEV(i) (GETITEM(co->co_names, (i)))
|
||||
#define INSTR_OFFSET() (next_instr - first_instr)
|
||||
#define NEXTOP() (*next_instr++)
|
||||
#define NEXTARG() (next_instr += 2, (next_instr[-1]<<8) + next_instr[-2])
|
||||
|
|
Loading…
Reference in New Issue