114 #define PTE_ATTR_VALID ((unsigned long) 0xC4C0FFEE) 143 #define PTE_OBJECT_AUTO_INIT ((void *) -1) 144 #define PTE_OBJECT_INVALID 0 186 #define PTE_SPIN_UNLOCKED (1) 187 #define PTE_SPIN_LOCKED (2) 188 #define PTE_SPIN_USE_MUTEX (3) 229 void *(*start) (
void *);
256 #define PTE_RWLOCK_MAGIC 0xfacade2 405 #define PTE_EPS_EXIT (1) 406 #define PTE_EPS_CANCEL (2) 410 #define PTE_MAX(a,b) ((a)<(b)?(b):(a)) 411 #define PTE_MIN(a,b) ((a)>(b)?(b):(a)) 415 #define PTE_THREAD_REUSE_EMPTY ((pte_thread_t *) 1) 501 #define PTE_ATOMIC_EXCHANGE pte_osAtomicExchange 502 #define PTE_ATOMIC_EXCHANGE_ADD pte_osAtomicExchangeAdd 503 #define PTE_ATOMIC_COMPARE_EXCHANGE pte_osAtomicCompareExchange 504 #define PTE_ATOMIC_DECREMENT pte_osAtomicDecrement 505 #define PTE_ATOMIC_INCREMENT pte_osAtomicIncrement unsigned int readyFlag
Definition: implement.h:281
int nSharedAccessCount
Definition: implement.h:263
pthread_mutex_t keyLock
Definition: implement.h:218
int cancelState
Definition: implement.h:98
Definition: implement.h:269
SceUID pte_osThreadHandle
Definition: psp_osal.h:31
int recursive_count
Definition: implement.h:156
void pte_mcs_lock_acquire(pte_mcs_lock_t *lock, pte_mcs_local_node_t *node)
GLbitfield GLuint64 timeout
Definition: glext.h:7831
Definition: implement.h:233
int pshared
Definition: implement.h:165
int pte_features
Definition: pte_main.c:64
int interlock
Definition: implement.h:192
Definition: implement.h:85
void * exitStatus
Definition: implement.h:91
volatile PThreadState state
Definition: implement.h:90
pthread_t ownerThread
Definition: implement.h:160
unsigned int pte_relmillisecs(const struct timespec *abstime)
Definition: pte.c:537
int pte_thread_detach_np()
Definition: pte.c:405
struct pte_mcs_node_t_ * next
Definition: implement.h:280
pte_osMutexHandle pte_mutex_test_init_lock
Definition: pte_main.c:76
Definition: implement.h:291
Definition: implement.h:69
ThreadKeyAssoc * nextThread
Definition: implement.h:394
int detachstate
Definition: implement.h:121
pthread_t pte_new(void)
Definition: pte.c:499
pte_osMutexHandle pte_thread_reuse_lock
Definition: pte_main.c:71
pthread_mutex_t lock
Definition: implement.h:139
int pshared
Definition: implement.h:271
int pte_tkAssocCreate(pte_thread_t *thread, pthread_key_t key)
Definition: pte.c:931
pthread_key_t pte_cleanupKey
Definition: pte_main.c:57
static int cond(LexState *ls)
Definition: lparser.c:1177
sem_t semBarrierBreeched[2]
Definition: implement.h:206
void pte_callUserDestroyRoutines(pthread_t thread)
Definition: pte.c:144
pte_thread_t * thread
Definition: implement.h:391
int pte_setthreadpriority(pthread_t thread, int policy, int priority)
Definition: pthread_set.c:248
typedef void(__stdcall *PFN_DESTRUCTION_CALLBACK)(void *pData)
Definition: implement.h:71
ThreadKeyAssoc * nextKey
Definition: implement.h:393
int sched_priority
Definition: implement.h:96
static sys_sem mutex
Definition: memp.c:120
int implicit
Definition: implement.h:103
int pte_getprocessors(int *count)
Definition: pte.c:423
pte_osSemaphoreHandle handle
Definition: implement.h:148
pthread_t pte_threadReusePop(void)
Definition: pte.c:614
int nCompletedSharedAccessCount
Definition: implement.h:265
GLuint GLuint GLsizei count
Definition: glext.h:6292
ThreadKeyAssoc * prevKey
Definition: implement.h:395
int pshared
Definition: implement.h:253
int pte_thread_detach_and_exit_np()
Definition: pte.c:400
pte_osMutexHandle pte_rwlock_test_init_lock
Definition: pte_main.c:88
pthread_key_t key
Definition: implement.h:392
pthread_t tid
Definition: implement.h:228
GLfloat param
Definition: glext.h:6480
void * stackaddr
Definition: implement.h:119
int nMagic
Definition: implement.h:266
int pte_spinlock_check_need_init(pthread_spinlock_t *lock)
Definition: pte.c:743
void pte_mcs_lock_release(pte_mcs_local_node_t *node)
int cancelEvent
Definition: implement.h:100
jmp_buf start_mark
Definition: implement.h:101
Definition: implement.h:76
struct pte_mcs_node_t_ * pte_mcs_lock_t
Definition: implement.h:288
Definition: implement.h:146
void * parms
Definition: implement.h:92
pthread_mutex_t mtxExclusiveAccess
Definition: implement.h:260
int value
Definition: implement.h:138
pthread_cond_t prev
Definition: implement.h:247
void(* destructor)(void *)
Definition: implement.h:217
int pte_concurrency
Definition: pte_main.c:61
int pte_processInitialized
Definition: pte_main.c:53
Definition: psp_pthread.h:45
long nWaitersGone
Definition: implement.h:236
long nWaitersBlocked
Definition: implement.h:235
SceUID pte_osSemaphoreHandle
Definition: psp_osal.h:33
int iStep
Definition: implement.h:204
int lock_idx
Definition: implement.h:149
int inheritsched
Definition: implement.h:123
int pte_cond_check_need_init(pthread_cond_t *cond)
Definition: pte.c:348
pte_osMutexHandle pte_spinlock_test_init_lock
Definition: pte_main.c:94
PThreadState
Definition: implement.h:61
Definition: implement.h:209
int pte_is_attr(const pthread_attr_t *attr)
Definition: pte.c:432
int pte_cancellable_wait(pte_osSemaphoreHandle semHandle, unsigned int *timeout)
Definition: pte.c:288
int pte_rwlock_check_need_init(pthread_rwlock_t *rwlock)
Definition: pte.c:691
SceUID pte_osMutexHandle
Definition: psp_osal.h:35
sem_t semBlockLock
Definition: implement.h:240
void * pthread_t
Definition: pthread.h:398
unsigned long valid
Definition: implement.h:118
pte_thread_t * pte_threadReuseTop
Definition: pte_main.c:54
int sem_wait_nocancel(sem_t *sem)
Definition: sem.c:822
void pte_threadDestroy(pthread_t tid)
Definition: pte.c:782
long nWaitersToUnblock
Definition: implement.h:237
pte_osThreadHandle threadId
Definition: implement.h:87
static const struct @104 priority[]
Definition: implement.h:78
unsigned int nInitialBarrierHeight
Definition: implement.h:203
Definition: implement.h:73
void * arg
Definition: implement.h:230
int cpus
Definition: implement.h:195
Definition: implement.h:258
struct pte_mcs_node_t_ ** lock
Definition: implement.h:279
int kind
Definition: implement.h:159
unsigned int x
Definition: implement.h:107
unsigned int nextFlag
Definition: implement.h:283
void * keys
Definition: implement.h:104
pte_thread_t * prevReuse
Definition: implement.h:89
void pte_tkAssocDestroy(ThreadKeyAssoc *assoc)
Definition: pte.c:1001
void pte_pop_cleanup_all(int execute)
Definition: pte.c:921
int pte_processInitialize(void)
void pte_threadExitAndDestroy(pthread_t tid)
Definition: pte.c:787
int nExclusiveAccessCount
Definition: implement.h:264
Definition: implement.h:190
void * nextAssoc
Definition: implement.h:105
void * threads
Definition: implement.h:219
void pte_threadReusePush(pthread_t thread)
Definition: pte.c:648
size_t stacksize
Definition: implement.h:120
Definition: implement.h:136
pthread_mutex_t mutex
Definition: implement.h:196
pte_osMutexHandle pte_cond_test_init_lock
Definition: pte_main.c:82
int pte_threadStart(void *vthreadParms)
Definition: pte.c:794
pthread_mutex_t mtxSharedAccessCompleted
Definition: implement.h:261
Definition: implement.h:226
int contentionscope
Definition: implement.h:124
int ptErrno
Definition: implement.h:93
unsigned int nCurrentBarrierHeight
Definition: implement.h:202
int detachState
Definition: implement.h:94
Definition: implement.h:200
pthread_cond_t pte_cond_list_head
Definition: pte_main.c:58
Definition: implement.h:163
pte_osMutexHandle pte_cond_list_lock
Definition: pte_main.c:101
pthread_mutex_t threadLock
Definition: implement.h:95
void pte_processTerminate(void)
int kind
Definition: implement.h:166
Definition: implement.h:116
void pte_rwlock_cancelwrwait(void *arg)
Definition: pte.c:680
ThreadKeyAssoc * prevThread
Definition: implement.h:396
pthread_cond_t pte_cond_list_tail
Definition: pte_main.c:59
Definition: implement.h:277
int pshared
Definition: implement.h:211
void pte_throw(unsigned int exception)
Definition: pte.c:875
pte_thread_t * pte_threadReuseBottom
Definition: pte_main.c:55
int pshared
Definition: implement.h:205
pthread_mutex_t cancelLock
Definition: implement.h:97
pthread_cond_t next
Definition: implement.h:246
Definition: implement.h:251
int cancelType
Definition: implement.h:99
pthread_cond_t cndSharedAccessCompleted
Definition: implement.h:262
Definition: implement.h:214
int pte_mutex_check_need_init(pthread_mutex_t *mutex)
Definition: pte.c:440
int pte_mutex_default_kind
pte_osSemaphoreHandle sem
Definition: implement.h:140
sem_t semBlockQueue
Definition: implement.h:238
union pthread_spinlock_t_::@117 u
pthread_key_t pte_selfThreadKey
Definition: pte_main.c:56
unsigned key
Definition: implement.h:216
pthread_mutex_t mtxUnblockLock
Definition: implement.h:243
Definition: implement.h:68
Definition: implement.h:70