Closed alexsaezm closed 11 months ago
Thanks for reporting this. It looks like s390's atan (and other operations) return a result that is higher by 1 ULP (unit in the last place). The assert.eq(x, y)
function needs to be modified so that if x and y are both finite floats, it instead performs the check y-ulp(x) <= x <= y+ulp(x)
where ulp(x) is the value of the last mantissa bit of x. This will need another Go function (ulp) exposed to Starlark.
Hi Álex, would you try out #490 and see if it fixes the problem? I don't have an s390 next to me. :) Thanks.
Hi Álex, would you try out #490 and see if it fixes the problem? I don't have an s390 next to me. :) Thanks.
For the record, yes, it worked fine. Thank you very much!
On s390x the precision of some operation makes TestExecFile fail.
I tried with several versions of Go (from 1.16 up to 1.20.4) and the results are always the same.