llvm-project/compiler-rt/lib/ubsan
Roman Lebedev 1d0c7f563c [compiler-rt][UBSan] silence_unsigned_overflow: do *NOT* ignore *fatal* unsigned overflows
Summary:
D48660 / rL335762 added a `silence_unsigned_overflow` env flag for [[ https://github.com/google/oss-fuzz/pull/1717 | oss-fuzz needs ]],
that allows to silence the reports from unsigned overflows.
It makes sense, it is there because `-fsanitize=integer` sanitizer is not enabled on oss-fuzz,
so this allows to still use it as an interestingness signal, without getting the actual reports.

However there is a slight problem here.
All types of unsigned overflows are ignored.
Even if `-fno-sanitize-recover=unsigned` was used (which means the program will die after the report)
there will still be no report, the program will just silently die.

At the moment there are just two projects on oss-fuzz that care:
* [[ 8eeffa627f/projects/llvm_libcxx/build.sh (L18-L20) | libc++ ]]
* [[ 8eeffa627f/projects/librawspeed/build.sh | RawSpeed ]] (me)

I suppose this could be overridden there ^, but i really don't think this is intended behavior in any case..

Reviewers: kcc, Dor1s, #sanitizers, filcab, vsk, kubamracek

Reviewed By: Dor1s

Subscribers: dberris, mclow.lists, llvm-commits

Tags: #sanitizers

Differential Revision: https://reviews.llvm.org/D54771

llvm-svn: 347415
2018-11-21 20:35:43 +00:00
..
CMakeLists.txt [CMake] Add compiler-rt header files to the list of sources for targets 2018-07-10 13:00:17 +00:00
ubsan.syms.extra
ubsan_checks.inc [compiler-rt][ubsan] Implicit Conversion Sanitizer - integer sign change - compiler-rt part 2018-10-30 21:58:54 +00:00
ubsan_diag.cc [ubsan] Add support for reporting diagnostics to a monitor process 2018-06-22 17:21:17 +00:00
ubsan_diag.h [compiler-rt][ubsan] Implicit Conversion Sanitizer - integer truncation - compiler-rt part 2018-07-30 18:58:30 +00:00
ubsan_diag_standalone.cc [ubsan] Make ubsan version of __sanitizer_print_stack_trace consistent with other sanitizers 2017-09-11 21:25:22 +00:00
ubsan_flags.cc [ubsan] Add preinit initializer for ubsan 2018-01-23 19:54:02 +00:00
ubsan_flags.h
ubsan_flags.inc [compiler-rt][UBSan] silence_unsigned_overflow: do *NOT* ignore *fatal* unsigned overflows 2018-11-21 20:35:43 +00:00
ubsan_handlers.cc [compiler-rt][UBSan] silence_unsigned_overflow: do *NOT* ignore *fatal* unsigned overflows 2018-11-21 20:35:43 +00:00
ubsan_handlers.h [compiler-rt][ubsan] Implicit Conversion Sanitizer - integer sign change - compiler-rt part 2018-10-30 21:58:54 +00:00
ubsan_handlers_cxx.cc CFI: Print DSO names for failed cross-DSO icalls 2018-06-26 18:51:04 +00:00
ubsan_handlers_cxx.h [cfi] Cross-DSO CFI diagnostic mode (compiler-rt part) 2016-01-25 23:34:38 +00:00
ubsan_init.cc [ubsan] Split ubsan_init_standalone 2017-09-21 00:35:22 +00:00
ubsan_init.h [ubsan] Use the correct tool name in diagnostics 2017-04-14 18:24:35 +00:00
ubsan_init_standalone.cc [ubsan] Support signal specific options in ubsan 2017-09-23 02:47:11 +00:00
ubsan_init_standalone_preinit.cc [ubsan] Add preinit initializer for ubsan 2018-01-23 19:54:02 +00:00
ubsan_interface.inc [compiler-rt][ubsan] Implicit Conversion Sanitizer - integer truncation - compiler-rt part 2018-07-30 18:58:30 +00:00
ubsan_monitor.cc [ubsan] Add support for reporting diagnostics to a monitor process 2018-06-22 17:21:17 +00:00
ubsan_monitor.h [ubsan] Add support for reporting diagnostics to a monitor process 2018-06-22 17:21:17 +00:00
ubsan_platform.h [sanitizer] Trivial portion of the port to Myriad RTEMS 2018-05-18 00:43:54 +00:00
ubsan_signals_standalone.cc [ubsan] Disable signal handling on Android. 2018-01-22 19:26:01 +00:00
ubsan_signals_standalone.h [ubsan] Support signal specific options in ubsan 2017-09-23 02:47:11 +00:00
ubsan_type_hash.cc
ubsan_type_hash.h UBSan: crash less often on corrupted Vtables. 2016-06-02 18:36:12 +00:00
ubsan_type_hash_itanium.cc [ubsan] Fix a faulty memory accessibility check 2017-06-15 18:23:16 +00:00
ubsan_type_hash_win.cc
ubsan_value.cc Fix bad regression from r263077 when building with MSVC. 2016-03-12 01:57:31 +00:00
ubsan_value.h
ubsan_win_dll_thunk.cc [sanitizer] Intercept weak functions in dll_thunks. 2017-02-02 23:01:34 +00:00
ubsan_win_dynamic_runtime_thunk.cc [sanitizer] Add dynamic_runtime_thunk for different sanitizers. 2017-02-02 23:01:41 +00:00
ubsan_win_weak_interception.cc [ubsan] Fix __ubsan_on_report interface definition 2018-06-22 20:15:33 +00:00
weak_symbols.txt Enable weak hooks on darwin 2017-01-09 03:51:42 +00:00