gem5 v24.0.0.0
Loading...
Searching...
No Matches
sc_dt::scfx_ieee_double Class Reference

#include <scfx_ieee.hh>

Public Member Functions

 scfx_ieee_double ()
 
 scfx_ieee_double (double)
 
 scfx_ieee_double (const scfx_ieee_double &)
 
scfx_ieee_doubleoperator= (double)
 
scfx_ieee_doubleoperator= (const scfx_ieee_double &)
 
 operator double () const
 
unsigned int negative () const
 
void negative (unsigned int)
 
int exponent () const
 
void exponent (int)
 
unsigned int mantissa0 () const
 
void mantissa0 (unsigned int)
 
unsigned int mantissa1 () const
 
void mantissa1 (unsigned int)
 
bool is_zero () const
 
bool is_subnormal () const
 
bool is_normal () const
 
bool is_inf () const
 
bool is_nan () const
 
void set_inf ()
 
void set_nan ()
 
int msb () const
 
int lsb () const
 

Static Public Member Functions

static const scfx_ieee_double nan ()
 
static const scfx_ieee_double inf (int)
 

Private Attributes

ieee_double m_id
 

Detailed Description

Definition at line 115 of file scfx_ieee.hh.

Constructor & Destructor Documentation

◆ scfx_ieee_double() [1/3]

sc_dt::scfx_ieee_double::scfx_ieee_double ( )
inline

Definition at line 156 of file scfx_ieee.hh.

References sc_dt::ieee_double::d, and m_id.

◆ scfx_ieee_double() [2/3]

sc_dt::scfx_ieee_double::scfx_ieee_double ( double d)
inline

Definition at line 161 of file scfx_ieee.hh.

References sc_dt::ieee_double::d, and m_id.

◆ scfx_ieee_double() [3/3]

sc_dt::scfx_ieee_double::scfx_ieee_double ( const scfx_ieee_double & a)
inline

Definition at line 166 of file scfx_ieee.hh.

Member Function Documentation

◆ exponent() [1/2]

int sc_dt::scfx_ieee_double::exponent ( ) const
inline

◆ exponent() [2/2]

void sc_dt::scfx_ieee_double::exponent ( int a)
inline

◆ inf()

const scfx_ieee_double sc_dt::scfx_ieee_double::inf ( int sign)
inlinestatic

Definition at line 360 of file scfx_ieee.hh.

Referenced by sc_dt::sc_fxval_fast::from_string().

◆ is_inf()

bool sc_dt::scfx_ieee_double::is_inf ( ) const
inline

Definition at line 262 of file scfx_ieee.hh.

References exponent(), mantissa0(), mantissa1(), and sc_dt::SCFX_IEEE_DOUBLE_E_MAX.

◆ is_nan()

bool sc_dt::scfx_ieee_double::is_nan ( ) const
inline

Definition at line 269 of file scfx_ieee.hh.

References exponent(), mantissa0(), mantissa1(), and sc_dt::SCFX_IEEE_DOUBLE_E_MAX.

◆ is_normal()

bool sc_dt::scfx_ieee_double::is_normal ( ) const
inline

◆ is_subnormal()

bool sc_dt::scfx_ieee_double::is_subnormal ( ) const
inline

Definition at line 248 of file scfx_ieee.hh.

References exponent(), mantissa0(), mantissa1(), and sc_dt::SCFX_IEEE_DOUBLE_E_MIN.

◆ is_zero()

bool sc_dt::scfx_ieee_double::is_zero ( ) const
inline

Definition at line 241 of file scfx_ieee.hh.

References exponent(), mantissa0(), mantissa1(), and sc_dt::SCFX_IEEE_DOUBLE_E_MIN.

◆ lsb()

int sc_dt::scfx_ieee_double::lsb ( ) const
inline

Definition at line 324 of file scfx_ieee.hh.

References LSB_STATEMENT, mantissa0(), and mantissa1().

◆ mantissa0() [1/2]

unsigned int sc_dt::scfx_ieee_double::mantissa0 ( ) const
inline

Definition at line 217 of file scfx_ieee.hh.

References m_id, and sc_dt::ieee_double::s.

Referenced by is_inf(), is_nan(), is_subnormal(), is_zero(), lsb(), msb(), set_inf(), and set_nan().

◆ mantissa0() [2/2]

void sc_dt::scfx_ieee_double::mantissa0 ( unsigned int a)
inline

Definition at line 223 of file scfx_ieee.hh.

References a, m_id, sc_dt::ieee_double::s, sc_dt::SCFX_IEEE_DOUBLE_M0_SIZE, and SCFX_MASK_.

◆ mantissa1() [1/2]

unsigned int sc_dt::scfx_ieee_double::mantissa1 ( ) const
inline

Definition at line 229 of file scfx_ieee.hh.

References m_id, and sc_dt::ieee_double::s.

Referenced by is_inf(), is_nan(), is_subnormal(), is_zero(), lsb(), msb(), set_inf(), and set_nan().

◆ mantissa1() [2/2]

void sc_dt::scfx_ieee_double::mantissa1 ( unsigned int a)
inline

Definition at line 235 of file scfx_ieee.hh.

References a, m_id, and sc_dt::ieee_double::s.

◆ msb()

int sc_dt::scfx_ieee_double::msb ( ) const
inline

Definition at line 294 of file scfx_ieee.hh.

References mantissa0(), mantissa1(), and MSB_STATEMENT.

◆ nan()

const scfx_ieee_double sc_dt::scfx_ieee_double::nan ( )
inlinestatic

Definition at line 352 of file scfx_ieee.hh.

Referenced by sc_dt::sc_fxval_fast::from_string().

◆ negative() [1/2]

unsigned int sc_dt::scfx_ieee_double::negative ( ) const
inline

Definition at line 192 of file scfx_ieee.hh.

References m_id, and sc_dt::ieee_double::s.

Referenced by sc_dt::print_other().

◆ negative() [2/2]

void sc_dt::scfx_ieee_double::negative ( unsigned int a)
inline

Definition at line 198 of file scfx_ieee.hh.

References a, m_id, sc_dt::ieee_double::s, and SCFX_MASK_.

◆ operator double()

sc_dt::scfx_ieee_double::operator double ( ) const
inline

Definition at line 186 of file scfx_ieee.hh.

◆ operator=() [1/2]

scfx_ieee_double & sc_dt::scfx_ieee_double::operator= ( const scfx_ieee_double & a)
inline

Definition at line 180 of file scfx_ieee.hh.

References a, sc_dt::ieee_double::d, and m_id.

◆ operator=() [2/2]

scfx_ieee_double & sc_dt::scfx_ieee_double::operator= ( double d)
inline

Definition at line 173 of file scfx_ieee.hh.

References sc_dt::ieee_double::d, and m_id.

◆ set_inf()

void sc_dt::scfx_ieee_double::set_inf ( )
inline

Definition at line 276 of file scfx_ieee.hh.

References exponent(), mantissa0(), mantissa1(), and sc_dt::SCFX_IEEE_DOUBLE_E_MAX.

◆ set_nan()

void sc_dt::scfx_ieee_double::set_nan ( )
inline

Definition at line 284 of file scfx_ieee.hh.

References exponent(), mantissa0(), mantissa1(), and sc_dt::SCFX_IEEE_DOUBLE_E_MAX.

Member Data Documentation

◆ m_id

ieee_double sc_dt::scfx_ieee_double::m_id
private

The documentation for this class was generated from the following file:

Generated on Tue Jun 18 2024 16:24:55 for gem5 by doxygen 1.11.0