On Fri Sep 1 17:58:40 2023 +0000, Zebediah Figura wrote:
So SM1 has a result and SM4 has another. I'm not sure of what exactly
is mandated by IEEE, and whether SM4 is really expected to fully comply with IEEE. Notice that we're not really evaluating on pi/2, because that's not representable as a floating point number. So giving a finite, however large, doesn't look wrong. That also makes sense, although it wouldn't surprise me if software expected sinf(M_PI) to really return 0, and so on. So yeah, no objection from me to just leaving out the degenerate case.
It's enough of an edge case that I can't imagine the behavior is consistent across platforms even with real d3d.