From b6d822c5c04a0ea441c66fcf0a736c81f07d17b9 Mon Sep 17 00:00:00 2001 From: Gabe Black Date: Wed, 9 Oct 2019 19:39:34 -0700 Subject: [PATCH] cpu: Stop checking for PC changes when servicing a PCEventQueue. First of all, this would arbitrarily skip events based on when they were encountered in the queue. Second, this is one of the three places where the ThreadContext is actually accessed in pc_event.cc. By removing this and the other uses, this file can be included even when using the NULL ISA, and a lot of #ifdefs can be removed. Change-Id: If81f5e9ff9d3f9833145fec0b6062b4bda8d2e47 Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/22100 Reviewed-by: Andreas Sandberg Maintainer: Andreas Sandberg Tested-by: kokoro --- src/cpu/pc_event.cc | 7 ------- 1 file changed, 7 deletions(-) diff --git a/src/cpu/pc_event.cc b/src/cpu/pc_event.cc index 65094f0ad..90c87334a 100644 --- a/src/cpu/pc_event.cc +++ b/src/cpu/pc_event.cc @@ -92,13 +92,6 @@ PCEventQueue::doService(ThreadContext *tc) int serviced = 0; range_t range = equal_range(pc); for (iterator i = range.first; i != range.second; ++i) { - // Make sure that the pc wasn't changed as the side effect of - // another event. This for example, prevents two invocations - // of the SkipFuncEvent. Maybe we should have separate PC - // event queues for each processor? - if (pc != tc->instAddr()) - continue; - DPRINTF(PCEvent, "PC based event serviced at %#x: %s\n", (*i)->pc(), (*i)->descr()); -- 2.30.2