[PATCH] D67360: [FPEnv] Document that constrained FP intrinsics cannot be mixed with non-constrained

Andy Kaylor via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Sep 12 16:55:27 PDT 2019


andrew.w.kaylor added a comment.

In D67360#1668007 <https://reviews.llvm.org/D67360#1668007>, @kpn wrote:

> Address review comment. Mention the possibility of the restrictions mentioned here changing in the future, but don't make any promises.


I don't see any benefit in mentioning that. I agree with Cameron that there is currently no good way to prevent hoisting, and I don't think we want for there to be a way to do that because an explicit goal of the constrained implementation was to ensure that it didn't interfere with optimization of code that didn't require any restrictions, which we believe will always be the majority case by a considerable margin. I expect that mixing of constrained and non-constrained regions will be rather rare. The use of intrinsics //is// the mechanism we've chosen to restrict code motion.

My understanding of our long term goal is that we will teach optimizations to handle the intrinsics, so that when optimizations are possible (within the constraints described by the intrinsic) they will be performed. Once we reach that state, there will be no serious downside to using an intrinsic with the most permissive settings versus a raw FP operation.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D67360/new/

https://reviews.llvm.org/D67360





More information about the llvm-commits mailing list