#include "sysc/kernel/sc_cmnhdr.h"
#include <climits>
#include <stdint.h>
#include "sysc/utils/sc_iostream.h"
#include "sysc/kernel/sc_constants.h"
Go to the source code of this file.
Namespaces | |
namespace | sc_dt |
Defines | |
#define | SC_DT_MIXED_COMMA_OPERATORS |
#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 | LLWIDTH BITS_PER_INT64 |
#define | INTWIDTH BITS_PER_INT |
#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 ::std::ios::fmtflags | sc_dt::fmtflags |
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 | |
const uint64 | sc_dt::UINT64_ZERO |
const uint64 | sc_dt::UINT64_ONE |
const uint64 | sc_dt::UINT64_32ONES |
const small_type | sc_dt::NB_DEFAULT_BASE |
const uint64 | sc_dt::UINT_ZERO |
const uint64 | sc_dt::UINT_ONE |
#define BITS_PER_BYTE 8 |
Definition at line 121 of file sc_nbdefs.h.
#define BITS_PER_CHAR 8 |
Definition at line 199 of file sc_nbdefs.h.
#define BITS_PER_DIGIT 30 |
Definition at line 137 of file sc_nbdefs.h.
#define BITS_PER_DIGIT_TYPE 32 |
Definition at line 133 of file sc_nbdefs.h.
#define BITS_PER_HALF_DIGIT (BITS_PER_DIGIT / 2) |
Definition at line 145 of file sc_nbdefs.h.
#define BITS_PER_INT (sizeof(int) * BITS_PER_CHAR) |
Definition at line 200 of file sc_nbdefs.h.
#define BITS_PER_INT64 (sizeof(::sc_dt::int64) * BITS_PER_CHAR) |
Definition at line 202 of file sc_nbdefs.h.
#define BITS_PER_LONG (sizeof(long) * BITS_PER_CHAR) |
Definition at line 201 of file sc_nbdefs.h.
#define BITS_PER_UINT (sizeof(unsigned int) * BITS_PER_CHAR) |
Definition at line 203 of file sc_nbdefs.h.
#define BITS_PER_UINT64 (sizeof(::sc_dt::uint64) * BITS_PER_CHAR) |
Definition at line 205 of file sc_nbdefs.h.
#define BITS_PER_ULONG (sizeof(unsigned long) * BITS_PER_CHAR) |
Definition at line 204 of file sc_nbdefs.h.
#define BYTE_MASK 255 |
Definition at line 123 of file sc_nbdefs.h.
#define BYTE_RADIX 256 |
Definition at line 122 of file sc_nbdefs.h.
#define BYTES_PER_DIGIT 4 |
Definition at line 136 of file sc_nbdefs.h.
#define BYTES_PER_DIGIT_TYPE 4 |
Definition at line 132 of file sc_nbdefs.h.
#define DIGIT_MASK (DIGIT_RADIX - 1) |
Definition at line 139 of file sc_nbdefs.h.
#define DIGIT_RADIX (1ul << BITS_PER_DIGIT) |
Definition at line 138 of file sc_nbdefs.h.
#define DIGITS_PER_CHAR 1 |
Definition at line 208 of file sc_nbdefs.h.
#define DIGITS_PER_INT ((BITS_PER_INT+29)/30) |
Definition at line 209 of file sc_nbdefs.h.
#define DIGITS_PER_INT64 ((BITS_PER_INT64+29)/30) |
Definition at line 211 of file sc_nbdefs.h.
#define DIGITS_PER_LONG ((BITS_PER_LONG+29)/30) |
Definition at line 210 of file sc_nbdefs.h.
#define DIGITS_PER_UINT ((BITS_PER_UINT+29)/30) |
Definition at line 212 of file sc_nbdefs.h.
#define DIGITS_PER_UINT64 ((BITS_PER_UINT64+29)/30) |
Definition at line 214 of file sc_nbdefs.h.
#define DIGITS_PER_ULONG ((BITS_PER_ULONG+29)/30) |
Definition at line 213 of file sc_nbdefs.h.
#define DIV_CEIL | ( | x | ) | DIV_CEIL2(x, BITS_PER_DIGIT) |
Definition at line 154 of file sc_nbdefs.h.
#define DIV_CEIL2 | ( | x, | |||
y | ) | (((x) - 1) / (y) + 1) |
Definition at line 150 of file sc_nbdefs.h.
#define HALF_DIGIT_MASK (HALF_DIGIT_RADIX - 1) |
Definition at line 147 of file sc_nbdefs.h.
#define HALF_DIGIT_RADIX (1ul << BITS_PER_HALF_DIGIT) |
Definition at line 146 of file sc_nbdefs.h.
#define INTWIDTH BITS_PER_INT |
Definition at line 229 of file sc_nbdefs.h.
#define LLWIDTH BITS_PER_INT64 |
Definition at line 228 of file sc_nbdefs.h.
#define LOG2_BITS_PER_BYTE 3 |
Definition at line 127 of file sc_nbdefs.h.
#define SC_DT_MIXED_COMMA_OPERATORS |
Definition at line 79 of file sc_nbdefs.h.
#define SC_INTWIDTH 64 |
Definition at line 235 of file sc_nbdefs.h.
#define SC_NEG -1 |
Definition at line 109 of file sc_nbdefs.h.
#define SC_NOSIGN 2 |
Definition at line 112 of file sc_nbdefs.h.
#define SC_POS 1 |
Definition at line 111 of file sc_nbdefs.h.
#define SC_ZERO 0 |
Definition at line 110 of file sc_nbdefs.h.