fixes to compile/share more code between SPU and PPU
This commit is contained in:
@@ -75,31 +75,37 @@ public:
|
|||||||
btSpinlock (SpinVariable* var)
|
btSpinlock (SpinVariable* var)
|
||||||
: spinVariable (var)
|
: spinVariable (var)
|
||||||
{}
|
{}
|
||||||
#ifndef __SPU__
|
|
||||||
void Init ()
|
void Init ()
|
||||||
{
|
{
|
||||||
|
#ifndef __SPU__
|
||||||
//*spinVariable = 1;
|
//*spinVariable = 1;
|
||||||
cellSyncMutexInitialize(spinVariable);
|
cellSyncMutexInitialize(spinVariable);
|
||||||
}
|
|
||||||
#endif
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef __SPU__
|
|
||||||
void Lock ()
|
void Lock ()
|
||||||
{
|
{
|
||||||
|
#ifdef __SPU__
|
||||||
// lock semaphore
|
// lock semaphore
|
||||||
/*while (cellAtomicTestAndDecr32(atomic_buf, (uint64_t)spinVariable) == 0)
|
/*while (cellAtomicTestAndDecr32(atomic_buf, (uint64_t)spinVariable) == 0)
|
||||||
{
|
{
|
||||||
|
|
||||||
};*/
|
};*/
|
||||||
cellSyncMutexLock((uint64_t)spinVariable);
|
cellSyncMutexLock((uint64_t)spinVariable);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
void Unlock ()
|
void Unlock ()
|
||||||
{
|
{
|
||||||
|
#ifdef __SPU__
|
||||||
//cellAtomicIncr32(atomic_buf, (uint64_t)spinVariable);
|
//cellAtomicIncr32(atomic_buf, (uint64_t)spinVariable);
|
||||||
cellSyncMutexUnlock((uint64_t)spinVariable);
|
cellSyncMutexUnlock((uint64_t)spinVariable);
|
||||||
}
|
|
||||||
#endif
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
SpinVariable* spinVariable;
|
SpinVariable* spinVariable;
|
||||||
|
|||||||
Reference in New Issue
Block a user