mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-16 02:49:21 +02:00
+ support local label data access in the i8086 inline asm (fixes test tlbldat1.pp)
git-svn-id: trunk@32179 -
This commit is contained in:
parent
ce7672b750
commit
ef5e368327
@ -922,6 +922,27 @@ Begin
|
|||||||
SetupVar:=TRUE;
|
SetupVar:=TRUE;
|
||||||
Exit;
|
Exit;
|
||||||
end;
|
end;
|
||||||
|
{$ifdef i8086}
|
||||||
|
labelsym :
|
||||||
|
begin
|
||||||
|
case opr.typ of
|
||||||
|
OPR_REFERENCE:
|
||||||
|
begin
|
||||||
|
opr.ref.symbol:=current_asmdata.RefAsmSymbol(tlabelsym(sym).mangledname);
|
||||||
|
if opr.ref.segment=NR_NO then
|
||||||
|
opr.ref.segment:=NR_CS;
|
||||||
|
end;
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
Message(asmr_e_unsupported_symbol_type);
|
||||||
|
exit;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
hasvar:=true;
|
||||||
|
SetupVar:=TRUE;
|
||||||
|
Exit;
|
||||||
|
end
|
||||||
|
{$endif i8086}
|
||||||
else
|
else
|
||||||
begin
|
begin
|
||||||
Message(asmr_e_unsupported_symbol_type);
|
Message(asmr_e_unsupported_symbol_type);
|
||||||
|
@ -1263,6 +1263,10 @@ Unit Rax86int;
|
|||||||
end
|
end
|
||||||
else
|
else
|
||||||
oper.opr.ref.relsymbol:=hl;
|
oper.opr.ref.relsymbol:=hl;
|
||||||
|
{$ifdef i8086}
|
||||||
|
if oper.opr.ref.segment=NR_NO then
|
||||||
|
oper.opr.ref.segment:=NR_CS;
|
||||||
|
{$endif i8086}
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
if oper.SetupVar(tempstr,GotOffset) then
|
if oper.SetupVar(tempstr,GotOffset) then
|
||||||
|
Loading…
Reference in New Issue
Block a user