From: nsz Date: Thu, 12 Apr 2012 13:07:21 +0000 (+0200) Subject: math: add float-store test X-Git-Url: http://nsz.repo.hu/git/?p=libc-test;a=commitdiff_plain;h=3369441af6f08ba6aff39d7c1a4c658af00bb210 math: add float-store test --- diff --git a/src/math/sanity.c b/src/math/sanity.c index a6661ba..9550a70 100644 --- a/src/math/sanity.c +++ b/src/math/sanity.c @@ -21,15 +21,21 @@ static int checkl(long double a, long double b) } #define D(fx, y) do{ \ - double yy = fx; \ + volatile double yy = fx; \ + volatile long double yl = fx; \ if (!check(yy, y)) \ error("%s got %a = %.21e want %a = %.21e\n", #fx, yy, yy, y, y); \ + if (yy != yl) \ + error("float-store issue: (double)%s = %a (long double)%s = %La\n", #fx, yy, #fx, yl); \ }while(0) #define F(fx, y) do{ \ - float yy = fx; \ + volatile float yy = fx; \ + volatile long double yl = fx; \ if (!checkf(yy, y)) \ error("%s got %a = %.21e want %a = %.21e\n", #fx, yy, yy, y, y); \ + if (yy != yl) \ + error("float-store issue: (float)%s = %a (long double)%s = %La\n", #fx, yy, #fx, yl); \ }while(0) #define L(fx, y) do{ \