41#ifndef __ARCH_ARM_FS_WORKLOAD_HH__
42#define __ARCH_ARM_FS_WORKLOAD_HH__
51#include "params/ArmFsWorkload.hh"
95 template <
template <
class ABI,
class Base>
class FuncEvent,
102 std::forward<Args>(args)...);
105 std::forward<Args>(args)...);
109 template <
template <
class ABI,
class Base>
class FuncEvent,
116 std::forward<Args>(args)...);
119 std::forward<Args>(args)...);
146 ByteOrder
byteOrder()
const override {
return ByteOrder::little; }
Addr fixFuncEventAddr(Addr addr) const override
loader::ObjectFile * getBootLoader(loader::ObjectFile *const obj)
Get a boot loader that matches the kernel.
PCEvent * addSkipFuncOrPanic(Args... args)
loader::ObjectFile * bootldr
Pointer to the bootloader object.
Addr getEntry() const override
void setSystem(System *sys) override
loader::Arch getArch() const override
ByteOrder byteOrder() const override
std::vector< std::unique_ptr< loader::ObjectFile > > bootLoaders
Bootloaders.
void initState() override
initState() is called on each SimObject when not restoring from a checkpoint.
Addr kernelEntry
This differs from entry since it takes into account where the kernel is loaded in memory (with loadAd...
FsWorkload(const Params &p)
PCEvent * addSkipFunc(Args... args)
void returnFromFuncIn(ThreadContext *tc) override
static BaseRemoteGDB * build(ListenSocketConfig listen_config, Args... args)
loader::ObjectFile * kernelObj
T * addKernelFuncEventOrPanic(const char *lbl, Args... args)
T * addKernelFuncEvent(const char *lbl, Args... args)
Add a function-based event to a kernel symbol.
SkipFuncBase(PCEventScope *s, const std::string &desc, Addr addr)
ThreadContext is the external interface to all thread state for anything outside of the CPU.
virtual void setSystem(System *sys)
const Params & params() const
Copyright (c) 2024 - Pranith Kumar Copyright (c) 2020 Inria All rights reserved.
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.