44 #if !defined( PTHREAD_H ) 47 #include <pte_types.h> 51 #define PTE_VERSION 2,8,0,0 52 #define PTE_VERSION_STRING "2, 8, 0, 0\0" 79 #if defined(_POSIX_SOURCE) 84 #if defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE >= 199309 90 #if defined(INCLUDE_NP) 96 #define PTE_LEVEL_MAX 3 98 #if !defined(PTE_LEVEL) 99 #define PTE_LEVEL PTE_LEVEL_MAX 281 #undef _POSIX_THREADS 282 #define _POSIX_THREADS 200112L 284 #undef _POSIX_READER_WRITER_LOCKS 285 #define _POSIX_READER_WRITER_LOCKS 200112L 287 #undef _POSIX_SPIN_LOCKS 288 #define _POSIX_SPIN_LOCKS 200112L 290 #undef _POSIX_BARRIERS 291 #define _POSIX_BARRIERS 200112L 293 #undef _POSIX_THREAD_SAFE_FUNCTIONS 294 #define _POSIX_THREAD_SAFE_FUNCTIONS 200112L 296 #undef _POSIX_THREAD_ATTR_STACKSIZE 297 #define _POSIX_THREAD_ATTR_STACKSIZE 200112L 302 #undef _POSIX_THREAD_ATTR_STACKADDR 303 #define _POSIX_THREAD_ATTR_STACKADDR -1 305 #undef _POSIX_THREAD_PRIO_INHERIT 306 #define _POSIX_THREAD_PRIO_INHERIT -1 308 #undef _POSIX_THREAD_PRIO_PROTECT 309 #define _POSIX_THREAD_PRIO_PROTECT -1 312 #undef _POSIX_THREAD_PRIORITY_SCHEDULING 313 #define _POSIX_THREAD_PRIORITY_SCHEDULING -1 315 #undef _POSIX_THREAD_PROCESS_SHARED 316 #define _POSIX_THREAD_PROCESS_SHARED -1 351 #undef _POSIX_THREAD_DESTRUCTOR_ITERATIONS 352 #define _POSIX_THREAD_DESTRUCTOR_ITERATIONS 4 354 #undef PTHREAD_DESTRUCTOR_ITERATIONS 355 #define PTHREAD_DESTRUCTOR_ITERATIONS _POSIX_THREAD_DESTRUCTOR_ITERATIONS 357 #undef _POSIX_THREAD_KEYS_MAX 358 #define _POSIX_THREAD_KEYS_MAX 128 360 #undef PTHREAD_KEYS_MAX 361 #define PTHREAD_KEYS_MAX _POSIX_THREAD_KEYS_MAX 363 #undef PTHREAD_STACK_MIN 364 #define PTHREAD_STACK_MIN 0 366 #undef _POSIX_THREAD_THREADS_MAX 367 #define _POSIX_THREAD_THREADS_MAX 64 370 #undef PTHREAD_THREADS_MAX 371 #define PTHREAD_THREADS_MAX 2019 373 #undef _POSIX_SEM_NSEMS_MAX 374 #define _POSIX_SEM_NSEMS_MAX 256 378 #define SEM_NSEMS_MAX 1024 380 #undef _POSIX_SEM_VALUE_MAX 381 #define _POSIX_SEM_VALUE_MAX 32767 384 #define SEM_VALUE_MAX INT_MAX 473 #define PTHREAD_CANCELED ((void *) -1) 483 #define PTHREAD_ONCE_INIT { PTE_FALSE, 0, 0, 0} 504 #define PTHREAD_MUTEX_INITIALIZER ((pthread_mutex_t) -1) 505 #define PTHREAD_RECURSIVE_MUTEX_INITIALIZER ((pthread_mutex_t) -2) 506 #define PTHREAD_ERRORCHECK_MUTEX_INITIALIZER ((pthread_mutex_t) -3) 511 #define PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP PTHREAD_RECURSIVE_MUTEX_INITIALIZER 512 #define PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP PTHREAD_ERRORCHECK_MUTEX_INITIALIZER 514 #define PTHREAD_COND_INITIALIZER ((pthread_cond_t) -1) 516 #define PTHREAD_RWLOCK_INITIALIZER ((pthread_rwlock_t) -1) 518 #define PTHREAD_SPINLOCK_INITIALIZER ((pthread_spinlock_t) -1) 554 #define pthread_cleanup_push( _rout, _arg ) \ 556 pte_cleanup_t _cleanup; \ 558 pte_push_cleanup( &_cleanup, (pte_cleanup_callback_t) (_rout), (_arg) ); \ 560 #define pthread_cleanup_pop( _execute ) \ 561 (void) pte_pop_cleanup( _execute ); \ 633 void *(*
start) (
void *),
659 void (*init_routine) (
void));
661 #if PTE_LEVEL >= PTE_LEVEL_MAX 673 void (*destructor) (
void *));
725 const struct timespec *abstime);
781 const struct timespec *abstime);
817 const struct timespec *abstime);
822 const struct timespec *abstime);
836 #if PTE_LEVEL >= PTE_LEVEL_MAX - 1 878 #if PTE_LEVEL >= PTE_LEVEL_MAX 885 # define _ftime ftime 886 # define _timeb timeb int pthread_setschedparam(pthread_t thread, int policy, const struct sched_param *param)
Definition: pthread_set.c:225
int pthread_kill(pthread_t thread, int sig)
Definition: pthread.c:952
int pthread_cancel(pthread_t thread)
Definition: pthread.c:300
Definition: implement.h:269
int pthread_key_create(pthread_key_t *key, void(*destructor)(void *))
Definition: pthread_key.c:53
Definition: implement.h:233
int pthread_cond_broadcast(pthread_cond_t *cond)
Definition: pthread_cond.c:658
Definition: pthread.h:186
int pthread_mutexattr_settype(pthread_mutexattr_t *attr, int kind)
Definition: pthread_mutexattr.c:278
Definition: pthread.h:529
int pthread_attr_setschedpolicy(pthread_attr_t *, int)
Definition: pthread_attr.c:434
int pthread_attr_setscope(pthread_attr_t *, int)
Definition: pthread_attr.c:445
Definition: pthread.h:528
int pthread_attr_setstackaddr(pthread_attr_t *attr, void *stackaddr)
Definition: pthread_attr.c:463
struct pte_cleanup_t * prev
Definition: pthread.h:547
struct pthread_barrier_t_ * pthread_barrier_t
Definition: pthread.h:409
Definition: pthread.h:485
void(* pte_cleanup_callback_t)(void *)
Definition: pthread.h:541
int pthread_rwlockattr_init(pthread_rwlockattr_t *attr)
Definition: pthread_rwlockattr.c:148
GLuint start
Definition: glext.h:6292
struct pthread_key_t_ * pthread_key_t
Definition: pthread.h:401
int pthread_barrier_destroy(pthread_barrier_t *barrier)
Definition: pthread_barrier.c:48
Definition: pthread.h:532
Definition: pthread.h:445
Definition: pthread.h:439
struct pthread_cond_t_ * pthread_cond_t
Definition: pthread.h:404
Definition: pthread.h:530
void * pthread_timechange_handler_np(void *)
Definition: pthread.c:908
void pte_push_cleanup(pte_cleanup_t *cleanup, void(*routine)(void *), void *arg)
Definition: pte_main.c:348
struct pthread_mutexattr_t_ * pthread_mutexattr_t
Definition: pthread.h:403
int pthread_spin_init(pthread_spinlock_t *lock, int pshared)
Definition: pthread_spin.c:122
int pthread_rwlock_rdlock(pthread_rwlock_t *lock)
Definition: pthread_rwlock.c:209
int pthread_getconcurrency(void)
Definition: pthread_get.c:47
static int cond(LexState *ls)
Definition: lparser.c:1177
int pthread_attr_getscope(const pthread_attr_t *, int *)
Definition: pthread_attr.c:171
pte_cleanup_callback_t routine
Definition: pthread.h:545
Definition: pthread.h:535
int pthread_rwlock_tryrdlock(pthread_rwlock_t *)
Definition: pthread_rwlock.c:416
Definition: pthread.h:463
int pthread_mutexattr_gettype(pthread_mutexattr_t *attr, int *kind)
Definition: pthread_mutexattr.c:94
int pthread_barrier_init(pthread_barrier_t *barrier, const pthread_barrierattr_t *attr, unsigned int count)
Definition: pthread_barrier.c:73
typedef void(__stdcall *PFN_DESTRUCTION_CALLBACK)(void *pData)
int pthread_spin_trylock(pthread_spinlock_t *lock)
Definition: pthread_spin.c:236
int pthread_mutex_init(pthread_mutex_t *mutex, const pthread_mutexattr_t *attr)
Definition: pthread_mutex.c:158
int pthread_condattr_setpshared(pthread_condattr_t *attr, int pshared)
Definition: pthread_condattr.c:189
static sys_sem mutex
Definition: memp.c:120
void pthread_testcancel(void)
Definition: pthread.c:67
set set set set set set set macro pixldst1 abits if abits op else op endif endm macro pixldst2 abits if abits op else op endif endm macro pixldst4 abits if abits op else op endif endm macro pixldst0 abits op endm macro pixldst3 mem_operand op endm macro pixldst30 mem_operand op endm macro pixldst abits if abits elseif abits elseif abits elseif abits elseif abits pixldst0 abits else pixldst0 abits pixldst0 abits pixldst0 abits pixldst0 abits endif elseif abits else pixldst0 abits pixldst0 abits endif elseif abits else error unsupported bpp *numpix else pixst endif endm macro pixld1_s mem_operand if asr adds SRC_WIDTH_FIXED bpl add asl mov asr adds SRC_WIDTH_FIXED bpl add asl mov asr adds SRC_WIDTH_FIXED bpl add asl mov asr adds SRC_WIDTH_FIXED bpl add asl elseif asr adds SRC_WIDTH_FIXED bpl add asl mov asr adds SRC_WIDTH_FIXED bpl add asl else error unsupported endif endm macro pixld2_s mem_operand if mov asr add asl add asl mov asr sub UNIT_X add asl mov asr add asl add asl mov asr add UNIT_X add asl else pixld1_s mem_operand pixld1_s mem_operand endif endm macro pixld0_s mem_operand if asr adds SRC_WIDTH_FIXED bpl add asl elseif asr adds SRC_WIDTH_FIXED bpl add asl endif endm macro pixld_s_internal mem_operand if mem_operand pixld2_s mem_operand pixdeinterleave basereg elseif mem_operand elseif mem_operand elseif mem_operand elseif mem_operand pixld0_s mem_operand else pixld0_s mem_operand pixld0_s mem_operand pixld0_s mem_operand pixld0_s mem_operand endif elseif mem_operand else pixld0_s mem_operand pixld0_s mem_operand endif elseif mem_operand else error unsupported mem_operand if bpp mem_operand endif endm macro vuzp8 reg2 vuzp d d ®2 endm macro vzip8 reg2 vzip d d ®2 endm macro pixdeinterleave basereg basereg basereg basereg basereg endif endm macro pixinterleave basereg basereg basereg basereg basereg endif endm macro PF boost_increment endif if endif PF tst PF addne PF subne PF cmp ORIG_W if endif if endif if endif PF subge ORIG_W PF subges if endif if endif if endif endif endm macro cache_preload_simple endif if dst_r_bpp pld [DST_R, #(PREFETCH_DISTANCE_SIMPLE *dst_r_bpp/8)] endif if mask_bpp pld cleanup[MASK, #(PREFETCH_DISTANCE_SIMPLE *mask_bpp/8)] endif endif endm macro fetch_mask_pixblock pixld mask_basereg pixblock_size MASK endm macro ensure_destination_ptr_alignment process_pixblock_tail_head if beq irp local skip1 beq endif SRC MASK if dst_r_bpp DST_R else add endif PF add sub src_basereg pixdeinterleave mask_basereg pixdeinterleave dst_r_basereg process_pixblock_head pixblock_size cache_preload_simple process_pixblock_tail pixinterleave dst_w_basereg irp beq endif process_pixblock_tail_head tst beq irp if pixblock_size chunk_size tst beq pixld_src SRC pixld MASK if DST_R else pixld DST_R endif if src_basereg pixdeinterleave mask_basereg pixdeinterleave dst_r_basereg process_pixblock_head if pixblock_size cache_preload_simple endif process_pixblock_tail pixinterleave dst_w_basereg irp if pixblock_size chunk_size tst beq if DST_W else pixst DST_W else mov ORIG_W endif add lsl if lsl endif if lsl endif lsl endif lsl endif lsl endif subs mov DST_W if regs_shortage str endif bge start_of_loop_label endm macro generate_composite_function
Definition: pixman-arm-neon-asm.h:600
Definition: pthread.h:526
GLuint GLuint GLsizei count
Definition: glext.h:6292
int pthread_barrierattr_init(pthread_barrierattr_t *attr)
Definition: pthread_barrierattr.c:145
int pthread_equal(pthread_t t1, pthread_t t2)
Definition: pthread.c:615
Definition: pthread.h:187
int pthread_mutex_timedlock(pthread_mutex_t *mutex, const struct timespec *abstime)
Definition: pthread_mutex.c:323
Definition: pthread.h:457
int pthread_attr_getdetachstate(const pthread_attr_t *attr, int *detachstate)
Definition: pthread_attr.c:88
int pthread_mutexattr_destroy(pthread_mutexattr_t *attr)
Definition: pthread_mutexattr.c:48
GLfloat param
Definition: glext.h:6480
int pthread_create(pthread_t *tid, const pthread_attr_t *attr, void *(*start)(void *), void *arg)
Definition: pte_main.c:103
int pthread_key_delete(pthread_key_t key)
Definition: pthread_key.c:120
int pthread_rwlockattr_destroy(pthread_rwlockattr_t *attr)
Definition: pthread_rwlockattr.c:51
GLenum type
Definition: glext.h:6233
int pthread_condattr_init(pthread_condattr_t *attr)
Definition: pthread_condattr.c:146
int pthread_mutex_lock(pthread_mutex_t *mutex)
Definition: pthread_mutex.c:187
int pthread_once(pthread_once_t *once_control, void(*init_routine)(void))
Definition: pthread.c:702
Definition: pthread.h:451
Definition: implement.h:146
int pthread_detach(pthread_t tid)
Definition: pthread.c:529
int pthread_barrierattr_destroy(pthread_barrierattr_t *attr)
Definition: pthread_barrierattr.c:50
int pthread_barrierattr_getpshared(const pthread_barrierattr_t *attr, int *pshared)
Definition: pthread_barrierattr.c:92
int pthread_rwlock_timedwrlock(pthread_rwlock_t *lock, const struct timespec *abstime)
Definition: pthread_rwlock.c:328
int pthread_attr_setstacksize(pthread_attr_t *attr, size_t stacksize)
Definition: pthread_attr.c:518
Definition: psp_pthread.h:45
int pthread_rwlockattr_getpshared(const pthread_rwlockattr_t *attr, int *pshared)
Definition: pthread_rwlockattr.c:95
int pthread_mutexattr_init(pthread_mutexattr_t *attr)
Definition: pthread_mutexattr.c:157
int pthread_rwlock_trywrlock(pthread_rwlock_t *)
Definition: pthread_rwlock.c:475
Definition: pthread.h:432
int pthread_attr_getstacksize(const pthread_attr_t *attr, size_t *stacksize)
Definition: pthread_attr.c:233
int done
Definition: pthread.h:490
void * p
Definition: pthread.h:394
int pthread_attr_init(pthread_attr_t *attr)
Definition: pthread_attr.c:286
Definition: implement.h:209
static uint64_t state[MAX_PADS]
Definition: xenon360_input.c:33
void * pthread_t
Definition: pthread.h:398
int pthread_mutexattr_getkind_np(pthread_mutexattr_t *attr, int *kind)
Definition: pthread_mutexattr.c:89
Definition: pthread.h:527
int state
Definition: pthread.h:487
int pthread_mutexattr_setpshared(pthread_mutexattr_t *attr, int pshared)
Definition: pthread_mutexattr.c:204
int pthread_attr_getstackaddr(const pthread_attr_t *attr, void **stackaddr)
Definition: pthread_attr.c:181
int pthread_cond_destroy(pthread_cond_t *cond)
Definition: pthread_cond.c:216
int pthread_attr_getschedpolicy(pthread_attr_t *, int *)
Definition: pthread_attr.c:154
Definition: pthread.h:444
pthread_t pthread_self(void)
Definition: pthread.c:817
void * arg
Definition: pthread.h:546
int pthread_setconcurrency(int)
Definition: pthread_set.c:216
struct pthread_spinlock_t_ * pthread_spinlock_t
Definition: pthread.h:408
Definition: implement.h:258
int pthread_getschedparam(pthread_t thread, int *policy, struct sched_param *param)
Definition: pthread_get.c:52
int pthread_attr_getschedparam(const pthread_attr_t *attr, struct sched_param *param)
Definition: pthread_attr.c:144
void pthread_exit(void *value_ptr)
Definition: pthread.c:648
int pthread_rwlock_unlock(pthread_rwlock_t *lock)
Definition: pthread_rwlock.c:554
int pthread_cond_timedwait(pthread_cond_t *cond, pthread_mutex_t *mutex, const struct timespec *abstime)
Definition: pthread_cond.c:753
int pthread_barrier_wait(pthread_barrier_t *barrier)
Definition: pthread_barrier.c:112
int pthread_rwlock_init(pthread_rwlock_t *lock, const pthread_rwlockattr_t *attr)
Definition: pthread_rwlock.c:143
int pthread_mutexattr_getpshared(const pthread_mutexattr_t *attr, int *pshared)
Definition: pthread_mutexattr.c:105
struct pthread_condattr_t_ * pthread_condattr_t
Definition: pthread.h:405
Definition: implement.h:190
int pthread_attr_destroy(pthread_attr_t *attr)
Definition: pthread_attr.c:51
int pthread_attr_setinheritsched(pthread_attr_t *attr, int inheritsched)
Definition: pthread_attr.c:400
int pthread_setcanceltype(int type, int *oldtype)
Definition: pthread_set.c:125
Definition: pthread.h:392
int pthread_condattr_destroy(pthread_condattr_t *attr)
Definition: pthread_condattr.c:51
int pthread_cond_wait(pthread_cond_t *cond, pthread_mutex_t *mutex)
Definition: pthread_cond.c:695
Definition: pthread.h:438
Definition: pthread.h:534
int pthread_mutexattr_setkind_np(pthread_mutexattr_t *attr, int kind)
Definition: pthread_mutexattr.c:199
int pthread_mutex_trylock(pthread_mutex_t *mutex)
Definition: pthread_mutex.c:393
int pthread_spin_lock(pthread_spinlock_t *lock)
Definition: pthread_spin.c:203
void * pthread_getspecific(pthread_key_t key)
Definition: pthread_get.c:83
struct pthread_mutex_t_ * pthread_mutex_t
Definition: pthread.h:402
unsigned int x
Definition: pthread.h:395
int pthread_num_processors_np(void)
Definition: pthread.c:1009
int pthread_join(pthread_t thread, void **value_ptr)
Definition: pthread.c:204
int pthread_cond_signal(pthread_cond_t *cond)
Definition: pthread_cond.c:616
int pthread_rwlockattr_setpshared(pthread_rwlockattr_t *attr, int pshared)
Definition: pthread_rwlockattr.c:186
int pthread_rwlock_timedrdlock(pthread_rwlock_t *lock, const struct timespec *abstime)
Definition: pthread_rwlock.c:262
Definition: implement.h:200
GLsizei const GLfloat * value
Definition: glext.h:6709
int pthread_init(void)
Definition: pthread.c:167
int pthread_spin_destroy(pthread_spinlock_t *lock)
Definition: pthread_spin.c:50
int pthread_spin_unlock(pthread_spinlock_t *lock)
Definition: pthread_spin.c:269
Definition: pthread.h:431
pte_cleanup_t * pte_pop_cleanup(int execute)
Definition: pte_main.c:299
Definition: implement.h:163
struct pthread_attr_t_ * pthread_attr_t
Definition: pthread.h:399
struct pthread_barrierattr_t_ * pthread_barrierattr_t
Definition: pthread.h:410
int pthread_attr_setschedparam(pthread_attr_t *attr, const struct sched_param *param)
Definition: pthread_attr.c:413
int pthread_delay_np(struct timespec *interval)
Definition: pthread.c:460
Definition: implement.h:116
int pthread_rwlock_destroy(pthread_rwlock_t *lock)
Definition: pthread_rwlock.c:50
int pthread_rwlock_wrlock(pthread_rwlock_t *lock)
Definition: pthread_rwlock.c:604
struct pthread_rwlock_t_ * pthread_rwlock_t
Definition: pthread.h:406
#define barrier()
Definition: internal_interface.hpp:494
Definition: pthread.h:458
Definition: pthread.h:437
int pthread_condattr_getpshared(const pthread_condattr_t *attr, int *pshared)
Definition: pthread_condattr.c:93
int pthread_attr_getinheritsched(pthread_attr_t *attr, int *inheritsched)
Definition: pthread_attr.c:135
int pthread_setcancelstate(int state, int *oldstate)
Definition: pthread_set.c:47
int pthread_barrierattr_setpshared(pthread_barrierattr_t *attr, int pshared)
Definition: pthread_barrierattr.c:184
int pthread_cond_init(pthread_cond_t *cond, const pthread_condattr_t *attr)
Definition: pthread_cond.c:403
Definition: implement.h:251
int pthread_mutex_destroy(pthread_mutex_t *mutex)
Definition: pthread_mutex.c:54
Definition: pthread.h:426
Definition: implement.h:214
Definition: pthread.h:533
void * semaphore
Definition: pthread.h:488
struct pthread_rwlockattr_t_ * pthread_rwlockattr_t
Definition: pthread.h:407
int pthread_attr_setdetachstate(pthread_attr_t *attr, int detachstate)
Definition: pthread_attr.c:353
int pthread_mutex_unlock(pthread_mutex_t *mutex)
Definition: pthread_mutex.c:436
Definition: pthread.h:450
Definition: pthread.h:425
Definition: pthread.h:543
void pthread_terminate(void)
Definition: pthread.c:124
int numSemaphoreUsers
Definition: pthread.h:489
int pthread_setspecific(pthread_key_t key, const void *value)
Definition: pthread_set.c:284