class InstDeleterIRStrategy
Declaration
class InstDeleterIRStrategy : public IRMutationStrategy { /* full declaration omitted */ };
Description
Base class for describing how to mutate a module. mutation functions for each IR unit forward to the contained unit.
Declared at: llvm/include/llvm/FuzzMutate/IRMutator.h:95
Inherits from: IRMutationStrategy
Method Overview
- public uint64_t getWeight(size_t CurrentSize, size_t MaxSize, uint64_t CurrentWeight)
- public void mutate(llvm::Function & F, llvm::RandomIRBuilder & IB)
- public void mutate(llvm::Instruction & Inst, llvm::RandomIRBuilder & IB)
Inherited from IRMutationStrategy:
Methods
¶uint64_t getWeight(size_t CurrentSize,
size_t MaxSize,
uint64_t CurrentWeight)
uint64_t getWeight(size_t CurrentSize,
size_t MaxSize,
uint64_t CurrentWeight)
Description
Provide a weight to bias towards choosing this strategy for a mutation. The value of the weight is arbitrary, but a good default is "the number of distinct ways in which this strategy can mutate a unit". This can also be used to prefer strategies that shrink the overall size of the result when we start getting close to \c MaxSize.
Declared at: llvm/include/llvm/FuzzMutate/IRMutator.h:97
Parameters
- size_t CurrentSize
- size_t MaxSize
- uint64_t CurrentWeight
¶void mutate(llvm::Function& F,
llvm::RandomIRBuilder& IB)
void mutate(llvm::Function& F,
llvm::RandomIRBuilder& IB)
Declared at: llvm/include/llvm/FuzzMutate/IRMutator.h:101
Parameters
¶void mutate(llvm::Instruction& Inst,
llvm::RandomIRBuilder& IB)
void mutate(llvm::Instruction& Inst,
llvm::RandomIRBuilder& IB)
Declared at: llvm/include/llvm/FuzzMutate/IRMutator.h:102
Parameters
- llvm::Instruction& Inst
- llvm::RandomIRBuilder& IB