summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen
diff options
context:
space:
mode:
authorHal Finkel <hfinkel@anl.gov>2012-06-22 20:27:13 +0000
committerHal Finkel <hfinkel@anl.gov>2012-06-22 20:27:13 +0000
commit8db5547252aa96d4745136892e040ff9417a5d2d (patch)
tree1002917d73e8ef85075d20212a2d091164d1e6e8 /llvm/lib/CodeGen
parentb31fe09b0f9dd090b273e520b9ee47d6ab45b936 (diff)
downloadbcm5719-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.cpp4
-rw-r--r--llvm/lib/CodeGen/ScoreboardHazardRecognizer.cpp12
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);
OpenPOWER on IntegriCloud