https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81125

--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Author: jakub
Date: Mon Jun 19 15:28:42 2017
New Revision: 249376

URL: https://gcc.gnu.org/viewcvs?rev=249376&root=gcc&view=rev
Log:
        PR sanitizer/81125
        * ubsan.h (enum ubsan_encode_value_phase): New.
        (ubsan_encode_value): Change second argument to
        enum ubsan_encode_value_phase with default value of
        UBSAN_ENCODE_VALUE_GENERIC.
        * ubsan.c (ubsan_encode_value): Change second argument to
        enum ubsan_encode_value_phase PHASE from bool IN_EXPAND_P,
        adjust uses, for UBSAN_ENCODE_VALUE_GENERIC use just
        create_tmp_var_raw instead of create_tmp_var and use a
        TARGET_EXPR.
        (ubsan_expand_bounds_ifn, ubsan_build_overflow_builtin,
        instrument_bool_enum_load, ubsan_instrument_float_cast): Adjust
        ubsan_encode_value callers.

        * g++.dg/ubsan/pr81125.C: New test.

Added:
    trunk/gcc/testsuite/g++.dg/ubsan/pr81125.C
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/ubsan.c
    trunk/gcc/ubsan.h

Reply via email to