59d58
< typedef TheISA::VectorReg VectorReg;
75,77d73
< /** Vector register file. */
< std::vector<VectorReg> vectorRegFile;
<
100,105d95
< /**
< * The first vector physical register index. The vector registers follow
< * the condition-code registers.
< */
< unsigned baseVectorRegIndex;
<
116,117c106
< unsigned _numPhysicalCCRegs,
< unsigned _numPhysicalVectorRegs);
---
> unsigned _numPhysicalCCRegs);
136c125
< { return baseVectorRegIndex - baseCCRegIndex; }
---
> { return totalNumRegs - baseCCRegIndex; }
138,141d126
< /** @return the number of vector physical registers. */
< unsigned numVectorPhysRegs() const
< { return totalNumRegs - baseVectorRegIndex; }
<
169c154
< return (baseCCRegIndex <= reg_idx && reg_idx < baseVectorRegIndex);
---
> return (baseCCRegIndex <= reg_idx && reg_idx < totalNumRegs);
172,180d156
< /**
< * @return true if the specified physical register index
< * corresponds to a vector physical register.
< */
< bool isVectorPhysReg(PhysRegIndex reg_idx) const
< {
< return baseVectorRegIndex <= reg_idx && reg_idx < totalNumRegs;
< }
<
234,245d209
< /** Reads a vector register. */
< const VectorReg &readVectorReg(PhysRegIndex reg_idx) const
< {
< assert(isVectorPhysReg(reg_idx));
<
< // Remove the base vector reg dependency.
< PhysRegIndex reg_offset = reg_idx - baseVectorRegIndex;
<
< DPRINTF(IEW, "RegFile: Access to vector register %i\n", int(reg_idx));
< return vectorRegFile[reg_offset];
< }
<
301,310d264
<
< /** Sets a vector register to the given value. */
< void setVectorReg(PhysRegIndex reg_idx, const VectorReg &val)
< {
< assert(isVectorPhysReg(reg_idx));
< // Remove the base vector reg dependency.
< PhysRegIndex reg_offset = reg_idx - baseVectorRegIndex;
< DPRINTF(IEW, "RegFile: Setting vector register %i\n", int(reg_idx));
< vectorRegFile[reg_offset] = val;
< }