Diff for /wikisrc/users/kamil/sanitizers.mdwn between versions 1.1 and 1.7

version 1.1, 2018/08/11 12:14:52 version 1.7, 2019/09/02 20:48:39
Line 43  The compiler-rt package ships with libBl Line 43  The compiler-rt package ships with libBl
 As a NetBSD specific extension, there is a micro-UBSan runtime developed and maintained in the NetBSD source code.  As a NetBSD specific extension, there is a micro-UBSan runtime developed and maintained in the NetBSD source code.
 It is designed to function inside libc (uUBSan - usermode-UBSan) and inside the kernel (kUBSan - kernel-UBSan).  It is designed to function inside libc (uUBSan - usermode-UBSan) and inside the kernel (kUBSan - kernel-UBSan).
   
   # Types of runtimes
   
   There are two types of sanitizer runtimes:
   
    * dynamically linked ones (default in GCC)
    * statically linked ones (default in Clang)
   
   Base GCC/NetBSD works with the former, upstream HEAD version of LLVM/NetBSD works with the latter.
   
   Both compilers should support both of them, but the other options (GCC/NetBSD & static runtime, LLVM/NetBSD & dynamic runtime) are to be done.
   
 # Sanitizers in NetBSD  # Sanitizers in NetBSD
   
 Sanitizers in NetBSD are shipped with the following options:  Sanitizers in NetBSD are shipped with the following options:
Line 54  Sanitizers in NetBSD are shipped with th Line 65  Sanitizers in NetBSD are shipped with th
   
 MKSANITIZER blog entry:  MKSANITIZER blog entry:
   
 http://blog.netbsd.org/tnf/entry/mksanitizer_bug_detector_software_integration  <http://blog.netbsd.org/tnf/entry/mksanitizer_bug_detector_software_integration>
   
 MKLIBCSANITIZER and kernel sanitizer blog entry:  MKLIBCSANITIZER and kernel sanitizer blog entry:
                   
 http://blog.netbsd.org/tnf/entry/introduction_to_%C2%B5ubsan_a_clean  <http://blog.netbsd.org/tnf/entry/introduction_to_%C2%B5ubsan_a_clean>
   
 # Support in NetBSD  # Support in NetBSD
   
Line 86  The GCC compiler assumed the version in  Line 97  The GCC compiler assumed the version in 
 ### GCC with the default runtime  ### GCC with the default runtime
   
 Name      | NetBSD status  Name      | NetBSD status
 ----------+---------------------------------  ----------|---------------------------------
 UBSan     | mostly works with all ports  UBSan     | mostly works with all ports
 ASan      | mostly works with amd64 and i386  ASan      | mostly works with amd64 and i386
 LSan      | might work with amd64 and i386  LSan      | might work with amd64 and i386
Line 98  Untested. Line 109  Untested.
 ### GCC with MKLIBCSANITIZER  ### GCC with MKLIBCSANITIZER
   
 Name      | NetBSD status  Name      | NetBSD status
 ----------+---------------------------------  ----------|---------------------------------
 UBSan     | works with micro-UBSan  UBSan     | works with micro-UBSan
   
 ### GCC with kernel sanitizers  ### GCC with kernel sanitizers
   
 Name      | NetBSD status  Name      | NetBSD status
 ----------+---------------------------------  ----------|---------------------------------
 UBSan     | works with micro-UBSan  UBSan     | works with micro-UBSan
   
 ## LLVM  ## LLVM
Line 114  The LLVM support is available only with  Line 125  The LLVM support is available only with 
 ### LLVM with the default runtime  ### LLVM with the default runtime
   
 Name      | NetBSD status  Name      | NetBSD status
 ----------+---------------------------------  ----------|---------------------------------
 UBSan     | works with all ports  UBSan     | mostly works with all LLVM ports
 ASan      | works with amd64 and i386  ASan      | mostly works with amd64 and i386
 MSan      | works with amd64  MSan      | mostly works with amd64
 TSan      | works with amd64  TSan      | mostly works with amd64
   
 ### LLVM with MKSANITIZER  ### LLVM with MKSANITIZER
   
 Untested.  Name      | NetBSD status
   ----------|---------------------------------
   UBSan     | mostly works with all LLVM ports
   ASan      | mostly works with amd64 and i386
   
 ### LLVM with MKLIBCSANITIZER  ### LLVM with MKLIBCSANITIZER
   
 Name      | NetBSD status  Name      | NetBSD status
 ----------+---------------------------------  ----------|---------------------------------
 UBSan     | works with micro-UBSan  UBSan     | works with micro-UBSan
   
 ### LLVM with kernel sanitizers  ### LLVM with kernel sanitizers
   
 Name      | NetBSD status  Name      | NetBSD status
 ----------+---------------------------------  ----------|---------------------------------
 UBSan     | works with micro-UBSan  UBSan     | works with micro-UBSan

Removed from v.1.1  
changed lines
  Added in v.1.7


CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb