RFR: First refactoring (thaw_fast)

Coleen Phillimore coleenp at openjdk.java.net
Wed Apr 20 18:15:54 UTC 2022


On Wed, 20 Apr 2022 17:39:54 GMT, Frederic Parain <fparain at openjdk.org> wrote:

> Refactoring method thaw_fast() for better encapsulation and readability.

Yes, this is nice and helpful.

src/hotspot/share/oops/stackChunkOop.inline.hpp line 179:

> 177:   bool empty = false;
> 178:   StackChunkFrameStream<ChunkFrames::CompiledOnly> f(this);
> 179:   intptr_t* const chunk_sp = start_address() + sp();

This derelativizes the sp() doesn't it?

src/hotspot/share/oops/stackChunkOop.inline.hpp line 201:

> 199:   assert(empty == is_empty(), "");
> 200:   return frame_size + argsize;
> 201: }

Yes, this belongs here.  It has some frame arithmetic but most is done by stackFrameStream, which is good.
sp() is relative to the address of the stackChunkOop.
Add a comment about what this returns.

src/hotspot/share/runtime/continuationFreezeThaw.cpp line 1629:

> 1627: }
> 1628: 
> 1629: class ReconstructedStack {

pls inherit from StackObj

src/hotspot/share/runtime/continuationFreezeThaw.cpp line 1647:

> 1645:   intptr_t* bottom_sp() const { return ContinuationHelper::frame_align_pointer(_base - _argsize); }
> 1646: 
> 1647:   // several operations operate ont the totality of the stack being reconstructed,

typo

-------------

PR: https://git.openjdk.java.net/loom/pull/158


More information about the loom-dev mailing list