X-Git-Url: https://git.saurik.com/apple/javascriptcore.git/blobdiff_plain/b5422865f473faf3977f31b96a635c4c8c4ede09..9dae56ea45a0f5f8136a5c93d6f3a7f99399ca73:/docs/make-bytecode-docs.pl
diff --git a/docs/make-bytecode-docs.pl b/docs/make-bytecode-docs.pl
new file mode 100755
index 0000000..9494d1b
--- /dev/null
+++ b/docs/make-bytecode-docs.pl
@@ -0,0 +1,42 @@
+#!/usr/bin/perl -w
+
+use strict;
+
+open MACHINE, "<" . $ARGV[0];
+open OUTPUT, ">" . $ARGV[1];
+
+my @undocumented = ();
+
+print OUTPUT "\n";
+
+while () {
+ if (/^ *DEFINE_OPCODE/) {
+ chomp;
+ s/^ *DEFINE_OPCODE\(op_//;
+ s/\).*$//;
+ my $opcode = $_;
+ $_ = ;
+ chomp;
+ if (m|/\* |) {
+ my $format = $_;
+ $format =~ s|.* /\* ||;
+ my $doc = "";
+ while () {
+ if (m|\*/|) {
+ last;
+ }
+ $doc .= $_ . " ";
+ }
+
+ print OUTPUT "${opcode}
\nFormat: \n${format}\n
\n\n${doc}\n
\n";
+ } else {
+ push @undocumented, $opcode;
+ }
+ }
+}
+
+close OUTPUT;
+
+for my $undoc (@undocumented) {
+ print "UNDOCUMENTED: ${undoc}\n";
+}