]> git.ipfire.org Git - thirdparty/gcc.git/commit
New asan-instrumentation-with-call-threshold parameter.
authorYury Gribov <y.gribov@samsung.com>
Mon, 16 Jun 2014 08:43:47 +0000 (08:43 +0000)
committerYury Gribov <ygribov@gcc.gnu.org>
Mon, 16 Jun 2014 08:43:47 +0000 (08:43 +0000)
commit8946c29ea82657cb45e26209c839623294009bde
tree12171e966089acbfa2ba25f2dad65f1ce1ae09e5
parent5d5cb4d4c12b658375e64c9854b87fb3c3870d36
New asan-instrumentation-with-call-threshold parameter.

2014-06-16  Yury Gribov  <y.gribov@samsung.com>

New asan-instrumentation-with-call-threshold parameter.

gcc/
* asan.c (check_func): New function.
(maybe_create_ssa_name): Likewise.
(build_check_stmt_with_calls): Likewise.
(use_calls_p): Likewise.
(report_error_func): Change interface.
(build_check_stmt): Allow non-integer lengths; add support
for new parameter.
(asan_instrument): Likewise.
(instrument_mem_region_access): Moved code to
build_check_stmt.
(instrument_derefs): Likewise.
(instrument_strlen_call): Likewise.
* cfgcleanup.c (old_insns_match_p): Add support for new
functions.
* doc/invoke.texi: Describe new parameter.
* params.def: Define new parameter.
* params.h: Likewise.
* sanitizer.def: Describe new builtins.

gcc/testsuite/
* c-c++-common/asan/instrument-with-calls-1.c: New test.
* c-c++-common/asan/instrument-with-calls-2.c: Likewise.
* c-c++-common/asan/instrument-with-calls-3.c: Likewise.
* c-c++-common/asan/no-redundant-instrumentation-1.c: Update
test patterns.
* c-c++-common/asan/no-redundant-instrumentation-2.c:
Likewise.
* c-c++-common/asan/no-redundant-instrumentation-4.c:
Likewise.
* c-c++-common/asan/no-redundant-instrumentation-5.c:
Likewise.
* c-c++-common/asan/no-redundant-instrumentation-6.c:
Likewise.
* c-c++-common/asan/no-redundant-instrumentation-7.c:
Likewise.
* c-c++-common/asan/no-redundant-instrumentation-8.c:
Likewise.

From-SVN: r211699
18 files changed:
gcc/ChangeLog
gcc/asan.c
gcc/cfgcleanup.c
gcc/doc/invoke.texi
gcc/params.def
gcc/params.h
gcc/sanitizer.def
gcc/testsuite/ChangeLog
gcc/testsuite/c-c++-common/asan/instrument-with-calls-1.c [new file with mode: 0644]
gcc/testsuite/c-c++-common/asan/instrument-with-calls-2.c [new file with mode: 0644]
gcc/testsuite/c-c++-common/asan/instrument-with-calls-3.c [new file with mode: 0644]
gcc/testsuite/c-c++-common/asan/no-redundant-instrumentation-1.c
gcc/testsuite/c-c++-common/asan/no-redundant-instrumentation-2.c
gcc/testsuite/c-c++-common/asan/no-redundant-instrumentation-4.c
gcc/testsuite/c-c++-common/asan/no-redundant-instrumentation-5.c
gcc/testsuite/c-c++-common/asan/no-redundant-instrumentation-6.c
gcc/testsuite/c-c++-common/asan/no-redundant-instrumentation-7.c
gcc/testsuite/c-c++-common/asan/no-redundant-instrumentation-8.c