소스 검색

Make HeapMgr.GetAlignedMem public. This function is useful for embedded targets where alignment > 32(or sizeof(pointer)) bytes is required.
Fix RegisterHeapBlock. Calling FreeMem requires the heap manager to be installed, plus it requires the size of the segment to be stored in front of the pointer. Instead use InternalFreeMem

git-svn-id: trunk@29611 -

Jeppe Johansen 10 년 전
부모
커밋
85c5e7330a
1개의 변경된 파일3개의 추가작업 그리고 1개의 파일을 삭제
  1. 3 1
      rtl/embedded/heapmgr.pp

+ 3 - 1
rtl/embedded/heapmgr.pp

@@ -18,6 +18,8 @@ Unit heapmgr;
   interface
 
     procedure RegisterHeapBlock(AAddress: pointer; ASize: ptruint);
+    
+    function GetAlignedMem(Size, Alignment: ptruint): pointer;
 
   implementation
 
@@ -220,7 +222,7 @@ Unit heapmgr;
 
     procedure RegisterHeapBlock(AAddress: pointer; ASize: ptruint);
       begin
-        FreeMem(AAddress, ASize);
+        InternalFreeMem(AAddress, ASize);
       end;
 
     const