equal
deleted
inserted
replaced
189 } |
189 } |
190 |
190 |
191 void ShenandoahPacer::restart_with(size_t non_taxable_bytes, double tax_rate) { |
191 void ShenandoahPacer::restart_with(size_t non_taxable_bytes, double tax_rate) { |
192 size_t initial = (size_t)(non_taxable_bytes * tax_rate) >> LogHeapWordSize; |
192 size_t initial = (size_t)(non_taxable_bytes * tax_rate) >> LogHeapWordSize; |
193 STATIC_ASSERT(sizeof(size_t) <= sizeof(intptr_t)); |
193 STATIC_ASSERT(sizeof(size_t) <= sizeof(intptr_t)); |
194 Atomic::xchg((intptr_t)initial, &_budget); |
194 Atomic::xchg(&_budget, (intptr_t)initial); |
195 Atomic::store(&_tax_rate, tax_rate); |
195 Atomic::store(&_tax_rate, tax_rate); |
196 Atomic::inc(&_epoch); |
196 Atomic::inc(&_epoch); |
197 } |
197 } |
198 |
198 |
199 bool ShenandoahPacer::claim_for_alloc(size_t words, bool force) { |
199 bool ShenandoahPacer::claim_for_alloc(size_t words, bool force) { |