gem5  v22.0.0.1
Namespaces | Macros | Typedefs | Enumerations | Variables
sc_nbdefs.hh File Reference
#include <stdint.h>
#include <climits>

Go to the source code of this file.

Namespaces

 sc_dt
 

Macros

#define SC_NEG   -1
 
#define SC_ZERO   0
 
#define SC_POS   1
 
#define SC_NOSIGN   2
 
#define BITS_PER_BYTE   8
 
#define BYTE_RADIX   256
 
#define BYTE_MASK   255
 
#define LOG2_BITS_PER_BYTE   3
 
#define BYTES_PER_DIGIT_TYPE   4
 
#define BITS_PER_DIGIT_TYPE   32
 
#define BYTES_PER_DIGIT   4
 
#define BITS_PER_DIGIT   30
 
#define DIGIT_RADIX   (1ul << BITS_PER_DIGIT)
 
#define DIGIT_MASK   (DIGIT_RADIX - 1)
 
#define BITS_PER_HALF_DIGIT   (BITS_PER_DIGIT / 2)
 
#define HALF_DIGIT_RADIX   (1ul << BITS_PER_HALF_DIGIT)
 
#define HALF_DIGIT_MASK   (HALF_DIGIT_RADIX - 1)
 
#define DIV_CEIL2(x, y)   (((x) - 1) / (y) + 1)
 
#define DIV_CEIL(x)   DIV_CEIL2(x, BITS_PER_DIGIT)
 
#define BITS_PER_CHAR   8
 
#define BITS_PER_INT   (sizeof(int) * BITS_PER_CHAR)
 
#define BITS_PER_LONG   (sizeof(long) * BITS_PER_CHAR)
 
#define BITS_PER_INT64   (sizeof(::sc_dt::int64) * BITS_PER_CHAR)
 
#define BITS_PER_UINT   (sizeof(unsigned int) * BITS_PER_CHAR)
 
#define BITS_PER_ULONG   (sizeof(unsigned long) * BITS_PER_CHAR)
 
#define BITS_PER_UINT64   (sizeof(::sc_dt::uint64) * BITS_PER_CHAR)
 
#define DIGITS_PER_CHAR   1
 
#define DIGITS_PER_INT   ((BITS_PER_INT + 29) / 30)
 
#define DIGITS_PER_LONG   ((BITS_PER_LONG + 29) / 30)
 
#define DIGITS_PER_INT64   ((BITS_PER_INT64 + 29) / 30)
 
#define DIGITS_PER_UINT   ((BITS_PER_UINT + 29) / 30)
 
#define DIGITS_PER_ULONG   ((BITS_PER_ULONG + 29) / 30)
 
#define DIGITS_PER_UINT64   ((BITS_PER_UINT64 + 29) / 30)
 
#define SC_INTWIDTH   64
 

Typedefs

typedef unsigned char sc_dt::uchar
 
typedef int sc_dt::small_type
 
typedef unsigned int sc_dt::sc_digit
 
typedef int64_t sc_dt::int64
 
typedef uint64_t sc_dt::uint64
 
typedef int64 sc_dt::int_type
 
typedef uint64 sc_dt::uint_type
 

Enumerations

enum  sc_dt::sc_numrep {
  sc_dt::SC_NOBASE = 0, sc_dt::SC_BIN = 2, sc_dt::SC_OCT = 8, sc_dt::SC_DEC = 10,
  sc_dt::SC_HEX = 16, sc_dt::SC_BIN_US, sc_dt::SC_BIN_SM, sc_dt::SC_OCT_US,
  sc_dt::SC_OCT_SM, sc_dt::SC_HEX_US, sc_dt::SC_HEX_SM, sc_dt::SC_CSD
}
 

Variables

static const uint64 sc_dt::UINT64_ZERO = 0ULL
 
static const uint64 sc_dt::UINT64_ONE = 1ULL
 
static const uint64 sc_dt::UINT64_32ONES = 0x00000000ffffffffULL
 
static const small_type sc_dt::NB_DEFAULT_BASE = SC_DEC
 
static const uint64 sc_dt::UINT_ZERO = UINT64_ZERO
 
static const uint64 sc_dt::UINT_ONE = UINT64_ONE
 

Macro Definition Documentation

◆ BITS_PER_BYTE

#define BITS_PER_BYTE   8

Definition at line 145 of file sc_nbdefs.hh.

◆ BITS_PER_CHAR

#define BITS_PER_CHAR   8

Definition at line 216 of file sc_nbdefs.hh.

◆ BITS_PER_DIGIT

#define BITS_PER_DIGIT   30

Definition at line 161 of file sc_nbdefs.hh.

◆ BITS_PER_DIGIT_TYPE

#define BITS_PER_DIGIT_TYPE   32

Definition at line 157 of file sc_nbdefs.hh.

◆ BITS_PER_HALF_DIGIT

#define BITS_PER_HALF_DIGIT   (BITS_PER_DIGIT / 2)

Definition at line 169 of file sc_nbdefs.hh.

