Lines Matching defs:space

51 // A space is an abstraction for the "storage units" backing
53 // implementations for keeping track of free and used space,
59 // - CompactibleSpace -- a space supporting compaction
61 // - ContiguousSpace -- a compactible space in which all free space
63 // - EdenSpace -- contiguous space used as nursery
64 // - ConcEdenSpace -- contiguous space with a 'soft end safe' allocation
65 // - OffsetTableContigSpace -- contiguous space with a block offset array
68 // - ContigPermSpace -- an offset table contiguous space for perm gen
145 // Returns a subregion of the space containing all the objects in
146 // the space.
150 // allocated at the time of the last call to "save_marks". If the space
152 // (that is, if the space is contiguous), then this region must contain only
155 // the space must distiguish between objects in the region allocated before
162 // "initialize" should be called once on a space, before it is used for
163 // any purpose. The "mr" arguments gives the bounds of the space, and
173 // some unused space may be used as scratch space during GC's.
175 // a space to satisfy an allocation request. See bug #4668531
184 // Returns true iff the given the space contains the
192 // Returns true iff the given reserved memory of the space contains the
210 // space, calling "cl.do_oop" on each. Fields in objects allocated by
215 // the space. Fields in objects allocated by applications of the closure
219 // Iterate over all objects in the space, calling "cl.do_object" on
224 // objects whose internal references point to objects in the space.
234 // Iterate over as many initialized objects in the space as possible,
236 // in the space (at the start of the iteration) were iterated over.
239 // uninitialized object in the space, or if the closure "cl"
247 // depending on the type of space in which the closure will
253 // If "p" is in the space, returns the address of the start of the
256 // object or a non-object. If "p" is not in the space, return NULL.
279 // mutually exclusive access to the space.
319 // to support other space types. See ContiguousDCTOC for a sub-class
381 CompactibleSpace* space;
385 gen(_gen), space(_space), threshold(_threshold) {}
389 // A space that supports compaction operations. This is usually, but not
390 // necessarily, a space that is normally contiguous. But, for example, a
391 // free-list-based space whose normal collection is a mark-sweep without
416 "should point inside space");
420 // Perform operations on the space needed after a compaction
424 // Returns the next space (in the current generation) to be compacted in
426 // space into which to compact.
438 // Start the process of compaction of the current space: compute
440 // "cp->gen" and "cp->compaction_space" are the generation and space into
453 // live part of a compacted space ("deadwood" support.)
459 // (The default implementation returns the end of the space, so the
465 // also equal "cp->space"). "compact_top" is where in "this" the
468 // If not, go to the next compaction space (there must
469 // be one, since compaction must succeed -- we go to the first space of
473 // function of the then-current compaction space, and updates "cp->threshold
478 // Return a size with adjusments as required of the space.
514 * space, so this is a good time to initialize this: \
518 if (cp->space == NULL) { \
522 cp->space = cp->gen->first_compaction_space(); \
523 compact_top = cp->space->bottom(); \
524 cp->space->set_compaction_top(compact_top); \
525 cp->threshold = cp->space->initialize_threshold(); \
527 compact_top = cp->space->compaction_top(); \
530 /* We allow some amount of garbage towards the bottom of the space, so \
567 compact_top = cp->space->forward(oop(q), size, cp, compact_top); \
585 compact_top = cp->space->forward(oop(q), sz, cp, compact_top); \
626 /* save the compaction_top of the compaction space. */ \
627 cp->space->set_compaction_top(compact_top); \
641 /* we have a chunk of the space which hasn't moved and we've \
716 /* we have a chunk of the space which hasn't moved and we've reinitialized \
773 /* Reset space after compaction is complete */ \
776 /* space subtypes. For example, OffsetTableContigSpace's that were */ \
789 // A space in which the free area is contiguous. It therefore supports
797 // A helper for mangling the unused area of the space in debug builds.
826 // pattern) the unused part of a space.
828 // Used to save the an address in a space for later use during mangling.
830 // Used to save the space's current top for later use during mangling.
833 // Mangle regions in the space from the current top up to the
834 // previously mangled part of the space.
852 // Override from space.
857 // In a contiguous space we have a more obvious bound on what parts
878 // in the space (i.e., between bottom and top) when at a safepoint.
906 assert(compaction_top() >= bottom() && compaction_top() <= end(), "should point inside space");
961 // space.
1001 // contained by the space is bounded by the end of the contiguous
1002 // region of the space.
1003 // 2. That the space is really made up of objects and not just
1027 // Class EdenSpace describes eden-space in new generation.
1112 // Shared space support