gpt4 book ai didi

gem5 - 为什么在 gem5 中添加 DPRINTF(XXX 调试标志失败, "error:' XXX' 未在此范围内声明”?

转载 作者:行者123 更新时间:2023-12-04 08:32:36 26 4
gpt4 key购买 nike

我想知道执行替换算法时的缓存信息。所以我在最新版本的 gem5 中做了以下改动。我加了一行 DebugFlag('ReplacementInfo')命令到 /home/cuiyujie/workspace/workGem5/gem5/src/mem/cache/replacement_policies/SConscript文件。然后我添加了头文件#include "debug/ReplacementInfo.hh"/home/cuiyujie/workspace/workGem5/gem5/build/X86/params/RandomRP.cc文件。然后我用了 DPRINTF(ReplacementInfo, "candidates");该文件中的命令。但是在编译过程中发生了错误。

build/X86/mem/cache/replacement_policies/random_rp.cc: In member function'virtual ReplaceableEntry* RandomRP::getVictim(const ReplacementCandidates&) const':
build/X86/mem/cache/replacement_policies/random_rp.cc:82:13: error:'ReplacementInfo' was not declared in this scope
DPRINTF(ReplacementInfo, "candidates");
^
build/X86/mem/cache/replacement_policies/random_rp.cc:82:13: note: suggested alternative:
In file included from build/X86/mem/cache/replacement_policies/random_rp.cc:44:0:
build/X86/debug/ReplacementInfo.hh:18:19: note:'Debug::ReplacementInfo'
extern SimpleFlag ReplacementInfo;
^
build/X86/mem/cache/replacement_policies/random_rp.cc:82:42: error:'DPRINTF' was not declared in this scope
DPRINTF(ReplacementInfo, "candidates");
^
scons: *** [build/X86/mem/cache/replacement_policies/random_rp.o] Error 1
scons: building terminated because of errors.

最佳答案

第二个错误是:

build/X86/mem/cache/replacement_policies/random_rp.cc:82:42: error:'DPRINTF' was not declared in this scope
DPRINTF(ReplacementInfo, "candidates");
这意味着您还需要:
#include "base/trace.hh"
这是哪里 DPRINTF被定义为。
错误顺序有点乱,因为 GCC 必须假设 DPRINTF是一个函数,因为它没有看到宏定义,所以它首先尝试评估参数。但是 DPRINTF是一个宏,并添加了缺失的 Debug::Debug::ReplacementInfo ,它提示第一个错误:
#define DPRINTF(x, ...) do {                     \
using namespace Debug; \
if (M5_UNLIKELY(DTRACE(x))) { \
Trace::getDebugLogger()->dprintf_flag( \
curTick(), name(), #x, __VA_ARGS__); \
} \
} while (0)

关于gem5 - 为什么在 gem5 中添加 DPRINTF(XXX 调试标志失败, "error:' XXX' 未在此范围内声明”?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64950679/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com