RFR: Fix Windows builds
Aleksey Shipilev
shade at openjdk.java.net
Tue May 4 09:00:20 UTC 2021
On Tue, 4 May 2021 08:50:57 GMT, Roman Kennke <rkennke at openjdk.org> wrote:
>> Windows builds are currently failing with:
>>
>>
>> c:\buildbot\worker\build-shenandoah-jdkx-windows\build\src\hotspot\share\gc\shenandoah\shenandoahOldGC.cpp(149): error C2131: expression did not evaluate to a constant
>> c:\buildbot\worker\build-shenandoah-jdkx-windows\build\src\hotspot\share\gc\shenandoah\shenandoahOldGC.cpp(149): note: failure was caused by a read of a variable outside its lifetime
>> c:\buildbot\worker\build-shenandoah-jdkx-windows\build\src\hotspot\share\gc\shenandoah\shenandoahOldGC.cpp(149): note: see usage of 'coalesce_and_fill_regions_count'
>> make[3]: *** [lib/CompileJvm.gmk:143: /cygdrive/c/buildbot/worker/build-shenandoah-jdkx-windows/build/build/windows-x86_64-server-fastdebug/hotspot/variant-server/libjvm/objs/shenandoahOldGC.obj] Error 1
>>
>>
>> ...and:
>>
>>
>> c:\buildbot\worker\build-shenandoah-jdkx-windows\build\src\hotspot\share\gc\shenandoah\heuristics\shenandoahOldHeuristics.cpp(239): error C2220: the following warning is treated as an error
>> c:\buildbot\worker\build-shenandoah-jdkx-windows\build\src\hotspot\share\gc\shenandoah\heuristics\shenandoahOldHeuristics.cpp(239): warning C4267: '=': conversion from 'size_t' to 'uint', possible loss of data
>> c:\buildbot\worker\build-shenandoah-jdkx-windows\build\src\hotspot\share\gc\shenandoah\heuristics\shenandoahOldHeuristics.cpp(240): warning C4267: '=': conversion from 'size_t' to 'uint', possible loss of data
>> c:\buildbot\worker\build-shenandoah-jdkx-windows\build\src\hotspot\share\gc\shenandoah\heuristics\shenandoahOldHeuristics.cpp(241): warning C4267: '=': conversion from 'size_t' to 'uint', possible loss of data
>> c:\buildbot\worker\build-shenandoah-jdkx-windows\build\src\hotspot\share\gc\shenandoah\heuristics\shenandoahOldHeuristics.cpp(255): warning C4267: '=': conversion from 'size_t' to 'uint', possible loss of data
>> make[3]: *** [lib/CompileJvm.gmk:143: /cygdrive/c/buildbot/worker/build-shenandoah-jdkx-windows/build/build/windows-x86_64-server-fastdebug/hotspot/variant-server/libjvm/objs/shenandoahOldHeuristics.obj] Error 1
>> make[2]: *** [make/Main.gmk:252: hotspot-server-libs] Error 2
>>
>>
>> Additional testing:
>> - [x] Windows x86_64 builds
>> - [x] Linux x86_64 hotspot_gc_shenandoah
>
> src/hotspot/share/gc/shenandoah/heuristics/shenandoahOldHeuristics.cpp line 241:
>
>> 239: _hidden_old_collection_candidates = (uint)i;
>> 240: _first_coalesce_and_fill_candidate = (uint)i;
>> 241: _old_coalesce_and_fill_candidates = (uint)(cand_idx - i);
>
> I wonder if it would be more useful to change the type of i to uint, or maybe the fields to size_t instead?
Maybe. That code seems to be in flux, so I would just fix the builds at this time, and then reconsider changing the types more globally.
-------------
PR: https://git.openjdk.java.net/shenandoah/pull/35
More information about the shenandoah-dev
mailing list