mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-08 03:48:07 +02:00
* fixed parsing of register names with lowercase
This commit is contained in:
parent
b5e2c87b87
commit
8a75d59544
@ -709,9 +709,10 @@ implementation
|
||||
function _asm_statement : tnode;
|
||||
var
|
||||
asmstat : tasmnode;
|
||||
Marker : tai;
|
||||
r,r2 : tregister;
|
||||
found : boolean;
|
||||
Marker : tai;
|
||||
r,r2 : tregister;
|
||||
found : boolean;
|
||||
hs : string;
|
||||
begin
|
||||
Inside_asm_statement:=true;
|
||||
case aktasmmode of
|
||||
@ -753,30 +754,31 @@ implementation
|
||||
{ END is read }
|
||||
if try_to_consume(_LECKKLAMMER) then
|
||||
begin
|
||||
if token<>_RECKKLAMMER then
|
||||
repeat
|
||||
{ it's possible to specify the modified registers }
|
||||
include(asmstat.flags,nf_object_preserved);
|
||||
found:=false;
|
||||
for r:=low(tregister) to high(tregister) do
|
||||
if pattern=upper(std_reg2str[r]) then
|
||||
begin
|
||||
if r = SELF_POINTER_REG then
|
||||
begin
|
||||
exclude(asmstat.flags,nf_object_preserved);
|
||||
end;
|
||||
include(rg.usedinproc,r);
|
||||
include(rg.usedbyproc,r);
|
||||
found:=true;
|
||||
break;
|
||||
end;
|
||||
if not(found) then
|
||||
consume(_RECKKLAMMER);
|
||||
consume(_CSTRING);
|
||||
if not try_to_consume(_COMMA) then
|
||||
if token<>_RECKKLAMMER then
|
||||
begin
|
||||
repeat
|
||||
{ it's possible to specify the modified registers }
|
||||
include(asmstat.flags,nf_object_preserved);
|
||||
hs:=upper(pattern);
|
||||
found:=false;
|
||||
for r:=low(tregister) to high(tregister) do
|
||||
if hs=upper(std_reg2str[r]) then
|
||||
begin
|
||||
if r = SELF_POINTER_REG then
|
||||
exclude(asmstat.flags,nf_object_preserved);
|
||||
include(rg.usedinproc,r);
|
||||
include(rg.usedbyproc,r);
|
||||
found:=true;
|
||||
break;
|
||||
end;
|
||||
if not(found) then
|
||||
Message(asmr_e_invalid_register);
|
||||
consume(_CSTRING);
|
||||
if not try_to_consume(_COMMA) then
|
||||
break;
|
||||
until false;
|
||||
consume(_RECKKLAMMER);
|
||||
until false;
|
||||
end;
|
||||
consume(_RECKKLAMMER);
|
||||
end
|
||||
else
|
||||
begin
|
||||
@ -1144,7 +1146,10 @@ implementation
|
||||
end.
|
||||
{
|
||||
$Log$
|
||||
Revision 1.74 2002-09-01 14:43:12 peter
|
||||
Revision 1.75 2002-09-02 18:40:52 peter
|
||||
* fixed parsing of register names with lowercase
|
||||
|
||||
Revision 1.74 2002/09/01 14:43:12 peter
|
||||
* fixed direct assembler for i386
|
||||
|
||||
Revision 1.73 2002/08/25 19:25:20 peter
|
||||
|
Loading…
Reference in New Issue
Block a user