summaryrefslogtreecommitdiff
path: root/src/cpu/o3/regfile.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/cpu/o3/regfile.cc')
-rw-r--r--src/cpu/o3/regfile.cc5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/cpu/o3/regfile.cc b/src/cpu/o3/regfile.cc
index 2f41e2ac2..b3f1b1904 100644
--- a/src/cpu/o3/regfile.cc
+++ b/src/cpu/o3/regfile.cc
@@ -83,12 +83,14 @@ PhysRegFile::PhysRegFile(unsigned _numPhysicalIntRegs,
// The initial batch of registers are the integer ones
for (phys_reg = 0; phys_reg < numPhysicalIntRegs; phys_reg++) {
intRegIds.emplace_back(IntRegClass, phys_reg, flat_reg_idx++);
+ intTaintMap.push_back(false);
}
// The next batch of the registers are the floating-point physical
// registers; put them onto the floating-point free list.
for (phys_reg = 0; phys_reg < numPhysicalFloatRegs; phys_reg++) {
floatRegIds.emplace_back(FloatRegClass, phys_reg, flat_reg_idx++);
+ floatTaintMap.push_back(false);
}
// The next batch of the registers are the vector physical
@@ -96,6 +98,7 @@ PhysRegFile::PhysRegFile(unsigned _numPhysicalIntRegs,
for (phys_reg = 0; phys_reg < numPhysicalVecRegs; phys_reg++) {
vectorRegFile[phys_reg].zero();
vecRegIds.emplace_back(VecRegClass, phys_reg, flat_reg_idx++);
+ vecTaintMap.push_back(false);
}
// The next batch of the registers are the vector element physical
// registers; they refer to the same containers as the vector
@@ -112,11 +115,13 @@ PhysRegFile::PhysRegFile(unsigned _numPhysicalIntRegs,
// registers; put them onto the condition-code free list.
for (phys_reg = 0; phys_reg < numPhysicalCCRegs; phys_reg++) {
ccRegIds.emplace_back(CCRegClass, phys_reg, flat_reg_idx++);
+ ccTaintMap.push_back(false);
}
// Misc regs have a fixed mapping but still need PhysRegIds.
for (phys_reg = 0; phys_reg < TheISA::NumMiscRegs; phys_reg++) {
miscRegIds.emplace_back(MiscRegClass, phys_reg, 0);
+ miscTaintMap.push_back(false);
}
}