This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] asan unit tests from llvm lit-test
- From: Konstantin Serebryany <konstantin dot s dot serebryany at gmail dot com>
- To: Wei Mi <wmi at google dot com>
- Cc: GCC Patches <gcc-patches at gcc dot gnu dot org>, David Li <davidxl at google dot com>, Diego Novillo <dnovillo at google dot com>, Jakub Jelinek <jakub at redhat dot com>, Kostya Serebryany <kcc at google dot com>, Dodji Seketeli <dseketel at redhat dot com>
- Date: Wed, 28 Nov 2012 14:10:05 +0400
- Subject: Re: [PATCH] asan unit tests from llvm lit-test
- References: <CA+4CFy5jX04sXyvVNWx=jwch5PP6JE0amCK3XGntqKKNjr7SEQ@mail.gmail.com>
I'd like to understand our long-term strategy wrt the asan/tsan tests in gcc.
Most of the tests we have today are not specific to the compiler and
so can potentially be used with any compiler.
The problem is the testing harness (FileCheck/gtest vs dejagnu).
I understand that using alien testing harnesses in the gcc tree might
be unacceptable,
but the other choice is doubled maintenance burden for tests.
I suggest we discuss this general problem first.
--kcc
On Wed, Nov 28, 2012 at 1:15 PM, Wei Mi <wmi@google.com> wrote:
> Hi,
>
> I try to migrate the left asan lit-tests from llvm (class3). This is a
> preliminary version patch. Please forgive it has many mistakes.
>
> A known problems: I hardcoded -m32 in (set link_flags
> "[asan_link_flags [get_multilibs -m32]] $link_flags") in
> gcc/testsuite/lib/asan-dg.exp to make 32 bit library path included in
> ld_library_path. I don't know the elegant way to fix it.
>
> Thanks,
> Wei.
>
> gcc/testsuite/
> 2012-11-28 Wei Mi <wmi@google.com>
>
> * gcc.dg/asan/asan.exp: Case by case processing for some
> special testcases.
> * g++.dg/asan/asan.exp: Likewise.
> * lib/asan-dg.exp: Likewise.
> * g++.dg/asan/linux: New, migrate from llvm asan lit-test.
> * g++.dg/asan/linux/interception-test-1.C: Likewise.
> * g++.dg/asan/linux/interception-failure-test-1.C: Likewise.
> * g++.dg/asan/linux/interception-malloc-test-1.C: Likewise.
> * g++.dg/asan/Helpers: Likewise.
> * g++.dg/asan/Helpers/initialization-blacklist-1.tmp: Likewise.
> * g++.dg/asan/Helpers/initialization-blacklist-extra-1.C: Likewise.
> * g++.dg/asan/deep-thread-stack-1.C: Likewise.
> * g++.dg/asan/shared-lib-test-1.C: Likewise.
> * g++.dg/asan/deep-stack-uaf-1.C: Likewise.
> * g++.dg/asan/on-error-callback-1.C: Likewise.
> * g++.dg/asan/initialization-blacklist-1.C: Likewise.
> * g++.dg/asan/initialization-nobug-1.C: Likewise.
> * g++.dg/asan/large-func-test-1.C: Likewise.
> * g++.dg/asan/SharedLibs: Likewise.
> * g++.dg/asan/SharedLibs/dlclose-test-1-so.C: Likewise.
> * g++.dg/asan/SharedLibs/shared-lib-test-1-so.C: Likewise.
> * g++.dg/asan/dlclose-test-1.C: Likewise.
> * g++.dg/asan/malloc-hook-1.C: Likewise.
> * g++.dg/asan/symbolize-callback-1.C: Likewise.
> * g++.dg/asan/default-options-1.C: Likewise.
> * g++.dg/asan/deep-tail-call-1.C: Likewise.
> * c-c++-common/asan/linux: Likewise.
> * c-c++-common/asan/linux/initialization-bug-any-order-1.c: Likewise.
> * c-c++-common/asan/linux/rlimit-mmap-test-1.c: Likewise.
> * c-c++-common/asan/linux/swapcontext-test-1.c: Likewise.
> * c-c++-common/asan/linux/clone-test-1.c: Likewise.
> * c-c++-common/asan/sleep-before-dying-1.c: Likewise.
> * c-c++-common/asan/Helpers: Likewise.
> * c-c++-common/asan/Helpers/blacklist-extra-1.c: Likewise.
> * c-c++-common/asan/Helpers/interface_symbols.sh: Likewise.
> * c-c++-common/asan/Helpers/initialization-bug-extra-1.c: Likewise.
> * c-c++-common/asan/Helpers/blacklist-1.tmp: Likewise.
> * c-c++-common/asan/interface-symbols-1.c: Likewise.
> * c-c++-common/asan/strip-path-prefix-1.c: Likewise.
> * c-c++-common/asan/force-inline-opt0-1.c: Likewise.
> * c-c++-common/asan/null-deref-1.c: Likewise.
> * c-c++-common/asan/global-overflow-1.c: Likewise.
> * c-c++-common/asan/initialization-bug-1.c: Likewise.
> * c-c++-common/asan/strncpy-overflow-1.c: Likewise.
> * c-c++-common/asan/stack-overflow-1.c: Likewise.
> * c-c++-common/asan/blacklist-1.c: Likewise.
> * c-c++-common/asan/use-after-free-1.c: Likewise.
> * c-c++-common/asan/sanity-check-pure-c-1.c: Likewise.
> * c-c++-common/asan/stack-use-after-return-1.c: Likewise.
> * c-c++-common/asan/heap-overflow-1.c: Likewise.