python-2.7.6/include/opcode.h File Reference

opcode.h File Reference

Macros

#define STOP_CODE   0
 
#define POP_TOP   1
 
#define ROT_TWO   2
 
#define ROT_THREE   3
 
#define DUP_TOP   4
 
#define ROT_FOUR   5
 
#define NOP   9
 
#define UNARY_POSITIVE   10
 
#define UNARY_NEGATIVE   11
 
#define UNARY_NOT   12
 
#define UNARY_CONVERT   13
 
#define UNARY_INVERT   15
 
#define BINARY_POWER   19
 
#define BINARY_MULTIPLY   20
 
#define BINARY_DIVIDE   21
 
#define BINARY_MODULO   22
 
#define BINARY_ADD   23
 
#define BINARY_SUBTRACT   24
 
#define BINARY_SUBSCR   25
 
#define BINARY_FLOOR_DIVIDE   26
 
#define BINARY_TRUE_DIVIDE   27
 
#define INPLACE_FLOOR_DIVIDE   28
 
#define INPLACE_TRUE_DIVIDE   29
 
#define SLICE   30
 
#define STORE_SLICE   40
 
#define DELETE_SLICE   50
 
#define STORE_MAP   54
 
#define INPLACE_ADD   55
 
#define INPLACE_SUBTRACT   56
 
#define INPLACE_MULTIPLY   57
 
#define INPLACE_DIVIDE   58
 
#define INPLACE_MODULO   59
 
#define STORE_SUBSCR   60
 
#define DELETE_SUBSCR   61
 
#define BINARY_LSHIFT   62
 
#define BINARY_RSHIFT   63
 
#define BINARY_AND   64
 
#define BINARY_XOR   65
 
#define BINARY_OR   66
 
#define INPLACE_POWER   67
 
#define GET_ITER   68
 
#define PRINT_EXPR   70
 
#define PRINT_ITEM   71
 
#define PRINT_NEWLINE   72
 
#define PRINT_ITEM_TO   73
 
#define PRINT_NEWLINE_TO   74
 
#define INPLACE_LSHIFT   75
 
#define INPLACE_RSHIFT   76
 
#define INPLACE_AND   77
 
#define INPLACE_XOR   78
 
#define INPLACE_OR   79
 
#define BREAK_LOOP   80
 
#define WITH_CLEANUP   81
 
#define LOAD_LOCALS   82
 
#define RETURN_VALUE   83
 
#define IMPORT_STAR   84
 
#define EXEC_STMT   85
 
#define YIELD_VALUE   86
 
#define POP_BLOCK   87
 
#define END_FINALLY   88
 
#define BUILD_CLASS   89
 
#define HAVE_ARGUMENT   90 /* Opcodes from here have an argument: */
 
#define STORE_NAME   90 /* Index in name list */
 
#define DELETE_NAME   91 /* "" */
 
#define UNPACK_SEQUENCE   92 /* Number of sequence items */
 
#define FOR_ITER   93
 
#define LIST_APPEND   94
 
#define STORE_ATTR   95 /* Index in name list */
 
#define DELETE_ATTR   96 /* "" */
 
#define STORE_GLOBAL   97 /* "" */
 
#define DELETE_GLOBAL   98 /* "" */
 
#define DUP_TOPX   99 /* number of items to duplicate */
 
#define LOAD_CONST   100 /* Index in const list */
 
#define LOAD_NAME   101 /* Index in name list */
 
#define BUILD_TUPLE   102 /* Number of tuple items */
 
#define BUILD_LIST   103 /* Number of list items */
 
#define BUILD_SET   104 /* Number of set items */
 
#define BUILD_MAP   105 /* Always zero for now */
 
#define LOAD_ATTR   106 /* Index in name list */
 
#define COMPARE_OP   107 /* Comparison operator */
 
#define IMPORT_NAME   108 /* Index in name list */
 
#define IMPORT_FROM   109 /* Index in name list */
 
#define JUMP_FORWARD   110 /* Number of bytes to skip */
 
#define JUMP_IF_FALSE_OR_POP
 
#define JUMP_IF_TRUE_OR_POP   112 /* "" */
 
#define JUMP_ABSOLUTE   113 /* "" */
 
#define POP_JUMP_IF_FALSE   114 /* "" */
 
#define POP_JUMP_IF_TRUE   115 /* "" */
 
