kpneal wrote:

> > > If strict floating-point semantics are required at this call site, they 
> > > are are required on every relevant call in this function. It means 
> > > strictfp is a function attribute. Does anything prevents us from removal 
> > > strictfp from all call sites?
> > 
> > 
> > I think that takes us back to @kpneal's history, "Then we found that basic 
> > blocks were being optimized when they didn't belong to a function so we 
> > couldn't get to the where the strictfp attribute was located. The solution 
> > was to add the attribute to every function call."
> 
> It sounds like a transient property, used in very specific cases. We could 
> return to this problem later, when/if transition to bundles happens.

Revisiting decisions made in the past is, in general, a good thing. Sometimes 
(frequently?) it doesn't result in any change, but that doesn't make it any 
less worthwhile.

> What about this PR? With it `strictfp` can be used as an indicator of a call 
> that requires special handling for both constrained functions and calls with 
> FP bundles, while both coexist.

I think efforts to change the rules around the `strictfp` attribute are not 
warranted at this time. If, in the future, there's a real benefit to changing 
the rules then we can talk about it then. 

https://github.com/llvm/llvm-project/pull/122735
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to