summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorkrakjoe <joe.watkins@live.co.uk>2013-12-22 13:00:51 +0000
committerkrakjoe <joe.watkins@live.co.uk>2013-12-22 13:00:51 +0000
commitb1df00a7c98fb66cc801924287ebb73234999bfc (patch)
treea94ce9eb2fab95b10cfa742602dc11d13c80cc74
parentc14388d63f307e322465e6d8a7610100dde692db (diff)
downloadphp-git-b1df00a7c98fb66cc801924287ebb73234999bfc.tar.gz
stop warnings from unused opcode map
-rw-r--r--Zend/zend_vm_gen.php17
-rw-r--r--Zend/zend_vm_opcodes.c5
-rw-r--r--Zend/zend_vm_opcodes.h2
3 files changed, 17 insertions, 7 deletions
diff --git a/Zend/zend_vm_gen.php b/Zend/zend_vm_gen.php
index 3f1c20cc04..aaa87aa12f 100644
--- a/Zend/zend_vm_gen.php
+++ b/Zend/zend_vm_gen.php
@@ -1202,8 +1202,8 @@ function gen_vm($def, $skel) {
out($f, $GLOBALS['header_text']);
fputs($f, "#ifndef ZEND_VM_OPCODES_H\n#define ZEND_VM_OPCODES_H\n\n");
- fputs($f, "extern ZEND_API const char *zend_vm_opcodes_map[".($max_opcode + 1)."];\n\n");
-
+ fputs($f, "ZEND_API const char *zend_get_opcode_name(zend_uchar opcode);\n\n");
+
foreach ($opcodes as $code => $dsc) {
$code = str_pad((string)$code,$code_len," ",STR_PAD_LEFT);
$op = str_pad($dsc["op"],$max_opcode_len);
@@ -1219,14 +1219,19 @@ function gen_vm($def, $skel) {
// Insert header
out($f, $GLOBALS['header_text']);
- fputs($f,"#include <stdio.h>\n\n");
-
+ fputs($f,"#include <stdio.h>\n");
+ fputs($f,"#include <zend.h>\n\n");
+
fputs($f,"const char *zend_vm_opcodes_map[".($max_opcode + 1)."] = {\n");
for ($i = 0; $i <= $max_opcode; $i++) {
fputs($f,"\t".(isset($opcodes[$i]["op"])?'"'.$opcodes[$i]["op"].'"':"NULL").",\n");
}
- fputs($f, "};\n");
-
+ fputs($f, "};\n\n");
+
+ fputs($f, "ZEND_API const char* zend_get_opcode_name(zend_uchar opcode) {\n");
+ fputs($f, "\treturn zend_vm_opcodes_map[opcode];\n");
+ fputs($f, "}\n");
+
fclose($f);
echo "zend_vm_opcodes.c generated successfully.\n";
diff --git a/Zend/zend_vm_opcodes.c b/Zend/zend_vm_opcodes.c
index d5e7b826cb..1195dc38bf 100644
--- a/Zend/zend_vm_opcodes.c
+++ b/Zend/zend_vm_opcodes.c
@@ -19,6 +19,7 @@
*/
#include <stdio.h>
+#include <zend.h>
const char *zend_vm_opcodes_map[159] = {
"ZEND_NOP",
@@ -181,3 +182,7 @@ const char *zend_vm_opcodes_map[159] = {
"ZEND_QM_ASSIGN_VAR",
"ZEND_JMP_SET_VAR",
};
+
+ZEND_API const char* zend_get_opcode_name(zend_uchar opcode) {
+ return zend_vm_opcodes_map[opcode];
+}
diff --git a/Zend/zend_vm_opcodes.h b/Zend/zend_vm_opcodes.h
index 09473dc19d..f9a165bd42 100644
--- a/Zend/zend_vm_opcodes.h
+++ b/Zend/zend_vm_opcodes.h
@@ -21,7 +21,7 @@
#ifndef ZEND_VM_OPCODES_H
#define ZEND_VM_OPCODES_H
-extern ZEND_API const char *zend_vm_opcodes_map[159];
+ZEND_API const char *zend_get_opcode_name(zend_uchar opcode);
#define ZEND_NOP 0
#define ZEND_ADD 1