< prev index next >

src/hotspot/share/runtime/continuationJavaClasses.inline.hpp

Print this page

168 inline void jdk_internal_vm_StackChunk::release_set_flags(oop chunk, uint8_t value) {
169   Atomic::release_store(chunk->field_addr<uint8_t>(_flags_offset), value);
170 }
171 
172 inline bool jdk_internal_vm_StackChunk::try_set_flags(oop chunk, uint8_t expected_value, uint8_t new_value) {
173   return Atomic::cmpxchg(chunk->field_addr<uint8_t>(_flags_offset), expected_value, new_value) == expected_value;
174 }
175 
176 inline int jdk_internal_vm_StackChunk::maxThawingSize(oop chunk) {
177   return chunk->int_field(_maxThawingSize_offset);
178 }
179 
180 inline void jdk_internal_vm_StackChunk::set_maxThawingSize(oop chunk, int value) {
181 #ifdef ASSERT
182   jint old = maxThawingSize(chunk);
183   log_develop_trace(continuations)("%s max_size: %d -> %d", value >= old ? "add" : "sub", old, value);
184 #endif
185   chunk->int_field_put(_maxThawingSize_offset, value);
186 }
187 
















188 #endif // SHARE_RUNTIME_CONTINUATIONJAVACLASSES_INLINE_HPP

168 inline void jdk_internal_vm_StackChunk::release_set_flags(oop chunk, uint8_t value) {
169   Atomic::release_store(chunk->field_addr<uint8_t>(_flags_offset), value);
170 }
171 
172 inline bool jdk_internal_vm_StackChunk::try_set_flags(oop chunk, uint8_t expected_value, uint8_t new_value) {
173   return Atomic::cmpxchg(chunk->field_addr<uint8_t>(_flags_offset), expected_value, new_value) == expected_value;
174 }
175 
176 inline int jdk_internal_vm_StackChunk::maxThawingSize(oop chunk) {
177   return chunk->int_field(_maxThawingSize_offset);
178 }
179 
180 inline void jdk_internal_vm_StackChunk::set_maxThawingSize(oop chunk, int value) {
181 #ifdef ASSERT
182   jint old = maxThawingSize(chunk);
183   log_develop_trace(continuations)("%s max_size: %d -> %d", value >= old ? "add" : "sub", old, value);
184 #endif
185   chunk->int_field_put(_maxThawingSize_offset, value);
186 }
187 
188 inline uint8_t jdk_internal_vm_StackChunk::lockStackSize(oop chunk) {
189   return Atomic::load(chunk->field_addr<uint8_t>(_lockStackSize_offset));
190 }
191 
192 inline void jdk_internal_vm_StackChunk::set_lockStackSize(oop chunk, uint8_t value) {
193   Atomic::store(chunk->field_addr<uint8_t>(_lockStackSize_offset), value);
194 }
195 
196 inline address jdk_internal_vm_StackChunk::objectWaiter(oop chunk) {
197   return chunk->address_field(_objectWaiter_offset);
198 }
199 
200 inline void jdk_internal_vm_StackChunk::set_objectWaiter(oop chunk, address value) {
201   chunk->address_field_put(_objectWaiter_offset, value);
202 }
203 
204 #endif // SHARE_RUNTIME_CONTINUATIONJAVACLASSES_INLINE_HPP
< prev index next >