arch-arm: Fix NumVecV7ArchRegs value (64->16)
authorGiacomo Travaglini <giacomo.travaglini@arm.com>
Mon, 18 Nov 2019 13:50:02 +0000 (13:50 +0000)
committerGiacomo Travaglini <giacomo.travaglini@arm.com>
Tue, 10 Dec 2019 10:15:05 +0000 (10:15 +0000)
In armv7 there are 16 only quadword (vector) registers which are usable
by SIMD instructions (Q0-Q15). Those completely overlap with the 32
double word registers (D0-D31).

NumVecV7ArchRegs  = 16; // Q0-Q15

Change-Id: Id8fee1064d60dcfa54f273fa7d579a20c0087835
Signed-off-by: Giacomo Travaglini <giacomo.travaglini@arm.com>
Reviewed-by: Nikos Nikoleris <nikos.nikoleris@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/23105
Tested-by: kokoro <noreply+kokoro@google.com>
src/arch/arm/registers.hh

index 7f6309bead3ff62f54bc71ec2c27e76f7e769614..f2dfce4253c529a97d5a7de2cf66bce8a0b721ae 100644 (file)
@@ -88,8 +88,8 @@ const int NumMiscRegs = NUM_MISCREGS;
 
 // Vec, PredVec
 const int NumFloatV7ArchRegs  = 64;
-const int NumVecV7ArchRegs  = 64;
-const int NumVecV8ArchRegs  = 32;
+const int NumVecV7ArchRegs  = 16; // Q0-Q15
+const int NumVecV8ArchRegs  = 32; // V0-V31
 const int NumVecSpecialRegs = 8;
 const int NumVecIntrlvRegs = 4;
 const int NumVecRegs = NumVecV8ArchRegs + NumVecSpecialRegs + NumVecIntrlvRegs;