003 File Manager
Current Path:
/usr/src/contrib/llvm-project/compiler-rt/lib/fuzzer
usr
/
src
/
contrib
/
llvm-project
/
compiler-rt
/
lib
/
fuzzer
/
📁
..
📄
FuzzerBuiltins.h
(1.25 KB)
📄
FuzzerBuiltinsMsvc.h
(2.33 KB)
📄
FuzzerCommand.h
(5.95 KB)
📄
FuzzerCorpus.h
(16.93 KB)
📄
FuzzerCrossOver.cpp
(1.85 KB)
📄
FuzzerDataFlowTrace.cpp
(9.93 KB)
📄
FuzzerDataFlowTrace.h
(3.98 KB)
📄
FuzzerDefs.h
(1.99 KB)
📄
FuzzerDictionary.h
(3.32 KB)
📄
FuzzerDriver.cpp
(28.35 KB)
📄
FuzzerExtFunctions.def
(2.5 KB)
📄
FuzzerExtFunctions.h
(1.04 KB)
📄
FuzzerExtFunctionsDlsym.cpp
(1.63 KB)
📄
FuzzerExtFunctionsWeak.cpp
(1.9 KB)
📄
FuzzerExtFunctionsWindows.cpp
(2.79 KB)
📄
FuzzerExtraCounters.cpp
(1.55 KB)
📄
FuzzerFlags.def
(10.02 KB)
📄
FuzzerFork.cpp
(12.53 KB)
📄
FuzzerFork.h
(778 B)
📄
FuzzerIO.cpp
(4.47 KB)
📄
FuzzerIO.h
(3.31 KB)
📄
FuzzerIOPosix.cpp
(4.47 KB)
📄
FuzzerIOWindows.cpp
(11.59 KB)
📄
FuzzerInterface.h
(3.03 KB)
📄
FuzzerInternal.h
(5.33 KB)
📄
FuzzerLoop.cpp
(28.54 KB)
📄
FuzzerMain.cpp
(791 B)
📄
FuzzerMerge.cpp
(13.75 KB)
📄
FuzzerMerge.h
(3.31 KB)
📄
FuzzerMutate.cpp
(20.02 KB)
📄
FuzzerMutate.h
(6.57 KB)
📄
FuzzerOptions.h
(2.36 KB)
📄
FuzzerPlatform.h
(4.69 KB)
📄
FuzzerRandom.h
(1.21 KB)
📄
FuzzerSHA1.cpp
(5.56 KB)
📄
FuzzerSHA1.h
(978 B)
📄
FuzzerTracePC.cpp
(22.56 KB)
📄
FuzzerTracePC.h
(8.87 KB)
📄
FuzzerUtil.cpp
(6.75 KB)
📄
FuzzerUtil.h
(3.25 KB)
📄
FuzzerUtilDarwin.cpp
(5.87 KB)
📄
FuzzerUtilFuchsia.cpp
(20.16 KB)
📄
FuzzerUtilLinux.cpp
(1.12 KB)
📄
FuzzerUtilPosix.cpp
(5.07 KB)
📄
FuzzerUtilWindows.cpp
(5.93 KB)
📄
FuzzerValueBitMap.h
(2.24 KB)
📄
README.txt
(40 B)
Editing: FuzzerRandom.h
//===- FuzzerRandom.h - Internal header for the Fuzzer ----------*- C++ -* ===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// // fuzzer::Random //===----------------------------------------------------------------------===// #ifndef LLVM_FUZZER_RANDOM_H #define LLVM_FUZZER_RANDOM_H #include <random> namespace fuzzer { class Random : public std::minstd_rand { public: Random(unsigned int seed) : std::minstd_rand(seed) {} result_type operator()() { return this->std::minstd_rand::operator()(); } size_t Rand() { return this->operator()(); } size_t RandBool() { return Rand() % 2; } size_t SkewTowardsLast(size_t n) { size_t T = this->operator()(n * n); size_t Res = sqrt(T); return Res; } size_t operator()(size_t n) { return n ? Rand() % n : 0; } intptr_t operator()(intptr_t From, intptr_t To) { assert(From < To); intptr_t RangeSize = To - From + 1; return operator()(RangeSize) + From; } }; } // namespace fuzzer #endif // LLVM_FUZZER_RANDOM_H
Upload File
Create Folder