1 #use Fatal qw(open close rename chmod unlink);
2 open DESC, 'regcomp.sym';
9 ($name[$ind], $desc, $rest[$ind]) = split /\t+/, $_, 3;
10 ($type[$ind], $code[$ind], $args[$ind], $longj[$ind])
11 = split /[,\s]\s*/, $desc, 4;
18 unlink $tmp_h if -f $tmp_h;
23 /* !!!!!!! DO NOT EDIT THIS FILE !!!!!!!
24 This file is built by regcomp.pl from regcomp.sym.
25 Any changes made here will be lost!
31 while (++$ind <= $tot) {
33 $hind = sprintf "%#4x", $oind;
35 #define $name[$ind] $oind /* $hind $rest[$ind] */
42 EXTCONST U8 PL_regkind[];
44 EXTCONST U8 PL_regkind[] = {
48 while (++$ind <= $tot) {
50 $type[$ind], /* $name[$ind] */
60 static const U8 regarglen[] = {
64 while (++$ind <= $tot) {
66 $size = "EXTRA_SIZE(struct regnode_$args[$ind])" if $args[$ind];
69 $size, /* $name[$ind] */
76 static const char reg_off_by_arg[] = {
80 while (++$ind <= $tot) {
81 $size = $longj[$ind] || 0;
84 $size, /* $name[$ind] */
92 static const char * const reg_name[] = {
96 while (++$ind <= $tot) {
97 $hind = sprintf "%#4x", $ind-1;
98 $size = $longj[$ind] || 0;
101 "$name[$ind]", /* $hind */
108 static const int reg_num = $tot;
110 #endif /* DEBUGGING */
111 #endif /* REG_COMP_C */
117 chmod 0666, 'regnodes.h';
119 rename $tmp_h, 'regnodes.h';