equal
deleted
inserted
replaced
4611 #endif |
4611 #endif |
4612 |
4612 |
4613 |
4613 |
4614 // Use BIS for zeroing (count is in bytes). |
4614 // Use BIS for zeroing (count is in bytes). |
4615 void MacroAssembler::bis_zeroing(Register to, Register count, Register temp, Label& Ldone) { |
4615 void MacroAssembler::bis_zeroing(Register to, Register count, Register temp, Label& Ldone) { |
4616 assert(UseBlockZeroing && VM_Version::has_block_zeroing(), "only works with BIS zeroing"); |
4616 assert(UseBlockZeroing && VM_Version::has_blk_zeroing(), "only works with BIS zeroing"); |
4617 Register end = count; |
4617 Register end = count; |
4618 int cache_line_size = VM_Version::prefetch_data_size(); |
4618 int cache_line_size = VM_Version::prefetch_data_size(); |
4619 assert(cache_line_size > 0, "cache line size should be known for this code"); |
4619 assert(cache_line_size > 0, "cache line size should be known for this code"); |
4620 // Minimum count when BIS zeroing can be used since |
4620 // Minimum count when BIS zeroing can be used since |
4621 // it needs membar which is expensive. |
4621 // it needs membar which is expensive. |