< prev index next >

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

Print this page

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
















181 #endif // SHARE_RUNTIME_CONTINUATIONJAVACLASSES_INLINE_HPP

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