RFR (S): 8140343: SEGV in DirectivesStack::getMatchingDirective
Vladimir Kozlov
vladimir.kozlov at oracle.com
Thu Oct 29 06:03:18 UTC 2015
Looks good, for records. I see you pushed it already.
Thanks,
Vladimir
On 10/29/15 12:28 AM, Nils Eliasson wrote:
>
> And the webrev: http://cr.openjdk.java.net/~neliasso/8140343/webrev.04/
>
> Regards,
> Nils
>
> On 2015-10-28 17:12, Nils Eliasson wrote:
>> Hi Vladimir,
>>
>> The C1 store will always be an ok choice. Even if C1 is unavailable
>> the c1 store will be populated with the common flags (Enable, Exclude,
>> Print, Break, Log etc.).
>>
>> I will update the comment to reflect that.
>>
>> Thanks,
>> Nils
>>
>>
>> On 2015-10-28 16:19, Vladimir Kozlov wrote:
>>> I share Chris's concern - is _c1_store is always good choice and
>>> always defined. We still can have Server VM without C1 (PPC64). Or
>>> Zero. It should be taking into account.
>>>
>>> If _c1_store is always present in all VM variants - it should be
>>> explained in comment.
>>>
>>> Thanks,
>>> Vladimir
>>>
>>> On 10/28/15 5:15 PM, Nils Eliasson wrote:
>>>> Still open for review.
>>>>
>>>> Regards,
>>>> Nils
>>>>
>>>> On 2015-10-24 10:49, Nils Eliasson wrote:
>>>>>
>>>>> On 2015-10-23 22:39, Christian Thalinger wrote:
>>>>>>> On Oct 22, 2015, at 11:03 PM, Nils Eliasson
>>>>>>> <nils.eliasson at oracle.com> wrote:
>>>>>>>
>>>>>>> Hi all,
>>>>>>>
>>>>>>> This fixes a bug when using a compiler that doesn't have compiler
>>>>>>> directives. This is a temporary fix using the default directive
>>>>>>> for c1.
>>>>>> What are the default directives for C1 and C2? This fix is for JVMCI
>>>>>> compilers and JVMCI compilers can only replace C2 in a tiered
>>>>>> configuration. Depending on what they are, wouldn’t it make more
>>>>>> sense to use C2’s default directives?
>>>>>
>>>>> The default directive is a directive that is always installed, always
>>>>> enabled and contains all the default values from vmflags and compile
>>>>> commands. This is the directive all compilations are using if no
>>>>> additional directives are installed.
>>>>>>
>>>>>>> In the future permanent fix all compilers will have directives by
>>>>>>> default.
>>>>>> How would that look like?
>>>>>
>>>>> Long story. It is an internal implementation detail to the structure
>>>>> of compiler directives. Right now there is a bit of an overhead adding
>>>>> a new compiler, even if only a single flag is used. The idea is to
>>>>> have all directives contain all flags for all compilers - it might
>>>>> sound expensive but will actually be more efficient. The most common
>>>>> use case is only having the default directive, and in this case the
>>>>> common flags wouldn't have to be duplicated for each compiler. The
>>>>> profit in the JVMCI case is that all the common flags are valid and
>>>>> usable without any workaround. The improvement is straightforward and
>>>>> wont affect any use site but is big enough not to be the fix of
>>>>> this bug.
>>>>>
>>>>> //Nils
>>>>>
>>>>>
>>>>>>> bug: https://bugs.openjdk.java.net/browse/JDK-8140343
>>>>>>> webrev: http://cr.openjdk.java.net/~neliasso/8140343/webrev.01/
>>>>>>>
>>>>>>> Please review,
>>>>>>> Nils
>>>>>
>>>>
>>
>
More information about the hotspot-compiler-dev
mailing list