diff options
author | Jakub Jelinek <jakub@redhat.com> | 2014-09-10 11:21:25 +0200 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2014-09-10 11:21:25 +0200 |
commit | 570a11fe5a60f3012f1c2548745de10fd96b787e (patch) | |
tree | 81f58ffd80e23ae4883c03986eb7fa04b5ae93a9 /gcc/ubsan.h | |
parent | f7be73c86287ab5b8c8121732d3ab6249415a429 (diff) | |
download | gcc-570a11fe5a60f3012f1c2548745de10fd96b787e.zip gcc-570a11fe5a60f3012f1c2548745de10fd96b787e.tar.gz gcc-570a11fe5a60f3012f1c2548745de10fd96b787e.tar.bz2 |
ubsan.h (struct ubsan_mismatch_data): Removed.
* ubsan.h (struct ubsan_mismatch_data): Removed.
(ubsan_create_data): Remove MISMATCH argument, add LOCCNT argument.
* ubsan.c (ubsan_source_location): For unknown locations,
pass { NULL, 0, 0 } instead of { "<unknown>", x, y }.
(ubsan_create_data): Remove MISMATCH argument, add LOCCNT argument.
Allow more than one location and arbitrary extra arguments passed
in ... instead of through MISMATCH pointer.
(ubsan_instrument_unreachable, ubsan_expand_bounds_ifn,
ubsan_expand_null_ifn, ubsan_build_overflow_builtin,
instrument_bool_enum_load, ubsan_instrument_float_cast): Adjust
callers.
c-family/
* c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift,
ubsan_instrument_vla, ubsan_instrument_return): Adjust
ubsan_create_data callers.
(ubsan_instrument_bounds): Don't emit UBSAN_BOUNDS at all if
index is constant or BIT_AND_EXPR with constant mask and is
small enough for the bound.
* c-gimplify.c (ubsan_walk_array_refs_r): For ADDR_EXPR of
ARRAY_REF, make sure the inner ARRAY_REF is not walked again.
From-SVN: r215117
Diffstat (limited to 'gcc/ubsan.h')
-rw-r--r-- | gcc/ubsan.h | 9 |
1 files changed, 1 insertions, 8 deletions
diff --git a/gcc/ubsan.h b/gcc/ubsan.h index c927323..cd26940 100644 --- a/gcc/ubsan.h +++ b/gcc/ubsan.h @@ -38,17 +38,10 @@ enum ubsan_print_style { UBSAN_PRINT_ARRAY }; -/* An extra data used by ubsan pointer checking. */ -struct ubsan_mismatch_data { - tree align; - tree ckind; -}; - extern bool ubsan_expand_bounds_ifn (gimple_stmt_iterator *); extern bool ubsan_expand_null_ifn (gimple_stmt_iterator *); extern tree ubsan_instrument_unreachable (location_t); -extern tree ubsan_create_data (const char *, const location_t *, - const struct ubsan_mismatch_data *, ...); +extern tree ubsan_create_data (const char *, int, const location_t *, ...); extern tree ubsan_type_descriptor (tree, enum ubsan_print_style = UBSAN_PRINT_NORMAL); extern tree ubsan_encode_value (tree, bool = false); extern bool is_ubsan_builtin_p (tree); |