| /ThreadX-v6.3.0/ports_smp/mips32_interaptiv_smp/gnu/src/ |
| D | tx_thread_schedule.S | 88 lw $8, ($9) # Pickup next thread to execute 89 beq $8, $0, _tx_thread_schedule_idle_system # If not-NULL, check the thread's ready bit 135 lw $9, 152($8) # Pickup the thread's VPE control register 157 the thread. */ 161 mtc0 $8, C0_TCContext # Set TCContext to current thread 166 or $16, $8, $0 # Save thread pointer into non-volatile 167 or $4, $8, $0 # Move thread pointer into input register 168 la $9, _tx_el_thread_running # Build address of thread running event routine 171 or $8, $16, $0 # Recover thread pointer 177 la $9, _tx_thread_current_ptr # Pickup current thread pointer address [all …]
|
| /ThreadX-v6.3.0/ports/cortex_m3/ghs/src/ |
| D | tx_thread_schedule.arm | 38 ;/* This function waits for a thread control block pointer to appear in */ 39 ;/* the _tx_thread_execute_ptr variable. Once a thread pointer appears */ 40 ;/* in the variable, the corresponding thread is resumed. */ 57 ;/* _tx_thread_system_return Return to system from thread */ 58 ;/* _tx_thread_context_restore Restore thread's context */ 113 ; /* Get current thread value and new thread pointer. */ 119 ; /* Call the thread exit function to indicate the thread is no longer executing. */ 123 BL _tx_execution_thread_exit ; Call the thread exit function 127 LDR r0, =_tx_thread_current_ptr ; Build current thread pointer address 128 LDR r2, =_tx_thread_execute_ptr ; Build execute thread pointer address [all …]
|
| /ThreadX-v6.3.0/ports/cortex_m4/ghs/src/ |
| D | tx_thread_schedule.arm | 38 ;/* This function waits for a thread control block pointer to appear in */ 39 ;/* the _tx_thread_execute_ptr variable. Once a thread pointer appears */ 40 ;/* in the variable, the corresponding thread is resumed. */ 57 ;/* _tx_thread_system_return Return to system from thread */ 58 ;/* _tx_thread_context_restore Restore thread's context */ 121 ; /* Get current thread value and new thread pointer. */ 127 ; /* Call the thread exit function to indicate the thread is no longer executing. */ 131 BL _tx_execution_thread_exit ; Call the thread exit function 135 LDR r0, =_tx_thread_current_ptr ; Build current thread pointer address 136 LDR r2, =_tx_thread_execute_ptr ; Build execute thread pointer address [all …]
|
| /ThreadX-v6.3.0/ports_arch/ARMv7-M/threadx/ghs/src/ |
| D | tx_thread_schedule.arm | 37 /* This function waits for a thread control block pointer to appear in */ 38 /* the _tx_thread_execute_ptr variable. Once a thread pointer appears */ 39 /* in the variable, the corresponding thread is resumed. */ 56 /* _tx_thread_system_return Return to system from thread */ 57 /* _tx_thread_context_restore Restore thread's context */ 117 /* Get current thread value and new thread pointer. */ 122 /* Call the thread exit function to indicate the thread is no longer executing. */ 125 BL _tx_execution_thread_exit // Call the thread exit function 130 LDR r0, =_tx_thread_current_ptr // Build current thread pointer address 131 LDR r2, =_tx_thread_execute_ptr // Build execute thread pointer address [all …]
|
| /ThreadX-v6.3.0/ports/cortex_m7/ghs/src/ |
| D | tx_thread_schedule.arm | 38 ;/* This function waits for a thread control block pointer to appear in */ 39 ;/* the _tx_thread_execute_ptr variable. Once a thread pointer appears */ 40 ;/* in the variable, the corresponding thread is resumed. */ 57 ;/* _tx_thread_system_return Return to system from thread */ 58 ;/* _tx_thread_context_restore Restore thread's context */ 121 ; /* Get current thread value and new thread pointer. */ 127 ; /* Call the thread exit function to indicate the thread is no longer executing. */ 131 BL _tx_execution_thread_exit ; Call the thread exit function 135 LDR r0, =_tx_thread_current_ptr ; Build current thread pointer address 136 LDR r2, =_tx_thread_execute_ptr ; Build execute thread pointer address [all …]
|
| /ThreadX-v6.3.0/ports/cortex_r4/ghs/src/ |
| D | tx_thread_schedule.arm | 53 /* This function waits for a thread control block pointer to appear in */ 54 /* the _tx_thread_execute_ptr variable. Once a thread pointer appears */ 55 /* in the variable, the corresponding thread is resumed. */ 72 /* _tx_thread_system_return Return to system from thread */ 73 /* _tx_thread_context_restore Restore thread's context */ 101 /* Wait for a thread to execute. */ 104 LDR r1, =_tx_thread_execute_ptr # Address of thread execute ptr 108 LDR r0, [r1] # Pickup next thread to execute 110 BEQ __tx_thread_schedule_loop # If so, keep looking for a thread 115 /* Yes! We have a thread to execute. Lockout interrupts and [all …]
|
| /ThreadX-v6.3.0/utility/rtos_compatibility_layers/posix/ |
| D | px_cond_broadcast.c | 93 TX_THREAD *thread; in pthread_cond_broadcast() local 117 thread = tx_thread_identify(); in pthread_cond_broadcast() 122 tx_thread_preemption_change(thread,0,&old_threshold); in pthread_cond_broadcast() 132 tx_thread_preemption_change(thread,old_threshold,&dummy); in pthread_cond_broadcast() 145 tx_thread_preemption_change(thread,old_threshold,&dummy); in pthread_cond_broadcast()
|
| D | px_pth_join.c | 88 INT pthread_join(pthread_t thread, VOID **value_ptr) in pthread_join() argument 109 if ( current_ptr->pthreadID == thread) in pthread_join() 125 target_thread = posix_tid2thread(thread); in pthread_join() 139 target_ptr = posix_tid2tcb(thread); in pthread_join() 145 target_ptr = posix_tid2tcb(thread); in pthread_join() 171 current_ptr->joined_to_pthreadID = thread; in pthread_join()
|
| /ThreadX-v6.3.0/ports/cortex_m3/keil/src/ |
| D | tx_thread_schedule.s | 135 BL _tx_execution_thread_exit ; Call the thread exit function 139 MOV32 r0, _tx_thread_current_ptr ; Build current thread pointer address 140 MOV32 r2, _tx_thread_execute_ptr ; Build execute thread pointer address 142 LDR r1, [r0] ; Pickup current thread pointer 151 MRS r12, PSP ; Pickup PSP pointer (thread's stack pointer) 159 STR r12, [r1, #8] ; Save the thread stack pointer 177 LDR r1, [r2] ; Is there another thread ready to execute? 182 …TR r1, [r0] ; Setup the current thread pointer to the new thread 188 LDR r7, [r1, #4] ; Pickup the current thread run count 190 LDR r5, [r1, #24] ; Pickup thread's current time-slice [all …]
|
| /ThreadX-v6.3.0/ports/cortex_r5/ghs/src/ |
| D | tx_thread_schedule.arm | 53 /* This function waits for a thread control block pointer to appear in */ 54 /* the _tx_thread_execute_ptr variable. Once a thread pointer appears */ 55 /* in the variable, the corresponding thread is resumed. */ 72 /* _tx_thread_system_return Return to system from thread */ 73 /* _tx_thread_context_restore Restore thread's context */ 101 /* Wait for a thread to execute. */ 104 LDR r1, =_tx_thread_execute_ptr # Address of thread execute ptr 108 LDR r0, [r1] # Pickup next thread to execute 110 BEQ __tx_thread_schedule_loop # If so, keep looking for a thread 115 /* Yes! We have a thread to execute. Lockout interrupts and [all …]
|
| /ThreadX-v6.3.0/ports/cortex_r7/ghs/src/ |
| D | tx_thread_schedule.arm | 53 /* This function waits for a thread control block pointer to appear in */ 54 /* the _tx_thread_execute_ptr variable. Once a thread pointer appears */ 55 /* in the variable, the corresponding thread is resumed. */ 72 /* _tx_thread_system_return Return to system from thread */ 73 /* _tx_thread_context_restore Restore thread's context */ 101 /* Wait for a thread to execute. */ 104 LDR r1, =_tx_thread_execute_ptr # Address of thread execute ptr 108 LDR r0, [r1] # Pickup next thread to execute 110 BEQ __tx_thread_schedule_loop # If so, keep looking for a thread 115 /* Yes! We have a thread to execute. Lockout interrupts and [all …]
|
| /ThreadX-v6.3.0/ports/rxv1/gnu/src/ |
| D | tx_thread_context_save.S | 121 MOV.L #__tx_thread_current_ptr, R2 ; Pickup current thread pointer 131 MOV.L R2, [-R1] ; Save PSW on thread stack 133 MOV.L R2, [-R1] ; Save PC on thread stack 135 MOV.L R2, [-R1] ; Save R2 on thread stack 137 MOV.L R2, [-R1] ; Save R1 on thread stack 138 MOV.L R5, [-R1] ; Save R5 on thread stack 139 MOV.L R4, [-R1] ; Save R4 on thread stack 140 MOV.L R3, [-R1] ; Save R3 on thread stack 141 MOV.L R15, [-R1] ; Save R15 on thread stack 142 MOV.L R14, [-R1] ; Save R14 on thread stack [all …]
|
| /ThreadX-v6.3.0/ports/rxv1/iar/src/ |
| D | tx_thread_context_save.s | 121 MOV.L #__tx_thread_current_ptr, R2 ; Pickup current thread pointer 131 MOV.L R2, [-R1] ; Save PSW on thread stack 133 MOV.L R2, [-R1] ; Save PC on thread stack 135 MOV.L R2, [-R1] ; Save R2 on thread stack 137 MOV.L R2, [-R1] ; Save R1 on thread stack 138 MOV.L R5, [-R1] ; Save R5 on thread stack 139 MOV.L R4, [-R1] ; Save R4 on thread stack 140 MOV.L R3, [-R1] ; Save R3 on thread stack 141 MOV.L R15, [-R1] ; Save R15 on thread stack 142 MOV.L R14, [-R1] ; Save R14 on thread stack [all …]
|
| /ThreadX-v6.3.0/ports/xtensa/xcc/src/ |
| D | tx_xtensa_stack_error_handler.c | 98 VOID _tx_xtensa_stack_error_handler(TX_THREAD * thread) in _tx_xtensa_stack_error_handler() argument 104 register TX_THREAD * thd __asm__ ("a4") = thread; in _tx_xtensa_stack_error_handler() 113 write(1, thread->tx_thread_name, strlen(thread->tx_thread_name)); in _tx_xtensa_stack_error_handler()
|
| /ThreadX-v6.3.0/ports_module/rxv2/iar/module_manager/src/ |
| D | tx_thread_context_save.s | 128 MOV.L #__tx_thread_current_ptr, R2 ; Pickup current thread pointer 138 MOV.L R2, [-R1] ; Save PSW on thread stack 140 MOV.L R2, [-R1] ; Save PC on thread stack 142 MOV.L R2, [-R1] ; Save R2 on thread stack 144 MOV.L R2, [-R1] ; Save R1 on thread stack 145 MOV.L R5, [-R1] ; Save R5 on thread stack 146 MOV.L R4, [-R1] ; Save R4 on thread stack 147 MOV.L R3, [-R1] ; Save R3 on thread stack 148 MOV.L R15, [-R1] ; Save R15 on thread stack 149 MOV.L R14, [-R1] ; Save R14 on thread stack [all …]
|
| /ThreadX-v6.3.0/ports/rxv2/gnu/src/ |
| D | tx_thread_context_save.S | 132 MOV.L #__tx_thread_current_ptr, R2 ; Pickup current thread pointer 142 MOV.L R2, [-R1] ; Save PSW on thread stack 144 MOV.L R2, [-R1] ; Save PC on thread stack 146 MOV.L R2, [-R1] ; Save R2 on thread stack 148 MOV.L R2, [-R1] ; Save R1 on thread stack 149 MOV.L R5, [-R1] ; Save R5 on thread stack 150 MOV.L R4, [-R1] ; Save R4 on thread stack 151 MOV.L R3, [-R1] ; Save R3 on thread stack 152 MOV.L R15, [-R1] ; Save R15 on thread stack 153 MOV.L R14, [-R1] ; Save R14 on thread stack [all …]
|
| /ThreadX-v6.3.0/ports/rxv2/iar/src/ |
| D | tx_thread_context_save.s | 132 MOV.L #__tx_thread_current_ptr, R2 ; Pickup current thread pointer 142 MOV.L R2, [-R1] ; Save PSW on thread stack 144 MOV.L R2, [-R1] ; Save PC on thread stack 146 MOV.L R2, [-R1] ; Save R2 on thread stack 148 MOV.L R2, [-R1] ; Save R1 on thread stack 149 MOV.L R5, [-R1] ; Save R5 on thread stack 150 MOV.L R4, [-R1] ; Save R4 on thread stack 151 MOV.L R3, [-R1] ; Save R3 on thread stack 152 MOV.L R15, [-R1] ; Save R15 on thread stack 153 MOV.L R14, [-R1] ; Save R14 on thread stack [all …]
|
| /ThreadX-v6.3.0/ports/rxv3/gnu/src/ |
| D | tx_thread_context_save.S | 132 MOV.L #__tx_thread_current_ptr, R2 ; Pickup current thread pointer 142 MOV.L R2, [-R1] ; Save PSW on thread stack 144 MOV.L R2, [-R1] ; Save PC on thread stack 146 MOV.L R2, [-R1] ; Save R2 on thread stack 148 MOV.L R2, [-R1] ; Save R1 on thread stack 149 MOV.L R5, [-R1] ; Save R5 on thread stack 150 MOV.L R4, [-R1] ; Save R4 on thread stack 151 MOV.L R3, [-R1] ; Save R3 on thread stack 152 MOV.L R15, [-R1] ; Save R15 on thread stack 153 MOV.L R14, [-R1] ; Save R14 on thread stack [all …]
|
| /ThreadX-v6.3.0/ports/rxv3/iar/src/ |
| D | tx_thread_context_save.s | 132 MOV.L #__tx_thread_current_ptr, R2 ; Pickup current thread pointer 142 MOV.L R2, [-R1] ; Save PSW on thread stack 144 MOV.L R2, [-R1] ; Save PC on thread stack 146 MOV.L R2, [-R1] ; Save R2 on thread stack 148 MOV.L R2, [-R1] ; Save R1 on thread stack 149 MOV.L R5, [-R1] ; Save R5 on thread stack 150 MOV.L R4, [-R1] ; Save R4 on thread stack 151 MOV.L R3, [-R1] ; Save R3 on thread stack 152 MOV.L R15, [-R1] ; Save R15 on thread stack 153 MOV.L R14, [-R1] ; Save R14 on thread stack [all …]
|
| /ThreadX-v6.3.0/ports/cortex_m4/keil/src/ |
| D | tx_thread_schedule.s | 143 BL _tx_execution_thread_exit ; Call the thread exit function 147 MOV32 r0, _tx_thread_current_ptr ; Build current thread pointer address 148 MOV32 r2, _tx_thread_execute_ptr ; Build execute thread pointer address 150 LDR r1, [r0] ; Pickup current thread pointer 159 MRS r12, PSP ; Pickup PSP pointer (thread's stack pointer) 173 STR r12, [r1, #8] ; Save the thread stack pointer 191 LDR r1, [r2] ; Is there another thread ready to execute? 196 …TR r1, [r0] ; Setup the current thread pointer to the new thread 202 LDR r7, [r1, #4] ; Pickup the current thread run count 204 LDR r5, [r1, #24] ; Pickup thread's current time-slice [all …]
|
| /ThreadX-v6.3.0/ports/cortex_a8/ghs/src/ |
| D | tx_thread_schedule.arm | 53 /* This function waits for a thread control block pointer to appear in */ 54 /* the _tx_thread_execute_ptr variable. Once a thread pointer appears */ 55 /* in the variable, the corresponding thread is resumed. */ 72 /* _tx_thread_system_return Return to system from thread */ 73 /* _tx_thread_context_restore Restore thread's context */ 101 /* Wait for a thread to execute. */ 104 LDR r1, =_tx_thread_execute_ptr # Address of thread execute ptr 108 LDR r0, [r1] # Pickup next thread to execute 110 BEQ __tx_thread_schedule_loop # If so, keep looking for a thread 115 /* Yes! We have a thread to execute. Lockout interrupts and [all …]
|
| /ThreadX-v6.3.0/ports/cortex_a9/ghs/src/ |
| D | tx_thread_schedule.arm | 53 /* This function waits for a thread control block pointer to appear in */ 54 /* the _tx_thread_execute_ptr variable. Once a thread pointer appears */ 55 /* in the variable, the corresponding thread is resumed. */ 72 /* _tx_thread_system_return Return to system from thread */ 73 /* _tx_thread_context_restore Restore thread's context */ 101 /* Wait for a thread to execute. */ 104 LDR r1, =_tx_thread_execute_ptr # Address of thread execute ptr 108 LDR r0, [r1] # Pickup next thread to execute 110 BEQ __tx_thread_schedule_loop # If so, keep looking for a thread 115 /* Yes! We have a thread to execute. Lockout interrupts and [all …]
|
| /ThreadX-v6.3.0/ports/cortex_a7/ghs/src/ |
| D | tx_thread_schedule.arm | 53 /* This function waits for a thread control block pointer to appear in */ 54 /* the _tx_thread_execute_ptr variable. Once a thread pointer appears */ 55 /* in the variable, the corresponding thread is resumed. */ 72 /* _tx_thread_system_return Return to system from thread */ 73 /* _tx_thread_context_restore Restore thread's context */ 101 /* Wait for a thread to execute. */ 104 LDR r1, =_tx_thread_execute_ptr # Address of thread execute ptr 108 LDR r0, [r1] # Pickup next thread to execute 110 BEQ __tx_thread_schedule_loop # If so, keep looking for a thread 115 /* Yes! We have a thread to execute. Lockout interrupts and [all …]
|
| /ThreadX-v6.3.0/ports/cortex_a5/ghs/src/ |
| D | tx_thread_schedule.arm | 53 /* This function waits for a thread control block pointer to appear in */ 54 /* the _tx_thread_execute_ptr variable. Once a thread pointer appears */ 55 /* in the variable, the corresponding thread is resumed. */ 72 /* _tx_thread_system_return Return to system from thread */ 73 /* _tx_thread_context_restore Restore thread's context */ 101 /* Wait for a thread to execute. */ 104 LDR r1, =_tx_thread_execute_ptr # Address of thread execute ptr 108 LDR r0, [r1] # Pickup next thread to execute 110 BEQ __tx_thread_schedule_loop # If so, keep looking for a thread 115 /* Yes! We have a thread to execute. Lockout interrupts and [all …]
|
| /ThreadX-v6.3.0/ports/arm11/iar/src/ |
| D | tx_thread_schedule.s | 105 LDR r1, =_tx_thread_execute_ptr ; Address of thread execute ptr 109 LDR r0, [r1, #0] ; Pickup next thread to execute 111 BEQ __tx_thread_schedule_loop ; If so, keep looking for a thread 124 LDR r1, =_tx_thread_current_ptr ; Pickup address of current thread 125 STR r0, [r1, #0] ; Setup current thread pointer 131 LDR r3, [r0, #24] ; Pickup time-slice for this thread 132 ADD r2, r2, #1 ; Increment thread run-counter 150 BL _tx_execution_thread_enter ; Call the thread execution enter function 159 LDMNEIA sp!, {r0-r12, lr, pc}^ ; Return to point of thread interrupt 160 LDMIA sp!, {r4-r11, lr} ; Return to thread synchronously
|