#define LOAD_GLOBAL   116 /* Index in name list */
 
#define CONTINUE_LOOP   119 /* Start of loop (absolute) */
 
#define SETUP_LOOP   120 /* Target address (relative) */
 
#define SETUP_EXCEPT   121 /* "" */
 
#define SETUP_FINALLY   122 /* "" */
 
#define LOAD_FAST   124 /* Local variable number */
 
#define STORE_FAST   125 /* Local variable number */
 
#define DELETE_FAST   126 /* Local variable number */
 
#define RAISE_VARARGS   130 /* Number of raise arguments (1, 2 or 3) */
 
#define CALL_FUNCTION   131 /* #args + (#kwargs<<8) */
 
#define MAKE_FUNCTION   132 /* #defaults */
 
#define BUILD_SLICE   133 /* Number of items */
 
#define MAKE_CLOSURE   134 /* #free vars */
 
#define LOAD_CLOSURE   135 /* Load free variable from closure */
 
#define LOAD_DEREF   136 /* Load and dereference from closure cell */
 
#define STORE_DEREF   137 /* Store into cell */
 
#define CALL_FUNCTION_VAR   140 /* #args + (#kwargs<<8) */
 
#define CALL_FUNCTION_KW   141 /* #args + (#kwargs<<8) */
 
#define CALL_FUNCTION_VAR_KW   142 /* #args + (#kwargs<<8) */
 
#define SETUP_WITH   143
 
#define EXTENDED_ARG   145
 
#define SET_ADD   146
 
#define MAP_ADD   147
 
#define HAS_ARG(op)   ((op) >= HAVE_ARGUMENT)
 

Enumerations

enum  cmp_op {
  PyCmp_LT =Py_LT, PyCmp_LE =Py_LE, PyCmp_EQ =Py_EQ, PyCmp_NE =Py_NE,
  PyCmp_GT =Py_GT, PyCmp_GE =Py_GE, PyCmp_IN, PyCmp_NOT_IN,
  PyCmp_IS, PyCmp_IS_NOT, PyCmp_EXC_MATCH, PyCmp_BAD
}
 

Macro Definition Documentation

#define BINARY_ADD   23

Definition at line 30 of file opcode.h.

#define BINARY_AND   64

Definition at line 58 of file opcode.h.

#define BINARY_DIVIDE   21

Definition at line 28 of file opcode.h.

#define BINARY_FLOOR_DIVIDE   26

Definition at line 33 of file opcode.h.

#define BINARY_LSHIFT   62

Definition at line 56 of file opcode.h.

#define BINARY_MODULO   22

Definition at line 29 of file opcode.h.

#define BINARY_MULTIPLY   20

Definition at line 27 of file opcode.h.

#define BINARY_OR   66

Definition at line 60 of file opcode.h.

#define BINARY_POWER   19

Definition at line 25 of file opcode.h.

#define BINARY_RSHIFT   63

Definition at line 57 of file opcode.h.

#define BINARY_SUBSCR   25

Definition at line 32 of file opcode.h.

#define BINARY_SUBTRACT   24

Definition at line 31 of file opcode.h.

#define BINARY_TRUE_DIVIDE   27

Definition at line 34 of file opcode.h.

#define BINARY_XOR   65

Definition at line 59 of file opcode.h.

#define BREAK_LOOP   80

Definition at line 74 of file opcode.h.

#define BUILD_CLASS   89

Definition at line 83 of file opcode.h.

#define BUILD_LIST   103 /* Number of list items */

Definition at line 101 of file opcode.h.

#define BUILD_MAP   105 /* Always zero for now */

Definition at line 103 of file opcode.h.

#define BUILD_SET   104 /* Number of set items */

Definition at line 102 of file opcode.h.

#define BUILD_SLICE   133 /* Number of items */

Definition at line 132 of file opcode.h.

#define BUILD_TUPLE   102 /* Number of tuple items */

Definition at line 100 of file opcode.h.

#define CALL_FUNCTION   131 /* #args + (#kwargs<<8) */

Definition at line 130 of file opcode.h.

#define CALL_FUNCTION_KW   141 /* #args + (#kwargs<<8) */

Definition at line 142 of file opcode.h.

#define CALL_FUNCTION_VAR   140 /* #args + (#kwargs<<8) */

Definition at line 141 of file opcode.h.

