tree acaef26bd9c39ea8c65ada5b144ba2940ba37786
parent 2eff41e70709de47b84ec8cc70c0db34e7775c82
author Steven Perron <stevenperron@google.com> 1655825854 -0400
committer GitHub <noreply@github.com> 1655825854 -0400
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJiseW+CRBK7hj4Ov3rIwAAQ5cIAAz5XYbU+hq5Uj/an0I1Ouw1
 UYqBUD4AdVTR1brJlMD9k9N0Q1EBv6zXSXDoh2QuzVPR7JzqQIaQgnbvqkNN0DI2
 f2ao+qKejyzEgNCIXEb6ngv05FW1IcSpBNO/K8B6BahxQXjjetMJQittbC22EURB
 4pc8cXRCCXy1xJ5Sjw5S4c907Ff7+Z/QtqGJ2amDSvKX7wXZFZq7qHkNjeYicUQ9
 9QZIHkdpyR7ayRdFHDbZJ6SwEL/mJcdK4XI0bQpATQoBQQHp6JJWfFjwdaheVpMo
 KVTapFLZLnPNNmLO4yp0cz4PZ4q2OWRHC9Yqq4IYd4meE3qnxSGjtluUotimI4Q=
 =Qi/c
 -----END PGP SIGNATURE-----
 

Avoid undefined divide-by-0 (#4821)

The Reciprocal function expects a divide-by-0 to return nan,and then Reciprocal will return 0.

Since the divide-by-0 is actually undefined, we will identify this case early, and return 0.

No new tests are needed because we already tests folding divide-by-0.

Fixes #4715