Revert r231104, "unique_ptrify FullDependenceAnalysis::DV", to appease msc18 C2280.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@231334 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
NAKAMURA Takumi 2015-03-05 01:25:06 +00:00
parent c2f4077b88
commit c1899b151e
2 changed files with 13 additions and 6 deletions

View File

@ -221,6 +221,9 @@ namespace llvm {
Instruction *Dst,
bool LoopIndependent,
unsigned Levels);
~FullDependence() {
delete[] DV;
}
/// isLoopIndependent - Returns true if this is a loop-independent
/// dependence.
@ -267,7 +270,7 @@ namespace llvm {
unsigned short Levels;
bool LoopIndependent;
bool Consistent; // Init to true, then refine.
std::unique_ptr<DVEntry[]> DV;
DVEntry *DV;
friend class DependenceAnalysis;
};

View File

@ -226,12 +226,16 @@ bool Dependence::isScalar(unsigned level) const {
//===----------------------------------------------------------------------===//
// FullDependence methods
FullDependence::FullDependence(Instruction *Source, Instruction *Destination,
FullDependence::FullDependence(Instruction *Source,
Instruction *Destination,
bool PossiblyLoopIndependent,
unsigned CommonLevels)
: Dependence(Source, Destination), Levels(CommonLevels),
LoopIndependent(PossiblyLoopIndependent), Consistent(true),
DV(CommonLevels ? new DVEntry[CommonLevels] : nullptr) {}
unsigned CommonLevels) :
Dependence(Source, Destination),
Levels(CommonLevels),
LoopIndependent(PossiblyLoopIndependent) {
Consistent = true;
DV = CommonLevels ? new DVEntry[CommonLevels] : nullptr;
}
// The rest are simple getters that hide the implementation.