RFR (XS) 8184762: ZapStackSegments should use optimized memset

Roman Kennke rkennke at redhat.com
Mon Jul 17 19:18:13 UTC 2017

Hi Aleksey,

looks good to me.
Normally I wouldn't bother optimizing debug code, but this actually
makes it more readable (but slightly less funny ;-) ).

I'd probably declare the constant char or jubyte or such
(fill_to_bytes() takes a jubyte, can't say I like the j*types much).
(breaks 'consistency' with other similar constants though... your call)

Update copyright header.

Roman (not an official reviewer)

Am 17.07.2017 um 19:34 schrieb Aleksey Shipilev:
> https://bugs.openjdk.java.net/browse/JDK-8184762
> fastdebug builds performance is important to minimize testing time.
> ZapStackSegments is trueInDebug, and used to zap vm/utilities/stack.* segments
> as they get recycled.
> However, that zapping uses the handrolled memset, which shows up in profiles
> with individual stores. It seems better to use Copy::fill_to_bytes for this,
> which will call into platform-specific memset.
> Additionally, this would be a good time to introduce its zapped pattern to
> globalDefinitions. The choice of 0xCA is arbitrary, and open for discussion.
> Webrev:
>  http://cr.openjdk.java.net/~shade/8184762/webrev.01/
> Testing: hotspot_tier1 (Linux x86_64 / fastdebug)
> Thanks,
> -Aleksey

More information about the hotspot-dev mailing list