diff options
author | Simon Hausmann <simon.hausmann@nokia.com> | 2012-01-06 14:44:00 +0100 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@nokia.com> | 2012-01-06 14:44:00 +0100 |
commit | 40736c5763bf61337c8c14e16d8587db021a87d4 (patch) | |
tree | b17a9c00042ad89cb1308e2484491799aa14e9f8 /Source/JavaScriptCore/docs/make-bytecode-docs.pl | |
download | qtwebkit-40736c5763bf61337c8c14e16d8587db021a87d4.tar.gz |
Imported WebKit commit 2ea9d364d0f6efa8fa64acf19f451504c59be0e4 (http://svn.webkit.org/repository/webkit/trunk@104285)
Diffstat (limited to 'Source/JavaScriptCore/docs/make-bytecode-docs.pl')
-rwxr-xr-x | Source/JavaScriptCore/docs/make-bytecode-docs.pl | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/Source/JavaScriptCore/docs/make-bytecode-docs.pl b/Source/JavaScriptCore/docs/make-bytecode-docs.pl new file mode 100755 index 000000000..5a95195a8 --- /dev/null +++ b/Source/JavaScriptCore/docs/make-bytecode-docs.pl @@ -0,0 +1,43 @@ +#!/usr/bin/perl -w + +use strict; + +open MACHINE, "<" . $ARGV[0]; +open OUTPUT, ">" . $ARGV[1]; + +my @undocumented = (); + +print OUTPUT "<!-- Generated from Interpreter.cpp by make-bytecode-docs.pl. -->\n"; +print OUTPUT "<style>p code \{ font-size: 14px; \}</style>\n"; + +while (<MACHINE>) { + if (/^ *DEFINE_OPCODE/) { + chomp; + s/^ *DEFINE_OPCODE\(op_//; + s/\).*$//; + my $opcode = $_; + $_ = <MACHINE>; + chomp; + if (m|/\* |) { + my $format = $_; + $format =~ s|.* /\* ||; + my $doc = ""; + while (<MACHINE>) { + if (m|\*/|) { + last; + } + $doc .= $_ . " "; + } + + print OUTPUT "<h2><code>${opcode}</code></h2>\n<p><b>Format: </b><code>\n${format}\n</code></p>\n<p>\n${doc}\n</p>\n"; + } else { + push @undocumented, $opcode; + } + } +} + +close OUTPUT; + +for my $undoc (@undocumented) { + print "UNDOCUMENTED: ${undoc}\n"; +} |