mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-09-16 11:49:22 +02:00
* use setsize for size specifier
This commit is contained in:
parent
5e3532dd01
commit
5b62f5052c
@ -41,7 +41,7 @@ Implementation
|
||||
globtype,globals,verbose,
|
||||
systems,
|
||||
{ aasm }
|
||||
cpubase,aasmbase,aasmtai,aasmcpu,
|
||||
cpuinfo,cpubase,aasmbase,aasmtai,aasmcpu,
|
||||
{ symtable }
|
||||
symconst,symbase,symtype,symsym,symtable,
|
||||
{ pass 1 }
|
||||
@ -1620,7 +1620,7 @@ end;
|
||||
Procedure T386IntelInstruction.BuildOpCode;
|
||||
var
|
||||
PrefixOp,OverrideOp: tasmop;
|
||||
size : tcgsize;
|
||||
size,
|
||||
operandnum : longint;
|
||||
Begin
|
||||
PrefixOp:=A_None;
|
||||
@ -1705,27 +1705,13 @@ Begin
|
||||
Begin
|
||||
{ load the size in a temp variable, so it can be set when the
|
||||
operand is read }
|
||||
size:=0;
|
||||
Case actasmtoken of
|
||||
AS_DWORD : size:=OS_32;
|
||||
AS_WORD : size:=OS_16;
|
||||
AS_BYTE : size:=OS_8;
|
||||
AS_QWORD : begin
|
||||
if (opcode=A_FCOM) or
|
||||
(opcode=A_FCOMP) or
|
||||
(opcode=A_FDIV) or
|
||||
(opcode=A_FDIVR) or
|
||||
(opcode=A_FMUL) or
|
||||
(opcode=A_FSUB) or
|
||||
(opcode=A_FSUBR) or
|
||||
(opcode=A_FLD) or
|
||||
(opcode=A_FST) or
|
||||
(opcode=A_FSTP) or
|
||||
(opcode=A_FADD) then
|
||||
size:=OS_F64
|
||||
else
|
||||
size:=OS_64;
|
||||
end;
|
||||
AS_TBYTE : size:=OS_F80;
|
||||
AS_DWORD : size:=4;
|
||||
AS_WORD : size:=2;
|
||||
AS_BYTE : size:=1;
|
||||
AS_QWORD : size:=8;
|
||||
AS_TBYTE : size:=extended_size;
|
||||
end;
|
||||
Consume(actasmtoken);
|
||||
if actasmtoken=AS_PTR then
|
||||
@ -1735,7 +1721,7 @@ Begin
|
||||
end;
|
||||
Operands[operandnum].BuildOperand;
|
||||
{ now set the size which was specified by the override }
|
||||
Operands[operandnum].size:=size;
|
||||
Operands[operandnum].setsize(size,true);
|
||||
end;
|
||||
|
||||
{ Type specifier }
|
||||
@ -1961,7 +1947,10 @@ finalization
|
||||
end.
|
||||
{
|
||||
$Log$
|
||||
Revision 1.48 2003-05-30 23:57:08 peter
|
||||
Revision 1.49 2003-06-06 14:41:59 peter
|
||||
* use setsize for size specifier
|
||||
|
||||
Revision 1.48 2003/05/30 23:57:08 peter
|
||||
* more sparc cleanup
|
||||
* accumulator removed, splitted in function_return_reg (called) and
|
||||
function_result_reg (caller)
|
||||
|
Loading…
Reference in New Issue
Block a user