#define CALL_FUNCTION_VAR_KW   142 /* #args + (#kwargs<<8) */

Definition at line 143 of file opcode.h.

#define COMPARE_OP   107 /* Comparison operator */

Definition at line 105 of file opcode.h.

#define CONTINUE_LOOP   119 /* Start of loop (absolute) */

Definition at line 119 of file opcode.h.

#define DELETE_ATTR   96 /* "" */

Definition at line 94 of file opcode.h.

#define DELETE_FAST   126 /* Local variable number */

Definition at line 126 of file opcode.h.

#define DELETE_GLOBAL   98 /* "" */

Definition at line 96 of file opcode.h.

#define DELETE_NAME   91 /* "" */

Definition at line 88 of file opcode.h.

#define DELETE_SLICE   50

Definition at line 44 of file opcode.h.

#define DELETE_SUBSCR   61

Definition at line 54 of file opcode.h.

#define DUP_TOP   4

Definition at line 14 of file opcode.h.

#define DUP_TOPX   99 /* number of items to duplicate */

Definition at line 97 of file opcode.h.

#define END_FINALLY   88

Definition at line 82 of file opcode.h.

#define EXEC_STMT   85

Definition at line 79 of file opcode.h.

#define EXTENDED_ARG   145

Definition at line 148 of file opcode.h.

#define FOR_ITER   93

Definition at line 90 of file opcode.h.

#define GET_ITER   68

Definition at line 62 of file opcode.h.

#define HAS_ARG (   op)    ((op) >= HAVE_ARGUMENT)

Definition at line 157 of file opcode.h.

#define HAVE_ARGUMENT   90 /* Opcodes from here have an argument: */

Definition at line 85 of file opcode.h.

#define IMPORT_FROM   109 /* Index in name list */

Definition at line 107 of file opcode.h.

#define IMPORT_NAME   108 /* Index in name list */

Definition at line 106 of file opcode.h.

#define IMPORT_STAR   84

Definition at line 78 of file opcode.h.

#define INPLACE_ADD   55

Definition at line 48 of file opcode.h.

#define INPLACE_AND   77

Definition at line 71 of file opcode.h.

#define INPLACE_DIVIDE   58

Definition at line 51 of file opcode.h.

#define INPLACE_FLOOR_DIVIDE   28

Definition at line 35 of file opcode.h.

#define INPLACE_LSHIFT   75

Definition at line 69 of file opcode.h.

#define INPLACE_MODULO   59

Definition at line 52 of file opcode.h.

#define INPLACE_MULTIPLY   57

Definition at line 50 of file opcode.h.

#define INPLACE_OR   79

Definition at line 73 of file opcode.h.

#define INPLACE_POWER   67

Definition at line 61 of file opcode.h.

#define INPLACE_RSHIFT   76

Definition at line 70 of file opcode.h.

#define INPLACE_SUBTRACT   56

Definition at line 49 of file opcode.h.

#define INPLACE_TRUE_DIVIDE   29

Definition at line 36 of file opcode.h.

#define INPLACE_XOR   78

Definition at line 72 of file opcode.h.

#define JUMP_ABSOLUTE   113 /* "" */

Definition at line 113 of file opcode.h.

#define JUMP_FORWARD   110 /* Number of bytes to skip */

Definition at line 108 of file opcode.h.

#define JUMP_IF_FALSE_OR_POP
Value:
111 /* Target byte offset from beginning
of code */

Definition at line 110 of file opcode.h.

#define JUMP_IF_TRUE_OR_POP   112 /* "" */

Definition at line 112 of file opcode.h.

#define LIST_APPEND   94

Definition at line 91 of file opcode.h.

#define LOAD_ATTR   106 /* Index in name list */

Definition at line 104 of file opcode.h.

#define LOAD_CLOSURE   135 /* Load free variable from closure */

Definition at line 135 of file opcode.h.

#define LOAD_CONST   100 /* Index in const list */

Definition at line 98 of file opcode.h.

#define LOAD_DEREF   136 /* Load and dereference from closure cell */

Definition at line 136 of file opcode.h.

#define LOAD_FAST   124 /* Local variable number */

Definition at line 124 of file opcode.h.

#define LOAD_GLOBAL   116 /* Index in name list */

Definition at line 117 of file opcode.h.

#define LOAD_LOCALS   82

Definition at line 76 of file opcode.h.

#define LOAD_NAME   101 /* Index in name list */

