RFR(XS): JDK-8040921: Uninitialised memory in hotspot/src/share/vm/c1/c1_LinearScan.cpp

Vladimir Kozlov vladimir.kozlov at oracle.com
Thu Jul 31 15:51:36 UTC 2014


Morris,

You left debug printing in changes.

Vladimir

On 7/31/14 8:48 AM, Morris Meyer wrote:
> Vladimir,
>
> I found that you cannot move the variables and initialization down to the use, as the cpu_lsw.walk() //
> IntervalWalker.walk_to() code changes the intervals and causes an assertion failure in LinearScan::is_sorted().
>
> I've commented the code to note that the code cannot be moved down to where it is used.
>
> Thanks,
>
> --morris
>
> WEBREV - http://cr.openjdk.java.net/~morris/JDK-8040921.08
> BUG - https://bugs.openjdk.java.net/browse/JDK-8040921
>
>
> On 7/22/14, 6:40 PM, Vladimir Kozlov wrote:
>> You did not do for fpu registers what Christian said:
>>
>> "We should move the variables and initialization down to the use"
>>
>> Vladimir
>>
>> On 7/22/14 12:46 PM, Morris Meyer wrote:
>>> Folks,
>>>
>>> Could I get a review of this parfait issue. It has been tested through
>>> JPRT.
>>>
>>> Thanks!
>>>
>>> --morris
>>>
>>> JBS - http://bugs.openjdk.java.net/browse/JDK-8040921
>>> WEBREV - http://cr.openjdk.java.net/~morris/JDK-8040921.07
>>>
>>> On 5/1/14, 9:51 PM, Christian Thalinger wrote:
>>>>
>>>> On May 1, 2014, at 8:34 AM, Morris Meyer <morris.meyer at oracle.com
>>>> <mailto:morris.meyer at oracle.com>> wrote:
>>>>
>>>>> The parfait error is with the ASSERT define blocking out
>>>>> initialization of a the fpu structures when that code path is enabled.
>>>>>
>>>>> I've removed the ifdef such that both paths initialized their cpu and
>>>>> fpu variables, and the assertion is always checked.
>>>>
>>>> But the code path using the uninitialized variables is also under:
>>>>
>>>> 1648 if (has_fpu_registers()) {
>>>>
>>>> Am I missing something? Anyway, during an earlier internal review I
>>>> said we should keep the assert; I take that back. We should move the
>>>> variables and initialization down to the use and remove the assert.
>>>> It doesn’t have much value anyway.
>>>>
>>>>>
>>>>> --mm
>>>>>
>>>>> On 4/30/14, 3:36 PM, Christian Thalinger wrote:
>>>>>> I don’t understand the Parfait error here. Could you explain?
>>>>>>
>>>>>> On Apr 30, 2014, at 7:40 AM, Morris Meyer <morris.meyer at oracle.com
>>>>>> <mailto:morris.meyer at oracle.com>> wrote:
>>>>>>
>>>>>>> Folks,
>>>>>>>
>>>>>>> Could I get a review for this Parfait uninitialized variable issue?
>>>>>>> This has been tested with JPRT and a clear pass with Parfait.
>>>>>>>
>>>>>>> Thanks,
>>>>>>>
>>>>>>> --mm
>>>>>>>
>>>>>>> BUG - https://bugs.openjdk.java.net/browse/JDK-8040921
>>>>>>> WEBREV - http://cr.openjdk.java.net/~morris/JDK-8040921.05
>>>>>>> <http://cr.openjdk.java.net/%7Emorris/JDK-8040921.05>
>>>>>>>
>>>>>>>
>>>>>
>>>>
>>>
>


More information about the hotspot-compiler-dev mailing list