Avoid a problem in libc_freeres() seen on a linux-i686 buildbot when running
authorJeffrey Yasskin <jyasskin@google.com>
Thu, 18 Mar 2010 07:00:12 +0000 (07:00 +0000)
committerJeffrey Yasskin <jyasskin@google.com>
Thu, 18 Mar 2010 07:00:12 +0000 (07:00 +0000)
commitfd4943087e695be494732c745bbe4794ba022567
tree27ca328069b5ee97f0bfcd090dfb77c2d051234f
parentbdc652bab899d86f2181ed30caf689e43237ffb3
Avoid a problem in libc_freeres() seen on a linux-i686 buildbot when running
under valgrind:

==19577== Invalid free() / delete / delete[]
==19577==    at 0x4C9C866: free (vg_replace_malloc.c:325)
==19577==    by 0x5121104: ??? (in /lib/libc-2.10.2.so)
==19577==    by 0x4C97412: _vgnU_freeres (vg_preloaded.c:62)
==19577==    by 0x5041486: __run_exit_handlers (exit.c:93)
==19577==    by 0x50414FE: exit (exit.c:100)
==19577==    by 0x5028B5C: (below main) (libc-start.c:254)
==19577==  Address 0xffffffff is not stack'd, malloc'd or (recently) free'd
==19577==

Apparently this happens under certain versions of glibc, so valgrind provides
the --run-libc-freeres=no option to avoid calling freeres().  This may increase
the number of "still reachable" blocks valgrind reports, but we don't care
about those, while this error breaks the buildbots.

There are upstream bugs about this at
http://sourceware.org/bugzilla/show_bug.cgi?id=10610 and
http://bugs.kde.org/show_bug.cgi?id=167483, but they don't look likely to be
fixed.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98813 91177308-0d34-0410-b5e6-96231b3b80d8
utils/lit/lit/TestFormats.py
utils/lit/lit/TestRunner.py