CLDG::purge() and CodeCache::purge_exception_caches() can overlap safepoints, therefore, can be done without STS. Bug: https://bugs.openjdk.java.net/browse/JDK-8229185 Webrev: http://cr.openjdk.java.net/~zgu/JDK-8229185/webrev.00/ Test: hotspot_gc_shenandoah (fastdebug and release) Thanks, -Zhengyu