[PATCH] D45576: [RFC] Allow target to handle STRICT floating-point nodes
Andy Kaylor via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon May 21 16:22:32 PDT 2018
andrew.w.kaylor added a comment.
The reason that I originally implemented this the way I did, mutating the strict nodes to their non-constrained equivalents, was that I thought it would require too much duplication in the .td files to implement all the pattern matching for the strict nodes. The original plan was to find some other way to communicate the "strict" state to the target after instruction selection, but I never found a way to do that.
What you've done here seems reasonable to me. Obviously it still involves a lot of updates to the td files, but your approach to making that manageable going forward seems plausible. I really don't have the expertise in instruction selection to judge that completely, but this looks like a promising direction.
I particularly like that you've introduced it as a way for targets to opt-in. I believe some targets are already modeling the FP status and control registers and may not need this. X86 isn't one of them, so I think we'll want to consider something like what you've done here.
Repository:
rL LLVM
https://reviews.llvm.org/D45576
More information about the llvm-commits
mailing list