llvm-project/compiler-rt/lib/ubsan
Alexey Samsonov eb47d8a2c8 Sanitize upcasts and conversion to virtual base.
This change adds UBSan check to upcasts. Namely, when we
perform derived-to-base conversion, we:
1) check that the pointer-to-derived has suitable alignment
   and underlying storage, if this pointer is non-null.
2) if vptr-sanitizer is enabled, and we perform conversion to
   virtual base, we check that pointer-to-derived has a matching vptr.

llvm-svn: 219642
2014-10-13 23:59:00 +00:00
..
CMakeLists.txt [sanitizer] Add i686 arch to compiler-rt. 2014-10-01 12:55:06 +00:00
Makefile.mk Split ubsan runtime into three pieces (compiler-rt part): 2013-03-20 23:49:17 +00:00
ubsan.syms.extra Properly generate lists of exported symbols for sanitizer runtimes 2013-08-27 15:08:02 +00:00
ubsan_diag.cc UBSan: print 'undefined-behavior' instead of 'runtime-error' in report summary 2014-09-22 19:39:46 +00:00
ubsan_diag.h [UBSan] Optionally report summary in UBSan error reports. 2014-09-19 18:33:45 +00:00
ubsan_flags.cc [UBSan] Introduce more flexible __ubsan_default_options function instead of UBSAN_DEFAULT_OPTIONS compile definition 2014-09-19 18:54:52 +00:00
ubsan_flags.h [UBSan] Introduce more flexible __ubsan_default_options function instead of UBSAN_DEFAULT_OPTIONS compile definition 2014-09-19 18:54:52 +00:00
ubsan_handlers.cc Sanitize upcasts and conversion to virtual base. 2014-10-13 23:59:00 +00:00
ubsan_handlers.h [UBSan] Add noinline attribute to handlers that should never return. 2014-09-10 20:43:36 +00:00
ubsan_handlers_cxx.cc [UBSan] Optionally report summary in UBSan error reports. 2014-09-19 18:33:45 +00:00
ubsan_handlers_cxx.h [ubsan] Move attribute specifier to fix build with gcc. 2013-01-10 17:01:13 +00:00
ubsan_init.cc Revert r217616. Problems and complexity it introduces negate its benefit 2014-09-12 01:26:57 +00:00
ubsan_init.h [UBSan] Call UBSan initialization as early as possible. 2014-07-25 22:24:34 +00:00
ubsan_type_hash.cc Make the big array in the UBSan C++ runtime be zero-initialized to dramatically 2013-10-17 22:51:04 +00:00
ubsan_type_hash.h [ubsan] Add SANITIZER_INTERFACE_ATTRIBUTE to __ubsan_vptr_type_cache 2013-01-17 17:14:12 +00:00
ubsan_value.cc [ubsan] handle long double in 32-bit mode; part of the patch by Marek Polacek 2014-05-23 14:45:13 +00:00
ubsan_value.h Enable UBSan on FreeBSD. Patch by Viktor Kutuzov. 2014-02-25 08:29:36 +00:00