summaryrefslogtreecommitdiff
path: root/misc/fmtinsns.pl
diff options
context:
space:
mode:
Diffstat (limited to 'misc/fmtinsns.pl')
-rwxr-xr-xmisc/fmtinsns.pl33
1 files changed, 33 insertions, 0 deletions
diff --git a/misc/fmtinsns.pl b/misc/fmtinsns.pl
new file mode 100755
index 00000000..831ead4c
--- /dev/null
+++ b/misc/fmtinsns.pl
@@ -0,0 +1,33 @@
+#!/usr/bin/perl
+#
+# Re-align the columns in insns.dat
+#
+
+@cols = (0, 16, 40, 72);
+
+while ($line = <STDIN>) {
+ chomp $line;
+ if ($line !~ /^\s*(\;.*|)$/) {
+ ($ln = $line) =~ s/\s+$//;
+ @fields = split(/\s+/, $line);
+ if (scalar(@fields) == 4) {
+ $c = 0;
+ $line = '';
+ for ($i = 0; $i < scalar(@fields); $i++) {
+ if ($i > 0 && $c >= $cols[$i]) {
+ $line .= ' ';
+ $c++;
+ }
+ while ($c < $cols[$i]) {
+ $line .= "\t";
+ $c = ($c+8) & ~7;
+ }
+ $line .= $fields[$i];
+ $c += length($fields[$i]);
+ }
+ }
+ }
+ print $line, "\n";
+}
+
+