diff options
author | Hal Finkel <hfinkel@anl.gov> | 2012-06-22 20:27:13 +0000 |
---|---|---|
committer | Hal Finkel <hfinkel@anl.gov> | 2012-06-22 20:27:13 +0000 |
commit | 8db5547252aa96d4745136892e040ff9417a5d2d (patch) | |
tree | 1002917d73e8ef85075d20212a2d091164d1e6e8 /llvm/lib/CodeGen | |
parent | b31fe09b0f9dd090b273e520b9ee47d6ab45b936 (diff) | |
download | bcm5719-llvm-8db5547252aa96d4745136892e040ff9417a5d2d.tar.gz bcm5719-llvm-8db5547252aa96d4745136892e040ff9417a5d2d.zip |
Revert r158679 - use case is unclear (and it increases the memory footprint).
Original commit message:
Allow up to 64 functional units per processor itinerary.
This patch changes the type used to hold the FU bitset from unsigned to uint64_t.
This will be needed for some upcoming PowerPC itineraries.
llvm-svn: 159027
Diffstat (limited to 'llvm/lib/CodeGen')
-rw-r--r-- | llvm/lib/CodeGen/DFAPacketizer.cpp | 4 | ||||
-rw-r--r-- | llvm/lib/CodeGen/ScoreboardHazardRecognizer.cpp | 12 |
2 files changed, 8 insertions, 8 deletions
diff --git a/llvm/lib/CodeGen/DFAPacketizer.cpp b/llvm/lib/CodeGen/DFAPacketizer.cpp index d4775775c05..ff2f11353af 100644 --- a/llvm/lib/CodeGen/DFAPacketizer.cpp +++ b/llvm/lib/CodeGen/DFAPacketizer.cpp @@ -66,7 +66,7 @@ void DFAPacketizer::ReadTable(unsigned int state) { bool DFAPacketizer::canReserveResources(const llvm::MCInstrDesc *MID) { unsigned InsnClass = MID->getSchedClass(); const llvm::InstrStage *IS = InstrItins->beginStage(InsnClass); - uint64_t FuncUnits = IS->getUnits(); + unsigned FuncUnits = IS->getUnits(); UnsignPair StateTrans = UnsignPair(CurrentState, FuncUnits); ReadTable(CurrentState); return (CachedTable.count(StateTrans) != 0); @@ -78,7 +78,7 @@ bool DFAPacketizer::canReserveResources(const llvm::MCInstrDesc *MID) { void DFAPacketizer::reserveResources(const llvm::MCInstrDesc *MID) { unsigned InsnClass = MID->getSchedClass(); const llvm::InstrStage *IS = InstrItins->beginStage(InsnClass); - uint64_t FuncUnits = IS->getUnits(); + unsigned FuncUnits = IS->getUnits(); UnsignPair StateTrans = UnsignPair(CurrentState, FuncUnits); ReadTable(CurrentState); assert(CachedTable.count(StateTrans) != 0); diff --git a/llvm/lib/CodeGen/ScoreboardHazardRecognizer.cpp b/llvm/lib/CodeGen/ScoreboardHazardRecognizer.cpp index ed5e4a3fec2..7110b7566ab 100644 --- a/llvm/lib/CodeGen/ScoreboardHazardRecognizer.cpp +++ b/llvm/lib/CodeGen/ScoreboardHazardRecognizer.cpp @@ -95,10 +95,10 @@ void ScoreboardHazardRecognizer::Scoreboard::dump() const { last--; for (unsigned i = 0; i <= last; i++) { - uint64_t FUs = (*this)[i]; + unsigned FUs = (*this)[i]; dbgs() << "\t"; - for (int j = 63; j >= 0; j--) - dbgs() << ((FUs & (1ULL << j)) ? '1' : '0'); + for (int j = 31; j >= 0; j--) + dbgs() << ((FUs & (1 << j)) ? '1' : '0'); dbgs() << '\n'; } } @@ -144,7 +144,7 @@ ScoreboardHazardRecognizer::getHazardType(SUnit *SU, int Stalls) { break; } - uint64_t freeUnits = IS->getUnits(); + unsigned freeUnits = IS->getUnits(); switch (IS->getReservationKind()) { case InstrStage::Required: // Required FUs conflict with both reserved and required ones @@ -196,7 +196,7 @@ void ScoreboardHazardRecognizer::EmitInstruction(SUnit *SU) { assert(((cycle + i) < RequiredScoreboard.getDepth()) && "Scoreboard depth exceeded!"); - uint64_t freeUnits = IS->getUnits(); + unsigned freeUnits = IS->getUnits(); switch (IS->getReservationKind()) { case InstrStage::Required: // Required FUs conflict with both reserved and required ones @@ -209,7 +209,7 @@ void ScoreboardHazardRecognizer::EmitInstruction(SUnit *SU) { } // reduce to a single unit - uint64_t freeUnit = 0; + unsigned freeUnit = 0; do { freeUnit = freeUnits; freeUnits = freeUnit & (freeUnit - 1); |