mirror of
https://github.com/RPCSX/llvm.git
synced 2025-04-08 03:01:58 +00:00
Remove a couple of redundant copies of SmallVector::operator==.
No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@206635 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
d290fa608f
commit
561edae834
@ -696,12 +696,7 @@ public:
|
|||||||
}
|
}
|
||||||
|
|
||||||
inline bool operator==(const _Self& x) const {
|
inline bool operator==(const _Self& x) const {
|
||||||
if (stack.size() != x.stack.size())
|
return stack == x.stack;
|
||||||
return false;
|
|
||||||
for (unsigned i = 0 ; i < stack.size(); i++)
|
|
||||||
if (stack[i] != x.stack[i])
|
|
||||||
return false;
|
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
inline bool operator!=(const _Self& x) const { return !operator==(x); }
|
inline bool operator!=(const _Self& x) const { return !operator==(x); }
|
||||||
|
@ -868,21 +868,6 @@ BasicAliasAnalysis::getModRefInfo(ImmutableCallSite CS,
|
|||||||
return ModRefResult(AliasAnalysis::getModRefInfo(CS, Loc) & Min);
|
return ModRefResult(AliasAnalysis::getModRefInfo(CS, Loc) & Min);
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool areVarIndicesEqual(SmallVectorImpl<VariableGEPIndex> &Indices1,
|
|
||||||
SmallVectorImpl<VariableGEPIndex> &Indices2) {
|
|
||||||
unsigned Size1 = Indices1.size();
|
|
||||||
unsigned Size2 = Indices2.size();
|
|
||||||
|
|
||||||
if (Size1 != Size2)
|
|
||||||
return false;
|
|
||||||
|
|
||||||
for (unsigned I = 0; I != Size1; ++I)
|
|
||||||
if (Indices1[I] != Indices2[I])
|
|
||||||
return false;
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// aliasGEP - Provide a bunch of ad-hoc rules to disambiguate a GEP instruction
|
/// aliasGEP - Provide a bunch of ad-hoc rules to disambiguate a GEP instruction
|
||||||
/// against another pointer. We know that V1 is a GEP, but we don't know
|
/// against another pointer. We know that V1 is a GEP, but we don't know
|
||||||
/// anything about V2. UnderlyingV1 is GetUnderlyingObject(GEP1, DL),
|
/// anything about V2. UnderlyingV1 is GetUnderlyingObject(GEP1, DL),
|
||||||
@ -939,7 +924,7 @@ BasicAliasAnalysis::aliasGEP(const GEPOperator *GEP1, uint64_t V1Size,
|
|||||||
|
|
||||||
// Same offsets.
|
// Same offsets.
|
||||||
if (GEP1BaseOffset == GEP2BaseOffset &&
|
if (GEP1BaseOffset == GEP2BaseOffset &&
|
||||||
areVarIndicesEqual(GEP1VariableIndices, GEP2VariableIndices))
|
GEP1VariableIndices == GEP2VariableIndices)
|
||||||
return NoAlias;
|
return NoAlias;
|
||||||
GEP1VariableIndices.clear();
|
GEP1VariableIndices.clear();
|
||||||
}
|
}
|
||||||
|
@ -108,17 +108,6 @@ static TargetTransformInfo::OperandValueKind getOperandInfo(Value *V) {
|
|||||||
return OpInfo;
|
return OpInfo;
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool matchMask(SmallVectorImpl<int> &M1, SmallVectorImpl<int> &M2) {
|
|
||||||
if (M1.size() != M2.size())
|
|
||||||
return false;
|
|
||||||
|
|
||||||
for (unsigned i = 0, e = M1.size(); i != e; ++i)
|
|
||||||
if (M1[i] != M2[i])
|
|
||||||
return false;
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
static bool matchPairwiseShuffleMask(ShuffleVectorInst *SI, bool IsLeft,
|
static bool matchPairwiseShuffleMask(ShuffleVectorInst *SI, bool IsLeft,
|
||||||
unsigned Level) {
|
unsigned Level) {
|
||||||
// We don't need a shuffle if we just want to have element 0 in position 0 of
|
// We don't need a shuffle if we just want to have element 0 in position 0 of
|
||||||
@ -136,7 +125,7 @@ static bool matchPairwiseShuffleMask(ShuffleVectorInst *SI, bool IsLeft,
|
|||||||
Mask[i] = val;
|
Mask[i] = val;
|
||||||
|
|
||||||
SmallVector<int, 16> ActualMask = SI->getShuffleMask();
|
SmallVector<int, 16> ActualMask = SI->getShuffleMask();
|
||||||
if (!matchMask(Mask, ActualMask))
|
if (Mask != ActualMask)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
@ -349,7 +338,7 @@ static bool matchVectorSplittingReduction(const ExtractElementInst *ReduxRoot,
|
|||||||
std::fill(&ShuffleMask[MaskStart], ShuffleMask.end(), -1);
|
std::fill(&ShuffleMask[MaskStart], ShuffleMask.end(), -1);
|
||||||
|
|
||||||
SmallVector<int, 16> Mask = Shuffle->getShuffleMask();
|
SmallVector<int, 16> Mask = Shuffle->getShuffleMask();
|
||||||
if (!matchMask(ShuffleMask, Mask))
|
if (ShuffleMask != Mask)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
RdxOp = NextRdxOp;
|
RdxOp = NextRdxOp;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user