7 while ((getline < file
) > 0)
14 else if ($
2 ==
"LIBBASE")
18 else if ($
2 ==
"NT_TYPE")
20 if ($
3 ==
"NT_RESOURCE")
24 else if ($
3 ==
"NT_DEVICE")
35 # Only for non-resources
43 verbose_pattern = libbase
"[ \\t]*,[ \\t]*[0-9]+[ \\t]*,[ \\t]*"basename
;
45 #print verbose_pattern > "/dev/stderr";
47 if (maxlvo
< firstlvo
)
50 /AROS_LH
(QUAD
)?
[0-9]/ {
52 sub(/[ \t]*$
/,"",line
);
53 if (match(line
,/[a
-zA
-Z0
-9_
]+,$
/))
55 name=
substr(line
,RSTART,RLENGTH-1);
58 #print "/* FOUND " name " */";
62 if (match($
0,/,[^
)]+/))
64 line=
substr($
0,RSTART+1,RLENGTH-1);
65 gsub(/[ \t]+/,"",line
);
68 args=args
","substr(line
,RSTART,RLENGTH);
70 args=
substr(line
,RSTART,RLENGTH);
72 regs=regs
","substr(line
,RSTART+RLENGTH+1);
74 regs=
substr(line
,RSTART+RLENGTH+1);
77 /LIBBASE
[ \t]*,[ \t]*[0-9]+/ || $
0 ~ verbose_pattern
{
78 #print "/* LOC " $0 " */"
79 match ($
0, /,[ \t]*[0-9]+/);
80 line=
substr($
0,RSTART,RLENGTH);
82 sub (/,[ \t]*/,"",line
);
87 print "Illegal LVO 0 in "FN
88 else if (lvo
<= firstlvo
)
94 print "Error: lvo "lvo
" is used by "f
[lvo
]" and "name
" in "FN
>> stderr
;
101 a_regs
[lvo
] =
tolower(regs
);
110 print "##base _"basename
"Base";
111 print "##bias " ((firstlvo
+1)*6)
114 if (maxlvo
<= firstlvo
)
116 print "Error: No matching functions found" > "/dev/stderr";
120 for (t=
(firstlvo
+1); t
<=maxlvo
; t
++)
123 print f
[t
]"("a_args
[t
]")("a_regs
[t
]")"
125 print lib
"Private"t
"()()"