Opened 15 years ago

Closed 14 years ago

Last modified 46 years ago

#496 closed bug (Fixed)

Allocating more than BLOCK_SIZE bytes of memory fails

Reported by: simonmar Owned by: simonmar
Priority: normal Milestone:
Component: Runtime System Version: None
Keywords: Cc:
Operating System: Architecture:
Type of failure: Test Case:
Blocked By: Blocking:
Related Tickets: Differential Rev(s):


The compiler cannot generate code that allocates more than BLOCK_SIZE bytes in one go.  At the moment, the compiler will panic in the code generator if it finds itself trying to generate code with an oversized heap request in it.

There's no easy fix for this one: splitting up the allocation in the compiler is hard if not impossible (splitting up a recursive allocation can't be done).  Even if we allowed the thread to allocate into a large block, the garbage collector can't cope with large blocks containing small objects, and objects that don't start at the beginning of the large block.

Change History (1)

comment:1 Changed 14 years ago by simonmar

  • Status changed from assigned to closed
Logged In: YES 

Fixed (finally!)
Note: See TracTickets for help on using tickets.