From 963c96c6002eeef43b5f0de02ba8015d55395a7f Mon Sep 17 00:00:00 2001 From: Jiajie Chen Date: Mon, 22 Aug 2022 10:11:30 +0800 Subject: [PATCH] misc: Fix dynamic decision of TranslatingPortProxy. In commit 83b14e56, getVirtProxy is replaced by inline ternary operators to decide between FS or SE version. However, dynamic dispatch will not work in this scenario and the virtual function of SETranslatingPortProxy will not be called. It may lead to failure in m5op read_file in SE mode. Change-Id: I9b5f757096cfdbd6fb8bc14b1b0e02245703a0ac Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/62611 Tested-by: kokoro Reviewed-by: Jason Lowe-Power Maintainer: Jason Lowe-Power --- src/arch/arm/aapcs32.hh | 7 +++++-- src/arch/arm/tracers/tarmac_parser.cc | 7 +++++-- src/base/remote_gdb.cc | 14 ++++++++++---- src/sim/pseudo_inst.cc | 25 +++++++++++++++++-------- 4 files changed, 37 insertions(+), 16 deletions(-) diff --git a/src/arch/arm/aapcs32.hh b/src/arch/arm/aapcs32.hh index 96de7ad072..383b8eb36b 100644 --- a/src/arch/arm/aapcs32.hh +++ b/src/arch/arm/aapcs32.hh @@ -354,8 +354,11 @@ struct Argumentwrite(buf, len); if (os->fail() || os->bad()) panic("Error while doing writefile!\n");