[8] RFR: Fix Windows build after LRB backports
Aleksey Shipilev
shade at redhat.com
Wed Oct 23 19:07:28 UTC 2019
Current sh/jdk8 build fails on Windows with:
...windows\worker\shenandoah-jdk8-windows\build\hotspot\src\share\vm\gc_implementation\shenandoah\shenandoahRuntime.cpp(32)
: error C2220: warning treated as error - no 'object' file generated
Fix:
diff -r 04fce1bceb31 src/share/vm/gc_implementation/shenandoah/shenandoahRuntime.cpp
--- a/src/share/vm/gc_implementation/shenandoah/shenandoahRuntime.cpp Wed May 22 10:11:04 2019 +0200
+++ b/src/share/vm/gc_implementation/shenandoah/shenandoahRuntime.cpp Wed Oct 23 20:57:12 2019 +0200
@@ -27,16 +27,18 @@
#include "runtime/interfaceSupport.hpp"
#include "oops/oop.inline.hpp"
void ShenandoahRuntime::write_ref_array_pre_oop_entry(oop* dst, size_t length) {
ShenandoahBarrierSet *bs = ShenandoahBarrierSet::barrier_set();
- bs->write_ref_array_pre(dst, length, false);
+ assert(length <= INT_MAX, err_msg("sanity: " SIZE_FORMAT, length));
+ bs->write_ref_array_pre(dst, (int)length, false);
}
void ShenandoahRuntime::write_ref_array_pre_narrow_oop_entry(narrowOop* dst, size_t length) {
ShenandoahBarrierSet *bs = ShenandoahBarrierSet::barrier_set();
- bs->write_ref_array_pre(dst, length, false);
+ assert(length <= INT_MAX, err_msg("sanity: " SIZE_FORMAT, length));
+ bs->write_ref_array_pre(dst, (int)length, false);
}
void ShenandoahRuntime::write_ref_array_post_entry(HeapWord* dst, size_t length) {
ShenandoahBarrierSet *bs = ShenandoahBarrierSet::barrier_set();
bs->ShenandoahBarrierSet::write_ref_array(dst, length);
Testing: build (Linux, Windows); hotspot_gc_shenandoah (Linux)
--
Thanks,
-Aleksey
More information about the shenandoah-dev
mailing list