RFR: 8175567: Build of hotspot for arm-vfp-sflt fails
Bob Vandette
bob.vandette at oracle.com
Mon Feb 27 18:15:19 UTC 2017
> On Feb 27, 2017, at 1:05 PM, Vladimir Kozlov <vladimir.kozlov at oracle.com> wrote:
>
> That change was done explicitly but that was not tested as I see it:
>
> "It guards single_softfp() and double_softfp() by __SOFTFP__.
> This is not used in any openJdk platform. I can not test this
> on the closed platforms ARM32 and PPC32."
>
> May be it should check both? Please, explain if not:
>
> #if defined(__SOFTFP__) || defined(ARM32)
>
> You need also update:
>
> #endif // __SOFTFP__
__SOFTFP__ is only use for ARM32 ports so I simplified the ifdef.
In reality, I should have used:
#if defined(ARM32) && !defined(__ABI_HARD__)
but the only downside is that we end up defining these two functions ARM32 platforms
but they are not used in the __ABI_HARD__ case.
Bob.
>
> Thanks,
> Vladimir
>
> On 2/27/17 8:15 AM, Bob Vandette wrote:
>> BUG:
>>
>> https://bugs.openjdk.java.net/browse/JDK-8175567
>>
>> DESCRIPTION:
>>
>> The changes that were done under (JDK-8160245 Clean up platform #defines in c1_LIR.hpp),
>> broke the arm-vfp-sflt build.
>>
>> Here’s a link to that original bug:
>>
>> https://bugs.openjdk.java.net/browse/JDK-8160245
>>
>> This change below corrects the issue.
>>
>> diff --git a/src/share/vm/c1/c1_LIR.hpp b/src/share/vm/c1/c1_LIR.hpp
>> --- a/src/share/vm/c1/c1_LIR.hpp
>> +++ b/src/share/vm/c1/c1_LIR.hpp
>> @@ -613,7 +613,7 @@
>> // Platform dependant.
>> static LIR_Opr double_fpu(int reg1, int reg2 = -1 /*fnoreg*/);
>>
>> -#ifdef __SOFTFP__
>> +#ifdef ARM32
>> static LIR_Opr single_softfp(int reg) {
>> return (LIR_Opr)(intptr_t)((reg << LIR_OprDesc::reg1_shift) |
>> LIR_OprDesc::float_type |
>>
>> Bob.
>>
More information about the hotspot-dev
mailing list