Home
last modified time | relevance | path

Searched refs:DivRemMapKey (Results 1 – 3 of 3) sorted by relevance

/freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Utils/
H A DBypassSlowDivision.h30 struct DivRemMapKey { struct
35 DivRemMapKey() = default; argument
37 DivRemMapKey(bool InSignedOp, Value *InDividend, Value *InDivisor) in DivRemMapKey() argument
41 template <> struct DenseMapInfo<DivRemMapKey> {
42 static bool isEqual(const DivRemMapKey &Val1, const DivRemMapKey &Val2) {
47 static DivRemMapKey getEmptyKey() {
48 return DivRemMapKey(false, nullptr, nullptr);
51 static DivRemMapKey getTombstoneKey() {
52 return DivRemMapKey(true, nullptr, nullptr);
55 static unsigned getHashValue(const DivRemMapKey &Val) {
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DDivRemPairs.cpp41 DivRemMapKey Key;
125 DenseMap<DivRemMapKey, Instruction *> DivMap; in getWorklist()
128 MapVector<DivRemMapKey, Instruction *> RemMap; in getWorklist()
132 DivMap[DivRemMapKey(true, I.getOperand(0), I.getOperand(1))] = &I; in getWorklist()
134 DivMap[DivRemMapKey(false, I.getOperand(0), I.getOperand(1))] = &I; in getWorklist()
136 RemMap[DivRemMapKey(true, I.getOperand(0), I.getOperand(1))] = &I; in getWorklist()
138 RemMap[DivRemMapKey(false, I.getOperand(0), I.getOperand(1))] = &I; in getWorklist()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/
H A DBypassSlowDivision.cpp61 using DivCacheTy = DenseMap<DivRemMapKey, QuotRemPair>;
157 DivRemMapKey Key(isSignedOp(), Dividend, Divisor); in getReplacement()