mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-15 13:49:15 +02:00
+ extended tests with segment overrides in at&t asm mode
git-svn-id: trunk@37455 -
This commit is contained in:
parent
1ee36b5b9b
commit
27978de111
@ -38,6 +38,7 @@ begin
|
|||||||
outsw
|
outsw
|
||||||
outsl
|
outsl
|
||||||
|
|
||||||
|
{ no segment overrides }
|
||||||
movsb (%rsi), (%rdi)
|
movsb (%rsi), (%rdi)
|
||||||
movsb (%esi), (%edi)
|
movsb (%esi), (%edi)
|
||||||
movsw (%rsi), (%rdi)
|
movsw (%rsi), (%rdi)
|
||||||
@ -96,5 +97,125 @@ begin
|
|||||||
outsw (%esi),%dx
|
outsw (%esi),%dx
|
||||||
outsl (%rsi),%dx
|
outsl (%rsi),%dx
|
||||||
outsl (%esi),%dx
|
outsl (%esi),%dx
|
||||||
|
|
||||||
|
{ es:di }
|
||||||
|
movsb (%rsi), %es:(%rdi)
|
||||||
|
movsb (%esi), %es:(%edi)
|
||||||
|
movsw (%rsi), %es:(%rdi)
|
||||||
|
movsw (%esi), %es:(%edi)
|
||||||
|
movsl (%rsi), %es:(%rdi)
|
||||||
|
movsl (%esi), %es:(%edi)
|
||||||
|
movsq (%rsi), %es:(%rdi)
|
||||||
|
movsq (%esi), %es:(%edi)
|
||||||
|
|
||||||
|
cmpsb %es:(%rdi), (%rsi)
|
||||||
|
cmpsb %es:(%edi), (%esi)
|
||||||
|
cmpsw %es:(%rdi), (%rsi)
|
||||||
|
cmpsw %es:(%edi), (%esi)
|
||||||
|
cmpsl %es:(%rdi), (%rsi)
|
||||||
|
cmpsl %es:(%edi), (%esi)
|
||||||
|
cmpsq %es:(%rdi), (%rsi)
|
||||||
|
cmpsq %es:(%edi), (%esi)
|
||||||
|
|
||||||
|
scasb %es:(%rdi)
|
||||||
|
scasb %es:(%edi)
|
||||||
|
scasw %es:(%rdi)
|
||||||
|
scasw %es:(%edi)
|
||||||
|
scasl %es:(%rdi)
|
||||||
|
scasl %es:(%edi)
|
||||||
|
scasq %es:(%rdi)
|
||||||
|
scasq %es:(%edi)
|
||||||
|
|
||||||
|
lodsb (%rsi)
|
||||||
|
lodsb (%esi)
|
||||||
|
lodsw (%rsi)
|
||||||
|
lodsw (%esi)
|
||||||
|
lodsl (%rsi)
|
||||||
|
lodsl (%esi)
|
||||||
|
lodsq (%rsi)
|
||||||
|
lodsq (%esi)
|
||||||
|
|
||||||
|
stosb %es:(%rdi)
|
||||||
|
stosb %es:(%edi)
|
||||||
|
stosw %es:(%rdi)
|
||||||
|
stosw %es:(%edi)
|
||||||
|
stosl %es:(%rdi)
|
||||||
|
stosl %es:(%edi)
|
||||||
|
stosq %es:(%rdi)
|
||||||
|
stosq %es:(%edi)
|
||||||
|
|
||||||
|
insb %dx,%es:(%rdi)
|
||||||
|
insb %dx,%es:(%edi)
|
||||||
|
insw %dx,%es:(%rdi)
|
||||||
|
insw %dx,%es:(%edi)
|
||||||
|
insl %dx,%es:(%rdi)
|
||||||
|
insl %dx,%es:(%edi)
|
||||||
|
|
||||||
|
outsb (%rsi),%dx
|
||||||
|
outsb (%esi),%dx
|
||||||
|
outsw (%rsi),%dx
|
||||||
|
outsw (%esi),%dx
|
||||||
|
outsl (%rsi),%dx
|
||||||
|
outsl (%esi),%dx
|
||||||
|
|
||||||
|
{ es:di, fs:si }
|
||||||
|
movsb %fs:(%rsi), %es:(%rdi)
|
||||||
|
movsb %fs:(%esi), %es:(%edi)
|
||||||
|
movsw %fs:(%rsi), %es:(%rdi)
|
||||||
|
movsw %fs:(%esi), %es:(%edi)
|
||||||
|
movsl %fs:(%rsi), %es:(%rdi)
|
||||||
|
movsl %fs:(%esi), %es:(%edi)
|
||||||
|
movsq %fs:(%rsi), %es:(%rdi)
|
||||||
|
movsq %fs:(%esi), %es:(%edi)
|
||||||
|
|
||||||
|
cmpsb %es:(%rdi), %fs:(%rsi)
|
||||||
|
cmpsb %es:(%edi), %fs:(%esi)
|
||||||
|
cmpsw %es:(%rdi), %fs:(%rsi)
|
||||||
|
cmpsw %es:(%edi), %fs:(%esi)
|
||||||
|
cmpsl %es:(%rdi), %fs:(%rsi)
|
||||||
|
cmpsl %es:(%edi), %fs:(%esi)
|
||||||
|
cmpsq %es:(%rdi), %fs:(%rsi)
|
||||||
|
cmpsq %es:(%edi), %fs:(%esi)
|
||||||
|
|
||||||
|
scasb %es:(%rdi)
|
||||||
|
scasb %es:(%edi)
|
||||||
|
scasw %es:(%rdi)
|
||||||
|
scasw %es:(%edi)
|
||||||
|
scasl %es:(%rdi)
|
||||||
|
scasl %es:(%edi)
|
||||||
|
scasq %es:(%rdi)
|
||||||
|
scasq %es:(%edi)
|
||||||
|
|
||||||
|
lodsb %fs:(%rsi)
|
||||||
|
lodsb %fs:(%esi)
|
||||||
|
lodsw %fs:(%rsi)
|
||||||
|
lodsw %fs:(%esi)
|
||||||
|
lodsl %fs:(%rsi)
|
||||||
|
lodsl %fs:(%esi)
|
||||||
|
lodsq %fs:(%rsi)
|
||||||
|
lodsq %fs:(%esi)
|
||||||
|
|
||||||
|
stosb %es:(%rdi)
|
||||||
|
stosb %es:(%edi)
|
||||||
|
stosw %es:(%rdi)
|
||||||
|
stosw %es:(%edi)
|
||||||
|
stosl %es:(%rdi)
|
||||||
|
stosl %es:(%edi)
|
||||||
|
stosq %es:(%rdi)
|
||||||
|
stosq %es:(%edi)
|
||||||
|
|
||||||
|
insb %dx,%es:(%rdi)
|
||||||
|
insb %dx,%es:(%edi)
|
||||||
|
insw %dx,%es:(%rdi)
|
||||||
|
insw %dx,%es:(%edi)
|
||||||
|
insl %dx,%es:(%rdi)
|
||||||
|
insl %dx,%es:(%edi)
|
||||||
|
|
||||||
|
outsb %fs:(%rsi),%dx
|
||||||
|
outsb %fs:(%esi),%dx
|
||||||
|
outsw %fs:(%rsi),%dx
|
||||||
|
outsw %fs:(%esi),%dx
|
||||||
|
outsl %fs:(%rsi),%dx
|
||||||
|
outsl %fs:(%esi),%dx
|
||||||
end;
|
end;
|
||||||
end.
|
end.
|
||||||
|
@ -33,6 +33,7 @@ begin
|
|||||||
outsw
|
outsw
|
||||||
outsl
|
outsl
|
||||||
|
|
||||||
|
{ no segment overrides }
|
||||||
movsb (%esi), (%edi)
|
movsb (%esi), (%edi)
|
||||||
movsb (%si), (%di)
|
movsb (%si), (%di)
|
||||||
movsw (%esi), (%edi)
|
movsw (%esi), (%edi)
|
||||||
@ -81,5 +82,105 @@ begin
|
|||||||
outsw (%si),%dx
|
outsw (%si),%dx
|
||||||
outsl (%esi),%dx
|
outsl (%esi),%dx
|
||||||
outsl (%si),%dx
|
outsl (%si),%dx
|
||||||
|
|
||||||
|
{ es:di }
|
||||||
|
movsb (%esi), %es:(%edi)
|
||||||
|
movsb (%si), %es:(%di)
|
||||||
|
movsw (%esi), %es:(%edi)
|
||||||
|
movsw (%si), %es:(%di)
|
||||||
|
movsl (%esi), %es:(%edi)
|
||||||
|
movsl (%si), %es:(%di)
|
||||||
|
|
||||||
|
cmpsb %es:(%edi), (%esi)
|
||||||
|
cmpsb %es:(%di), (%si)
|
||||||
|
cmpsw %es:(%edi), (%esi)
|
||||||
|
cmpsw %es:(%di), (%si)
|
||||||
|
cmpsl %es:(%edi), (%esi)
|
||||||
|
cmpsl %es:(%di), (%si)
|
||||||
|
|
||||||
|
scasb %es:(%edi)
|
||||||
|
scasb %es:(%di)
|
||||||
|
scasw %es:(%edi)
|
||||||
|
scasw %es:(%di)
|
||||||
|
scasl %es:(%edi)
|
||||||
|
scasl %es:(%di)
|
||||||
|
|
||||||
|
lodsb (%esi)
|
||||||
|
lodsb (%si)
|
||||||
|
lodsw (%esi)
|
||||||
|
lodsw (%si)
|
||||||
|
lodsl (%esi)
|
||||||
|
lodsl (%si)
|
||||||
|
|
||||||
|
stosb %es:(%edi)
|
||||||
|
stosb %es:(%di)
|
||||||
|
stosw %es:(%edi)
|
||||||
|
stosw %es:(%di)
|
||||||
|
stosl %es:(%edi)
|
||||||
|
stosl %es:(%di)
|
||||||
|
|
||||||
|
insb %dx,%es:(%edi)
|
||||||
|
insb %dx,%es:(%di)
|
||||||
|
insw %dx,%es:(%edi)
|
||||||
|
insw %dx,%es:(%di)
|
||||||
|
insl %dx,%es:(%edi)
|
||||||
|
insl %dx,%es:(%di)
|
||||||
|
|
||||||
|
outsb (%esi),%dx
|
||||||
|
outsb (%si),%dx
|
||||||
|
outsw (%esi),%dx
|
||||||
|
outsw (%si),%dx
|
||||||
|
outsl (%esi),%dx
|
||||||
|
outsl (%si),%dx
|
||||||
|
|
||||||
|
{ es:di, fs:si }
|
||||||
|
movsb %fs:(%esi), %es:(%edi)
|
||||||
|
movsb %fs:(%si), %es:(%di)
|
||||||
|
movsw %fs:(%esi), %es:(%edi)
|
||||||
|
movsw %fs:(%si), %es:(%di)
|
||||||
|
movsl %fs:(%esi), %es:(%edi)
|
||||||
|
movsl %fs:(%si), %es:(%di)
|
||||||
|
|
||||||
|
cmpsb %es:(%edi), %fs:(%esi)
|
||||||
|
cmpsb %es:(%di), %fs:(%si)
|
||||||
|
cmpsw %es:(%edi), %fs:(%esi)
|
||||||
|
cmpsw %es:(%di), %fs:(%si)
|
||||||
|
cmpsl %es:(%edi), %fs:(%esi)
|
||||||
|
cmpsl %es:(%di), %fs:(%si)
|
||||||
|
|
||||||
|
scasb %es:(%edi)
|
||||||
|
scasb %es:(%di)
|
||||||
|
scasw %es:(%edi)
|
||||||
|
scasw %es:(%di)
|
||||||
|
scasl %es:(%edi)
|
||||||
|
scasl %es:(%di)
|
||||||
|
|
||||||
|
lodsb %fs:(%esi)
|
||||||
|
lodsb %fs:(%si)
|
||||||
|
lodsw %fs:(%esi)
|
||||||
|
lodsw %fs:(%si)
|
||||||
|
lodsl %fs:(%esi)
|
||||||
|
lodsl %fs:(%si)
|
||||||
|
|
||||||
|
stosb %es:(%edi)
|
||||||
|
stosb %es:(%di)
|
||||||
|
stosw %es:(%edi)
|
||||||
|
stosw %es:(%di)
|
||||||
|
stosl %es:(%edi)
|
||||||
|
stosl %es:(%di)
|
||||||
|
|
||||||
|
insb %dx,%es:(%edi)
|
||||||
|
insb %dx,%es:(%di)
|
||||||
|
insw %dx,%es:(%edi)
|
||||||
|
insw %dx,%es:(%di)
|
||||||
|
insl %dx,%es:(%edi)
|
||||||
|
insl %dx,%es:(%di)
|
||||||
|
|
||||||
|
outsb %fs:(%esi),%dx
|
||||||
|
outsb %fs:(%si),%dx
|
||||||
|
outsw %fs:(%esi),%dx
|
||||||
|
outsw %fs:(%si),%dx
|
||||||
|
outsl %fs:(%esi),%dx
|
||||||
|
outsl %fs:(%si),%dx
|
||||||
end;
|
end;
|
||||||
end.
|
end.
|
||||||
|
@ -34,6 +34,7 @@ begin
|
|||||||
outsw
|
outsw
|
||||||
outsl
|
outsl
|
||||||
|
|
||||||
|
{ no segment overrides }
|
||||||
movsb (%esi), (%edi)
|
movsb (%esi), (%edi)
|
||||||
movsb (%si), (%di)
|
movsb (%si), (%di)
|
||||||
movsw (%esi), (%edi)
|
movsw (%esi), (%edi)
|
||||||
@ -82,5 +83,105 @@ begin
|
|||||||
outsw (%si),%dx
|
outsw (%si),%dx
|
||||||
outsl (%esi),%dx
|
outsl (%esi),%dx
|
||||||
outsl (%si),%dx
|
outsl (%si),%dx
|
||||||
|
|
||||||
|
{ es:di }
|
||||||
|
movsb (%esi), %es:(%edi)
|
||||||
|
movsb (%si), %es:(%di)
|
||||||
|
movsw (%esi), %es:(%edi)
|
||||||
|
movsw (%si), %es:(%di)
|
||||||
|
movsl (%esi), %es:(%edi)
|
||||||
|
movsl (%si), %es:(%di)
|
||||||
|
|
||||||
|
cmpsb %es:(%edi), (%esi)
|
||||||
|
cmpsb %es:(%di), (%si)
|
||||||
|
cmpsw %es:(%edi), (%esi)
|
||||||
|
cmpsw %es:(%di), (%si)
|
||||||
|
cmpsl %es:(%edi), (%esi)
|
||||||
|
cmpsl %es:(%di), (%si)
|
||||||
|
|
||||||
|
scasb %es:(%edi)
|
||||||
|
scasb %es:(%di)
|
||||||
|
scasw %es:(%edi)
|
||||||
|
scasw %es:(%di)
|
||||||
|
scasl %es:(%edi)
|
||||||
|
scasl %es:(%di)
|
||||||
|
|
||||||
|
lodsb (%esi)
|
||||||
|
lodsb (%si)
|
||||||
|
lodsw (%esi)
|
||||||
|
lodsw (%si)
|
||||||
|
lodsl (%esi)
|
||||||
|
lodsl (%si)
|
||||||
|
|
||||||
|
stosb %es:(%edi)
|
||||||
|
stosb %es:(%di)
|
||||||
|
stosw %es:(%edi)
|
||||||
|
stosw %es:(%di)
|
||||||
|
stosl %es:(%edi)
|
||||||
|
stosl %es:(%di)
|
||||||
|
|
||||||
|
insb %dx,%es:(%edi)
|
||||||
|
insb %dx,%es:(%di)
|
||||||
|
insw %dx,%es:(%edi)
|
||||||
|
insw %dx,%es:(%di)
|
||||||
|
insl %dx,%es:(%edi)
|
||||||
|
insl %dx,%es:(%di)
|
||||||
|
|
||||||
|
outsb (%esi),%dx
|
||||||
|
outsb (%si),%dx
|
||||||
|
outsw (%esi),%dx
|
||||||
|
outsw (%si),%dx
|
||||||
|
outsl (%esi),%dx
|
||||||
|
outsl (%si),%dx
|
||||||
|
|
||||||
|
{ es:di, fs:si }
|
||||||
|
movsb %fs:(%esi), %es:(%edi)
|
||||||
|
movsb %fs:(%si), %es:(%di)
|
||||||
|
movsw %fs:(%esi), %es:(%edi)
|
||||||
|
movsw %fs:(%si), %es:(%di)
|
||||||
|
movsl %fs:(%esi), %es:(%edi)
|
||||||
|
movsl %fs:(%si), %es:(%di)
|
||||||
|
|
||||||
|
cmpsb %es:(%edi), %fs:(%esi)
|
||||||
|
cmpsb %es:(%di), %fs:(%si)
|
||||||
|
cmpsw %es:(%edi), %fs:(%esi)
|
||||||
|
cmpsw %es:(%di), %fs:(%si)
|
||||||
|
cmpsl %es:(%edi), %fs:(%esi)
|
||||||
|
cmpsl %es:(%di), %fs:(%si)
|
||||||
|
|
||||||
|
scasb %es:(%edi)
|
||||||
|
scasb %es:(%di)
|
||||||
|
scasw %es:(%edi)
|
||||||
|
scasw %es:(%di)
|
||||||
|
scasl %es:(%edi)
|
||||||
|
scasl %es:(%di)
|
||||||
|
|
||||||
|
lodsb %fs:(%esi)
|
||||||
|
lodsb %fs:(%si)
|
||||||
|
lodsw %fs:(%esi)
|
||||||
|
lodsw %fs:(%si)
|
||||||
|
lodsl %fs:(%esi)
|
||||||
|
lodsl %fs:(%si)
|
||||||
|
|
||||||
|
stosb %es:(%edi)
|
||||||
|
stosb %es:(%di)
|
||||||
|
stosw %es:(%edi)
|
||||||
|
stosw %es:(%di)
|
||||||
|
stosl %es:(%edi)
|
||||||
|
stosl %es:(%di)
|
||||||
|
|
||||||
|
insb %dx,%es:(%edi)
|
||||||
|
insb %dx,%es:(%di)
|
||||||
|
insw %dx,%es:(%edi)
|
||||||
|
insw %dx,%es:(%di)
|
||||||
|
insl %dx,%es:(%edi)
|
||||||
|
insl %dx,%es:(%di)
|
||||||
|
|
||||||
|
outsb %fs:(%esi),%dx
|
||||||
|
outsb %fs:(%si),%dx
|
||||||
|
outsw %fs:(%esi),%dx
|
||||||
|
outsw %fs:(%si),%dx
|
||||||
|
outsl %fs:(%esi),%dx
|
||||||
|
outsl %fs:(%si),%dx
|
||||||
end;
|
end;
|
||||||
end.
|
end.
|
||||||
|
Loading…
Reference in New Issue
Block a user