What does @Input(notDataflow = true) do?
Lukas Stadler
lukas.stadler at oracle.com
Tue Apr 1 08:26:03 UTC 2014
Hey,
there's no significance to one node having notDataflow and the other one not.
It's not enforced in any way, so it tends to get inconsistent.
But you're right, of course - we should come up with a proper definition of what is supposed to be notDataflow.
It's only a visual hint (at the moment), and there should be some JavaDoc saying so. I'll add some.
- Lukas
On 01 Apr 2014, at 8:57 , Krystal Mok <rednaxelafx at gmail.com> wrote:
> Hi Gilles,
>
> Thank you for your explanation. That's more or less what I expected to be.
>
> I was looking at DeoptimizeNode versus SafepointNode. Both take a
> FrameState input, but the former takes it as a normal data dependence
> whereas the latter is marked as not-dataflow. I was wondering how these two
> node would differ in terms of their FrameState holding on to values that
> might be otherwise dead.
>
> Best regards,
> Kris
>
>
> On Mon, Mar 31, 2014 at 11:37 PM, Gilles Duboscq <duboscq at ssw.jku.at> wrote:
>
>> Hi Kris,
>>
>> This flag only affects the field name as you found out. This suffix is
>> then used in the IdealGraphVisualizer to change the color of these edges
>> (from blue for data flow to black for "other").
>>
>> -Gilles
>> On 1 Apr 2014 02:29, "Krystal Mok" <rednaxelafx at gmail.com> wrote:
>>
>>> Hi all,
>>>
>>> I'd like to know what @Input(notDataflow = true) does in Graal, and how it
>>> differs from the default notDataflow = false case.
>>>
>>> I searched the code and only saw FieldScanner reading that attribute, but
>>> it's not really doing much special, other than appending "#NDF" suffix to
>>> the field name.
>>>
>>> Does this attribute affect data dependence analysis in any way?
>>>
>>> Thanks,
>>> Kris
>>>
>>
More information about the graal-dev
mailing list