summaryrefslogtreecommitdiffstats
path: root/src/VBox/GuestHost/OpenGL/util/debug_opcodes.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/VBox/GuestHost/OpenGL/util/debug_opcodes.py')
-rwxr-xr-xsrc/VBox/GuestHost/OpenGL/util/debug_opcodes.py42
1 files changed, 42 insertions, 0 deletions
diff --git a/src/VBox/GuestHost/OpenGL/util/debug_opcodes.py b/src/VBox/GuestHost/OpenGL/util/debug_opcodes.py
new file mode 100755
index 00000000..cf07424a
--- /dev/null
+++ b/src/VBox/GuestHost/OpenGL/util/debug_opcodes.py
@@ -0,0 +1,42 @@
+# Copyright (c) 2001, Stanford University
+# All rights reserved.
+#
+# See the file LICENSE.txt for information on redistributing this software.
+
+from __future__ import print_function
+import sys;
+import string;
+import re;
+
+import apiutil
+
+apiutil.CopyrightC()
+
+print("""
+#include "cr_debugopcodes.h"
+#include <stdio.h>
+""")
+
+print("""void crDebugOpcodes( FILE *fp, unsigned char *ptr, unsigned int num_opcodes )
+{
+\tunsigned int i;
+\tfor (i = 0; i < num_opcodes; i++)
+\t{
+\t\tswitch(*(ptr--))
+\t\t{
+""")
+
+keys = apiutil.GetDispatchedFunctions(sys.argv[1]+"/APIspec.txt")
+keys.sort()
+
+for func_name in keys:
+ if "pack" in apiutil.ChromiumProps(func_name):
+ print('\t\tcase %s:' % apiutil.OpcodeName( func_name ))
+ print('\t\t\tfprintf(fp, "%s\\n"); ' % apiutil.OpcodeName( func_name ))
+ print( '\t\t\tbreak;')
+
+print("""
+\t\t}
+\t}
+}
+""")