gem5 v24.0.0.0
|
BufferArg represents an untyped buffer in target user space that is passed by reference to an (emulated) system call. More...
#include <syscall_emul_buf.hh>
Public Member Functions | |
BufferArg (Addr _addr, int _size) | |
Allocate a buffer of size 'size' representing the memory at target address 'addr'. | |
void * | bufferPtr () |
Return a pointer to the internal simulator-space buffer. | |
Public Member Functions inherited from gem5::BaseBufferArg | |
BaseBufferArg (Addr _addr, int _size) | |
Allocate a buffer of size 'size' representing the memory at target address 'addr'. | |
~BaseBufferArg () | |
bool | copyIn (const PortProxy &memproxy) |
copy data into simulator space (read from target memory) | |
bool | copyOut (const PortProxy &memproxy) |
copy data out of simulator space (write to target memory) | |
Additional Inherited Members | |
Protected Attributes inherited from gem5::BaseBufferArg | |
const Addr | addr |
address of buffer in target address space | |
const int | size |
buffer size | |
uint8_t *const | bufPtr |
pointer to buffer in simulator space | |
BufferArg represents an untyped buffer in target user space that is passed by reference to an (emulated) system call.
Definition at line 107 of file syscall_emul_buf.hh.
|
inline |
Allocate a buffer of size 'size' representing the memory at target address 'addr'.
Definition at line 114 of file syscall_emul_buf.hh.
|
inline |
Return a pointer to the internal simulator-space buffer.
Definition at line 119 of file syscall_emul_buf.hh.
References gem5::BaseBufferArg::bufPtr.
Referenced by gem5::_llseekFunc(), gem5::acceptFunc(), gem5::bindFunc(), gem5::doClone(), gem5::exitFutexWake(), gem5::futexFunc(), gem5::getcwdFunc(), gem5::getpeernameFunc(), gem5::SparcISA::getresuidFunc(), gem5::getsocknameFunc(), gem5::getsockoptFunc(), gem5::ioctlFunc(), gem5::pipe2Func(), gem5::pollFunc(), gem5::pread64Func(), gem5::pwrite64Func(), gem5::readFunc(), gem5::readlinkatFunc(), gem5::recvfromFunc(), gem5::recvmsgFunc(), gem5::schedGetaffinityFunc(), gem5::sendmsgFunc(), gem5::sendtoFunc(), gem5::setsockoptFunc(), gem5::socketpairFunc(), gem5::ArmISA::sysctlFunc(), gem5::wait4Func(), and gem5::writeFunc().