gem5  v20.1.0.0
Macros | Functions
atomicio.hh File Reference
#include <unistd.h>

Go to the source code of this file.

Macros

#define STATIC_MSG(fd, m)
 Statically allocate a string and write it to a file descriptor. More...
 
#define STATIC_ERR(m)   STATIC_MSG(STDERR_FILENO, m)
 Statically allocate a string and write it to STDERR. More...
 

Functions

ssize_t atomic_read (int fd, void *s, size_t n)
 
ssize_t atomic_write (int fd, const void *s, size_t n)
 

Macro Definition Documentation

◆ STATIC_ERR

#define STATIC_ERR (   m)    STATIC_MSG(STDERR_FILENO, m)

Statically allocate a string and write it to STDERR.

Warning
The return value will from atomic_write will be ignored which means that errors will be ignored. This is normally fine as this macro is intended to be used in fatal signal handlers where error handling might not be feasible.

Definition at line 64 of file atomicio.hh.

◆ STATIC_MSG

#define STATIC_MSG (   fd,
 
)
Value:
do { \
static const char msg[] = m; \
atomic_write(fd, msg, sizeof(msg) - 1); \
} while (0)

Statically allocate a string and write it to a file descriptor.

Warning
The return value will from atomic_write will be ignored which means that errors will be ignored. This is normally fine as this macro is intended to be used in fatal signal handlers where error handling might not be feasible.

Definition at line 50 of file atomicio.hh.

Function Documentation

◆ atomic_read()

ssize_t atomic_read ( int  fd,
void *  s,
size_t  n 
)

Definition at line 35 of file atomicio.cc.

References ArmISA::fd, ArmISA::n, MipsISA::p, and ArmISA::s.

Referenced by TEST().

◆ atomic_write()

ssize_t atomic_write ( int  fd,
const void *  s,
size_t  n 
)
ArmISA::fd
Bitfield< 14, 12 > fd
Definition: types.hh:159
ArmISA::m
Bitfield< 0 > m
Definition: miscregs_types.hh:389

Generated on Wed Sep 30 2020 14:02:18 for gem5 by doxygen 1.8.17