Definition at line 99 of file opcode.h.

#define MAKE_CLOSURE   134 /* #free vars */

Definition at line 134 of file opcode.h.

#define MAKE_FUNCTION   132 /* #defaults */

Definition at line 131 of file opcode.h.

#define MAP_ADD   147

Definition at line 151 of file opcode.h.

#define NOP   9

Definition at line 16 of file opcode.h.

#define POP_BLOCK   87

Definition at line 81 of file opcode.h.

#define POP_JUMP_IF_FALSE   114 /* "" */

Definition at line 114 of file opcode.h.

#define POP_JUMP_IF_TRUE   115 /* "" */

Definition at line 115 of file opcode.h.

#define POP_TOP   1

Definition at line 11 of file opcode.h.

#define PRINT_EXPR   70

Definition at line 64 of file opcode.h.

#define PRINT_ITEM   71

Definition at line 65 of file opcode.h.

#define PRINT_ITEM_TO   73

Definition at line 67 of file opcode.h.

#define PRINT_NEWLINE   72

Definition at line 66 of file opcode.h.

#define PRINT_NEWLINE_TO   74

Definition at line 68 of file opcode.h.

#define RAISE_VARARGS   130 /* Number of raise arguments (1, 2 or 3) */

Definition at line 128 of file opcode.h.

#define RETURN_VALUE   83

Definition at line 77 of file opcode.h.

#define ROT_FOUR   5

Definition at line 15 of file opcode.h.

#define ROT_THREE   3

Definition at line 13 of file opcode.h.

#define ROT_TWO   2

Definition at line 12 of file opcode.h.

#define SET_ADD   146

Definition at line 150 of file opcode.h.

#define SETUP_EXCEPT   121 /* "" */

Definition at line 121 of file opcode.h.

#define SETUP_FINALLY   122 /* "" */

Definition at line 122 of file opcode.h.

#define SETUP_LOOP   120 /* Target address (relative) */

Definition at line 120 of file opcode.h.

#define SETUP_WITH   143

Definition at line 145 of file opcode.h.

#define SLICE   30

Definition at line 38 of file opcode.h.

#define STOP_CODE   0

Definition at line 10 of file opcode.h.

#define STORE_ATTR   95 /* Index in name list */

Definition at line 93 of file opcode.h.

#define STORE_DEREF   137 /* Store into cell */

Definition at line 137 of file opcode.h.

#define STORE_FAST   125 /* Local variable number */

Definition at line 125 of file opcode.h.

#define STORE_GLOBAL   97 /* "" */

Definition at line 95 of file opcode.h.

#define STORE_MAP   54

Definition at line 47 of file opcode.h.

#define STORE_NAME   90 /* Index in name list */

Definition at line 87 of file opcode.h.

#define STORE_SLICE   40

Definition at line 41 of file opcode.h.

#define STORE_SUBSCR   60

Definition at line 53 of file opcode.h.

#define UNARY_CONVERT   13

Definition at line 21 of file opcode.h.

#define UNARY_INVERT   15

Definition at line 23 of file opcode.h.

#define UNARY_NEGATIVE   11

Definition at line 19 of file opcode.h.

#define UNARY_NOT   12

Definition at line 20 of file opcode.h.

#define UNARY_POSITIVE   10

Definition at line 18 of file opcode.h.

#define UNPACK_SEQUENCE   92 /* Number of sequence items */

Definition at line 89 of file opcode.h.

#define WITH_CLEANUP   81

Definition at line 75 of file opcode.h.

#define YIELD_VALUE   86

Definition at line 80 of file opcode.h.

Enumeration Type Documentation

enum cmp_op
Enumerator
PyCmp_LT 
PyCmp_LE 
PyCmp_EQ 
PyCmp_NE 
PyCmp_GT 
PyCmp_GE 
PyCmp_IN 
PyCmp_NOT_IN 
PyCmp_IS 
PyCmp_IS_NOT 
PyCmp_EXC_MATCH 
PyCmp_BAD 

Definition at line 154 of file opcode.h.

#define Py_NE
Definition: object.h:855
#define Py_LE
Definition: object.h:853
#define Py_GT
Definition: object.h:856
#define Py_LT
Definition: object.h:852
#define Py_EQ
Definition: object.h:854
#define Py_GE
Definition: object.h:857

Go to the source code of this file.