31#ifndef SC_SIGNED_INLINES_H
32#define SC_SIGNED_INLINES_H
167 bool reversed =
false;
201 bool reversed =
false;
226 nbits = num_bits( nb );
229 std::snprintf(msg,
sizeof(msg),
"%s::%s( sc_bv_base ) : nb = %d is not valid",
230 "sc_signed",
"sc_signed", nb );
250 nbits = num_bits( nb );
253 std::snprintf(msg,
sizeof(msg),
"%s::%s( sc_lv_base ) : nb = %d is not valid",
254 "sc_signed",
"sc_signed", nb );
301 *to_p++ = from >> 32;
316 if (
sizeof(from) > 4 ) {
318 *to_p++ = ((
int64)from) >> 32;
324 else if ( to_hod > 0 ) {
338 *to_p++ = from >> 32;
353 if (
sizeof(from) > 4 ) {
355 *to_p++ = ((
uint64)from) >> 32;
361 else if ( to_hod > 0 ) {
371 return *
this = (
int64)from;
377 return *
this = (
uint64)from;
422 if ( 0 > (
int)
digit[hod] ) {
426 for ( ; hod >= 0; --hod ) {
432 for ( ; hod >= 0; --hod ) {
#define SC_DIGIT_COUNT(BIT_WIDTH)
#define SC_FREE_DIGIT(FLAG)
#define SC_BASE_VEC_DIGITS
#define SC_REPORT_ERROR(msg_type, msg)
const char SC_ID_INIT_FAILED_[]
void vector_fill(const sc_digit fill, const int to_hod, sc_digit *to_p)
sc_digit_heap SC_API sc_temporary_digits
unsigned long long uint64
void vector_extract(const sc_digit *source_p, sc_digit *destination_p, const int high_bit, const int low_bit)
void vector_copy(const int from_n, const sc_digit *from_p, const int to_n, sc_digit *to_p)
void vector_twos_complement(const int target_n, sc_digit *target_p)
void vector_reverse_bits(sc_digit *target_p, int high_i, int low_i)
sc_digit * allocate(size_t digits_n)
sc_unsigned operator>>(int v) const
sc_unsigned operator<<(int v) const
sc_signed operator>>(int v) const
const sc_signed & operator=(const sc_signed &v)
sc_signed operator<<(int v) const
const sc_signed & operator>>=(int v)
const sc_signed & operator<<=(int v)
sc_digit * get_digits() const
sc_digit base_vec[SC_BASE_VEC_DIGITS >0?SC_BASE_VEC_DIGITS:1]
sc_signed(int nb=sc_length_param().len())
sc_digit * get_digits() const