mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-21 15:49:26 +02:00
* bugfix of leal problem
* bugfix of using overrides with record offsets * bugfix if using records to load values
This commit is contained in:
parent
547dca7111
commit
5ce923955d
@ -942,6 +942,8 @@ var
|
||||
Message(assem_e_16bit_base_in_32bit_segment);
|
||||
exit;
|
||||
end; { endif }
|
||||
{ In this case the size of the reference is not taken into account! }
|
||||
instr.operands[2].size := S_NO;
|
||||
end;
|
||||
|
||||
With instr do
|
||||
@ -2164,11 +2166,14 @@ var
|
||||
Repeat
|
||||
case actasmtoken of
|
||||
AS_ID: Begin
|
||||
{ we must reset the operand size - since only the last field }
|
||||
{ will give us the size of the operand. }
|
||||
{ instr.opsize := S_NO;}
|
||||
InitAsmRef(instr);
|
||||
{ // var_name.typefield.typefield // }
|
||||
if (varname <> '') then
|
||||
Begin
|
||||
if not GetVarOffset(varname,actasmpattern,offset) then
|
||||
if not GetVarOffset(instr,varname,actasmpattern,offset,operandnum) then
|
||||
Begin
|
||||
Message1(assem_e_unknown_id,actasmpattern);
|
||||
end
|
||||
@ -2201,7 +2206,7 @@ var
|
||||
{ [ref].typefield.typefield ... }
|
||||
{ basetpyename is already set up... now look for fields. }
|
||||
Begin
|
||||
if not GetTypeOffset(basetypename,actasmpattern,Offset) then
|
||||
if not GetTypeOffset(instr,basetypename,actasmpattern,Offset,operandnum) then
|
||||
Begin
|
||||
Message1(assem_e_unknown_id,actasmpattern);
|
||||
end
|
||||
@ -3165,6 +3170,9 @@ var
|
||||
Case actasmtoken of
|
||||
{ // Reference // }
|
||||
AS_PTR: Begin
|
||||
{ tell that the instruction was overriden }
|
||||
{ so we will NEVER override the opsize }
|
||||
instr.operands[operandnum].overriden := TRUE;
|
||||
initAsmRef(instr);
|
||||
Consume(AS_PTR);
|
||||
BuildOperand(instr);
|
||||
@ -3368,7 +3376,12 @@ begin
|
||||
end.
|
||||
{
|
||||
$Log$
|
||||
Revision 1.5 1998-08-21 08:45:53 pierre
|
||||
Revision 1.6 1998-08-27 00:42:17 carl
|
||||
* bugfix of leal problem
|
||||
* bugfix of using overrides with record offsets
|
||||
* bugfix if using records to load values
|
||||
|
||||
Revision 1.5 1998/08/21 08:45:53 pierre
|
||||
* better line info for asm statements
|
||||
|
||||
Revision 1.4 1998/07/14 14:47:00 peter
|
||||
|
Loading…
Reference in New Issue
Block a user