src/share/vm/utilities/stack.inline.hpp

changeset 10015
eb7ce841ccec
parent 9448
73d689add964
parent 9997
c7ef664f8649
equal deleted inserted replaced
9934:2251ba078bec 10015:eb7ce841ccec
24 24
25 #ifndef SHARE_VM_UTILITIES_STACK_INLINE_HPP 25 #ifndef SHARE_VM_UTILITIES_STACK_INLINE_HPP
26 #define SHARE_VM_UTILITIES_STACK_INLINE_HPP 26 #define SHARE_VM_UTILITIES_STACK_INLINE_HPP
27 27
28 #include "utilities/stack.hpp" 28 #include "utilities/stack.hpp"
29 #include "utilities/copy.hpp"
29 30
30 template <MEMFLAGS F> StackBase<F>::StackBase(size_t segment_size, size_t max_cache_size, 31 template <MEMFLAGS F> StackBase<F>::StackBase(size_t segment_size, size_t max_cache_size,
31 size_t max_size): 32 size_t max_size):
32 _seg_size(segment_size), 33 _seg_size(segment_size),
33 _max_cache_size(max_cache_size), 34 _max_cache_size(max_cache_size),
225 template <class E, MEMFLAGS F> 226 template <class E, MEMFLAGS F>
226 void Stack<E, F>::zap_segment(E* seg, bool zap_link_field) const 227 void Stack<E, F>::zap_segment(E* seg, bool zap_link_field) const
227 { 228 {
228 if (!ZapStackSegments) return; 229 if (!ZapStackSegments) return;
229 const size_t zap_bytes = segment_bytes() - (zap_link_field ? 0 : sizeof(E*)); 230 const size_t zap_bytes = segment_bytes() - (zap_link_field ? 0 : sizeof(E*));
230 uint32_t* cur = (uint32_t*)seg; 231 Copy::fill_to_bytes(seg, zap_bytes, badStackSegVal);
231 const uint32_t* end = cur + zap_bytes / sizeof(uint32_t);
232 while (cur < end) {
233 *cur++ = 0xfadfaded;
234 }
235 } 232 }
236 #endif 233 #endif
237 234
238 template <class E, MEMFLAGS F> 235 template <class E, MEMFLAGS F>
239 E* ResourceStack<E, F>::alloc(size_t bytes) 236 E* ResourceStack<E, F>::alloc(size_t bytes)

mercurial