mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-21 01:29:29 +02:00
* powerpc/powerpc64: merged identical a_jmp_flags methods into base code generator class.
git-svn-id: trunk@27598 -
This commit is contained in:
parent
36e61086de
commit
a8eb55fa7c
@ -60,7 +60,6 @@ unit cgcpu;
|
||||
|
||||
procedure a_jmp_name(list : TAsmList;const s : string); override;
|
||||
procedure a_jmp_always(list : TAsmList;l: tasmlabel); override;
|
||||
procedure a_jmp_flags(list : TAsmList;const f : TResFlags;l: tasmlabel); override;
|
||||
|
||||
procedure g_proc_entry(list : TAsmList;localsize : longint;nostackframe:boolean);override;
|
||||
procedure g_proc_exit(list : TAsmList;parasize : longint;nostackframe:boolean); override;
|
||||
@ -678,14 +677,6 @@ const
|
||||
a_jmp(list,A_B,C_None,0,l);
|
||||
end;
|
||||
|
||||
procedure tcgppc.a_jmp_flags(list : TAsmList;const f : TResFlags;l: tasmlabel);
|
||||
|
||||
var
|
||||
c: tasmcond;
|
||||
begin
|
||||
c := flags_to_cond(f);
|
||||
a_jmp(list,A_BC,c.cond,c.cr-RS_CR0,l);
|
||||
end;
|
||||
|
||||
(*
|
||||
procedure tcgppc.g_cond2reg(list: TAsmList; const f: TAsmCond; reg: TRegister);
|
||||
|
@ -68,8 +68,6 @@ type
|
||||
|
||||
procedure a_jmp_name(list: TAsmList; const s: string); override;
|
||||
procedure a_jmp_always(list: TAsmList; l: tasmlabel); override;
|
||||
procedure a_jmp_flags(list: TAsmList; const f: TResFlags; l: tasmlabel);
|
||||
override;
|
||||
|
||||
{ need to override this for ppc64 to avoid calling CG methods which allocate
|
||||
registers during creation of the interface wrappers to subtract ioffset from
|
||||
@ -1075,16 +1073,6 @@ begin
|
||||
a_jmp(list, A_B, C_None, 0, l);
|
||||
end;
|
||||
|
||||
procedure tcgppc.a_jmp_flags(list: TAsmList; const f: TResFlags; l:
|
||||
tasmlabel);
|
||||
|
||||
var
|
||||
c: tasmcond;
|
||||
begin
|
||||
c := flags_to_cond(f);
|
||||
a_jmp(list, A_BC, c.cond, c.cr - RS_CR0, l);
|
||||
end;
|
||||
|
||||
{ *********** entry/exit code and address loading ************ }
|
||||
|
||||
procedure tcgppc.g_save_registers(list: TAsmList);
|
||||
|
@ -56,6 +56,7 @@ unit cgppc;
|
||||
{ entry code }
|
||||
procedure g_profilecode(list: TAsmList); override;
|
||||
|
||||
procedure a_jmp_flags(list: TAsmList; const f: TResFlags; l: tasmlabel); override;
|
||||
procedure a_jmp_cond(list : TAsmList;cond : TOpCmp;l: tasmlabel);
|
||||
|
||||
procedure g_intf_wrapper(list: TAsmList; procdef: tprocdef; const labelname: string; ioffset: longint);override;
|
||||
@ -673,6 +674,15 @@ unit cgppc;
|
||||
end;
|
||||
|
||||
|
||||
procedure tcgppcgen.a_jmp_flags(list: TAsmList; const f: TResFlags; l: tasmlabel);
|
||||
var
|
||||
c: tasmcond;
|
||||
begin
|
||||
c := flags_to_cond(f);
|
||||
a_jmp(list,A_BC,c.cond,c.cr-RS_CR0,l);
|
||||
end;
|
||||
|
||||
|
||||
procedure tcgppcgen.a_jmp_cond(list : TAsmList;cond : TOpCmp; l: tasmlabel);
|
||||
begin
|
||||
a_jmp(list,A_BC,TOpCmp2AsmCond[cond],0,l);
|
||||
|
Loading…
Reference in New Issue
Block a user