+ AArch64: support for vX.8b/vX.16b register names

+ support for more than 256 registers in the register dat files
- removed totherregisterset
+ AArch64: use vmov to load immediates if possible
+ AArch64: use eor to clear mm registers
+ small command line tool for quick creating of vfp register list in a64reg.dat

git-svn-id: trunk@42916 -
This commit is contained in:
florian 2019-09-03 20:59:13 +00:00
parent 11203bcdeb
commit a5a87fa84c
2 changed files with 17 additions and 0 deletions

1
.gitattributes vendored
View File

@ -888,6 +888,7 @@ compiler/utils/fixtab.pp svneol=native#text/plain
compiler/utils/fpc.mpw svneol=native#text/plain
compiler/utils/fpc.pp svneol=native#text/plain
compiler/utils/fpimpdef.pp svneol=native#text/plain
compiler/utils/gena64vfp.pp svneol=native#text/pascal
compiler/utils/gia64reg.pp svneol=native#text/plain
compiler/utils/gppc386.pp svneol=native#text/plain
compiler/utils/mk68kreg.pp svneol=native#text/plain

View File

@ -0,0 +1,16 @@
{ utility to avoid the tedious typing of register numbers for AArch64 VFP registers }
var
i : longint;
begin
for i:=0 to 31 do
begin
writeln('B',i,',$04,$01,$',hexstr(i,2),',b',i,',',i+64,',',i+64);
writeln('H',i,',$04,$03,$',hexstr(i,2),',h',i,',',i+64,',',i+64);
writeln('S',i,',$04,$09,$',hexstr(i,2),',s',i,',',i+64,',',i+64);
writeln('D',i,',$04,$0a,$',hexstr(i,2),',d',i,',',i+64,',',i+64);
writeln('Q',i,',$04,$05,$',hexstr(i,2),',q',i,',',i+64,',',i+64);
writeln('V',i,'8B,$04,$17,$',hexstr(i,2),',v',i,'.8b,',i+64,',',i+64);
writeln('V',i,'16B,$04,$18,$',hexstr(i,2),',v',i,'.16b,',i+64,',',i+64);
end;
end.