mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-10 08:08:36 +02:00
Use proper syntax when emitting UAL VFP instructions for all postfix types.
Fixed postfix of VSQRT instruction. git-svn-id: branches/laksen/armiw@29591 -
This commit is contained in:
parent
db401f0371
commit
60b3ea8038
@ -327,7 +327,7 @@ unit agarmgas;
|
||||
|
||||
if taicpu(hp).ops = 0 then
|
||||
s:=#9+gas_op2str[op]+cond2str[taicpu(hp).condition]+oppostfix2str[taicpu(hp).oppostfix]
|
||||
else if (taicpu(hp).opcode>=A_VABS) and (taicpu(hp).opcode<=A_VSUB) then
|
||||
else if taicpu(hp).oppostfix in [PF_8..PF_U32F64] then
|
||||
s:=#9+gas_op2str[op]+cond2str[taicpu(hp).condition]+oppostfix2str[taicpu(hp).oppostfix]
|
||||
else
|
||||
s:=#9+gas_op2str[op]+oppostfix2str[taicpu(hp).oppostfix]+cond2str[taicpu(hp).condition]+postfix; // Conditional infixes are deprecated in unified syntax
|
||||
|
@ -299,7 +299,7 @@ implementation
|
||||
procedure tarminlinenode.second_sqrt_real;
|
||||
var
|
||||
singleprec: boolean;
|
||||
op: TAsmOp;
|
||||
pf: TOpPostfix;
|
||||
begin
|
||||
load_fpu_location(singleprec);
|
||||
case current_settings.fputype of
|
||||
@ -309,9 +309,16 @@ implementation
|
||||
current_asmdata.CurrAsmList.concat(setoppostfix(taicpu.op_reg_reg(A_SQT,location.register,left.location.register),get_fpu_postfix(resultdef)));
|
||||
fpu_vfpv2,
|
||||
fpu_vfpv3,
|
||||
fpu_vfpv3_d16,
|
||||
fpu_vfpv3_d16:
|
||||
begin
|
||||
if singleprec then
|
||||
pf:=PF_F32
|
||||
else
|
||||
pf:=PF_F64;
|
||||
current_asmdata.CurrAsmList.concat(setoppostfix(taicpu.op_reg_reg(A_VSQRT,location.register,left.location.register),pf));
|
||||
end;
|
||||
fpu_fpv4_s16:
|
||||
current_asmdata.CurrAsmList.concat(taicpu.op_reg_reg(A_VSQRT,location.register,left.location.register));
|
||||
current_asmdata.CurrAsmList.concat(setoppostfix(taicpu.op_reg_reg(A_VSQRT,location.register,left.location.register), PF_F32));
|
||||
else
|
||||
internalerror(2009111402);
|
||||
end;
|
||||
|
Loading…
Reference in New Issue
Block a user