RFR: 8174050: Compilation errors with clang-4.0

Martin Buchholz martinrb at google.com
Thu Aug 24 00:02:41 UTC 2017


I assume I need a sponsor; if so, please import
http://cr.openjdk.java.net/~martin/webrevs/openjdk10/pointer-sign-comparison/pointer-sign-comparison.patch

On Wed, Aug 23, 2017 at 4:46 PM, Vladimir Kozlov <vladimir.kozlov at oracle.com
> wrote:

> Looks good to me.
>
> Thanks,
> Vladimir
>
> On 8/23/17 4:37 PM, Martin Buchholz wrote:
>
>> Thanks, Vladimir.
>> Webrev regenerated.
>>
>> I blindly coded
>>
>> - assert(rng->Opcode() == Op_LoadRange || _igvn.type(rng)->is_int() >= 0,
>> "must be");
>> + assert(rng->Opcode() == Op_LoadRange || _igvn.type(rng)->is_int()->_lo
>> >= 0, "must be");
>>
>>
>>
>> On Wed, Aug 23, 2017 at 3:39 PM, Vladimir Kozlov <
>> vladimir.kozlov at oracle.com <mailto:vladimir.kozlov at oracle.com>> wrote:
>>
>>     Thank you, Martin
>>
>>     Yes, sign compare is bad for pointers.
>>
>>     Note, for pointers compare with use NULL instead of 0. Please, use
>> NULL.
>>
>>     The assert check in loopPredicate.cpp is simple missing reference to
>>     field _lo (low bound of values range):
>>
>>       _igvn.type(rng)->is_int()->_lo >= 0
>>
>>     Please, fix it this way.
>>
>>     Thanks,
>>     Vladimir
>>
>>
>>     On 8/23/17 2:25 PM, Martin Buchholz wrote:
>>
>>         https://bugs.openjdk.java.net/browse/JDK-8174050
>>         <https://bugs.openjdk.java.net/browse/JDK-8174050>
>>         http://cr.openjdk.java.net/~martin/webrevs/openjdk10/pointer
>> -sign-comparison/
>>         <http://cr.openjdk.java.net/~martin/webrevs/openjdk10/pointe
>> r-sign-comparison/>
>>
>>         My webrev could go in as is, but better would be for someone to
>>         figure out
>>         the intent of the nonsensical assert in
>>
>>         src/share/vm/opto/loopPredicate.cpp
>>
>>         (There is more to be done to support clang, but this is enough
>>         to build
>>         openjdk without patching source)
>>
>>
>>


More information about the hotspot-dev mailing list