mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-11 22:06:40 +02:00
* treat registers (and identifiers of register parameter) as normal identifiers when parsing record fields in intel assembler, resolves #19555
git-svn-id: trunk@18268 -
This commit is contained in:
parent
cf874a3465
commit
860d753055
1
.gitattributes
vendored
1
.gitattributes
vendored
@ -11720,6 +11720,7 @@ tests/webtbs/tw1938.pp svneol=native#text/plain
|
|||||||
tests/webtbs/tw1948.pp svneol=native#text/plain
|
tests/webtbs/tw1948.pp svneol=native#text/plain
|
||||||
tests/webtbs/tw1950.pp svneol=native#text/plain
|
tests/webtbs/tw1950.pp svneol=native#text/plain
|
||||||
tests/webtbs/tw19548.pp svneol=native#text/pascal
|
tests/webtbs/tw19548.pp svneol=native#text/pascal
|
||||||
|
tests/webtbs/tw19555.pp svneol=native#text/pascal
|
||||||
tests/webtbs/tw1964.pp svneol=native#text/plain
|
tests/webtbs/tw1964.pp svneol=native#text/plain
|
||||||
tests/webtbs/tw19700.pp svneol=native#text/plain
|
tests/webtbs/tw19700.pp svneol=native#text/plain
|
||||||
tests/webtbs/tw19851a.pp svneol=native#text/pascal
|
tests/webtbs/tw19851a.pp svneol=native#text/pascal
|
||||||
|
@ -729,7 +729,7 @@ Unit Rax86int;
|
|||||||
while (actasmtoken=AS_DOT) do
|
while (actasmtoken=AS_DOT) do
|
||||||
begin
|
begin
|
||||||
Consume(AS_DOT);
|
Consume(AS_DOT);
|
||||||
if actasmtoken in [AS_BYTE,AS_ID,AS_WORD,AS_DWORD,AS_QWORD] then
|
if actasmtoken in [AS_BYTE,AS_ID,AS_WORD,AS_DWORD,AS_QWORD,AS_REGISTER] then
|
||||||
begin
|
begin
|
||||||
s:=s+'.'+actasmpattern;
|
s:=s+'.'+actasmpattern;
|
||||||
consume(actasmtoken);
|
consume(actasmtoken);
|
||||||
|
14
tests/webtbs/tw19555.pp
Normal file
14
tests/webtbs/tw19555.pp
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
{ %cpu=i386 }
|
||||||
|
{$mode delphi}
|
||||||
|
type
|
||||||
|
TCRCDef = record
|
||||||
|
polynomial : longint;
|
||||||
|
end;
|
||||||
|
{$asmmode intel}
|
||||||
|
function CRCSetup(var CRCDef: TCRCDef; Polynomial, Bits, InitVector,
|
||||||
|
FinalVector: Cardinal; Inverse: LongBool): Boolean; register;assembler;
|
||||||
|
asm // initialize CRCDef according to the parameters, calculate the lookup table
|
||||||
|
MOV [EAX].TCRCDef.Polynomial,EDX
|
||||||
|
end;
|
||||||
|
begin
|
||||||
|
end.
|
Loading…
Reference in New Issue
Block a user