[PATCH] D27323: [X86] Fix non-intrinsic roundss/roundsd to not read the destination register

Marina Yatsina via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Dec 4 04:37:35 PST 2016


myatsina added a comment.

As Michael have already noticed, I also have a solution for this false dependency bug (https://reviews.llvm.org/D27391).
What happens is that some instructions (like the ROUNDSSr) read an undef value from one of it's source operands.
Part of the logic that searches for false dependencies decides if the dependency can be broken only if the instruction doesn't read the operand.
I think that a read of an undef value should not be considered as a real read, and this is the fix in my patch. I believe this approach will catch more cases.

Thanks,
Marina


https://reviews.llvm.org/D27323





More information about the llvm-commits mailing list