RTEMS-6
Annotated Report
libstdthreads
Sun Feb 28 22:42:11 2021

40004cf4 <thrd_exit>:                                                                     
}                                                                                         
                                                                                          
_Noreturn void                                                                            
thrd_exit(int res)                                                                        
{                                                                                         
40004cf4:   9d e3 bf a0     save  %sp, -96, %sp                                           
                                                                                          
    pthread_exit((void *)(intptr_t)res);                                                  
40004cf8:   40 00 03 b4     call  40005bc8 <pthread_exit>                                 
40004cfc:   90 10 00 18     mov  %i0, %o0                                                 
40004d00:   01 00 00 00     nop                                                           <== NOT EXECUTED
                                                                                          

40004d04 <thrd_join>: } int thrd_join(thrd_t thr, int *res) {
40004d04:   9d e3 bf 98     save  %sp, -104, %sp                                          
    void *value_ptr;                                                                      
                                                                                          
    if (pthread_join(thr, &value_ptr) != 0)                                               
40004d08:   90 10 00 18     mov  %i0, %o0                                                 
40004d0c:   92 07 bf fc     add  %fp, -4, %o1                                             
40004d10:   40 00 03 e9     call  40005cb4 <pthread_join>                                 
40004d14:   b0 10 20 02     mov  2, %i0                                                   
40004d18:   80 a2 20 00     cmp  %o0, 0                                                   
40004d1c:   12 80 00 06     bne  40004d34 <thrd_join+0x30>                                <== NEVER TAKEN
40004d20:   80 a6 60 00     cmp  %i1, 0                                                   
        return (thrd_error);                                                              
    if (res != NULL)                                                                      
40004d24:   02 80 00 04     be  40004d34 <thrd_join+0x30>                                 <== NEVER TAKEN
40004d28:   b0 10 20 04     mov  4, %i0                                                   
        *res = (intptr_t)value_ptr;                                                       
40004d2c:   c2 07 bf fc     ld  [ %fp + -4 ], %g1                                         
40004d30:   c2 26 40 00     st  %g1, [ %i1 ]                                              
    return (thrd_success);                                                                
}                                                                                         
40004d34:   81 c7 e0 08     ret                                                           
40004d38:   81 e8 00 00     restore