◆ BITS_PER_INT

#define BITS_PER_INT   (sizeof(int) * BITS_PER_CHAR)

Definition at line 217 of file sc_nbdefs.hh.

◆ BITS_PER_INT64

#define BITS_PER_INT64   (sizeof(::sc_dt::int64) * BITS_PER_CHAR)

Definition at line 219 of file sc_nbdefs.hh.

◆ BITS_PER_LONG

#define BITS_PER_LONG   (sizeof(long) * BITS_PER_CHAR)

Definition at line 218 of file sc_nbdefs.hh.

◆ BITS_PER_UINT

#define BITS_PER_UINT   (sizeof(unsigned int) * BITS_PER_CHAR)

Definition at line 220 of file sc_nbdefs.hh.

◆ BITS_PER_UINT64

#define BITS_PER_UINT64   (sizeof(::sc_dt::uint64) * BITS_PER_CHAR)

Definition at line 222 of file sc_nbdefs.hh.

◆ BITS_PER_ULONG

#define BITS_PER_ULONG   (sizeof(unsigned long) * BITS_PER_CHAR)

Definition at line 221 of file sc_nbdefs.hh.

◆ BYTE_MASK

#define BYTE_MASK   255

Definition at line 147 of file sc_nbdefs.hh.

◆ BYTE_RADIX

#define BYTE_RADIX   256

Definition at line 146 of file sc_nbdefs.hh.

◆ BYTES_PER_DIGIT

#define BYTES_PER_DIGIT   4

Definition at line 160 of file sc_nbdefs.hh.

◆ BYTES_PER_DIGIT_TYPE

#define BYTES_PER_DIGIT_TYPE   4

Definition at line 156 of file sc_nbdefs.hh.

◆ DIGIT_MASK

#define DIGIT_MASK   (DIGIT_RADIX - 1)

Definition at line 163 of file sc_nbdefs.hh.

◆ DIGIT_RADIX

#define DIGIT_RADIX   (1ul << BITS_PER_DIGIT)

Definition at line 162 of file sc_nbdefs.hh.

◆ DIGITS_PER_CHAR

#define DIGITS_PER_CHAR   1

Definition at line 225 of file sc_nbdefs.hh.

◆ DIGITS_PER_INT

#define DIGITS_PER_INT   ((BITS_PER_INT + 29) / 30)

Definition at line 226 of file sc_nbdefs.hh.

◆ DIGITS_PER_INT64

#define DIGITS_PER_INT64   ((BITS_PER_INT64 + 29) / 30)

Definition at line 228 of file sc_nbdefs.hh.

◆ DIGITS_PER_LONG

#define DIGITS_PER_LONG   ((BITS_PER_LONG + 29) / 30)

Definition at line 227 of file sc_nbdefs.hh.

◆ DIGITS_PER_UINT

#define DIGITS_PER_UINT   ((BITS_PER_UINT + 29) / 30)

Definition at line 229 of file sc_nbdefs.hh.

◆ DIGITS_PER_UINT64

#define DIGITS_PER_UINT64   ((BITS_PER_UINT64 + 29) / 30)

Definition at line 231 of file sc_nbdefs.hh.

◆ DIGITS_PER_ULONG

#define DIGITS_PER_ULONG   ((BITS_PER_ULONG + 29) / 30)

Definition at line 230 of file sc_nbdefs.hh.

◆ DIV_CEIL

#define DIV_CEIL (   x)    DIV_CEIL2(x, BITS_PER_DIGIT)

Definition at line 178 of file sc_nbdefs.hh.

◆ DIV_CEIL2

#define DIV_CEIL2 (   x,
 
)    (((x) - 1) / (y) + 1)

Definition at line 174 of file sc_nbdefs.hh.

◆ HALF_DIGIT_MASK

#define HALF_DIGIT_MASK   (HALF_DIGIT_RADIX - 1)

Definition at line 171 of file sc_nbdefs.hh.

◆ HALF_DIGIT_RADIX

#define HALF_DIGIT_RADIX   (1ul << BITS_PER_HALF_DIGIT)

Definition at line 170 of file sc_nbdefs.hh.

◆ LOG2_BITS_PER_BYTE

#define LOG2_BITS_PER_BYTE   3

Definition at line 151 of file sc_nbdefs.hh.

◆ SC_INTWIDTH

#define SC_INTWIDTH   64

Definition at line 242 of file sc_nbdefs.hh.

◆ SC_NEG

#define SC_NEG   -1

Definition at line 133 of file sc_nbdefs.hh.

◆ SC_NOSIGN

#define SC_NOSIGN   2

Definition at line 136 of file sc_nbdefs.hh.

◆ SC_POS

#define SC_POS   1

Definition at line 135 of file sc_nbdefs.hh.

◆ SC_ZERO

#define SC_ZERO   0

Definition at line 134 of file sc_nbdefs.hh.


Generated on Sat Jun 18 2022 08:12:54 for gem5 by doxygen 1.8.17