[PATCH] D89697: * [x86] Implement smarter instruction lowering for FP_TO_UINT from vXf32 to vXi32 for SSE2 and AVX2 by using the exact semantic of the CVTTPS2SI instruction.
Nuno Lopes via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Jan 7 10:43:56 PST 2021
nlopes added a comment.
In D89697#2484919 <https://reviews.llvm.org/D89697#2484919>, @spatel wrote:
> In D89697#2483676 <https://reviews.llvm.org/D89697#2483676>, @yubing wrote:
>
>> No regression appeared in our internal testcases.
>> It seems the transform is correct, have you verified it with alive-tv?
>
> I was curious to see if I could model it:
> https://alive2.llvm.org/ce/z/RXcYY9
>
> Converting #x4f800000 (4294967296) to uint32_t is poison, not 0 though. Am I reading the Alive output correctly? (cc @lebedev.ri @aqjune @nlopes @nikic )
That's a nice bug in Alive 😅
It's because UINT_MAX is not representable accurately as a float, so the generated constraints are wrong. I'll have a look, thanks!
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D89697/new/
https://reviews.llvm.org/D89697
More information about the llvm-commits
mailing list