cpu: Apply the ARM TLB rework to the checker CPU.
authorGabe Black <gabeblack@google.com>
Sun, 20 Oct 2019 08:06:49 +0000 (01:06 -0700)
committerGabe Black <gabeblack@google.com>
Mon, 21 Oct 2019 17:07:29 +0000 (17:07 +0000)
The TLBs now create the stage 2 MMUs as children, and since those are
specialized for instruction and data, the CPU needs to use ArmITB or
ArmDTB instead of ArmTLB which is the base class without an MMU. This
was changed for the BaseCPU already, but the TLBs are added in the
checker CPU as well.

Change-Id: Ide8ce950622b40f69c37bbe2ea0d22295b76d7a6
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/21979
Reviewed-by: Daniel Carvalho <odanrc@yahoo.com.br>
Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
Maintainer: Andreas Sandberg <andreas.sandberg@arm.com>
Tested-by: kokoro <noreply+kokoro@google.com>
src/cpu/simple/BaseSimpleCPU.py

index 6714295d2060e2212f496a95fddffe259e608b12..f8e2948c981f8b281dacac74deeb20299e0061d3 100644 (file)
@@ -42,11 +42,11 @@ class BaseSimpleCPU(BaseCPU):
 
     def addCheckerCpu(self):
         if buildEnv['TARGET_ISA'] in ['arm']:
-            from m5.objects.ArmTLB import ArmTLB
+            from m5.objects.ArmTLB import ArmITB, ArmDTB
 
             self.checker = DummyChecker(workload = self.workload)
-            self.checker.itb = ArmTLB(size = self.itb.size)
-            self.checker.dtb = ArmTLB(size = self.dtb.size)
+            self.checker.itb = ArmITB(size = self.itb.size)
+            self.checker.dtb = ArmDTB(size = self.dtb.size)
         else:
             print("ERROR: Checker only supported under ARM ISA!")
             exit(1)