| Return Type | Function name | Arguments |
|---|---|---|
| void | hzSMAR::Report | (hzChain&,) |
Declared in file: hzSMAR.h
Defined in file : hzSMAR.cpp
Function Logic:
Function body:
void hzSMAR::Report (hzChain& report)
{
_hzfunc("hzSMAR::Report") ;
uint32_t nF ; // Freelist loop counter
uint32_t nAddr ; // Addr in FL
uint32_t nSize ; // Size of free list entries
// uint32_t nPop ; // Population of free list entries for the given size
if (!this)
hzexit(E_CORRUPT, "No instance") ;
report.Clear() ;
report << "SSR Integrity Report\n" ;
threadLog("case 1\n") ;
report.Printf("Live Item population: %s\n", FormalNumber(m_nLive)) ;
threadLog("case 2\n") ;
report.Printf("Total allocations: %s\n", FormalNumber(m_nAllocNew + m_nAllocOld)) ;
threadLog("case 3\n") ;
report.Printf("New allocs: %s\n", FormalNumber(m_nAllocNew)) ;
threadLog("case 4\n") ;
report.Printf("Reallocations: %s\n", FormalNumber(m_nAllocOld)) ;
threadLog("case 5\n") ;
report.Printf("Total releases (free) %s\n", FormalNumber(m_nReleases)) ;
threadLog("case 6\n") ;
report << "Freelists\n" ;
threadLog("case 7\n") ;
for (nF = 0; nF < 4096;nF++)
{
if (!m_arrFL[nF])
continue ;
nAddr = m_arrFL[nF] ;
report.Printf("\tUnit %u: %u:%u\n", nF * 4,(nAddr & SMAR_BLOC_MASK) >> 16,nAddr& SMAR_SLOT_MASK) ;
}
threadLog("case 8\n") ;
/*
** for (n = 0 ; n < 32 ; n++)
** {
** if (m_flistItem[n] == 0 && m_flistPopl[n] == 0)
** continue ;
**
** if (m_flistItem[n] && m_flistPopl[n])
** {
** report.Printf("\tUnit %u: %s\n", n+1, FormalNumber(m_flistPopl[n])) ;
** continue ;
** }
**
** //Z.Printf("\tError found for n=%u\n", n+1) ;
** report.Printf("\tUnit %u: Error free list addr %u, population %s\n", n+1, m_flistItem[n], FormalNumber(m_flistPopl[n])) ;
** }
** */
// threadLog("SSR Integrity Report\n") ;
// threadLog("Live Item population: %u\n", m_nLive) ;
// threadLog("Total allocations: %u\n", (m_nAllocNew + m_nAllocOld)) ;
// threadLog("New allocs: %u\n", m_nAllocNew) ;
// threadLog("Reallocations: %u\n", m_nAllocOld) ;
// threadLog("Total releases (free) %u\n", m_nReleases) ;
// threadLog("Freelists\n") ;
/*
** for (n = 0 ; n < 32 ; n++)
** {
** if (m_flistItem[n] == 0 && m_flistPopl[n] == 0)
** continue ;
**
** if (m_flistItem[n] && m_flistPopl[n])
** {
** threadLog("\tUnit %u: %u\n", n+1, m_flistPopl[n]) ;
** continue ;
** }
**
** threadLog("\tError found for n=%u\n", n+1) ;
** }
** */
// threadLog(Z) ;
}