Black Lives Matter. Support the Equal Justice Initiative.

Source file src/runtime/libfuzzer.go

Documentation: runtime

     1  // Copyright 2019 The Go Authors. All rights reserved.
     2  // Use of this source code is governed by a BSD-style
     3  // license that can be found in the LICENSE file.
     4  
     5  //go:build libfuzzer
     6  // +build libfuzzer
     7  
     8  package runtime
     9  
    10  import _ "unsafe" // for go:linkname
    11  
    12  func libfuzzerCall(fn *byte, arg0, arg1 uintptr)
    13  
    14  func libfuzzerTraceCmp1(arg0, arg1 uint8) {
    15  	libfuzzerCall(&__sanitizer_cov_trace_cmp1, uintptr(arg0), uintptr(arg1))
    16  }
    17  
    18  func libfuzzerTraceCmp2(arg0, arg1 uint16) {
    19  	libfuzzerCall(&__sanitizer_cov_trace_cmp2, uintptr(arg0), uintptr(arg1))
    20  }
    21  
    22  func libfuzzerTraceCmp4(arg0, arg1 uint32) {
    23  	libfuzzerCall(&__sanitizer_cov_trace_cmp4, uintptr(arg0), uintptr(arg1))
    24  }
    25  
    26  func libfuzzerTraceCmp8(arg0, arg1 uint64) {
    27  	libfuzzerCall(&__sanitizer_cov_trace_cmp8, uintptr(arg0), uintptr(arg1))
    28  }
    29  
    30  func libfuzzerTraceConstCmp1(arg0, arg1 uint8) {
    31  	libfuzzerCall(&__sanitizer_cov_trace_const_cmp1, uintptr(arg0), uintptr(arg1))
    32  }
    33  
    34  func libfuzzerTraceConstCmp2(arg0, arg1 uint16) {
    35  	libfuzzerCall(&__sanitizer_cov_trace_const_cmp2, uintptr(arg0), uintptr(arg1))
    36  }
    37  
    38  func libfuzzerTraceConstCmp4(arg0, arg1 uint32) {
    39  	libfuzzerCall(&__sanitizer_cov_trace_const_cmp4, uintptr(arg0), uintptr(arg1))
    40  }
    41  
    42  func libfuzzerTraceConstCmp8(arg0, arg1 uint64) {
    43  	libfuzzerCall(&__sanitizer_cov_trace_const_cmp8, uintptr(arg0), uintptr(arg1))
    44  }
    45  
    46  //go:linkname __sanitizer_cov_trace_cmp1 __sanitizer_cov_trace_cmp1
    47  //go:cgo_import_static __sanitizer_cov_trace_cmp1
    48  var __sanitizer_cov_trace_cmp1 byte
    49  
    50  //go:linkname __sanitizer_cov_trace_cmp2 __sanitizer_cov_trace_cmp2
    51  //go:cgo_import_static __sanitizer_cov_trace_cmp2
    52  var __sanitizer_cov_trace_cmp2 byte
    53  
    54  //go:linkname __sanitizer_cov_trace_cmp4 __sanitizer_cov_trace_cmp4
    55  //go:cgo_import_static __sanitizer_cov_trace_cmp4
    56  var __sanitizer_cov_trace_cmp4 byte
    57  
    58  //go:linkname __sanitizer_cov_trace_cmp8 __sanitizer_cov_trace_cmp8
    59  //go:cgo_import_static __sanitizer_cov_trace_cmp8
    60  var __sanitizer_cov_trace_cmp8 byte
    61  
    62  //go:linkname __sanitizer_cov_trace_const_cmp1 __sanitizer_cov_trace_const_cmp1
    63  //go:cgo_import_static __sanitizer_cov_trace_const_cmp1
    64  var __sanitizer_cov_trace_const_cmp1 byte
    65  
    66  //go:linkname __sanitizer_cov_trace_const_cmp2 __sanitizer_cov_trace_const_cmp2
    67  //go:cgo_import_static __sanitizer_cov_trace_const_cmp2
    68  var __sanitizer_cov_trace_const_cmp2 byte
    69  
    70  //go:linkname __sanitizer_cov_trace_const_cmp4 __sanitizer_cov_trace_const_cmp4
    71  //go:cgo_import_static __sanitizer_cov_trace_const_cmp4
    72  var __sanitizer_cov_trace_const_cmp4 byte
    73  
    74  //go:linkname __sanitizer_cov_trace_const_cmp8 __sanitizer_cov_trace_const_cmp8
    75  //go:cgo_import_static __sanitizer_cov_trace_const_cmp8
    76  var __sanitizer_cov_trace_const_cmp8 byte
    77  

View as plain text