gem5 build system improved
Encapsulated gem5-specific code into wrapper functions to separate the build process (Fail: CMake, gem5: scons). Added some gem5-related FIXMEs. Another CMake related FIXME added. +some cosmetics. Change-Id: Id84b480127b1f13aed6a0ee97f3583f410d531c5
This commit is contained in:
33
src/core/sal/gem5/Gem5Wrapper.hpp
Normal file
33
src/core/sal/gem5/Gem5Wrapper.hpp
Normal file
@ -0,0 +1,33 @@
|
||||
#ifndef __GEM5_WRAPPER_HPP__
|
||||
#define __GEM5_WRAPPER_HPP__
|
||||
|
||||
#include "../Register.hpp"
|
||||
#include "../SALConfig.hpp"
|
||||
|
||||
// gem5 forward declarations:
|
||||
class System;
|
||||
|
||||
namespace fail {
|
||||
|
||||
class Gem5Breakpoint;
|
||||
|
||||
// Register-/Memory-related:
|
||||
regdata_t GetRegisterContent(System* sys, unsigned int id, RegisterType type, size_t idx);
|
||||
void SetRegisterContent(System* sys, unsigned int id, RegisterType type, size_t idx,
|
||||
regdata_t value);
|
||||
void WriteMemory(System* sys, guest_address_t addr, size_t cnt, void const *src);
|
||||
void ReadMemory(System* sys, guest_address_t addr, size_t cnt, void *dest);
|
||||
size_t GetPoolSize(System* sys);
|
||||
|
||||
// Breakpoint-related:
|
||||
Gem5Breakpoint* OnBreakpointAddition(address_t watchInstrPtr);
|
||||
void OnBreakpointDeletion(Gem5Breakpoint* bp);
|
||||
|
||||
// Controller-related:
|
||||
unsigned int GetCPUId(System* sys, int context);
|
||||
System* GetSystemObject();
|
||||
int GetNumberOfContexts(System* sys);
|
||||
|
||||
} // end-of-namespace: fail
|
||||
|
||||
#endif // __GEM5_WRAPPER_HPP__
|
||||
Reference in New Issue
Block a user