mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-21 11:29:24 +02:00
* fixed sorting of register number
This commit is contained in:
parent
c05cf49b35
commit
386027ffb5
@ -25,6 +25,7 @@ var s : string;
|
||||
regcount_bsstart:byte;
|
||||
names,
|
||||
regtypes,
|
||||
supregs,
|
||||
numbers,
|
||||
stdnames,
|
||||
gasnames,
|
||||
@ -264,7 +265,7 @@ begin
|
||||
readcomma;
|
||||
regtypes[regcount]:=readstr;
|
||||
readcomma;
|
||||
numbers[regcount]:=readstr;
|
||||
supregs[regcount]:=readstr;
|
||||
readcomma;
|
||||
stdnames[regcount]:=readstr;
|
||||
readcomma;
|
||||
@ -273,6 +274,14 @@ begin
|
||||
motnames[regcount]:=readstr;
|
||||
readcomma;
|
||||
stabs[regcount]:=readstr;
|
||||
{ Create register number }
|
||||
if supregs[regcount][1]<>'$' then
|
||||
begin
|
||||
writeln('Missing $ before number, at line ',line);
|
||||
writeln('Line: "',s,'"');
|
||||
halt(1);
|
||||
end;
|
||||
numbers[regcount]:=regtypes[regcount]+'0000'+copy(supregs[regcount],2,255);
|
||||
if i<length(s) then
|
||||
begin
|
||||
writeln('Extra chars at end of line, at line ',line);
|
||||
@ -328,8 +337,8 @@ begin
|
||||
end
|
||||
else
|
||||
first:=false;
|
||||
writeln(confile,'NR_',names[i],' = ',regtypes[i],'0000',copy(numbers[i],2,255),';');
|
||||
writeln(supfile,'RS_',names[i],' = ',numbers[i],';');
|
||||
writeln(confile,'NR_',names[i],' = ',numbers[i],';');
|
||||
writeln(supfile,'RS_',names[i],' = ',supregs[i],';');
|
||||
write(numfile,'NR_',names[i]);
|
||||
write(stdfile,'''',stdnames[i],'''');
|
||||
write(gasfile,'''',gasnames[i],'''');
|
||||
@ -374,7 +383,10 @@ begin
|
||||
end.
|
||||
{
|
||||
$Log$
|
||||
Revision 1.4 2003-09-03 19:37:07 peter
|
||||
Revision 1.5 2003-09-03 20:33:28 peter
|
||||
* fixed sorting of register number
|
||||
|
||||
Revision 1.4 2003/09/03 19:37:07 peter
|
||||
* powerpc reg update
|
||||
|
||||
Revision 1.2 2003/09/03 15:55:01 peter
|
||||
|
@ -23,9 +23,14 @@ var s : string;
|
||||
line : longint;
|
||||
regcount:byte;
|
||||
regcount_bsstart:byte;
|
||||
names,regtypes,numbers,stdnames,stabs:
|
||||
array[0..max_regcount-1] of string[63];
|
||||
regnumber_index,std_regname_index:array[0..max_regcount-1] of byte;
|
||||
supregs,
|
||||
names,
|
||||
regtypes,
|
||||
numbers,
|
||||
stdnames,
|
||||
stabs : array[0..max_regcount-1] of string[63];
|
||||
regnumber_index,
|
||||
std_regname_index : array[0..max_regcount-1] of byte;
|
||||
|
||||
{$ifndef FPC}
|
||||
procedure readln(var t:text;var s:string);
|
||||
@ -192,17 +197,19 @@ begin
|
||||
readcomma;
|
||||
regtypes[regcount]:=readstr;
|
||||
readcomma;
|
||||
numbers[regcount]:=readstr;
|
||||
if numbers[regcount][1]<>'$' then
|
||||
supregs[regcount]:=readstr;
|
||||
readcomma;
|
||||
stdnames[regcount]:=readstr;
|
||||
readcomma;
|
||||
stabs[regcount]:=readstr;
|
||||
{ Create register number }
|
||||
if supregs[regcount][1]<>'$' then
|
||||
begin
|
||||
writeln('Missing $ before number, at line ',line);
|
||||
writeln('Line: "',s,'"');
|
||||
halt(1);
|
||||
end;
|
||||
readcomma;
|
||||
stdnames[regcount]:=readstr;
|
||||
readcomma;
|
||||
stabs[regcount]:=readstr;
|
||||
numbers[regcount]:=regtypes[regcount]+'0000'+copy(supregs[regcount],2,255);
|
||||
if i<length(s) then
|
||||
begin
|
||||
writeln('Extra chars at end of line, at line ',line);
|
||||
@ -250,8 +257,8 @@ begin
|
||||
end
|
||||
else
|
||||
first:=false;
|
||||
writeln(confile,'NR_',names[i],' = ',regtypes[i],'0000',copy(numbers[i],2,255),';');
|
||||
writeln(supfile,'RS_',names[i],' = ',numbers[i],';');
|
||||
writeln(confile,'NR_',names[i],' = ',numbers[i],';');
|
||||
writeln(supfile,'RS_',names[i],' = ',supregs[i],';');
|
||||
write(numfile,'NR_',names[i]);
|
||||
write(stdfile,'''',stdnames[i],'''');
|
||||
write(stabfile,stabs[i]);
|
||||
@ -286,7 +293,10 @@ begin
|
||||
end.
|
||||
{
|
||||
$Log$
|
||||
Revision 1.3 2003-09-03 16:28:16 peter
|
||||
Revision 1.4 2003-09-03 20:33:28 peter
|
||||
* fixed sorting of register number
|
||||
|
||||
Revision 1.3 2003/09/03 16:28:16 peter
|
||||
* also generate superregisters
|
||||
|
||||
Revision 1.2 2003/09/03 15:55:02 peter
|
||||
|
Loading…
Reference in New Issue
Block a user