One Hat Cyber Team
Your IP :
216.73.216.216
Server IP :
194.44.31.54
Server :
Linux zen.imath.kiev.ua 4.18.0-553.77.1.el8_10.x86_64 #1 SMP Fri Oct 3 14:30:23 UTC 2025 x86_64
Server Software :
Apache/2.4.37 (Rocky Linux) OpenSSL/1.1.1k
PHP Version :
5.6.40
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
usr
/
include
/
llvm
/
FuzzMutate
/
View File Name :
Operations.h
//===-- Operations.h - ----------------------------------------*- 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 // //===----------------------------------------------------------------------===// // // Implementations of common fuzzer operation descriptors for building an IR // mutator. // //===----------------------------------------------------------------------===// #ifndef LLVM_FUZZMUTATE_OPERATIONS_H #define LLVM_FUZZMUTATE_OPERATIONS_H #include "llvm/FuzzMutate/OpDescriptor.h" #include "llvm/IR/InstrTypes.h" #include "llvm/IR/Instruction.h" namespace llvm { /// Getters for the default sets of operations, per general category. /// @{ void describeFuzzerIntOps(std::vector<fuzzerop::OpDescriptor> &Ops); void describeFuzzerFloatOps(std::vector<fuzzerop::OpDescriptor> &Ops); void describeFuzzerControlFlowOps(std::vector<fuzzerop::OpDescriptor> &Ops); void describeFuzzerPointerOps(std::vector<fuzzerop::OpDescriptor> &Ops); void describeFuzzerAggregateOps(std::vector<fuzzerop::OpDescriptor> &Ops); void describeFuzzerVectorOps(std::vector<fuzzerop::OpDescriptor> &Ops); void describeFuzzerUnaryOperations(std::vector<fuzzerop::OpDescriptor> &Ops); void describeFuzzerOtherOps(std::vector<fuzzerop::OpDescriptor> &Ops); /// @} namespace fuzzerop { /// Descriptors for individual operations. /// @{ OpDescriptor selectDescriptor(unsigned Weight); OpDescriptor fnegDescriptor(unsigned Weight); OpDescriptor binOpDescriptor(unsigned Weight, Instruction::BinaryOps Op); OpDescriptor cmpOpDescriptor(unsigned Weight, Instruction::OtherOps CmpOp, CmpInst::Predicate Pred); OpDescriptor splitBlockDescriptor(unsigned Weight); OpDescriptor gepDescriptor(unsigned Weight); OpDescriptor extractValueDescriptor(unsigned Weight); OpDescriptor insertValueDescriptor(unsigned Weight); OpDescriptor extractElementDescriptor(unsigned Weight); OpDescriptor insertElementDescriptor(unsigned Weight); OpDescriptor shuffleVectorDescriptor(unsigned Weight); /// @} } // namespace fuzzerop } // namespace llvm #endif // LLVM_FUZZMUTATE_OPERATIONS_H