mirror of
https://github.com/openjdk/jdk.git
synced 2026-02-08 17:38:38 +00:00
Merge
This commit is contained in:
commit
3af63c10ab
@ -48,6 +48,7 @@ jprt.sync.push=false
|
||||
|
||||
jprt.my.solaris.sparc.jdk7=solaris_sparc_5.10
|
||||
jprt.my.solaris.sparc.jdk7b107=solaris_sparc_5.10
|
||||
jprt.my.solaris.sparc.jdk7temp=solaris_sparc_5.10
|
||||
jprt.my.solaris.sparc.jdk6=solaris_sparc_5.8
|
||||
jprt.my.solaris.sparc.jdk6perf=solaris_sparc_5.8
|
||||
jprt.my.solaris.sparc.jdk6u10=solaris_sparc_5.8
|
||||
@ -58,6 +59,7 @@ jprt.my.solaris.sparc=${jprt.my.solaris.sparc.${jprt.tools.default.release}}
|
||||
|
||||
jprt.my.solaris.sparcv9.jdk7=solaris_sparcv9_5.10
|
||||
jprt.my.solaris.sparcv9.jdk7b107=solaris_sparcv9_5.10
|
||||
jprt.my.solaris.sparcv9.jdk7temp=solaris_sparcv9_5.10
|
||||
jprt.my.solaris.sparcv9.jdk6=solaris_sparcv9_5.8
|
||||
jprt.my.solaris.sparcv9.jdk6perf=solaris_sparcv9_5.8
|
||||
jprt.my.solaris.sparcv9.jdk6u10=solaris_sparcv9_5.8
|
||||
@ -68,6 +70,7 @@ jprt.my.solaris.sparcv9=${jprt.my.solaris.sparcv9.${jprt.tools.default.release}}
|
||||
|
||||
jprt.my.solaris.i586.jdk7=solaris_i586_5.10
|
||||
jprt.my.solaris.i586.jdk7b107=solaris_i586_5.10
|
||||
jprt.my.solaris.i586.jdk7temp=solaris_i586_5.10
|
||||
jprt.my.solaris.i586.jdk6=solaris_i586_5.8
|
||||
jprt.my.solaris.i586.jdk6perf=solaris_i586_5.8
|
||||
jprt.my.solaris.i586.jdk6u10=solaris_i586_5.8
|
||||
@ -78,6 +81,7 @@ jprt.my.solaris.i586=${jprt.my.solaris.i586.${jprt.tools.default.release}}
|
||||
|
||||
jprt.my.solaris.x64.jdk7=solaris_x64_5.10
|
||||
jprt.my.solaris.x64.jdk7b107=solaris_x64_5.10
|
||||
jprt.my.solaris.x64.jdk7temp=solaris_x64_5.10
|
||||
jprt.my.solaris.x64.jdk6=solaris_x64_5.10
|
||||
jprt.my.solaris.x64.jdk6perf=solaris_x64_5.10
|
||||
jprt.my.solaris.x64.jdk6u10=solaris_x64_5.10
|
||||
@ -88,6 +92,7 @@ jprt.my.solaris.x64=${jprt.my.solaris.x64.${jprt.tools.default.release}}
|
||||
|
||||
jprt.my.linux.i586.jdk7=linux_i586_2.6
|
||||
jprt.my.linux.i586.jdk7b107=linux_i586_2.6
|
||||
jprt.my.linux.i586.jdk7temp=linux_i586_2.6
|
||||
jprt.my.linux.i586.jdk6=linux_i586_2.4
|
||||
jprt.my.linux.i586.jdk6perf=linux_i586_2.4
|
||||
jprt.my.linux.i586.jdk6u10=linux_i586_2.4
|
||||
@ -98,6 +103,7 @@ jprt.my.linux.i586=${jprt.my.linux.i586.${jprt.tools.default.release}}
|
||||
|
||||
jprt.my.linux.x64.jdk7=linux_x64_2.6
|
||||
jprt.my.linux.x64.jdk7b107=linux_x64_2.6
|
||||
jprt.my.linux.x64.jdk7temp=linux_x64_2.6
|
||||
jprt.my.linux.x64.jdk6=linux_x64_2.4
|
||||
jprt.my.linux.x64.jdk6perf=linux_x64_2.4
|
||||
jprt.my.linux.x64.jdk6u10=linux_x64_2.4
|
||||
@ -106,8 +112,9 @@ jprt.my.linux.x64.jdk6u18=linux_x64_2.4
|
||||
jprt.my.linux.x64.jdk6u20=linux_x64_2.4
|
||||
jprt.my.linux.x64=${jprt.my.linux.x64.${jprt.tools.default.release}}
|
||||
|
||||
jprt.my.windows.i586.jdk7=windows_i586_5.0
|
||||
jprt.my.windows.i586.jdk7=windows_i586_5.1
|
||||
jprt.my.windows.i586.jdk7b107=windows_i586_5.0
|
||||
jprt.my.windows.i586.jdk7temp=windows_i586_5.0
|
||||
jprt.my.windows.i586.jdk6=windows_i586_5.0
|
||||
jprt.my.windows.i586.jdk6perf=windows_i586_5.0
|
||||
jprt.my.windows.i586.jdk6u10=windows_i586_5.0
|
||||
@ -118,6 +125,7 @@ jprt.my.windows.i586=${jprt.my.windows.i586.${jprt.tools.default.release}}
|
||||
|
||||
jprt.my.windows.x64.jdk7=windows_x64_5.2
|
||||
jprt.my.windows.x64.jdk7b107=windows_x64_5.2
|
||||
jprt.my.windows.x64.jdk7temp=windows_x64_5.2
|
||||
jprt.my.windows.x64.jdk6=windows_x64_5.2
|
||||
jprt.my.windows.x64.jdk6perf=windows_x64_5.2
|
||||
jprt.my.windows.x64.jdk6u10=windows_x64_5.2
|
||||
|
||||
@ -256,7 +256,7 @@ TreeChunk* TreeList::head_as_TreeChunk() {
|
||||
}
|
||||
|
||||
TreeChunk* TreeList::first_available() {
|
||||
guarantee(head() != NULL, "The head of the list cannot be NULL");
|
||||
assert(head() != NULL, "The head of the list cannot be NULL");
|
||||
FreeChunk* fc = head()->next();
|
||||
TreeChunk* retTC;
|
||||
if (fc == NULL) {
|
||||
@ -272,7 +272,7 @@ TreeChunk* TreeList::first_available() {
|
||||
// those in the list for this size; potentially slow and expensive,
|
||||
// use with caution!
|
||||
TreeChunk* TreeList::largest_address() {
|
||||
guarantee(head() != NULL, "The head of the list cannot be NULL");
|
||||
assert(head() != NULL, "The head of the list cannot be NULL");
|
||||
FreeChunk* fc = head()->next();
|
||||
TreeChunk* retTC;
|
||||
if (fc == NULL) {
|
||||
|
||||
@ -1946,8 +1946,8 @@ void CompactibleFreeListSpace::save_marks() {
|
||||
|
||||
bool CompactibleFreeListSpace::no_allocs_since_save_marks() {
|
||||
assert(_promoInfo.tracking(), "No preceding save_marks?");
|
||||
guarantee(SharedHeap::heap()->n_par_threads() == 0,
|
||||
"Shouldn't be called (yet) during parallel part of gc.");
|
||||
assert(SharedHeap::heap()->n_par_threads() == 0,
|
||||
"Shouldn't be called if using parallel gc.");
|
||||
return _promoInfo.noPromotions();
|
||||
}
|
||||
|
||||
@ -2569,7 +2569,7 @@ void CFLS_LAB::modify_initialization(size_t n, unsigned wt) {
|
||||
|
||||
HeapWord* CFLS_LAB::alloc(size_t word_sz) {
|
||||
FreeChunk* res;
|
||||
guarantee(word_sz == _cfls->adjustObjectSize(word_sz), "Error");
|
||||
assert(word_sz == _cfls->adjustObjectSize(word_sz), "Error");
|
||||
if (word_sz >= CompactibleFreeListSpace::IndexSetSize) {
|
||||
// This locking manages sync with other large object allocations.
|
||||
MutexLockerEx x(_cfls->parDictionaryAllocLock(),
|
||||
|
||||
@ -1332,7 +1332,7 @@ ConcurrentMarkSweepGeneration::allocation_limit_reached(Space* space,
|
||||
// -----------------------------------------------------
|
||||
// FREE: klass_word & 1 == 1; mark_word holds block size
|
||||
//
|
||||
// OBJECT: klass_word installed; klass_word != 0 && klass_word & 0 == 0;
|
||||
// OBJECT: klass_word installed; klass_word != 0 && klass_word & 1 == 0;
|
||||
// obj->size() computes correct size
|
||||
// [Perm Gen objects needs to be "parsable" before they can be navigated]
|
||||
//
|
||||
|
||||
@ -165,13 +165,8 @@ void FreeList::removeChunk(FreeChunk*fc) {
|
||||
"Next of tail should be NULL");
|
||||
}
|
||||
decrement_count();
|
||||
#define TRAP_CODE 1
|
||||
#if TRAP_CODE
|
||||
if (head() == NULL) {
|
||||
guarantee(tail() == NULL, "INVARIANT");
|
||||
guarantee(count() == 0, "INVARIANT");
|
||||
}
|
||||
#endif
|
||||
assert(((head() == NULL) + (tail() == NULL) + (count() == 0)) % 3 == 0,
|
||||
"H/T/C Inconsistency");
|
||||
// clear next and prev fields of fc, debug only
|
||||
NOT_PRODUCT(
|
||||
fc->linkPrev(NULL);
|
||||
|
||||
@ -253,8 +253,8 @@ void PromotionInfo::print_statistics(uint worker_id) const {
|
||||
cur_spool = cur_spool->nextSpoolBlock) {
|
||||
// the first entry is just a self-pointer; indices 1 through
|
||||
// bufferSize - 1 are occupied (thus, bufferSize - 1 slots).
|
||||
guarantee((void*)cur_spool->displacedHdr == (void*)&cur_spool->displacedHdr,
|
||||
"first entry of displacedHdr should be self-referential");
|
||||
assert((void*)cur_spool->displacedHdr == (void*)&cur_spool->displacedHdr,
|
||||
"first entry of displacedHdr should be self-referential");
|
||||
slots += cur_spool->bufferSize - 1;
|
||||
blocks++;
|
||||
}
|
||||
|
||||
@ -2148,7 +2148,7 @@ void G1CollectorPolicy::print_summary(PauseSummary* summary) const {
|
||||
body_summary->get_termination_seq()
|
||||
};
|
||||
NumberSeq calc_other_times_ms(body_summary->get_parallel_seq(),
|
||||
7, other_parts);
|
||||
6, other_parts);
|
||||
check_other_times(2, body_summary->get_parallel_other_seq(),
|
||||
&calc_other_times_ms);
|
||||
}
|
||||
@ -2166,30 +2166,32 @@ void G1CollectorPolicy::print_summary(PauseSummary* summary) const {
|
||||
}
|
||||
print_summary(1, "Other", summary->get_other_seq());
|
||||
{
|
||||
NumberSeq calc_other_times_ms;
|
||||
if (parallel) {
|
||||
// parallel
|
||||
NumberSeq* other_parts[] = {
|
||||
body_summary->get_satb_drain_seq(),
|
||||
body_summary->get_parallel_seq(),
|
||||
body_summary->get_clear_ct_seq()
|
||||
};
|
||||
calc_other_times_ms = NumberSeq(summary->get_total_seq(),
|
||||
3, other_parts);
|
||||
} else {
|
||||
// serial
|
||||
NumberSeq* other_parts[] = {
|
||||
body_summary->get_satb_drain_seq(),
|
||||
body_summary->get_update_rs_seq(),
|
||||
body_summary->get_ext_root_scan_seq(),
|
||||
body_summary->get_mark_stack_scan_seq(),
|
||||
body_summary->get_scan_rs_seq(),
|
||||
body_summary->get_obj_copy_seq()
|
||||
};
|
||||
calc_other_times_ms = NumberSeq(summary->get_total_seq(),
|
||||
7, other_parts);
|
||||
if (body_summary != NULL) {
|
||||
NumberSeq calc_other_times_ms;
|
||||
if (parallel) {
|
||||
// parallel
|
||||
NumberSeq* other_parts[] = {
|
||||
body_summary->get_satb_drain_seq(),
|
||||
body_summary->get_parallel_seq(),
|
||||
body_summary->get_clear_ct_seq()
|
||||
};
|
||||
calc_other_times_ms = NumberSeq(summary->get_total_seq(),
|
||||
3, other_parts);
|
||||
} else {
|
||||
// serial
|
||||
NumberSeq* other_parts[] = {
|
||||
body_summary->get_satb_drain_seq(),
|
||||
body_summary->get_update_rs_seq(),
|
||||
body_summary->get_ext_root_scan_seq(),
|
||||
body_summary->get_mark_stack_scan_seq(),
|
||||
body_summary->get_scan_rs_seq(),
|
||||
body_summary->get_obj_copy_seq()
|
||||
};
|
||||
calc_other_times_ms = NumberSeq(summary->get_total_seq(),
|
||||
6, other_parts);
|
||||
}
|
||||
check_other_times(1, summary->get_other_seq(), &calc_other_times_ms);
|
||||
}
|
||||
check_other_times(1, summary->get_other_seq(), &calc_other_times_ms);
|
||||
}
|
||||
} else {
|
||||
print_indent(0);
|
||||
|
||||
@ -1544,13 +1544,13 @@ class CommandLineFlags {
|
||||
"Use BinaryTreeDictionary as default in the CMS generation") \
|
||||
\
|
||||
product(uintx, CMSIndexedFreeListReplenish, 4, \
|
||||
"Replenish and indexed free list with this number of chunks") \
|
||||
"Replenish an indexed free list with this number of chunks") \
|
||||
\
|
||||
product(bool, CMSReplenishIntermediate, true, \
|
||||
"Replenish all intermediate free-list caches") \
|
||||
\
|
||||
product(bool, CMSSplitIndexedFreeListBlocks, true, \
|
||||
"When satisfying batched demand, splot blocks from the " \
|
||||
"When satisfying batched demand, split blocks from the " \
|
||||
"IndexedFreeList whose size is a multiple of requested size") \
|
||||
\
|
||||
product(bool, CMSLoopWarn, false, \
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user