From 460c4acaeeeb7d845729cafbc0213e1a2d3c4ef8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?K=C3=A1roly=20Balogh?= Date: Sun, 1 Feb 2015 15:28:54 +0000 Subject: [PATCH] m68k: implement taicpu.spilling_get_operation_type_ref, supports predecrement/postincrement addressing git-svn-id: trunk@29593 - --- compiler/m68k/aasmcpu.pas | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/compiler/m68k/aasmcpu.pas b/compiler/m68k/aasmcpu.pas index f2d0f34104..cb59c976d4 100644 --- a/compiler/m68k/aasmcpu.pas +++ b/compiler/m68k/aasmcpu.pas @@ -87,6 +87,7 @@ type function is_same_reg_move(regtype: Tregistertype):boolean;override; function spilling_get_operation_type(opnr: longint): topertype;override; + function spilling_get_operation_type_ref(opnr: longint; reg: tregister): topertype;override; private procedure init(_size : topsize); { this need to be called by all constructor } @@ -501,6 +502,13 @@ type end; end; + function taicpu.spilling_get_operation_type_ref(opnr: longint; reg: tregister): topertype; + begin + result := operand_read; + if (oper[opnr]^.ref^.base = reg) and + (oper[opnr]^.ref^.direction <> dir_none) then + result := operand_readwrite; + end; function spilling_create_load(const ref:treference;r:tregister):Taicpu; begin