|
@@ -101,7 +101,6 @@ interface
|
|
|
procedure g_maybe_got_init(list: TAsmList); override;
|
|
|
procedure g_restore_registers(list: TAsmList);override;
|
|
|
procedure g_save_registers(list: TAsmList);override;
|
|
|
- procedure g_concatcopy_move(list: TAsmList; const source, dest: treference; len: tcgint);
|
|
|
procedure g_concatcopy(list: TAsmList; const source, dest: treference; len: tcgint);override;
|
|
|
procedure g_adjust_self_value(list: TAsmList; procdef: tprocdef; ioffset: tcgint);override;
|
|
|
procedure g_check_for_fpu_exception(list: TAsmList; force, clear: boolean);override;
|
|
@@ -2168,37 +2167,6 @@ implementation
|
|
|
end;
|
|
|
|
|
|
|
|
|
- { ************* concatcopy ************ }
|
|
|
-
|
|
|
- procedure tcgaarch64.g_concatcopy_move(list : TAsmList;const source,dest : treference;len : tcgint);
|
|
|
- var
|
|
|
- paraloc1,paraloc2,paraloc3 : TCGPara;
|
|
|
- pd : tprocdef;
|
|
|
- begin
|
|
|
- pd:=search_system_proc('MOVE');
|
|
|
- paraloc1.init;
|
|
|
- paraloc2.init;
|
|
|
- paraloc3.init;
|
|
|
- paramanager.getcgtempparaloc(list,pd,1,paraloc1);
|
|
|
- paramanager.getcgtempparaloc(list,pd,2,paraloc2);
|
|
|
- paramanager.getcgtempparaloc(list,pd,3,paraloc3);
|
|
|
- a_load_const_cgpara(list,OS_SINT,len,paraloc3);
|
|
|
- a_loadaddr_ref_cgpara(list,dest,paraloc2);
|
|
|
- a_loadaddr_ref_cgpara(list,source,paraloc1);
|
|
|
- paramanager.freecgpara(list,paraloc3);
|
|
|
- paramanager.freecgpara(list,paraloc2);
|
|
|
- paramanager.freecgpara(list,paraloc1);
|
|
|
- alloccpuregisters(list,R_INTREGISTER,paramanager.get_volatile_registers_int(pocall_default));
|
|
|
- alloccpuregisters(list,R_MMREGISTER,paramanager.get_volatile_registers_mm(pocall_default));
|
|
|
- a_call_name(list,'FPC_MOVE',false);
|
|
|
- dealloccpuregisters(list,R_MMREGISTER,paramanager.get_volatile_registers_mm(pocall_default));
|
|
|
- dealloccpuregisters(list,R_INTREGISTER,paramanager.get_volatile_registers_int(pocall_default));
|
|
|
- paraloc3.done;
|
|
|
- paraloc2.done;
|
|
|
- paraloc1.done;
|
|
|
- end;
|
|
|
-
|
|
|
-
|
|
|
procedure tcgaarch64.g_concatcopy(list: TAsmList; const source, dest: treference; len: tcgint);
|
|
|
|
|
|
var
|