anchor.diff:      Exit;
     end;
   
  -  {$ifdef MSWINDOWS}
  -    Result := VirtualAlloc(nil, SIZE_K64, MEM_COMMIT, PAGE_READWRITE);
  -  {$else .POSIX}
  -    Result := memalign(SIZE_K64, SIZE_K64);
  -  {$endif}
  +  GlobalStorage := Pointer(NativeInt(@GLOBAL_STORAGE[63]) and MASK_64_CLEAR);
  +  Result := GlobalStorage.K64BlockCache.Stack.Pop;
  +  if (Result <> nil) then
  +  begin
  +    AtomicDecrement(NativeUInt(GlobalStorage.K64BlockCache.Count));
  +  end else
  +  begin
  +    {$ifdef MSWINDOWS}
  +      Result := VirtualAlloc(nil, SIZE_K64, MEM_COMMIT, PAGE_READWRITE);
  +    {$else .POSIX}
  +      Result := memalign(SIZE_K64, SIZE_K64);
  +    {$endif}
  +  end;
   
     if (Result <> nil) and (PagesMode = PAGESMODE_JIT) then
       ChangeMemoryAccessRights(Result, 64 div 4, [marRead, marWrite, marExecute]);
   end;
   
   function BrainMMFreeMemoryBlock(Block: MemoryBlock; PagesMode: NativeUInt): Boolean;
  +var
  +  GlobalStorage: PGlobalStorage;
   begin
     // todo
     if (PagesMode = PAGESMODE_USER) then
  
positive.code:     1: (POINTERS: array[1..22] of Pointer);
    end;
  
  var
    MemoryManager: TBrainMemoryManager;
  
  var
    ThreadHeapList: PThreadHeap;
    // todo
    // ALIGNED_PAGES_HASH: array[0..1023] of SupposedPtr{PK4PagesOptions};
  
  {$ifdef BRAINMM_UNITTEST}
  
    function CurrentThreadHeap: PThreadHeap;
  implementation
  {$endif}
  
negative.code:     Exit;
    end;
  
    GlobalStorage := Pointer(NativeInt(@GLOBAL_STORAGE[63]) and MASK_64_CLEAR);
    if (GlobalStorage.K64BlockCache.Count < 16) then
    begin
      AtomicIncrement(NativeUInt(GlobalStorage.K64BlockCache.Count));
      GlobalStorage.K64BlockCache.Stack.Push(Block);
      Result := True;
    end else
    begin
      {$ifdef MSWINDOWS}
        Result := VirtualFree(Block, 0, MEM_RELEASE);
      {$else .POSIX}
        free(Block);
        Result := True;
      {$endif}
    end;
  end;
  
  function BrainMMGetMemoryPages(Count: NativeUInt; PagesMode: NativeUInt): MemoryPages;
  