src/cpu/sparc/vm/stubGenerator_sparc.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File 8179019 Cdiff src/cpu/sparc/vm/stubGenerator_sparc.cpp

src/cpu/sparc/vm/stubGenerator_sparc.cpp

Print this page

        

*** 966,979 **** if (prefetch_count > 0) { // rounded up to one iteration count // Do prefetching only if copy size is bigger // than prefetch distance. __ set(prefetch_count, O4); __ cmp_and_brx_short(count, O4, Assembler::less, Assembler::pt, L_block_copy); ! __ sub(count, prefetch_count, count); (this->*copy_loop_func)(from, to, count, count_dec, L_block_copy_prefetch, true, true); ! __ add(count, prefetch_count, count); // restore count } // prefetch_count > 0 (this->*copy_loop_func)(from, to, count, count_dec, L_block_copy, false, true); __ add(count, (tail_size>>log2_elem_size), count); // restore count --- 966,980 ---- if (prefetch_count > 0) { // rounded up to one iteration count // Do prefetching only if copy size is bigger // than prefetch distance. __ set(prefetch_count, O4); __ cmp_and_brx_short(count, O4, Assembler::less, Assembler::pt, L_block_copy); ! __ sub(count, O4, count); (this->*copy_loop_func)(from, to, count, count_dec, L_block_copy_prefetch, true, true); ! __ set(prefetch_count, O4); ! __ add(count, O4, count); } // prefetch_count > 0 (this->*copy_loop_func)(from, to, count, count_dec, L_block_copy, false, true); __ add(count, (tail_size>>log2_elem_size), count); // restore count
*** 990,1004 **** if (prefetch_count > 0) { // rounded up to one iteration count // Do prefetching only if copy size is bigger // than prefetch distance. __ set(prefetch_count, O4); __ cmp_and_brx_short(count, O4, Assembler::lessUnsigned, Assembler::pt, L_copy); ! __ sub(count, prefetch_count, count); Label L_copy_prefetch; (this->*copy_loop_func)(from, to, count, count_dec, L_copy_prefetch, true, false); ! __ add(count, prefetch_count, count); // restore count } // prefetch_count > 0 (this->*copy_loop_func)(from, to, count, count_dec, L_copy, false, false); } --- 991,1006 ---- if (prefetch_count > 0) { // rounded up to one iteration count // Do prefetching only if copy size is bigger // than prefetch distance. __ set(prefetch_count, O4); __ cmp_and_brx_short(count, O4, Assembler::lessUnsigned, Assembler::pt, L_copy); ! __ sub(count, O4, count); Label L_copy_prefetch; (this->*copy_loop_func)(from, to, count, count_dec, L_copy_prefetch, true, false); ! __ set(prefetch_count, O4); ! __ add(count, O4, count); } // prefetch_count > 0 (this->*copy_loop_func)(from, to, count, count_dec, L_copy, false, false); }
src/cpu/sparc/vm/stubGenerator_sparc.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File