* moved the handling of the @Code and @Data inline assembler symbols to new methods Tx86operand.SetupCode and .SetupData

git-svn-id: trunk@32279 -
This commit is contained in:
nickysn 2015-11-10 14:04:40 +00:00
parent aa7058e82d
commit 43dabca8ab
2 changed files with 24 additions and 2 deletions

View File

@ -45,6 +45,10 @@ type
Procedure SetSize(_size:longint;force:boolean);override;
Procedure SetCorrectSize(opcode:tasmop);override;
Function CheckOperand: boolean; override;
{ handles the @Code symbol }
Procedure SetupCode;
{ handles the @Data symbol }
Procedure SetupData;
end;
{ Operands are always in AT&T order.
@ -284,6 +288,18 @@ begin
end;
procedure Tx86Operand.SetupCode;
begin
Message(asmr_w_CODE_and_DATA_not_supported);
end;
procedure Tx86Operand.SetupData;
begin
Message(asmr_w_CODE_and_DATA_not_supported);
end;
{*****************************************************************************
T386Instruction
*****************************************************************************}

View File

@ -1803,9 +1803,15 @@ Unit Rax86int;
Consume(AS_ID);
end
else
if (actasmpattern = '@CODE') or (actasmpattern = '@DATA') then
if actasmpattern = '@CODE' then
begin
Message(asmr_w_CODE_and_DATA_not_supported);
oper.SetupCode;
Consume(AS_ID);
end
else
if actasmpattern = '@DATA' then
begin
oper.SetupData;
Consume(AS_ID);
end
else