8287044: Loom: Incorrect StackChunk::pc accessors

Reviewed-by: rpressler, coleenp
This commit is contained in:
Aleksey Shipilev 2022-05-23 05:40:34 +00:00
parent c156bcc599
commit 9008cfad45
3 changed files with 8 additions and 8 deletions

View file

@ -1168,8 +1168,8 @@ class jdk_internal_vm_StackChunk: AllStatic {
static inline int sp(oop chunk); static inline int sp(oop chunk);
static inline void set_sp(oop chunk, int value); static inline void set_sp(oop chunk, int value);
static inline void set_sp(HeapWord* chunk, int value); // used while allocating static inline void set_sp(HeapWord* chunk, int value); // used while allocating
static inline intptr_t pc(oop chunk); static inline address pc(oop chunk);
static inline void set_pc(oop chunk, intptr_t value); static inline void set_pc(oop chunk, address value);
static inline int argsize(oop chunk); static inline int argsize(oop chunk);
static inline void set_argsize(oop chunk, int value); static inline void set_argsize(oop chunk, int value);
static inline uint8_t flags(oop chunk); static inline uint8_t flags(oop chunk);

View file

@ -326,12 +326,12 @@ inline void jdk_internal_vm_StackChunk::set_sp(HeapWord* chunk, int value) {
*(int*)(((char*)chunk) + _sp_offset) = (int)value; *(int*)(((char*)chunk) + _sp_offset) = (int)value;
} }
inline intptr_t jdk_internal_vm_StackChunk::pc(oop chunk) { inline address jdk_internal_vm_StackChunk::pc(oop chunk) {
return chunk->long_field(_pc_offset); return chunk->address_field(_pc_offset);
} }
inline void jdk_internal_vm_StackChunk::set_pc(oop chunk, intptr_t value) { inline void jdk_internal_vm_StackChunk::set_pc(oop chunk, address value) {
chunk->long_field_put(_pc_offset, value); chunk->address_field_put(_pc_offset, value);
} }
inline int jdk_internal_vm_StackChunk::argsize(oop chunk) { inline int jdk_internal_vm_StackChunk::argsize(oop chunk) {

View file

@ -57,8 +57,8 @@ inline int stackChunkOopDesc::stack_size() const { return jdk_internal_vm
inline int stackChunkOopDesc::sp() const { return jdk_internal_vm_StackChunk::sp(as_oop()); } inline int stackChunkOopDesc::sp() const { return jdk_internal_vm_StackChunk::sp(as_oop()); }
inline void stackChunkOopDesc::set_sp(int value) { jdk_internal_vm_StackChunk::set_sp(this, value); } inline void stackChunkOopDesc::set_sp(int value) { jdk_internal_vm_StackChunk::set_sp(this, value); }
inline address stackChunkOopDesc::pc() const { return (address)jdk_internal_vm_StackChunk::pc(as_oop()); } inline address stackChunkOopDesc::pc() const { return jdk_internal_vm_StackChunk::pc(as_oop()); }
inline void stackChunkOopDesc::set_pc(address value) { jdk_internal_vm_StackChunk::set_pc(this, (intptr_t)value); } inline void stackChunkOopDesc::set_pc(address value) { jdk_internal_vm_StackChunk::set_pc(this, value); }
inline int stackChunkOopDesc::argsize() const { return jdk_internal_vm_StackChunk::argsize(as_oop()); } inline int stackChunkOopDesc::argsize() const { return jdk_internal_vm_StackChunk::argsize(as_oop()); }
inline void stackChunkOopDesc::set_argsize(int value) { jdk_internal_vm_StackChunk::set_argsize(as_oop(), value); } inline void stackChunkOopDesc::set_argsize(int value) { jdk_internal_vm_StackChunk::set_argsize(as_oop(), value); }