rename_map.cc (12857:6fc1b2a47d76) rename_map.cc (13598:39220222740c)
1/*
2 * Copyright (c) 2016 ARM Limited
3 * All rights reserved
4 *
5 * The license below extends only to copyright in the software and shall
6 * not be construed as granting a license to any other intellectual
7 * property including but not limited to intellectual property relating
8 * to a hardware implementation of the functionality of the software

--- 147 unchanged lines hidden (view full) ---

156 freeList->addRegs(range.first, range.second);
157 }
158 vecMode = Enums::Elem;
159 } else if (newVecMode == Enums::Full && vecMode == Enums::Elem) {
160 /* Switch to full vector register rename mode. */
161 /* The free list should currently be tracking register elems. */
162 panic_if(freeList->hasFreeVecRegs(),
163 "The free list is already tracking full Vec");
1/*
2 * Copyright (c) 2016 ARM Limited
3 * All rights reserved
4 *
5 * The license below extends only to copyright in the software and shall
6 * not be construed as granting a license to any other intellectual
7 * property including but not limited to intellectual property relating
8 * to a hardware implementation of the functionality of the software

--- 147 unchanged lines hidden (view full) ---

156 freeList->addRegs(range.first, range.second);
157 }
158 vecMode = Enums::Elem;
159 } else if (newVecMode == Enums::Full && vecMode == Enums::Elem) {
160 /* Switch to full vector register rename mode. */
161 /* The free list should currently be tracking register elems. */
162 panic_if(freeList->hasFreeVecRegs(),
163 "The free list is already tracking full Vec");
164 panic_if(freeList->numFreeVecRegs() !=
164 panic_if(freeList->numFreeVecElems() !=
165 regFile->numVecElemPhysRegs() - TheISA::NumFloatRegs,
166 "The free list has lost vector register elements");
167 /* To rebuild the arch regs we take the easy road:
168 * 1.- Stitch the elems together into vectors.
169 * 2.- Replace the contents of the register file with the vectors
170 * 3.- Set the remaining registers as free
171 */
172 TheISA::VecRegContainer new_RF[TheISA::NumVecRegs];

--- 23 unchanged lines hidden ---
165 regFile->numVecElemPhysRegs() - TheISA::NumFloatRegs,
166 "The free list has lost vector register elements");
167 /* To rebuild the arch regs we take the easy road:
168 * 1.- Stitch the elems together into vectors.
169 * 2.- Replace the contents of the register file with the vectors
170 * 3.- Set the remaining registers as free
171 */
172 TheISA::VecRegContainer new_RF[TheISA::NumVecRegs];

--- 23 unchanged lines hidden ---