Skip to content

Commit 61199be

Browse files
committed
Moved to new file, killing a lot of warnings
1 parent 7894e39 commit 61199be

File tree

3 files changed

+196
-165
lines changed

3 files changed

+196
-165
lines changed

Zend/zend_vm_gen.php

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1202,22 +1202,32 @@ function gen_vm($def, $skel) {
12021202
out($f, $GLOBALS['header_text']);
12031203

12041204
fputs($f, "#ifndef ZEND_VM_OPCODES_H\n#define ZEND_VM_OPCODES_H\n\n");
1205+
fputs($f, "extern ZEND_API const char *zend_vm_opcodes_map[".($max_opcode + 1)."];\n\n");
12051206

12061207
foreach ($opcodes as $code => $dsc) {
12071208
$code = str_pad((string)$code,$code_len," ",STR_PAD_LEFT);
12081209
$op = str_pad($dsc["op"],$max_opcode_len);
12091210
fputs($f,"#define $op $code\n");
12101211
}
12111212

1212-
fputs($f,"\nstatic const char *zend_vm_opcodes_map[] = {\n");
1213+
fputs($f, "\n#endif");
1214+
fclose($f);
1215+
echo "zend_vm_opcodes.h generated successfully.\n";
1216+
1217+
// zend_vm_opcodes.c
1218+
$f = fopen("zend_vm_opcodes.c", "w+") or die("ERROR: Cannot create zend_vm_opcodes.c\n");
1219+
1220+
// Insert header
1221+
out($f, $GLOBALS['header_text']);
1222+
1223+
fputs($f,"const char *zend_vm_opcodes_map[".($max_opcode + 1)."] = {\n");
12131224
for ($i = 0; $i <= $max_opcode; $i++) {
12141225
fputs($f,"\t".(isset($opcodes[$i]["op"])?'"'.$opcodes[$i]["op"].'"':"NULL").",\n");
12151226
}
12161227
fputs($f, "};\n");
12171228

1218-
fputs($f, "\n#endif");
12191229
fclose($f);
1220-
echo "zend_vm_opcodes.h generated successfully.\n";
1230+
echo "zend_vm_opcodes.c generated successfully.\n";
12211231

12221232
// Generate zend_vm_execute.h
12231233
$f = fopen("zend_vm_execute.h", "w+") or die("ERROR: Cannot create zend_vm_execute.h\n");

Zend/zend_vm_opcodes.c

Lines changed: 181 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,181 @@
1+
/*
2+
+----------------------------------------------------------------------+
3+
| Zend Engine |
4+
+----------------------------------------------------------------------+
5+
| Copyright (c) 1998-2013 Zend Technologies Ltd. (http://www.zend.com) |
6+
+----------------------------------------------------------------------+
7+
| This source file is subject to version 2.00 of the Zend license, |
8+
| that is bundled with this package in the file LICENSE, and is |
9+
| available through the world-wide-web at the following url: |
10+
| http://www.zend.com/license/2_00.txt. |
11+
| If you did not receive a copy of the Zend license and are unable to |
12+
| obtain it through the world-wide-web, please send a note to |
13+
| license@zend.com so we can mail you a copy immediately. |
14+
+----------------------------------------------------------------------+
15+
| Authors: Andi Gutmans <andi@zend.com> |
16+
| Zeev Suraski <zeev@zend.com> |
17+
| Dmitry Stogov <dmitry@zend.com> |
18+
+----------------------------------------------------------------------+
19+
*/
20+
21+
const char *zend_vm_opcodes_map[159] = {
22+
"ZEND_NOP",
23+
"ZEND_ADD",
24+
"ZEND_SUB",
25+
"ZEND_MUL",
26+
"ZEND_DIV",
27+
"ZEND_MOD",
28+
"ZEND_SL",
29+
"ZEND_SR",
30+
"ZEND_CONCAT",
31+
"ZEND_BW_OR",
32+
"ZEND_BW_AND",
33+
"ZEND_BW_XOR",
34+
"ZEND_BW_NOT",
35+
"ZEND_BOOL_NOT",
36+
"ZEND_BOOL_XOR",
37+
"ZEND_IS_IDENTICAL",
38+
"ZEND_IS_NOT_IDENTICAL",
39+
"ZEND_IS_EQUAL",
40+
"ZEND_IS_NOT_EQUAL",
41+
"ZEND_IS_SMALLER",
42+
"ZEND_IS_SMALLER_OR_EQUAL",
43+
"ZEND_CAST",
44+
"ZEND_QM_ASSIGN",
45+
"ZEND_ASSIGN_ADD",
46+
"ZEND_ASSIGN_SUB",
47+
"ZEND_ASSIGN_MUL",
48+
"ZEND_ASSIGN_DIV",
49+
"ZEND_ASSIGN_MOD",
50+
"ZEND_ASSIGN_SL",
51+
"ZEND_ASSIGN_SR",
52+
"ZEND_ASSIGN_CONCAT",
53+
"ZEND_ASSIGN_BW_OR",
54+
"ZEND_ASSIGN_BW_AND",
55+
"ZEND_ASSIGN_BW_XOR",
56+
"ZEND_PRE_INC",
57+
"ZEND_PRE_DEC",
58+
"ZEND_POST_INC",
59+
"ZEND_POST_DEC",
60+
"ZEND_ASSIGN",
61+
"ZEND_ASSIGN_REF",
62+
"ZEND_ECHO",
63+
"ZEND_PRINT",
64+
"ZEND_JMP",
65+
"ZEND_JMPZ",
66+
"ZEND_JMPNZ",
67+
"ZEND_JMPZNZ",
68+
"ZEND_JMPZ_EX",
69+
"ZEND_JMPNZ_EX",
70+
"ZEND_CASE",
71+
"ZEND_SWITCH_FREE",
72+
"ZEND_BRK",
73+
"ZEND_CONT",
74+
"ZEND_BOOL",
75+
"ZEND_INIT_STRING",
76+
"ZEND_ADD_CHAR",
77+
"ZEND_ADD_STRING",
78+
"ZEND_ADD_VAR",
79+
"ZEND_BEGIN_SILENCE",
80+
"ZEND_END_SILENCE",
81+
"ZEND_INIT_FCALL_BY_NAME",
82+
"ZEND_DO_FCALL",
83+
"ZEND_DO_FCALL_BY_NAME",
84+
"ZEND_RETURN",
85+
"ZEND_RECV",
86+
"ZEND_RECV_INIT",
87+
"ZEND_SEND_VAL",
88+
"ZEND_SEND_VAR",
89+
"ZEND_SEND_REF",
90+
"ZEND_NEW",
91+
"ZEND_INIT_NS_FCALL_BY_NAME",
92+
"ZEND_FREE",
93+
"ZEND_INIT_ARRAY",
94+
"ZEND_ADD_ARRAY_ELEMENT",
95+
"ZEND_INCLUDE_OR_EVAL",
96+
"ZEND_UNSET_VAR",
97+
"ZEND_UNSET_DIM",
98+
"ZEND_UNSET_OBJ",
99+
"ZEND_FE_RESET",
100+
"ZEND_FE_FETCH",
101+
"ZEND_EXIT",
102+
"ZEND_FETCH_R",
103+
"ZEND_FETCH_DIM_R",
104+
"ZEND_FETCH_OBJ_R",
105+
"ZEND_FETCH_W",
106+
"ZEND_FETCH_DIM_W",
107+
"ZEND_FETCH_OBJ_W",
108+
"ZEND_FETCH_RW",
109+
"ZEND_FETCH_DIM_RW",
110+
"ZEND_FETCH_OBJ_RW",
111+
"ZEND_FETCH_IS",
112+
"ZEND_FETCH_DIM_IS",
113+
"ZEND_FETCH_OBJ_IS",
114+
"ZEND_FETCH_FUNC_ARG",
115+
"ZEND_FETCH_DIM_FUNC_ARG",
116+
"ZEND_FETCH_OBJ_FUNC_ARG",
117+
"ZEND_FETCH_UNSET",
118+
"ZEND_FETCH_DIM_UNSET",
119+
"ZEND_FETCH_OBJ_UNSET",
120+
"ZEND_FETCH_DIM_TMP_VAR",
121+
"ZEND_FETCH_CONSTANT",
122+
"ZEND_GOTO",
123+
"ZEND_EXT_STMT",
124+
"ZEND_EXT_FCALL_BEGIN",
125+
"ZEND_EXT_FCALL_END",
126+
"ZEND_EXT_NOP",
127+
"ZEND_TICKS",
128+
"ZEND_SEND_VAR_NO_REF",
129+
"ZEND_CATCH",
130+
"ZEND_THROW",
131+
"ZEND_FETCH_CLASS",
132+
"ZEND_CLONE",
133+
"ZEND_RETURN_BY_REF",
134+
"ZEND_INIT_METHOD_CALL",
135+
"ZEND_INIT_STATIC_METHOD_CALL",
136+
"ZEND_ISSET_ISEMPTY_VAR",
137+
"ZEND_ISSET_ISEMPTY_DIM_OBJ",
138+
NULL,
139+
NULL,
140+
NULL,
141+
NULL,
142+
NULL,
143+
NULL,
144+
NULL,
145+
NULL,
146+
NULL,
147+
NULL,
148+
NULL,
149+
NULL,
150+
NULL,
151+
NULL,
152+
NULL,
153+
NULL,
154+
"ZEND_PRE_INC_OBJ",
155+
"ZEND_PRE_DEC_OBJ",
156+
"ZEND_POST_INC_OBJ",
157+
"ZEND_POST_DEC_OBJ",
158+
"ZEND_ASSIGN_OBJ",
159+
NULL,
160+
"ZEND_INSTANCEOF",
161+
"ZEND_DECLARE_CLASS",
162+
"ZEND_DECLARE_INHERITED_CLASS",
163+
"ZEND_DECLARE_FUNCTION",
164+
"ZEND_RAISE_ABSTRACT_ERROR",
165+
"ZEND_DECLARE_CONST",
166+
"ZEND_ADD_INTERFACE",
167+
"ZEND_DECLARE_INHERITED_CLASS_DELAYED",
168+
"ZEND_VERIFY_ABSTRACT_CLASS",
169+
"ZEND_ASSIGN_DIM",
170+
"ZEND_ISSET_ISEMPTY_PROP_OBJ",
171+
"ZEND_HANDLE_EXCEPTION",
172+
"ZEND_USER_OPCODE",
173+
NULL,
174+
"ZEND_JMP_SET",
175+
"ZEND_DECLARE_LAMBDA_FUNCTION",
176+
"ZEND_ADD_TRAIT",
177+
"ZEND_BIND_TRAITS",
178+
"ZEND_SEPARATE",
179+
"ZEND_QM_ASSIGN_VAR",
180+
"ZEND_JMP_SET_VAR",
181+
};

Zend/zend_vm_opcodes.h

Lines changed: 2 additions & 162 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@
2121
#ifndef ZEND_VM_OPCODES_H
2222
#define ZEND_VM_OPCODES_H
2323

24+
extern ZEND_API const char *zend_vm_opcodes_map[159];
25+
2426
#define ZEND_NOP 0
2527
#define ZEND_ADD 1
2628
#define ZEND_SUB 2
@@ -163,166 +165,4 @@
163165
#define ZEND_QM_ASSIGN_VAR 157
164166
#define ZEND_JMP_SET_VAR 158
165167

166-
static const char *zend_vm_opcodes_map[] = {
167-
"ZEND_NOP",
168-
"ZEND_ADD",
169-
"ZEND_SUB",
170-
"ZEND_MUL",
171-
"ZEND_DIV",
172-
"ZEND_MOD",
173-
"ZEND_SL",
174-
"ZEND_SR",
175-
"ZEND_CONCAT",
176-
"ZEND_BW_OR",
177-
"ZEND_BW_AND",
178-
"ZEND_BW_XOR",
179-
"ZEND_BW_NOT",
180-
"ZEND_BOOL_NOT",
181-
"ZEND_BOOL_XOR",
182-
"ZEND_IS_IDENTICAL",
183-
"ZEND_IS_NOT_IDENTICAL",
184-
"ZEND_IS_EQUAL",
185-
"ZEND_IS_NOT_EQUAL",
186-
"ZEND_IS_SMALLER",
187-
"ZEND_IS_SMALLER_OR_EQUAL",
188-
"ZEND_CAST",
189-
"ZEND_QM_ASSIGN",
190-
"ZEND_ASSIGN_ADD",
191-
"ZEND_ASSIGN_SUB",
192-
"ZEND_ASSIGN_MUL",
193-
"ZEND_ASSIGN_DIV",
194-
"ZEND_ASSIGN_MOD",
195-
"ZEND_ASSIGN_SL",
196-
"ZEND_ASSIGN_SR",
197-
"ZEND_ASSIGN_CONCAT",
198-
"ZEND_ASSIGN_BW_OR",
199-
"ZEND_ASSIGN_BW_AND",
200-
"ZEND_ASSIGN_BW_XOR",
201-
"ZEND_PRE_INC",
202-
"ZEND_PRE_DEC",
203-
"ZEND_POST_INC",
204-
"ZEND_POST_DEC",
205-
"ZEND_ASSIGN",
206-
"ZEND_ASSIGN_REF",
207-
"ZEND_ECHO",
208-
"ZEND_PRINT",
209-
"ZEND_JMP",
210-
"ZEND_JMPZ",
211-
"ZEND_JMPNZ",
212-
"ZEND_JMPZNZ",
213-
"ZEND_JMPZ_EX",
214-
"ZEND_JMPNZ_EX",
215-
"ZEND_CASE",
216-
"ZEND_SWITCH_FREE",
217-
"ZEND_BRK",
218-
"ZEND_CONT",
219-
"ZEND_BOOL",
220-
"ZEND_INIT_STRING",
221-
"ZEND_ADD_CHAR",
222-
"ZEND_ADD_STRING",
223-
"ZEND_ADD_VAR",
224-
"ZEND_BEGIN_SILENCE",
225-
"ZEND_END_SILENCE",
226-
"ZEND_INIT_FCALL_BY_NAME",
227-
"ZEND_DO_FCALL",
228-
"ZEND_DO_FCALL_BY_NAME",
229-
"ZEND_RETURN",
230-
"ZEND_RECV",
231-
"ZEND_RECV_INIT",
232-
"ZEND_SEND_VAL",
233-
"ZEND_SEND_VAR",
234-
"ZEND_SEND_REF",
235-
"ZEND_NEW",
236-
"ZEND_INIT_NS_FCALL_BY_NAME",
237-
"ZEND_FREE",
238-
"ZEND_INIT_ARRAY",
239-
"ZEND_ADD_ARRAY_ELEMENT",
240-
"ZEND_INCLUDE_OR_EVAL",
241-
"ZEND_UNSET_VAR",
242-
"ZEND_UNSET_DIM",
243-
"ZEND_UNSET_OBJ",
244-
"ZEND_FE_RESET",
245-
"ZEND_FE_FETCH",
246-
"ZEND_EXIT",
247-
"ZEND_FETCH_R",
248-
"ZEND_FETCH_DIM_R",
249-
"ZEND_FETCH_OBJ_R",
250-
"ZEND_FETCH_W",
251-
"ZEND_FETCH_DIM_W",
252-
"ZEND_FETCH_OBJ_W",
253-
"ZEND_FETCH_RW",
254-
"ZEND_FETCH_DIM_RW",
255-
"ZEND_FETCH_OBJ_RW",
256-
"ZEND_FETCH_IS",
257-
"ZEND_FETCH_DIM_IS",
258-
"ZEND_FETCH_OBJ_IS",
259-
"ZEND_FETCH_FUNC_ARG",
260-
"ZEND_FETCH_DIM_FUNC_ARG",
261-
"ZEND_FETCH_OBJ_FUNC_ARG",
262-
"ZEND_FETCH_UNSET",
263-
"ZEND_FETCH_DIM_UNSET",
264-
"ZEND_FETCH_OBJ_UNSET",
265-
"ZEND_FETCH_DIM_TMP_VAR",
266-
"ZEND_FETCH_CONSTANT",
267-
"ZEND_GOTO",
268-
"ZEND_EXT_STMT",
269-
"ZEND_EXT_FCALL_BEGIN",
270-
"ZEND_EXT_FCALL_END",
271-
"ZEND_EXT_NOP",
272-
"ZEND_TICKS",
273-
"ZEND_SEND_VAR_NO_REF",
274-
"ZEND_CATCH",
275-
"ZEND_THROW",
276-
"ZEND_FETCH_CLASS",
277-
"ZEND_CLONE",
278-
"ZEND_RETURN_BY_REF",
279-
"ZEND_INIT_METHOD_CALL",
280-
"ZEND_INIT_STATIC_METHOD_CALL",
281-
"ZEND_ISSET_ISEMPTY_VAR",
282-
"ZEND_ISSET_ISEMPTY_DIM_OBJ",
283-
NULL,
284-
NULL,
285-
NULL,
286-
NULL,
287-
NULL,
288-
NULL,
289-
NULL,
290-
NULL,
291-
NULL,
292-
NULL,
293-
NULL,
294-
NULL,
295-
NULL,
296-
NULL,
297-
NULL,
298-
NULL,
299-
"ZEND_PRE_INC_OBJ",
300-
"ZEND_PRE_DEC_OBJ",
301-
"ZEND_POST_INC_OBJ",
302-
"ZEND_POST_DEC_OBJ",
303-
"ZEND_ASSIGN_OBJ",
304-
NULL,
305-
"ZEND_INSTANCEOF",
306-
"ZEND_DECLARE_CLASS",
307-
"ZEND_DECLARE_INHERITED_CLASS",
308-
"ZEND_DECLARE_FUNCTION",
309-
"ZEND_RAISE_ABSTRACT_ERROR",
310-
"ZEND_DECLARE_CONST",
311-
"ZEND_ADD_INTERFACE",
312-
"ZEND_DECLARE_INHERITED_CLASS_DELAYED",
313-
"ZEND_VERIFY_ABSTRACT_CLASS",
314-
"ZEND_ASSIGN_DIM",
315-
"ZEND_ISSET_ISEMPTY_PROP_OBJ",
316-
"ZEND_HANDLE_EXCEPTION",
317-
"ZEND_USER_OPCODE",
318-
NULL,
319-
"ZEND_JMP_SET",
320-
"ZEND_DECLARE_LAMBDA_FUNCTION",
321-
"ZEND_ADD_TRAIT",
322-
"ZEND_BIND_TRAITS",
323-
"ZEND_SEPARATE",
324-
"ZEND_QM_ASSIGN_VAR",
325-
"ZEND_JMP_SET_VAR",
326-
};
327-
328168
#endif

0 commit comments

Comments
 (0)