64-bit gcc warning fix
This was SVN commit r9171.
This commit is contained in:
parent
67433e65eb
commit
329d044a9e
@ -233,7 +233,7 @@ std::wstring StringForSeconds(double seconds)
|
||||
}
|
||||
|
||||
|
||||
std::wstring StringForCycles(i64 cycles)
|
||||
std::wstring StringForCycles(Cycles cycles)
|
||||
{
|
||||
double scale = 1.0;
|
||||
const wchar_t* unit = L" c";
|
||||
|
@ -51,12 +51,19 @@ LIB_API double timer_Time();
|
||||
LIB_API double timer_Resolution();
|
||||
|
||||
|
||||
// (allow using XADD (faster than CMPXCHG) in 64-bit builds without casting)
|
||||
#if ARCH_AMD64
|
||||
typedef intptr_t Cycles;
|
||||
#else
|
||||
typedef i64 Cycles;
|
||||
#endif
|
||||
|
||||
/**
|
||||
* internal helper functions for returning an easily readable
|
||||
* string (i.e. re-scaled to appropriate units)
|
||||
**/
|
||||
LIB_API std::wstring StringForSeconds(double seconds);
|
||||
LIB_API std::wstring StringForCycles(i64 cycles);
|
||||
LIB_API std::wstring StringForCycles(Cycles cycles);
|
||||
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
@ -173,9 +180,9 @@ public:
|
||||
|
||||
void AddDifferenceAtomic(TimerUnit t0, TimerUnit t1)
|
||||
{
|
||||
const i64 delta = t1.m_cycles - t0.m_cycles;
|
||||
const Cycles delta = t1.m_cycles - t0.m_cycles;
|
||||
#if ARCH_AMD64
|
||||
cpu_AtomicAdd((volatile intptr_t*)&m_cycles, (intptr_t)delta);
|
||||
cpu_AtomicAdd(&m_cycles, delta);
|
||||
#elif ARCH_IA32
|
||||
retry:
|
||||
if(!cpu_CAS64(&m_cycles, m_cycles, m_cycles+delta))
|
||||
@ -202,7 +209,7 @@ retry:
|
||||
}
|
||||
|
||||
private:
|
||||
i64 m_cycles;
|
||||
Cycles m_cycles;
|
||||
};
|
||||
|
||||
#else
|
||||
|
Loading…
Reference in New Issue
Block a user