From fcc225466fa2fbb29e2f42eb582160de4d04de91 Mon Sep 17 00:00:00 2001 From: Doug Coleman Date: Tue, 10 Mar 2020 03:31:23 -0500 Subject: [PATCH] vm/allot.hpp: Print more room info when allot() fails. This is to help debug win64. Some interesting observations: fails without any error: factor.com -codeheap=74000 fails with VirtualAlloc error: factor.com -codeheap=80000 --- vm/allot.hpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/vm/allot.hpp b/vm/allot.hpp index b6bb8c1b71..1987b2b0e4 100644 --- a/vm/allot.hpp +++ b/vm/allot.hpp @@ -20,9 +20,10 @@ inline code_block* factor_vm::allot_code_block(cell size, // Insufficient room even after code GC, give up if (block == NULL) { - std::cout << "Code heap used: " << code->allocator->occupied_space() - << "\n"; - std::cout << "Code heap free: " << code->allocator->free_space << "\n"; + std::cout << "Code heap used: " << code->allocator->occupied_space() << "\n"; + std::cout << "Code heap free: " << code->allocator->free_space << "\n"; + std::cout << "Code heap free_block_count: " << code->allocator->free_block_count << "\n"; + std::cout << "Code heap largest_free_block: " << code->allocator->largest_free_block() << "\n"; std::cout << "Request : " << block_size << "\n"; fatal_error("Out of memory in allot_code_block", 0); } -- 2.34.1