uweigand wrote:

> So, like @nikic hinted at previously, it seems that with any other calling 
> convention than "C", the extension attribute is present either on both or 
> neither of the caller/callee arguemnts.
> 
> Patch updated to check only calls/functions with the C calling convention and 
> remove the previous isInternal() heuristic.
> 
> It would be possible to also check a call to an internal function to see that 
> the call and definition extensions match. However, when trying this with a 
> simple (fastcc) test case the caller will actually do the extension even if 
> there only is the extension attribute in the function definition. I suppose 
> this makes sense as they are assumed (per comment above) to exactly match, 
> and if the Callee has the attribute that would be the reasonable assumption 
> to follow.

This does make sense to me, yes.

I assume the various calls to sanitizer helper routines still use the "C" 
calling convention, so those still have to be fixed before this can be enabled?


https://github.com/llvm/llvm-project/pull/223755
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to