Browse Source

minor

git-svn-id: https://svn.inf.ethz.ch/svn/lecturers/a2/trunk@6688 8c9fc860-2736-0410-a75d-ab315db34111
felixf 9 years ago
parent
commit
6f2a117ff3
1 changed files with 3 additions and 2 deletions
  1. 3 2
      source/Heaps.Mod

+ 3 - 2
source/Heaps.Mod

@@ -1033,7 +1033,7 @@ VAR throughput := 0 : SIZE;
 
 
 (* NewBlock - Allocate a heap block. {(size MOD BlockSize = 0)}. Caller must hold Heap lock. *)
 (* NewBlock - Allocate a heap block. {(size MOD BlockSize = 0)}. Caller must hold Heap lock. *)
 PROCEDURE NewBlock(size: SIZE): ADDRESS;
 PROCEDURE NewBlock(size: SIZE): ADDRESS;
-VAR try: LONGINT; p {UNTRACED}, freeBlock {UNTRACED}: FreeBlock; memBlock {UNTRACED}: Machine.MemoryBlock;
+VAR try: LONGINT; p: FreeBlock; freeBlock : FreeBlockU; memBlock {UNTRACED}: Machine.MemoryBlock;
 	beginHeapBlockAdr, endHeapBlockAdr: ADDRESS;
 	beginHeapBlockAdr, endHeapBlockAdr: ADDRESS;
 
 
 	PROCEDURE CheckPostGC;
 	PROCEDURE CheckPostGC;
@@ -1062,7 +1062,7 @@ BEGIN
 		IF p = NIL THEN
 		IF p = NIL THEN
 			Machine.ExpandHeap(try, size, memBlock, beginHeapBlockAdr, endHeapBlockAdr);	(* try to extend the heap *)
 			Machine.ExpandHeap(try, size, memBlock, beginHeapBlockAdr, endHeapBlockAdr);	(* try to extend the heap *)
 			IF endHeapBlockAdr > beginHeapBlockAdr THEN
 			IF endHeapBlockAdr > beginHeapBlockAdr THEN
-				freeBlock := SYSTEM.VAL(FreeBlock, beginHeapBlockAdr + BlockHeaderSize);
+				freeBlock := beginHeapBlockAdr + BlockHeaderSize;
 				InitFreeBlock(freeBlock, Unmarked, NilVal, endHeapBlockAdr - beginHeapBlockAdr);
 				InitFreeBlock(freeBlock, Unmarked, NilVal, endHeapBlockAdr - beginHeapBlockAdr);
 				Machine.SetMemoryBlockEndAddress(memBlock, endHeapBlockAdr); (* end address of expanded block must set after free block is fit in memory block *)
 				Machine.SetMemoryBlockEndAddress(memBlock, endHeapBlockAdr); (* end address of expanded block must set after free block is fit in memory block *)
 				IF EnableFreeLists THEN AppendFreeBlock(freeBlock)
 				IF EnableFreeLists THEN AppendFreeBlock(freeBlock)
@@ -1516,5 +1516,6 @@ TraceHeap:
 11.07.2008 	ug	new heap data structures and adaption to GC
 11.07.2008 	ug	new heap data structures and adaption to GC
 *)
 *)
 
 
+Compiler.Compile -p=Win32G --traceModule=Trace Heaps.Mod ~
 StaticLinker.Link --fileFormat=PE32 --fileName=A2M.exe --extension=GofW --displacement=401000H Runtime Trace Kernel32 Machine Heaps Modules Objects Kernel KernelLog Streams Commands FIles WinFS Clock Dates Reals Strings Diagnostics BitSets StringPool ObjectFile GenericLinker Reflection  GenericLoader  BootConsole ~
 StaticLinker.Link --fileFormat=PE32 --fileName=A2M.exe --extension=GofW --displacement=401000H Runtime Trace Kernel32 Machine Heaps Modules Objects Kernel KernelLog Streams Commands FIles WinFS Clock Dates Reals Strings Diagnostics BitSets StringPool ObjectFile GenericLinker Reflection  GenericLoader  BootConsole ~
 FSTools.CloseFiles A2M.exe ~
 FSTools.CloseFiles A2M.exe ~