spavloff wrote:

Thank you for the clarification. Let's keep the meaning of this attribute as it 
currently stands.

The explanations raises some concern, though. OK, strictfp at call sites keeps 
previous property of the call even if the basic block is detached.  If a block 
is taken from a strictfp function, it should only be placed within another 
strictfp function. Default mode functions have stricter requirements regarding 
their bodies; for instance, they cannot call functions such as fesetround. 
Strictfp functions have less limitations. Transferring code from a strictfp to 
default mode function in general cases seems incorrect. Does the case of 
detached block really needs strictfp calls?

Additionally, it's unfortunate that we use the same attribute for functions 
requiring strictfp semantics for their body, and for calls that originate from 
a strictfp function.

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