> On 11/04/11 04:14, Richard Guenther wrote:
>>>     new_version = cgraph_create_node (new_decl);
>>>
>>> -   new_version->analyzed = true;
>>> +   new_version->analyzed = old_version->analyzed;
>>
>> Hm?  analyzed means "with body", sure you have a body if you clone.

Incidentally, for TM we also clone functions that do NOT have a body.

An external declaration with __attribute__((transaction_callable))
is an assertion by the user that the transactional clone exists
(or alternately, a directive from the user to generate such a clone
in the file that contains the function).

>>> @@ -2294,6 +2294,7 @@ cgraph_copy_node_for_versioning (struct
>>>     new_version->rtl = old_version->rtl;
>>>     new_version->reachable = true;
>>>     new_version->count = old_version->count;
>>> +   new_version->lowered = true;
>>
>> OTOH this isn't necessary true.  cgraph exists before lowering.

But no clones are created before lowering.


r~

Reply via email to