#include "ReduceOperands.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/InstIterator.h"
#include "llvm/IR/InstrTypes.h"
#include "llvm/IR/Operator.h"
#include "llvm/IR/PatternMatch.h"
#include "llvm/IR/Type.h"
usingnamespacellvm;
usingnamespacePatternMatch;
static void
extractOperandsFromModule(Oracle &O, ReducerWorkItem &WorkItem,
function_ref<Value *(Use &)> ReduceValue) { … }
static bool isOne(Use &Op) { … }
static bool isZero(Use &Op) { … }
static bool isZeroOrOneFP(Value *Op) { … }
static bool shouldReduceOperand(Use &Op) { … }
static bool switchCaseExists(Use &Op, ConstantInt *CI) { … }
void llvm::reduceOperandsOneDeltaPass(TestRunner &Test) { … }
void llvm::reduceOperandsZeroDeltaPass(TestRunner &Test) { … }
void llvm::reduceOperandsNaNDeltaPass(TestRunner &Test) { … }