diff options
Diffstat (limited to 'linux/sparc/gen.pl')
-rw-r--r-- | linux/sparc/gen.pl | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/linux/sparc/gen.pl b/linux/sparc/gen.pl new file mode 100644 index 0000000..1a320ee --- /dev/null +++ b/linux/sparc/gen.pl @@ -0,0 +1,38 @@ +open SPARC, "syscallent.h" || die "no puedo abrir el de la sparc"; +open ALPHA, "../alpha/syscallent.h" || die "no puedo abrir el de la alpha"; +open PC, "../syscallent.h" || die "no puedo abrir PC\n"; + +while (<SPARC>) { + chop; + ($i1, $i2, $i3, $syscall, $syscall_name) = split; + $strn[$index] = $syscall_name; + $name[$index++] = $syscall; +} + +while (<ALPHA>){ + if (/\{/) { + ($i1, $n, $pr, $syscall) = split; + $par{$syscall} = $n; + $prr{$syscall} = $pr; + } +} + +while (<PC>){ + if (/\{/) { + ($i1, $n, $pr, $syscall) = split; + $par{$syscall} = $n; + $prr{$syscall} = $pr; + } +} + +print "missing \n"; + +for ($i = 0; $i < $index; $i++){ + $x = $name[$i]; + $y = $strn[$i]; + $n = $par{$x}; + $p = $prr{$x}; + $j++; + print "\t{ $n\t$p\t$x\t$y },\t /* $j */\n"; +} + |