annotate Include/opcode.h @ 58689:514b56efd89a 3.1

Merged revisions 77962 via svnmerge from svn+ssh://pythondev@svn.python.org/python/branches/py3k ................ r77962 | r.david.murray | 2010-02-04 11:41:57 -0500 (Thu, 04 Feb 2010) | 17 lines Merged revisions 77943,77959-77960 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r77943 | r.david.murray | 2010-02-03 08:36:23 -0500 (Wed, 03 Feb 2010) | 2 lines Explicitly mention the default value for formatdate's usegmt parameter. ........ r77959 | nick.coghlan | 2010-02-04 07:43:58 -0500 (Thu, 04 Feb 2010) | 1 line Issue 6760: Clarify args handling for subprocess.Popen. Patch by Chris Rebert ........ r77960 | r.david.murray | 2010-02-04 11:33:31 -0500 (Thu, 04 Feb 2010) | 2 lines Add Chris Rebert to ACKS for issue 6760 Popen doc improvements. ........ ................
author R. David Murray <rdmurray@bitdance.com>
date Thu, 04 Feb 2010 16:44:31 +0000
parents 643d8d4fc8eb
children 3aaf2e065db0
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1329
519c25039c6a * Added support for X11 modules.
Guido van Rossum <guido@python.org>
parents: 1288
diff changeset
1 #ifndef Py_OPCODE_H
519c25039c6a * Added support for X11 modules.
Guido van Rossum <guido@python.org>
parents: 1288
diff changeset
2 #define Py_OPCODE_H
519c25039c6a * Added support for X11 modules.
Guido van Rossum <guido@python.org>
parents: 1288
diff changeset
3 #ifdef __cplusplus
519c25039c6a * Added support for X11 modules.
Guido van Rossum <guido@python.org>
parents: 1288
diff changeset
4 extern "C" {
519c25039c6a * Added support for X11 modules.
Guido van Rossum <guido@python.org>
parents: 1288
diff changeset
5 #endif
519c25039c6a * Added support for X11 modules.
Guido van Rossum <guido@python.org>
parents: 1288
diff changeset
6
145
853b736a6a9e Added copyright notice.
Guido van Rossum <guido@python.org>
parents: 86
diff changeset
7
69
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
8 /* Instruction opcodes for compiled code */
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
9
86
a6934380c6e7 "Compiling" version
Guido van Rossum <guido@python.org>
parents: 78
diff changeset
10 #define STOP_CODE 0
69
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
11 #define POP_TOP 1
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
12 #define ROT_TWO 2
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
13 #define ROT_THREE 3
86
a6934380c6e7 "Compiling" version
Guido van Rossum <guido@python.org>
parents: 78
diff changeset
14 #define DUP_TOP 4
14162
27d7d89c774b The real suport for augmented assignment: new opcodes, new PyNumber and
Thomas Wouters <thomas@python.org>
parents: 14147
diff changeset
15 #define ROT_FOUR 5
32395
6bc6abba8659 Install two code generation optimizations that depend on NOP.
Raymond Hettinger <python@rcn.com>
parents: 31618
diff changeset
16 #define NOP 9
69
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
17
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
18 #define UNARY_POSITIVE 10
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
19 #define UNARY_NEGATIVE 11
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
20 #define UNARY_NOT 12
2841
64928f6a8e80 keyword arguments and faster function calls
Guido van Rossum <guido@python.org>
parents: 2803
diff changeset
21
409
b5fe6482072f Added shift and mask ops.
Guido van Rossum <guido@python.org>
parents: 178
diff changeset
22 #define UNARY_INVERT 15
69
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
23
3320
4e6d0b26efaf changes for ** (power) operator
Guido van Rossum <guido@python.org>
parents: 2841
diff changeset
24 #define BINARY_POWER 19
4e6d0b26efaf changes for ** (power) operator
Guido van Rossum <guido@python.org>
parents: 2841
diff changeset
25
69
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
26 #define BINARY_MULTIPLY 20
37014
25007c155668 Get rid of last vestiges of BINARY_DIVIDE.
Neal Norwitz <nnorwitz@gmail.com>
parents: 36695
diff changeset
27
69
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
28 #define BINARY_MODULO 22
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
29 #define BINARY_ADD 23
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
30 #define BINARY_SUBTRACT 24
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
31 #define BINARY_SUBSCR 25
19051
f20727cc3d0f Implement PEP 238 in its (almost) full glory.
Guido van Rossum <guido@python.org>
parents: 18148
diff changeset
32 #define BINARY_FLOOR_DIVIDE 26
f20727cc3d0f Implement PEP 238 in its (almost) full glory.
Guido van Rossum <guido@python.org>
parents: 18148
diff changeset
33 #define BINARY_TRUE_DIVIDE 27
f20727cc3d0f Implement PEP 238 in its (almost) full glory.
Guido van Rossum <guido@python.org>
parents: 18148
diff changeset
34 #define INPLACE_FLOOR_DIVIDE 28
f20727cc3d0f Implement PEP 238 in its (almost) full glory.
Guido van Rossum <guido@python.org>
parents: 18148
diff changeset
35 #define INPLACE_TRUE_DIVIDE 29
69
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
36
44349
4dc01402d78a Merged revisions 59541-59561 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 43777
diff changeset
37 #define STORE_MAP 54
14162
27d7d89c774b The real suport for augmented assignment: new opcodes, new PyNumber and
Thomas Wouters <thomas@python.org>
parents: 14147
diff changeset
38 #define INPLACE_ADD 55
27d7d89c774b The real suport for augmented assignment: new opcodes, new PyNumber and
Thomas Wouters <thomas@python.org>
parents: 14147
diff changeset
39 #define INPLACE_SUBTRACT 56
27d7d89c774b The real suport for augmented assignment: new opcodes, new PyNumber and
Thomas Wouters <thomas@python.org>
parents: 14147
diff changeset
40 #define INPLACE_MULTIPLY 57
37057
f7fd11a75a6a INPLACE_DIVIDE is no longer necessary (INPLACE_TRUE_DIVIDE is used).
Neal Norwitz <nnorwitz@gmail.com>
parents: 37014
diff changeset
41
14162
27d7d89c774b The real suport for augmented assignment: new opcodes, new PyNumber and
Thomas Wouters <thomas@python.org>
parents: 14147
diff changeset
42 #define INPLACE_MODULO 59
69
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
43 #define STORE_SUBSCR 60
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
44 #define DELETE_SUBSCR 61
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
45
409
b5fe6482072f Added shift and mask ops.
Guido van Rossum <guido@python.org>
parents: 178
diff changeset
46 #define BINARY_LSHIFT 62
b5fe6482072f Added shift and mask ops.
Guido van Rossum <guido@python.org>
parents: 178
diff changeset
47 #define BINARY_RSHIFT 63
b5fe6482072f Added shift and mask ops.
Guido van Rossum <guido@python.org>
parents: 178
diff changeset
48 #define BINARY_AND 64
b5fe6482072f Added shift and mask ops.
Guido van Rossum <guido@python.org>
parents: 178
diff changeset
49 #define BINARY_XOR 65
b5fe6482072f Added shift and mask ops.
Guido van Rossum <guido@python.org>
parents: 178
diff changeset
50 #define BINARY_OR 66
14162
27d7d89c774b The real suport for augmented assignment: new opcodes, new PyNumber and
Thomas Wouters <thomas@python.org>
parents: 14147
diff changeset
51 #define INPLACE_POWER 67
17597
32e7d0898eab Iterators phase 1. This comprises:
Guido van Rossum <guido@python.org>
parents: 16398
diff changeset
52 #define GET_ITER 68
41226
19f7ff443718 Implement PEP 3115 -- new metaclass syntax and semantics.
Guido van Rossum <guido@python.org>
parents: 40894
diff changeset
53 #define STORE_LOCALS 69
69
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
54 #define PRINT_EXPR 70
41226
19f7ff443718 Implement PEP 3115 -- new metaclass syntax and semantics.
Guido van Rossum <guido@python.org>
parents: 40894
diff changeset
55 #define LOAD_BUILD_CLASS 71
40788
e9a6234b26af * Remove PRINT_ITEM(_TO), PRINT_NEWLINE(_TO) opcodes.
Georg Brandl <georg@python.org>
parents: 39782
diff changeset
56
14162
27d7d89c774b The real suport for augmented assignment: new opcodes, new PyNumber and
Thomas Wouters <thomas@python.org>
parents: 14147
diff changeset
57 #define INPLACE_LSHIFT 75
27d7d89c774b The real suport for augmented assignment: new opcodes, new PyNumber and
Thomas Wouters <thomas@python.org>
parents: 14147
diff changeset
58 #define INPLACE_RSHIFT 76
27d7d89c774b The real suport for augmented assignment: new opcodes, new PyNumber and
Thomas Wouters <thomas@python.org>
parents: 14147
diff changeset
59 #define INPLACE_AND 77
27d7d89c774b The real suport for augmented assignment: new opcodes, new PyNumber and
Thomas Wouters <thomas@python.org>
parents: 14147
diff changeset
60 #define INPLACE_XOR 78
27d7d89c774b The real suport for augmented assignment: new opcodes, new PyNumber and
Thomas Wouters <thomas@python.org>
parents: 14147
diff changeset
61 #define INPLACE_OR 79
69
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
62 #define BREAK_LOOP 80
36695
b6d2f6fd3e11 PEP 343 -- the with-statement.
Guido van Rossum <guido@python.org>
parents: 32395
diff changeset
63 #define WITH_CLEANUP 81
41226
19f7ff443718 Implement PEP 3115 -- new metaclass syntax and semantics.
Guido van Rossum <guido@python.org>
parents: 40894
diff changeset
64
69
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
65 #define RETURN_VALUE 83
14038
18385172fac0 Apply SF patch #101135, adding 'import module as m' and 'from module import
Thomas Wouters <thomas@python.org>
parents: 13930
diff changeset
66 #define IMPORT_STAR 84
43777
0d462d789b18 Merging the py3k-pep3137 branch back into the py3k branch.
Guido van Rossum <guido@python.org>
parents: 43100
diff changeset
67
18148
7bc473b2c654 Merging the gen-branch into the main line, at Guido's direction. Yay!
Tim Peters <tim.peters@gmail.com>
parents: 17597
diff changeset
68 #define YIELD_VALUE 86
69
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
69 #define POP_BLOCK 87
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
70 #define END_FINALLY 88
47594
212a1fee6bf9 #3021: Antoine Pitrou's Lexical exception handlers
Benjamin Peterson <benjamin@python.org>
parents: 44349
diff changeset
71 #define POP_EXCEPT 89
69
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
72
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
73 #define HAVE_ARGUMENT 90 /* Opcodes from here have an argument: */
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
74
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
75 #define STORE_NAME 90 /* Index in name list */
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
76 #define DELETE_NAME 91 /* "" */
13930
4eaa463c031a Merge UNPACK_LIST and UNPACK_TUPLE into a single UNPACK_SEQUENCE, since they
Thomas Wouters <thomas@python.org>
parents: 13256
diff changeset
77 #define UNPACK_SEQUENCE 92 /* Number of sequence items */
17597
32e7d0898eab Iterators phase 1. This comprises:
Guido van Rossum <guido@python.org>
parents: 16398
diff changeset
78 #define FOR_ITER 93
41699
e16c8e5c5ca4 Merged revisions 55225-55227,55229-55269 via svnmerge from
Guido van Rossum <guido@python.org>
parents: 41464
diff changeset
79 #define UNPACK_EX 94 /* Num items before variable part +
e16c8e5c5ca4 Merged revisions 55225-55227,55229-55269 via svnmerge from
Guido van Rossum <guido@python.org>
parents: 41464
diff changeset
80 (Num items after variable part << 8) */
13930
4eaa463c031a Merge UNPACK_LIST and UNPACK_TUPLE into a single UNPACK_SEQUENCE, since they
Thomas Wouters <thomas@python.org>
parents: 13256
diff changeset
81
69
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
82 #define STORE_ATTR 95 /* Index in name list */
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
83 #define DELETE_ATTR 96 /* "" */
474
19365201dcfa Added _GLOBAL opcodes.
Guido van Rossum <guido@python.org>
parents: 409
diff changeset
84 #define STORE_GLOBAL 97 /* "" */
19365201dcfa Added _GLOBAL opcodes.
Guido van Rossum <guido@python.org>
parents: 409
diff changeset
85 #define DELETE_GLOBAL 98 /* "" */
14162
27d7d89c774b The real suport for augmented assignment: new opcodes, new PyNumber and
Thomas Wouters <thomas@python.org>
parents: 14147
diff changeset
86 #define DUP_TOPX 99 /* number of items to duplicate */
69
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
87 #define LOAD_CONST 100 /* Index in const list */
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
88 #define LOAD_NAME 101 /* Index in name list */
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
89 #define BUILD_TUPLE 102 /* Number of tuple items */
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
90 #define BUILD_LIST 103 /* Number of list items */
39693
d0b83c4630c0 SF patch 1547796 by Georg Brandl -- set literals.
Guido van Rossum <guido@python.org>
parents: 39678
diff changeset
91 #define BUILD_SET 104 /* Number of set items */
d0b83c4630c0 SF patch 1547796 by Georg Brandl -- set literals.
Guido van Rossum <guido@python.org>
parents: 39678
diff changeset
92 #define BUILD_MAP 105 /* Always zero for now */
d0b83c4630c0 SF patch 1547796 by Georg Brandl -- set literals.
Guido van Rossum <guido@python.org>
parents: 39678
diff changeset
93 #define LOAD_ATTR 106 /* Index in name list */
d0b83c4630c0 SF patch 1547796 by Georg Brandl -- set literals.
Guido van Rossum <guido@python.org>
parents: 39678
diff changeset
94 #define COMPARE_OP 107 /* Comparison operator */
d0b83c4630c0 SF patch 1547796 by Georg Brandl -- set literals.
Guido van Rossum <guido@python.org>
parents: 39678
diff changeset
95 #define IMPORT_NAME 108 /* Index in name list */
d0b83c4630c0 SF patch 1547796 by Georg Brandl -- set literals.
Guido van Rossum <guido@python.org>
parents: 39678
diff changeset
96 #define IMPORT_FROM 109 /* Index in name list */
69
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
97
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
98 #define JUMP_FORWARD 110 /* Number of bytes to skip */
51853
643d8d4fc8eb http://bugs.python.org/issue4715
Jeffrey Yasskin <jyasskin@gmail.com>
parents: 50211
diff changeset
99 #define JUMP_IF_FALSE_OR_POP 111 /* Target byte offset from beginning of code */
643d8d4fc8eb http://bugs.python.org/issue4715
Jeffrey Yasskin <jyasskin@gmail.com>
parents: 50211
diff changeset
100 #define JUMP_IF_TRUE_OR_POP 112 /* "" */
643d8d4fc8eb http://bugs.python.org/issue4715
Jeffrey Yasskin <jyasskin@gmail.com>
parents: 50211
diff changeset
101 #define JUMP_ABSOLUTE 113 /* "" */
643d8d4fc8eb http://bugs.python.org/issue4715
Jeffrey Yasskin <jyasskin@gmail.com>
parents: 50211
diff changeset
102 #define POP_JUMP_IF_FALSE 114 /* "" */
643d8d4fc8eb http://bugs.python.org/issue4715
Jeffrey Yasskin <jyasskin@gmail.com>
parents: 50211
diff changeset
103 #define POP_JUMP_IF_TRUE 115 /* "" */
69
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
104
178
fb6367d5ff46 Added opcodes to load local/global variables
Guido van Rossum <guido@python.org>
parents: 145
diff changeset
105 #define LOAD_GLOBAL 116 /* Index in name list */
fb6367d5ff46 Added opcodes to load local/global variables
Guido van Rossum <guido@python.org>
parents: 145
diff changeset
106
16398
80c0b280a4f9 Allow 'continue' inside 'try' clause
Jeremy Hylton <jeremy@alum.mit.edu>
parents: 16257
diff changeset
107 #define CONTINUE_LOOP 119 /* Start of loop (absolute) */
42309
bd6acfdb47d2 Merged revisions 56301-56442 via svnmerge from
Guido van Rossum <guido@python.org>
parents: 41699
diff changeset
108 #define SETUP_LOOP 120 /* Target address (relative) */
69
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
109 #define SETUP_EXCEPT 121 /* "" */
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
110 #define SETUP_FINALLY 122 /* "" */
cccd534f2280 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
111
1262
f820e6917f07 Changes to speed up local variables enormously, by avoiding dictionary
Guido van Rossum <guido@python.org>
parents: 1257
diff changeset
112 #define LOAD_FAST 124 /* Local variable number */
f820e6917f07 Changes to speed up local variables enormously, by avoiding dictionary
Guido van Rossum <guido@python.org>
parents: 1257
diff changeset
113 #define STORE_FAST 125 /* Local variable number */
f820e6917f07 Changes to speed up local variables enormously, by avoiding dictionary
Guido van Rossum <guido@python.org>
parents: 1257
diff changeset
114 #define DELETE_FAST 126 /* Local variable number */
f820e6917f07 Changes to speed up local variables enormously, by avoiding dictionary
Guido van Rossum <guido@python.org>
parents: 1257
diff changeset
115
2803
a2363b6e9c86 new opcodes RAISE_VARARGS, CALL_FUNCTION
Guido van Rossum <guido@python.org>
parents: 2058
diff changeset
116 #define RAISE_VARARGS 130 /* Number of raise arguments (1, 2 or 3) */
12082
603db0d0aed1 slightly modified version of Greg Ewing's extended call syntax patch
Jeremy Hylton <jeremy@alum.mit.edu>
parents: 8627
diff changeset
117 /* CALL_FUNCTION_XXX opcodes defined below depend on this definition */
2803
a2363b6e9c86 new opcodes RAISE_VARARGS, CALL_FUNCTION
Guido van Rossum <guido@python.org>
parents: 2058
diff changeset
118 #define CALL_FUNCTION 131 /* #args + (#kwargs<<8) */
41226
19f7ff443718 Implement PEP 3115 -- new metaclass syntax and semantics.
Guido van Rossum <guido@python.org>
parents: 40894
diff changeset
119 #define MAKE_FUNCTION 132 /* #defaults + #kwdefaults<<8 + #annotations<<16 */
3832
039bc3e4e64e Added BUILD_SLICE opcode.
Guido van Rossum <guido@python.org>
parents: 3320
diff changeset
120 #define BUILD_SLICE 133 /* Number of items */
2803
a2363b6e9c86 new opcodes RAISE_VARARGS, CALL_FUNCTION
Guido van Rossum <guido@python.org>
parents: 2058
diff changeset
121
41226
19f7ff443718 Implement PEP 3115 -- new metaclass syntax and semantics.
Guido van Rossum <guido@python.org>
parents: 40894
diff changeset
122 #define MAKE_CLOSURE 134 /* same as MAKE_FUNCTION */
16257
fd8c7203251f PEP 227 implementation
Jeremy Hylton <jeremy@alum.mit.edu>
parents: 15939
diff changeset
123 #define LOAD_CLOSURE 135 /* Load free variable from closure */
fd8c7203251f PEP 227 implementation
Jeremy Hylton <jeremy@alum.mit.edu>
parents: 15939
diff changeset
124 #define LOAD_DEREF 136 /* Load and dereference from closure cell */
fd8c7203251f PEP 227 implementation
Jeremy Hylton <jeremy@alum.mit.edu>
parents: 15939
diff changeset
125 #define STORE_DEREF 137 /* Store into cell */
fd8c7203251f PEP 227 implementation
Jeremy Hylton <jeremy@alum.mit.edu>
parents: 15939
diff changeset
126
12082
603db0d0aed1 slightly modified version of Greg Ewing's extended call syntax patch
Jeremy Hylton <jeremy@alum.mit.edu>
parents: 8627
diff changeset
127 /* The next 3 opcodes must be contiguous and satisfy
12085
25b63367385e remove reference to CALL_FUNCTION_STAR in comment
Jeremy Hylton <jeremy@alum.mit.edu>
parents: 12082
diff changeset
128 (CALL_FUNCTION_VAR - CALL_FUNCTION) & 3 == 1 */
12082
603db0d0aed1 slightly modified version of Greg Ewing's extended call syntax patch
Jeremy Hylton <jeremy@alum.mit.edu>
parents: 8627
diff changeset
129 #define CALL_FUNCTION_VAR 140 /* #args + (#kwargs<<8) */
603db0d0aed1 slightly modified version of Greg Ewing's extended call syntax patch
Jeremy Hylton <jeremy@alum.mit.edu>
parents: 8627
diff changeset
130 #define CALL_FUNCTION_KW 141 /* #args + (#kwargs<<8) */
603db0d0aed1 slightly modified version of Greg Ewing's extended call syntax patch
Jeremy Hylton <jeremy@alum.mit.edu>
parents: 8627
diff changeset
131 #define CALL_FUNCTION_VAR_KW 142 /* #args + (#kwargs<<8) */
603db0d0aed1 slightly modified version of Greg Ewing's extended call syntax patch
Jeremy Hylton <jeremy@alum.mit.edu>
parents: 8627
diff changeset
132
14147
21ec69a56228 Charles G. Waldman <cgw@fnal.gov>:
Fred Drake <fdrake@acm.org>
parents: 14098
diff changeset
133 /* Support for opargs more than 16 bits long */
21ec69a56228 Charles G. Waldman <cgw@fnal.gov>:
Fred Drake <fdrake@acm.org>
parents: 14098
diff changeset
134 #define EXTENDED_ARG 143
21ec69a56228 Charles G. Waldman <cgw@fnal.gov>:
Fred Drake <fdrake@acm.org>
parents: 14098
diff changeset
135
50211
2ee4653927f7 Merged revisions 67818 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents: 47594
diff changeset
136 #define LIST_APPEND 145
2ee4653927f7 Merged revisions 67818 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents: 47594
diff changeset
137 #define SET_ADD 146
2ee4653927f7 Merged revisions 67818 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents: 47594
diff changeset
138 #define MAP_ADD 147
2ee4653927f7 Merged revisions 67818 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents: 47594
diff changeset
139
21609
3ba0f1b20320 Patch #494783: Rename cmp_op enumerators.
Martin v. Löwis <martin@v.loewis.de>
parents: 19051
diff changeset
140
47594
212a1fee6bf9 #3021: Antoine Pitrou's Lexical exception handlers
Benjamin Peterson <benjamin@python.org>
parents: 44349
diff changeset
141 /* EXCEPT_HANDLER is a special, implicit block type which is created when
212a1fee6bf9 #3021: Antoine Pitrou's Lexical exception handlers
Benjamin Peterson <benjamin@python.org>
parents: 44349
diff changeset
142 entering an except handler. It is not an opcode but we define it here
212a1fee6bf9 #3021: Antoine Pitrou's Lexical exception handlers
Benjamin Peterson <benjamin@python.org>
parents: 44349
diff changeset
143 as we want it to be available to both frameobject.c and ceval.c, while
212a1fee6bf9 #3021: Antoine Pitrou's Lexical exception handlers
Benjamin Peterson <benjamin@python.org>
parents: 44349
diff changeset
144 remaining private.*/
212a1fee6bf9 #3021: Antoine Pitrou's Lexical exception handlers
Benjamin Peterson <benjamin@python.org>
parents: 44349
diff changeset
145 #define EXCEPT_HANDLER 257
212a1fee6bf9 #3021: Antoine Pitrou's Lexical exception handlers
Benjamin Peterson <benjamin@python.org>
parents: 44349
diff changeset
146
212a1fee6bf9 #3021: Antoine Pitrou's Lexical exception handlers
Benjamin Peterson <benjamin@python.org>
parents: 44349
diff changeset
147
21609
3ba0f1b20320 Patch #494783: Rename cmp_op enumerators.
Martin v. Löwis <martin@v.loewis.de>
parents: 19051
diff changeset
148 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,
3ba0f1b20320 Patch #494783: Rename cmp_op enumerators.
Martin v. Löwis <martin@v.loewis.de>
parents: 19051
diff changeset
149 PyCmp_IN, PyCmp_NOT_IN, PyCmp_IS, PyCmp_IS_NOT, PyCmp_EXC_MATCH, PyCmp_BAD};
86
a6934380c6e7 "Compiling" version
Guido van Rossum <guido@python.org>
parents: 78
diff changeset
150
a6934380c6e7 "Compiling" version
Guido van Rossum <guido@python.org>
parents: 78
diff changeset
151 #define HAS_ARG(op) ((op) >= HAVE_ARGUMENT)
1329
519c25039c6a * Added support for X11 modules.
Guido van Rossum <guido@python.org>
parents: 1288
diff changeset
152
519c25039c6a * Added support for X11 modules.
Guido van Rossum <guido@python.org>
parents: 1288
diff changeset
153 #ifdef __cplusplus
519c25039c6a * Added support for X11 modules.
Guido van Rossum <guido@python.org>
parents: 1288
diff changeset
154 }
519c25039c6a * Added support for X11 modules.
Guido van Rossum <guido@python.org>
parents: 1288
diff changeset
155 #endif
519c25039c6a * Added support for X11 modules.
Guido van Rossum <guido@python.org>
parents: 1288
diff changeset
156 #endif /* !Py_OPCODE_H */