tree-core.h (built_in_class): Add builtin codes to be used by Pointer Bounds Checker...
authorIlya Enkovich <ilya.enkovich@intel.com>
Mon, 17 Nov 2014 13:45:55 +0000 (13:45 +0000)
committerIlya Enkovich <ienkovich@gcc.gnu.org>
Mon, 17 Nov 2014 13:45:55 +0000 (13:45 +0000)
commitedcf72f3c9e070fe904ff9ff2f2fd145e694af83
treebc2f2a46968faabdbe890355b0f2b9b151a106bb
parent5134529b25c1fd448e6589876a84d0095a5ffc35
tree-core.h (built_in_class): Add builtin codes to be used by Pointer Bounds Checker for instrumented builtin...

* tree-core.h (built_in_class): Add builtin codes to be used
by Pointer Bounds Checker for instrumented builtin functions.
* tree-streamer-in.c: Include ipa-chkp.h.
(streamer_get_builtin_tree): Created instrumented decl if
required.
* ipa-chkp.h (chkp_maybe_clone_builtin_fndecl): New.
* ipa-chkp.c (chkp_build_instrumented_fndecl): Support builtin
function decls.
(chkp_maybe_clone_builtin_fndecl): New.
(chkp_maybe_create_clone): Support builtin function decls.
(chkp_versioning): Clone builtin functions.
* tree-chkp.c (chkp_instrument_normal_builtin): New.
(chkp_add_bounds_to_call_stmt): Support builtin functions.
(chkp_replace_function_pointer): Likewise.
* builtins.c (expand_builtin_memcpy_args): New.
(expand_builtin_memcpy): Call expand_builtin_memcpy_args.
(expand_builtin_memcpy_with_bounds): New.
(expand_builtin_mempcpy_with_bounds): New.
(expand_builtin_mempcpy_args): Add orig_exp arg. Support
BUILT_IN_CHKP_MEMCPY_NOBND_NOCHK
(expand_builtin_memset_with_bounds): New.
(expand_builtin_memset_args): Support BUILT_IN_CHKP_MEMSET_NOBND_NOCHK.
(expand_builtin_with_bounds): New.
* builtins.h (expand_builtin_with_bounds): New.
* expr.c (expand_expr_real_1): Support instrumented builtin calls.

From-SVN: r217655
gcc/ChangeLog
gcc/builtins.c
gcc/builtins.h
gcc/expr.c
gcc/ipa-chkp.c
gcc/ipa-chkp.h
gcc/tree-chkp.c
gcc/tree-core.h
gcc/tree-streamer-in.c