* fixed parsing of register names with lowercase

This commit is contained in:
peter 2002-09-02 18:40:52 +00:00
parent b5e2c87b87
commit 8a75d59544

View File

@ -709,9 +709,10 @@ implementation
function _asm_statement : tnode; function _asm_statement : tnode;
var var
asmstat : tasmnode; asmstat : tasmnode;
Marker : tai; Marker : tai;
r,r2 : tregister; r,r2 : tregister;
found : boolean; found : boolean;
hs : string;
begin begin
Inside_asm_statement:=true; Inside_asm_statement:=true;
case aktasmmode of case aktasmmode of
@ -753,30 +754,31 @@ implementation
{ END is read } { END is read }
if try_to_consume(_LECKKLAMMER) then if try_to_consume(_LECKKLAMMER) then
begin begin
if token<>_RECKKLAMMER then if token<>_RECKKLAMMER then
repeat begin
{ it's possible to specify the modified registers } repeat
include(asmstat.flags,nf_object_preserved); { it's possible to specify the modified registers }
found:=false; include(asmstat.flags,nf_object_preserved);
for r:=low(tregister) to high(tregister) do hs:=upper(pattern);
if pattern=upper(std_reg2str[r]) then found:=false;
begin for r:=low(tregister) to high(tregister) do
if r = SELF_POINTER_REG then if hs=upper(std_reg2str[r]) then
begin begin
exclude(asmstat.flags,nf_object_preserved); if r = SELF_POINTER_REG then
end; exclude(asmstat.flags,nf_object_preserved);
include(rg.usedinproc,r); include(rg.usedinproc,r);
include(rg.usedbyproc,r); include(rg.usedbyproc,r);
found:=true; found:=true;
break; break;
end; end;
if not(found) then if not(found) then
consume(_RECKKLAMMER); Message(asmr_e_invalid_register);
consume(_CSTRING); consume(_CSTRING);
if not try_to_consume(_COMMA) then if not try_to_consume(_COMMA) then
break; break;
until false; until false;
consume(_RECKKLAMMER); end;
consume(_RECKKLAMMER);
end end
else else
begin begin
@ -1144,7 +1146,10 @@ implementation
end. end.
{ {
$Log$ $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 * fixed direct assembler for i386
Revision 1.73 2002/08/25 19:25:20 peter Revision 1.73 2002/08/25 19:25:20 peter