- RTL: cleaned out FPC_FREEMEM_X. We now have a dedicated compilerproc 'fpc_freemem' for this purpose.

git-svn-id: trunk@27232 -
This commit is contained in:
sergei 2014-03-23 02:11:38 +00:00
parent c376210946
commit 8ad5e6fb26
3 changed files with 3 additions and 7 deletions

View File

@ -505,8 +505,6 @@ end;
{$ifndef darwin}
{$define FPC_SYSTEM_HAS_ANSISTR_DECR_REF}
function fpc_freemem_x(p:pointer):ptrint; [external name 'FPC_FREEMEM_X'];
Procedure fpc_ansistr_decr_ref (Var S : Pointer); [Public,Alias:'FPC_ANSISTR_DECR_REF'];assembler;nostackframe; compilerproc;
asm
ldr r1, [r0]
@ -545,7 +543,7 @@ asm
// but we need to stay backward compatible with 2.6
sub r0, r0, #12
// Jump without a link, so freemem directly returns to our caller
b FPC_FREEMEM_X
b FPC_FREEMEM
end;
{$endif not darwin}

View File

@ -1446,8 +1446,6 @@ procedure fpc_cpucodeinit;
{$ifdef FPC_HAS_FEATURE_ANSISTRINGS}
{$define FPC_SYSTEM_HAS_ANSISTR_DECR_REF}
function fpc_freemem_x(p:pointer):ptrint; [external name 'FPC_FREEMEM_X'];
Procedure fpc_AnsiStr_Decr_Ref (Var S : Pointer); [Public,Alias:'FPC_ANSISTR_DECR_REF']; compilerproc; nostackframe; assembler;
asm
cmpl $0,(%eax)
@ -1480,7 +1478,7 @@ asm
je .Lj3596
.Lj3620:
movl %esi,%eax
call FPC_FREEMEM_X
call FPC_FREEMEM
.Lj3596:
popl %esi
.Lquit:

View File

@ -311,7 +311,7 @@ end;
{ Delphi style }
function FreeMem(p:pointer):ptruint;[Public,Alias:'FPC_FREEMEM_X'];
function FreeMem(p:pointer):ptruint;
begin
FreeMem := MemoryManager.FreeMem(p);
end;