Re: svn commit: r251024 - in head: lib/msun lib/msun/ld128 lib/msun/ld80 lib/msun/src tools/regression/lib/msun
On Mon, May 27, 2013 at 08:50:10AM +, David Schultz wrote: Author: das Date: Mon May 27 08:50:10 2013 New Revision: 251024 URL: http://svnweb.freebsd.org/changeset/base/251024 Log: Fix some regressions caused by the switch from gcc to clang. The fixes are workarounds for various symptoms of the problem described in clang bugs 3929, 8100, 8241, 10409, and 12958. The regression tests did their job: they failed, someone brought it up on the mailing lists, and then the issue got ignored for 6 months. Oops. There may still be some regressions for functions we don't have test coverage for yet. The combination of clang+regression tests is almost unusable. % cd src/tools/regressions/lib/msun % make | tee sgk.log % grep generated sgk.log 41 warnings generated. 1 warning generated. 1 warning generated. 593 warnings generated. 51 warnings generated. 1 warning generated. 221 warnings generated. 1 warning generated. 265 warnings generated. 84 warnings generated. 1 warning generated. 1 warning generated. 2 warnings generated. 74 warnings generated. I also find the following patch helpful in cleaning up the corefiles. Index: Makefile === --- Makefile(revision 251026) +++ Makefile(working copy) @@ -12,4 +12,4 @@ .PHONY: clean clean: - -rm -f ${TESTS} + -rm -f ${TESTS} *.core -- Steve ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
Re: svn commit: r251024 - in head: lib/msun lib/msun/ld128 lib/msun/ld80 lib/msun/src tools/regression/lib/msun
On Mon, May 27, 2013, Steve Kargl wrote: On Mon, May 27, 2013 at 08:50:10AM +, David Schultz wrote: Author: das Date: Mon May 27 08:50:10 2013 New Revision: 251024 URL: http://svnweb.freebsd.org/changeset/base/251024 Log: Fix some regressions caused by the switch from gcc to clang. The fixes are workarounds for various symptoms of the problem described in clang bugs 3929, 8100, 8241, 10409, and 12958. The regression tests did their job: they failed, someone brought it up on the mailing lists, and then the issue got ignored for 6 months. Oops. There may still be some regressions for functions we don't have test coverage for yet. The combination of clang+regression tests is almost unusable. % cd src/tools/regressions/lib/msun % make | tee sgk.log % grep generated sgk.log 41 warnings generated. 1 warning generated. 1 warning generated. 593 warnings generated. 51 warnings generated. 1 warning generated. 221 warnings generated. 1 warning generated. 265 warnings generated. 84 warnings generated. 1 warning generated. 1 warning generated. 2 warnings generated. 74 warnings generated. It seems that it's mostly complaining about the macros I use to test many variants of a function in a single call. The macros often say things like: assert(f(x) == y); \ assert(f, fetestexcept(...) == K); \ The goal of the f, is to make the failure message include the function that was invoked on the preceding line. The tests really shouldn't be using assert() at all. Starting circa 2002, I wrote them that way in the interests of expedience, since an official unit-testing framework was supposed to replace it anyway. Ten years later, it looks like everyone is still rolling their own! If someone were to write or import a good test framework, get all the tests to use it, and put together a test tinderbox, that would have a lot of impact. I also find the following patch helpful in cleaning up the corefiles. Index: Makefile === --- Makefile (revision 251026) +++ Makefile (working copy) @@ -12,4 +12,4 @@ .PHONY: clean clean: - -rm -f ${TESTS} + -rm -f ${TESTS} *.core Sounds reasonable. Feel free to commit this. ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
Re: svn commit: r251024 - in head: lib/msun lib/msun/ld128 lib/msun/ld80 lib/msun/src tools/regression/lib/msun
On Mon, May 27, 2013 at 1:23 PM, David Schultz d...@freebsd.org wrote: If someone were to write or import a good test framework, get all the tests to use it, and put together a test tinderbox, that would have a lot of impact. People are working on bringing ATF into FreeBSD: https://wiki.freebsd.org/TestingFreeBSD ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
Re: svn commit: r251024 - in head: lib/msun lib/msun/ld128 lib/msun/ld80 lib/msun/src tools/regression/lib/msun
On 2013-05-27 16:07, Steve Kargl wrote: On Mon, May 27, 2013 at 08:50:10AM +, David Schultz wrote: Author: das Date: Mon May 27 08:50:10 2013 New Revision: 251024 URL: http://svnweb.freebsd.org/changeset/base/251024 Log: Fix some regressions caused by the switch from gcc to clang. The fixes are workarounds for various symptoms of the problem described in clang bugs 3929, 8100, 8241, 10409, and 12958. The regression tests did their job: they failed, someone brought it up on the mailing lists, and then the issue got ignored for 6 months. Oops. There may still be some regressions for functions we don't have test coverage for yet. The combination of clang+regression tests is almost unusable. % cd src/tools/regressions/lib/msun % make | tee sgk.log % grep generated sgk.log 41 warnings generated. 1 warning generated. 1 warning generated. 593 warnings generated. 51 warnings generated. 1 warning generated. 221 warnings generated. 1 warning generated. 265 warnings generated. 84 warnings generated. 1 warning generated. 1 warning generated. 2 warnings generated. 74 warnings generated. The following should help. Results in just a few warnings now, which may or may not be real bugs: 1 warning generated. 1 warning generated. 2 warnings generated. 1 warning generated. Index: tools/regression/lib/msun/Makefile === --- tools/regression/lib/msun/Makefile (revision 250997) +++ tools/regression/lib/msun/Makefile (working copy) @@ -5,6 +5,7 @@ test-fmaxmin test-ilogb test-invtrig test-logarithm test-lrint \ test-lround test-nan test-nearbyint test-next test-rem test-trig CFLAGS+= -O0 -lm +CFLAGS+= -Wno-unused-value -Wno-unknown-pragmas .PHONY: tests tests: ${TESTS} ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org
Re: svn commit: r251024 - in head: lib/msun lib/msun/ld128 lib/msun/ld80 lib/msun/src tools/regression/lib/msun
On May 27, 2013, at 12:58 PM, Ryan Stone wrote: On Mon, May 27, 2013 at 1:23 PM, David Schultz d...@freebsd.org wrote: If someone were to write or import a good test framework, get all the tests to use it, and put together a test tinderbox, that would have a lot of impact. People are working on bringing ATF into FreeBSD: https://wiki.freebsd.org/TestingFreeBSD Thanks for the plug! Yes, ATF is in (it's a bit outdated so I'll have to submit a patch for ATF 0.17), build infrastructure's on its way, and the best news of all is that I've already ported a large chunk of the msun testcases from NetBSD to FreeBSD. They work with little hacking for the most part. Example: # cd /usr/src/lib/msun/tests/ # make obj depend all check Summary for 19 test programs: 295 passed test cases. 0 failed test cases. 0 expected failed test cases. 5 skipped test cases. *** The verbatim output of atf-run has been saved to /usr/obj/usr/src/lib/msun/tests/atf-run.log # Why isn't this in FreeBSD yet (along with some of the other testsuites from NetBSD)? Well, a couple of reasons: 1. The test build infrastructure changes haven't been fully pushed in (Marcel's helping me out with the latest set of patches). 2. There are issues with porting stuff over from NetBSD because some of the macros needed to minimize porting divergence don't have a happy home yet. I gently poked several people from FreeBSD, NetBSD, and OpenBSD about getting some degree of solidarity and agreement on macros, but I haven't heard back from anyone I emailed for several weeks. So I figure that FreeBSD needs to bend by adding some [compat] macros to strategic locations in sys/sys, and then we can work on standardizing things later. I really don't want to hack all of the tests to use libnetbsd because while it works for nmtree and nmakefs, it doesn't make sense for testcases as the volume of required changes wouldn't make sense from a porting perspective. 3. I really REALLY need help porting over changes we've added that can be contributed back to NetBSD, and FreeBSD specific tests need to be cordoned off properly. As far as the test image stuff is concerned and test tinderbox stuff is concerned, yes, it's on my radar.. I'm working on installing tests via .iso images and USB images; once that's done we can work on making the other testing stuff work on a cron basis via tinderbox or another similar mechanism. So, what say ye to making things work better and helping me in this process :)? Thanks! -Garrett ___ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org