mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-21 11:49:31 +02:00
* AArch64: several issues with taicpu.spilling_get_operation_type fixed
git-svn-id: trunk@42961 -
This commit is contained in:
parent
cc49d256ea
commit
bc473508ff
@ -890,10 +890,13 @@ implementation
|
||||
function taicpu.spilling_get_operation_type(opnr: longint): topertype;
|
||||
begin
|
||||
case opcode of
|
||||
A_B,A_BL,
|
||||
A_B,A_BL,A_BR,A_BLR,
|
||||
A_CMN,A_CMP,
|
||||
A_CCMN,A_CCMP,
|
||||
A_TST:
|
||||
A_TST,
|
||||
A_FCMP,A_FCMPE,
|
||||
A_CBZ,A_CBNZ,
|
||||
A_RET:
|
||||
result:=operand_read;
|
||||
A_STR,A_STUR:
|
||||
if opnr=0 then
|
||||
@ -926,11 +929,78 @@ implementation
|
||||
{ check for pre/post indexed in spilling_get_operation_type_ref }
|
||||
result:=operand_read;
|
||||
end;
|
||||
{$ifdef EXTDEBUG}
|
||||
{ play save to avoid hard to find bugs, better fail at compile time }
|
||||
A_ADD,
|
||||
A_ADRP,
|
||||
A_AND,
|
||||
A_ASR,
|
||||
A_BFI,
|
||||
A_BFXIL,
|
||||
A_CLZ,
|
||||
A_CSEL,
|
||||
A_CSET,
|
||||
A_CSETM,
|
||||
A_FABS,
|
||||
A_EON,
|
||||
A_EOR,
|
||||
A_FADD,
|
||||
A_FCVT,
|
||||
A_FDIV,
|
||||
A_FMADD,
|
||||
A_FMOV,
|
||||
A_FMSUB,
|
||||
A_FMUL,
|
||||
A_FNEG,
|
||||
A_FNMADD,
|
||||
A_FNMSUB,
|
||||
A_FRINTX,
|
||||
A_FSQRT,
|
||||
A_FSUB,
|
||||
A_ORR,
|
||||
A_LSL,
|
||||
A_LSLV,
|
||||
A_LSR,
|
||||
A_LSRV,
|
||||
A_MOV,
|
||||
A_MOVK,
|
||||
A_MOVN,
|
||||
A_MOVZ,
|
||||
A_MSUB,
|
||||
A_MUL,
|
||||
A_MVN,
|
||||
A_NEG,
|
||||
A_LDR,
|
||||
A_LDUR,
|
||||
A_RBIT,
|
||||
A_ROR,
|
||||
A_RORV,
|
||||
A_SBFX,
|
||||
A_SCVTF,
|
||||
A_FCVTZS,
|
||||
A_SDIV,
|
||||
A_SMULL,
|
||||
A_SUB,
|
||||
A_SXT,
|
||||
A_UBFIZ,
|
||||
A_UBFX,
|
||||
A_UCVTF,
|
||||
A_UDIV,
|
||||
A_UMULL,
|
||||
A_UXT:
|
||||
if opnr=0 then
|
||||
result:=operand_write
|
||||
else
|
||||
result:=operand_read;
|
||||
else
|
||||
Internalerror(2019090802);
|
||||
{$else EXTDEBUG}
|
||||
else
|
||||
if opnr=0 then
|
||||
result:=operand_write
|
||||
else
|
||||
result:=operand_read;
|
||||
{$endif EXTDEBUG}
|
||||
end;
|
||||
end;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user